@nextcloud/vue 9.0.0-alpha.5 → 9.0.0-alpha.7
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 +421 -12
- package/README.md +59 -71
- package/dist/assets/NcActionButton-CVjVxm7I.css +108 -0
- package/dist/assets/NcActionCaption-BNDtcWJ7.css +32 -0
- package/dist/assets/NcActionCheckbox-CnTyr-NN.css +80 -0
- package/dist/assets/NcActionInput-D19t1QsM.css +226 -0
- package/dist/assets/NcActionLink-DA3ebr8W.css +94 -0
- package/dist/assets/NcActionRadio-C7Kqlz6k.css +79 -0
- package/dist/assets/NcActionRouter-BtJqkgqu.css +105 -0
- package/dist/assets/NcActionText-FHEPUweO.css +109 -0
- package/dist/assets/NcActionTextEditable-DzNRmwkV.css +244 -0
- package/dist/assets/NcActions-BepWTc-7.css +80 -0
- package/dist/assets/NcAppContent-BZ3rplmb.css +124 -0
- package/dist/assets/NcAppNavigation-_K9H-MtG.css +108 -0
- package/dist/assets/NcAppNavigationCaption-B6mZd0E3.css +49 -0
- package/dist/assets/NcAppNavigationIconBullet-CeBYVy6t.css +30 -0
- package/dist/assets/NcAppNavigationItem-PKTHyQue.css +215 -0
- package/dist/assets/NcAppNavigationList-CLLHyHIn.css +28 -0
- package/dist/assets/NcAppNavigationNewItem-rCrG0Uuo.css +198 -0
- package/dist/assets/NcAppNavigationSearch-Bsr4esEc.css +41 -0
- package/dist/assets/NcAppNavigationSettings-BDc6Mtek.css +29 -0
- package/dist/assets/NcAppNavigationToggle-By3_rHPL.css +27 -0
- package/dist/assets/NcAppSettingsDialog-c8Xj_A-1.css +72 -0
- package/dist/assets/NcAppSettingsSection-DnDcGk1v.css +30 -0
- package/dist/assets/NcAppSidebar-g99AGRiQ.css +364 -0
- package/dist/assets/NcAvatar-Bg20-FW4.css +132 -0
- package/dist/assets/NcBlurHash-7aGtE-_T.css +8 -0
- package/dist/assets/NcBreadcrumb-r0TATv9A.css +68 -0
- package/dist/assets/NcBreadcrumbs-Bbd8rdwH.css +37 -0
- package/dist/assets/NcButton-C50FLvfa.css +210 -0
- package/dist/assets/NcCheckboxRadioSwitch-jfJIoM4m.css +199 -0
- package/dist/assets/NcChip-BWWUudAH.css +65 -0
- package/dist/assets/NcCollectionList-COXbQt16.css +221 -0
- package/dist/assets/NcColorPicker-3h8DrL_S.css +171 -0
- package/dist/assets/NcContent-BgziefsK.css +79 -0
- package/dist/assets/NcCounterBubble-DWgyYB0d.css +53 -0
- package/dist/assets/NcDashboardWidget-Cdxxd7ei.css +73 -0
- package/dist/assets/NcDashboardWidgetItem-B8_6-_k8.css +85 -0
- package/dist/assets/NcDateTimePicker-CRb2xZzf.css +918 -0
- package/dist/assets/NcDateTimePickerNative-pbWtBuzt.css +60 -0
- package/dist/assets/NcDialog-DL7A_udP.css +131 -0
- package/dist/assets/NcEllipsisedOption-DGr9_bIL.css +34 -0
- package/dist/assets/NcEmojiPicker-Bfk2pnZE.css +576 -0
- package/dist/assets/NcHeaderButton-cVjCMSVn.css +50 -0
- package/dist/assets/NcHeaderMenu-QJK2rMK3.css +84 -0
- package/dist/assets/NcInputField-CRvNH5sg.css +169 -0
- package/dist/assets/NcListItem-BEfZK5UK.css +186 -0
- package/dist/assets/NcListItemIcon-E21VFJqd.css +72 -0
- package/dist/assets/NcMentionBubble-BL05HUeF.css +72 -0
- package/dist/assets/NcNoteCard-C6xb7vi0.css +55 -0
- package/dist/assets/NcPasswordField-Bl9fhgy-.css +21 -0
- package/dist/assets/NcPopover-ChETNAVH.css +110 -0
- package/dist/assets/NcRelatedResourcesPanel-Chjd8iT7.css +158 -0
- package/dist/assets/NcRichContenteditable-BwHgQWPX.css +271 -0
- package/dist/assets/NcRichText-fo4QE8--.css +326 -0
- package/dist/assets/NcSelect-GdIw6cIy.css +199 -0
- package/dist/assets/NcSettingsSection-Dyrgo_fF.css +53 -0
- package/dist/assets/NcTextArea-BfSGN55r.css +112 -0
- package/dist/assets/NcUserBubble-tSs2XTDQ.css +48 -0
- package/dist/assets/index-BRaTLqzR.css +284 -0
- package/dist/assets/referencePickerModal-Cy43S4js.css +413 -0
- package/dist/chunks/AlertCircleOutline-DVzpKQVu.mjs +48 -0
- package/dist/chunks/AlertCircleOutline-DVzpKQVu.mjs.map +1 -0
- package/dist/chunks/ArrowLeft-CanHG70H.mjs +48 -0
- package/dist/chunks/ArrowLeft-CanHG70H.mjs.map +1 -0
- package/dist/chunks/ArrowRight-DQT24Cb-.mjs +48 -0
- package/dist/chunks/ArrowRight-DQT24Cb-.mjs.map +1 -0
- package/dist/chunks/Check-5i4xKnkl.mjs +48 -0
- package/dist/chunks/Check-5i4xKnkl.mjs.map +1 -0
- package/dist/chunks/ChevronDown-FiGpp0KT.mjs +48 -0
- package/dist/chunks/ChevronDown-FiGpp0KT.mjs.map +1 -0
- package/dist/chunks/ChevronLeft-FfC-tiIS.mjs +48 -0
- package/dist/chunks/ChevronLeft-FfC-tiIS.mjs.map +1 -0
- package/dist/chunks/ChevronRight-LvtA5_hq.mjs +48 -0
- package/dist/chunks/ChevronRight-LvtA5_hq.mjs.map +1 -0
- package/dist/chunks/ChevronUp-DPXFp1ss.mjs +48 -0
- package/dist/chunks/ChevronUp-DPXFp1ss.mjs.map +1 -0
- package/dist/chunks/Close-idsVwGrC.mjs +48 -0
- package/dist/chunks/Close-idsVwGrC.mjs.map +1 -0
- package/dist/chunks/DotsHorizontal-AMVAlTNH.mjs +48 -0
- package/dist/chunks/DotsHorizontal-AMVAlTNH.mjs.map +1 -0
- package/dist/chunks/GenColors-G1ZRJcz5.mjs +133 -0
- package/dist/chunks/GenColors-G1ZRJcz5.mjs.map +1 -0
- package/dist/chunks/GenRandomId-CMooMQt0.mjs.map +1 -1
- package/dist/chunks/NcActionButton-DBFJTCO5.mjs +234 -0
- package/dist/chunks/NcActionButton-DBFJTCO5.mjs.map +1 -0
- package/dist/chunks/NcActionButtonGroup-nwHeJeV7.mjs +58 -0
- package/dist/chunks/NcActionButtonGroup-nwHeJeV7.mjs.map +1 -0
- package/dist/chunks/NcActionCaption-DmOKI_Kc.mjs +32 -0
- package/dist/chunks/NcActionCaption-DmOKI_Kc.mjs.map +1 -0
- package/dist/chunks/NcActionCheckbox-yPCmA5vr.mjs +125 -0
- package/dist/chunks/NcActionCheckbox-yPCmA5vr.mjs.map +1 -0
- package/dist/chunks/NcActionInput-DTzVHmHn.mjs +358 -0
- package/dist/chunks/NcActionInput-DTzVHmHn.mjs.map +1 -0
- package/dist/chunks/NcActionLink-CG3cKif-.mjs +120 -0
- package/dist/chunks/NcActionLink-CG3cKif-.mjs.map +1 -0
- package/dist/chunks/NcActionRadio-BWPi0DII.mjs +134 -0
- package/dist/chunks/NcActionRadio-BWPi0DII.mjs.map +1 -0
- package/dist/chunks/NcActionRouter-C7VSuJLq.mjs +81 -0
- package/dist/chunks/NcActionRouter-C7VSuJLq.mjs.map +1 -0
- package/dist/chunks/NcActionSeparator-Doekl1NX.mjs +17 -0
- package/dist/chunks/NcActionSeparator-Doekl1NX.mjs.map +1 -0
- package/dist/chunks/NcActionText-ByD1mFXe.mjs +63 -0
- package/dist/chunks/NcActionText-ByD1mFXe.mjs.map +1 -0
- package/dist/chunks/NcActionTextEditable-DLKA6lfe.mjs +145 -0
- package/dist/chunks/NcActionTextEditable-DLKA6lfe.mjs.map +1 -0
- package/dist/chunks/NcActions-DxTtucKk.mjs +725 -0
- package/dist/chunks/NcActions-DxTtucKk.mjs.map +1 -0
- package/dist/chunks/NcAppContent-Cu9zhNK3.mjs +364 -0
- package/dist/chunks/NcAppContent-Cu9zhNK3.mjs.map +1 -0
- package/dist/chunks/NcAppContentDetails-DsEEBJ0U.mjs +15 -0
- package/dist/chunks/NcAppContentDetails-DsEEBJ0U.mjs.map +1 -0
- package/dist/chunks/NcAppContentList-DnLY_sWw.mjs +26 -0
- package/dist/chunks/NcAppContentList-DnLY_sWw.mjs.map +1 -0
- package/dist/chunks/NcAppNavigation-BxUvXgeG.mjs +166 -0
- package/dist/chunks/NcAppNavigation-BxUvXgeG.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationCaption-S_2Jmwqr.mjs +97 -0
- package/dist/chunks/NcAppNavigationCaption-S_2Jmwqr.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationIconBullet-B1kc4u65.mjs +43 -0
- package/dist/chunks/NcAppNavigationIconBullet-B1kc4u65.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationItem-C7bIZuo2.mjs +623 -0
- package/dist/chunks/NcAppNavigationItem-C7bIZuo2.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationList-DX_Yo23V.mjs +16 -0
- package/dist/chunks/NcAppNavigationList-DX_Yo23V.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationNew-BO-Llutk.mjs +57 -0
- package/dist/chunks/NcAppNavigationNew-BO-Llutk.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationNewItem-D7CYmmOm.mjs +120 -0
- package/dist/chunks/NcAppNavigationNewItem-D7CYmmOm.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationSearch-DLbzvkkq.mjs +104 -0
- package/dist/chunks/NcAppNavigationSearch-DLbzvkkq.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationSettings-vM8ajNNK.mjs +131 -0
- package/dist/chunks/NcAppNavigationSettings-vM8ajNNK.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationSpacer-CzBLuQL8.mjs +14 -0
- package/dist/chunks/NcAppNavigationSpacer-CzBLuQL8.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationToggle-DBtf139E.mjs +158 -0
- package/dist/chunks/NcAppNavigationToggle-DBtf139E.mjs.map +1 -0
- package/dist/chunks/NcAppSettingsDialog-CdFUuydh.mjs +254 -0
- package/dist/chunks/NcAppSettingsDialog-CdFUuydh.mjs.map +1 -0
- package/dist/chunks/NcAppSettingsSection-CssmXyZ0.mjs +63 -0
- package/dist/chunks/NcAppSettingsSection-CssmXyZ0.mjs.map +1 -0
- package/dist/chunks/NcAppSidebar-Dav-iGv2.mjs +978 -0
- package/dist/chunks/NcAppSidebar-Dav-iGv2.mjs.map +1 -0
- package/dist/chunks/NcAppSidebarTab-DG51ajic.mjs +92 -0
- package/dist/chunks/NcAppSidebarTab-DG51ajic.mjs.map +1 -0
- package/dist/chunks/NcAvatar-A1YnlIoN.mjs +654 -0
- package/dist/chunks/NcAvatar-A1YnlIoN.mjs.map +1 -0
- package/dist/chunks/NcBlurHash-BiFktE2N.mjs +98 -0
- package/dist/chunks/NcBlurHash-BiFktE2N.mjs.map +1 -0
- package/dist/chunks/NcBreadcrumb-D5cRcQg5.mjs +243 -0
- package/dist/chunks/NcBreadcrumb-D5cRcQg5.mjs.map +1 -0
- package/dist/chunks/NcBreadcrumbs-CnWT9rE5.mjs +458 -0
- package/dist/chunks/NcBreadcrumbs-CnWT9rE5.mjs.map +1 -0
- package/dist/chunks/NcButton-QmfEsvXC.mjs +298 -0
- package/dist/chunks/NcButton-QmfEsvXC.mjs.map +1 -0
- package/dist/chunks/NcCheckboxRadioSwitch-Ctdu7_UC.mjs +800 -0
- package/dist/chunks/NcCheckboxRadioSwitch-Ctdu7_UC.mjs.map +1 -0
- package/dist/chunks/NcChip-BnD-EmBn.mjs +134 -0
- package/dist/chunks/NcChip-BnD-EmBn.mjs.map +1 -0
- package/dist/chunks/NcCollectionList-9YfN6xAi.mjs +585 -0
- package/dist/chunks/NcCollectionList-9YfN6xAi.mjs.map +1 -0
- package/dist/chunks/NcColorPicker-DQqAv2wB.mjs +274 -0
- package/dist/chunks/NcColorPicker-DQqAv2wB.mjs.map +1 -0
- package/dist/chunks/NcContent-CsDFFKvH.mjs +130 -0
- package/dist/chunks/NcContent-CsDFFKvH.mjs.map +1 -0
- package/dist/chunks/NcCounterBubble-6B_JNUUS.mjs +77 -0
- package/dist/chunks/NcCounterBubble-6B_JNUUS.mjs.map +1 -0
- package/dist/chunks/NcDashboardWidget-ROT13m5A.mjs +184 -0
- package/dist/chunks/NcDashboardWidget-ROT13m5A.mjs.map +1 -0
- package/dist/chunks/NcDashboardWidgetItem-DoYOYxck.mjs +197 -0
- package/dist/chunks/NcDashboardWidgetItem-DoYOYxck.mjs.map +1 -0
- package/dist/chunks/NcDateTime-D3snW0sN.mjs +65 -0
- package/dist/chunks/NcDateTime-D3snW0sN.mjs.map +1 -0
- package/dist/chunks/NcDateTimePicker-DUPn2UCM.mjs +377 -0
- package/dist/chunks/NcDateTimePicker-DUPn2UCM.mjs.map +1 -0
- package/dist/chunks/NcDateTimePickerNative-Dbc6pBXk.mjs +202 -0
- package/dist/chunks/NcDateTimePickerNative-Dbc6pBXk.mjs.map +1 -0
- package/dist/chunks/NcDialog-B81mllwn.mjs +318 -0
- package/dist/chunks/NcDialog-B81mllwn.mjs.map +1 -0
- package/dist/chunks/NcDialogButton.vue_vue_type_script_setup_true_lang-DgWqkSL7.mjs +120 -0
- package/dist/chunks/NcDialogButton.vue_vue_type_script_setup_true_lang-DgWqkSL7.mjs.map +1 -0
- package/dist/chunks/NcEllipsisedOption-D4OggsNq.mjs +105 -0
- package/dist/chunks/NcEllipsisedOption-D4OggsNq.mjs.map +1 -0
- package/dist/chunks/NcEmojiPicker-DKGBXunS.mjs +396 -0
- package/dist/chunks/NcEmojiPicker-DKGBXunS.mjs.map +1 -0
- package/dist/chunks/NcEmptyContent-D-wBvEi4.mjs +67 -0
- package/dist/chunks/NcEmptyContent-D-wBvEi4.mjs.map +1 -0
- package/dist/chunks/NcGuestContent-iQpV7mLC.mjs +22 -0
- package/dist/chunks/NcGuestContent-iQpV7mLC.mjs.map +1 -0
- package/dist/chunks/NcHeaderButton-Cq62USyt.mjs +48 -0
- package/dist/chunks/NcHeaderButton-Cq62USyt.mjs.map +1 -0
- package/dist/chunks/NcHeaderMenu-BRiroRYT.mjs +142 -0
- package/dist/chunks/NcHeaderMenu-BRiroRYT.mjs.map +1 -0
- package/dist/chunks/NcHighlight-BHtRIzqk.mjs.map +1 -1
- package/dist/chunks/NcIconSvgWrapper-BYTrkA66.mjs +106 -0
- package/dist/chunks/NcIconSvgWrapper-BYTrkA66.mjs.map +1 -0
- package/dist/chunks/NcInputConfirmCancel-xnrPAGac.mjs +116 -0
- package/dist/chunks/NcInputConfirmCancel-xnrPAGac.mjs.map +1 -0
- package/dist/chunks/NcInputField-CzC820tG.mjs +305 -0
- package/dist/chunks/NcInputField-CzC820tG.mjs.map +1 -0
- package/dist/chunks/NcListItem-DFLsabmR.mjs +381 -0
- package/dist/chunks/NcListItem-DFLsabmR.mjs.map +1 -0
- package/dist/chunks/NcListItemIcon-BK9GBjoD.mjs +206 -0
- package/dist/chunks/NcListItemIcon-BK9GBjoD.mjs.map +1 -0
- package/dist/chunks/NcLoadingIcon-CsMn1bFR.mjs +78 -0
- package/dist/chunks/NcLoadingIcon-CsMn1bFR.mjs.map +1 -0
- package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_6c8d0da9_lang-DYJMHclV.mjs +12 -0
- package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_6c8d0da9_lang-DYJMHclV.mjs.map +1 -0
- package/dist/chunks/NcNoteCard-XoSOund1.mjs +275 -0
- package/dist/chunks/NcNoteCard-XoSOund1.mjs.map +1 -0
- package/dist/chunks/NcPasswordField-BLHAdm-k.mjs +297 -0
- package/dist/chunks/NcPasswordField-BLHAdm-k.mjs.map +1 -0
- package/dist/chunks/NcPopover-D4D97Y3j.mjs +258 -0
- package/dist/chunks/NcPopover-D4D97Y3j.mjs.map +1 -0
- package/dist/chunks/NcProgressBar-Bx8bMkd4.mjs +147 -0
- package/dist/chunks/NcProgressBar-Bx8bMkd4.mjs.map +1 -0
- package/dist/chunks/NcRelatedResourcesPanel-DsuNT9hM.mjs +551 -0
- package/dist/chunks/NcRelatedResourcesPanel-DsuNT9hM.mjs.map +1 -0
- package/dist/chunks/NcRichContenteditable-BkSojqgy.mjs +740 -0
- package/dist/chunks/NcRichContenteditable-BkSojqgy.mjs.map +1 -0
- package/dist/chunks/NcRichText-Cn583bql.mjs +414 -0
- package/dist/chunks/NcRichText-Cn583bql.mjs.map +1 -0
- package/dist/chunks/NcSavingIndicatorIcon-icWy8J5x.mjs +79 -0
- package/dist/chunks/NcSavingIndicatorIcon-icWy8J5x.mjs.map +1 -0
- package/dist/chunks/NcSelect-B61ik8an.mjs +577 -0
- package/dist/chunks/NcSelect-B61ik8an.mjs.map +1 -0
- package/dist/chunks/NcSelectTags-Dx3nG6jx.mjs +302 -0
- package/dist/chunks/NcSelectTags-Dx3nG6jx.mjs.map +1 -0
- package/dist/chunks/NcSettingsInputText-B5FrLCL9.mjs +122 -0
- package/dist/chunks/NcSettingsInputText-B5FrLCL9.mjs.map +1 -0
- package/dist/chunks/NcSettingsSection-CAdn6gS9.mjs +115 -0
- package/dist/chunks/NcSettingsSection-CAdn6gS9.mjs.map +1 -0
- package/dist/chunks/NcSettingsSelectGroup-CKIbxms2.mjs +226 -0
- package/dist/chunks/NcSettingsSelectGroup-CKIbxms2.mjs.map +1 -0
- package/dist/chunks/NcTextArea-C-PMlEbl.mjs +216 -0
- package/dist/chunks/NcTextArea-C-PMlEbl.mjs.map +1 -0
- package/dist/chunks/NcTextField-CNV42Zey.mjs +173 -0
- package/dist/chunks/NcTextField-CNV42Zey.mjs.map +1 -0
- package/dist/chunks/NcTimezonePicker-tZmX1Qp4.mjs +187 -0
- package/dist/chunks/NcTimezonePicker-tZmX1Qp4.mjs.map +1 -0
- package/dist/chunks/NcUserBubble-MfDc1YR2.mjs +227 -0
- package/dist/chunks/NcUserBubble-MfDc1YR2.mjs.map +1 -0
- package/dist/chunks/NcUserStatusIcon-vtnkNASH.mjs +136 -0
- package/dist/chunks/NcUserStatusIcon-vtnkNASH.mjs.map +1 -0
- package/dist/chunks/ScopeComponent-DgRMJomt.mjs +14 -0
- package/dist/chunks/ScopeComponent-DgRMJomt.mjs.map +1 -0
- package/dist/chunks/_l10n-BEP_UzXI.mjs +133 -0
- package/dist/chunks/_l10n-BEP_UzXI.mjs.map +1 -0
- package/dist/chunks/actionGlobal-BZFdtdJL.mjs.map +1 -1
- package/dist/chunks/actionText-aI0owku1.mjs.map +1 -1
- package/dist/chunks/autolink-CKPk5rzg.mjs.map +1 -1
- package/dist/chunks/emoji-BY_D0V5K.mjs +64 -0
- package/dist/chunks/emoji-BY_D0V5K.mjs.map +1 -0
- package/dist/chunks/focusTrap-DmkaYJTC.mjs +31 -0
- package/dist/chunks/focusTrap-DmkaYJTC.mjs.map +1 -0
- package/dist/chunks/index-BF8joS9W.mjs +116 -0
- package/dist/chunks/index-BF8joS9W.mjs.map +1 -0
- package/dist/chunks/index-wLgC9ACl.mjs +183 -0
- package/dist/chunks/index-wLgC9ACl.mjs.map +1 -0
- package/dist/chunks/logger-D3RVzcfQ.mjs +5 -0
- package/dist/chunks/logger-D3RVzcfQ.mjs.map +1 -0
- package/dist/chunks/referencePickerModal-CzI44bxD.mjs +1362 -0
- package/dist/chunks/referencePickerModal-CzI44bxD.mjs.map +1 -0
- package/dist/chunks/rtl-v0UOPAM7.mjs +5 -0
- package/dist/chunks/rtl-v0UOPAM7.mjs.map +1 -0
- package/dist/chunks/useFormatDateTime-Cvc8YJRE.mjs +86 -0
- package/dist/chunks/useFormatDateTime-Cvc8YJRE.mjs.map +1 -0
- package/dist/chunks/useTrapStackControl-b3A_383w.mjs +22 -0
- package/dist/chunks/useTrapStackControl-b3A_383w.mjs.map +1 -0
- package/dist/chunks/usernameToColor-B_Q_sS3j.mjs +26 -0
- package/dist/chunks/usernameToColor-B_Q_sS3j.mjs.map +1 -0
- package/dist/components/NcActionButton/NcActionButton.vue.d.ts +16 -10
- package/dist/components/NcActionButton/index.mjs +4 -0
- package/dist/components/NcActionButton/index.mjs.map +1 -0
- package/dist/components/NcActionButtonGroup/NcActionButtonGroup.vue.d.ts +5 -5
- package/dist/components/NcActionButtonGroup/index.mjs +4 -0
- package/dist/components/NcActionButtonGroup/index.mjs.map +1 -0
- package/dist/components/NcActionCaption/NcActionCaption.vue.d.ts +3 -3
- package/dist/components/NcActionCaption/index.mjs +4 -0
- package/dist/components/NcActionCaption/index.mjs.map +1 -0
- package/dist/components/NcActionCheckbox/NcActionCheckbox.vue.d.ts +7 -7
- package/dist/components/NcActionCheckbox/index.mjs +4 -0
- package/dist/components/NcActionCheckbox/index.mjs.map +1 -0
- package/dist/components/NcActionInput/index.mjs +4 -0
- package/dist/components/NcActionInput/index.mjs.map +1 -0
- package/dist/components/NcActionLink/index.mjs +4 -0
- package/dist/components/NcActionLink/index.mjs.map +1 -0
- package/dist/components/NcActionRadio/NcActionRadio.vue.d.ts +16 -14
- package/dist/components/NcActionRadio/index.mjs +4 -0
- package/dist/components/NcActionRadio/index.mjs.map +1 -0
- package/dist/components/NcActionRouter/NcActionRouter.vue.d.ts +4 -4
- package/dist/components/NcActionRouter/index.mjs +4 -0
- package/dist/components/NcActionRouter/index.mjs.map +1 -0
- package/dist/components/NcActionSeparator/NcActionSeparator.vue.d.ts +1 -1
- package/dist/components/NcActionSeparator/index.mjs +4 -0
- package/dist/components/NcActionSeparator/index.mjs.map +1 -0
- package/dist/components/NcActionText/NcActionText.vue.d.ts +1 -1
- package/dist/components/NcActionText/index.mjs +4 -0
- package/dist/components/NcActionText/index.mjs.map +1 -0
- package/dist/components/NcActionTextEditable/NcActionTextEditable.vue.d.ts +11 -6
- package/dist/components/NcActionTextEditable/index.mjs +4 -0
- package/dist/components/NcActionTextEditable/index.mjs.map +1 -0
- package/dist/components/NcActions/NcActions.vue.d.ts +168 -32
- package/dist/components/NcActions/index.mjs +4 -0
- package/dist/components/NcActions/index.mjs.map +1 -0
- package/dist/components/NcAppContent/index.mjs +4 -0
- package/dist/components/NcAppContent/index.mjs.map +1 -0
- package/dist/components/NcAppContentDetails/NcAppContentDetails.vue.d.ts +1 -1
- package/dist/components/NcAppContentDetails/index.mjs +4 -0
- package/dist/components/NcAppContentDetails/index.mjs.map +1 -0
- package/dist/components/NcAppContentList/NcAppContentList.vue.d.ts +4 -4
- package/dist/components/NcAppContentList/index.mjs +4 -0
- package/dist/components/NcAppContentList/index.mjs.map +1 -0
- package/dist/components/NcAppNavigation/NcAppNavigation.vue.d.ts +165 -6
- package/dist/components/NcAppNavigation/index.mjs +4 -0
- package/dist/components/NcAppNavigation/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationCaption/NcAppNavigationCaption.vue.d.ts +370 -5
- package/dist/components/NcAppNavigationCaption/index.mjs +4 -0
- package/dist/components/NcAppNavigationCaption/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationIconBullet/NcAppNavigationIconBullet.vue.d.ts +5 -5
- package/dist/components/NcAppNavigationIconBullet/index.mjs +4 -0
- package/dist/components/NcAppNavigationIconBullet/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationItem/NcAppNavigationIconCollapsible.vue.d.ts +145 -5
- package/dist/components/NcAppNavigationItem/NcAppNavigationItem.vue.d.ts +904 -18
- package/dist/components/NcAppNavigationItem/NcInputConfirmCancel.vue.d.ts +147 -7
- package/dist/components/NcAppNavigationItem/index.mjs +4 -0
- package/dist/components/NcAppNavigationItem/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationList/NcAppNavigationList.vue.d.ts +1 -1
- package/dist/components/NcAppNavigationList/index.mjs +4 -0
- package/dist/components/NcAppNavigationList/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationNew/NcAppNavigationNew.vue.d.ts +144 -6
- package/dist/components/NcAppNavigationNew/index.mjs +4 -0
- package/dist/components/NcAppNavigationNew/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationNewItem/NcAppNavigationNewItem.vue.d.ts +228 -5
- package/dist/components/NcAppNavigationNewItem/index.mjs +4 -0
- package/dist/components/NcAppNavigationNewItem/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationSearch/NcAppNavigationSearch.vue.d.ts +388 -0
- package/dist/components/NcAppNavigationSearch/index.d.ts +5 -0
- package/dist/components/NcAppNavigationSearch/index.mjs +4 -0
- package/dist/components/NcAppNavigationSearch/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationSettings/NcAppNavigationSettings.vue.d.ts +45 -33
- package/dist/components/NcAppNavigationSettings/index.mjs +4 -0
- package/dist/components/NcAppNavigationSettings/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationSpacer/NcAppNavigationSpacer.vue.d.ts +1 -1
- package/dist/components/NcAppNavigationSpacer/index.mjs +4 -0
- package/dist/components/NcAppNavigationSpacer/index.mjs.map +1 -0
- package/dist/components/NcAppNavigationToggle/NcAppNavigationToggle.vue.d.ts +144 -4
- package/dist/components/NcAppNavigationToggle/index.mjs +5 -0
- package/dist/components/NcAppNavigationToggle/index.mjs.map +1 -0
- package/dist/components/NcAppSettingsDialog/index.mjs +4 -0
- package/dist/components/NcAppSettingsDialog/index.mjs.map +1 -0
- package/dist/components/NcAppSettingsSection/NcAppSettingsSection.vue.d.ts +3 -3
- package/dist/components/NcAppSettingsSection/index.mjs +4 -0
- package/dist/components/NcAppSettingsSection/index.mjs.map +1 -0
- package/dist/components/NcAppSidebar/NcAppSidebarTabs.vue.d.ts +26 -6
- package/dist/components/NcAppSidebar/index.mjs +4 -0
- package/dist/components/NcAppSidebar/index.mjs.map +1 -0
- package/dist/components/NcAppSidebarTab/NcAppSidebarTab.vue.d.ts +5 -5
- package/dist/components/NcAppSidebarTab/index.mjs +4 -0
- package/dist/components/NcAppSidebarTab/index.mjs.map +1 -0
- package/dist/components/NcAvatar/index.mjs +4 -0
- package/dist/components/NcAvatar/index.mjs.map +1 -0
- package/dist/components/NcBlurHash/NcBlurHash.vue.d.ts +31 -0
- package/dist/components/NcBlurHash/index.d.ts +5 -0
- package/dist/components/NcBlurHash/index.mjs +4 -0
- package/dist/components/NcBlurHash/index.mjs.map +1 -0
- package/dist/components/NcBreadcrumb/NcBreadcrumb.vue.d.ts +513 -14
- package/dist/components/NcBreadcrumb/index.mjs +4 -0
- package/dist/components/NcBreadcrumb/index.mjs.map +1 -0
- package/dist/components/NcBreadcrumbs/NcBreadcrumbs.vue.d.ts +1171 -5
- package/dist/components/NcBreadcrumbs/index.mjs +4 -0
- package/dist/components/NcBreadcrumbs/index.mjs.map +1 -0
- package/dist/components/NcButton/NcButton.vue.d.ts +23 -7
- package/dist/components/NcButton/index.mjs +7 -0
- package/dist/components/NcButton/index.mjs.map +1 -0
- package/dist/components/NcButton/types.d.ts +1 -1
- package/dist/components/NcCheckboxRadioSwitch/index.mjs +4 -0
- package/dist/components/NcCheckboxRadioSwitch/index.mjs.map +1 -0
- package/dist/components/NcChip/NcChip.vue.d.ts +31 -19
- package/dist/components/NcChip/index.mjs +4 -0
- package/dist/components/NcChip/index.mjs.map +1 -0
- package/dist/components/NcCollectionList/index.mjs +4 -0
- package/dist/components/NcCollectionList/index.mjs.map +1 -0
- package/dist/components/NcCollectionList/useCollections.d.ts +1 -1
- package/dist/components/NcColorPicker/index.mjs +4 -0
- package/dist/components/NcColorPicker/index.mjs.map +1 -0
- package/dist/components/NcContent/NcContent.vue.d.ts +208 -5
- package/dist/components/NcContent/index.mjs +4 -0
- package/dist/components/NcContent/index.mjs.map +1 -0
- package/dist/components/NcCounterBubble/NcCounterBubble.vue.d.ts +38 -5
- package/dist/components/NcCounterBubble/index.mjs +4 -0
- package/dist/components/NcCounterBubble/index.mjs.map +1 -0
- package/dist/components/NcDashboardWidget/index.mjs +4 -0
- package/dist/components/NcDashboardWidget/index.mjs.map +1 -0
- package/dist/components/NcDashboardWidgetItem/index.mjs +4 -0
- package/dist/components/NcDashboardWidgetItem/index.mjs.map +1 -0
- package/dist/components/NcDateTime/index.mjs +4 -0
- package/dist/components/NcDateTime/index.mjs.map +1 -0
- package/dist/components/NcDateTimePicker/index.mjs +4 -0
- package/dist/components/NcDateTimePicker/index.mjs.map +1 -0
- package/dist/components/NcDateTimePickerNative/index.mjs +4 -0
- package/dist/components/NcDateTimePickerNative/index.mjs.map +1 -0
- package/dist/components/NcDialog/NcDialog.vue.d.ts +199 -42
- package/dist/components/NcDialog/index.mjs +4 -0
- package/dist/components/NcDialog/index.mjs.map +1 -0
- package/dist/components/NcDialogButton/NcDialogButton.vue.d.ts +61 -17
- package/dist/components/NcDialogButton/index.mjs +4 -0
- package/dist/components/NcDialogButton/index.mjs.map +1 -0
- package/dist/components/NcEllipsisedOption/NcEllipsisedOption.vue.d.ts +43 -8
- package/dist/components/NcEllipsisedOption/index.mjs +4 -0
- package/dist/components/NcEllipsisedOption/index.mjs.map +1 -0
- package/dist/components/NcEmojiPicker/NcEmojiPicker.vue.d.ts +463 -7
- package/dist/components/NcEmojiPicker/index.mjs +4 -0
- package/dist/components/NcEmojiPicker/index.mjs.map +1 -0
- package/dist/components/NcEmptyContent/NcEmptyContent.vue.d.ts +4 -4
- package/dist/components/NcEmptyContent/index.mjs +4 -0
- package/dist/components/NcEmptyContent/index.mjs.map +1 -0
- package/dist/components/NcGuestContent/NcGuestContent.vue.d.ts +1 -1
- package/dist/components/NcGuestContent/index.mjs +4 -0
- package/dist/components/NcGuestContent/index.mjs.map +1 -0
- package/dist/components/NcHeaderButton/NcHeaderButton.vue.d.ts +38 -0
- package/dist/components/NcHeaderButton/index.d.ts +5 -0
- package/dist/components/NcHeaderButton/index.mjs +4 -0
- package/dist/components/NcHeaderButton/index.mjs.map +1 -0
- package/dist/components/NcHeaderMenu/NcHeaderMenu.vue.d.ts +217 -121
- package/dist/components/NcHeaderMenu/index.mjs +4 -0
- package/dist/components/NcHeaderMenu/index.mjs.map +1 -0
- package/dist/components/NcHighlight/NcHighlight.vue.d.ts +4 -4
- package/dist/components/NcHighlight/index.mjs +4 -0
- package/dist/components/NcHighlight/index.mjs.map +1 -0
- package/dist/components/NcIconSvgWrapper/NcIconSvgWrapper.vue.d.ts +8 -8
- package/dist/components/NcIconSvgWrapper/index.mjs +4 -0
- package/dist/components/NcIconSvgWrapper/index.mjs.map +1 -0
- package/dist/components/NcInputField/NcInputField.vue.d.ts +155 -15
- package/dist/components/NcInputField/index.mjs +4 -0
- package/dist/components/NcInputField/index.mjs.map +1 -0
- package/dist/components/NcListItem/NcListItem.vue.d.ts +461 -15
- package/dist/components/NcListItem/index.mjs +4 -0
- package/dist/components/NcListItem/index.mjs.map +1 -0
- package/dist/components/NcListItemIcon/index.mjs +4 -0
- package/dist/components/NcListItemIcon/index.mjs.map +1 -0
- package/dist/components/NcLoadingIcon/NcLoadingIcon.vue.d.ts +4 -4
- package/dist/components/NcLoadingIcon/index.mjs +4 -0
- package/dist/components/NcLoadingIcon/index.mjs.map +1 -0
- package/dist/components/NcModal/index.mjs +775 -0
- package/dist/components/NcModal/index.mjs.map +1 -0
- package/dist/components/NcNoteCard/NcNoteCard.vue.d.ts +40 -7
- package/dist/components/NcNoteCard/index.mjs +4 -0
- package/dist/components/NcNoteCard/index.mjs.map +1 -0
- package/dist/components/NcPasswordField/index.mjs +4 -0
- package/dist/components/NcPasswordField/index.mjs.map +1 -0
- package/dist/components/NcPopover/NcPopover.vue.d.ts +2 -0
- package/dist/components/NcPopover/NcPopoverTriggerProvider.vue.d.ts +12 -6
- package/dist/components/NcPopover/index.mjs +4 -0
- package/dist/components/NcPopover/index.mjs.map +1 -0
- package/dist/components/NcProgressBar/index.mjs +4 -0
- package/dist/components/NcProgressBar/index.mjs.map +1 -0
- package/dist/components/NcRelatedResourcesPanel/NcRelatedResourcesPanel.vue.d.ts +420 -9
- package/dist/components/NcRelatedResourcesPanel/NcResource.vue.d.ts +141 -3
- package/dist/components/NcRelatedResourcesPanel/NcTeamResources.vue.d.ts +208 -4
- package/dist/components/NcRelatedResourcesPanel/index.mjs +4 -0
- package/dist/components/NcRelatedResourcesPanel/index.mjs.map +1 -0
- package/dist/components/NcRichContenteditable/NcAutoCompleteResult.vue.d.ts +13 -11
- package/dist/components/NcRichContenteditable/NcMentionBubble.vue.d.ts +80 -1
- package/dist/components/NcRichContenteditable/index.mjs +7 -0
- package/dist/components/NcRichContenteditable/index.mjs.map +1 -0
- package/dist/components/NcRichText/NcReferenceList.vue.d.ts +220 -10
- package/dist/components/NcRichText/NcReferencePicker/NcCustomPickerElement.vue.d.ts +6 -6
- package/dist/components/NcRichText/NcReferencePicker/NcRawLinkInput.vue.d.ts +574 -4
- package/dist/components/NcRichText/NcReferencePicker/NcSearchResult.vue.d.ts +38 -3
- package/dist/components/NcRichText/NcReferencePicker/utils.d.ts +1 -1
- package/dist/components/NcRichText/NcReferenceWidget.vue.d.ts +145 -7
- package/dist/components/NcRichText/NcRichText.vue.d.ts +310 -53
- package/dist/components/NcRichText/autolink.d.ts +0 -1
- package/dist/components/NcRichText/index.mjs +26 -0
- package/dist/components/NcRichText/index.mjs.map +1 -0
- package/dist/components/NcRichText/remarkUnescape.d.ts +1 -0
- package/dist/components/NcSavingIndicatorIcon/NcSavingIndicatorIcon.vue.d.ts +6 -6
- package/dist/components/NcSavingIndicatorIcon/index.mjs +4 -0
- package/dist/components/NcSavingIndicatorIcon/index.mjs.map +1 -0
- package/dist/components/NcSelect/index.mjs +4 -0
- package/dist/components/NcSelect/index.mjs.map +1 -0
- package/dist/components/NcSelectTags/index.mjs +4 -0
- package/dist/components/NcSelectTags/index.mjs.map +1 -0
- package/dist/components/NcSettingsInputText/NcSettingsInputText.vue.d.ts +6 -6
- package/dist/components/NcSettingsInputText/index.mjs +4 -0
- package/dist/components/NcSettingsInputText/index.mjs.map +1 -0
- package/dist/components/NcSettingsSection/NcSettingsSection.vue.d.ts +6 -4
- package/dist/components/NcSettingsSection/index.mjs +4 -0
- package/dist/components/NcSettingsSection/index.mjs.map +1 -0
- package/dist/components/NcSettingsSelectGroup/index.mjs +5 -0
- package/dist/components/NcSettingsSelectGroup/index.mjs.map +1 -0
- package/dist/components/NcTextArea/NcTextArea.vue.d.ts +12 -9
- package/dist/components/NcTextArea/index.mjs +4 -0
- package/dist/components/NcTextArea/index.mjs.map +1 -0
- package/dist/components/NcTextField/NcTextField.vue.d.ts +295 -2
- package/dist/components/NcTextField/index.mjs +4 -0
- package/dist/components/NcTextField/index.mjs.map +1 -0
- package/dist/components/NcTimezonePicker/index.mjs +4 -0
- package/dist/components/NcTimezonePicker/index.mjs.map +1 -0
- package/dist/components/NcUserBubble/NcUserBubbleDiv.vue.d.ts +1 -1
- package/dist/components/NcUserBubble/index.mjs +4 -0
- package/dist/components/NcUserBubble/index.mjs.map +1 -0
- package/dist/components/NcUserStatusIcon/index.mjs +4 -0
- package/dist/components/NcUserStatusIcon/index.mjs.map +1 -0
- package/dist/components/NcVNodes/NcVNodes.vue.d.ts +7 -7
- package/dist/components/NcVNodes/index.mjs.map +1 -0
- package/dist/components/index.d.ts +3 -0
- package/dist/composables/index.d.ts +2 -0
- package/dist/composables/useFormatDateTime.d.ts +49 -21
- package/dist/composables/useHotKey/index.d.ts +35 -0
- package/dist/composables/useHotKey/index.mjs +71 -0
- package/dist/composables/useHotKey/index.mjs.map +1 -0
- package/dist/composables/useIsDarkTheme/index.d.ts +15 -0
- package/dist/composables/useIsDarkTheme/index.mjs +18 -0
- package/dist/composables/useIsDarkTheme/index.mjs.map +1 -0
- package/dist/composables/useIsFullscreen/index.mjs.map +1 -0
- package/dist/composables/useIsMobile/index.d.ts +1 -1
- package/dist/composables/useIsMobile/index.mjs.map +1 -0
- package/dist/composables/useTrapStackControl.d.ts +12 -0
- package/dist/directives/Focus/index.mjs.map +1 -0
- package/dist/directives/Linkify/index.mjs +20 -0
- package/dist/directives/Linkify/index.mjs.map +1 -0
- package/dist/directives/Tooltip/index.mjs +11 -0
- package/dist/directives/Tooltip/index.mjs.map +1 -0
- package/dist/functions/a11y/index.mjs.map +1 -0
- package/dist/functions/dialog/index.d.ts +17 -0
- package/dist/functions/dialog/index.mjs +23 -0
- package/dist/functions/dialog/index.mjs.map +1 -0
- package/dist/functions/emoji/emoji.d.ts +21 -8
- package/dist/functions/emoji/index.mjs +8 -0
- package/dist/functions/emoji/index.mjs.map +1 -0
- package/dist/functions/index.d.ts +7 -0
- package/dist/functions/isDarkTheme/index.d.ts +17 -0
- package/dist/functions/isDarkTheme/index.mjs +12 -0
- package/dist/functions/isDarkTheme/index.mjs.map +1 -0
- package/dist/functions/preloadImage/index.d.ts +9 -0
- package/dist/functions/preloadImage/index.mjs +16 -0
- package/dist/functions/preloadImage/index.mjs.map +1 -0
- package/dist/functions/reference/index.d.ts +0 -1
- package/dist/functions/reference/index.mjs +18 -0
- package/dist/functions/reference/index.mjs.map +1 -0
- package/dist/functions/reference/widgets.d.ts +1 -1
- package/dist/functions/registerReference/index.mjs +13 -0
- package/dist/functions/registerReference/index.mjs.map +1 -0
- package/dist/functions/usernameToColor/index.mjs +4 -0
- package/dist/functions/usernameToColor/index.mjs.map +1 -0
- package/dist/functions/usernameToColor/usernameToColor.d.ts +7 -2
- package/dist/index.d.ts +1 -2
- package/dist/index.mjs +192 -277
- package/dist/index.mjs.map +1 -1
- package/dist/mixins/index.d.ts +0 -1
- package/dist/mixins/richEditor/index.mjs +9 -0
- package/dist/mixins/richEditor/index.mjs.map +1 -0
- package/dist/utils/GenColors.d.ts +2 -2
- package/dist/utils/VueTypes.d.ts +0 -1
- package/dist/utils/focusTrap.d.ts +26 -1
- package/dist/utils/isSlotPopulated.d.ts +0 -1
- package/dist/utils/rtl.d.ts +5 -0
- package/dist/vendor.LICENSE.txt +1 -1
- package/package.json +89 -81
- package/dist/Components/NcActionButton.mjs +0 -4
- package/dist/Components/NcActionButton.mjs.map +0 -1
- package/dist/Components/NcActionButtonGroup.mjs +0 -4
- package/dist/Components/NcActionButtonGroup.mjs.map +0 -1
- package/dist/Components/NcActionCaption.mjs +0 -4
- package/dist/Components/NcActionCaption.mjs.map +0 -1
- package/dist/Components/NcActionCheckbox.mjs +0 -4
- package/dist/Components/NcActionCheckbox.mjs.map +0 -1
- package/dist/Components/NcActionInput.mjs +0 -4
- package/dist/Components/NcActionInput.mjs.map +0 -1
- package/dist/Components/NcActionLink.mjs +0 -4
- package/dist/Components/NcActionLink.mjs.map +0 -1
- package/dist/Components/NcActionRadio.mjs +0 -4
- package/dist/Components/NcActionRadio.mjs.map +0 -1
- package/dist/Components/NcActionRouter.mjs +0 -4
- package/dist/Components/NcActionRouter.mjs.map +0 -1
- package/dist/Components/NcActionSeparator.mjs +0 -4
- package/dist/Components/NcActionSeparator.mjs.map +0 -1
- package/dist/Components/NcActionText.mjs +0 -4
- package/dist/Components/NcActionText.mjs.map +0 -1
- package/dist/Components/NcActionTextEditable.mjs +0 -4
- package/dist/Components/NcActionTextEditable.mjs.map +0 -1
- package/dist/Components/NcActions.mjs +0 -4
- package/dist/Components/NcActions.mjs.map +0 -1
- package/dist/Components/NcAppContent.mjs +0 -4
- package/dist/Components/NcAppContent.mjs.map +0 -1
- package/dist/Components/NcAppContentDetails.mjs +0 -4
- package/dist/Components/NcAppContentDetails.mjs.map +0 -1
- package/dist/Components/NcAppContentList.mjs +0 -4
- package/dist/Components/NcAppContentList.mjs.map +0 -1
- package/dist/Components/NcAppNavigation.mjs +0 -4
- package/dist/Components/NcAppNavigation.mjs.map +0 -1
- package/dist/Components/NcAppNavigationCaption.mjs +0 -4
- package/dist/Components/NcAppNavigationCaption.mjs.map +0 -1
- package/dist/Components/NcAppNavigationIconBullet.mjs +0 -4
- package/dist/Components/NcAppNavigationIconBullet.mjs.map +0 -1
- package/dist/Components/NcAppNavigationItem.mjs +0 -4
- package/dist/Components/NcAppNavigationItem.mjs.map +0 -1
- package/dist/Components/NcAppNavigationList.mjs +0 -4
- package/dist/Components/NcAppNavigationList.mjs.map +0 -1
- package/dist/Components/NcAppNavigationNew.mjs +0 -4
- package/dist/Components/NcAppNavigationNew.mjs.map +0 -1
- package/dist/Components/NcAppNavigationNewItem.mjs +0 -4
- package/dist/Components/NcAppNavigationNewItem.mjs.map +0 -1
- package/dist/Components/NcAppNavigationSettings.mjs +0 -4
- package/dist/Components/NcAppNavigationSettings.mjs.map +0 -1
- package/dist/Components/NcAppNavigationSpacer.mjs +0 -4
- package/dist/Components/NcAppNavigationSpacer.mjs.map +0 -1
- package/dist/Components/NcAppNavigationToggle.mjs +0 -5
- package/dist/Components/NcAppNavigationToggle.mjs.map +0 -1
- package/dist/Components/NcAppSettingsDialog.mjs +0 -4
- package/dist/Components/NcAppSettingsDialog.mjs.map +0 -1
- package/dist/Components/NcAppSettingsSection.mjs +0 -4
- package/dist/Components/NcAppSettingsSection.mjs.map +0 -1
- package/dist/Components/NcAppSidebar.mjs +0 -4
- package/dist/Components/NcAppSidebar.mjs.map +0 -1
- package/dist/Components/NcAppSidebarTab.mjs +0 -4
- package/dist/Components/NcAppSidebarTab.mjs.map +0 -1
- package/dist/Components/NcAvatar.mjs +0 -4
- package/dist/Components/NcAvatar.mjs.map +0 -1
- package/dist/Components/NcBreadcrumb.mjs +0 -4
- package/dist/Components/NcBreadcrumb.mjs.map +0 -1
- package/dist/Components/NcBreadcrumbs.mjs +0 -4
- package/dist/Components/NcBreadcrumbs.mjs.map +0 -1
- package/dist/Components/NcButton.mjs +0 -7
- package/dist/Components/NcButton.mjs.map +0 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +0 -4
- package/dist/Components/NcCheckboxRadioSwitch.mjs.map +0 -1
- package/dist/Components/NcChip.mjs +0 -4
- package/dist/Components/NcChip.mjs.map +0 -1
- package/dist/Components/NcCollectionList.mjs +0 -4
- package/dist/Components/NcCollectionList.mjs.map +0 -1
- package/dist/Components/NcColorPicker.mjs +0 -4
- package/dist/Components/NcColorPicker.mjs.map +0 -1
- package/dist/Components/NcContent.mjs +0 -4
- package/dist/Components/NcContent.mjs.map +0 -1
- package/dist/Components/NcCounterBubble.mjs +0 -4
- package/dist/Components/NcCounterBubble.mjs.map +0 -1
- package/dist/Components/NcDashboardWidget.mjs +0 -4
- package/dist/Components/NcDashboardWidget.mjs.map +0 -1
- package/dist/Components/NcDashboardWidgetItem.mjs +0 -4
- package/dist/Components/NcDashboardWidgetItem.mjs.map +0 -1
- package/dist/Components/NcDateTime.mjs +0 -4
- package/dist/Components/NcDateTime.mjs.map +0 -1
- package/dist/Components/NcDateTimePicker.mjs +0 -4
- package/dist/Components/NcDateTimePicker.mjs.map +0 -1
- package/dist/Components/NcDateTimePickerNative.mjs +0 -4
- package/dist/Components/NcDateTimePickerNative.mjs.map +0 -1
- package/dist/Components/NcDialog.mjs +0 -4
- package/dist/Components/NcDialog.mjs.map +0 -1
- package/dist/Components/NcDialogButton.mjs +0 -4
- package/dist/Components/NcDialogButton.mjs.map +0 -1
- package/dist/Components/NcEllipsisedOption.mjs +0 -4
- package/dist/Components/NcEllipsisedOption.mjs.map +0 -1
- package/dist/Components/NcEmojiPicker.mjs +0 -4
- package/dist/Components/NcEmojiPicker.mjs.map +0 -1
- package/dist/Components/NcEmptyContent.mjs +0 -4
- package/dist/Components/NcEmptyContent.mjs.map +0 -1
- package/dist/Components/NcGuestContent.mjs +0 -4
- package/dist/Components/NcGuestContent.mjs.map +0 -1
- package/dist/Components/NcHeaderMenu.mjs +0 -4
- package/dist/Components/NcHeaderMenu.mjs.map +0 -1
- package/dist/Components/NcHighlight.mjs +0 -4
- package/dist/Components/NcHighlight.mjs.map +0 -1
- package/dist/Components/NcIconSvgWrapper.mjs +0 -4
- package/dist/Components/NcIconSvgWrapper.mjs.map +0 -1
- package/dist/Components/NcInputField.mjs +0 -4
- package/dist/Components/NcInputField.mjs.map +0 -1
- package/dist/Components/NcListItem.mjs +0 -4
- package/dist/Components/NcListItem.mjs.map +0 -1
- package/dist/Components/NcListItemIcon.mjs +0 -4
- package/dist/Components/NcListItemIcon.mjs.map +0 -1
- package/dist/Components/NcLoadingIcon.mjs +0 -4
- package/dist/Components/NcLoadingIcon.mjs.map +0 -1
- package/dist/Components/NcModal.mjs +0 -800
- package/dist/Components/NcModal.mjs.map +0 -1
- package/dist/Components/NcNoteCard.mjs +0 -4
- package/dist/Components/NcNoteCard.mjs.map +0 -1
- package/dist/Components/NcPasswordField.mjs +0 -4
- package/dist/Components/NcPasswordField.mjs.map +0 -1
- package/dist/Components/NcPopover.mjs +0 -4
- package/dist/Components/NcPopover.mjs.map +0 -1
- package/dist/Components/NcProgressBar.mjs +0 -4
- package/dist/Components/NcProgressBar.mjs.map +0 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +0 -4
- package/dist/Components/NcRelatedResourcesPanel.mjs.map +0 -1
- package/dist/Components/NcRichContenteditable.mjs +0 -7
- package/dist/Components/NcRichContenteditable.mjs.map +0 -1
- package/dist/Components/NcRichText.mjs +0 -26
- package/dist/Components/NcRichText.mjs.map +0 -1
- package/dist/Components/NcSavingIndicatorIcon.mjs +0 -4
- package/dist/Components/NcSavingIndicatorIcon.mjs.map +0 -1
- package/dist/Components/NcSelect.mjs +0 -4
- package/dist/Components/NcSelect.mjs.map +0 -1
- package/dist/Components/NcSelectTags.mjs +0 -4
- package/dist/Components/NcSelectTags.mjs.map +0 -1
- package/dist/Components/NcSettingsInputText.mjs +0 -4
- package/dist/Components/NcSettingsInputText.mjs.map +0 -1
- package/dist/Components/NcSettingsSection.mjs +0 -4
- package/dist/Components/NcSettingsSection.mjs.map +0 -1
- package/dist/Components/NcSettingsSelectGroup.mjs +0 -5
- package/dist/Components/NcSettingsSelectGroup.mjs.map +0 -1
- package/dist/Components/NcTextArea.mjs +0 -4
- package/dist/Components/NcTextArea.mjs.map +0 -1
- package/dist/Components/NcTextField.mjs +0 -4
- package/dist/Components/NcTextField.mjs.map +0 -1
- package/dist/Components/NcTimezonePicker.mjs +0 -4
- package/dist/Components/NcTimezonePicker.mjs.map +0 -1
- package/dist/Components/NcUserBubble.mjs +0 -4
- package/dist/Components/NcUserBubble.mjs.map +0 -1
- package/dist/Components/NcUserStatusIcon.mjs +0 -4
- package/dist/Components/NcUserStatusIcon.mjs.map +0 -1
- package/dist/Components/NcVNodes.mjs.map +0 -1
- package/dist/Composables/useIsFullscreen.mjs.map +0 -1
- package/dist/Composables/useIsMobile.mjs.map +0 -1
- package/dist/Directives/Focus.mjs.map +0 -1
- package/dist/Directives/Linkify.mjs +0 -10
- package/dist/Directives/Linkify.mjs.map +0 -1
- package/dist/Directives/Tooltip.mjs +0 -11
- package/dist/Directives/Tooltip.mjs.map +0 -1
- package/dist/Functions/a11y.mjs.map +0 -1
- package/dist/Functions/emoji.mjs +0 -8
- package/dist/Functions/emoji.mjs.map +0 -1
- package/dist/Functions/reference.mjs +0 -18
- package/dist/Functions/reference.mjs.map +0 -1
- package/dist/Functions/registerReference.mjs +0 -13
- package/dist/Functions/registerReference.mjs.map +0 -1
- package/dist/Functions/usernameToColor.mjs +0 -4
- package/dist/Functions/usernameToColor.mjs.map +0 -1
- package/dist/Mixins/clickOutsideOptions.mjs +0 -21
- package/dist/Mixins/clickOutsideOptions.mjs.map +0 -1
- package/dist/Mixins/richEditor.mjs +0 -10
- package/dist/Mixins/richEditor.mjs.map +0 -1
- package/dist/assets/NcActionButton-tvMk0Dz-.css +0 -107
- package/dist/assets/NcActionCaption-D-VXTPLI.css +0 -32
- package/dist/assets/NcActionCheckbox-DzmNTqwC.css +0 -78
- package/dist/assets/NcActionInput-4qR5N5lV.css +0 -222
- package/dist/assets/NcActionLink-Djp7wPGg.css +0 -92
- package/dist/assets/NcActionRadio-ZRQheAZT.css +0 -78
- package/dist/assets/NcActionRouter-B0l-dISs.css +0 -103
- package/dist/assets/NcActionText-Ip9hRt85.css +0 -107
- package/dist/assets/NcActionTextEditable-1JPkW_4o.css +0 -238
- package/dist/assets/NcActions-pRTZ3RyK.css +0 -83
- package/dist/assets/NcAppContent-CK9aL637.css +0 -125
- package/dist/assets/NcAppNavigation-BjnW8PQn.css +0 -103
- package/dist/assets/NcAppNavigationCaption-CWeMjjhD.css +0 -48
- package/dist/assets/NcAppNavigationIconBullet-EfIZU7x-.css +0 -30
- package/dist/assets/NcAppNavigationItem-wQ3n8jc-.css +0 -211
- package/dist/assets/NcAppNavigationList-BIbyyT7b.css +0 -29
- package/dist/assets/NcAppNavigationNewItem-CO3GnR26.css +0 -194
- package/dist/assets/NcAppNavigationSettings-TYqL_3Eu.css +0 -79
- package/dist/assets/NcAppNavigationToggle-CNPQvWtG.css +0 -27
- package/dist/assets/NcAppSettingsDialog-ksK-DMgk.css +0 -74
- package/dist/assets/NcAppSettingsSection-C_QldGnW.css +0 -30
- package/dist/assets/NcAppSidebar-B7CgUHLX.css +0 -361
- package/dist/assets/NcAvatar-BnHiRwVr.css +0 -129
- package/dist/assets/NcBreadcrumb-CJ7KeSKQ.css +0 -68
- package/dist/assets/NcBreadcrumbs-C05lySw_.css +0 -37
- package/dist/assets/NcButton-B62D9Gft.css +0 -210
- package/dist/assets/NcCheckboxRadioSwitch-ChIIElUW.css +0 -196
- package/dist/assets/NcChip-Cho4h_Kr.css +0 -61
- package/dist/assets/NcCollectionList-BT2L4guq.css +0 -221
- package/dist/assets/NcColorPicker-vEZb9dRS.css +0 -122
- package/dist/assets/NcContent-DljiVMLl.css +0 -80
- package/dist/assets/NcCounterBubble-DT16e2bg.css +0 -53
- package/dist/assets/NcDashboardWidget-CvGZT_xf.css +0 -73
- package/dist/assets/NcDashboardWidgetItem-JCtQhwhS.css +0 -85
- package/dist/assets/NcDateTimePicker-DHWLpzCH.css +0 -851
- package/dist/assets/NcDateTimePickerNative-DLch-JRA.css +0 -47
- package/dist/assets/NcDialog-DXX2MKxJ.css +0 -132
- package/dist/assets/NcEllipsisedOption-DZK2vWD1.css +0 -34
- package/dist/assets/NcEmojiPicker-C18M6LHu.css +0 -553
- package/dist/assets/NcHeaderMenu-Cb5YSERm.css +0 -77
- package/dist/assets/NcInputField-CZnSCalG.css +0 -164
- package/dist/assets/NcListItem-Cs-R5Xpu.css +0 -156
- package/dist/assets/NcListItemIcon-C2zhDUEr.css +0 -64
- package/dist/assets/NcMentionBubble-C6t8od-_.css +0 -73
- package/dist/assets/NcModal-Cr_CG7O3.css +0 -285
- package/dist/assets/NcNoteCard-BLPU1den.css +0 -50
- package/dist/assets/NcPopover-BDlL00qZ.css +0 -96
- package/dist/assets/NcRelatedResourcesPanel-C56aj2M3.css +0 -158
- package/dist/assets/NcRichContenteditable-Cf8PvtvB.css +0 -258
- package/dist/assets/NcRichText-yXgN8zvG.css +0 -217
- package/dist/assets/NcSelect-9AZOhTlS.css +0 -184
- package/dist/assets/NcSettingsSection-CFKAEs4p.css +0 -52
- package/dist/assets/NcTextArea-BjB_qSH0.css +0 -112
- package/dist/assets/NcUserBubble-CIfQjmmP.css +0 -48
- package/dist/assets/referencePickerModal-G4uFPuyg.css +0 -413
- package/dist/chunks/AlertCircleOutline-DWBCJkLM.mjs +0 -48
- package/dist/chunks/AlertCircleOutline-DWBCJkLM.mjs.map +0 -1
- package/dist/chunks/ArrowLeft-CxK9DnMo.mjs +0 -48
- package/dist/chunks/ArrowLeft-CxK9DnMo.mjs.map +0 -1
- package/dist/chunks/ArrowRight-Cg6xGDcS.mjs +0 -48
- package/dist/chunks/ArrowRight-Cg6xGDcS.mjs.map +0 -1
- package/dist/chunks/Check-_j2mQvkT.mjs +0 -48
- package/dist/chunks/Check-_j2mQvkT.mjs.map +0 -1
- package/dist/chunks/ChevronDown-De_Zvlgu.mjs +0 -48
- package/dist/chunks/ChevronDown-De_Zvlgu.mjs.map +0 -1
- package/dist/chunks/ChevronRight-C33SNIxR.mjs +0 -48
- package/dist/chunks/ChevronRight-C33SNIxR.mjs.map +0 -1
- package/dist/chunks/ChevronUp-b4LkDSk-.mjs +0 -48
- package/dist/chunks/ChevronUp-b4LkDSk-.mjs.map +0 -1
- package/dist/chunks/Close-pmiXntgw.mjs +0 -48
- package/dist/chunks/Close-pmiXntgw.mjs.map +0 -1
- package/dist/chunks/DotsHorizontal-CCNSfNOk.mjs +0 -48
- package/dist/chunks/DotsHorizontal-CCNSfNOk.mjs.map +0 -1
- package/dist/chunks/GenColors-AKX06ocD.mjs +0 -133
- package/dist/chunks/GenColors-AKX06ocD.mjs.map +0 -1
- package/dist/chunks/Linkify-BtgR-dXX.mjs +0 -14
- package/dist/chunks/Linkify-BtgR-dXX.mjs.map +0 -1
- package/dist/chunks/NcActionButton-Bqkgltcz.mjs +0 -223
- package/dist/chunks/NcActionButton-Bqkgltcz.mjs.map +0 -1
- package/dist/chunks/NcActionButtonGroup-QSxR0BLf.mjs +0 -58
- package/dist/chunks/NcActionButtonGroup-QSxR0BLf.mjs.map +0 -1
- package/dist/chunks/NcActionCaption-Cb_uvgZc.mjs +0 -32
- package/dist/chunks/NcActionCaption-Cb_uvgZc.mjs.map +0 -1
- package/dist/chunks/NcActionCheckbox-A6JNjini.mjs +0 -125
- package/dist/chunks/NcActionCheckbox-A6JNjini.mjs.map +0 -1
- package/dist/chunks/NcActionInput-DY8dxchc.mjs +0 -358
- package/dist/chunks/NcActionInput-DY8dxchc.mjs.map +0 -1
- package/dist/chunks/NcActionLink-C0mINC5i.mjs +0 -122
- package/dist/chunks/NcActionLink-C0mINC5i.mjs.map +0 -1
- package/dist/chunks/NcActionRadio-BqAyH2zq.mjs +0 -128
- package/dist/chunks/NcActionRadio-BqAyH2zq.mjs.map +0 -1
- package/dist/chunks/NcActionRouter-Dr-j-IUI.mjs +0 -83
- package/dist/chunks/NcActionRouter-Dr-j-IUI.mjs.map +0 -1
- package/dist/chunks/NcActionSeparator-DKFXmIJ5.mjs +0 -17
- package/dist/chunks/NcActionSeparator-DKFXmIJ5.mjs.map +0 -1
- package/dist/chunks/NcActionText-C5ZPI56c.mjs +0 -65
- package/dist/chunks/NcActionText-C5ZPI56c.mjs.map +0 -1
- package/dist/chunks/NcActionTextEditable-CLXTDGjr.mjs +0 -130
- package/dist/chunks/NcActionTextEditable-CLXTDGjr.mjs.map +0 -1
- package/dist/chunks/NcActions-DqMOvrbN.mjs +0 -733
- package/dist/chunks/NcActions-DqMOvrbN.mjs.map +0 -1
- package/dist/chunks/NcAppContent-xtfi9kNO.mjs +0 -350
- package/dist/chunks/NcAppContent-xtfi9kNO.mjs.map +0 -1
- package/dist/chunks/NcAppContentDetails-Ch6NJvAl.mjs +0 -15
- package/dist/chunks/NcAppContentDetails-Ch6NJvAl.mjs.map +0 -1
- package/dist/chunks/NcAppContentList-DGwk3AvB.mjs +0 -26
- package/dist/chunks/NcAppContentList-DGwk3AvB.mjs.map +0 -1
- package/dist/chunks/NcAppNavigation-C9Ku9eb2.mjs +0 -162
- package/dist/chunks/NcAppNavigation-C9Ku9eb2.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationCaption-BysnsczC.mjs +0 -97
- package/dist/chunks/NcAppNavigationCaption-BysnsczC.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationIconBullet-DuqQFciH.mjs +0 -43
- package/dist/chunks/NcAppNavigationIconBullet-DuqQFciH.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem--znMc-4G.mjs +0 -624
- package/dist/chunks/NcAppNavigationItem--znMc-4G.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationList-DCmrqe9N.mjs +0 -16
- package/dist/chunks/NcAppNavigationList-DCmrqe9N.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationNew-xPVyvfza.mjs +0 -57
- package/dist/chunks/NcAppNavigationNew-xPVyvfza.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationNewItem-DS1hIl6W.mjs +0 -120
- package/dist/chunks/NcAppNavigationNewItem-DS1hIl6W.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSettings-CekHqqk0.mjs +0 -142
- package/dist/chunks/NcAppNavigationSettings-CekHqqk0.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSpacer-BQFYpMbq.mjs +0 -14
- package/dist/chunks/NcAppNavigationSpacer-BQFYpMbq.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-DfX9dazn.mjs +0 -158
- package/dist/chunks/NcAppNavigationToggle-DfX9dazn.mjs.map +0 -1
- package/dist/chunks/NcAppSettingsDialog-ChTLtlsE.mjs +0 -254
- package/dist/chunks/NcAppSettingsDialog-ChTLtlsE.mjs.map +0 -1
- package/dist/chunks/NcAppSettingsSection-CJff2xNR.mjs +0 -63
- package/dist/chunks/NcAppSettingsSection-CJff2xNR.mjs.map +0 -1
- package/dist/chunks/NcAppSidebar-C9frc6kG.mjs +0 -980
- package/dist/chunks/NcAppSidebar-C9frc6kG.mjs.map +0 -1
- package/dist/chunks/NcAppSidebarTab-zBqyKIgn.mjs +0 -92
- package/dist/chunks/NcAppSidebarTab-zBqyKIgn.mjs.map +0 -1
- package/dist/chunks/NcAvatar-BjooMt8H.mjs +0 -658
- package/dist/chunks/NcAvatar-BjooMt8H.mjs.map +0 -1
- package/dist/chunks/NcBreadcrumb-Btbcn1IT.mjs +0 -243
- package/dist/chunks/NcBreadcrumb-Btbcn1IT.mjs.map +0 -1
- package/dist/chunks/NcBreadcrumbs-BFR0zNov.mjs +0 -458
- package/dist/chunks/NcBreadcrumbs-BFR0zNov.mjs.map +0 -1
- package/dist/chunks/NcButton-Bhuckhtj.mjs +0 -292
- package/dist/chunks/NcButton-Bhuckhtj.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-fsQs5UG3.mjs +0 -808
- package/dist/chunks/NcCheckboxRadioSwitch-fsQs5UG3.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_266d05fb_lang-8iSIJ9Oz.mjs +0 -3
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_266d05fb_lang-8iSIJ9Oz.mjs.map +0 -1
- package/dist/chunks/NcChip-Z436j_vb.mjs +0 -143
- package/dist/chunks/NcChip-Z436j_vb.mjs.map +0 -1
- package/dist/chunks/NcCollectionList-B8r2GWp5.mjs +0 -589
- package/dist/chunks/NcCollectionList-B8r2GWp5.mjs.map +0 -1
- package/dist/chunks/NcColorPicker-ChOP5UKN.mjs +0 -273
- package/dist/chunks/NcColorPicker-ChOP5UKN.mjs.map +0 -1
- package/dist/chunks/NcContent-BTRh5byh.mjs +0 -130
- package/dist/chunks/NcContent-BTRh5byh.mjs.map +0 -1
- package/dist/chunks/NcCounterBubble-B0Sk58x_.mjs +0 -44
- package/dist/chunks/NcCounterBubble-B0Sk58x_.mjs.map +0 -1
- package/dist/chunks/NcDashboardWidget-CyEJLxAR.mjs +0 -186
- package/dist/chunks/NcDashboardWidget-CyEJLxAR.mjs.map +0 -1
- package/dist/chunks/NcDashboardWidgetItem-DfP6DwdF.mjs +0 -197
- package/dist/chunks/NcDashboardWidgetItem-DfP6DwdF.mjs.map +0 -1
- package/dist/chunks/NcDateTime-DX34z7Lo.mjs +0 -147
- package/dist/chunks/NcDateTime-DX34z7Lo.mjs.map +0 -1
- package/dist/chunks/NcDateTimePicker-D9gDwRl4.mjs +0 -377
- package/dist/chunks/NcDateTimePicker-D9gDwRl4.mjs.map +0 -1
- package/dist/chunks/NcDateTimePickerNative-d04KsMAl.mjs +0 -200
- package/dist/chunks/NcDateTimePickerNative-d04KsMAl.mjs.map +0 -1
- package/dist/chunks/NcDialog-D5IAHMrC.mjs +0 -277
- package/dist/chunks/NcDialog-D5IAHMrC.mjs.map +0 -1
- package/dist/chunks/NcDialogButton-BkFODtad.mjs +0 -90
- package/dist/chunks/NcDialogButton-BkFODtad.mjs.map +0 -1
- package/dist/chunks/NcEllipsisedOption-CufdpPBu.mjs +0 -104
- package/dist/chunks/NcEllipsisedOption-CufdpPBu.mjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-Dtc8dnSp.mjs +0 -380
- package/dist/chunks/NcEmojiPicker-Dtc8dnSp.mjs.map +0 -1
- package/dist/chunks/NcEmptyContent-BoGB3vFC.mjs +0 -67
- package/dist/chunks/NcEmptyContent-BoGB3vFC.mjs.map +0 -1
- package/dist/chunks/NcGuestContent-DVqg5Bq4.mjs +0 -22
- package/dist/chunks/NcGuestContent-DVqg5Bq4.mjs.map +0 -1
- package/dist/chunks/NcHeaderMenu-CKynqFZZ.mjs +0 -260
- package/dist/chunks/NcHeaderMenu-CKynqFZZ.mjs.map +0 -1
- package/dist/chunks/NcIconSvgWrapper-DbL6OP85.mjs +0 -106
- package/dist/chunks/NcIconSvgWrapper-DbL6OP85.mjs.map +0 -1
- package/dist/chunks/NcInputConfirmCancel-DkOh9UP_.mjs +0 -116
- package/dist/chunks/NcInputConfirmCancel-DkOh9UP_.mjs.map +0 -1
- package/dist/chunks/NcInputField-hpiI0X9L.mjs +0 -308
- package/dist/chunks/NcInputField-hpiI0X9L.mjs.map +0 -1
- package/dist/chunks/NcListItem-DX-yKrou.mjs +0 -359
- package/dist/chunks/NcListItem-DX-yKrou.mjs.map +0 -1
- package/dist/chunks/NcListItemIcon-Bgd2w_Ug.mjs +0 -207
- package/dist/chunks/NcListItemIcon-Bgd2w_Ug.mjs.map +0 -1
- package/dist/chunks/NcLoadingIcon-DREmHXr2.mjs +0 -78
- package/dist/chunks/NcLoadingIcon-DREmHXr2.mjs.map +0 -1
- package/dist/chunks/NcNoteCard-CQgzjr2r.mjs +0 -252
- package/dist/chunks/NcNoteCard-CQgzjr2r.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-Vfr9wcwj.mjs +0 -286
- package/dist/chunks/NcPasswordField-Vfr9wcwj.mjs.map +0 -1
- package/dist/chunks/NcPopover-BXfbq-Vs.mjs +0 -259
- package/dist/chunks/NcPopover-BXfbq-Vs.mjs.map +0 -1
- package/dist/chunks/NcProgressBar-C2r8oqsv.mjs +0 -147
- package/dist/chunks/NcProgressBar-C2r8oqsv.mjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-DXQ9WHF5.mjs +0 -546
- package/dist/chunks/NcRelatedResourcesPanel-DXQ9WHF5.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-Bf9Kg4hl.mjs +0 -807
- package/dist/chunks/NcRichContenteditable-Bf9Kg4hl.mjs.map +0 -1
- package/dist/chunks/NcRichText-COi8Ex6O.mjs +0 -405
- package/dist/chunks/NcRichText-COi8Ex6O.mjs.map +0 -1
- package/dist/chunks/NcSavingIndicatorIcon-BiGAtlKQ.mjs +0 -79
- package/dist/chunks/NcSavingIndicatorIcon-BiGAtlKQ.mjs.map +0 -1
- package/dist/chunks/NcSelect-uOkQ9CdB.mjs +0 -565
- package/dist/chunks/NcSelect-uOkQ9CdB.mjs.map +0 -1
- package/dist/chunks/NcSelectTags-1hIEJsvj.mjs +0 -302
- package/dist/chunks/NcSelectTags-1hIEJsvj.mjs.map +0 -1
- package/dist/chunks/NcSettingsInputText-DO40BQ3B.mjs +0 -122
- package/dist/chunks/NcSettingsInputText-DO40BQ3B.mjs.map +0 -1
- package/dist/chunks/NcSettingsSection-BDI1fNYG.mjs +0 -115
- package/dist/chunks/NcSettingsSection-BDI1fNYG.mjs.map +0 -1
- package/dist/chunks/NcSettingsSelectGroup-OQVMB2G-.mjs +0 -226
- package/dist/chunks/NcSettingsSelectGroup-OQVMB2G-.mjs.map +0 -1
- package/dist/chunks/NcTextArea-qvR02aYz.mjs +0 -217
- package/dist/chunks/NcTextArea-qvR02aYz.mjs.map +0 -1
- package/dist/chunks/NcTextField-DctsarIL.mjs +0 -173
- package/dist/chunks/NcTextField-DctsarIL.mjs.map +0 -1
- package/dist/chunks/NcTimezonePicker-CGW5Q2gI.mjs +0 -187
- package/dist/chunks/NcTimezonePicker-CGW5Q2gI.mjs.map +0 -1
- package/dist/chunks/NcUserBubble-CsVyJK3C.mjs +0 -212
- package/dist/chunks/NcUserBubble-CsVyJK3C.mjs.map +0 -1
- package/dist/chunks/NcUserStatusIcon-CLYI768S.mjs +0 -135
- package/dist/chunks/NcUserStatusIcon-CLYI768S.mjs.map +0 -1
- package/dist/chunks/ScopeComponent-59SnWk9S.mjs +0 -14
- package/dist/chunks/ScopeComponent-59SnWk9S.mjs.map +0 -1
- package/dist/chunks/_l10n-6dsjYig_.mjs +0 -126
- package/dist/chunks/_l10n-6dsjYig_.mjs.map +0 -1
- package/dist/chunks/emoji-Ba55f8iV.mjs +0 -64
- package/dist/chunks/emoji-Ba55f8iV.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/getAvatarUrl-DxvUjKMi.mjs +0 -11
- package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs.map +0 -1
- package/dist/chunks/index-CtoB4eIp.mjs +0 -116
- package/dist/chunks/index-CtoB4eIp.mjs.map +0 -1
- package/dist/chunks/index-CyNq54HS.mjs +0 -187
- package/dist/chunks/index-CyNq54HS.mjs.map +0 -1
- package/dist/chunks/referencePickerModal-BwzqUWFA.mjs +0 -1360
- package/dist/chunks/referencePickerModal-BwzqUWFA.mjs.map +0 -1
- package/dist/chunks/usernameToColor-CEyHwgy-.mjs +0 -26
- package/dist/chunks/usernameToColor-CEyHwgy-.mjs.map +0 -1
- package/dist/components/NcActionInput/NcActionInput.vue.d.ts +0 -271
- package/dist/components/NcAppContent/NcAppContent.vue.d.ts +0 -194
- package/dist/components/NcAppContent/NcAppDetailsToggle.vue.d.ts +0 -8
- package/dist/components/NcAppSidebar/NcAppSidebar.vue.d.ts +0 -393
- package/dist/components/NcAvatar/NcAvatar.vue.d.ts +0 -467
- package/dist/components/NcCollectionList/NcCollectionList.vue.d.ts +0 -126
- package/dist/components/NcCollectionList/NcCollectionListItem.vue.d.ts +0 -50
- package/dist/components/NcDashboardWidget/NcDashboardWidget.vue.d.ts +0 -142
- package/dist/components/NcDashboardWidgetItem/NcDashboardWidgetItem.vue.d.ts +0 -170
- package/dist/components/NcListItemIcon/NcListItemIcon.vue.d.ts +0 -207
- package/dist/components/NcRichContenteditable/NcRichContenteditable.vue.d.ts +0 -361
- package/dist/components/NcRichText/NcReferencePicker/NcProviderList.vue.d.ts +0 -16
- package/dist/components/NcRichText/NcReferencePicker/NcReferencePicker.vue.d.ts +0 -84
- package/dist/components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue.d.ts +0 -72
- package/dist/components/NcRichText/NcReferencePicker/NcSearch.vue.d.ts +0 -69
- package/dist/components/NcSelect/NcSelect.vue.d.ts +0 -15
- package/dist/components/NcSelectTags/NcSelectTags.vue.d.ts +0 -23
- package/dist/components/NcSettingsSelectGroup/NcSettingsSelectGroup.vue.d.ts +0 -144
- package/dist/components/NcTimezonePicker/NcTimezonePicker.vue.d.ts +0 -78
- package/dist/components/NcUserBubble/NcUserBubble.vue.d.ts +0 -180
- package/dist/mixins/clickOutsideOptions/index.d.ts +0 -15
- package/dist/plugin.d.ts +0 -17
- /package/dist/assets/{NcActionButtonGroup-CQxLn2fv.css → NcActionButtonGroup-BND4GQdv.css} +0 -0
- /package/dist/assets/{NcActionSeparator-CEbb5P6P.css → NcActionSeparator-Ct2RnclR.css} +0 -0
- /package/dist/assets/{NcAppNavigationNew-R0QcGqvG.css → NcAppNavigationNew-L_VNZNL4.css} +0 -0
- /package/dist/assets/{NcAppNavigationSpacer-DiE3sVy0.css → NcAppNavigationSpacer-BJj8CIpA.css} +0 -0
- /package/dist/assets/{NcAppSidebarTab-Cp0hG2NU.css → NcAppSidebarTab-BFy7uyWe.css} +0 -0
- /package/dist/assets/{NcEmptyContent-C-nruaFh.css → NcEmptyContent-DZSuQ2yE.css} +0 -0
- /package/dist/assets/{NcGuestContent-Dh5z5Dgm.css → NcGuestContent-C9lbC3vg.css} +0 -0
- /package/dist/assets/{NcIconSvgWrapper-CtTf2c7f.css → NcIconSvgWrapper-DQFhmjCC.css} +0 -0
- /package/dist/assets/{NcInputConfirmCancel-DBjIHKvN.css → NcInputConfirmCancel-D46m8Alt.css} +0 -0
- /package/dist/assets/{NcLoadingIcon-BSONDy7x.css → NcLoadingIcon-x1d284UU.css} +0 -0
- /package/dist/assets/{NcProgressBar-BsqdCn-x.css → NcProgressBar--z-WqmX4.css} +0 -0
- /package/dist/assets/{NcSettingsInputText-C3j73xA0.css → NcSettingsInputText-BTOyFeAK.css} +0 -0
- /package/dist/assets/{NcSettingsSelectGroup-CGfaysRv.css → NcSettingsSelectGroup-DhyosmOr.css} +0 -0
- /package/dist/assets/{NcUserStatusIcon-FLA1tQpD.css → NcUserStatusIcon-Du-BEPk_.css} +0 -0
- /package/dist/assets/{Tooltip-4CSl8xev.css → index-DQ4Plm4r.css} +0 -0
- /package/dist/{Components/NcVNodes.mjs → components/NcVNodes/index.mjs} +0 -0
- /package/dist/{Composables/useIsFullscreen.mjs → composables/useIsFullscreen/index.mjs} +0 -0
- /package/dist/{Composables/useIsMobile.mjs → composables/useIsMobile/index.mjs} +0 -0
- /package/dist/{Directives/Focus.mjs → directives/Focus/index.mjs} +0 -0
- /package/dist/{Functions/a11y.mjs → functions/a11y/index.mjs} +0 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import '../assets/NcHeaderMenu-QJK2rMK3.css';
|
|
2
|
+
import { defineComponent, ref, computed, useTemplateRef, watch, nextTick, createBlock, openBlock, resolveDynamicComponent, normalizeClass, unref, withCtx, createVNode, createElementBlock, createCommentVNode, withDirectives, withModifiers, renderSlot, toDisplayString, createElementVNode, vShow } from "vue";
|
|
3
|
+
import { onClickOutside } from "@vueuse/core";
|
|
4
|
+
import { createFocusTrap } from "focus-trap";
|
|
5
|
+
import { g as getTrapStack } from "./focusTrap-DmkaYJTC.mjs";
|
|
6
|
+
import "../composables/useIsFullscreen/index.mjs";
|
|
7
|
+
import "../composables/useIsMobile/index.mjs";
|
|
8
|
+
import "./useFormatDateTime-Cvc8YJRE.mjs";
|
|
9
|
+
import { useHotKey } from "../composables/useHotKey/index.mjs";
|
|
10
|
+
import "../composables/useIsDarkTheme/index.mjs";
|
|
11
|
+
import { G as GenRandomId } from "./GenRandomId-CMooMQt0.mjs";
|
|
12
|
+
import { N as NcButton } from "./NcButton-QmfEsvXC.mjs";
|
|
13
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
14
|
+
const _hoisted_1 = ["id"];
|
|
15
|
+
const _hoisted_2 = { class: "header-menu__caret" };
|
|
16
|
+
const _hoisted_3 = ["id"];
|
|
17
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
18
|
+
__name: "NcHeaderMenu",
|
|
19
|
+
props: {
|
|
20
|
+
id: {},
|
|
21
|
+
ariaLabel: {},
|
|
22
|
+
open: { type: Boolean, default: false },
|
|
23
|
+
isNav: { type: Boolean, default: false },
|
|
24
|
+
description: {},
|
|
25
|
+
excludeClickOutsideSelectors: { default: () => [] }
|
|
26
|
+
},
|
|
27
|
+
emits: ["closed", "opened", "update:open"],
|
|
28
|
+
setup(__props, { emit: __emit }) {
|
|
29
|
+
const emit = __emit;
|
|
30
|
+
const descriptionId = GenRandomId();
|
|
31
|
+
const triggerId = GenRandomId();
|
|
32
|
+
const focusTrap = ref();
|
|
33
|
+
const isOpened = ref(__props.open);
|
|
34
|
+
const wrapperTag = computed(() => __props.isNav ? "nav" : "div");
|
|
35
|
+
const contentContainer = useTemplateRef("contentContainer");
|
|
36
|
+
const headerMenu = useTemplateRef("headerMenu");
|
|
37
|
+
const triggerButton = useTemplateRef("triggerButton");
|
|
38
|
+
const ignore = computed(
|
|
39
|
+
() => Array.isArray(__props.excludeClickOutsideSelectors) ? __props.excludeClickOutsideSelectors : __props.excludeClickOutsideSelectors.split(" ")
|
|
40
|
+
);
|
|
41
|
+
onClickOutside(headerMenu, () => setMenuState(false), { ignore });
|
|
42
|
+
useHotKey("Escape", () => setMenuState(false), { prevent: true });
|
|
43
|
+
watch(() => __props.open, (state) => setMenuState(state));
|
|
44
|
+
function toggleMenu() {
|
|
45
|
+
setMenuState(!isOpened.value);
|
|
46
|
+
}
|
|
47
|
+
async function setMenuState(state) {
|
|
48
|
+
if (state === isOpened.value) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
isOpened.value = state;
|
|
52
|
+
emit("update:open", state);
|
|
53
|
+
await nextTick();
|
|
54
|
+
await (state ? addFocusTrap() : clearFocusTrap());
|
|
55
|
+
emit(state ? "opened" : "closed");
|
|
56
|
+
}
|
|
57
|
+
function onFocusOut(event) {
|
|
58
|
+
if (!__props.isNav) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
if (!(event.relatedTarget instanceof Node)) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (headerMenu.value?.contains(event.relatedTarget)) {
|
|
65
|
+
setMenuState(false);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async function addFocusTrap() {
|
|
69
|
+
if (__props.isNav || focusTrap.value) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
focusTrap.value = createFocusTrap(contentContainer.value, {
|
|
73
|
+
allowOutsideClick: true,
|
|
74
|
+
trapStack: getTrapStack(),
|
|
75
|
+
fallbackFocus: triggerButton.value?.$el
|
|
76
|
+
});
|
|
77
|
+
focusTrap.value.activate();
|
|
78
|
+
}
|
|
79
|
+
function clearFocusTrap() {
|
|
80
|
+
focusTrap.value?.deactivate();
|
|
81
|
+
focusTrap.value = void 0;
|
|
82
|
+
}
|
|
83
|
+
return (_ctx, _cache) => {
|
|
84
|
+
return openBlock(), createBlock(resolveDynamicComponent(wrapperTag.value), {
|
|
85
|
+
id: _ctx.id,
|
|
86
|
+
ref_key: "headerMenu",
|
|
87
|
+
ref: headerMenu,
|
|
88
|
+
"aria-labelledby": _ctx.isNav ? unref(triggerId) : null,
|
|
89
|
+
class: normalizeClass([{ "header-menu--opened": isOpened.value }, "header-menu"]),
|
|
90
|
+
onFocusout: onFocusOut
|
|
91
|
+
}, {
|
|
92
|
+
default: withCtx(() => [
|
|
93
|
+
createVNode(unref(NcButton), {
|
|
94
|
+
id: _ctx.isNav ? unref(triggerId) : null,
|
|
95
|
+
ref_key: "triggerButton",
|
|
96
|
+
ref: triggerButton,
|
|
97
|
+
type: "tertiary-no-background",
|
|
98
|
+
class: "header-menu__trigger",
|
|
99
|
+
"aria-label": _ctx.ariaLabel,
|
|
100
|
+
"aria-describedby": _ctx.description ? unref(descriptionId) : null,
|
|
101
|
+
"aria-controls": `header-menu-${_ctx.id}`,
|
|
102
|
+
"aria-expanded": isOpened.value.toString(),
|
|
103
|
+
size: "large",
|
|
104
|
+
onClick: withModifiers(toggleMenu, ["prevent"])
|
|
105
|
+
}, {
|
|
106
|
+
icon: withCtx(() => [
|
|
107
|
+
renderSlot(_ctx.$slots, "trigger", {}, void 0, true)
|
|
108
|
+
]),
|
|
109
|
+
_: 3
|
|
110
|
+
}, 8, ["id", "aria-label", "aria-describedby", "aria-controls", "aria-expanded"]),
|
|
111
|
+
_ctx.description ? (openBlock(), createElementBlock("span", {
|
|
112
|
+
key: 0,
|
|
113
|
+
id: unref(descriptionId),
|
|
114
|
+
class: "header-menu__description hidden-visually"
|
|
115
|
+
}, toDisplayString(_ctx.description), 9, _hoisted_1)) : createCommentVNode("", true),
|
|
116
|
+
withDirectives(createElementVNode("div", _hoisted_2, null, 512), [
|
|
117
|
+
[vShow, isOpened.value]
|
|
118
|
+
]),
|
|
119
|
+
withDirectives(createElementVNode("div", {
|
|
120
|
+
id: `header-menu-${_ctx.id}`,
|
|
121
|
+
class: "header-menu__wrapper"
|
|
122
|
+
}, [
|
|
123
|
+
createElementVNode("div", {
|
|
124
|
+
ref_key: "contentContainer",
|
|
125
|
+
ref: contentContainer,
|
|
126
|
+
class: "header-menu__content"
|
|
127
|
+
}, [
|
|
128
|
+
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
129
|
+
], 512)
|
|
130
|
+
], 8, _hoisted_3), [
|
|
131
|
+
[vShow, isOpened.value]
|
|
132
|
+
])
|
|
133
|
+
]),
|
|
134
|
+
_: 3
|
|
135
|
+
}, 40, ["id", "aria-labelledby", "class"]);
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
const NcHeaderMenu = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-e7026f07"]]);
|
|
140
|
+
export {
|
|
141
|
+
NcHeaderMenu as N
|
|
142
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcHeaderMenu-BRiroRYT.mjs","sources":["../../src/components/NcHeaderMenu/NcHeaderMenu.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderMenu id=\"search\"\n\t\t\taria-label=\"Search\">\n\t\t\t<template #trigger>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t\t<div>\n\t\t\t\t<NcTextField label=\"Search for files, comments, contacts…\"\n\t\t\t\t\tstyle=\"padding-inline: 8px;\"\n\t\t\t\t\ttype=\"search\"\n\t\t\t\t\tv-model=\"query\" />\n\t\t\t\t<NcEmptyContent\n\t\t\t\t\tname=\"Search\"\n\t\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Magnify />\n\t\t\t\t\t</template>\n\t\t\t\t</NcEmptyContent>\n\t\t\t</div>\n\t\t</NcHeaderMenu>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-inline-end: 12px;\n}\n</style>\n```\n</docs>\n\n<template>\n\t<component :is=\"wrapperTag\"\n\t\t:id=\"id\"\n\t\tref=\"headerMenu\"\n\t\t:aria-labelledby=\"isNav ? triggerId : null\"\n\t\t:class=\"{ 'header-menu--opened': isOpened }\"\n\t\tclass=\"header-menu\"\n\t\t@focusout=\"onFocusOut\">\n\t\t<!-- Trigger -->\n\t\t<NcButton :id=\"isNav ? triggerId : null\"\n\t\t\tref=\"triggerButton\"\n\t\t\ttype=\"tertiary-no-background\"\n\t\t\tclass=\"header-menu__trigger\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:aria-describedby=\"description ? descriptionId : null\"\n\t\t\t:aria-controls=\"`header-menu-${id}`\"\n\t\t\t:aria-expanded=\"isOpened.toString()\"\n\t\t\tsize=\"large\"\n\t\t\t@click.prevent=\"toggleMenu\">\n\t\t\t<template #icon>\n\t\t\t\t<slot name=\"trigger\" />\n\t\t\t</template>\n\t\t</NcButton>\n\n\t\t<span v-if=\"description\"\n\t\t\t:id=\"descriptionId\"\n\t\t\tclass=\"header-menu__description hidden-visually\">\n\t\t\t{{ description }}\n\t\t</span>\n\n\t\t<!-- Visual triangle -->\n\t\t<div v-show=\"isOpened\" class=\"header-menu__caret\" />\n\n\t\t<!-- Menu opened content -->\n\t\t<div v-show=\"isOpened\"\n\t\t\t:id=\"`header-menu-${id}`\"\n\t\t\tclass=\"header-menu__wrapper\">\n\t\t\t<div ref=\"contentContainer\" class=\"header-menu__content\">\n\t\t\t\t<slot />\n\t\t\t</div>\n\t\t</div>\n\t</component>\n</template>\n\n<script setup lang=\"ts\">\nimport type { FocusTrap } from 'focus-trap'\n\nimport { onClickOutside } from '@vueuse/core'\nimport { createFocusTrap } from 'focus-trap'\nimport { computed, nextTick, ref, useTemplateRef, watch, type Slot } from 'vue'\nimport { getTrapStack } from '../../utils/focusTrap.ts'\nimport { useHotKey } from '../../composables/index.js'\n\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport NcButton from '../NcButton/index.ts'\n\nconst {\n\texcludeClickOutsideSelectors = [],\n\topen = false,\n\tisNav = false,\n} = defineProps<{\n\t/**\n\t * Unique id for this menu\n\t */\n\tid: string\n\n\t/**\n\t * aria-label attribute of the menu open button\n\t */\n\tariaLabel?: string\n\n\t/**\n\t * Current menu open state\n\t */\n\topen?: boolean\n\n\t/**\n\t * Pass `true` if the header menu is used for website navigation\n\t *\n\t * The wrapper tag will be set to `nav` and its `aria-labelledby`\n\t * will be associated with the menu open button\n\t */\n\tisNav?: boolean\n\n\t/**\n\t * Additional visually hidden description text for the menu\n\t * open button\n\t */\n\tdescription?: string\n\n\t/**\n\t * A query-selector or an array of query-selectors\n\t * to be ignored when clicking outside an element\n\t */\n\texcludeClickOutsideSelectors?: string | string[]\n}>()\n\nconst emit = defineEmits<{\n\t/** Emitted when the menu is fully closed (animation done) */\n\tclosed: []\n\n\t/** Emitted when the menu is fully opened (animation done) */\n\topened: []\n\n\t/** Updated open state */\n\t'update:open': [v: boolean]\n}>()\n\ndefineSlots<{\n\t/** The menu content */\n\tdefault: Slot\n\t/** Icon trigger slot. Make sure the svg path is at least 16px. Usually mdi icon works at 20px */\n\ttrigger: Slot\n}>()\n\n/** Id of the menu description */\nconst descriptionId = GenRandomId()\n/** Id of the trigger button */\nconst triggerId = GenRandomId()\n/** The active focus trap (if any) */\nconst focusTrap = ref<FocusTrap>()\n/** Is the menu currently opened */\nconst isOpened = ref(open)\n/** HTML tag to use for the header menu */\nconst wrapperTag = computed(() => isNav ? 'nav' : 'div')\n\n/** The menu content container element */\nconst contentContainer = useTemplateRef('contentContainer')\n/** The overall header menu wrapping element (<nav> or <div>) */\nconst headerMenu = useTemplateRef<HTMLElement>('headerMenu')\n/** The menu trigger button */\nconst triggerButton = useTemplateRef('triggerButton')\n\n// Handle click outside of the menu -> should close the menu\nconst ignore = computed(() => Array.isArray(excludeClickOutsideSelectors)\n\t? excludeClickOutsideSelectors\n\t: excludeClickOutsideSelectors.split(' '),\n)\nonClickOutside(headerMenu, () => setMenuState(false), { ignore })\n\n// Pressing escape should close the menu\nuseHotKey('Escape', () => setMenuState(false), { prevent: true })\n\n// Watch the open prop to adjust the internal opened state\nwatch(() => open, (state: boolean) => setMenuState(state))\n\n/**\n * Toggle the current menu open state\n */\nfunction toggleMenu() {\n\tsetMenuState(!isOpened.value)\n}\n\n/**\n * Set the menu opened state\n * @param state The opened state to set\n */\nasync function setMenuState(state: boolean) {\n\tif (state === isOpened.value) {\n\t\treturn\n\t}\n\n\tisOpened.value = state\n\temit('update:open', state)\n\n\t// wait one tick to make sure the rendering finished\n\tawait nextTick()\n\t// either add or clear the focus trap\n\tawait (state ? addFocusTrap() : clearFocusTrap())\n\n\t// Emit signal to mark finished toggling\n\t// @ts-expect-error This seems to be broken in Vue's typescript macro compiler...\n\temit(state ? 'opened' : 'closed')\n}\n\n/**\n * When this is role navigation, then we cannot apply a focus trap.\n * In this case we close the menu on focus-out.\n */\nfunction onFocusOut(event: FocusEvent) {\n\t// Is not a navigation\n\tif (!isNav) {\n\t\treturn\n\t}\n\n\t// Event target is not a node\n\tif (!(event.relatedTarget instanceof Node)) {\n\t\treturn\n\t}\n\n\tif (headerMenu.value?.contains(event.relatedTarget)) {\n\t\tsetMenuState(false)\n\t}\n}\n\n/**\n * Add focus trap for accessibility.\n * Shall only be used when all children are mounted\n * and available in the DOM. We use $nextTick for that.\n */\nasync function addFocusTrap() {\n\t// We cannot add the focus trap on navigation roles\n\t// also skip if already set\n\tif (isNav || focusTrap.value) {\n\t\treturn\n\t}\n\n\t// Init focus trap\n\tfocusTrap.value = createFocusTrap(contentContainer.value!, {\n\t\tallowOutsideClick: true,\n\t\ttrapStack: getTrapStack(),\n\t\tfallbackFocus: triggerButton.value?.$el,\n\t})\n\tfocusTrap.value.activate()\n}\n\n/**\n * Deactivate and clear the focus trap\n */\nfunction clearFocusTrap() {\n\tfocusTrap.value?.deactivate()\n\tfocusTrap.value = undefined\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// content inner and outer margin\n// Also used for menu top-right positioning\n$externalMargin: 8px;\n\n@import './header-menu__trigger';\n\n.header-menu {\n\t&__wrapper {\n\t\tposition: fixed;\n\t\tz-index: 2000;\n\t\ttop: var(--header-height);\n\t\tinset-inline-end: 0;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0 $externalMargin;\n\t\tborder-radius: 0 0 var(--border-radius) var(--border-radius);\n\t\tborder-radius: var(--border-radius-large);\n\t\tbackground-color: var(--color-main-background);\n\n\t\tfilter: drop-shadow(0 1px 5px var(--color-box-shadow));\n\t}\n\n\t&__carret {\n\t\tposition: absolute;\n\t\tz-index: 2001; // Because __wrapper is 2000.\n\t\tbottom: 0;\n\t\tinset-inline-start: calc(50% - 10px);\n\t\twidth: 0;\n\t\theight: 0;\n\t\tcontent: ' ';\n\t\tpointer-events: none;\n\t\tborder: 10px solid transparent;\n\t\tborder-bottom-color: var(--color-main-background);\n\t}\n\n\t&__content {\n\t\toverflow: auto;\n\t\twidth: 350px;\n\t\tmax-width: calc(100vw - 2 * $externalMargin);\n\t\tmin-height: calc(var(--default-clickable-area) * 1.5);\n\t\tmax-height: calc(100vh - var(--header-height) * 2);\n\t\t:deep(.empty-content) {\n\t\t\tmargin: 12vh 10px;\n\t\t}\n\t}\n}\n</style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA2JA,UAAM,OAAO;AAmBb,UAAM,gBAAgB,YAAY;AAElC,UAAM,YAAY,YAAY;AAE9B,UAAM,YAAY,IAAe;AAE3B,UAAA,WAAW,IAAI,QAAI,IAAA;AAEzB,UAAM,aAAa,SAAS,MAAM,QAAK,QAAG,QAAQ,KAAK;AAGjD,UAAA,mBAAmB,eAAe,kBAAkB;AAEpD,UAAA,aAAa,eAA4B,YAAY;AAErD,UAAA,gBAAgB,eAAe,eAAe;AAGpD,UAAM,SAAS;AAAA,MAAS,MAAM,MAAM,QAAQ,QAA4B,4BAAA,IACrE,QAAA,+BACA,QAA4B,6BAAC,MAAM,GAAG;AAAA,IACzC;AACA,mBAAe,YAAY,MAAM,aAAa,KAAK,GAAG,EAAE,QAAQ;AAGtD,cAAA,UAAU,MAAM,aAAa,KAAK,GAAG,EAAE,SAAS,MAAM;AAGhE,UAAM,MAAM,QAAA,MAAM,CAAC,UAAmB,aAAa,KAAK,CAAC;AAKzD,aAAS,aAAa;AACR,mBAAA,CAAC,SAAS,KAAK;AAAA,IAAA;AAO7B,mBAAe,aAAa,OAAgB;AACvC,UAAA,UAAU,SAAS,OAAO;AAC7B;AAAA,MAAA;AAGD,eAAS,QAAQ;AACjB,WAAK,eAAe,KAAK;AAGzB,YAAM,SAAS;AAER,aAAA,QAAQ,iBAAiB;AAI3B,WAAA,QAAQ,WAAW,QAAQ;AAAA,IAAA;AAOjC,aAAS,WAAW,OAAmB;AAElC,UAAA,CAAC,QAAA,OAAO;AACX;AAAA,MAAA;AAIG,UAAA,EAAE,MAAM,yBAAyB,OAAO;AAC3C;AAAA,MAAA;AAGD,UAAI,WAAW,OAAO,SAAS,MAAM,aAAa,GAAG;AACpD,qBAAa,KAAK;AAAA,MAAA;AAAA,IACnB;AAQD,mBAAe,eAAe;AAGzB,UAAA,QAAA,SAAS,UAAU,OAAO;AAC7B;AAAA,MAAA;AAIS,gBAAA,QAAQ,gBAAgB,iBAAiB,OAAQ;AAAA,QAC1D,mBAAmB;AAAA,QACnB,WAAW,aAAa;AAAA,QACxB,eAAe,cAAc,OAAO;AAAA,MAAA,CACpC;AACD,gBAAU,MAAM,SAAS;AAAA,IAAA;AAM1B,aAAS,iBAAiB;AACzB,gBAAU,OAAO,WAAW;AAC5B,gBAAU,QAAQ;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcHighlight-BHtRIzqk.mjs","sources":["../../src/utils/FindRanges.js","../../src/components/NcHighlight/NcHighlight.vue"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * Find the ranges of a substr in a given string\n *\n * @param {string} text The text to search in\n * @param {string} search The text to search for\n * @return {Array} The array of ranges to highlight\n */\nconst FindRanges = (text, search) => {\n\tconst ranges = []\n\tlet currentIndex = 0\n\tlet index = text.toLowerCase().indexOf(search.toLowerCase(), currentIndex)\n\t// Variable to track that we don't iterate more often than the length of the text.\n\t// Shouldn't happen anyway, but just to be sure to not hang the browser for some reason.\n\tlet i = 0\n\twhile (index > -1 && i < text.length) {\n\t\tcurrentIndex = index + search.length\n\t\tranges.push({ start: index, end: currentIndex })\n\n\t\tindex = text.toLowerCase().indexOf(search.toLowerCase(), currentIndex)\n\t\ti++\n\t}\n\treturn ranges\n}\n\nexport default FindRanges\n","<!--\n - SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n\n### General description\n\nHighlight a string with html <strong>. Accepts a substring to highlight or an array with ranges.\n\n### Usage\n\n```vue\n<template>\n\t<div>\n\t\t<NcHighlight text=\"Highlight me please!\" search=\"me\" />\n\t\t<br />\n\t\t<NcHighlight text=\"Highlight me please!\" :highlight=\"[{ start: 4, end: 12 }]\" />\n\t</div>\n</template>\n```\n</docs>\n\n<script>\nimport FindRanges from '../../utils/FindRanges.js'\n\nimport { h } from 'vue'\n\nexport default {\n\tname: 'NcHighlight',\n\tprops: {\n\t\t/**\n\t\t * The string to display\n\t\t */\n\t\ttext: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * The string to match and highlight\n\t\t */\n\t\tsearch: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * The ranges to highlight, takes precedence over the search prop.\n\t\t */\n\t\thighlight: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t},\n\tcomputed: {\n\t\t/**\n\t\t * The indice ranges which should be highlighted.\n\t\t * If an array with ranges is provided, we use it. Otherwise\n\t\t * we calculate it based on the provided substring to highlight.\n\t\t *\n\t\t * @return {Array} The array of ranges to highlight\n\t\t */\n\t\tranges() {\n\t\t\tlet ranges = []\n\t\t\t// If the search term and the highlight array is empty, return early with empty array\n\t\t\tif (!this.search && this.highlight.length === 0) {\n\t\t\t\treturn ranges\n\t\t\t}\n\n\t\t\t// If there are ranges to highlight provided, we use this array.\n\t\t\tif (this.highlight.length > 0) {\n\t\t\t\tranges = this.highlight\n\t\t\t// Otherwise we check the text to highlight for matches of the search term.\n\t\t\t} else {\n\t\t\t\tranges = FindRanges(this.text, this.search)\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Ensure that the start of each range is equal to or smaller than the end\n\t\t\t */\n\t\t\tranges.forEach((range, i) => {\n\t\t\t\tif (range.end < range.start) {\n\t\t\t\t\tranges[i] = {\n\t\t\t\t\t\tstart: range.end,\n\t\t\t\t\t\tend: range.start,\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t/**\n\t\t\t * Validate the ranges array to be within the string length\n\t\t\t * and discard ranges which are completely out of bonds.\n\t\t\t */\n\t\t\tranges = ranges.reduce((validRanges, range) => {\n\t\t\t\tif (range.start < this.text.length && range.end > 0) {\n\t\t\t\t\tvalidRanges.push({\n\t\t\t\t\t\tstart: (range.start < 0) ? 0 : range.start,\n\t\t\t\t\t\tend: (range.end > this.text.length) ? this.text.length : range.end,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn validRanges\n\t\t\t}, [])\n\n\t\t\t/**\n\t\t\t * Sort ranges ascendingly (necessary for next step)\n\t\t\t */\n\t\t\tranges.sort((a, b) => {\n\t\t\t\treturn a.start - b.start\n\t\t\t})\n\n\t\t\t/**\n\t\t\t * Merge overlapping or adjacent ranges\n\t\t\t */\n\t\t\tranges = ranges.reduce((mergedRanges, range) => {\n\t\t\t\t// If there are no ranges, just add the range\n\t\t\t\tif (!mergedRanges.length) {\n\t\t\t\t\tmergedRanges.push(range)\n\t\t\t\t} else {\n\t\t\t\t\t// If the range overlaps the last range, merge them\n\t\t\t\t\tconst idx = mergedRanges.length - 1\n\t\t\t\t\tif (mergedRanges[idx].end >= range.start) {\n\t\t\t\t\t\tmergedRanges[idx] = {\n\t\t\t\t\t\t\tstart: mergedRanges[idx].start,\n\t\t\t\t\t\t\tend: Math.max(mergedRanges[idx].end, range.end),\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmergedRanges.push(range)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn mergedRanges\n\t\t\t}, [])\n\n\t\t\treturn ranges\n\t\t},\n\t\t/**\n\t\t * Calculate the different chunks to show based on the ranges to highlight.\n\t\t *\n\t\t * @return {Array} The chunks\n\t\t */\n\t\tchunks() {\n\t\t\t// If the ranges array is empty, show only one chunk with all text\n\t\t\tif (this.ranges.length === 0) {\n\t\t\t\treturn [{\n\t\t\t\t\tstart: 0,\n\t\t\t\t\tend: this.text.length,\n\t\t\t\t\thighlight: false,\n\t\t\t\t\ttext: this.text,\n\t\t\t\t}]\n\t\t\t}\n\t\t\t// Calculate the chunks\n\t\t\tconst chunks = []\n\t\t\tlet currentIndex = 0\n\t\t\tlet currentRange = 0\n\t\t\t// Iterate over all characters in the text\n\t\t\twhile (currentIndex < this.text.length) {\n\t\t\t\t// Get the first range to highlight\n\t\t\t\tconst range = this.ranges[currentRange]\n\t\t\t\t// If the range starts at the current index, construct a chunk to highlight,\n\t\t\t\t// set the next range and continue with the next iteration.\n\t\t\t\tif (range.start === currentIndex) {\n\t\t\t\t\tchunks.push({\n\t\t\t\t\t\t...range,\n\t\t\t\t\t\thighlight: true,\n\t\t\t\t\t\ttext: this.text.slice(range.start, range.end),\n\t\t\t\t\t})\n\t\t\t\t\tcurrentRange++\n\t\t\t\t\tcurrentIndex = range.end\n\t\t\t\t\t// If this was the last range to highlight and we haven't reached the end of the text,\n\t\t\t\t\t// add the rest of the text without highlighting.\n\t\t\t\t\tif (currentRange >= this.ranges.length && currentIndex < this.text.length) {\n\t\t\t\t\t\tchunks.push({\n\t\t\t\t\t\t\tstart: currentIndex,\n\t\t\t\t\t\t\tend: this.text.length,\n\t\t\t\t\t\t\thighlight: false,\n\t\t\t\t\t\t\ttext: this.text.slice(currentIndex),\n\t\t\t\t\t\t})\n\t\t\t\t\t\t// Set the current index so the while loop ends.\n\t\t\t\t\t\tcurrentIndex = this.text.length\n\t\t\t\t\t}\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\t// If the current range does start after the current index, construct a chunk without\n\t\t\t\t// highlighting and set the current index to the start of the current range.\n\t\t\t\tchunks.push({\n\t\t\t\t\tstart: currentIndex,\n\t\t\t\t\tend: range.start,\n\t\t\t\t\thighlight: false,\n\t\t\t\t\ttext: this.text.slice(currentIndex, range.start),\n\t\t\t\t})\n\t\t\t\tcurrentIndex = range.start\n\t\t\t}\n\t\t\treturn chunks\n\t\t},\n\t},\n\t/**\n\t * The render function to display the component\n\t *\n\t * @return {object} The created VNode\n\t */\n\trender() {\n\t\tif (!this.ranges.length) {\n\t\t\treturn h('span', {}, this.text)\n\t\t}\n\n\t\treturn h('span', {}, this.chunks.map(chunk => {\n\t\t\treturn chunk.highlight ? h('strong', {}, chunk.text) : chunk.text\n\t\t}))\n\t},\n}\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcHighlight-BHtRIzqk.mjs","sources":["../../src/utils/FindRanges.js","../../src/components/NcHighlight/NcHighlight.vue"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * Find the ranges of a substr in a given string\n *\n * @param {string} text The text to search in\n * @param {string} search The text to search for\n * @return {Array} The array of ranges to highlight\n */\nconst FindRanges = (text, search) => {\n\tconst ranges = []\n\tlet currentIndex = 0\n\tlet index = text.toLowerCase().indexOf(search.toLowerCase(), currentIndex)\n\t// Variable to track that we don't iterate more often than the length of the text.\n\t// Shouldn't happen anyway, but just to be sure to not hang the browser for some reason.\n\tlet i = 0\n\twhile (index > -1 && i < text.length) {\n\t\tcurrentIndex = index + search.length\n\t\tranges.push({ start: index, end: currentIndex })\n\n\t\tindex = text.toLowerCase().indexOf(search.toLowerCase(), currentIndex)\n\t\ti++\n\t}\n\treturn ranges\n}\n\nexport default FindRanges\n","<!--\n - SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n\n### General description\n\nHighlight a string with html <strong>. Accepts a substring to highlight or an array with ranges.\n\n### Usage\n\n```vue\n<template>\n\t<div>\n\t\t<NcHighlight text=\"Highlight me please!\" search=\"me\" />\n\t\t<br />\n\t\t<NcHighlight text=\"Highlight me please!\" :highlight=\"[{ start: 4, end: 12 }]\" />\n\t</div>\n</template>\n```\n</docs>\n\n<script>\nimport FindRanges from '../../utils/FindRanges.js'\n\nimport { h } from 'vue'\n\nexport default {\n\tname: 'NcHighlight',\n\tprops: {\n\t\t/**\n\t\t * The string to display\n\t\t */\n\t\ttext: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * The string to match and highlight\n\t\t */\n\t\tsearch: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * The ranges to highlight, takes precedence over the search prop.\n\t\t */\n\t\thighlight: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t},\n\t},\n\tcomputed: {\n\t\t/**\n\t\t * The indice ranges which should be highlighted.\n\t\t * If an array with ranges is provided, we use it. Otherwise\n\t\t * we calculate it based on the provided substring to highlight.\n\t\t *\n\t\t * @return {Array} The array of ranges to highlight\n\t\t */\n\t\tranges() {\n\t\t\tlet ranges = []\n\t\t\t// If the search term and the highlight array is empty, return early with empty array\n\t\t\tif (!this.search && this.highlight.length === 0) {\n\t\t\t\treturn ranges\n\t\t\t}\n\n\t\t\t// If there are ranges to highlight provided, we use this array.\n\t\t\tif (this.highlight.length > 0) {\n\t\t\t\tranges = this.highlight\n\t\t\t// Otherwise we check the text to highlight for matches of the search term.\n\t\t\t} else {\n\t\t\t\tranges = FindRanges(this.text, this.search)\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Ensure that the start of each range is equal to or smaller than the end\n\t\t\t */\n\t\t\tranges.forEach((range, i) => {\n\t\t\t\tif (range.end < range.start) {\n\t\t\t\t\tranges[i] = {\n\t\t\t\t\t\tstart: range.end,\n\t\t\t\t\t\tend: range.start,\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t/**\n\t\t\t * Validate the ranges array to be within the string length\n\t\t\t * and discard ranges which are completely out of bonds.\n\t\t\t */\n\t\t\tranges = ranges.reduce((validRanges, range) => {\n\t\t\t\tif (range.start < this.text.length && range.end > 0) {\n\t\t\t\t\tvalidRanges.push({\n\t\t\t\t\t\tstart: (range.start < 0) ? 0 : range.start,\n\t\t\t\t\t\tend: (range.end > this.text.length) ? this.text.length : range.end,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treturn validRanges\n\t\t\t}, [])\n\n\t\t\t/**\n\t\t\t * Sort ranges ascendingly (necessary for next step)\n\t\t\t */\n\t\t\tranges.sort((a, b) => {\n\t\t\t\treturn a.start - b.start\n\t\t\t})\n\n\t\t\t/**\n\t\t\t * Merge overlapping or adjacent ranges\n\t\t\t */\n\t\t\tranges = ranges.reduce((mergedRanges, range) => {\n\t\t\t\t// If there are no ranges, just add the range\n\t\t\t\tif (!mergedRanges.length) {\n\t\t\t\t\tmergedRanges.push(range)\n\t\t\t\t} else {\n\t\t\t\t\t// If the range overlaps the last range, merge them\n\t\t\t\t\tconst idx = mergedRanges.length - 1\n\t\t\t\t\tif (mergedRanges[idx].end >= range.start) {\n\t\t\t\t\t\tmergedRanges[idx] = {\n\t\t\t\t\t\t\tstart: mergedRanges[idx].start,\n\t\t\t\t\t\t\tend: Math.max(mergedRanges[idx].end, range.end),\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmergedRanges.push(range)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn mergedRanges\n\t\t\t}, [])\n\n\t\t\treturn ranges\n\t\t},\n\t\t/**\n\t\t * Calculate the different chunks to show based on the ranges to highlight.\n\t\t *\n\t\t * @return {Array} The chunks\n\t\t */\n\t\tchunks() {\n\t\t\t// If the ranges array is empty, show only one chunk with all text\n\t\t\tif (this.ranges.length === 0) {\n\t\t\t\treturn [{\n\t\t\t\t\tstart: 0,\n\t\t\t\t\tend: this.text.length,\n\t\t\t\t\thighlight: false,\n\t\t\t\t\ttext: this.text,\n\t\t\t\t}]\n\t\t\t}\n\t\t\t// Calculate the chunks\n\t\t\tconst chunks = []\n\t\t\tlet currentIndex = 0\n\t\t\tlet currentRange = 0\n\t\t\t// Iterate over all characters in the text\n\t\t\twhile (currentIndex < this.text.length) {\n\t\t\t\t// Get the first range to highlight\n\t\t\t\tconst range = this.ranges[currentRange]\n\t\t\t\t// If the range starts at the current index, construct a chunk to highlight,\n\t\t\t\t// set the next range and continue with the next iteration.\n\t\t\t\tif (range.start === currentIndex) {\n\t\t\t\t\tchunks.push({\n\t\t\t\t\t\t...range,\n\t\t\t\t\t\thighlight: true,\n\t\t\t\t\t\ttext: this.text.slice(range.start, range.end),\n\t\t\t\t\t})\n\t\t\t\t\tcurrentRange++\n\t\t\t\t\tcurrentIndex = range.end\n\t\t\t\t\t// If this was the last range to highlight and we haven't reached the end of the text,\n\t\t\t\t\t// add the rest of the text without highlighting.\n\t\t\t\t\tif (currentRange >= this.ranges.length && currentIndex < this.text.length) {\n\t\t\t\t\t\tchunks.push({\n\t\t\t\t\t\t\tstart: currentIndex,\n\t\t\t\t\t\t\tend: this.text.length,\n\t\t\t\t\t\t\thighlight: false,\n\t\t\t\t\t\t\ttext: this.text.slice(currentIndex),\n\t\t\t\t\t\t})\n\t\t\t\t\t\t// Set the current index so the while loop ends.\n\t\t\t\t\t\tcurrentIndex = this.text.length\n\t\t\t\t\t}\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\t// If the current range does start after the current index, construct a chunk without\n\t\t\t\t// highlighting and set the current index to the start of the current range.\n\t\t\t\tchunks.push({\n\t\t\t\t\tstart: currentIndex,\n\t\t\t\t\tend: range.start,\n\t\t\t\t\thighlight: false,\n\t\t\t\t\ttext: this.text.slice(currentIndex, range.start),\n\t\t\t\t})\n\t\t\t\tcurrentIndex = range.start\n\t\t\t}\n\t\t\treturn chunks\n\t\t},\n\t},\n\t/**\n\t * The render function to display the component\n\t *\n\t * @return {object} The created VNode\n\t */\n\trender() {\n\t\tif (!this.ranges.length) {\n\t\t\treturn h('span', {}, this.text)\n\t\t}\n\n\t\treturn h('span', {}, this.chunks.map(chunk => {\n\t\t\treturn chunk.highlight ? h('strong', {}, chunk.text) : chunk.text\n\t\t}))\n\t},\n}\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import '../assets/NcIconSvgWrapper-DQFhmjCC.css';
|
|
2
|
+
import { warn, createElementBlock, openBlock, normalizeProps, mergeProps, createElementVNode, useCssVars } from "vue";
|
|
3
|
+
import DOMPurify from "dompurify";
|
|
4
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
5
|
+
const _sfc_main = {
|
|
6
|
+
name: "NcIconSvgWrapper",
|
|
7
|
+
props: {
|
|
8
|
+
/**
|
|
9
|
+
* Set if the icon should be used as inline content e.g. within text.
|
|
10
|
+
* By default the icon is made a block element for use inside `icon`-slots.
|
|
11
|
+
*/
|
|
12
|
+
inline: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
default: false
|
|
15
|
+
},
|
|
16
|
+
/**
|
|
17
|
+
* Raw SVG string to render
|
|
18
|
+
*/
|
|
19
|
+
svg: {
|
|
20
|
+
type: String,
|
|
21
|
+
default: ""
|
|
22
|
+
},
|
|
23
|
+
/**
|
|
24
|
+
* Label of the icon, used in aria-label
|
|
25
|
+
*/
|
|
26
|
+
name: {
|
|
27
|
+
type: String,
|
|
28
|
+
default: ""
|
|
29
|
+
},
|
|
30
|
+
/**
|
|
31
|
+
* Raw SVG path to render. Takes precedence over the SVG string in the `svg` prop.
|
|
32
|
+
*/
|
|
33
|
+
path: {
|
|
34
|
+
type: String,
|
|
35
|
+
default: ""
|
|
36
|
+
},
|
|
37
|
+
/**
|
|
38
|
+
* Size of the icon to show. Only use if not using within an icon slot.
|
|
39
|
+
* Defaults to 20px which is the Nextcloud icon size for all icon slots.
|
|
40
|
+
* @default 20
|
|
41
|
+
*/
|
|
42
|
+
size: {
|
|
43
|
+
type: [Number, String],
|
|
44
|
+
default: 20,
|
|
45
|
+
validator: (value) => typeof value === "number" || value === "auto"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
computed: {
|
|
49
|
+
/**
|
|
50
|
+
* Icon size used in CSS
|
|
51
|
+
*/
|
|
52
|
+
iconSize() {
|
|
53
|
+
return typeof this.size === "number" ? `${this.size}px` : this.size;
|
|
54
|
+
},
|
|
55
|
+
cleanSvg() {
|
|
56
|
+
if (!this.svg || this.path) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const svg = DOMPurify.sanitize(this.svg);
|
|
60
|
+
const svgDocument = new DOMParser().parseFromString(svg, "image/svg+xml");
|
|
61
|
+
if (svgDocument.querySelector("parsererror")) {
|
|
62
|
+
warn("SVG is not valid");
|
|
63
|
+
return "";
|
|
64
|
+
}
|
|
65
|
+
if (svgDocument.documentElement.id) {
|
|
66
|
+
svgDocument.documentElement.removeAttribute("id");
|
|
67
|
+
}
|
|
68
|
+
return svgDocument.documentElement.outerHTML;
|
|
69
|
+
},
|
|
70
|
+
attributes() {
|
|
71
|
+
return {
|
|
72
|
+
class: ["icon-vue", { "icon-vue--inline": this.inline }],
|
|
73
|
+
role: "img",
|
|
74
|
+
"aria-hidden": !this.name ? true : void 0,
|
|
75
|
+
"aria-label": this.name || void 0
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
const __injectCSSVars__ = () => {
|
|
81
|
+
useCssVars((_ctx) => ({
|
|
82
|
+
"69f4fa15": _ctx.iconSize
|
|
83
|
+
}));
|
|
84
|
+
};
|
|
85
|
+
const __setup__ = _sfc_main.setup;
|
|
86
|
+
_sfc_main.setup = __setup__ ? (props, ctx) => {
|
|
87
|
+
__injectCSSVars__();
|
|
88
|
+
return __setup__(props, ctx);
|
|
89
|
+
} : __injectCSSVars__;
|
|
90
|
+
const _hoisted_1 = {
|
|
91
|
+
viewBox: "0 0 24 24",
|
|
92
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
93
|
+
};
|
|
94
|
+
const _hoisted_2 = ["d"];
|
|
95
|
+
const _hoisted_3 = ["innerHTML"];
|
|
96
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
97
|
+
return !$options.cleanSvg ? (openBlock(), createElementBlock("span", normalizeProps(mergeProps({ key: 0 }, $options.attributes)), [
|
|
98
|
+
(openBlock(), createElementBlock("svg", _hoisted_1, [
|
|
99
|
+
createElementVNode("path", { d: $props.path }, null, 8, _hoisted_2)
|
|
100
|
+
]))
|
|
101
|
+
], 16)) : (openBlock(), createElementBlock("span", mergeProps({ key: 1 }, $options.attributes, { innerHTML: $options.cleanSvg }), null, 16, _hoisted_3));
|
|
102
|
+
}
|
|
103
|
+
const NcIconSvgWrapper = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-fe28ab32"]]);
|
|
104
|
+
export {
|
|
105
|
+
NcIconSvgWrapper as N
|
|
106
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcIconSvgWrapper-BYTrkA66.mjs","sources":["../../src/components/NcIconSvgWrapper/NcIconSvgWrapper.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n### Description\n\nRender raw SVG string icons.\n\n### Usage within `icon`-slot\n\n```vue\n<template>\n\t<div class=\"grid\">\n\t\t<NcButton aria-label=\"Close\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :svg=\"closeSvg\" name=\"Close\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t\t<NcButton aria-label=\"Settings\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :svg=\"cogSvg\" name=\"Cog\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t\t<NcButton aria-label=\"Add\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :svg=\"plusSvg\" name=\"Plus\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t\t<NcButton aria-label=\"Send\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :path=\"mdiSend\" name=\"Send\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t\t<NcButton aria-label=\"Star\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :path=\"mdiStar\" name=\"Star\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</div>\n</template>\n\n<script>\nimport closeSvg from '@mdi/svg/svg/close.svg?raw'\nimport cogSvg from '@mdi/svg/svg/cog.svg?raw'\nimport plusSvg from '@mdi/svg/svg/plus.svg?raw'\nimport { mdiSend } from '@mdi/js'\nimport { mdiStar } from '@mdi/js'\n\nexport default {\n\tsetup() {\n\t\t// This icons are static data, so you do not need to put them into `data` which will make them reactive\n\t\treturn {\n\t\t\tcloseSvg,\n\t\t\tcogSvg,\n\t\t\tplusSvg,\n\t\t\tmdiSend,\n\t\t\tmdiStar,\n\t\t}\n\t},\n}\n</script>\n\n<style>\n.grid {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(5, max-content);\n\tgap: 10px;\n}\n</style>\n```\n\n### Inline usage inside text\n\n```vue\n<template>\n\t<p>\n\t\tThis is my <NcIconSvgWrapper inline :path=\"mdiStar\" /> Favorite\n\t</p>\n</template>\n<script>\nimport { mdiStar } from '@mdi/js'\n\nexport default {\n\tsetup() {\n\t\treturn {\n\t\t\tmdiStar,\n\t\t}\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<span v-if=\"!cleanSvg\"\n\t\tv-bind=\"attributes\">\n\t\t<svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t<path :d=\"path\" />\n\t\t</svg>\n\t</span>\n\t<span v-else\n\t\tv-bind=\"attributes\"\n\t\tv-html=\"cleanSvg\" /> <!-- eslint-disable-line vue/no-v-html -->\n</template>\n\n<script>\nimport { warn } from 'vue'\nimport DOMPurify from 'dompurify'\n\nexport default {\n\tname: 'NcIconSvgWrapper',\n\n\tprops: {\n\t\t/**\n\t\t * Set if the icon should be used as inline content e.g. within text.\n\t\t * By default the icon is made a block element for use inside `icon`-slots.\n\t\t */\n\t\tinline: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Raw SVG string to render\n\t\t */\n\t\tsvg: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Label of the icon, used in aria-label\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 * Raw SVG path to render. Takes precedence over the SVG string in the `svg` prop.\n\t\t */\n\t\tpath: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Size of the icon to show. Only use if not using within an icon slot.\n\t\t * Defaults to 20px which is the Nextcloud icon size for all icon slots.\n\t\t * @default 20\n\t\t */\n\t\tsize: {\n\t\t\ttype: [Number, String],\n\t\t\tdefault: 20,\n\t\t\tvalidator: (value) => typeof value === 'number' || value === 'auto',\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Icon size used in CSS\n\t\t */\n\t\ticonSize() {\n\t\t\treturn typeof this.size === 'number' ? `${this.size}px` : this.size\n\t\t},\n\n\t\tcleanSvg() {\n\t\t\tif (!this.svg || this.path) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst svg = DOMPurify.sanitize(this.svg)\n\n\t\t\tconst svgDocument = new DOMParser().parseFromString(svg, 'image/svg+xml')\n\n\t\t\tif (svgDocument.querySelector('parsererror')) {\n\t\t\t\twarn('SVG is not valid')\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\tif (svgDocument.documentElement.id) {\n\t\t\t\tsvgDocument.documentElement.removeAttribute('id')\n\t\t\t}\n\n\t\t\treturn svgDocument.documentElement.outerHTML\n\t\t},\n\t\tattributes() {\n\t\t\treturn {\n\t\t\t\tclass: ['icon-vue', { 'icon-vue--inline': this.inline }],\n\t\t\t\trole: 'img',\n\t\t\t\t'aria-hidden': !this.name ? true : undefined,\n\t\t\t\t'aria-label': this.name || undefined,\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.icon-vue {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tmin-width: var(--default-clickable-area);\n\tmin-height: var(--default-clickable-area);\n\topacity: 1;\n\n\t&--inline {\n\t\tdisplay: inline-flex;\n\t\tmin-width: fit-content;\n\t\tmin-height: fit-content;\n\t\tvertical-align: text-bottom;\n\t}\n\n\t&:deep(svg) {\n\t\tfill: currentColor;\n\t\twidth: v-bind('iconSize');\n\t\theight: v-bind('iconSize');\n\t\tmax-width: v-bind('iconSize');\n\t\tmax-height: v-bind('iconSize');\n\t}\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","_normalizeProps","_mergeProps","_createElementVNode"],"mappings":";;;AA+GA,MAAK,YAAU;AAAA,EACd,MAAM;AAAA,EAEN,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKN,QAAQ;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKD,KAAK;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKD,MAAM;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,MAAM;AAAA,MACL,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT,WAAW,CAAC,UAAU,OAAO,UAAU,YAAY,UAAU;AAAA,IAC7D;AAAA,EACD;AAAA,EAED,UAAU;AAAA;AAAA;AAAA;AAAA,IAIT,WAAW;AACV,aAAO,OAAO,KAAK,SAAS,WAAW,GAAG,KAAK,IAAI,OAAO,KAAK;AAAA,IAC/D;AAAA,IAED,WAAW;AACV,UAAI,CAAC,KAAK,OAAO,KAAK,MAAM;AAC3B;AAAA,MACD;AAEA,YAAM,MAAM,UAAU,SAAS,KAAK,GAAG;AAEvC,YAAM,cAAc,IAAI,UAAW,EAAC,gBAAgB,KAAK,eAAe;AAExE,UAAI,YAAY,cAAc,aAAa,GAAG;AAC7C,aAAK,kBAAkB;AACvB,eAAO;AAAA,MACR;AAEA,UAAI,YAAY,gBAAgB,IAAI;AACnC,oBAAY,gBAAgB,gBAAgB,IAAI;AAAA,MACjD;AAEA,aAAO,YAAY,gBAAgB;AAAA,IACnC;AAAA,IACD,aAAa;AACZ,aAAO;AAAA,QACN,OAAO,CAAC,YAAY,EAAE,oBAAoB,KAAK,OAAO,CAAC;AAAA,QACvD,MAAM;AAAA,QACN,eAAe,CAAC,KAAK,OAAO,OAAO;AAAA,QACnC,cAAc,KAAK,QAAQ;AAAA,MAC5B;AAAA,IACA;AAAA,EACD;AACF;;;;;;;;;;;;EAnGO,SAAQ;AAAA,EAAY,OAAM;;AAlGjC,MAAA,aAAA,CAAA,GAAA;AAAA,MAAA,aAAA,CAAA,WAAA;;UAgGc,SAAQ,YAArBA,aAAAC,mBAKO,QArGRC,eAAAC,WAAA,EAAA,KAAA,KAiGU,SAAU,UAAA,CAAA,GAAA;AAAA,KAClBH,aAAAC,mBAEM,OAFN,YAEM;AAAA,MADLG,mBAAkB,QAAX,EAAA,GAAG,OAAA,QAnGb,MAAA,GAAA,UAAA;AAAA;0BAsGCH,mBAEqB,QAFrBE,WAEqB,EAxGtB,KAAA,KAuGU,qBACR,EAAA,WAAQ,SAAA,SAxGV,CAAA,GAAA,MAAA,IAAA,UAAA;;;"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import '../assets/NcInputConfirmCancel-D46m8Alt.css';
|
|
2
|
+
import { N as NcButton } from "./NcButton-QmfEsvXC.mjs";
|
|
3
|
+
import { r as register, l as t12, a as t } from "./_l10n-BEP_UzXI.mjs";
|
|
4
|
+
import { A as ArrowRight } from "./ArrowRight-DQT24Cb-.mjs";
|
|
5
|
+
import { C as Close } from "./Close-idsVwGrC.mjs";
|
|
6
|
+
import { resolveComponent, createElementBlock, openBlock, createElementVNode, withModifiers, withKeys, withDirectives, createVNode, vModelText, withCtx } from "vue";
|
|
7
|
+
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
8
|
+
register(t12);
|
|
9
|
+
const _sfc_main = {
|
|
10
|
+
name: "NcInputConfirmCancel",
|
|
11
|
+
components: {
|
|
12
|
+
NcButton,
|
|
13
|
+
ArrowRight,
|
|
14
|
+
Close
|
|
15
|
+
},
|
|
16
|
+
props: {
|
|
17
|
+
/**
|
|
18
|
+
* If this element is used on a primary element set to true for primary styling.
|
|
19
|
+
*/
|
|
20
|
+
primary: {
|
|
21
|
+
default: false,
|
|
22
|
+
type: Boolean
|
|
23
|
+
},
|
|
24
|
+
placeholder: {
|
|
25
|
+
default: "",
|
|
26
|
+
type: String
|
|
27
|
+
},
|
|
28
|
+
modelValue: {
|
|
29
|
+
default: "",
|
|
30
|
+
type: String
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
emits: [
|
|
34
|
+
"cancel",
|
|
35
|
+
"confirm",
|
|
36
|
+
"update:modelValue"
|
|
37
|
+
],
|
|
38
|
+
data() {
|
|
39
|
+
return {
|
|
40
|
+
labelConfirm: t("Confirm changes"),
|
|
41
|
+
labelCancel: t("Cancel changes")
|
|
42
|
+
};
|
|
43
|
+
},
|
|
44
|
+
computed: {
|
|
45
|
+
valueModel: {
|
|
46
|
+
get() {
|
|
47
|
+
return this.modelValue;
|
|
48
|
+
},
|
|
49
|
+
set(newValue) {
|
|
50
|
+
this.$emit("update:modelValue", newValue);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
methods: {
|
|
55
|
+
confirm() {
|
|
56
|
+
this.$emit("confirm");
|
|
57
|
+
},
|
|
58
|
+
cancel() {
|
|
59
|
+
this.$emit("cancel");
|
|
60
|
+
},
|
|
61
|
+
focusInput() {
|
|
62
|
+
this.$refs.input.focus();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
const _hoisted_1 = { class: "app-navigation-input-confirm" };
|
|
67
|
+
const _hoisted_2 = ["placeholder"];
|
|
68
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
69
|
+
const _component_ArrowRight = resolveComponent("ArrowRight");
|
|
70
|
+
const _component_NcButton = resolveComponent("NcButton");
|
|
71
|
+
const _component_Close = resolveComponent("Close");
|
|
72
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
73
|
+
createElementVNode("form", {
|
|
74
|
+
onSubmit: _cache[1] || (_cache[1] = withModifiers((...args) => $options.confirm && $options.confirm(...args), ["prevent"])),
|
|
75
|
+
onKeydown: _cache[2] || (_cache[2] = withKeys(withModifiers((...args) => $options.cancel && $options.cancel(...args), ["exact", "stop", "prevent"]), ["esc"])),
|
|
76
|
+
onClick: _cache[3] || (_cache[3] = withModifiers(() => {
|
|
77
|
+
}, ["stop", "prevent"]))
|
|
78
|
+
}, [
|
|
79
|
+
withDirectives(createElementVNode("input", {
|
|
80
|
+
ref: "input",
|
|
81
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $options.valueModel = $event),
|
|
82
|
+
type: "text",
|
|
83
|
+
class: "app-navigation-input-confirm__input",
|
|
84
|
+
placeholder: $props.placeholder
|
|
85
|
+
}, null, 8, _hoisted_2), [
|
|
86
|
+
[vModelText, $options.valueModel]
|
|
87
|
+
]),
|
|
88
|
+
createVNode(_component_NcButton, {
|
|
89
|
+
"native-type": "submit",
|
|
90
|
+
type: "primary",
|
|
91
|
+
"aria-label": $data.labelConfirm,
|
|
92
|
+
onClick: withModifiers($options.confirm, ["stop", "prevent"])
|
|
93
|
+
}, {
|
|
94
|
+
icon: withCtx(() => [
|
|
95
|
+
createVNode(_component_ArrowRight, { size: 20 })
|
|
96
|
+
]),
|
|
97
|
+
_: 1
|
|
98
|
+
}, 8, ["aria-label", "onClick"]),
|
|
99
|
+
createVNode(_component_NcButton, {
|
|
100
|
+
"native-type": "reset",
|
|
101
|
+
type: $props.primary ? "primary" : "tertiary",
|
|
102
|
+
"aria-label": $data.labelCancel,
|
|
103
|
+
onClick: withModifiers($options.cancel, ["stop", "prevent"])
|
|
104
|
+
}, {
|
|
105
|
+
icon: withCtx(() => [
|
|
106
|
+
createVNode(_component_Close, { size: 20 })
|
|
107
|
+
]),
|
|
108
|
+
_: 1
|
|
109
|
+
}, 8, ["type", "aria-label", "onClick"])
|
|
110
|
+
], 32)
|
|
111
|
+
]);
|
|
112
|
+
}
|
|
113
|
+
const NcInputConfirmCancel = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-cd55dad8"]]);
|
|
114
|
+
export {
|
|
115
|
+
NcInputConfirmCancel as N
|
|
116
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcInputConfirmCancel-xnrPAGac.mjs","sources":["../../src/components/NcAppNavigationItem/NcInputConfirmCancel.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n# Usage\n\n```\n<NcInputConfirmCancel @confirm=\"alert('confirm')\" @cancel=\"alert('cancel')\" />\n```\n</docs>\n<template>\n\t<div class=\"app-navigation-input-confirm\">\n\t\t<form @submit.prevent=\"confirm\"\n\t\t\t@keydown.esc.exact.stop.prevent=\"cancel\"\n\t\t\t@click.stop.prevent>\n\t\t\t<input ref=\"input\"\n\t\t\t\tv-model=\"valueModel\"\n\t\t\t\ttype=\"text\"\n\t\t\t\tclass=\"app-navigation-input-confirm__input\"\n\t\t\t\t:placeholder=\"placeholder\">\n\n\t\t\t<NcButton native-type=\"submit\"\n\t\t\t\ttype=\"primary\"\n\t\t\t\t:aria-label=\"labelConfirm\"\n\t\t\t\t@click.stop.prevent=\"confirm\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\n\t\t\t<NcButton native-type=\"reset\"\n\t\t\t\t:type=\"primary ? 'primary' : 'tertiary'\"\n\t\t\t\t:aria-label=\"labelCancel\"\n\t\t\t\t@click.stop.prevent=\"cancel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Close :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t</form>\n\t</div>\n</template>\n<script>\nimport NcButton from '../NcButton/index.ts'\nimport { t } from '../../l10n.js'\n\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\nimport Close from 'vue-material-design-icons/Close.vue'\n\nexport default {\n\tname: 'NcInputConfirmCancel',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tArrowRight,\n\t\tClose,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * If this element is used on a primary element set to true for primary styling.\n\t\t */\n\t\tprimary: {\n\t\t\tdefault: false,\n\t\t\ttype: Boolean,\n\t\t},\n\n\t\tplaceholder: {\n\t\t\tdefault: '',\n\t\t\ttype: String,\n\t\t},\n\n\t\tmodelValue: {\n\t\t\tdefault: '',\n\t\t\ttype: String,\n\t\t},\n\t},\n\n\temits: [\n\t\t'cancel',\n\t\t'confirm',\n\t\t'update:modelValue',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tlabelConfirm: t('Confirm changes'),\n\t\t\tlabelCancel: t('Cancel changes'),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tvalueModel: {\n\t\t\tget() { return this.modelValue },\n\t\t\tset(newValue) {\n\t\t\t\tthis.$emit('update:modelValue', newValue)\n\t\t\t},\n\t\t},\n\t},\n\n\tmethods: {\n\t\tconfirm() {\n\t\t\tthis.$emit('confirm')\n\t\t},\n\t\tcancel() {\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t\tfocusInput() {\n\t\t\tthis.$refs.input.focus()\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n$input-height: 34px;\n$input-padding: 7px;\n$input-margin: 5px;\n\n.app-navigation-input-confirm {\n\tflex: 1 0 100%;\n\twidth: 100%;\n\n\tform {\n\t\tdisplay: flex;\n\t}\n\n\t&__input {\n\t\theight: $input-height;\n\t\tflex: 1 1 100%;\n\t\tfont-size: 100% !important;\n\t\tmargin: $input-margin !important;\n\t\tmargin-left: -1px - $input-padding !important;\n\t\tpadding: $input-padding !important;\n\n\t\t&:active,\n\t\t&:focus,\n\t\t&:hover {\n\t\t\toutline: none;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\t}\n}\n</style>\n"],"names":["_openBlock","_createElementBlock","_createElementVNode","_withModifiers","_withKeys","_createVNode"],"mappings":";;;;;;;AAkDA,MAAK,YAAU;AAAA,EACd,MAAM;AAAA,EAEN,YAAY;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIN,SAAS;AAAA,MACR,SAAS;AAAA,MACT,MAAM;AAAA,IACN;AAAA,IAED,aAAa;AAAA,MACZ,SAAS;AAAA,MACT,MAAM;AAAA,IACN;AAAA,IAED,YAAY;AAAA,MACX,SAAS;AAAA,MACT,MAAM;AAAA,IACN;AAAA,EACD;AAAA,EAED,OAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAED,OAAO;AACN,WAAO;AAAA,MACN,cAAc,EAAE,iBAAiB;AAAA,MACjC,aAAa,EAAE,gBAAgB;AAAA,IAChC;AAAA,EACA;AAAA,EAED,UAAU;AAAA,IACT,YAAY;AAAA,MACX,MAAM;AAAE,eAAO,KAAK;AAAA,MAAY;AAAA,MAChC,IAAI,UAAU;AACb,aAAK,MAAM,qBAAqB,QAAQ;AAAA,MACxC;AAAA,IACD;AAAA,EACD;AAAA,EAED,SAAS;AAAA,IACR,UAAU;AACT,WAAK,MAAM,SAAS;AAAA,IACpB;AAAA,IACD,SAAS;AACR,WAAK,MAAM,QAAQ;AAAA,IACnB;AAAA,IACD,aAAa;AACZ,WAAK,MAAM,MAAM,MAAK;AAAA,IACtB;AAAA,EACD;AACF;AAnGM,MAAA,aAAA,EAAA,OAAM,+BAA8B;AAb1C,MAAA,aAAA,CAAA,aAAA;;;;;AAaC,SAAAA,UAAA,GAAAC,mBA4BM,OA5BN,YA4BM;AAAA,IA3BLC,mBA0BO,QAAA;AAAA,MA1BA,UAAM,OAAA,CAAA,MAAA,OAAA,CAAA,IAdfC,2BAcyB,SAAO,WAAA,SAAA,QAAA,GAAA,IAAA,GAAA,CAAA,SAAA,CAAA;AAAA,MAC5B,WAAO,OAAA,CAAA,MAAA,OAAA,CAAA,IAfXC,SAAAD,cAAA,IAAA,SAeoC,SAAM,UAAA,SAAA,OAAA,GAAA,IAAA,GAAA,CAAA,SAAA,QAAA,SAAA,CAAA,GAAA,CAAA,KAAA,CAAA;AAAA,MACtC,SAAK,OAAA,CAAA,MAAA,OAAA,CAAA,IAhBTA,cAgBG,MAAmB;AAAA,MAAA,GAAA,CAAA,QAAA,SAAA,CAAA;AAAA;qBACnBD,mBAI4B,SAAA;AAAA,QAJrB,KAAI;AAAA,QAjBd,uBAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAkBa,SAAU,aAAA;AAAA,QACnB,MAAK;AAAA,QACL,OAAM;AAAA,QACL,aAAa,OAAW;AAAA,MArB7B,GAAA,MAAA,GAAA,UAAA,GAAA;AAAA,qBAkBa,SAAU,UAAA;AAAA;MAKpBG,YAOW,qBAAA;AAAA,QAPD,eAAY;AAAA,QACrB,MAAK;AAAA,QACJ,cAAY,MAAY;AAAA,QACxB,SA1BLF,cA0ByB,SAAO,SAAA,CAAA,QAAA,SAAA,CAAA;AAAA;QACjB,cACV,MAAyB;AAAA,UAAzBE,YAAyB,uBAAA,EAAZ,MAAM,GAAE,CAAA;AAAA;QA5B1B,GAAA;AAAA;MAgCGA,YAOW,qBAAA;AAAA,QAPD,eAAY;AAAA,QACpB,MAAM,OAAO,UAAA,YAAA;AAAA,QACb,cAAY,MAAW;AAAA,QACvB,SAnCLF,cAmCyB,SAAM,QAAA,CAAA,QAAA,SAAA,CAAA;AAAA;QAChB,cACV,MAAoB;AAAA,UAApBE,YAAoB,kBAAA,EAAZ,MAAM,GAAE,CAAA;AAAA;QArCrB,GAAA;AAAA;;;;;"}
|