@nextcloud/vue 8.23.1 → 8.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +254 -201
- package/README.md +6 -2
- package/dist/Components/NcActionButton.cjs +2 -1
- package/dist/Components/NcActionButton.mjs +2 -1
- package/dist/Components/NcActionButtonGroup.cjs +2 -1
- package/dist/Components/NcActionButtonGroup.mjs +2 -1
- package/dist/Components/NcActionCaption.cjs +1 -0
- package/dist/Components/NcActionCaption.mjs +1 -0
- package/dist/Components/NcActionCheckbox.cjs +2 -1
- package/dist/Components/NcActionCheckbox.mjs +2 -1
- package/dist/Components/NcActionInput.cjs +2 -1
- package/dist/Components/NcActionInput.mjs +2 -1
- package/dist/Components/NcActionLink.cjs +2 -1
- package/dist/Components/NcActionLink.mjs +2 -1
- package/dist/Components/NcActionRadio.cjs +2 -1
- package/dist/Components/NcActionRadio.mjs +2 -1
- package/dist/Components/NcActionRouter.cjs +2 -1
- package/dist/Components/NcActionRouter.mjs +2 -1
- package/dist/Components/NcActionSeparator.cjs +1 -0
- package/dist/Components/NcActionSeparator.mjs +1 -0
- package/dist/Components/NcActionText.cjs +2 -1
- package/dist/Components/NcActionText.mjs +2 -1
- package/dist/Components/NcActionTextEditable.cjs +2 -1
- package/dist/Components/NcActionTextEditable.mjs +2 -1
- package/dist/Components/NcActions.cjs +2 -1
- package/dist/Components/NcActions.mjs +2 -1
- package/dist/Components/NcAppContent.cjs +2 -1
- package/dist/Components/NcAppContent.mjs +2 -1
- package/dist/Components/NcAppContentDetails.cjs +1 -0
- package/dist/Components/NcAppContentDetails.mjs +1 -0
- package/dist/Components/NcAppContentList.cjs +1 -0
- package/dist/Components/NcAppContentList.mjs +1 -0
- package/dist/Components/NcAppNavigation.cjs +2 -1
- package/dist/Components/NcAppNavigation.mjs +2 -1
- package/dist/Components/NcAppNavigationCaption.cjs +2 -1
- package/dist/Components/NcAppNavigationCaption.mjs +2 -1
- package/dist/Components/NcAppNavigationIconBullet.cjs +1 -0
- package/dist/Components/NcAppNavigationIconBullet.mjs +1 -0
- package/dist/Components/NcAppNavigationItem.cjs +2 -1
- package/dist/Components/NcAppNavigationItem.mjs +2 -1
- package/dist/Components/NcAppNavigationList.cjs +1 -0
- package/dist/Components/NcAppNavigationList.mjs +1 -0
- package/dist/Components/NcAppNavigationNew.cjs +18 -3
- package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
- package/dist/Components/NcAppNavigationNew.mjs +18 -3
- package/dist/Components/NcAppNavigationNew.mjs.map +1 -1
- package/dist/Components/NcAppNavigationNewItem.cjs +2 -1
- package/dist/Components/NcAppNavigationNewItem.mjs +2 -1
- package/dist/Components/NcAppNavigationSearch.cjs +2 -1
- package/dist/Components/NcAppNavigationSearch.mjs +2 -1
- package/dist/Components/NcAppNavigationSettings.cjs +2 -1
- package/dist/Components/NcAppNavigationSettings.mjs +2 -1
- package/dist/Components/NcAppNavigationSpacer.cjs +1 -0
- package/dist/Components/NcAppNavigationSpacer.mjs +1 -0
- package/dist/Components/NcAppNavigationToggle.cjs +2 -1
- package/dist/Components/NcAppNavigationToggle.mjs +2 -1
- package/dist/Components/NcAppSettingsDialog.cjs +2 -1
- package/dist/Components/NcAppSettingsDialog.mjs +2 -1
- package/dist/Components/NcAppSettingsSection.cjs +1 -0
- package/dist/Components/NcAppSettingsSection.mjs +1 -0
- package/dist/Components/NcAppSidebar.cjs +2 -1
- package/dist/Components/NcAppSidebar.mjs +2 -1
- package/dist/Components/NcAppSidebarTab.cjs +1 -0
- package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
- package/dist/Components/NcAppSidebarTab.mjs +1 -0
- package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
- package/dist/Components/NcAvatar.cjs +2 -1
- package/dist/Components/NcAvatar.mjs +2 -1
- package/dist/Components/NcBlurHash.cjs +4 -0
- package/dist/Components/NcBlurHash.cjs.map +1 -0
- package/dist/Components/NcBlurHash.mjs +5 -0
- package/dist/Components/NcBlurHash.mjs.map +1 -0
- package/dist/Components/NcBreadcrumb.cjs +2 -1
- package/dist/Components/NcBreadcrumb.mjs +2 -1
- package/dist/Components/NcBreadcrumbs.cjs +2 -1
- package/dist/Components/NcBreadcrumbs.mjs +2 -1
- package/dist/Components/NcButton.cjs +52 -10
- package/dist/Components/NcButton.cjs.map +1 -1
- package/dist/Components/NcButton.mjs +52 -10
- package/dist/Components/NcButton.mjs.map +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.cjs +2 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +2 -1
- package/dist/Components/NcChip.cjs +25 -10
- package/dist/Components/NcChip.cjs.map +1 -1
- package/dist/Components/NcChip.mjs +25 -10
- package/dist/Components/NcChip.mjs.map +1 -1
- package/dist/Components/NcCollectionList.cjs +2 -1
- package/dist/Components/NcCollectionList.mjs +2 -1
- package/dist/Components/NcColorPicker.cjs +2 -1
- package/dist/Components/NcColorPicker.mjs +2 -1
- package/dist/Components/NcContent.cjs +2 -1
- package/dist/Components/NcContent.mjs +2 -1
- package/dist/Components/NcCounterBubble.cjs +1 -0
- package/dist/Components/NcCounterBubble.mjs +1 -0
- package/dist/Components/NcDashboardWidget.cjs +2 -1
- package/dist/Components/NcDashboardWidget.mjs +2 -1
- package/dist/Components/NcDashboardWidgetItem.cjs +2 -1
- package/dist/Components/NcDashboardWidgetItem.mjs +2 -1
- package/dist/Components/NcDateTime.cjs +2 -1
- package/dist/Components/NcDateTime.mjs +2 -1
- package/dist/Components/NcDateTimePicker.cjs +6 -5
- package/dist/Components/NcDateTimePicker.cjs.map +1 -1
- package/dist/Components/NcDateTimePicker.mjs +7 -6
- package/dist/Components/NcDateTimePicker.mjs.map +1 -1
- package/dist/Components/NcDateTimePickerNative.cjs +2 -1
- package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
- package/dist/Components/NcDateTimePickerNative.mjs +2 -1
- package/dist/Components/NcDateTimePickerNative.mjs.map +1 -1
- package/dist/Components/NcDialog.cjs +2 -1
- package/dist/Components/NcDialog.mjs +2 -1
- package/dist/Components/NcDialogButton.cjs +2 -1
- package/dist/Components/NcDialogButton.mjs +2 -1
- package/dist/Components/NcEllipsisedOption.cjs +1 -0
- package/dist/Components/NcEllipsisedOption.cjs.map +1 -1
- package/dist/Components/NcEllipsisedOption.mjs +1 -0
- package/dist/Components/NcEmojiPicker.cjs +2 -1
- package/dist/Components/NcEmojiPicker.mjs +2 -1
- package/dist/Components/NcEmptyContent.cjs +3 -2
- package/dist/Components/NcEmptyContent.cjs.map +1 -1
- package/dist/Components/NcEmptyContent.mjs +3 -2
- package/dist/Components/NcEmptyContent.mjs.map +1 -1
- package/dist/Components/NcGuestContent.cjs +1 -0
- package/dist/Components/NcGuestContent.mjs +1 -0
- package/dist/Components/NcHeaderButton.cjs +4 -3
- package/dist/Components/NcHeaderButton.cjs.map +1 -1
- package/dist/Components/NcHeaderButton.mjs +4 -3
- package/dist/Components/NcHeaderButton.mjs.map +1 -1
- package/dist/Components/NcHeaderMenu.cjs +2 -1
- package/dist/Components/NcHeaderMenu.mjs +2 -1
- package/dist/Components/NcHighlight.cjs +1 -0
- package/dist/Components/NcHighlight.mjs +1 -0
- package/dist/Components/NcIconSvgWrapper.cjs +1 -0
- package/dist/Components/NcIconSvgWrapper.mjs +1 -0
- package/dist/Components/NcInputField.cjs +2 -1
- package/dist/Components/NcInputField.mjs +2 -1
- package/dist/Components/NcListItem.cjs +2 -1
- package/dist/Components/NcListItem.mjs +2 -1
- package/dist/Components/NcListItemIcon.cjs +2 -1
- package/dist/Components/NcListItemIcon.mjs +2 -1
- package/dist/Components/NcLoadingIcon.cjs +1 -0
- package/dist/Components/NcLoadingIcon.mjs +1 -0
- package/dist/Components/NcModal.cjs +25 -14
- package/dist/Components/NcModal.cjs.map +1 -1
- package/dist/Components/NcModal.mjs +25 -14
- package/dist/Components/NcModal.mjs.map +1 -1
- package/dist/Components/NcNoteCard.cjs +1 -0
- package/dist/Components/NcNoteCard.mjs +1 -0
- package/dist/Components/NcPasswordField.cjs +2 -1
- package/dist/Components/NcPasswordField.mjs +2 -1
- package/dist/Components/NcPopover.cjs +2 -1
- package/dist/Components/NcPopover.mjs +2 -1
- package/dist/Components/NcProgressBar.cjs +1 -0
- package/dist/Components/NcProgressBar.mjs +1 -0
- package/dist/Components/NcRelatedResourcesPanel.cjs +2 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +2 -1
- package/dist/Components/NcRichContenteditable.cjs +2 -1
- package/dist/Components/NcRichContenteditable.mjs +2 -1
- package/dist/Components/NcRichText.cjs +3 -2
- package/dist/Components/NcRichText.mjs +5 -4
- package/dist/Components/NcSavingIndicatorIcon.cjs +1 -0
- package/dist/Components/NcSavingIndicatorIcon.mjs +1 -0
- package/dist/Components/NcSelect.cjs +2 -1
- package/dist/Components/NcSelect.mjs +2 -1
- package/dist/Components/NcSelectTags.cjs +2 -1
- package/dist/Components/NcSelectTags.mjs +2 -1
- package/dist/Components/NcSettingsInputText.cjs +2 -1
- package/dist/Components/NcSettingsInputText.mjs +2 -1
- package/dist/Components/NcSettingsSection.cjs +2 -1
- package/dist/Components/NcSettingsSection.mjs +2 -1
- package/dist/Components/NcSettingsSelectGroup.cjs +2 -1
- package/dist/Components/NcSettingsSelectGroup.mjs +2 -1
- package/dist/Components/NcTextArea.cjs +1 -0
- package/dist/Components/NcTextArea.mjs +1 -0
- package/dist/Components/NcTextField.cjs +2 -1
- package/dist/Components/NcTextField.mjs +2 -1
- package/dist/Components/NcTimezonePicker.cjs +2 -1
- package/dist/Components/NcTimezonePicker.mjs +2 -1
- package/dist/Components/NcUserBubble.cjs +2 -1
- package/dist/Components/NcUserBubble.mjs +2 -1
- package/dist/Components/NcUserStatusIcon.cjs +2 -1
- package/dist/Components/NcUserStatusIcon.mjs +2 -1
- package/dist/Components/NcVNodes.cjs +1 -0
- package/dist/Components/NcVNodes.mjs +1 -0
- package/dist/Composables/useHotKey.cjs +1 -0
- package/dist/Composables/useHotKey.cjs.map +1 -1
- package/dist/Composables/useHotKey.mjs +1 -0
- package/dist/Composables/useHotKey.mjs.map +1 -1
- package/dist/Composables/useIsDarkTheme.cjs +1 -0
- package/dist/Composables/useIsDarkTheme.cjs.map +1 -1
- package/dist/Composables/useIsDarkTheme.mjs +1 -0
- package/dist/Composables/useIsDarkTheme.mjs.map +1 -1
- package/dist/Composables/useIsFullscreen.cjs +1 -0
- package/dist/Composables/useIsFullscreen.cjs.map +1 -1
- package/dist/Composables/useIsFullscreen.mjs +1 -0
- package/dist/Composables/useIsFullscreen.mjs.map +1 -1
- package/dist/Composables/useIsMobile.cjs +1 -0
- package/dist/Composables/useIsMobile.cjs.map +1 -1
- package/dist/Composables/useIsMobile.mjs +1 -0
- package/dist/Composables/useIsMobile.mjs.map +1 -1
- package/dist/Directives/Focus.cjs +1 -0
- package/dist/Directives/Focus.cjs.map +1 -1
- package/dist/Directives/Focus.mjs +1 -0
- package/dist/Directives/Focus.mjs.map +1 -1
- package/dist/Directives/Linkify.cjs +1 -0
- package/dist/Directives/Linkify.cjs.map +1 -1
- package/dist/Directives/Linkify.mjs +1 -0
- package/dist/Directives/Linkify.mjs.map +1 -1
- package/dist/Directives/Tooltip.cjs +1 -0
- package/dist/Directives/Tooltip.cjs.map +1 -1
- package/dist/Directives/Tooltip.mjs +1 -0
- package/dist/Directives/Tooltip.mjs.map +1 -1
- package/dist/Functions/a11y.cjs +1 -0
- package/dist/Functions/a11y.cjs.map +1 -1
- package/dist/Functions/a11y.mjs +1 -0
- package/dist/Functions/a11y.mjs.map +1 -1
- package/dist/Functions/contactsMenu.cjs +1 -0
- package/dist/Functions/contactsMenu.cjs.map +1 -1
- package/dist/Functions/contactsMenu.mjs +1 -0
- package/dist/Functions/contactsMenu.mjs.map +1 -1
- package/dist/Functions/dialog.cjs +1 -0
- package/dist/Functions/dialog.cjs.map +1 -1
- package/dist/Functions/dialog.mjs +1 -0
- package/dist/Functions/dialog.mjs.map +1 -1
- package/dist/Functions/emoji.cjs +1 -0
- package/dist/Functions/emoji.mjs +1 -0
- package/dist/Functions/isDarkTheme.cjs +1 -0
- package/dist/Functions/isDarkTheme.cjs.map +1 -1
- package/dist/Functions/isDarkTheme.mjs +1 -0
- package/dist/Functions/isDarkTheme.mjs.map +1 -1
- package/dist/Functions/preloadImage.cjs +19 -0
- package/dist/Functions/preloadImage.cjs.map +1 -0
- package/dist/Functions/preloadImage.mjs +17 -0
- package/dist/Functions/preloadImage.mjs.map +1 -0
- package/dist/Functions/reference.cjs +2 -1
- package/dist/Functions/reference.mjs +3 -2
- package/dist/Functions/registerReference.cjs +1 -0
- package/dist/Functions/registerReference.mjs +3 -2
- package/dist/Functions/usernameToColor.cjs +2 -1
- package/dist/Functions/usernameToColor.mjs +2 -1
- package/dist/Mixins/clickOutsideOptions.cjs +1 -0
- package/dist/Mixins/clickOutsideOptions.cjs.map +1 -1
- package/dist/Mixins/clickOutsideOptions.mjs +1 -0
- package/dist/Mixins/clickOutsideOptions.mjs.map +1 -1
- package/dist/Mixins/isFullscreen.cjs +1 -0
- package/dist/Mixins/isFullscreen.cjs.map +1 -1
- package/dist/Mixins/isFullscreen.mjs +1 -0
- package/dist/Mixins/isMobile.cjs +1 -0
- package/dist/Mixins/isMobile.cjs.map +1 -1
- package/dist/Mixins/isMobile.mjs +1 -0
- package/dist/Mixins/richEditor.cjs +1 -0
- package/dist/Mixins/richEditor.mjs +1 -0
- package/dist/assets/{NcActionButton-BYN2SUN0.css → NcActionButton-BqMeBMdA.css} +17 -16
- package/dist/assets/{NcActionCheckbox-Dan0EvGm.css → NcActionCheckbox-BlyPt7DF.css} +1 -0
- package/dist/assets/{NcActionInput-Dz21fyVD.css → NcActionInput-gUagFGC5.css} +2 -0
- package/dist/assets/{NcActionLink-BG9B9dP4.css → NcActionLink-DA3ebr8W.css} +1 -0
- package/dist/assets/{NcActionRadio-C87waXE-.css → NcActionRadio-CodyhP86.css} +1 -0
- package/dist/assets/{NcActionRouter-BAGuUfFu.css → NcActionRouter-DlqXQ6ai.css} +1 -0
- package/dist/assets/{NcActionText-Cjp26Bn0.css → NcActionText-Cvug6qMa.css} +1 -0
- package/dist/assets/{NcActionTextEditable-1TXeJ5zp.css → NcActionTextEditable-CasTVqIo.css} +62 -60
- package/dist/assets/{NcActions-C4SuFczn.css → NcActions-3STB3u9J.css} +11 -11
- package/dist/assets/{NcAppContent-BO0ksFwD.css → NcAppContent-JfRwJlWK.css} +23 -23
- package/dist/assets/{NcAppNavigation-CJj8AvqM.css → NcAppNavigation-DfTQlVGB.css} +12 -12
- package/dist/assets/{NcAppNavigationItem-lh9Say1M.css → NcAppNavigationItem-CdT6ce8-.css} +11 -4
- package/dist/assets/{NcAppNavigationNew-BcDuupzO.css → NcAppNavigationNew-Dbo2rvXH.css} +3 -3
- package/dist/assets/{NcAppNavigationNewItem-fUP3wQTQ.css → NcAppNavigationNewItem-D7wroqrc.css} +7 -0
- package/dist/assets/{NcAppNavigationSearch-Df50ss_2.css → NcAppNavigationSearch-CFtTLRbc.css} +6 -6
- package/dist/assets/{NcAppNavigationToggle-B6FCDJp7.css → NcAppNavigationToggle-C5IMygw1.css} +3 -3
- package/dist/assets/{NcAppSidebar-BntAj6H-.css → NcAppSidebar-Dun97zcC.css} +43 -43
- package/dist/assets/{NcAvatar-CcJlFpcI.css → NcAvatar-Cc-2PM1F.css} +24 -24
- package/dist/assets/NcBlurHash-7aGtE-_T.css +8 -0
- package/dist/assets/{NcBreadcrumb-Cjcyeimd.css → NcBreadcrumb-DqaFt2qu.css} +15 -15
- package/dist/assets/{NcButton-CfOAX-eQ.css → NcButton-DnNZaEy_.css} +47 -47
- package/dist/assets/{NcCheckboxRadioSwitch-DuFrRU9C.css → NcCheckboxRadioSwitch-DlEieXCj.css} +41 -41
- package/dist/assets/{NcChip-CIvAlds6.css → NcChip-BNLuZgd6.css} +9 -9
- package/dist/assets/{NcColorPicker-C1DuuANb.css → NcColorPicker-BayJGD4p.css} +28 -30
- package/dist/assets/{NcContent-CZamE_IP.css → NcContent-Bq-7EZQc.css} +9 -9
- package/dist/assets/{NcDateTimePicker-BtV9Fz-n.css → NcDateTimePicker-D07hGMOZ.css} +54 -7
- package/dist/assets/{NcDialog-Bzs9oxyt.css → NcDialog-BPI0CJvw.css} +15 -15
- package/dist/assets/{NcEmojiPicker-rk5qcSl7.css → NcEmojiPicker-Ca6U46T8.css} +19 -15
- package/dist/assets/{NcEmptyContent-BlXL6nnq.css → NcEmptyContent-CSsXYYcn.css} +9 -9
- package/dist/assets/{NcHeaderButton-BPkJ5wxD.css → NcHeaderButton-Dr6MgPDQ.css} +8 -7
- package/dist/assets/{NcHeaderMenu-BYjnMPPl.css → NcHeaderMenu-DN-HfTkh.css} +12 -11
- package/dist/assets/{NcInputConfirmCancel-EYtW7MxF.css → NcInputConfirmCancel-BanazdhC.css} +5 -5
- package/dist/assets/{NcInputField-CzryIHRa.css → NcInputField-GxJ-rf2p.css} +32 -32
- package/dist/assets/{NcListItem-GE5S37TT.css → NcListItem-DfaWGP5A.css} +44 -44
- package/dist/assets/{NcModal-ZfCDJxwd.css → NcModal-DXN1C02T.css} +61 -61
- package/dist/assets/{NcRelatedResourcesPanel-DSf7TVcC.css → NcRelatedResourcesPanel-DhStLIO2.css} +21 -21
- package/dist/assets/{NcRichText-zt8ALFHi.css → NcRichText-BwghUUnz.css} +3 -0
- package/dist/assets/{referencePickerModal-CTumspFH.css → referencePickerModal-Ba6soz9w.css} +8 -8
- package/dist/chunks/AlertCircleOutline-BrsasUsU.cjs +1 -0
- package/dist/chunks/AlertCircleOutline-DBxbepLy.mjs +1 -0
- package/dist/chunks/ArrowLeft-BP7yfzCQ.cjs +1 -0
- package/dist/chunks/ArrowLeft-DuT2LZOm.mjs +1 -0
- package/dist/chunks/ArrowRight-CY2b9hgN.mjs +1 -0
- package/dist/chunks/ArrowRight-DPARnmu3.cjs +1 -0
- package/dist/chunks/Check-BkThHPH7.mjs +1 -0
- package/dist/chunks/Check-Du8mPz_B.cjs +1 -0
- package/dist/chunks/ChevronDown-BlfyuflD.cjs +1 -0
- package/dist/chunks/ChevronDown-DFQfzh63.mjs +1 -0
- package/dist/chunks/ChevronLeft-BK4j9oVH.mjs +1 -0
- package/dist/chunks/ChevronLeft-CAiEPWc5.cjs +1 -0
- package/dist/chunks/ChevronRight-BUv-PtHh.mjs +1 -0
- package/dist/chunks/ChevronRight-ZCKVg9OI.cjs +1 -0
- package/dist/chunks/ChevronUp-Bpd__OBZ.cjs +1 -0
- package/dist/chunks/ChevronUp-C7Dy9Bph.mjs +1 -0
- package/dist/chunks/Close-BtLPUSdO.mjs +1 -0
- package/dist/chunks/Close-CqmXxEKi.cjs +1 -0
- package/dist/chunks/DotsHorizontal-BoI3vnhk.cjs +1 -0
- package/dist/chunks/DotsHorizontal-C6LNsw4N.mjs +1 -0
- package/dist/chunks/{GenColors-Di5GSft7.cjs → GenColors-CV4Niqso.cjs} +2 -1
- package/dist/chunks/{GenColors-Di5GSft7.cjs.map → GenColors-CV4Niqso.cjs.map} +1 -1
- package/dist/chunks/{GenColors-DfwXw1-o.mjs → GenColors-NALDypHH.mjs} +2 -1
- package/dist/chunks/{GenColors-DfwXw1-o.mjs.map → GenColors-NALDypHH.mjs.map} +1 -1
- package/dist/chunks/GenRandomId-BQDud3d4.cjs +1 -0
- package/dist/chunks/GenRandomId-BQDud3d4.cjs.map +1 -1
- package/dist/chunks/GenRandomId-CMooMQt0.mjs +1 -0
- package/dist/chunks/GenRandomId-CMooMQt0.mjs.map +1 -1
- package/dist/chunks/{NcActionButton-CEysTg4c.mjs → NcActionButton-BFxArTsE.mjs} +10 -9
- package/dist/chunks/{NcActionButton-DcpUnqA7.cjs.map → NcActionButton-BFxArTsE.mjs.map} +1 -1
- package/dist/chunks/{NcActionButton-DcpUnqA7.cjs → NcActionButton-ChQFsL4S.cjs} +10 -9
- package/dist/chunks/{NcActionButton-CEysTg4c.mjs.map → NcActionButton-ChQFsL4S.cjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-3v-qy9C0.mjs → NcActionButtonGroup-B5OcRwWQ.mjs} +2 -1
- package/dist/chunks/{NcActionButtonGroup-3v-qy9C0.mjs.map → NcActionButtonGroup-B5OcRwWQ.mjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-x6D7S13W.cjs → NcActionButtonGroup-BSFS4BYN.cjs} +2 -1
- package/dist/chunks/{NcActionButtonGroup-x6D7S13W.cjs.map → NcActionButtonGroup-BSFS4BYN.cjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-BnL71Qmi.mjs → NcActionCheckbox-DSMKeccY.mjs} +2 -1
- package/dist/chunks/{NcActionCheckbox-BnL71Qmi.mjs.map → NcActionCheckbox-DSMKeccY.mjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-Dd5Y6f63.cjs → NcActionCheckbox-JX-QaTD6.cjs} +2 -1
- package/dist/chunks/{NcActionCheckbox-Dd5Y6f63.cjs.map → NcActionCheckbox-JX-QaTD6.cjs.map} +1 -1
- package/dist/chunks/{NcActionInput-BAM8T3gm.mjs → NcActionInput-DXiL7Phe.mjs} +6 -5
- package/dist/chunks/{NcActionInput-BAM8T3gm.mjs.map → NcActionInput-DXiL7Phe.mjs.map} +1 -1
- package/dist/chunks/{NcActionInput-VR510EDJ.cjs → NcActionInput-DghifYMn.cjs} +6 -5
- package/dist/chunks/{NcActionInput-VR510EDJ.cjs.map → NcActionInput-DghifYMn.cjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-BQ0jAh5V.cjs → NcActionRadio-BUCQ6VxA.cjs} +2 -1
- package/dist/chunks/{NcActionRadio-BQ0jAh5V.cjs.map → NcActionRadio-BUCQ6VxA.cjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-CCTupqRR.mjs → NcActionRadio-yAm71xxU.mjs} +2 -1
- package/dist/chunks/{NcActionRadio-CCTupqRR.mjs.map → NcActionRadio-yAm71xxU.mjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-JRD-G0CT.mjs → NcActionTextEditable-BYqqHPj2.mjs} +6 -5
- package/dist/chunks/NcActionTextEditable-BYqqHPj2.mjs.map +1 -0
- package/dist/chunks/{NcActionTextEditable-C-ZP8_Tn.cjs → NcActionTextEditable-s1Xqpg6x.cjs} +6 -5
- package/dist/chunks/NcActionTextEditable-s1Xqpg6x.cjs.map +1 -0
- package/dist/chunks/{NcActions-D3hGxwlc.mjs → NcActions-C_H0APKA.mjs} +52 -53
- package/dist/chunks/NcActions-C_H0APKA.mjs.map +1 -0
- package/dist/chunks/{NcActions-DTICeoTz.cjs → NcActions-C_gPnk6X.cjs} +51 -52
- package/dist/chunks/NcActions-C_gPnk6X.cjs.map +1 -0
- package/dist/chunks/{NcAppContent-BKQ-H04y.mjs → NcAppContent-DiOscHZ8.mjs} +58 -15
- package/dist/chunks/NcAppContent-DiOscHZ8.mjs.map +1 -0
- package/dist/chunks/{NcAppContent-BOt6_YA7.cjs → NcAppContent-PC4RbdhU.cjs} +58 -15
- package/dist/chunks/NcAppContent-PC4RbdhU.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-D7W-4cVo.cjs → NcAppNavigation-B9Dd0YBs.cjs} +6 -5
- package/dist/chunks/NcAppNavigation-B9Dd0YBs.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-B_92V8o3.mjs → NcAppNavigation-DD1CfV7A.mjs} +7 -6
- package/dist/chunks/NcAppNavigation-DD1CfV7A.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationCaption-B3w692fN.mjs → NcAppNavigationCaption-8NN7iPkz.mjs} +2 -1
- package/dist/chunks/{NcAppNavigationCaption-B3w692fN.mjs.map → NcAppNavigationCaption-8NN7iPkz.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-BDqTyLIj.cjs → NcAppNavigationCaption-CuKecXh9.cjs} +2 -1
- package/dist/chunks/{NcAppNavigationCaption-BDqTyLIj.cjs.map → NcAppNavigationCaption-CuKecXh9.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-DL9OwWo-.cjs → NcAppNavigationItem-B2LzgJUC.cjs} +8 -7
- package/dist/chunks/NcAppNavigationItem-B2LzgJUC.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationItem-CpcFOmJR.mjs → NcAppNavigationItem-B50v2lmS.mjs} +8 -7
- package/dist/chunks/NcAppNavigationItem-B50v2lmS.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationNewItem-BvQaVuL6.mjs → NcAppNavigationNewItem-B7_0fFTF.mjs} +3 -2
- package/dist/chunks/{NcAppNavigationNewItem-BvQaVuL6.mjs.map → NcAppNavigationNewItem-B7_0fFTF.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-BaKxxZqt.cjs → NcAppNavigationNewItem-bRz_V5Y1.cjs} +3 -2
- package/dist/chunks/{NcAppNavigationNewItem-BaKxxZqt.cjs.map → NcAppNavigationNewItem-bRz_V5Y1.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-Q0eMy5I2.cjs → NcAppNavigationSearch-B-HqHu3j.cjs} +5 -4
- package/dist/chunks/NcAppNavigationSearch-B-HqHu3j.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationSearch-gytpBKme.mjs → NcAppNavigationSearch-ChGonQL8.mjs} +5 -4
- package/dist/chunks/NcAppNavigationSearch-ChGonQL8.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationSettings-CZFm1d-N.mjs → NcAppNavigationSettings-9nG2gY_9.mjs} +2 -1
- package/dist/chunks/{NcAppNavigationSettings-CZFm1d-N.mjs.map → NcAppNavigationSettings-9nG2gY_9.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-CwwmvKYV.cjs → NcAppNavigationSettings-C--IJ1A2.cjs} +2 -1
- package/dist/chunks/{NcAppNavigationSettings-CwwmvKYV.cjs.map → NcAppNavigationSettings-C--IJ1A2.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-Pr8bEpDs.mjs → NcAppNavigationToggle-CJ5N3NI4.mjs} +5 -4
- package/dist/chunks/NcAppNavigationToggle-CJ5N3NI4.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationToggle-Br1hcFGt.cjs → NcAppNavigationToggle-FxOt_DlD.cjs} +5 -4
- package/dist/chunks/NcAppNavigationToggle-FxOt_DlD.cjs.map +1 -0
- package/dist/chunks/{NcAppSettingsDialog-JPB-srka.mjs → NcAppSettingsDialog-C2rBRxUv.mjs} +3 -2
- package/dist/chunks/{NcAppSettingsDialog-JPB-srka.mjs.map → NcAppSettingsDialog-C2rBRxUv.mjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-z9v6V6ye.cjs → NcAppSettingsDialog-CSLft-a9.cjs} +3 -2
- package/dist/chunks/{NcAppSettingsDialog-z9v6V6ye.cjs.map → NcAppSettingsDialog-CSLft-a9.cjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-cEQy8s50.mjs → NcAppSidebar-19hVcGhv.mjs} +17 -16
- package/dist/chunks/NcAppSidebar-19hVcGhv.mjs.map +1 -0
- package/dist/chunks/{NcAppSidebar-BY33yoNX.cjs → NcAppSidebar-DVvZYd17.cjs} +13 -12
- package/dist/chunks/NcAppSidebar-DVvZYd17.cjs.map +1 -0
- package/dist/chunks/{NcAvatar-CQtsmbBW.cjs → NcAvatar--JVA_B6Y.cjs} +41 -17
- package/dist/chunks/NcAvatar--JVA_B6Y.cjs.map +1 -0
- package/dist/chunks/{NcAvatar-BjwyJw34.mjs → NcAvatar-DwORvUjC.mjs} +42 -18
- package/dist/chunks/NcAvatar-DwORvUjC.mjs.map +1 -0
- package/dist/chunks/NcBlurHash-CJ8retHx.cjs +115 -0
- package/dist/chunks/NcBlurHash-CJ8retHx.cjs.map +1 -0
- package/dist/chunks/NcBlurHash-do2wxY-0.mjs +116 -0
- package/dist/chunks/NcBlurHash-do2wxY-0.mjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-DrlhnNbV.cjs → NcBreadcrumb-B0ve-OJl.cjs} +6 -5
- package/dist/chunks/NcBreadcrumb-B0ve-OJl.cjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-GHiD-Sw7.mjs → NcBreadcrumb-DPF3ELzz.mjs} +6 -5
- package/dist/chunks/NcBreadcrumb-DPF3ELzz.mjs.map +1 -0
- package/dist/chunks/{NcBreadcrumbs-D0Hhym9A.mjs → NcBreadcrumbs-CL_IHuT9.mjs} +5 -4
- package/dist/chunks/{NcBreadcrumbs-D0Hhym9A.mjs.map → NcBreadcrumbs-CL_IHuT9.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-Cde4tv8l.cjs → NcBreadcrumbs-C_XQLT-h.cjs} +4 -3
- package/dist/chunks/{NcBreadcrumbs-Cde4tv8l.cjs.map → NcBreadcrumbs-C_XQLT-h.cjs.map} +1 -1
- package/dist/chunks/{NcCheckboxRadioSwitch-CCuKA55c.mjs → NcCheckboxRadioSwitch-BaMf0PDd.mjs} +7 -13
- package/dist/chunks/NcCheckboxRadioSwitch-BaMf0PDd.mjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-RjEq0SqY.cjs → NcCheckboxRadioSwitch-DOxX6fqr.cjs} +7 -13
- package/dist/chunks/NcCheckboxRadioSwitch-DOxX6fqr.cjs.map +1 -0
- package/dist/chunks/{NcCollectionList-fyDi2W_B.cjs → NcCollectionList-DyZNTQFW.cjs} +6 -5
- package/dist/chunks/{NcCollectionList-fyDi2W_B.cjs.map → NcCollectionList-DyZNTQFW.cjs.map} +1 -1
- package/dist/chunks/{NcCollectionList-BNxu1MWE.mjs → NcCollectionList-iHUm6owG.mjs} +6 -5
- package/dist/chunks/{NcCollectionList-BNxu1MWE.mjs.map → NcCollectionList-iHUm6owG.mjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-CTQlyVCL.cjs → NcColorPicker-CKIoVhox.cjs} +9 -8
- package/dist/chunks/NcColorPicker-CKIoVhox.cjs.map +1 -0
- package/dist/chunks/{NcColorPicker-ph8Nubq7.mjs → NcColorPicker-av-NHSU7.mjs} +9 -8
- package/dist/chunks/NcColorPicker-av-NHSU7.mjs.map +1 -0
- package/dist/chunks/{NcContent-CJNhr5lF.cjs → NcContent-EFEXh_OO.cjs} +6 -5
- package/dist/chunks/{NcContent-CJNhr5lF.cjs.map → NcContent-EFEXh_OO.cjs.map} +1 -1
- package/dist/chunks/{NcContent-RlppaZCX.mjs → NcContent-uiwRXAwA.mjs} +6 -5
- package/dist/chunks/{NcContent-RlppaZCX.mjs.map → NcContent-uiwRXAwA.mjs.map} +1 -1
- package/dist/chunks/NcCounterBubble-BRrUO34D.cjs +1 -0
- package/dist/chunks/NcCounterBubble-CDfRYl8B.mjs +1 -0
- package/dist/chunks/{NcDashboardWidget-CirRHHmT.cjs → NcDashboardWidget-3kbcJvFx.cjs} +4 -3
- package/dist/chunks/{NcDashboardWidget-CirRHHmT.cjs.map → NcDashboardWidget-3kbcJvFx.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-Dg12xu50.mjs → NcDashboardWidget-DDaM0QjK.mjs} +4 -3
- package/dist/chunks/{NcDashboardWidget-Dg12xu50.mjs.map → NcDashboardWidget-DDaM0QjK.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-DZGooEwA.mjs → NcDashboardWidgetItem-C44gZwCP.mjs} +4 -3
- package/dist/chunks/{NcDashboardWidgetItem-DZGooEwA.mjs.map → NcDashboardWidgetItem-C44gZwCP.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-COONyn0g.cjs → NcDashboardWidgetItem-DOzM3reO.cjs} +4 -3
- package/dist/chunks/{NcDashboardWidgetItem-COONyn0g.cjs.map → NcDashboardWidgetItem-DOzM3reO.cjs.map} +1 -1
- package/dist/chunks/{NcDateTime-DBZ-vBfi.mjs → NcDateTime-BfJVNppR.mjs} +2 -1
- package/dist/chunks/{NcDateTime-DBZ-vBfi.mjs.map → NcDateTime-BfJVNppR.mjs.map} +1 -1
- package/dist/chunks/{NcDateTime-AFZif5Dn.cjs → NcDateTime-DNnBHGEQ.cjs} +2 -1
- package/dist/chunks/{NcDateTime-AFZif5Dn.cjs.map → NcDateTime-DNnBHGEQ.cjs.map} +1 -1
- package/dist/chunks/{NcDialog-I_9fyJVt.mjs → NcDialog-D3Z5tp_6.mjs} +28 -11
- package/dist/chunks/NcDialog-D3Z5tp_6.mjs.map +1 -0
- package/dist/chunks/{NcDialog-mcbLFc8o.cjs → NcDialog-DbCdhtw7.cjs} +28 -11
- package/dist/chunks/NcDialog-DbCdhtw7.cjs.map +1 -0
- package/dist/chunks/{NcDialogButton-DuJ3lE7e.mjs → NcDialogButton-BhPydgMe.mjs} +28 -9
- package/dist/chunks/NcDialogButton-BhPydgMe.mjs.map +1 -0
- package/dist/chunks/{NcDialogButton-FLqQdVLb.cjs → NcDialogButton-CYsTKE2g.cjs} +28 -9
- package/dist/chunks/NcDialogButton-CYsTKE2g.cjs.map +1 -0
- package/dist/chunks/{NcEmojiPicker-DDCgW2zQ.mjs → NcEmojiPicker-C5HYxVqp.mjs} +19 -11
- package/dist/chunks/NcEmojiPicker-C5HYxVqp.mjs.map +1 -0
- package/dist/chunks/{NcEmojiPicker-B1ot5iNB.cjs → NcEmojiPicker-DPHhky3J.cjs} +17 -9
- package/dist/chunks/NcEmojiPicker-DPHhky3J.cjs.map +1 -0
- package/dist/chunks/{NcHeaderMenu-BaHhnhN0.cjs → NcHeaderMenu-B287C-Vk.cjs} +6 -5
- package/dist/chunks/NcHeaderMenu-B287C-Vk.cjs.map +1 -0
- package/dist/chunks/{NcHeaderMenu-CLcpStap.mjs → NcHeaderMenu-Bc1ucNsv.mjs} +6 -5
- package/dist/chunks/NcHeaderMenu-Bc1ucNsv.mjs.map +1 -0
- package/dist/chunks/NcIconSvgWrapper-B_eOG2sZ.cjs +1 -0
- package/dist/chunks/NcIconSvgWrapper-B_eOG2sZ.cjs.map +1 -1
- package/dist/chunks/NcIconSvgWrapper-CHmdAuhg.mjs +1 -0
- package/dist/chunks/{NcInputConfirmCancel-C7a7Nha7.mjs → NcInputConfirmCancel-CvV0tE6s.mjs} +7 -6
- package/dist/chunks/NcInputConfirmCancel-CvV0tE6s.mjs.map +1 -0
- package/dist/chunks/{NcInputConfirmCancel-XzKuYi6L.cjs → NcInputConfirmCancel-DRhv_CTt.cjs} +7 -6
- package/dist/chunks/NcInputConfirmCancel-DRhv_CTt.cjs.map +1 -0
- package/dist/chunks/{NcInputField-DkhKrb8k.cjs → NcInputField-C61UUN46.cjs} +4 -3
- package/dist/chunks/NcInputField-C61UUN46.cjs.map +1 -0
- package/dist/chunks/{NcInputField-CU5a68Pc.mjs → NcInputField-DTtUueUZ.mjs} +4 -3
- package/dist/chunks/NcInputField-DTtUueUZ.mjs.map +1 -0
- package/dist/chunks/{NcListItem-3e1MminS.mjs → NcListItem-CA4CzIW8.mjs} +4 -3
- package/dist/chunks/NcListItem-CA4CzIW8.mjs.map +1 -0
- package/dist/chunks/{NcListItem-9w7m2lJ_.cjs → NcListItem-D5XlkLgC.cjs} +4 -3
- package/dist/chunks/NcListItem-D5XlkLgC.cjs.map +1 -0
- package/dist/chunks/{NcListItemIcon-pOj8Vr2H.cjs → NcListItemIcon-DIJ0vvYv.cjs} +2 -1
- package/dist/chunks/{NcListItemIcon-pOj8Vr2H.cjs.map → NcListItemIcon-DIJ0vvYv.cjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-7x7iDHYw.mjs → NcListItemIcon-DhENqcJ-.mjs} +2 -1
- package/dist/chunks/{NcListItemIcon-7x7iDHYw.mjs.map → NcListItemIcon-DhENqcJ-.mjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-BS6bkHtv.cjs → NcPasswordField-DXJ93Wpz.cjs} +3 -2
- package/dist/chunks/{NcPasswordField-BS6bkHtv.cjs.map → NcPasswordField-DXJ93Wpz.cjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-Dpu9nI6h.mjs → NcPasswordField-zMKko5oa.mjs} +3 -2
- package/dist/chunks/{NcPasswordField-Dpu9nI6h.mjs.map → NcPasswordField-zMKko5oa.mjs.map} +1 -1
- package/dist/chunks/{NcPopover-DFCPlZpS.mjs → NcPopover-C9KlPo4Z.mjs} +11 -4
- package/dist/chunks/NcPopover-C9KlPo4Z.mjs.map +1 -0
- package/dist/chunks/{NcPopover-BKlH1mbx.cjs → NcPopover-CA2Dalxs.cjs} +11 -4
- package/dist/chunks/NcPopover-CA2Dalxs.cjs.map +1 -0
- package/dist/chunks/NcProgressBar-DegJ2JjE.mjs +1 -0
- package/dist/chunks/NcProgressBar-Do5Y3u8S.cjs +1 -0
- package/dist/chunks/{NcRelatedResourcesPanel-C6JIVMvN.mjs → NcRelatedResourcesPanel-BxBE_1N3.mjs} +7 -6
- package/dist/chunks/NcRelatedResourcesPanel-BxBE_1N3.mjs.map +1 -0
- package/dist/chunks/{NcRelatedResourcesPanel-BrkyIR3v.cjs → NcRelatedResourcesPanel-X4vhm8hy.cjs} +7 -6
- package/dist/chunks/NcRelatedResourcesPanel-X4vhm8hy.cjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-DJy0zZXx.cjs → NcRichContenteditable-CC4jGcJn.cjs} +7 -6
- package/dist/chunks/{NcRichContenteditable-DJy0zZXx.cjs.map → NcRichContenteditable-CC4jGcJn.cjs.map} +1 -1
- package/dist/chunks/{NcRichContenteditable-3kkU0Uxu.mjs → NcRichContenteditable-Ct8cG0U6.mjs} +9 -8
- package/dist/chunks/{NcRichContenteditable-3kkU0Uxu.mjs.map → NcRichContenteditable-Ct8cG0U6.mjs.map} +1 -1
- package/dist/chunks/NcRichText-Ck9Sk6wk.cjs +3707 -0
- package/dist/chunks/NcRichText-Ck9Sk6wk.cjs.map +1 -0
- package/dist/chunks/NcRichText-h1RHm2bK.mjs +3679 -0
- package/dist/chunks/NcRichText-h1RHm2bK.mjs.map +1 -0
- package/dist/chunks/NcSavingIndicatorIcon-Bu-zt4pR.cjs +1 -0
- package/dist/chunks/NcSavingIndicatorIcon-nv1147dk.mjs +1 -0
- package/dist/chunks/{NcSelect-BQ-NFBXI.mjs → NcSelect-DrtYueu1.mjs} +3 -2
- package/dist/chunks/NcSelect-DrtYueu1.mjs.map +1 -0
- package/dist/chunks/{NcSelect-YHwbPAJD.cjs → NcSelect-vJq9dZPb.cjs} +3 -2
- package/dist/chunks/NcSelect-vJq9dZPb.cjs.map +1 -0
- package/dist/chunks/{NcSelectTags-BKtOWgrz.mjs → NcSelectTags--4zU4C41.mjs} +3 -2
- package/dist/chunks/{NcSelectTags-BKtOWgrz.mjs.map → NcSelectTags--4zU4C41.mjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-BAMsfdw9.cjs → NcSelectTags-DvVm-C1N.cjs} +3 -2
- package/dist/chunks/{NcSelectTags-BAMsfdw9.cjs.map → NcSelectTags-DvVm-C1N.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-nb2XMaJW.cjs → NcSettingsInputText-8EcoOEIo.cjs} +2 -1
- package/dist/chunks/{NcSettingsInputText-nb2XMaJW.cjs.map → NcSettingsInputText-8EcoOEIo.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-DC7H_6Uz.mjs → NcSettingsInputText-DKscbkn_.mjs} +2 -1
- package/dist/chunks/{NcSettingsInputText-DC7H_6Uz.mjs.map → NcSettingsInputText-DKscbkn_.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-BYKUjim0.mjs → NcSettingsSection-DP3xDXrA.mjs} +2 -1
- package/dist/chunks/{NcSettingsSection-BYKUjim0.mjs.map → NcSettingsSection-DP3xDXrA.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-6Sc6GBsM.cjs → NcSettingsSection-DW5u2qWg.cjs} +2 -1
- package/dist/chunks/{NcSettingsSection-6Sc6GBsM.cjs.map → NcSettingsSection-DW5u2qWg.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-CI2LoVeL.mjs → NcSettingsSelectGroup-DHuru8HO.mjs} +3 -2
- package/dist/chunks/{NcSettingsSelectGroup-CI2LoVeL.mjs.map → NcSettingsSelectGroup-DHuru8HO.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-DX4AaRte.cjs → NcSettingsSelectGroup-DmnTgIg5.cjs} +3 -2
- package/dist/chunks/{NcSettingsSelectGroup-DX4AaRte.cjs.map → NcSettingsSelectGroup-DmnTgIg5.cjs.map} +1 -1
- package/dist/chunks/NcTextArea-BHERsE_g.mjs +1 -0
- package/dist/chunks/NcTextArea-CYLGAGcO.cjs +1 -0
- package/dist/chunks/NcTextArea-CYLGAGcO.cjs.map +1 -1
- package/dist/chunks/{NcTextField-9gC8or6j.mjs → NcTextField-DpLIIKYI.mjs} +3 -2
- package/dist/chunks/{NcTextField-9gC8or6j.mjs.map → NcTextField-DpLIIKYI.mjs.map} +1 -1
- package/dist/chunks/{NcTextField-Pbox9mQE.cjs → NcTextField-rilWP68p.cjs} +3 -2
- package/dist/chunks/{NcTextField-Pbox9mQE.cjs.map → NcTextField-rilWP68p.cjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-xSXSuNHX.mjs → NcTimezonePicker-CGuLj6Bs.mjs} +3 -2
- package/dist/chunks/{NcTimezonePicker-xSXSuNHX.mjs.map → NcTimezonePicker-CGuLj6Bs.mjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-DIwsRdu2.cjs → NcTimezonePicker-CQkZVQOW.cjs} +3 -2
- package/dist/chunks/{NcTimezonePicker-DIwsRdu2.cjs.map → NcTimezonePicker-CQkZVQOW.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-rphdAcHS.cjs → NcUserBubble-Du4ecEXq.cjs} +3 -2
- package/dist/chunks/{NcUserBubble-rphdAcHS.cjs.map → NcUserBubble-Du4ecEXq.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-BFvEaXLr.mjs → NcUserBubble-X7NIiLjg.mjs} +3 -2
- package/dist/chunks/{NcUserBubble-BFvEaXLr.mjs.map → NcUserBubble-X7NIiLjg.mjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-CFLiHFkC.cjs → NcUserStatusIcon-Cy942iqr.cjs} +3 -1
- package/dist/chunks/{NcUserStatusIcon-CFLiHFkC.cjs.map → NcUserStatusIcon-Cy942iqr.cjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-S5bBgRl6.mjs → NcUserStatusIcon-D1Mw6nKB.mjs} +3 -1
- package/dist/chunks/{NcUserStatusIcon-S5bBgRl6.mjs.map → NcUserStatusIcon-D1Mw6nKB.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-CEMLuQd5.mjs → ScopeComponent-Dw8Duyxn.mjs} +2 -1
- package/dist/chunks/{ScopeComponent-CEMLuQd5.mjs.map → ScopeComponent-Dw8Duyxn.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-B5vclUCV.cjs → ScopeComponent-Uz_pNcsJ.cjs} +2 -1
- package/dist/chunks/{ScopeComponent-B5vclUCV.cjs.map → ScopeComponent-Uz_pNcsJ.cjs.map} +1 -1
- package/dist/chunks/_l10n-DINju8Lo.cjs +139 -0
- package/dist/chunks/{_l10n-CjO_W5Dt.cjs.map → _l10n-DINju8Lo.cjs.map} +1 -1
- package/dist/chunks/_l10n-DKne-gFg.mjs +140 -0
- package/dist/chunks/_l10n-DKne-gFg.mjs.map +1 -0
- package/dist/chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs +1 -0
- package/dist/chunks/_plugin-vue2_normalizer-V0q-tHlQ.cjs +1 -0
- package/dist/chunks/actionGlobal-DqVa7c7G.mjs +1 -0
- package/dist/chunks/actionGlobal-DqVa7c7G.mjs.map +1 -1
- package/dist/chunks/actionGlobal-L0Ls8tPJ.cjs +1 -0
- package/dist/chunks/actionGlobal-L0Ls8tPJ.cjs.map +1 -1
- package/dist/chunks/actionText-BcrK4uH1.cjs +1 -0
- package/dist/chunks/actionText-BcrK4uH1.cjs.map +1 -1
- package/dist/chunks/actionText-fFcUPi2g.mjs +1 -0
- package/dist/chunks/actionText-fFcUPi2g.mjs.map +1 -1
- package/dist/chunks/autolink-BAgL31EZ.cjs +1 -0
- package/dist/chunks/autolink-BAgL31EZ.cjs.map +1 -1
- package/dist/chunks/autolink-cbuFALXr.mjs +1 -0
- package/dist/chunks/autolink-cbuFALXr.mjs.map +1 -1
- package/dist/chunks/emoji-BY_D0V5K.mjs +1 -0
- package/dist/chunks/emoji-BY_D0V5K.mjs.map +1 -1
- package/dist/chunks/emoji-VgSjNTd5.cjs +1 -0
- package/dist/chunks/emoji-VgSjNTd5.cjs.map +1 -1
- package/dist/chunks/focusTrap-DmkaYJTC.mjs +32 -0
- package/dist/chunks/focusTrap-DmkaYJTC.mjs.map +1 -0
- package/dist/chunks/focusTrap-Vbgxe8ZX.cjs +31 -0
- package/dist/chunks/focusTrap-Vbgxe8ZX.cjs.map +1 -0
- package/dist/chunks/getAvatarUrl-6z9qRNH-.cjs +1 -0
- package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs +1 -0
- package/dist/chunks/{index-CtoB4eIp.mjs → index-56SXuvlv.mjs} +3 -2
- package/dist/chunks/{index-CtoB4eIp.mjs.map → index-56SXuvlv.mjs.map} +1 -1
- package/dist/chunks/index-BV85rPB7.cjs +1 -0
- package/dist/chunks/index-BV85rPB7.cjs.map +1 -1
- package/dist/chunks/index-BiECbTbJ.cjs +1 -0
- package/dist/chunks/index-BiECbTbJ.cjs.map +1 -1
- package/dist/chunks/index-Bz6q9mZw.mjs +1 -0
- package/dist/chunks/index-Bz6q9mZw.mjs.map +1 -1
- package/dist/chunks/index-DIJxEozm.cjs +1 -0
- package/dist/chunks/index-DIJxEozm.cjs.map +1 -1
- package/dist/chunks/index-G8WQDZ8G.mjs +1 -0
- package/dist/chunks/index-G8WQDZ8G.mjs.map +1 -1
- package/dist/chunks/logger-3HuiEIF6.cjs +1 -0
- package/dist/chunks/logger-D3RVzcfQ.mjs +1 -0
- package/dist/chunks/{referencePickerModal-BkBu4cnq.cjs → referencePickerModal-CIO6RuJz.cjs} +7 -6
- package/dist/chunks/{referencePickerModal-BkBu4cnq.cjs.map → referencePickerModal-CIO6RuJz.cjs.map} +1 -1
- package/dist/chunks/{referencePickerModal-CGG57Dy_.mjs → referencePickerModal-DTLuXI-A.mjs} +8 -7
- package/dist/chunks/{referencePickerModal-CGG57Dy_.mjs.map → referencePickerModal-DTLuXI-A.mjs.map} +1 -1
- package/dist/chunks/rtl-DLuwcTlm.cjs +5 -0
- package/dist/chunks/rtl-DLuwcTlm.cjs.map +1 -0
- package/dist/chunks/rtl-v0UOPAM7.mjs +6 -0
- package/dist/chunks/rtl-v0UOPAM7.mjs.map +1 -0
- package/dist/chunks/useModelMigration-D5zhrNXr.cjs +1 -0
- package/dist/chunks/useModelMigration-D5zhrNXr.cjs.map +1 -1
- package/dist/chunks/useModelMigration-EhAWvqDD.mjs +1 -0
- package/dist/chunks/useModelMigration-EhAWvqDD.mjs.map +1 -1
- package/dist/chunks/useTrapStackControl-BJmJdJak.cjs +22 -0
- package/dist/chunks/useTrapStackControl-BJmJdJak.cjs.map +1 -0
- package/dist/chunks/useTrapStackControl-b3A_383w.mjs +23 -0
- package/dist/chunks/useTrapStackControl-b3A_383w.mjs.map +1 -0
- package/dist/chunks/{usernameToColor-cVFS7tET.cjs → usernameToColor-BiO_8cQo.cjs} +2 -1
- package/dist/chunks/{usernameToColor-cVFS7tET.cjs.map → usernameToColor-BiO_8cQo.cjs.map} +1 -1
- package/dist/chunks/{usernameToColor-BCZuxlEH.mjs → usernameToColor-DLOoqQAF.mjs} +2 -1
- package/dist/chunks/{usernameToColor-BCZuxlEH.mjs.map → usernameToColor-DLOoqQAF.mjs.map} +1 -1
- package/dist/composables/useTrapStackControl.d.ts +12 -0
- package/dist/functions/index.d.ts +3 -2
- package/dist/functions/preloadImage/index.d.ts +9 -0
- package/dist/functions/reference/widgets.d.ts +1 -1
- package/dist/index.cjs +58 -52
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +59 -53
- package/dist/index.mjs.map +1 -1
- package/dist/utils/focusTrap.d.ts +26 -0
- package/dist/utils/rtl.d.ts +5 -0
- package/dist/vendor.LICENSE.txt +128 -0
- package/package.json +23 -15
- package/dist/chunks/NcActionTextEditable-C-ZP8_Tn.cjs.map +0 -1
- package/dist/chunks/NcActionTextEditable-JRD-G0CT.mjs.map +0 -1
- package/dist/chunks/NcActions-D3hGxwlc.mjs.map +0 -1
- package/dist/chunks/NcActions-DTICeoTz.cjs.map +0 -1
- package/dist/chunks/NcAppContent-BKQ-H04y.mjs.map +0 -1
- package/dist/chunks/NcAppContent-BOt6_YA7.cjs.map +0 -1
- package/dist/chunks/NcAppNavigation-B_92V8o3.mjs.map +0 -1
- package/dist/chunks/NcAppNavigation-D7W-4cVo.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-CpcFOmJR.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-DL9OwWo-.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationSearch-Q0eMy5I2.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationSearch-gytpBKme.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-Br1hcFGt.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-Pr8bEpDs.mjs.map +0 -1
- package/dist/chunks/NcAppSidebar-BY33yoNX.cjs.map +0 -1
- package/dist/chunks/NcAppSidebar-cEQy8s50.mjs.map +0 -1
- package/dist/chunks/NcAvatar-BjwyJw34.mjs.map +0 -1
- package/dist/chunks/NcAvatar-CQtsmbBW.cjs.map +0 -1
- package/dist/chunks/NcBreadcrumb-DrlhnNbV.cjs.map +0 -1
- package/dist/chunks/NcBreadcrumb-GHiD-Sw7.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-CCuKA55c.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-RjEq0SqY.cjs.map +0 -1
- package/dist/chunks/NcColorPicker-CTQlyVCL.cjs.map +0 -1
- package/dist/chunks/NcColorPicker-ph8Nubq7.mjs.map +0 -1
- package/dist/chunks/NcDialog-I_9fyJVt.mjs.map +0 -1
- package/dist/chunks/NcDialog-mcbLFc8o.cjs.map +0 -1
- package/dist/chunks/NcDialogButton-DuJ3lE7e.mjs.map +0 -1
- package/dist/chunks/NcDialogButton-FLqQdVLb.cjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-B1ot5iNB.cjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-DDCgW2zQ.mjs.map +0 -1
- package/dist/chunks/NcHeaderMenu-BaHhnhN0.cjs.map +0 -1
- package/dist/chunks/NcHeaderMenu-CLcpStap.mjs.map +0 -1
- package/dist/chunks/NcInputConfirmCancel-C7a7Nha7.mjs.map +0 -1
- package/dist/chunks/NcInputConfirmCancel-XzKuYi6L.cjs.map +0 -1
- package/dist/chunks/NcInputField-CU5a68Pc.mjs.map +0 -1
- package/dist/chunks/NcInputField-DkhKrb8k.cjs.map +0 -1
- package/dist/chunks/NcListItem-3e1MminS.mjs.map +0 -1
- package/dist/chunks/NcListItem-9w7m2lJ_.cjs.map +0 -1
- package/dist/chunks/NcPopover-BKlH1mbx.cjs.map +0 -1
- package/dist/chunks/NcPopover-DFCPlZpS.mjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-BrkyIR3v.cjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-C6JIVMvN.mjs.map +0 -1
- package/dist/chunks/NcRichText-C8SjsRK8.mjs +0 -420
- package/dist/chunks/NcRichText-C8SjsRK8.mjs.map +0 -1
- package/dist/chunks/NcRichText-Ci72ylJ9.cjs +0 -449
- package/dist/chunks/NcRichText-Ci72ylJ9.cjs.map +0 -1
- package/dist/chunks/NcSelect-BQ-NFBXI.mjs.map +0 -1
- package/dist/chunks/NcSelect-YHwbPAJD.cjs.map +0 -1
- package/dist/chunks/_l10n-CjO_W5Dt.cjs +0 -138
- package/dist/chunks/_l10n-DDKxBWQL.mjs +0 -139
- package/dist/chunks/_l10n-DDKxBWQL.mjs.map +0 -1
- package/dist/chunks/focusTrap-Cecv_gjR.mjs +0 -7
- package/dist/chunks/focusTrap-Cecv_gjR.mjs.map +0 -1
- package/dist/chunks/focusTrap-EeXFmjdI.cjs +0 -6
- package/dist/chunks/focusTrap-EeXFmjdI.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcAppNavigationSettings-
|
|
1
|
+
{"version":3,"file":"NcAppNavigationSettings-C--IJ1A2.cjs","sources":["../../node_modules/vue-material-design-icons/Cog.vue","../../src/components/NcAppNavigationSettings/NcAppNavigationSettings.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon cog-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CogIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<!--\n - SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div id=\"app-settings\"\n\t\tv-click-outside=\"clickOutsideConfig\"\n\t\t:class=\"{ open }\">\n\t\t<div id=\"app-settings__header\">\n\t\t\t<button class=\"settings-button\"\n\t\t\t\ttype=\"button\"\n\t\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t\taria-controls=\"app-settings__content\"\n\t\t\t\t@click=\"toggleMenu\">\n\t\t\t\t<Cog class=\"settings-button__icon\" :size=\"20\" />\n\t\t\t\t<span class=\"settings-button__label\">{{ name }}</span>\n\t\t\t</button>\n\t\t</div>\n\t\t<Transition name=\"slide-up\">\n\t\t\t<div v-show=\"open\" id=\"app-settings__content\">\n\t\t\t\t<slot />\n\t\t\t</div>\n\t\t</Transition>\n\t</div>\n</template>\n\n<script>\nimport { t } from '../../l10n.js'\nimport { clickOutsideOptions } from '../../mixins/index.js'\n\nimport Cog from 'vue-material-design-icons/Cog.vue'\n\nimport { vOnClickOutside as ClickOutside } from '@vueuse/components'\n\nexport default {\n\tdirectives: {\n\t\tClickOutside,\n\t},\n\tcomponents: {\n\t\tCog,\n\t},\n\tmixins: [\n\t\tclickOutsideOptions,\n\t],\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: t('Settings'),\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\topen: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tclickOutsideConfig() {\n\t\t\treturn [\n\t\t\t\tthis.closeMenu,\n\t\t\t\tthis.clickOutsideOptions,\n\t\t\t]\n\t\t},\n\t},\n\tmethods: {\n\t\ttoggleMenu() {\n\t\t\tthis.open = !this.open\n\t\t},\n\t\tcloseMenu() {\n\t\t\tthis.open = false\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\n#app-settings {\n\tmargin-top: auto;\n\tpadding: $app-navigation-settings-margin;\n\n\t&__header {\n\t\tbox-sizing: border-box;\n\t\tmargin: 0 $app-navigation-settings-margin $app-navigation-settings-margin $app-navigation-settings-margin;\n\n\t\t.settings-button {\n\t\t\tdisplay: flex;\n\t\t\tflex: 1 1 0;\n\t\t\theight: var(--default-clickable-area);\n\t\t\twidth: 100%;\n\t\t\tpadding: 0;\n\t\t\tmargin: 0;\n\t\t\tbackground-color: transparent;\n\t\t\tbox-shadow: none;\n\t\t\tborder: 0;\n\t\t\tborder-radius: var(--body-container-radius);\n\t\t\ttext-align: start;\n\t\t\tfont-weight: normal;\n\t\t\tfont-size: 100%;\n\t\t\tcolor: var(--color-main-text);\n\t\t\tpadding-inline-end: 14px;\n\t\t\tline-height: var(--default-clickable-area);\n\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\tbackground-color: var(--color-background-hover);\n\t\t\t}\n\n\t\t\t&__icon {\n\t\t\t\twidth: var(--default-clickable-area);\n\t\t\t\theight: var(--default-clickable-area);\n\t\t\t\tmin-width: var(--default-clickable-area);\n\t\t\t}\n\t\t\t&__label {\n\t\t\t\toverflow: hidden;\n\t\t\t\tmax-width: 100%;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__content {\n\t\tdisplay: block;\n\t\tpadding: 10px;\n\n\t\t/* prevent scrolled contents from stopping too early */\n\t\tmargin-bottom: -$app-navigation-settings-margin;\n\n\t\t/* restrict height of settings and make scrollable */\n\t\tmax-height: 300px;\n\t\toverflow-y: auto;\n\t\tbox-sizing: border-box;\n\t}\n}\n\n.slide-up-leave-active,\n.slide-up-enter-active {\n\ttransition-duration: var(--animation-slow);\n\ttransition-property: max-height, padding;\n\toverflow-y: hidden !important;\n}\n\n.slide-up-enter,\n.slide-up-leave-to {\n\tmax-height: 0 !important;\n\tpadding: 0 10px !important;\n}\n\n</style>\n"],"names":["_sfc_main","ClickOutside","clickOutsideOptions","t"],"mappings":";;;;;;;;;;;;;;;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;ACDA,MAAA,YAAA;AAAA,EACA,YAAA;AAAA,IACA,cAAAC,WAAA;AAAA,EACA;AAAA,EACA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,QAAA;AAAA,IACAC;AAAAA,EACA;AAAA,EACA,OAAA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAAC,MAAA,EAAA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,OAAA;AACA,WAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,UAAA;AAAA,IACA,qBAAA;AACA,aAAA;AAAA,QACA,KAAA;AAAA,QACA,KAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EACA,SAAA;AAAA,IACA,aAAA;AACA,WAAA,OAAA,CAAA,KAAA;AAAA,IACA;AAAA,IACA,YAAA;AACA,WAAA,OAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;","x_google_ignoreList":[0]}
|
package/dist/chunks/{NcAppNavigationToggle-Pr8bEpDs.mjs → NcAppNavigationToggle-CJ5N3NI4.mjs}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import '../assets/NcAppNavigationToggle-
|
|
1
|
+
import '../assets/NcAppNavigationToggle-C5IMygw1.css';
|
|
2
2
|
import NcButton from "../Components/NcButton.mjs";
|
|
3
|
-
import { r as register, C as t18, a as t } from "./_l10n-
|
|
3
|
+
import { r as register, C as t18, a as t } from "./_l10n-DKne-gFg.mjs";
|
|
4
4
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
5
5
|
register(t18);
|
|
6
6
|
const _sfc_main$2 = {
|
|
@@ -109,7 +109,7 @@ const _sfc_main = {
|
|
|
109
109
|
};
|
|
110
110
|
var _sfc_render = function render3() {
|
|
111
111
|
var _vm = this, _c = _vm._self._c;
|
|
112
|
-
return _c("div", { staticClass: "app-navigation-toggle-wrapper" }, [_c("NcButton", { staticClass: "app-navigation-toggle", attrs: { "
|
|
112
|
+
return _c("div", { staticClass: "app-navigation-toggle-wrapper" }, [_c("NcButton", { staticClass: "app-navigation-toggle", attrs: { "aria-controls": "app-navigation-vue", "aria-expanded": _vm.open ? "true" : "false", "aria-keyshortcuts": _vm.disableKeyboardShortcuts ? "" : "n", "aria-label": _vm.label, "title": _vm.label, "variant": "tertiary" }, on: { "click": _vm.toggleNavigation }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
113
113
|
return [_vm.open ? _c("MenuOpenIcon", { attrs: { "size": 20 } }) : _c("MenuIcon", { attrs: { "size": 20 } })];
|
|
114
114
|
}, proxy: true }]) })], 1);
|
|
115
115
|
};
|
|
@@ -120,9 +120,10 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
120
120
|
_sfc_staticRenderFns,
|
|
121
121
|
false,
|
|
122
122
|
null,
|
|
123
|
-
"
|
|
123
|
+
"f7da2749"
|
|
124
124
|
);
|
|
125
125
|
const NcAppNavigationToggle = __component__.exports;
|
|
126
126
|
export {
|
|
127
127
|
NcAppNavigationToggle as N
|
|
128
128
|
};
|
|
129
|
+
//# sourceMappingURL=NcAppNavigationToggle-CJ5N3NI4.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcAppNavigationToggle-CJ5N3NI4.mjs","sources":["../../node_modules/vue-material-design-icons/Menu.vue","../../node_modules/vue-material-design-icons/MenuOpen.vue","../../src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-open-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuOpenIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton class=\"app-navigation-toggle\"\n\t\t\taria-controls=\"app-navigation-vue\"\n\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t:aria-keyshortcuts=\"disableKeyboardShortcuts ? '' : 'n'\"\n\t\t\t:aria-label=\"label\"\n\t\t\t:title=\"label\"\n\t\t\tvariant=\"tertiary\"\n\t\t\t@click=\"toggleNavigation\">\n\t\t\t<template #icon>\n\t\t\t\t<MenuOpenIcon v-if=\"open\" :size=\"20\" />\n\t\t\t\t<MenuIcon v-else :size=\"20\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</div>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.js'\nimport { t } from '../../l10n.js'\n\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\n\nconst disableKeyboardShortcuts = window.OCP?.Accessibility?.disableKeyboardShortcuts?.()\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Tracks whether the toggle has been clicked or not.\n\t\t * If it has been clicked, switches between the different MenuIcons\n\t\t * and emits a boolean indicating its opened status\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn { disableKeyboardShortcuts }\n\t},\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open\n\t\t\t\t? t('Close navigation')\n\t\t\t\t: t('Open navigation {shortcut}', { shortcut: disableKeyboardShortcuts ? '' : '[n]' }).trim()\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Once the toggle has been clicked, emits the toggle status\n\t\t * so parent components can gauge the status of the navigation button\n\t\t */\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.app-navigation-toggle-wrapper {\n\tposition: absolute;\n\ttop: var(--app-navigation-padding);\n\tinset-inline-end: calc(0px - var(--app-navigation-padding));\n\tmargin-inline-end: calc(-1 * var(--default-clickable-area));\n}\n\nbutton.app-navigation-toggle {\n\tbackground-color: var(--color-main-background);\n}\n</style>\n"],"names":["_sfc_main"],"mappings":";;;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;AChBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;ACNA,MAAA,2BAAA,OAAA,KAAA,eAAA,2BAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA,EAAA,yBAAA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OACA,EAAA,kBAAA,IACA,EAAA,8BAAA,EAAA,UAAA,2BAAA,KAAA,MAAA,CAAA,EAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
|
package/dist/chunks/{NcAppNavigationToggle-Br1hcFGt.cjs → NcAppNavigationToggle-FxOt_DlD.cjs}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
require('../assets/NcAppNavigationToggle-
|
|
1
|
+
require('../assets/NcAppNavigationToggle-C5IMygw1.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const Components_NcButton = require("../Components/NcButton.cjs");
|
|
4
|
-
const _l10n = require("./_l10n-
|
|
4
|
+
const _l10n = require("./_l10n-DINju8Lo.cjs");
|
|
5
5
|
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
6
6
|
_l10n.register(_l10n.t18);
|
|
7
7
|
const _sfc_main$2 = {
|
|
@@ -110,7 +110,7 @@ const _sfc_main = {
|
|
|
110
110
|
};
|
|
111
111
|
var _sfc_render = function render3() {
|
|
112
112
|
var _vm = this, _c = _vm._self._c;
|
|
113
|
-
return _c("div", { staticClass: "app-navigation-toggle-wrapper" }, [_c("NcButton", { staticClass: "app-navigation-toggle", attrs: { "
|
|
113
|
+
return _c("div", { staticClass: "app-navigation-toggle-wrapper" }, [_c("NcButton", { staticClass: "app-navigation-toggle", attrs: { "aria-controls": "app-navigation-vue", "aria-expanded": _vm.open ? "true" : "false", "aria-keyshortcuts": _vm.disableKeyboardShortcuts ? "" : "n", "aria-label": _vm.label, "title": _vm.label, "variant": "tertiary" }, on: { "click": _vm.toggleNavigation }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
114
114
|
return [_vm.open ? _c("MenuOpenIcon", { attrs: { "size": 20 } }) : _c("MenuIcon", { attrs: { "size": 20 } })];
|
|
115
115
|
}, proxy: true }]) })], 1);
|
|
116
116
|
};
|
|
@@ -121,7 +121,8 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
121
121
|
_sfc_staticRenderFns,
|
|
122
122
|
false,
|
|
123
123
|
null,
|
|
124
|
-
"
|
|
124
|
+
"f7da2749"
|
|
125
125
|
);
|
|
126
126
|
const NcAppNavigationToggle = __component__.exports;
|
|
127
127
|
exports.NcAppNavigationToggle = NcAppNavigationToggle;
|
|
128
|
+
//# sourceMappingURL=NcAppNavigationToggle-FxOt_DlD.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcAppNavigationToggle-FxOt_DlD.cjs","sources":["../../node_modules/vue-material-design-icons/Menu.vue","../../node_modules/vue-material-design-icons/MenuOpen.vue","../../src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon menu-open-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M21,15.61L19.59,17L14.58,12L19.59,7L21,8.39L17.44,12L21,15.61M3,6H16V8H3V6M3,13V11H13V13H3M3,18V16H16V18H3Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MenuOpenIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"app-navigation-toggle-wrapper\">\n\t\t<NcButton class=\"app-navigation-toggle\"\n\t\t\taria-controls=\"app-navigation-vue\"\n\t\t\t:aria-expanded=\"open ? 'true' : 'false'\"\n\t\t\t:aria-keyshortcuts=\"disableKeyboardShortcuts ? '' : 'n'\"\n\t\t\t:aria-label=\"label\"\n\t\t\t:title=\"label\"\n\t\t\tvariant=\"tertiary\"\n\t\t\t@click=\"toggleNavigation\">\n\t\t\t<template #icon>\n\t\t\t\t<MenuOpenIcon v-if=\"open\" :size=\"20\" />\n\t\t\t\t<MenuIcon v-else :size=\"20\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</div>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.js'\nimport { t } from '../../l10n.js'\n\nimport MenuIcon from 'vue-material-design-icons/Menu.vue'\nimport MenuOpenIcon from 'vue-material-design-icons/MenuOpen.vue'\n\nconst disableKeyboardShortcuts = window.OCP?.Accessibility?.disableKeyboardShortcuts?.()\n\nexport default {\n\tname: 'NcAppNavigationToggle',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tMenuIcon,\n\t\tMenuOpenIcon,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Tracks whether the toggle has been clicked or not.\n\t\t * If it has been clicked, switches between the different MenuIcons\n\t\t * and emits a boolean indicating its opened status\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn { disableKeyboardShortcuts }\n\t},\n\n\tcomputed: {\n\t\tlabel() {\n\t\t\treturn this.open\n\t\t\t\t? t('Close navigation')\n\t\t\t\t: t('Open navigation {shortcut}', { shortcut: disableKeyboardShortcuts ? '' : '[n]' }).trim()\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Once the toggle has been clicked, emits the toggle status\n\t\t * so parent components can gauge the status of the navigation button\n\t\t */\n\t\ttoggleNavigation() {\n\t\t\tthis.$emit('update:open', !this.open)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.app-navigation-toggle-wrapper {\n\tposition: absolute;\n\ttop: var(--app-navigation-padding);\n\tinset-inline-end: calc(0px - var(--app-navigation-padding));\n\tmargin-inline-end: calc(-1 * var(--default-clickable-area));\n}\n\nbutton.app-navigation-toggle {\n\tbackground-color: var(--color-main-background);\n}\n</style>\n"],"names":["_sfc_main","NcButton","t"],"mappings":";;;;;AAoBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;AChBA,MAAAA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA,CAAA,OAAA;AAAA,EACA,OAAA;AAAA,IACA,OAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,IACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;ACNA,MAAA,2BAAA,OAAA,KAAA,eAAA,2BAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAC;AAAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA,EAAA,yBAAA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,QAAA;AACA,aAAA,KAAA,OACAC,MAAAA,EAAA,kBAAA,IACAA,MAAA,EAAA,8BAAA,EAAA,UAAA,2BAAA,KAAA,MAAA,CAAA,EAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,WAAA,MAAA,eAAA,CAAA,KAAA,IAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[0,1]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import '../assets/NcAppSettingsDialog-kKMMsdb3.css';
|
|
2
|
-
import { N as NcDialog } from "./NcDialog-
|
|
2
|
+
import { N as NcDialog } from "./NcDialog-D3Z5tp_6.mjs";
|
|
3
3
|
import NcVNodes from "../Components/NcVNodes.mjs";
|
|
4
4
|
import { useIsMobile } from "../Composables/useIsMobile.mjs";
|
|
5
|
-
import { r as register, l as t44, a as t } from "./_l10n-
|
|
5
|
+
import { r as register, l as t44, a as t } from "./_l10n-DKne-gFg.mjs";
|
|
6
6
|
import debounce from "debounce";
|
|
7
7
|
import Vue from "vue";
|
|
8
8
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
@@ -218,3 +218,4 @@ const NcAppSettingsDialog = __component__.exports;
|
|
|
218
218
|
export {
|
|
219
219
|
NcAppSettingsDialog as N
|
|
220
220
|
};
|
|
221
|
+
//# sourceMappingURL=NcAppSettingsDialog-C2rBRxUv.mjs.map
|
package/dist/chunks/{NcAppSettingsDialog-JPB-srka.mjs.map → NcAppSettingsDialog-C2rBRxUv.mjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcAppSettingsDialog-JPB-srka.mjs","sources":["../../src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nJust nest the `AppSettingSections` component into `NcAppSettingsDialog`,\nproviding the section's name prop. You can put your settings within each\n`NcAppSettingsSection` component.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-5\" name=\"Example name 5\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-6\" name=\"Example name 6\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-7\" name=\"Example name 7\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-8\" name=\"Example name 8\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-9\" name=\"Example name 9\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-10\" name=\"Example name 10\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nYou can also add icons to the section navigation:\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Instagram\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Instagram :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tInstagram setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Mastodon\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Mastodon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tMastodon setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Twitch\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitch :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tTwitch setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Twitter\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tTwitter setting\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nimport Instagram from 'vue-material-design-icons/Instagram.vue'\nimport Mastodon from 'vue-material-design-icons/Mastodon.vue'\nimport Twitch from 'vue-material-design-icons/Twitch.vue'\nimport Twitter from 'vue-material-design-icons/Twitter.vue'\n\nexport default {\n\tcomponents: {\n\t\tInstagram,\n\t\tMastodon,\n\t\tTwitch,\n\t\tTwitter,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<NcDialog v-if=\"open\"\n\t\t:navigation-aria-label=\"settingsNavigationAriaLabel\"\n\t\tv-bind=\"dialogProperties\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul v-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in sections\" :key=\"section.id\">\n\t\t\t\t\t<a :aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t'navigation-list__link': true,\n\t\t\t\t\t\t\t'navigation-list__link--active': section.id === selectedSection,\n\t\t\t\t\t\t\t'navigation-list__link--icon': hasNavigationIcons,\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:href=\"`#settings-section_${section.id}`\"\n\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t@click.prevent=\"handleSettingsNavigationClick(section.id)\"\n\t\t\t\t\t\t@keydown.enter=\"handleSettingsNavigationClick(section.id)\">\n\t\t\t\t\t\t<div v-if=\"hasNavigationIcons\" class=\"navigation-list__link-icon\">\n\t\t\t\t\t\t\t<NcVNodes v-if=\"section.icon\" :vnodes=\"section.icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"navigation-list__link-text\">\n\t\t\t\t\t\t\t{{ section.name }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</template>\n\t\t<div ref=\"settingsScroller\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<script>\nimport NcDialog from '../NcDialog/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { useIsMobile } from '../../composables/useIsMobile/index.js'\nimport { t } from '../../l10n.js'\n\nimport debounce from 'debounce'\nimport Vue from 'vue'\n\nexport default {\n\n\tname: 'NcAppSettingsDialog',\n\n\tcomponents: {\n\t\tNcDialog,\n\t\tNcVNodes,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tregisterSection: this.registerSection,\n\t\t\tunregisterSection: this.unregisterSection,\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Determines the open / closed state of the modal\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Shows the navigation on desktop if true\n\t\t */\n\t\tshowNavigation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Selector for the popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: String,\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Name of the settings\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Additional elements to add to the focus trap\n\t\t */\n\t\tadditionalTrapElements: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisMobile: useIsMobile(),\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedSection: '',\n\t\t\tlinkClicked: false,\n\t\t\taddedScrollListener: false,\n\t\t\tscroller: null,\n\t\t\t/**\n\t\t\t * Currently registered settings sections\n\t\t\t * @type {{ id: string, name: string, icon?: import('vue').VNode[] }[]}\n\t\t\t */\n\t\t\tsections: [],\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tdialogProperties() {\n\t\t\treturn {\n\t\t\t\tadditionalTrapElements: this.additionalTrapElements,\n\t\t\t\tcloseOnClickOutside: true,\n\t\t\t\tclass: 'app-settings',\n\t\t\t\tcontainer: this.container,\n\t\t\t\tcontentClasses: 'app-settings__content',\n\t\t\t\tsize: 'large',\n\t\t\t\tname: this.name,\n\t\t\t\tnavigationClasses: 'app-settings__navigation',\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if one or more navigation entries provide icons\n\t\t */\n\t\thasNavigationIcons() {\n\t\t\treturn this.sections.some(({ icon }) => !!icon)\n\t\t},\n\n\t\thasNavigation() {\n\t\t\tif (this.isMobile || !this.showNavigation) {\n\t\t\t\treturn false\n\t\t\t} else {\n\t\t\t\treturn true\n\t\t\t}\n\t\t},\n\n\t\tsettingsNavigationAriaLabel() {\n\t\t\treturn t('Settings navigation')\n\t\t},\n\t},\n\n\tupdated() {\n\t\t// Check that the scroller element has been mounted\n\t\tif (!this.$refs.settingsScroller) {\n\t\t\treturn\n\t\t}\n\t\t// Get the scroller element\n\t\tthis.scroller = this.$refs.settingsScroller\n\t\tif (!this.addedScrollListener) {\n\t\t\tthis.scroller.addEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = true\n\t\t}\n\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Called when a new section is registered\n\t\t * @param {string} id The section ID\n\t\t * @param {string} name The section name\n\t\t * @param {import('vue').VNode[]|undefined} icon Optional icon component\n\t\t */\n\t\tregisterSection(id, name, icon) {\n\t\t\t// Check for the uniqueness of section names\n\t\t\tif (this.sections.some(({ id: otherId }) => id === otherId)) {\n\t\t\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t\t\t}\n\t\t\tif (this.sections.some(({ name: otherName }) => name === otherName)) {\n\t\t\t\tVue.util.warn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t\t\t}\n\n\t\t\tconst newSections = [...this.sections, { id, name, icon }]\n\t\t\t// Sort sections by order in slots\n\t\t\tthis.sections = newSections.sort(({ id: idA }, { id: idB }) => {\n\t\t\t\tconst indexOf = (id) => this.$slots.default?.findIndex?.(vnode => vnode?.componentOptions?.propsData?.id === id) ?? -1\n\t\t\t\treturn indexOf(idA) - indexOf(idB)\n\t\t\t})\n\n\t\t\t// If this is the first section registered, set it as selected\n\t\t\tif (this.sections.length === 1) {\n\t\t\t\tthis.selectedSection = id\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Called when a section is unregistered to remove it from dialog\n\t\t * @param {string} id The section ID\n\t\t */\n\t\tunregisterSection(id) {\n\t\t\tthis.sections = this.sections.filter(({ id: otherId }) => id !== otherId)\n\n\t\t\t// If the current section is unregistered, set the first section as selected\n\t\t\tif (this.selectedSection === id) {\n\t\t\t\tthis.selectedSection = this.sections[0]?.id ?? ''\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Scrolls the content to the selected settings section.absolute\n\t\t *\n\t\t * @param {string} item the ID of the section\n\t\t */\n\t\thandleSettingsNavigationClick(item) {\n\t\t\tthis.linkClicked = true\n\t\t\tdocument.getElementById('settings-section_' + item).scrollIntoView({\n\t\t\t\tbehavior: 'smooth',\n\t\t\t\tinline: 'nearest',\n\t\t\t})\n\t\t\tthis.selectedSection = item\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.linkClicked = false\n\t\t\t}, 1000)\n\t\t},\n\n\t\thandleCloseModal(isOpen) {\n\t\t\tif (isOpen) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$emit('update:open', false)\n\t\t\t// Remove scroll listener each time the modal is closed\n\t\t\tthis.scroller.removeEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = false\n\t\t\tthis.scroller.scrollTop = 0\n\t\t},\n\n\t\thandleScroll() {\n\t\t\tif (!this.linkClicked) {\n\t\t\t\tthis.unfocusNavigationItem()\n\t\t\t}\n\t\t},\n\n\t\t// Remove selected section once the user starts scrolling\n\t\tunfocusNavigationItem: debounce(function() {\n\t\t\tthis.selectedSection = ''\n\t\t\tif (document.activeElement.className.includes('navigation-list__link')) {\n\t\t\t\tdocument.activeElement.blur()\n\t\t\t}\n\t\t}, 300),\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: calc(4 * var(--default-grid-baseline));\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t}\n\t:deep &__content {\n\t\tbox-sizing: border-box;\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\n\toverflow-y: auto;\n\tpadding: calc(3 * var(--default-grid-baseline));\n\n\t&__link {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tfont-size: 16px;\n\t\theight: var(--default-clickable-area);\n\t\tmargin: 4px 0;\n\t\tline-height: var(--default-clickable-area);\n\t\tborder-radius: var(--border-radius-element, var(--border-radius-pill));\n\t\tfont-weight: bold;\n\t\tpadding: 0 calc(4 * var(--default-grid-baseline));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\n\t\t&--icon {\n\t\t\tpadding-inline-start: calc(2 * var(--default-grid-baseline));\n\t\t\tgap: var(--default-grid-baseline);\n\t\t}\n\n\t\t&-icon {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-content: center;\n\t\t\twidth: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t\tmax-width: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t}\n\t}\n}\n\n@media only screen and (max-width: $breakpoint-small-mobile) {\n\t.app-settings {\n\t\t:deep .dialog__name {\n\t\t\tpadding-inline-start: 16px;\n\t\t}\n\t}\n}\n</style>\n"],"names":["id"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcAppSettingsDialog-C2rBRxUv.mjs","sources":["../../src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nJust nest the `AppSettingSections` component into `NcAppSettingsDialog`,\nproviding the section's name prop. You can put your settings within each\n`NcAppSettingsSection` component.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-5\" name=\"Example name 5\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-6\" name=\"Example name 6\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-7\" name=\"Example name 7\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-8\" name=\"Example name 8\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-9\" name=\"Example name 9\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-10\" name=\"Example name 10\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nYou can also add icons to the section navigation:\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Instagram\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Instagram :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tInstagram setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Mastodon\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Mastodon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tMastodon setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Twitch\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitch :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tTwitch setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Twitter\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tTwitter setting\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nimport Instagram from 'vue-material-design-icons/Instagram.vue'\nimport Mastodon from 'vue-material-design-icons/Mastodon.vue'\nimport Twitch from 'vue-material-design-icons/Twitch.vue'\nimport Twitter from 'vue-material-design-icons/Twitter.vue'\n\nexport default {\n\tcomponents: {\n\t\tInstagram,\n\t\tMastodon,\n\t\tTwitch,\n\t\tTwitter,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<NcDialog v-if=\"open\"\n\t\t:navigation-aria-label=\"settingsNavigationAriaLabel\"\n\t\tv-bind=\"dialogProperties\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul v-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in sections\" :key=\"section.id\">\n\t\t\t\t\t<a :aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t'navigation-list__link': true,\n\t\t\t\t\t\t\t'navigation-list__link--active': section.id === selectedSection,\n\t\t\t\t\t\t\t'navigation-list__link--icon': hasNavigationIcons,\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:href=\"`#settings-section_${section.id}`\"\n\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t@click.prevent=\"handleSettingsNavigationClick(section.id)\"\n\t\t\t\t\t\t@keydown.enter=\"handleSettingsNavigationClick(section.id)\">\n\t\t\t\t\t\t<div v-if=\"hasNavigationIcons\" class=\"navigation-list__link-icon\">\n\t\t\t\t\t\t\t<NcVNodes v-if=\"section.icon\" :vnodes=\"section.icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"navigation-list__link-text\">\n\t\t\t\t\t\t\t{{ section.name }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</template>\n\t\t<div ref=\"settingsScroller\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<script>\nimport NcDialog from '../NcDialog/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { useIsMobile } from '../../composables/useIsMobile/index.js'\nimport { t } from '../../l10n.js'\n\nimport debounce from 'debounce'\nimport Vue from 'vue'\n\nexport default {\n\n\tname: 'NcAppSettingsDialog',\n\n\tcomponents: {\n\t\tNcDialog,\n\t\tNcVNodes,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tregisterSection: this.registerSection,\n\t\t\tunregisterSection: this.unregisterSection,\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Determines the open / closed state of the modal\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Shows the navigation on desktop if true\n\t\t */\n\t\tshowNavigation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Selector for the popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: String,\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Name of the settings\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Additional elements to add to the focus trap\n\t\t */\n\t\tadditionalTrapElements: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisMobile: useIsMobile(),\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedSection: '',\n\t\t\tlinkClicked: false,\n\t\t\taddedScrollListener: false,\n\t\t\tscroller: null,\n\t\t\t/**\n\t\t\t * Currently registered settings sections\n\t\t\t * @type {{ id: string, name: string, icon?: import('vue').VNode[] }[]}\n\t\t\t */\n\t\t\tsections: [],\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tdialogProperties() {\n\t\t\treturn {\n\t\t\t\tadditionalTrapElements: this.additionalTrapElements,\n\t\t\t\tcloseOnClickOutside: true,\n\t\t\t\tclass: 'app-settings',\n\t\t\t\tcontainer: this.container,\n\t\t\t\tcontentClasses: 'app-settings__content',\n\t\t\t\tsize: 'large',\n\t\t\t\tname: this.name,\n\t\t\t\tnavigationClasses: 'app-settings__navigation',\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if one or more navigation entries provide icons\n\t\t */\n\t\thasNavigationIcons() {\n\t\t\treturn this.sections.some(({ icon }) => !!icon)\n\t\t},\n\n\t\thasNavigation() {\n\t\t\tif (this.isMobile || !this.showNavigation) {\n\t\t\t\treturn false\n\t\t\t} else {\n\t\t\t\treturn true\n\t\t\t}\n\t\t},\n\n\t\tsettingsNavigationAriaLabel() {\n\t\t\treturn t('Settings navigation')\n\t\t},\n\t},\n\n\tupdated() {\n\t\t// Check that the scroller element has been mounted\n\t\tif (!this.$refs.settingsScroller) {\n\t\t\treturn\n\t\t}\n\t\t// Get the scroller element\n\t\tthis.scroller = this.$refs.settingsScroller\n\t\tif (!this.addedScrollListener) {\n\t\t\tthis.scroller.addEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = true\n\t\t}\n\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Called when a new section is registered\n\t\t * @param {string} id The section ID\n\t\t * @param {string} name The section name\n\t\t * @param {import('vue').VNode[]|undefined} icon Optional icon component\n\t\t */\n\t\tregisterSection(id, name, icon) {\n\t\t\t// Check for the uniqueness of section names\n\t\t\tif (this.sections.some(({ id: otherId }) => id === otherId)) {\n\t\t\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t\t\t}\n\t\t\tif (this.sections.some(({ name: otherName }) => name === otherName)) {\n\t\t\t\tVue.util.warn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t\t\t}\n\n\t\t\tconst newSections = [...this.sections, { id, name, icon }]\n\t\t\t// Sort sections by order in slots\n\t\t\tthis.sections = newSections.sort(({ id: idA }, { id: idB }) => {\n\t\t\t\tconst indexOf = (id) => this.$slots.default?.findIndex?.(vnode => vnode?.componentOptions?.propsData?.id === id) ?? -1\n\t\t\t\treturn indexOf(idA) - indexOf(idB)\n\t\t\t})\n\n\t\t\t// If this is the first section registered, set it as selected\n\t\t\tif (this.sections.length === 1) {\n\t\t\t\tthis.selectedSection = id\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Called when a section is unregistered to remove it from dialog\n\t\t * @param {string} id The section ID\n\t\t */\n\t\tunregisterSection(id) {\n\t\t\tthis.sections = this.sections.filter(({ id: otherId }) => id !== otherId)\n\n\t\t\t// If the current section is unregistered, set the first section as selected\n\t\t\tif (this.selectedSection === id) {\n\t\t\t\tthis.selectedSection = this.sections[0]?.id ?? ''\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Scrolls the content to the selected settings section.absolute\n\t\t *\n\t\t * @param {string} item the ID of the section\n\t\t */\n\t\thandleSettingsNavigationClick(item) {\n\t\t\tthis.linkClicked = true\n\t\t\tdocument.getElementById('settings-section_' + item).scrollIntoView({\n\t\t\t\tbehavior: 'smooth',\n\t\t\t\tinline: 'nearest',\n\t\t\t})\n\t\t\tthis.selectedSection = item\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.linkClicked = false\n\t\t\t}, 1000)\n\t\t},\n\n\t\thandleCloseModal(isOpen) {\n\t\t\tif (isOpen) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$emit('update:open', false)\n\t\t\t// Remove scroll listener each time the modal is closed\n\t\t\tthis.scroller.removeEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = false\n\t\t\tthis.scroller.scrollTop = 0\n\t\t},\n\n\t\thandleScroll() {\n\t\t\tif (!this.linkClicked) {\n\t\t\t\tthis.unfocusNavigationItem()\n\t\t\t}\n\t\t},\n\n\t\t// Remove selected section once the user starts scrolling\n\t\tunfocusNavigationItem: debounce(function() {\n\t\t\tthis.selectedSection = ''\n\t\t\tif (document.activeElement.className.includes('navigation-list__link')) {\n\t\t\t\tdocument.activeElement.blur()\n\t\t\t}\n\t\t}, 300),\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: calc(4 * var(--default-grid-baseline));\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t}\n\t:deep &__content {\n\t\tbox-sizing: border-box;\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\n\toverflow-y: auto;\n\tpadding: calc(3 * var(--default-grid-baseline));\n\n\t&__link {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tfont-size: 16px;\n\t\theight: var(--default-clickable-area);\n\t\tmargin: 4px 0;\n\t\tline-height: var(--default-clickable-area);\n\t\tborder-radius: var(--border-radius-element, var(--border-radius-pill));\n\t\tfont-weight: bold;\n\t\tpadding: 0 calc(4 * var(--default-grid-baseline));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\n\t\t&--icon {\n\t\t\tpadding-inline-start: calc(2 * var(--default-grid-baseline));\n\t\t\tgap: var(--default-grid-baseline);\n\t\t}\n\n\t\t&-icon {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-content: center;\n\t\t\twidth: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t\tmax-width: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t}\n\t}\n}\n\n@media only screen and (max-width: $breakpoint-small-mobile) {\n\t.app-settings {\n\t\t:deep .dialog__name {\n\t\t\tpadding-inline-start: 16px;\n\t\t}\n\t}\n}\n</style>\n"],"names":["id"],"mappings":";;;;;;;;AAwKA,MAAA,YAAA;AAAA,EAEA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,WAAA;AAAA,MACA,iBAAA,KAAA;AAAA,MACA,mBAAA,KAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,wBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,MAAA,CAAA;AAAA,IACA;AAAA,EAEA;AAAA,EAEA,OAAA,CAAA,aAAA;AAAA,EAEA,QAAA;AACA,WAAA;AAAA,MACA,UAAA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,iBAAA;AAAA,MACA,aAAA;AAAA,MACA,qBAAA;AAAA,MACA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAKA,UAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,mBAAA;AACA,aAAA;AAAA,QACA,wBAAA,KAAA;AAAA,QACA,qBAAA;AAAA,QACA,OAAA;AAAA,QACA,WAAA,KAAA;AAAA,QACA,gBAAA;AAAA,QACA,MAAA;AAAA,QACA,MAAA,KAAA;AAAA,QACA,mBAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AACA,aAAA,KAAA,SAAA,KAAA,CAAA,EAAA,KAAA,MAAA,CAAA,CAAA,IAAA;AAAA,IACA;AAAA,IAEA,gBAAA;AACA,UAAA,KAAA,YAAA,CAAA,KAAA,gBAAA;AACA,eAAA;AAAA,MACA,OAAA;AACA,eAAA;AAAA,MACA;AAAA,IACA;AAAA,IAEA,8BAAA;AACA,aAAA,EAAA,qBAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAEA,QAAA,CAAA,KAAA,MAAA,kBAAA;AACA;AAAA,IACA;AAEA,SAAA,WAAA,KAAA,MAAA;AACA,QAAA,CAAA,KAAA,qBAAA;AACA,WAAA,SAAA,iBAAA,UAAA,KAAA,YAAA;AACA,WAAA,sBAAA;AAAA,IACA;AAAA,EAEA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,gBAAA,IAAA,MAAA,MAAA;AAEA,UAAA,KAAA,SAAA,KAAA,CAAA,EAAA,IAAA,QAAA,MAAA,OAAA,OAAA,GAAA;AACA,cAAA,IAAA,MAAA,+BAAA,EAAA,8DAAA;AAAA,MACA;AACA,UAAA,KAAA,SAAA,KAAA,CAAA,EAAA,MAAA,UAAA,MAAA,SAAA,SAAA,GAAA;AACA,YAAA,KAAA,KAAA,iCAAA,IAAA,gEAAA;AAAA,MACA;AAEA,YAAA,cAAA,CAAA,GAAA,KAAA,UAAA,EAAA,IAAA,MAAA,KAAA,CAAA;AAEA,WAAA,WAAA,YAAA,KAAA,CAAA,EAAA,IAAA,OAAA,EAAA,IAAA,UAAA;AACA,cAAA,UAAA,CAAAA,QAAA,KAAA,OAAA,SAAA,YAAA,WAAA,OAAA,kBAAA,WAAA,OAAAA,GAAA,KAAA;AACA,eAAA,QAAA,GAAA,IAAA,QAAA,GAAA;AAAA,MACA,CAAA;AAGA,UAAA,KAAA,SAAA,WAAA,GAAA;AACA,aAAA,kBAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,kBAAA,IAAA;AACA,WAAA,WAAA,KAAA,SAAA,OAAA,CAAA,EAAA,IAAA,cAAA,OAAA,OAAA;AAGA,UAAA,KAAA,oBAAA,IAAA;AACA,aAAA,kBAAA,KAAA,SAAA,CAAA,GAAA,MAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,8BAAA,MAAA;AACA,WAAA,cAAA;AACA,eAAA,eAAA,sBAAA,IAAA,EAAA,eAAA;AAAA,QACA,UAAA;AAAA,QACA,QAAA;AAAA,MACA,CAAA;AACA,WAAA,kBAAA;AACA,iBAAA,MAAA;AACA,aAAA,cAAA;AAAA,MACA,GAAA,GAAA;AAAA,IACA;AAAA,IAEA,iBAAA,QAAA;AACA,UAAA,QAAA;AACA;AAAA,MACA;AAEA,WAAA,MAAA,eAAA,KAAA;AAEA,WAAA,SAAA,oBAAA,UAAA,KAAA,YAAA;AACA,WAAA,sBAAA;AACA,WAAA,SAAA,YAAA;AAAA,IACA;AAAA,IAEA,eAAA;AACA,UAAA,CAAA,KAAA,aAAA;AACA,aAAA,sBAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA,IAGA,uBAAA,SAAA,WAAA;AACA,WAAA,kBAAA;AACA,UAAA,SAAA,cAAA,UAAA,SAAA,uBAAA,GAAA;AACA,iBAAA,cAAA,KAAA;AAAA,MACA;AAAA,IACA,GAAA,GAAA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
require('../assets/NcAppSettingsDialog-kKMMsdb3.css');
|
|
2
2
|
"use strict";
|
|
3
|
-
const NcDialog = require("./NcDialog-
|
|
3
|
+
const NcDialog = require("./NcDialog-DbCdhtw7.cjs");
|
|
4
4
|
const Components_NcVNodes = require("../Components/NcVNodes.cjs");
|
|
5
5
|
const Composables_useIsMobile = require("../Composables/useIsMobile.cjs");
|
|
6
|
-
const _l10n = require("./_l10n-
|
|
6
|
+
const _l10n = require("./_l10n-DINju8Lo.cjs");
|
|
7
7
|
const debounce = require("debounce");
|
|
8
8
|
const Vue = require("vue");
|
|
9
9
|
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
@@ -220,3 +220,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
220
220
|
);
|
|
221
221
|
const NcAppSettingsDialog = __component__.exports;
|
|
222
222
|
exports.NcAppSettingsDialog = NcAppSettingsDialog;
|
|
223
|
+
//# sourceMappingURL=NcAppSettingsDialog-CSLft-a9.cjs.map
|
package/dist/chunks/{NcAppSettingsDialog-z9v6V6ye.cjs.map → NcAppSettingsDialog-CSLft-a9.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcAppSettingsDialog-z9v6V6ye.cjs","sources":["../../src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nJust nest the `AppSettingSections` component into `NcAppSettingsDialog`,\nproviding the section's name prop. You can put your settings within each\n`NcAppSettingsSection` component.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-5\" name=\"Example name 5\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-6\" name=\"Example name 6\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-7\" name=\"Example name 7\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-8\" name=\"Example name 8\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-9\" name=\"Example name 9\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-10\" name=\"Example name 10\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nYou can also add icons to the section navigation:\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Instagram\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Instagram :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tInstagram setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Mastodon\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Mastodon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tMastodon setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Twitch\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitch :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tTwitch setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Twitter\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tTwitter setting\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nimport Instagram from 'vue-material-design-icons/Instagram.vue'\nimport Mastodon from 'vue-material-design-icons/Mastodon.vue'\nimport Twitch from 'vue-material-design-icons/Twitch.vue'\nimport Twitter from 'vue-material-design-icons/Twitter.vue'\n\nexport default {\n\tcomponents: {\n\t\tInstagram,\n\t\tMastodon,\n\t\tTwitch,\n\t\tTwitter,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<NcDialog v-if=\"open\"\n\t\t:navigation-aria-label=\"settingsNavigationAriaLabel\"\n\t\tv-bind=\"dialogProperties\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul v-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in sections\" :key=\"section.id\">\n\t\t\t\t\t<a :aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t'navigation-list__link': true,\n\t\t\t\t\t\t\t'navigation-list__link--active': section.id === selectedSection,\n\t\t\t\t\t\t\t'navigation-list__link--icon': hasNavigationIcons,\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:href=\"`#settings-section_${section.id}`\"\n\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t@click.prevent=\"handleSettingsNavigationClick(section.id)\"\n\t\t\t\t\t\t@keydown.enter=\"handleSettingsNavigationClick(section.id)\">\n\t\t\t\t\t\t<div v-if=\"hasNavigationIcons\" class=\"navigation-list__link-icon\">\n\t\t\t\t\t\t\t<NcVNodes v-if=\"section.icon\" :vnodes=\"section.icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"navigation-list__link-text\">\n\t\t\t\t\t\t\t{{ section.name }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</template>\n\t\t<div ref=\"settingsScroller\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<script>\nimport NcDialog from '../NcDialog/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { useIsMobile } from '../../composables/useIsMobile/index.js'\nimport { t } from '../../l10n.js'\n\nimport debounce from 'debounce'\nimport Vue from 'vue'\n\nexport default {\n\n\tname: 'NcAppSettingsDialog',\n\n\tcomponents: {\n\t\tNcDialog,\n\t\tNcVNodes,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tregisterSection: this.registerSection,\n\t\t\tunregisterSection: this.unregisterSection,\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Determines the open / closed state of the modal\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Shows the navigation on desktop if true\n\t\t */\n\t\tshowNavigation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Selector for the popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: String,\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Name of the settings\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Additional elements to add to the focus trap\n\t\t */\n\t\tadditionalTrapElements: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisMobile: useIsMobile(),\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedSection: '',\n\t\t\tlinkClicked: false,\n\t\t\taddedScrollListener: false,\n\t\t\tscroller: null,\n\t\t\t/**\n\t\t\t * Currently registered settings sections\n\t\t\t * @type {{ id: string, name: string, icon?: import('vue').VNode[] }[]}\n\t\t\t */\n\t\t\tsections: [],\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tdialogProperties() {\n\t\t\treturn {\n\t\t\t\tadditionalTrapElements: this.additionalTrapElements,\n\t\t\t\tcloseOnClickOutside: true,\n\t\t\t\tclass: 'app-settings',\n\t\t\t\tcontainer: this.container,\n\t\t\t\tcontentClasses: 'app-settings__content',\n\t\t\t\tsize: 'large',\n\t\t\t\tname: this.name,\n\t\t\t\tnavigationClasses: 'app-settings__navigation',\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if one or more navigation entries provide icons\n\t\t */\n\t\thasNavigationIcons() {\n\t\t\treturn this.sections.some(({ icon }) => !!icon)\n\t\t},\n\n\t\thasNavigation() {\n\t\t\tif (this.isMobile || !this.showNavigation) {\n\t\t\t\treturn false\n\t\t\t} else {\n\t\t\t\treturn true\n\t\t\t}\n\t\t},\n\n\t\tsettingsNavigationAriaLabel() {\n\t\t\treturn t('Settings navigation')\n\t\t},\n\t},\n\n\tupdated() {\n\t\t// Check that the scroller element has been mounted\n\t\tif (!this.$refs.settingsScroller) {\n\t\t\treturn\n\t\t}\n\t\t// Get the scroller element\n\t\tthis.scroller = this.$refs.settingsScroller\n\t\tif (!this.addedScrollListener) {\n\t\t\tthis.scroller.addEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = true\n\t\t}\n\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Called when a new section is registered\n\t\t * @param {string} id The section ID\n\t\t * @param {string} name The section name\n\t\t * @param {import('vue').VNode[]|undefined} icon Optional icon component\n\t\t */\n\t\tregisterSection(id, name, icon) {\n\t\t\t// Check for the uniqueness of section names\n\t\t\tif (this.sections.some(({ id: otherId }) => id === otherId)) {\n\t\t\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t\t\t}\n\t\t\tif (this.sections.some(({ name: otherName }) => name === otherName)) {\n\t\t\t\tVue.util.warn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t\t\t}\n\n\t\t\tconst newSections = [...this.sections, { id, name, icon }]\n\t\t\t// Sort sections by order in slots\n\t\t\tthis.sections = newSections.sort(({ id: idA }, { id: idB }) => {\n\t\t\t\tconst indexOf = (id) => this.$slots.default?.findIndex?.(vnode => vnode?.componentOptions?.propsData?.id === id) ?? -1\n\t\t\t\treturn indexOf(idA) - indexOf(idB)\n\t\t\t})\n\n\t\t\t// If this is the first section registered, set it as selected\n\t\t\tif (this.sections.length === 1) {\n\t\t\t\tthis.selectedSection = id\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Called when a section is unregistered to remove it from dialog\n\t\t * @param {string} id The section ID\n\t\t */\n\t\tunregisterSection(id) {\n\t\t\tthis.sections = this.sections.filter(({ id: otherId }) => id !== otherId)\n\n\t\t\t// If the current section is unregistered, set the first section as selected\n\t\t\tif (this.selectedSection === id) {\n\t\t\t\tthis.selectedSection = this.sections[0]?.id ?? ''\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Scrolls the content to the selected settings section.absolute\n\t\t *\n\t\t * @param {string} item the ID of the section\n\t\t */\n\t\thandleSettingsNavigationClick(item) {\n\t\t\tthis.linkClicked = true\n\t\t\tdocument.getElementById('settings-section_' + item).scrollIntoView({\n\t\t\t\tbehavior: 'smooth',\n\t\t\t\tinline: 'nearest',\n\t\t\t})\n\t\t\tthis.selectedSection = item\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.linkClicked = false\n\t\t\t}, 1000)\n\t\t},\n\n\t\thandleCloseModal(isOpen) {\n\t\t\tif (isOpen) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$emit('update:open', false)\n\t\t\t// Remove scroll listener each time the modal is closed\n\t\t\tthis.scroller.removeEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = false\n\t\t\tthis.scroller.scrollTop = 0\n\t\t},\n\n\t\thandleScroll() {\n\t\t\tif (!this.linkClicked) {\n\t\t\t\tthis.unfocusNavigationItem()\n\t\t\t}\n\t\t},\n\n\t\t// Remove selected section once the user starts scrolling\n\t\tunfocusNavigationItem: debounce(function() {\n\t\t\tthis.selectedSection = ''\n\t\t\tif (document.activeElement.className.includes('navigation-list__link')) {\n\t\t\t\tdocument.activeElement.blur()\n\t\t\t}\n\t\t}, 300),\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: calc(4 * var(--default-grid-baseline));\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t}\n\t:deep &__content {\n\t\tbox-sizing: border-box;\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\n\toverflow-y: auto;\n\tpadding: calc(3 * var(--default-grid-baseline));\n\n\t&__link {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tfont-size: 16px;\n\t\theight: var(--default-clickable-area);\n\t\tmargin: 4px 0;\n\t\tline-height: var(--default-clickable-area);\n\t\tborder-radius: var(--border-radius-element, var(--border-radius-pill));\n\t\tfont-weight: bold;\n\t\tpadding: 0 calc(4 * var(--default-grid-baseline));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\n\t\t&--icon {\n\t\t\tpadding-inline-start: calc(2 * var(--default-grid-baseline));\n\t\t\tgap: var(--default-grid-baseline);\n\t\t}\n\n\t\t&-icon {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-content: center;\n\t\t\twidth: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t\tmax-width: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t}\n\t}\n}\n\n@media only screen and (max-width: $breakpoint-small-mobile) {\n\t.app-settings {\n\t\t:deep .dialog__name {\n\t\t\tpadding-inline-start: 16px;\n\t\t}\n\t}\n}\n</style>\n"],"names":["NcDialog","NcVNodes","useIsMobile","t","Vue","id","debounce"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcAppSettingsDialog-CSLft-a9.cjs","sources":["../../src/components/NcAppSettingsDialog/NcAppSettingsDialog.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nJust nest the `AppSettingSections` component into `NcAppSettingsDialog`,\nproviding the section's name prop. You can put your settings within each\n`NcAppSettingsSection` component.\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Example name 1\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Example name 2\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Example name 3\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Example name 4\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-5\" name=\"Example name 5\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-6\" name=\"Example name 6\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-7\" name=\"Example name 7\">\n\t\t\t\tSome example content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-8\" name=\"Example name 8\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-9\" name=\"Example name 9\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-10\" name=\"Example name 10\">\n\t\t\t\tSome more content\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nYou can also add icons to the section navigation:\n\n```vue\n<template>\n\t<div>\n\t\t<NcButton @click=\"settingsOpen = true\">Show Settings</NcButton>\n\t\t<NcAppSettingsDialog :open.sync=\"settingsOpen\" :show-navigation=\"true\" name=\"Application settings\">\n\t\t\t<NcAppSettingsSection id=\"asci-name-1\" name=\"Instagram\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Instagram :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tInstagram setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-2\" name=\"Mastodon\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Mastodon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tMastodon setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-3\" name=\"Twitch\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitch :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<p style=\"height: 100vh;\">\n\t\t\t\t\tTwitch setting\n\t\t\t\t</p>\n\t\t\t</NcAppSettingsSection>\n\t\t\t<NcAppSettingsSection id=\"asci-name-4\" name=\"Twitter\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Twitter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tTwitter setting\n\t\t\t</NcAppSettingsSection>\n\t\t</NcAppSettingsDialog>\n\t</div>\n</template>\n\n<script>\nimport Instagram from 'vue-material-design-icons/Instagram.vue'\nimport Mastodon from 'vue-material-design-icons/Mastodon.vue'\nimport Twitch from 'vue-material-design-icons/Twitch.vue'\nimport Twitter from 'vue-material-design-icons/Twitter.vue'\n\nexport default {\n\tcomponents: {\n\t\tInstagram,\n\t\tMastodon,\n\t\tTwitch,\n\t\tTwitter,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsettingsOpen: false,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<NcDialog v-if=\"open\"\n\t\t:navigation-aria-label=\"settingsNavigationAriaLabel\"\n\t\tv-bind=\"dialogProperties\"\n\t\t@update:open=\"handleCloseModal\">\n\t\t<template v-if=\"hasNavigation\" #navigation=\"{ isCollapsed }\">\n\t\t\t<ul v-if=\"!isCollapsed\"\n\t\t\t\tclass=\"navigation-list\">\n\t\t\t\t<li v-for=\"section in sections\" :key=\"section.id\">\n\t\t\t\t\t<a :aria-current=\"`${section.id === selectedSection}`\"\n\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t'navigation-list__link': true,\n\t\t\t\t\t\t\t'navigation-list__link--active': section.id === selectedSection,\n\t\t\t\t\t\t\t'navigation-list__link--icon': hasNavigationIcons,\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:href=\"`#settings-section_${section.id}`\"\n\t\t\t\t\t\ttabindex=\"0\"\n\t\t\t\t\t\t@click.prevent=\"handleSettingsNavigationClick(section.id)\"\n\t\t\t\t\t\t@keydown.enter=\"handleSettingsNavigationClick(section.id)\">\n\t\t\t\t\t\t<div v-if=\"hasNavigationIcons\" class=\"navigation-list__link-icon\">\n\t\t\t\t\t\t\t<NcVNodes v-if=\"section.icon\" :vnodes=\"section.icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<span class=\"navigation-list__link-text\">\n\t\t\t\t\t\t\t{{ section.name }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</template>\n\t\t<div ref=\"settingsScroller\">\n\t\t\t<slot />\n\t\t</div>\n\t</NcDialog>\n</template>\n\n<script>\nimport NcDialog from '../NcDialog/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { useIsMobile } from '../../composables/useIsMobile/index.js'\nimport { t } from '../../l10n.js'\n\nimport debounce from 'debounce'\nimport Vue from 'vue'\n\nexport default {\n\n\tname: 'NcAppSettingsDialog',\n\n\tcomponents: {\n\t\tNcDialog,\n\t\tNcVNodes,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tregisterSection: this.registerSection,\n\t\t\tunregisterSection: this.unregisterSection,\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Determines the open / closed state of the modal\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * Shows the navigation on desktop if true\n\t\t */\n\t\tshowNavigation: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Selector for the popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: String,\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Name of the settings\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Additional elements to add to the focus trap\n\t\t */\n\t\tadditionalTrapElements: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\n\t},\n\n\temits: ['update:open'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisMobile: useIsMobile(),\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedSection: '',\n\t\t\tlinkClicked: false,\n\t\t\taddedScrollListener: false,\n\t\t\tscroller: null,\n\t\t\t/**\n\t\t\t * Currently registered settings sections\n\t\t\t * @type {{ id: string, name: string, icon?: import('vue').VNode[] }[]}\n\t\t\t */\n\t\t\tsections: [],\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tdialogProperties() {\n\t\t\treturn {\n\t\t\t\tadditionalTrapElements: this.additionalTrapElements,\n\t\t\t\tcloseOnClickOutside: true,\n\t\t\t\tclass: 'app-settings',\n\t\t\t\tcontainer: this.container,\n\t\t\t\tcontentClasses: 'app-settings__content',\n\t\t\t\tsize: 'large',\n\t\t\t\tname: this.name,\n\t\t\t\tnavigationClasses: 'app-settings__navigation',\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if one or more navigation entries provide icons\n\t\t */\n\t\thasNavigationIcons() {\n\t\t\treturn this.sections.some(({ icon }) => !!icon)\n\t\t},\n\n\t\thasNavigation() {\n\t\t\tif (this.isMobile || !this.showNavigation) {\n\t\t\t\treturn false\n\t\t\t} else {\n\t\t\t\treturn true\n\t\t\t}\n\t\t},\n\n\t\tsettingsNavigationAriaLabel() {\n\t\t\treturn t('Settings navigation')\n\t\t},\n\t},\n\n\tupdated() {\n\t\t// Check that the scroller element has been mounted\n\t\tif (!this.$refs.settingsScroller) {\n\t\t\treturn\n\t\t}\n\t\t// Get the scroller element\n\t\tthis.scroller = this.$refs.settingsScroller\n\t\tif (!this.addedScrollListener) {\n\t\t\tthis.scroller.addEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = true\n\t\t}\n\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Called when a new section is registered\n\t\t * @param {string} id The section ID\n\t\t * @param {string} name The section name\n\t\t * @param {import('vue').VNode[]|undefined} icon Optional icon component\n\t\t */\n\t\tregisterSection(id, name, icon) {\n\t\t\t// Check for the uniqueness of section names\n\t\t\tif (this.sections.some(({ id: otherId }) => id === otherId)) {\n\t\t\t\tthrow new Error(`Duplicate section id found: ${id}. Settings navigation sections must have unique section ids.`)\n\t\t\t}\n\t\t\tif (this.sections.some(({ name: otherName }) => name === otherName)) {\n\t\t\t\tVue.util.warn(`Duplicate section name found: ${name}. Settings navigation sections must have unique section names.`)\n\t\t\t}\n\n\t\t\tconst newSections = [...this.sections, { id, name, icon }]\n\t\t\t// Sort sections by order in slots\n\t\t\tthis.sections = newSections.sort(({ id: idA }, { id: idB }) => {\n\t\t\t\tconst indexOf = (id) => this.$slots.default?.findIndex?.(vnode => vnode?.componentOptions?.propsData?.id === id) ?? -1\n\t\t\t\treturn indexOf(idA) - indexOf(idB)\n\t\t\t})\n\n\t\t\t// If this is the first section registered, set it as selected\n\t\t\tif (this.sections.length === 1) {\n\t\t\t\tthis.selectedSection = id\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Called when a section is unregistered to remove it from dialog\n\t\t * @param {string} id The section ID\n\t\t */\n\t\tunregisterSection(id) {\n\t\t\tthis.sections = this.sections.filter(({ id: otherId }) => id !== otherId)\n\n\t\t\t// If the current section is unregistered, set the first section as selected\n\t\t\tif (this.selectedSection === id) {\n\t\t\t\tthis.selectedSection = this.sections[0]?.id ?? ''\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Scrolls the content to the selected settings section.absolute\n\t\t *\n\t\t * @param {string} item the ID of the section\n\t\t */\n\t\thandleSettingsNavigationClick(item) {\n\t\t\tthis.linkClicked = true\n\t\t\tdocument.getElementById('settings-section_' + item).scrollIntoView({\n\t\t\t\tbehavior: 'smooth',\n\t\t\t\tinline: 'nearest',\n\t\t\t})\n\t\t\tthis.selectedSection = item\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.linkClicked = false\n\t\t\t}, 1000)\n\t\t},\n\n\t\thandleCloseModal(isOpen) {\n\t\t\tif (isOpen) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$emit('update:open', false)\n\t\t\t// Remove scroll listener each time the modal is closed\n\t\t\tthis.scroller.removeEventListener('scroll', this.handleScroll)\n\t\t\tthis.addedScrollListener = false\n\t\t\tthis.scroller.scrollTop = 0\n\t\t},\n\n\t\thandleScroll() {\n\t\t\tif (!this.linkClicked) {\n\t\t\t\tthis.unfocusNavigationItem()\n\t\t\t}\n\t\t},\n\n\t\t// Remove selected section once the user starts scrolling\n\t\tunfocusNavigationItem: debounce(function() {\n\t\t\tthis.selectedSection = ''\n\t\t\tif (document.activeElement.className.includes('navigation-list__link')) {\n\t\t\t\tdocument.activeElement.blur()\n\t\t\t}\n\t\t}, 300),\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n.app-settings {\n\t:deep &__navigation {\n\t\tmin-width: 200px;\n\t\tmargin-right: calc(4 * var(--default-grid-baseline));\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\t\tposition: relative;\n\t}\n\t:deep &__content {\n\t\tbox-sizing: border-box;\n\t\tpadding-inline: calc(4 * var(--default-grid-baseline));\n\t}\n}\n\n.navigation-list {\n\theight: 100%;\n\tbox-sizing: border-box;\n\toverflow-y: auto;\n\tpadding: calc(3 * var(--default-grid-baseline));\n\n\t&__link {\n\t\tdisplay: flex;\n\t\talign-content: center;\n\t\tfont-size: 16px;\n\t\theight: var(--default-clickable-area);\n\t\tmargin: 4px 0;\n\t\tline-height: var(--default-clickable-area);\n\t\tborder-radius: var(--border-radius-element, var(--border-radius-pill));\n\t\tfont-weight: bold;\n\t\tpadding: 0 calc(4 * var(--default-grid-baseline));\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tbackground-color: transparent;\n\t\tborder: none;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\n\t\t&--active {\n\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t}\n\n\t\t&--icon {\n\t\t\tpadding-inline-start: calc(2 * var(--default-grid-baseline));\n\t\t\tgap: var(--default-grid-baseline);\n\t\t}\n\n\t\t&-icon {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\talign-content: center;\n\t\t\twidth: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t\tmax-width: calc(var(--default-clickable-area) - 2 * var(--default-grid-baseline));\n\t\t}\n\t}\n}\n\n@media only screen and (max-width: $breakpoint-small-mobile) {\n\t.app-settings {\n\t\t:deep .dialog__name {\n\t\t\tpadding-inline-start: 16px;\n\t\t}\n\t}\n}\n</style>\n"],"names":["NcDialog","NcVNodes","useIsMobile","t","Vue","id","debounce"],"mappings":"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"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import '../assets/NcAppSidebar-
|
|
1
|
+
import '../assets/NcAppSidebar-Dun97zcC.css';
|
|
2
2
|
import { Portal } from "@linusborg/vue-simple-portal";
|
|
3
3
|
import NcVNodes from "../Components/NcVNodes.mjs";
|
|
4
|
-
import { N as NcCheckboxRadioSwitch } from "./NcCheckboxRadioSwitch-
|
|
4
|
+
import { N as NcCheckboxRadioSwitch } from "./NcCheckboxRadioSwitch-BaMf0PDd.mjs";
|
|
5
5
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
6
|
-
import { N as NcActions } from "./NcActions-
|
|
7
|
-
import NcLoadingIcon from "../Components/NcLoadingIcon.mjs";
|
|
6
|
+
import { N as NcActions } from "./NcActions-C_H0APKA.mjs";
|
|
8
7
|
import NcButton from "../Components/NcButton.mjs";
|
|
9
8
|
import NcEmptyContent from "../Components/NcEmptyContent.mjs";
|
|
10
|
-
import
|
|
11
|
-
import { directive as directive$1 } from "../Directives/
|
|
9
|
+
import NcLoadingIcon from "../Components/NcLoadingIcon.mjs";
|
|
10
|
+
import { directive as directive$1 } from "../Directives/Focus.mjs";
|
|
11
|
+
import { directive } from "../Directives/Linkify.mjs";
|
|
12
12
|
import { useIsSmallMobile } from "../Composables/useIsMobile.mjs";
|
|
13
13
|
import { G as GenRandomId } from "./GenRandomId-CMooMQt0.mjs";
|
|
14
|
-
import { g as getTrapStack } from "./focusTrap-
|
|
15
|
-
import { r as register, O as t13, a as t } from "./_l10n-
|
|
14
|
+
import { g as getTrapStack } from "./focusTrap-DmkaYJTC.mjs";
|
|
15
|
+
import { r as register, O as t13, a as t } from "./_l10n-DKne-gFg.mjs";
|
|
16
16
|
import { A as ArrowRight } from "./ArrowRight-CY2b9hgN.mjs";
|
|
17
17
|
import { C as Close } from "./Close-BtLPUSdO.mjs";
|
|
18
18
|
import { vOnClickOutside } from "@vueuse/components";
|
|
@@ -361,8 +361,8 @@ const _sfc_main = {
|
|
|
361
361
|
StarOutline
|
|
362
362
|
},
|
|
363
363
|
directives: {
|
|
364
|
-
focus: directive,
|
|
365
|
-
linkify: directive
|
|
364
|
+
focus: directive$1,
|
|
365
|
+
linkify: directive,
|
|
366
366
|
ClickOutside: vOnClickOutside
|
|
367
367
|
},
|
|
368
368
|
inject: {
|
|
@@ -599,7 +599,7 @@ const _sfc_main = {
|
|
|
599
599
|
document.querySelector("#header")
|
|
600
600
|
], {
|
|
601
601
|
allowOutsideClick: true,
|
|
602
|
-
fallbackFocus: this.$refs.closeButton,
|
|
602
|
+
fallbackFocus: this.$refs.closeButton.$el,
|
|
603
603
|
trapStack: getTrapStack(),
|
|
604
604
|
escapeDeactivates: false
|
|
605
605
|
});
|
|
@@ -735,7 +735,7 @@ var _sfc_render = function render5() {
|
|
|
735
735
|
return _c("transition", { attrs: { "appear": "", "name": "slide-right" }, on: { "before-enter": _vm.onBeforeEnter, "after-enter": _vm.onAfterEnter, "before-leave": _vm.onBeforeLeave, "after-leave": _vm.onAfterLeave } }, [_c("aside", { directives: [{ name: "show", rawName: "v-show", value: _vm.open, expression: "open" }], ref: "sidebar", staticClass: "app-sidebar", attrs: { "id": "app-sidebar-vue", "aria-labelledby": `app-sidebar-vue-${_vm.uid}__header` }, on: { "keydown": function($event) {
|
|
736
736
|
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "esc", 27, $event.key, ["Esc", "Escape"])) return null;
|
|
737
737
|
return _vm.onKeydownEsc.apply(null, arguments);
|
|
738
|
-
} } }, [_vm.ncContentSelector && !_vm.open && !_vm.noToggle ? _c("Teleport", { attrs: { "selector": _vm.ncContentSelector } }, [_c("NcButton", _vm._b({ staticClass: "app-sidebar__toggle", class: _vm.toggleClasses, attrs: { "aria-label": _vm.t("Open sidebar"), "
|
|
738
|
+
} } }, [_vm.ncContentSelector && !_vm.open && !_vm.noToggle ? _c("Teleport", { attrs: { "selector": _vm.ncContentSelector } }, [_c("NcButton", _vm._b({ staticClass: "app-sidebar__toggle", class: _vm.toggleClasses, attrs: { "aria-label": _vm.t("Open sidebar"), "variant": "tertiary" }, on: { "click": function($event) {
|
|
739
739
|
return _vm.$emit("update:open", true);
|
|
740
740
|
} }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
741
741
|
return [_vm._t("toggle-icon", function() {
|
|
@@ -757,7 +757,7 @@ var _sfc_render = function render5() {
|
|
|
757
757
|
"app-sidebar-header__desc--with-subname--editable": _vm.nameEditable && _vm.subname,
|
|
758
758
|
"app-sidebar-header__desc--without-actions": !_vm.$slots["secondary-actions"]
|
|
759
759
|
} }, [_vm.canStar || _vm.$slots["tertiary-actions"] ? _c("div", { staticClass: "app-sidebar-header__tertiary-actions" }, [_vm._t("tertiary-actions", function() {
|
|
760
|
-
return [_vm.canStar ? _c("NcButton", { staticClass: "app-sidebar-header__star", attrs: { "aria-label": _vm.favoriteTranslated, "pressed": _vm.isStarred, "
|
|
760
|
+
return [_vm.canStar ? _c("NcButton", { staticClass: "app-sidebar-header__star", attrs: { "aria-label": _vm.favoriteTranslated, "pressed": _vm.isStarred, "variant": "secondary" }, on: { "click": function($event) {
|
|
761
761
|
$event.preventDefault();
|
|
762
762
|
return _vm.toggleStarred.apply(null, arguments);
|
|
763
763
|
} }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
@@ -773,11 +773,11 @@ var _sfc_render = function render5() {
|
|
|
773
773
|
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "esc", 27, $event.key, ["Esc", "Escape"])) return null;
|
|
774
774
|
$event.stopPropagation();
|
|
775
775
|
return _vm.onDismissEditing.apply(null, arguments);
|
|
776
|
-
}, "input": _vm.onNameInput } }), _c("NcButton", { attrs: { "
|
|
776
|
+
}, "input": _vm.onNameInput } }), _c("NcButton", { attrs: { "aria-label": _vm.changeNameTranslated, "type": "submit", "variant": "tertiary-no-background" }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
777
777
|
return [_c("ArrowRight", { attrs: { "size": 20 } })];
|
|
778
778
|
}, proxy: true }], null, false, 1252225425) })], 1)] : _vm._e(), _vm.$slots["secondary-actions"] ? _c("NcActions", { staticClass: "app-sidebar-header__menu", attrs: { "force-menu": _vm.forceMenu } }, [_vm._t("secondary-actions")], 2) : _vm._e()], 2), _vm.subname.trim() !== "" || _vm.$slots["subname"] ? _c("p", { staticClass: "app-sidebar-header__subname", attrs: { "title": _vm.subtitle || void 0 } }, [_vm._t("subname", function() {
|
|
779
779
|
return [_vm._v(" " + _vm._s(_vm.subname) + " ")];
|
|
780
|
-
})], 2) : _vm._e()])]) : _vm._e()]), _c("NcButton", { ref: "closeButton", staticClass: "app-sidebar__close", attrs: { "
|
|
780
|
+
})], 2) : _vm._e()])]) : _vm._e()]), _c("NcButton", { ref: "closeButton", staticClass: "app-sidebar__close", attrs: { "aria-label": _vm.closeTranslated, "title": _vm.closeTranslated, "variant": "tertiary" }, on: { "click": function($event) {
|
|
781
781
|
$event.preventDefault();
|
|
782
782
|
return _vm.closeSidebar.apply(null, arguments);
|
|
783
783
|
} }, scopedSlots: _vm._u([{ key: "icon", fn: function() {
|
|
@@ -793,9 +793,10 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
793
793
|
_sfc_staticRenderFns,
|
|
794
794
|
false,
|
|
795
795
|
null,
|
|
796
|
-
"
|
|
796
|
+
"478c9d0b"
|
|
797
797
|
);
|
|
798
798
|
const NcAppSidebar = __component__.exports;
|
|
799
799
|
export {
|
|
800
800
|
NcAppSidebar as N
|
|
801
801
|
};
|
|
802
|
+
//# sourceMappingURL=NcAppSidebar-19hVcGhv.mjs.map
|