From 58bdccd76a73abb475bd5fcd5ed0f5848ca29671 Mon Sep 17 00:00:00 2001 From: Grigory Vodyanov Date: Tue, 8 Sep 2026 13:39:35 +0200 Subject: [PATCH 1/2] refactor(ui): import @nextcloud/vue components by subpath MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit v9 removes the dist/Components paths and the global-registration plugin, and the root barrel defeats tree-shaking: webpack bundles the whole library while any file still imports it. Two barrel imports stay behind, in MailboxThread.vue (the isMobile mixin) and TextEditor.vue (the emoji helpers). Both belong to other items in the preceding PR, and until those land the bundle does not move — measured +0.08%, against -5.2% raw / -4.0% gzip once the last two go. Assisted-by: ClaudeCode:claude-opus-5 Signed-off-by: Grigory Vodyanov --- src/components/AccountForm.vue | 6 +++- src/components/AccountSettings.vue | 5 ++- src/components/AliasForm.vue | 3 +- src/components/AliasSettings.vue | 3 +- src/components/AppSettingsMenu.vue | 32 +++++++++---------- src/components/CalendarSettings.vue | 2 +- src/components/CertificateSettings.vue | 4 ++- src/components/Composer.vue | 10 +++++- src/components/ComposerSessionIndicator.vue | 3 +- src/components/ConfirmationModal.vue | 3 +- src/components/DelegationModal.vue | 8 ++++- src/components/Envelope.vue | 16 ++++------ src/components/EnvelopeList.vue | 5 ++- src/components/EnvelopeSingleClickActions.vue | 2 +- src/components/EnvelopeSkeleton.vue | 4 ++- src/components/EventModal.vue | 4 ++- src/components/Imip.vue | 4 ++- src/components/InternalAddress.vue | 6 +++- src/components/Loading.vue | 3 +- src/components/MailboxPicker.vue | 7 +++- src/components/MailboxThread.vue | 6 +++- src/components/MdnRequest.vue | 2 +- src/components/MenuEnvelope.vue | 8 ++--- src/components/Message.vue | 4 ++- src/components/MessageAttachment.vue | 4 ++- src/components/MessageAttachments.vue | 3 +- src/components/MessageHTMLBody.vue | 3 +- src/components/Navigation.vue | 4 ++- src/components/NavigationAccount.vue | 8 ++++- .../NavigationAccountExpandCollapse.vue | 2 +- src/components/NavigationMailbox.vue | 8 ++++- src/components/NavigationOutbox.vue | 3 +- src/components/NeedsTranslationInfo.vue | 2 +- src/components/NewMessageButtonHeader.vue | 2 +- src/components/NewMessageModal.vue | 6 ++-- src/components/NoMessageSelected.vue | 2 +- src/components/OutOfOfficeForm.vue | 3 +- src/components/Outbox.vue | 3 +- src/components/OutboxMessageListItem.vue | 3 +- src/components/PhishingWarning.vue | 2 +- src/components/RecipientBubble.vue | 5 ++- src/components/RecipientInfo.vue | 2 +- src/components/RecipientListItem.vue | 2 +- src/components/SieveAccountForm.vue | 5 ++- src/components/SieveFilterForm.vue | 3 +- src/components/SignatureSettings.vue | 6 +++- src/components/SourceModal.vue | 2 +- src/components/TagItem.vue | 7 +++- src/components/TagModal.vue | 6 +++- src/components/TaskModal.vue | 4 ++- src/components/Thread.vue | 2 +- src/components/ThreadEnvelope.vue | 3 +- src/components/TranslationModal.vue | 6 +++- src/components/TrustedSenders.vue | 3 +- src/components/itinerary/CalendarImport.vue | 4 ++- src/components/mailFilter/Action.vue | 4 ++- .../mailFilter/ActionAddSystemFlag.vue | 2 +- src/components/mailFilter/ActionAddflag.vue | 2 +- src/components/mailFilter/CreateModal.vue | 10 +++--- src/components/mailFilter/DeleteModal.vue | 2 +- src/components/mailFilter/MailFilters.vue | 4 ++- src/components/mailFilter/Operator.vue | 4 ++- src/components/mailFilter/Test.vue | 3 +- src/components/mailFilter/UpdateModal.vue | 6 +++- src/components/quickActions/Action.vue | 3 +- src/components/quickActions/Settings.vue | 8 ++++- .../smime/SmimeCertificateModal.vue | 5 ++- src/components/textBlocks/ListItem.vue | 9 +++++- src/components/textBlocks/TextBlockModal.vue | 2 +- src/views/Home.vue | 2 +- src/views/Setup.vue | 4 ++- 71 files changed, 231 insertions(+), 107 deletions(-) diff --git a/src/components/AccountForm.vue b/src/components/AccountForm.vue index b48e25995e..868dc91e4f 100644 --- a/src/components/AccountForm.vue +++ b/src/components/AccountForm.vue @@ -277,9 +277,13 @@