@nextcloud/vue 9.0.0-alpha.6 → 9.0.0-alpha.8
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 +376 -149
- package/README.md +69 -66
- package/dist/assets/{NcActionButton-BLoWchS5.css → NcActionButton-d8aZCq9u.css} +19 -16
- package/dist/assets/{NcActionCaption-B7FZTc3Y.css → NcActionCaption-DnG2OyWa.css} +4 -4
- package/dist/assets/{NcActionCheckbox-CoQEhC0c.css → NcActionCheckbox-tMIOGziy.css} +18 -17
- package/dist/assets/{NcActionInput-BEvIPQv2.css → NcActionInput-C-rQsTEA.css} +71 -65
- package/dist/assets/{NcActionLink-Dxv-rmRR.css → NcActionLink-jSPFFKV8.css} +15 -12
- package/dist/assets/{NcActionRadio-CsMcYeMT.css → NcActionRadio-xdrmoEIq.css} +19 -18
- package/dist/assets/{NcActionRouter-CflTO8Z-.css → NcActionRouter-qNNqBZab.css} +18 -15
- package/dist/assets/{NcActionText-CV2sRLti.css → NcActionText-0XNfku_2.css} +20 -17
- package/dist/assets/{NcActionTextEditable-Nufxk13g.css → NcActionTextEditable-ZlNtR_B_.css} +70 -64
- package/dist/assets/{NcActions-P5DOkDHr.css → NcActions-D7gPHaUE.css} +12 -15
- package/dist/assets/{NcAppContent-CyHAUPNL.css → NcAppContent-CLu_1q4O.css} +24 -24
- package/dist/assets/{NcAppNavigation-B21SNH2o.css → NcAppNavigation-BXItV5BV.css} +13 -13
- package/dist/assets/{NcAppNavigationCaption-Ddf7LHGR.css → NcAppNavigationCaption-B6mZd0E3.css} +9 -8
- package/dist/assets/{NcAppNavigationItem-OPiz-90P.css → NcAppNavigationItem-aVy0uQwf.css} +46 -39
- package/dist/assets/{NcAppNavigationNew-R0QcGqvG.css → NcAppNavigationNew-Ba3wWpcY.css} +3 -3
- package/dist/assets/{NcAppNavigationNewItem-BoSjpr5m.css → NcAppNavigationNewItem-rCrG0Uuo.css} +44 -37
- package/dist/assets/{NcAppNavigationSearch-C5RevjgZ.css → NcAppNavigationSearch-BAzhDRd7.css} +6 -6
- package/dist/assets/NcAppNavigationSettings-BDc6Mtek.css +29 -0
- package/dist/assets/{NcAppNavigationToggle-D2c7IdEL.css → NcAppNavigationToggle-DnTKNSH7.css} +3 -3
- package/dist/assets/{NcAppSettingsDialog-B6Pliptg.css → NcAppSettingsDialog-DZfD_UEa.css} +11 -11
- package/dist/assets/{NcAppSidebar-DJR5EHRN.css → NcAppSidebar-GFQ62pY2.css} +61 -61
- package/dist/assets/{NcAvatar-0pU8ivmq.css → NcAvatar-DUKfNDGL.css} +27 -27
- package/dist/assets/NcBlurHash-7aGtE-_T.css +8 -0
- package/dist/assets/{NcBreadcrumb-10d4k_Pc.css → NcBreadcrumb-CV3DgRKn.css} +15 -15
- package/dist/assets/{NcBreadcrumbs-aYVMDayQ.css → NcBreadcrumbs-D2wff82k.css} +6 -6
- package/dist/assets/{NcButton-DoYn-HfJ.css → NcButton-wmjlEdLP.css} +48 -49
- package/dist/assets/{NcCheckboxRadioSwitch-CG-8Isv_.css → NcCheckboxRadioSwitch-uwXbP_jb.css} +42 -42
- package/dist/assets/{NcChip-JjMdjcjN.css → NcChip-CKtzzrlA.css} +9 -9
- package/dist/assets/{NcCollectionList-B4azFVAf.css → NcCollectionList-DTJgOfCk.css} +29 -29
- package/dist/assets/{NcColorPicker-B4Vqq3HN.css → NcColorPicker-Clz7MjCA.css} +29 -31
- package/dist/assets/{NcContent-CQc_dM2n.css → NcContent-aXaYSfjS.css} +10 -10
- package/dist/assets/{NcDashboardWidget-Hc2DAw3Y.css → NcDashboardWidget-xV4o6Cen.css} +14 -15
- package/dist/assets/NcDateTimePicker-AIJmp5dC.css +81 -0
- package/dist/assets/NcDateTimePickerNative-CdHLvH4A.css +60 -0
- package/dist/assets/{NcDialog-DG8bAh01.css → NcDialog-Dkeikssh.css} +15 -15
- package/dist/assets/{NcEllipsisedOption-CTvngv1F.css → NcEllipsisedOption-D-IsjXWc.css} +5 -5
- package/dist/assets/{NcEmojiPicker-BDp_Jc8K.css → NcEmojiPicker-DnMU8iEd.css} +91 -69
- package/dist/assets/{NcEmptyContent-C-nruaFh.css → NcEmptyContent-D1O466rM.css} +9 -9
- package/dist/assets/{NcHeaderButton-8c2zDKtV.css → NcHeaderButton-BPIasMkw.css} +8 -7
- package/dist/assets/{NcHeaderMenu-CDlSXB2d.css → NcHeaderMenu-ZmtqwEYA.css} +12 -11
- package/dist/assets/{NcInputConfirmCancel-DBjIHKvN.css → NcInputConfirmCancel-9YyvRYjw.css} +6 -6
- package/dist/assets/{NcInputField-CthOpVGS.css → NcInputField-B8J2uFD4.css} +32 -32
- package/dist/assets/{NcListItem-oz15CnUw.css → NcListItem-Byw-ayOI.css} +44 -44
- package/dist/assets/{NcListItemIcon-d5-l-ZB1.css → NcListItemIcon-Bnr-Z-SO.css} +14 -14
- package/dist/assets/{NcMentionBubble-C6t8od-_.css → NcMentionBubble-BL05HUeF.css} +12 -13
- package/dist/assets/{NcPasswordField-By-kPRJC.css → NcPasswordField-z9gbKnov.css} +2 -2
- package/dist/assets/{NcPopover-BGWT8K0v.css → NcPopover-ChETNAVH.css} +16 -5
- package/dist/assets/{NcRelatedResourcesPanel-CrarpPeQ.css → NcRelatedResourcesPanel-DXfywiqL.css} +23 -23
- package/dist/assets/{NcRichContenteditable-heb9EQV3.css → NcRichContenteditable-Bxi-Ki0j.css} +41 -39
- package/dist/assets/NcRichText-Dvt8jvWN.css +326 -0
- package/dist/assets/{NcSelect-EIXtZSVn.css → NcSelect-B6DUjUdl.css} +2 -2
- package/dist/assets/{NcSettingsInputText-C3j73xA0.css → NcSettingsInputText-B-V6Y4MD.css} +7 -7
- package/dist/assets/{NcSettingsSelectGroup-CGfaysRv.css → NcSettingsSelectGroup-DZcNr_Dq.css} +2 -2
- package/dist/assets/{NcTextArea-CUPKm8vZ.css → NcTextArea-DHr9DPOJ.css} +20 -20
- package/dist/assets/{NcUserBubble-DE3IWeZN.css → NcUserBubble-tSs2XTDQ.css} +11 -11
- package/dist/assets/{index-BHBrLd2w.css → index-Du_FXiPy.css} +61 -61
- package/dist/assets/{referencePickerModal-CZYRGXDd.css → referencePickerModal-CkGgDb19.css} +46 -46
- package/dist/chunks/{AlertCircleOutline-DoHidQlr.mjs → AlertCircleOutline-DVzpKQVu.mjs} +2 -1
- package/dist/chunks/{AlertCircleOutline-DoHidQlr.mjs.map → AlertCircleOutline-DVzpKQVu.mjs.map} +1 -1
- package/dist/chunks/{ArrowLeft-DCZ3CkUw.mjs → ArrowLeft-CanHG70H.mjs} +2 -1
- package/dist/chunks/{ArrowLeft-DCZ3CkUw.mjs.map → ArrowLeft-CanHG70H.mjs.map} +1 -1
- package/dist/chunks/{ArrowRight-CCodNfTT.mjs → ArrowRight-DQT24Cb-.mjs} +2 -1
- package/dist/chunks/{ArrowRight-CCodNfTT.mjs.map → ArrowRight-DQT24Cb-.mjs.map} +1 -1
- package/dist/chunks/{Check-DDuGOKMw.mjs → Check-5i4xKnkl.mjs} +2 -1
- package/dist/chunks/{Check-DDuGOKMw.mjs.map → Check-5i4xKnkl.mjs.map} +1 -1
- package/dist/chunks/{ChevronDown-C6gc637b.mjs → ChevronDown-FiGpp0KT.mjs} +2 -1
- package/dist/chunks/{ChevronDown-C6gc637b.mjs.map → ChevronDown-FiGpp0KT.mjs.map} +1 -1
- package/dist/chunks/{ChevronLeft-uQipmOWv.mjs → ChevronLeft-FfC-tiIS.mjs} +2 -1
- package/dist/chunks/{ChevronLeft-uQipmOWv.mjs.map → ChevronLeft-FfC-tiIS.mjs.map} +1 -1
- package/dist/chunks/{ChevronRight-D4KvRLyO.mjs → ChevronRight-LvtA5_hq.mjs} +2 -1
- package/dist/chunks/{ChevronRight-D4KvRLyO.mjs.map → ChevronRight-LvtA5_hq.mjs.map} +1 -1
- package/dist/chunks/{ChevronUp-ChH8oB7p.mjs → ChevronUp-DPXFp1ss.mjs} +2 -1
- package/dist/chunks/{ChevronUp-ChH8oB7p.mjs.map → ChevronUp-DPXFp1ss.mjs.map} +1 -1
- package/dist/chunks/{Close-9bmgDVZE.mjs → Close-D6ngJ4t9.mjs} +4 -3
- package/dist/chunks/{Close-9bmgDVZE.mjs.map → Close-D6ngJ4t9.mjs.map} +1 -1
- package/dist/chunks/{DotsHorizontal-bCAjz9wZ.mjs → DotsHorizontal-AMVAlTNH.mjs} +2 -1
- package/dist/chunks/{DotsHorizontal-bCAjz9wZ.mjs.map → DotsHorizontal-AMVAlTNH.mjs.map} +1 -1
- package/dist/chunks/{NcActionButton-B3JQywgv.mjs → NcActionButton-BdQ_qmvW.mjs} +14 -12
- package/dist/chunks/{NcActionButton-B3JQywgv.mjs.map → NcActionButton-BdQ_qmvW.mjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-DtHcJpaH.mjs → NcActionButtonGroup-TitZerDl.mjs} +8 -6
- package/dist/chunks/NcActionButtonGroup-TitZerDl.mjs.map +1 -0
- package/dist/chunks/{NcActionCaption-BeVuTBKE.mjs → NcActionCaption-Fumfjzxj.mjs} +6 -4
- package/dist/chunks/NcActionCaption-Fumfjzxj.mjs.map +1 -0
- package/dist/chunks/{NcActionCheckbox-DdLcVat_.mjs → NcActionCheckbox-CUYbo1rw.mjs} +8 -6
- package/dist/chunks/NcActionCheckbox-CUYbo1rw.mjs.map +1 -0
- package/dist/chunks/{NcActionInput-CxPmTwTo.mjs → NcActionInput-TI648L3V.mjs} +13 -12
- package/dist/chunks/NcActionInput-TI648L3V.mjs.map +1 -0
- package/dist/chunks/{NcActionLink-9TfevQgn.mjs → NcActionLink-cQlsviu9.mjs} +7 -5
- package/dist/chunks/NcActionLink-cQlsviu9.mjs.map +1 -0
- package/dist/chunks/{NcActionRadio-CV0AtyQD.mjs → NcActionRadio-tORL1qPt.mjs} +25 -17
- package/dist/chunks/NcActionRadio-tORL1qPt.mjs.map +1 -0
- package/dist/chunks/{NcActionRouter-RKft3XO3.mjs → NcActionRouter-Bw1tpEZt.mjs} +7 -5
- package/dist/chunks/NcActionRouter-Bw1tpEZt.mjs.map +1 -0
- package/dist/chunks/{NcActionSeparator-DKFXmIJ5.mjs → NcActionSeparator-Doekl1NX.mjs} +3 -2
- package/dist/chunks/{NcActionSeparator-DKFXmIJ5.mjs.map → NcActionSeparator-Doekl1NX.mjs.map} +1 -1
- package/dist/chunks/{NcActionText-ChktUmp9.mjs → NcActionText-VLCHOiIy.mjs} +7 -5
- package/dist/chunks/NcActionText-VLCHOiIy.mjs.map +1 -0
- package/dist/chunks/{NcActionTextEditable-D3Iix8Je.mjs → NcActionTextEditable-nTbwgRy2.mjs} +25 -9
- package/dist/chunks/NcActionTextEditable-nTbwgRy2.mjs.map +1 -0
- package/dist/chunks/{NcActions-BJ703bdY.mjs → NcActions-CgKHXNbF.mjs} +58 -93
- package/dist/chunks/NcActions-CgKHXNbF.mjs.map +1 -0
- package/dist/chunks/{NcAppContent-DcqJmTNj.mjs → NcAppContent-C4gBVRQs.mjs} +79 -27
- package/dist/chunks/NcAppContent-C4gBVRQs.mjs.map +1 -0
- package/dist/chunks/{NcAppContentDetails-Ch6NJvAl.mjs → NcAppContentDetails-DsEEBJ0U.mjs} +2 -1
- package/dist/chunks/{NcAppContentDetails-Ch6NJvAl.mjs.map → NcAppContentDetails-DsEEBJ0U.mjs.map} +1 -1
- package/dist/chunks/{NcAppContentList-DGwk3AvB.mjs → NcAppContentList-DnLY_sWw.mjs} +2 -1
- package/dist/chunks/{NcAppContentList-DGwk3AvB.mjs.map → NcAppContentList-DnLY_sWw.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigation-DKl5GKDr.mjs → NcAppNavigation-DbRpHbi9.mjs} +8 -7
- package/dist/chunks/{NcAppNavigation-DKl5GKDr.mjs.map → NcAppNavigation-DbRpHbi9.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-yvL3fHpB.mjs → NcAppNavigationCaption-R_UZ7iKw.mjs} +5 -4
- package/dist/chunks/{NcAppNavigationCaption-yvL3fHpB.mjs.map → NcAppNavigationCaption-R_UZ7iKw.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationIconBullet-DXwKXzN2.mjs → NcAppNavigationIconBullet-B1kc4u65.mjs} +3 -2
- package/dist/chunks/{NcAppNavigationIconBullet-DXwKXzN2.mjs.map → NcAppNavigationIconBullet-B1kc4u65.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-Ba6kwsU9.mjs → NcAppNavigationItem-CxYtFEhV.mjs} +20 -19
- package/dist/chunks/NcAppNavigationItem-CxYtFEhV.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationList-HRNlIV27.mjs → NcAppNavigationList-DX_Yo23V.mjs} +3 -2
- package/dist/chunks/{NcAppNavigationList-HRNlIV27.mjs.map → NcAppNavigationList-DX_Yo23V.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNew-D2aD0z-u.mjs → NcAppNavigationNew-sMVo_IoL.mjs} +12 -7
- package/dist/chunks/NcAppNavigationNew-sMVo_IoL.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationNewItem-BPYFl_Xy.mjs → NcAppNavigationNewItem-CJZcL6GH.mjs} +6 -5
- package/dist/chunks/{NcAppNavigationNewItem-BPYFl_Xy.mjs.map → NcAppNavigationNewItem-CJZcL6GH.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-pTeRzg7y.mjs → NcAppNavigationSearch-Dbhh-Vtw.mjs} +8 -7
- package/dist/chunks/NcAppNavigationSearch-Dbhh-Vtw.mjs.map +1 -0
- package/dist/chunks/NcAppNavigationSettings-Bfo3EWk_.mjs +132 -0
- package/dist/chunks/NcAppNavigationSettings-Bfo3EWk_.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationSpacer-BQFYpMbq.mjs → NcAppNavigationSpacer-CzBLuQL8.mjs} +3 -2
- package/dist/chunks/{NcAppNavigationSpacer-BQFYpMbq.mjs.map → NcAppNavigationSpacer-CzBLuQL8.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-CEun9mHr.mjs → NcAppNavigationToggle-Ys-PjFo3.mjs} +10 -9
- package/dist/chunks/NcAppNavigationToggle-Ys-PjFo3.mjs.map +1 -0
- package/dist/chunks/{NcAppSettingsDialog-CQ1KFqAh.mjs → NcAppSettingsDialog-Cc-OdY9a.mjs} +6 -5
- package/dist/chunks/{NcAppSettingsDialog-CQ1KFqAh.mjs.map → NcAppSettingsDialog-Cc-OdY9a.mjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsSection-BzqBBgS2.mjs → NcAppSettingsSection-CssmXyZ0.mjs} +3 -2
- package/dist/chunks/{NcAppSettingsSection-BzqBBgS2.mjs.map → NcAppSettingsSection-CssmXyZ0.mjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-C0VSug_j.mjs → NcAppSidebar-Dgwj8O_Z.mjs} +30 -29
- package/dist/chunks/NcAppSidebar-Dgwj8O_Z.mjs.map +1 -0
- package/dist/chunks/{NcAppSidebarTab-zBqyKIgn.mjs → NcAppSidebarTab-DG51ajic.mjs} +3 -2
- package/dist/chunks/{NcAppSidebarTab-zBqyKIgn.mjs.map → NcAppSidebarTab-DG51ajic.mjs.map} +1 -1
- package/dist/chunks/{NcAvatar-CB2n3G0J.mjs → NcAvatar-CA8y4d-c.mjs} +40 -43
- package/dist/chunks/NcAvatar-CA8y4d-c.mjs.map +1 -0
- package/dist/chunks/NcBlurHash-BiFktE2N.mjs +99 -0
- package/dist/chunks/NcBlurHash-BiFktE2N.mjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-ChOkGtT6.mjs → NcBreadcrumb-DSjIxTeU.mjs} +23 -19
- package/dist/chunks/NcBreadcrumb-DSjIxTeU.mjs.map +1 -0
- package/dist/chunks/{NcBreadcrumbs-CcWv0nYL.mjs → NcBreadcrumbs-jPvP6Cmo.mjs} +12 -11
- package/dist/chunks/NcBreadcrumbs-jPvP6Cmo.mjs.map +1 -0
- package/dist/chunks/{NcButton-C3eisBbK.mjs → NcButton-BHLqKKYP.mjs} +64 -56
- package/dist/chunks/NcButton-BHLqKKYP.mjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-Zndby-mL.mjs → NcCheckboxRadioSwitch-CWU_M_ui.mjs} +25 -33
- package/dist/chunks/NcCheckboxRadioSwitch-CWU_M_ui.mjs.map +1 -0
- package/dist/chunks/{NcChip-DxejjHGT.mjs → NcChip-C3U2HYR9.mjs} +23 -62
- package/dist/chunks/NcChip-C3U2HYR9.mjs.map +1 -0
- package/dist/chunks/{NcCollectionList-DckB8BUh.mjs → NcCollectionList-BtHsipae.mjs} +10 -9
- package/dist/chunks/NcCollectionList-BtHsipae.mjs.map +1 -0
- package/dist/chunks/{NcColorPicker-Bh4f-X_s.mjs → NcColorPicker-BI-Is4nj.mjs} +16 -15
- package/dist/chunks/NcColorPicker-BI-Is4nj.mjs.map +1 -0
- package/dist/chunks/{NcContent-CfyPkDba.mjs → NcContent-BcF6f3N-.mjs} +10 -9
- package/dist/chunks/{NcContent-CfyPkDba.mjs.map → NcContent-BcF6f3N-.mjs.map} +1 -1
- package/dist/chunks/{NcCounterBubble-DIOmLH9G.mjs → NcCounterBubble-6B_JNUUS.mjs} +3 -2
- package/dist/chunks/{NcCounterBubble-DIOmLH9G.mjs.map → NcCounterBubble-6B_JNUUS.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-DC7EvOH5.mjs → NcDashboardWidget-1rVqTzgV.mjs} +10 -9
- package/dist/chunks/{NcDashboardWidget-DC7EvOH5.mjs.map → NcDashboardWidget-1rVqTzgV.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-Bmm83kUk.mjs → NcDashboardWidgetItem-7RXY5EKJ.mjs} +6 -5
- package/dist/chunks/{NcDashboardWidgetItem-Bmm83kUk.mjs.map → NcDashboardWidgetItem-7RXY5EKJ.mjs.map} +1 -1
- package/dist/chunks/NcDateTime.vue_vue_type_script_setup_true_lang-DtP-oauZ.mjs +31 -0
- package/dist/chunks/NcDateTime.vue_vue_type_script_setup_true_lang-DtP-oauZ.mjs.map +1 -0
- package/dist/chunks/NcDateTimePicker-BzfuHym4.mjs +257 -0
- package/dist/chunks/NcDateTimePicker-BzfuHym4.mjs.map +1 -0
- package/dist/chunks/{NcDateTimePickerNative-I2YJ1mqx.mjs → NcDateTimePickerNative-Dake1IML.mjs} +12 -9
- package/dist/chunks/NcDateTimePickerNative-Dake1IML.mjs.map +1 -0
- package/dist/chunks/{NcDialog-bRHxABY1.mjs → NcDialog-_pc2BPHU.mjs} +30 -20
- package/dist/chunks/NcDialog-_pc2BPHU.mjs.map +1 -0
- package/dist/chunks/{NcDialogButton.vue_vue_type_script_setup_true_lang-CBKNl2vE.mjs → NcDialogButton.vue_vue_type_script_setup_true_lang-BKrJ_xd8.mjs} +31 -29
- package/dist/chunks/NcDialogButton.vue_vue_type_script_setup_true_lang-BKrJ_xd8.mjs.map +1 -0
- package/dist/chunks/{NcEllipsisedOption-BaL7DZ1K.mjs → NcEllipsisedOption-4k07kvEr.mjs} +6 -5
- package/dist/chunks/NcEllipsisedOption-4k07kvEr.mjs.map +1 -0
- package/dist/chunks/{NcEmojiPicker-DIv_bq9B.mjs → NcEmojiPicker-CWbez_of.mjs} +74 -54
- package/dist/chunks/NcEmojiPicker-CWbez_of.mjs.map +1 -0
- package/dist/chunks/{NcEmptyContent-BoGB3vFC.mjs → NcEmptyContent-BQnIrQQn.mjs} +4 -3
- package/dist/chunks/NcEmptyContent-BQnIrQQn.mjs.map +1 -0
- package/dist/chunks/{NcGuestContent-DVqg5Bq4.mjs → NcGuestContent-iQpV7mLC.mjs} +3 -2
- package/dist/chunks/{NcGuestContent-DVqg5Bq4.mjs.map → NcGuestContent-iQpV7mLC.mjs.map} +1 -1
- package/dist/chunks/{NcHeaderButton-DagheXHN.mjs → NcHeaderButton-BsstEWtv.mjs} +10 -9
- package/dist/chunks/NcHeaderButton-BsstEWtv.mjs.map +1 -0
- package/dist/chunks/NcHeaderMenu-ZzoCwPvX.mjs +141 -0
- package/dist/chunks/NcHeaderMenu-ZzoCwPvX.mjs.map +1 -0
- package/dist/chunks/{NcHighlight-BHtRIzqk.mjs → NcHighlight-Cu4UfEEO.mjs} +11 -7
- package/dist/chunks/NcHighlight-Cu4UfEEO.mjs.map +1 -0
- package/dist/chunks/{NcIconSvgWrapper-DbL6OP85.mjs → NcIconSvgWrapper-BYTrkA66.mjs} +3 -2
- package/dist/chunks/{NcIconSvgWrapper-DbL6OP85.mjs.map → NcIconSvgWrapper-BYTrkA66.mjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-CHdSVEcQ.mjs → NcInputConfirmCancel-CX56m05a.mjs} +21 -20
- package/dist/chunks/NcInputConfirmCancel-CX56m05a.mjs.map +1 -0
- package/dist/chunks/{NcInputField-BMtTTtl5.mjs → NcInputField-DdZlDVwQ.mjs} +10 -9
- package/dist/chunks/NcInputField-DdZlDVwQ.mjs.map +1 -0
- package/dist/chunks/{NcListItem-D04-5zRU.mjs → NcListItem-DF8Yv05m.mjs} +6 -5
- package/dist/chunks/NcListItem-DF8Yv05m.mjs.map +1 -0
- package/dist/chunks/{NcListItemIcon-DcBo1GLm.mjs → NcListItemIcon-nzw_x2Q5.mjs} +8 -9
- package/dist/chunks/{NcListItemIcon-DcBo1GLm.mjs.map → NcListItemIcon-nzw_x2Q5.mjs.map} +1 -1
- package/dist/chunks/{NcLoadingIcon-DREmHXr2.mjs → NcLoadingIcon-CsMn1bFR.mjs} +3 -2
- package/dist/chunks/{NcLoadingIcon-DREmHXr2.mjs.map → NcLoadingIcon-CsMn1bFR.mjs.map} +1 -1
- package/dist/chunks/{getAvatarUrl-DxvUjKMi.mjs → NcMentionBubble.vue_vue_type_style_index_0_scoped_6c8d0da9_lang-DYJMHclV.mjs} +2 -0
- package/dist/chunks/NcMentionBubble.vue_vue_type_style_index_0_scoped_6c8d0da9_lang-DYJMHclV.mjs.map +1 -0
- package/dist/chunks/{NcNoteCard-BwQvZ3pf.mjs → NcNoteCard-XoSOund1.mjs} +3 -2
- package/dist/chunks/{NcNoteCard-BwQvZ3pf.mjs.map → NcNoteCard-XoSOund1.mjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-OK30bZq8.mjs → NcPasswordField-BnnlEhT1.mjs} +8 -8
- package/dist/chunks/NcPasswordField-BnnlEhT1.mjs.map +1 -0
- package/dist/chunks/{NcPopover-Cmspgso4.mjs → NcPopover-C3ZoyUjc.mjs} +16 -12
- package/dist/chunks/NcPopover-C3ZoyUjc.mjs.map +1 -0
- package/dist/chunks/{NcProgressBar-C2r8oqsv.mjs → NcProgressBar-Bx8bMkd4.mjs} +3 -2
- package/dist/chunks/{NcProgressBar-C2r8oqsv.mjs.map → NcProgressBar-Bx8bMkd4.mjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel-DvA5dHwS.mjs → NcRelatedResourcesPanel-D2YLEouH.mjs} +22 -16
- package/dist/chunks/NcRelatedResourcesPanel-D2YLEouH.mjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-s2Cz698X.mjs → NcRichContenteditable-B16VJW0Y.mjs} +34 -34
- package/dist/chunks/NcRichContenteditable-B16VJW0Y.mjs.map +1 -0
- package/dist/chunks/NcRichText-4jIBSmap.mjs +3673 -0
- package/dist/chunks/NcRichText-4jIBSmap.mjs.map +1 -0
- package/dist/chunks/{NcSavingIndicatorIcon-BiGAtlKQ.mjs → NcSavingIndicatorIcon-icWy8J5x.mjs} +2 -1
- package/dist/chunks/{NcSavingIndicatorIcon-BiGAtlKQ.mjs.map → NcSavingIndicatorIcon-icWy8J5x.mjs.map} +1 -1
- package/dist/chunks/{NcSelect-J_CQazCj.mjs → NcSelect-CAx_ixPU.mjs} +16 -15
- package/dist/chunks/NcSelect-CAx_ixPU.mjs.map +1 -0
- package/dist/chunks/{NcSelectTags-BZ22veGg.mjs → NcSelectTags-UXzC7lDz.mjs} +5 -4
- package/dist/chunks/{NcSelectTags-BZ22veGg.mjs.map → NcSelectTags-UXzC7lDz.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-Bjw2RqKu.mjs → NcSettingsInputText-BEHu3xAI.mjs} +7 -6
- package/dist/chunks/NcSettingsInputText-BEHu3xAI.mjs.map +1 -0
- package/dist/chunks/{NcSettingsSection-MATJGEoF.mjs → NcSettingsSection-X7f0W7vZ.mjs} +5 -4
- package/dist/chunks/{NcSettingsSection-MATJGEoF.mjs.map → NcSettingsSection-X7f0W7vZ.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-iglfU6Rr.mjs → NcSettingsSelectGroup-DfrKchOy.mjs} +9 -8
- package/dist/chunks/NcSettingsSelectGroup-DfrKchOy.mjs.map +1 -0
- package/dist/chunks/{NcTextArea-D_kk5GuX.mjs → NcTextArea-DKHjCur8.mjs} +8 -7
- package/dist/chunks/NcTextArea-DKHjCur8.mjs.map +1 -0
- package/dist/chunks/{NcTextField-XbpY0pop.mjs → NcTextField-BTzKCPza.mjs} +8 -7
- package/dist/chunks/{NcTextField-XbpY0pop.mjs.map → NcTextField-BTzKCPza.mjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-CMpvPeCI.mjs → NcTimezonePicker-CMoUk4sZ.mjs} +9 -8
- package/dist/chunks/NcTimezonePicker-CMoUk4sZ.mjs.map +1 -0
- package/dist/chunks/{NcUserBubble-DJFSxKtO.mjs → NcUserBubble-Dgzog0Ps.mjs} +7 -6
- package/dist/chunks/{NcUserBubble-DJFSxKtO.mjs.map → NcUserBubble-Dgzog0Ps.mjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-DjoGxkTB.mjs → NcUserStatusIcon-DvYiEs2L.mjs} +5 -3
- package/dist/chunks/{NcUserStatusIcon-DjoGxkTB.mjs.map → NcUserStatusIcon-DvYiEs2L.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-77f9B57X.mjs → ScopeComponent-BWZEma4R.mjs} +2 -1
- package/dist/chunks/{ScopeComponent-77f9B57X.mjs.map → ScopeComponent-BWZEma4R.mjs.map} +1 -1
- package/dist/chunks/_l10n-7kR7gXFc.mjs +132 -0
- package/dist/chunks/_l10n-7kR7gXFc.mjs.map +1 -0
- package/dist/chunks/_plugin-vue_export-helper-1tPrXgE0.mjs +1 -0
- package/dist/chunks/actionGlobal-BZFdtdJL.mjs +1 -0
- package/dist/chunks/actionGlobal-BZFdtdJL.mjs.map +1 -1
- package/dist/chunks/{actionText-aI0owku1.mjs → actionText-BiV1_BZX.mjs} +8 -13
- package/dist/chunks/actionText-BiV1_BZX.mjs.map +1 -0
- package/dist/chunks/autolink-CKPk5rzg.mjs +1 -0
- package/dist/chunks/autolink-CKPk5rzg.mjs.map +1 -1
- package/dist/chunks/{GenColors-Cw7N7vRg.mjs → colors-BJbWzaQ-.mjs} +28 -22
- package/dist/chunks/colors-BJbWzaQ-.mjs.map +1 -0
- package/dist/chunks/createElementId-DhjFt1I9.mjs +8 -0
- package/dist/chunks/createElementId-DhjFt1I9.mjs.map +1 -0
- package/dist/chunks/emoji-BY_D0V5K.mjs +1 -0
- package/dist/chunks/emoji-BY_D0V5K.mjs.map +1 -1
- package/dist/chunks/focusTrap-DmkaYJTC.mjs +32 -0
- package/dist/chunks/focusTrap-DmkaYJTC.mjs.map +1 -0
- package/dist/chunks/{index-CtB0UiwH.mjs → index--u6iHwFv.mjs} +7 -9
- package/dist/chunks/index--u6iHwFv.mjs.map +1 -0
- package/dist/chunks/{index-CrKUsc__.mjs → index-BF8joS9W.mjs} +3 -2
- package/dist/chunks/{index-CrKUsc__.mjs.map → index-BF8joS9W.mjs.map} +1 -1
- package/dist/chunks/logger-D3RVzcfQ.mjs +6 -0
- package/dist/chunks/logger-D3RVzcfQ.mjs.map +1 -0
- package/dist/chunks/mdi-zYpVOORa.mjs +17 -0
- package/dist/chunks/mdi-zYpVOORa.mjs.map +1 -0
- package/dist/chunks/{referencePickerModal-DPmXigHR.mjs → referencePickerModal-BpNnwC_g.mjs} +25 -25
- package/dist/chunks/referencePickerModal-BpNnwC_g.mjs.map +1 -0
- package/dist/chunks/rtl-v0UOPAM7.mjs +6 -0
- package/dist/chunks/rtl-v0UOPAM7.mjs.map +1 -0
- package/dist/chunks/{NcDateTime-BsCT_tyH.mjs → useFormatDateTime-B5sWtJdj.mjs} +3 -63
- package/dist/chunks/useFormatDateTime-B5sWtJdj.mjs.map +1 -0
- package/dist/chunks/useNcActions-CiGWxAJE.mjs +7 -0
- package/dist/chunks/useNcActions-CiGWxAJE.mjs.map +1 -0
- package/dist/chunks/useTrapStackControl-b3A_383w.mjs +23 -0
- package/dist/chunks/useTrapStackControl-b3A_383w.mjs.map +1 -0
- package/dist/chunks/usernameToColor-CzXWY0j4.mjs +22 -0
- package/dist/chunks/usernameToColor-CzXWY0j4.mjs.map +1 -0
- package/dist/components/NcActionButton/NcActionButton.vue.d.ts +6 -1
- package/dist/components/NcActionButton/index.mjs +2 -1
- package/dist/components/NcActionButtonGroup/index.mjs +2 -1
- package/dist/components/NcActionCaption/index.mjs +2 -1
- package/dist/components/NcActionCheckbox/index.mjs +2 -1
- package/dist/components/NcActionInput/index.mjs +2 -1
- package/dist/components/NcActionLink/index.mjs +2 -1
- package/dist/components/NcActionRadio/NcActionRadio.vue.d.ts +10 -8
- package/dist/components/NcActionRadio/index.mjs +2 -1
- package/dist/components/NcActionRouter/NcActionRouter.vue.d.ts +5 -0
- package/dist/components/NcActionRouter/index.mjs +2 -1
- package/dist/components/NcActionSeparator/index.mjs +2 -1
- package/dist/components/NcActionText/NcActionText.vue.d.ts +5 -0
- package/dist/components/NcActionText/index.mjs +2 -1
- package/dist/components/NcActionTextEditable/NcActionTextEditable.vue.d.ts +9 -1
- package/dist/components/NcActionTextEditable/index.mjs +2 -1
- package/dist/components/NcActions/NcActions.vue.d.ts +52 -59
- package/dist/components/NcActions/index.mjs +2 -1
- package/dist/components/NcActions/useNcActions.d.ts +3 -0
- package/dist/components/NcAppContent/index.mjs +2 -1
- package/dist/components/NcAppContentDetails/index.mjs +2 -1
- package/dist/components/NcAppContentList/index.mjs +2 -1
- package/dist/components/NcAppNavigation/NcAppNavigation.vue.d.ts +23 -22
- package/dist/components/NcAppNavigation/index.mjs +2 -1
- package/dist/components/NcAppNavigationCaption/NcAppNavigationCaption.vue.d.ts +34 -33
- package/dist/components/NcAppNavigationCaption/index.mjs +2 -1
- package/dist/components/NcAppNavigationIconBullet/index.mjs +2 -1
- package/dist/components/NcAppNavigationItem/NcAppNavigationIconCollapsible.vue.d.ts +16 -15
- package/dist/components/NcAppNavigationItem/NcAppNavigationItem.vue.d.ts +96 -88
- package/dist/components/NcAppNavigationItem/NcInputConfirmCancel.vue.d.ts +25 -24
- package/dist/components/NcAppNavigationItem/index.mjs +2 -1
- package/dist/components/NcAppNavigationList/index.mjs +2 -1
- package/dist/components/NcAppNavigationNew/NcAppNavigationNew.vue.d.ts +27 -18
- package/dist/components/NcAppNavigationNew/index.mjs +2 -1
- package/dist/components/NcAppNavigationNewItem/NcAppNavigationNewItem.vue.d.ts +18 -17
- package/dist/components/NcAppNavigationNewItem/index.mjs +2 -1
- package/dist/components/NcAppNavigationSearch/NcAppNavigationSearch.vue.d.ts +16 -15
- package/dist/components/NcAppNavigationSearch/index.mjs +2 -1
- package/dist/components/NcAppNavigationSettings/NcAppNavigationSettings.vue.d.ts +49 -0
- package/dist/components/NcAppNavigationSettings/index.mjs +2 -1
- package/dist/components/NcAppNavigationSpacer/index.mjs +2 -1
- package/dist/components/NcAppNavigationToggle/NcAppNavigationToggle.vue.d.ts +16 -15
- package/dist/components/NcAppNavigationToggle/index.mjs +2 -1
- package/dist/components/NcAppSettingsDialog/index.mjs +2 -1
- package/dist/components/NcAppSettingsSection/index.mjs +2 -1
- package/dist/components/NcAppSidebar/index.mjs +2 -1
- package/dist/components/NcAppSidebarTab/index.mjs +2 -1
- package/dist/components/NcAvatar/index.mjs +2 -1
- 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 +5 -0
- package/dist/components/NcBlurHash/index.mjs.map +1 -0
- package/dist/components/NcBreadcrumb/NcBreadcrumb.vue.d.ts +70 -67
- package/dist/components/NcBreadcrumb/index.mjs +2 -1
- package/dist/components/NcBreadcrumbs/NcBreadcrumbs.vue.d.ts +98 -84
- package/dist/components/NcBreadcrumbs/index.mjs +2 -1
- package/dist/components/NcButton/NcButton.vue.d.ts +42 -38
- package/dist/components/NcButton/index.mjs +4 -3
- package/dist/components/NcButton/types.d.ts +2 -2
- package/dist/components/NcCheckboxRadioSwitch/index.mjs +2 -1
- package/dist/components/NcChip/NcChip.vue.d.ts +57 -92
- package/dist/components/NcChip/index.mjs +2 -1
- package/dist/components/NcCollectionList/index.mjs +2 -1
- package/dist/components/NcColorPicker/index.mjs +2 -1
- package/dist/components/NcContent/NcContent.vue.d.ts +17 -16
- package/dist/components/NcContent/index.mjs +2 -1
- package/dist/components/NcCounterBubble/index.mjs +2 -1
- package/dist/components/NcDashboardWidget/index.mjs +2 -1
- package/dist/components/NcDashboardWidgetItem/index.mjs +2 -1
- package/dist/components/NcDateTime/NcDateTime.vue.d.ts +56 -1
- package/dist/components/NcDateTime/index.d.ts +4 -0
- package/dist/components/NcDateTime/index.mjs +3 -2
- package/dist/components/NcDateTimePicker/NcDateTimePicker.vue.d.ts +116 -1
- package/dist/components/NcDateTimePicker/index.d.ts +4 -0
- package/dist/components/NcDateTimePicker/index.mjs +2 -1
- package/dist/components/NcDateTimePickerNative/index.mjs +2 -1
- package/dist/components/NcDialog/NcDialog.vue.d.ts +60 -55
- package/dist/components/NcDialog/index.mjs +2 -1
- package/dist/components/NcDialogButton/NcDialogButton.vue.d.ts +43 -35
- package/dist/components/NcDialogButton/index.mjs +2 -1
- package/dist/components/NcEllipsisedOption/index.mjs +2 -1
- package/dist/components/NcEmojiPicker/NcEmojiPicker.vue.d.ts +45 -32
- package/dist/components/NcEmojiPicker/index.mjs +2 -1
- package/dist/components/NcEmptyContent/index.mjs +2 -1
- package/dist/components/NcGuestContent/index.mjs +2 -1
- package/dist/components/NcHeaderButton/index.mjs +2 -1
- package/dist/components/NcHeaderMenu/NcHeaderMenu.vue.d.ts +245 -0
- package/dist/components/NcHeaderMenu/index.mjs +2 -1
- package/dist/components/NcHighlight/index.mjs +2 -1
- package/dist/components/NcIconSvgWrapper/index.mjs +2 -1
- package/dist/components/NcInputField/NcInputField.vue.d.ts +16 -15
- package/dist/components/NcInputField/index.mjs +2 -1
- package/dist/components/NcListItem/NcListItem.vue.d.ts +34 -33
- package/dist/components/NcListItem/index.mjs +2 -1
- package/dist/components/NcListItemIcon/index.mjs +2 -1
- package/dist/components/NcLoadingIcon/index.mjs +2 -1
- package/dist/components/NcModal/index.mjs +42 -39
- package/dist/components/NcModal/index.mjs.map +1 -1
- package/dist/components/NcNoteCard/index.mjs +2 -1
- package/dist/components/NcPasswordField/index.mjs +2 -1
- package/dist/components/NcPopover/NcPopover.vue.d.ts +2 -0
- package/dist/components/NcPopover/index.mjs +2 -1
- package/dist/components/NcProgressBar/index.mjs +2 -1
- package/dist/components/NcRelatedResourcesPanel/NcRelatedResourcesPanel.vue.d.ts +32 -30
- package/dist/components/NcRelatedResourcesPanel/NcResource.vue.d.ts +16 -15
- package/dist/components/NcRelatedResourcesPanel/NcTeamResources.vue.d.ts +16 -15
- package/dist/components/NcRelatedResourcesPanel/index.mjs +2 -1
- package/dist/components/NcRichContenteditable/index.mjs +3 -2
- package/dist/components/NcRichText/NcReferenceList.vue.d.ts +17 -16
- package/dist/components/NcRichText/NcReferencePicker/NcRawLinkInput.vue.d.ts +33 -31
- package/dist/components/NcRichText/NcReferencePicker/utils.d.ts +1 -1
- package/dist/components/NcRichText/NcReferenceWidget.vue.d.ts +17 -16
- package/dist/components/NcRichText/NcRichText.vue.d.ts +19 -61
- package/dist/components/NcRichText/index.mjs +5 -4
- package/dist/components/NcRichText/remarkUnescape.d.ts +1 -0
- package/dist/components/NcSavingIndicatorIcon/index.mjs +2 -1
- package/dist/components/NcSelect/index.mjs +2 -1
- package/dist/components/NcSelectTags/index.mjs +2 -1
- package/dist/components/NcSettingsInputText/index.mjs +2 -1
- package/dist/components/NcSettingsSection/index.mjs +2 -1
- package/dist/components/NcSettingsSelectGroup/index.mjs +2 -1
- package/dist/components/NcTextArea/index.mjs +2 -1
- package/dist/components/NcTextField/NcTextField.vue.d.ts +16 -15
- package/dist/components/NcTextField/index.mjs +2 -1
- package/dist/components/NcTimezonePicker/index.mjs +2 -1
- package/dist/components/NcUserBubble/index.mjs +2 -1
- package/dist/components/NcUserStatusIcon/index.mjs +2 -1
- package/dist/components/NcVNodes/index.mjs +1 -0
- package/dist/components/NcVNodes/index.mjs.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/composables/index.d.ts +7 -3
- package/dist/composables/useHotKey/index.d.ts +32 -4
- package/dist/composables/useHotKey/index.mjs +23 -20
- package/dist/composables/useHotKey/index.mjs.map +1 -1
- package/dist/composables/useIsDarkTheme/index.mjs +1 -0
- package/dist/composables/useIsDarkTheme/index.mjs.map +1 -1
- package/dist/composables/useIsFullscreen/index.d.ts +3 -4
- package/dist/composables/useIsFullscreen/index.mjs +4 -1
- package/dist/composables/useIsFullscreen/index.mjs.map +1 -1
- package/dist/composables/useIsMobile/index.d.ts +9 -14
- package/dist/composables/useIsMobile/index.mjs +1 -2
- package/dist/composables/useIsMobile/index.mjs.map +1 -1
- package/dist/composables/useTrapStackControl.d.ts +12 -0
- package/dist/directives/Focus/index.mjs +1 -0
- package/dist/directives/Focus/index.mjs.map +1 -1
- package/dist/directives/Linkify/index.d.ts +2 -1
- package/dist/directives/Linkify/index.mjs +44 -6
- package/dist/directives/Linkify/index.mjs.map +1 -1
- package/dist/directives/Tooltip/index.mjs +2 -1
- package/dist/directives/Tooltip/index.mjs.map +1 -1
- package/dist/directives/index.d.ts +1 -1
- package/dist/functions/a11y/index.mjs +1 -0
- package/dist/functions/a11y/index.mjs.map +1 -1
- package/dist/functions/dialog/index.mjs +1 -0
- package/dist/functions/dialog/index.mjs.map +1 -1
- package/dist/functions/emoji/index.mjs +1 -0
- package/dist/functions/index.d.ts +2 -1
- package/dist/functions/isDarkTheme/index.mjs +1 -0
- package/dist/functions/isDarkTheme/index.mjs.map +1 -1
- package/dist/functions/preloadImage/index.d.ts +9 -0
- package/dist/functions/preloadImage/index.mjs +17 -0
- package/dist/functions/preloadImage/index.mjs.map +1 -0
- package/dist/functions/reference/index.mjs +3 -2
- package/dist/functions/reference/widgets.d.ts +1 -1
- package/dist/functions/registerReference/index.mjs +3 -2
- package/dist/functions/usernameToColor/index.d.ts +5 -1
- package/dist/functions/usernameToColor/index.mjs +2 -1
- package/dist/functions/usernameToColor/usernameToColor.d.ts +4 -9
- package/dist/index.mjs +104 -101
- package/dist/index.mjs.map +1 -1
- package/dist/mixins/actionText.d.ts +6 -0
- package/dist/mixins/index.d.ts +0 -1
- package/dist/mixins/richEditor/index.mjs +2 -2
- package/dist/mixins/richEditor/index.mjs.map +1 -1
- package/dist/utils/appName.d.ts +5 -0
- package/dist/utils/colors.d.ts +34 -0
- package/dist/utils/createElementId.d.ts +7 -0
- package/dist/utils/findRanges.d.ts +16 -0
- package/dist/utils/focusTrap.d.ts +26 -1
- package/dist/utils/isSlotPopulated.d.ts +1 -2
- package/dist/utils/linkify.d.ts +8 -0
- package/dist/utils/logger.d.ts +4 -0
- package/dist/utils/rtl.d.ts +5 -0
- package/dist/vendor.LICENSE.txt +128 -0
- package/package.json +70 -57
- package/dist/assets/NcAppNavigationSettings-CZNoJ2IO.css +0 -77
- package/dist/assets/NcDateTimePicker-D67l0SAR.css +0 -865
- package/dist/assets/NcDateTimePickerNative-DLch-JRA.css +0 -47
- package/dist/assets/NcRichText-C_CIawDX.css +0 -412
- package/dist/chunks/GenColors-Cw7N7vRg.mjs.map +0 -1
- package/dist/chunks/GenRandomId-CMooMQt0.mjs +0 -6
- package/dist/chunks/GenRandomId-CMooMQt0.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/NcActionButtonGroup-DtHcJpaH.mjs.map +0 -1
- package/dist/chunks/NcActionCaption-BeVuTBKE.mjs.map +0 -1
- package/dist/chunks/NcActionCheckbox-DdLcVat_.mjs.map +0 -1
- package/dist/chunks/NcActionInput-CxPmTwTo.mjs.map +0 -1
- package/dist/chunks/NcActionLink-9TfevQgn.mjs.map +0 -1
- package/dist/chunks/NcActionRadio-CV0AtyQD.mjs.map +0 -1
- package/dist/chunks/NcActionRouter-RKft3XO3.mjs.map +0 -1
- package/dist/chunks/NcActionText-ChktUmp9.mjs.map +0 -1
- package/dist/chunks/NcActionTextEditable-D3Iix8Je.mjs.map +0 -1
- package/dist/chunks/NcActions-BJ703bdY.mjs.map +0 -1
- package/dist/chunks/NcAppContent-DcqJmTNj.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-Ba6kwsU9.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationNew-D2aD0z-u.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSearch-pTeRzg7y.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSettings-Bc4ZZ9rU.mjs +0 -142
- package/dist/chunks/NcAppNavigationSettings-Bc4ZZ9rU.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-CEun9mHr.mjs.map +0 -1
- package/dist/chunks/NcAppSidebar-C0VSug_j.mjs.map +0 -1
- package/dist/chunks/NcAvatar-CB2n3G0J.mjs.map +0 -1
- package/dist/chunks/NcBreadcrumb-ChOkGtT6.mjs.map +0 -1
- package/dist/chunks/NcBreadcrumbs-CcWv0nYL.mjs.map +0 -1
- package/dist/chunks/NcButton-C3eisBbK.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-Zndby-mL.mjs.map +0 -1
- package/dist/chunks/NcChip-DxejjHGT.mjs.map +0 -1
- package/dist/chunks/NcCollectionList-DckB8BUh.mjs.map +0 -1
- package/dist/chunks/NcColorPicker-Bh4f-X_s.mjs.map +0 -1
- package/dist/chunks/NcDateTime-BsCT_tyH.mjs.map +0 -1
- package/dist/chunks/NcDateTimePicker-BMkjvfOV.mjs +0 -377
- package/dist/chunks/NcDateTimePicker-BMkjvfOV.mjs.map +0 -1
- package/dist/chunks/NcDateTimePickerNative-I2YJ1mqx.mjs.map +0 -1
- package/dist/chunks/NcDialog-bRHxABY1.mjs.map +0 -1
- package/dist/chunks/NcDialogButton.vue_vue_type_script_setup_true_lang-CBKNl2vE.mjs.map +0 -1
- package/dist/chunks/NcEllipsisedOption-BaL7DZ1K.mjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-DIv_bq9B.mjs.map +0 -1
- package/dist/chunks/NcEmptyContent-BoGB3vFC.mjs.map +0 -1
- package/dist/chunks/NcHeaderButton-DagheXHN.mjs.map +0 -1
- package/dist/chunks/NcHeaderMenu-DWrnJYhw.mjs +0 -260
- package/dist/chunks/NcHeaderMenu-DWrnJYhw.mjs.map +0 -1
- package/dist/chunks/NcHighlight-BHtRIzqk.mjs.map +0 -1
- package/dist/chunks/NcInputConfirmCancel-CHdSVEcQ.mjs.map +0 -1
- package/dist/chunks/NcInputField-BMtTTtl5.mjs.map +0 -1
- package/dist/chunks/NcListItem-D04-5zRU.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-OK30bZq8.mjs.map +0 -1
- package/dist/chunks/NcPopover-Cmspgso4.mjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-DvA5dHwS.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-s2Cz698X.mjs.map +0 -1
- package/dist/chunks/NcRichText-DeQGaF-c.mjs +0 -445
- package/dist/chunks/NcRichText-DeQGaF-c.mjs.map +0 -1
- package/dist/chunks/NcSelect-J_CQazCj.mjs.map +0 -1
- package/dist/chunks/NcSettingsInputText-Bjw2RqKu.mjs.map +0 -1
- package/dist/chunks/NcSettingsSelectGroup-iglfU6Rr.mjs.map +0 -1
- package/dist/chunks/NcTextArea-D_kk5GuX.mjs.map +0 -1
- package/dist/chunks/NcTimezonePicker-CMpvPeCI.mjs.map +0 -1
- package/dist/chunks/_l10n-D7WwrqS-.mjs +0 -126
- package/dist/chunks/_l10n-D7WwrqS-.mjs.map +0 -1
- package/dist/chunks/actionText-aI0owku1.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.map +0 -1
- package/dist/chunks/index-CtB0UiwH.mjs.map +0 -1
- package/dist/chunks/referencePickerModal-DPmXigHR.mjs.map +0 -1
- package/dist/chunks/usernameToColor-CgZYBI2J.mjs +0 -26
- package/dist/chunks/usernameToColor-CgZYBI2J.mjs.map +0 -1
- package/dist/mixins/clickOutsideOptions/index.d.ts +0 -15
- package/dist/mixins/clickOutsideOptions/index.mjs +0 -21
- package/dist/mixins/clickOutsideOptions/index.mjs.map +0 -1
- package/dist/utils/FindRanges.d.ts +0 -13
- package/dist/utils/GenColors.d.ts +0 -28
- package/dist/utils/GenRandomId.d.ts +0 -6
- package/dist/utils/GetChildren.d.ts +0 -13
- package/dist/utils/GetParent.d.ts +0 -13
- package/dist/utils/Linkify.d.ts +0 -8
- /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/{NcAppNavigationIconBullet-By_0o2dG.css → NcAppNavigationIconBullet-CeBYVy6t.css} +0 -0
- /package/dist/assets/{NcAppNavigationList-BHK_PY3c.css → NcAppNavigationList-CLLHyHIn.css} +0 -0
- /package/dist/assets/{NcAppNavigationSpacer-DiE3sVy0.css → NcAppNavigationSpacer-BJj8CIpA.css} +0 -0
- /package/dist/assets/{NcAppSettingsSection-Y3DmEyQ2.css → NcAppSettingsSection-DnDcGk1v.css} +0 -0
- /package/dist/assets/{NcAppSidebarTab-Cp0hG2NU.css → NcAppSidebarTab-BFy7uyWe.css} +0 -0
- /package/dist/assets/{NcCounterBubble-BfI32Juo.css → NcCounterBubble-DWgyYB0d.css} +0 -0
- /package/dist/assets/{NcDashboardWidgetItem-CCjoWolF.css → NcDashboardWidgetItem-B8_6-_k8.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/{NcLoadingIcon-BSONDy7x.css → NcLoadingIcon-x1d284UU.css} +0 -0
- /package/dist/assets/{NcNoteCard-CImn6F9p.css → NcNoteCard-C6xb7vi0.css} +0 -0
- /package/dist/assets/{NcProgressBar-BsqdCn-x.css → NcProgressBar--z-WqmX4.css} +0 -0
- /package/dist/assets/{NcSettingsSection-DXQyhMdq.css → NcSettingsSection-Dyrgo_fF.css} +0 -0
- /package/dist/assets/{NcUserStatusIcon-FLA1tQpD.css → NcUserStatusIcon-Du-BEPk_.css} +0 -0
- /package/dist/assets/{index-4CSl8xev.css → index-DQ4Plm4r.css} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcActionButton-B3JQywgv.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 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 inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n\n### With different model behavior\nBy default the button will act like a normal button, but it is also possible to change the behavior to a toggle button, checkbox button or radio button.\n\nFor example to have the button act like a toggle button just set the `modelValue` property to the toggle state:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton v-model=\"fullscreen\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t}\n\t},\n}\n</script>\n```\n\nAnother example would be using it with checkbox semantics, to enable or disable features.\nThis also allows tri-state behavior (`true`, `false`, `null`) in which case `aria-checked` will be either `true`, `false` or `mixed`.\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton v-model=\"handRaised\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise hand\n\t\t</NcActionButton>\n\t\t<NcActionButton v-model=\"fullscreen\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t\thandRaised: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nIt is also possible to use the button with radio semantics, this is only possible in menus and not for inline actions!\n\nWith a string `modelValue`, checked state is determined by the `value` property and updates `modelValue` with the new `value` string.\n\nWith a boolean `modelValue`, checked state is determined by `modelValue` and updates to `true` on check.\n\nNote: unlike native radio buttons, `NcActionButton` are not grouped by name, so you need to connect them by bind correct `modelValue``.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionButton v-model=\"payment\" type=\"radio\" value=\"cash\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Cash :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay with cash\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton v-model=\"payment\" type=\"radio\" value=\"card\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CreditCard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay by card\n\t\t\t</NcActionButton>\n\t\t\t<NcActionSeparator />\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isLeft\" @update:modelValue=\"setAlign('Left', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tLeft\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isCenter\" @update:modelValue=\"setAlign('Center', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCenter\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isRight\" @update:modelValue=\"setAlign('Right', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tRight\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t\t<p>payment = \"{{ payment }}\"</p>\n\t\t<p>align.isLeft = {{ align.isLeft }}</p>\n\t\t<p>align.isCenter = {{ align.isCenter }}</p>\n\t\t<p>align.isRight = {{ align.isRight }}</p>\n\t</div>\n</template>\n<script>\nimport Cash from 'vue-material-design-icons/Cash.vue'\nimport CreditCard from 'vue-material-design-icons/CreditCard.vue'\nimport FormatAlignLeft from 'vue-material-design-icons/FormatAlignLeft.vue'\nimport FormatAlignCenter from 'vue-material-design-icons/FormatAlignCenter.vue'\nimport FormatAlignRight from 'vue-material-design-icons/FormatAlignRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tCash,\n\t\tCreditCard,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpayment: 'card',\n\t\t\talign: {\n\t\t\t\tisLeft: false,\n\t\t\t\tisCenter: true,\n\t\t\t\tisRight: false,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\tsetAlign(direction, value) {\n\t\t\tthis.align.isLeft = false\n\t\t\tthis.align.isCenter = false\n\t\t\tthis.align.isRight = false\n\t\t\tthis.align[`is${direction}`] = value\n\t\t},\n\t}\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<button :aria-label=\"ariaLabel\"\n\t\t\t:class=\"['action-button button-vue', {\n\t\t\t\t'action-button--active': isChecked,\n\t\t\t\tfocusable: isFocusable,\n\t\t\t}]\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:title=\"title\"\n\t\t\t:type=\"nativeType\"\n\t\t\tv-bind=\"buttonAttributes\"\n\t\t\t@click=\"handleClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right(in LTR) or left(in RTL) arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu && !isRTL\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<ChevronLeftIcon v-else-if=\"isMenu && isRTL\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<CheckIcon v-else-if=\"isChecked === true\" :size=\"20\" class=\"action-button__pressed-icon\" />\n\t\t\t<span v-else-if=\"isChecked === false\" class=\"action-button__pressed-icon material-design-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ChevronLeftIcon from 'vue-material-design-icons/ChevronLeft.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\nimport { isRTL } from '@nextcloud/l10n'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tCheckIcon,\n\t\tChevronRightIcon,\n\t\tChevronLeftIcon,\n\t},\n\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: 'NcActions:isSemanticMenu',\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * disabled state of the action button\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n\t\t * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n\t\t * This extends the native HTML button type attribute.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'button',\n\t\t\tvalidator: (behavior) => ['button', 'checkbox', 'radio', 'reset', 'submit'].includes(behavior),\n\t\t},\n\n\t\t/**\n\t\t * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n\t\t * For checkbox and toggle button behavior - boolean value.\n\t\t * For radio button behavior - could be a boolean checked or a string with the value of the button.\n\t\t * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n\t\t *\n\t\t * **This is not availabe for `type='submit'` or `type='reset'`**\n\t\t *\n\t\t * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n\t\t * For `type='radio'` `null` is equal to `false`\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [Boolean, String],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value used for the `modelValue` when this component is used with radio behavior\n\t\t * Similar to the `value` attribute of `<input type=\"radio\">`\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: ['update:modelValue'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisRTL: isRTL(),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * The current \"checked\" or \"pressed\" state for the model behavior\n\t\t */\n\t\tisChecked() {\n\t\t\tif (this.type === 'radio' && typeof this.modelValue !== 'boolean') {\n\t\t\t\treturn this.modelValue === this.value\n\t\t\t}\n\t\t\treturn this.modelValue\n\t\t},\n\n\t\t/**\n\t\t * The native HTML type to set on the button\n\t\t */\n\t\tnativeType() {\n\t\t\tif (this.type === 'submit' || this.type === 'reset') {\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn 'button'\n\t\t},\n\n\t\t/**\n\t\t * HTML attributes to bind to the <button>\n\t\t */\n\t\tbuttonAttributes() {\n\t\t\tconst attributes = {}\n\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\t// By default it needs to be a menu item in semantic menus\n\t\t\t\tattributes.role = 'menuitem'\n\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tattributes.role = 'menuitemradio'\n\t\t\t\t\tattributes['aria-checked'] = this.isChecked ? 'true' : 'false'\n\t\t\t\t} else if (this.type === 'checkbox' || (this.nativeType === 'button' && this.modelValue !== null)) {\n\t\t\t\t\t// either if checkbox behavior was set or the model value is not unset\n\t\t\t\t\tattributes.role = 'menuitemcheckbox'\n\t\t\t\t\tattributes['aria-checked'] = this.modelValue === null ? 'mixed' : (this.modelValue ? 'true' : 'false')\n\t\t\t\t}\n\t\t\t} else if (this.modelValue !== null && this.nativeType === 'button') {\n\t\t\t\t// In case this has a modelValue it is considered a toggle button, so we need to set the aria-pressed\n\t\t\t\tattributes['aria-pressed'] = this.modelValue ? 'true' : 'false'\n\t\t\t}\n\n\t\t\treturn attributes\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n\t\t * @param {MouseEvent} event The click event\n\t\t */\n\t\thandleClick(event) {\n\t\t\tthis.onClick(event)\n\t\t\t// If modelValue or type is set (so modelValue might be null for tri-state) we need to update it\n\t\t\tif (this.modelValue !== null || this.type !== 'button') {\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tif (typeof this.modelValue !== 'boolean') {\n\t\t\t\t\t\t// String-value radios behavior is similar to native - click on checked radio does nothing\n\t\t\t\t\t\tif (!this.isChecked) {\n\t\t\t\t\t\t\tthis.$emit('update:modelValue', this.value)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Boolean radio allows to uncheck\n\t\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Checkbox toggles value\n\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button__pressed-icon {\n\tmargin-inline: auto calc($icon-margin * -1);\n}\n</style>\n"],"names":["CheckIcon","ChevronRightIcon","_createElementBlock","_normalizeClass","_createElementVNode","_mergeProps","_renderSlot","_normalizeStyle","_openBlock","_toDisplayString","_createBlock","_createCommentVNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcActionButton-BdQ_qmvW.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 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 inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n\n### With different model behavior\nBy default the button will act like a normal button, but it is also possible to change the behavior to a toggle button, checkbox button or radio button.\n\nFor example to have the button act like a toggle button just set the `modelValue` property to the toggle state:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton v-model=\"fullscreen\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t}\n\t},\n}\n</script>\n```\n\nAnother example would be using it with checkbox semantics, to enable or disable features.\nThis also allows tri-state behavior (`true`, `false`, `null`) in which case `aria-checked` will be either `true`, `false` or `mixed`.\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton v-model=\"handRaised\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise hand\n\t\t</NcActionButton>\n\t\t<NcActionButton v-model=\"fullscreen\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t\thandRaised: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nIt is also possible to use the button with radio semantics, this is only possible in menus and not for inline actions!\n\nWith a string `modelValue`, checked state is determined by the `value` property and updates `modelValue` with the new `value` string.\n\nWith a boolean `modelValue`, checked state is determined by `modelValue` and updates to `true` on check.\n\nNote: unlike native radio buttons, `NcActionButton` are not grouped by name, so you need to connect them by bind correct `modelValue``.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionButton v-model=\"payment\" type=\"radio\" value=\"cash\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Cash :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay with cash\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton v-model=\"payment\" type=\"radio\" value=\"card\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CreditCard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay by card\n\t\t\t</NcActionButton>\n\t\t\t<NcActionSeparator />\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isLeft\" @update:modelValue=\"setAlign('Left', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tLeft\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isCenter\" @update:modelValue=\"setAlign('Center', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCenter\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isRight\" @update:modelValue=\"setAlign('Right', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tRight\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t\t<p>payment = \"{{ payment }}\"</p>\n\t\t<p>align.isLeft = {{ align.isLeft }}</p>\n\t\t<p>align.isCenter = {{ align.isCenter }}</p>\n\t\t<p>align.isRight = {{ align.isRight }}</p>\n\t</div>\n</template>\n<script>\nimport Cash from 'vue-material-design-icons/Cash.vue'\nimport CreditCard from 'vue-material-design-icons/CreditCard.vue'\nimport FormatAlignLeft from 'vue-material-design-icons/FormatAlignLeft.vue'\nimport FormatAlignCenter from 'vue-material-design-icons/FormatAlignCenter.vue'\nimport FormatAlignRight from 'vue-material-design-icons/FormatAlignRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tCash,\n\t\tCreditCard,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpayment: 'card',\n\t\t\talign: {\n\t\t\t\tisLeft: false,\n\t\t\t\tisCenter: true,\n\t\t\t\tisRight: false,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\tsetAlign(direction, value) {\n\t\t\tthis.align.isLeft = false\n\t\t\tthis.align.isCenter = false\n\t\t\tthis.align.isRight = false\n\t\t\tthis.align[`is${direction}`] = value\n\t\t},\n\t}\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<button :aria-label=\"ariaLabel\"\n\t\t\t:class=\"['action-button button-vue', {\n\t\t\t\t'action-button--active': isChecked,\n\t\t\t\tfocusable: isFocusable,\n\t\t\t}]\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:title=\"title\"\n\t\t\t:type=\"nativeType\"\n\t\t\tv-bind=\"buttonAttributes\"\n\t\t\t@click=\"handleClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right(in LTR) or left(in RTL) arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu && !isRtl\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<ChevronLeftIcon v-else-if=\"isMenu && isRtl\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<CheckIcon v-else-if=\"isChecked === true\" :size=\"20\" class=\"action-button__pressed-icon\" />\n\t\t\t<span v-else-if=\"isChecked === false\" class=\"action-button__pressed-icon material-design-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ChevronLeftIcon from 'vue-material-design-icons/ChevronLeft.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\nimport { isRtl } from '../../utils/rtl.ts'\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tCheckIcon,\n\t\tChevronRightIcon,\n\t\tChevronLeftIcon,\n\t},\n\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * disabled state of the action button\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n\t\t * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n\t\t * This extends the native HTML button type attribute.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'button',\n\t\t\tvalidator: (behavior) => ['button', 'checkbox', 'radio', 'reset', 'submit'].includes(behavior),\n\t\t},\n\n\t\t/**\n\t\t * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n\t\t * For checkbox and toggle button behavior - boolean value.\n\t\t * For radio button behavior - could be a boolean checked or a string with the value of the button.\n\t\t * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n\t\t *\n\t\t * **This is not availabe for `type='submit'` or `type='reset'`**\n\t\t *\n\t\t * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n\t\t * For `type='radio'` `null` is equal to `false`\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [Boolean, String],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value used for the `modelValue` when this component is used with radio behavior\n\t\t * Similar to the `value` attribute of `<input type=\"radio\">`\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: ['update:modelValue'],\n\n\tsetup() {\n\t\treturn {\n\t\t\tisRtl,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * The current \"checked\" or \"pressed\" state for the model behavior\n\t\t */\n\t\tisChecked() {\n\t\t\tif (this.type === 'radio' && typeof this.modelValue !== 'boolean') {\n\t\t\t\treturn this.modelValue === this.value\n\t\t\t}\n\t\t\treturn this.modelValue\n\t\t},\n\n\t\t/**\n\t\t * The native HTML type to set on the button\n\t\t */\n\t\tnativeType() {\n\t\t\tif (this.type === 'submit' || this.type === 'reset') {\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn 'button'\n\t\t},\n\n\t\t/**\n\t\t * HTML attributes to bind to the <button>\n\t\t */\n\t\tbuttonAttributes() {\n\t\t\tconst attributes = {}\n\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\t// By default it needs to be a menu item in semantic menus\n\t\t\t\tattributes.role = 'menuitem'\n\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tattributes.role = 'menuitemradio'\n\t\t\t\t\tattributes['aria-checked'] = this.isChecked ? 'true' : 'false'\n\t\t\t\t} else if (this.type === 'checkbox' || (this.nativeType === 'button' && this.modelValue !== null)) {\n\t\t\t\t\t// either if checkbox behavior was set or the model value is not unset\n\t\t\t\t\tattributes.role = 'menuitemcheckbox'\n\t\t\t\t\tattributes['aria-checked'] = this.modelValue === null ? 'mixed' : (this.modelValue ? 'true' : 'false')\n\t\t\t\t}\n\t\t\t} else if (this.modelValue !== null && this.nativeType === 'button') {\n\t\t\t\t// In case this has a modelValue it is considered a toggle button, so we need to set the aria-pressed\n\t\t\t\tattributes['aria-pressed'] = this.modelValue ? 'true' : 'false'\n\t\t\t}\n\n\t\t\treturn attributes\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n\t\t * @param {MouseEvent} event The click event\n\t\t */\n\t\thandleClick(event) {\n\t\t\tthis.onClick(event)\n\t\t\t// If modelValue or type is set (so modelValue might be null for tri-state) we need to update it\n\t\t\tif (this.modelValue !== null || this.type !== 'button') {\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tif (typeof this.modelValue !== 'boolean') {\n\t\t\t\t\t\t// String-value radios behavior is similar to native - click on checked radio does nothing\n\t\t\t\t\t\tif (!this.isChecked) {\n\t\t\t\t\t\t\tthis.$emit('update:modelValue', this.value)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Boolean radio allows to uncheck\n\t\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Checkbox toggles value\n\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button__pressed-icon {\n\tmargin-inline: auto calc($icon-margin * -1);\n}\n</style>\n"],"names":["CheckIcon","ChevronRightIcon","_createElementBlock","_normalizeClass","_createElementVNode","_mergeProps","_renderSlot","_normalizeStyle","_openBlock","_toDisplayString","_createBlock","_createCommentVNode"],"mappings":";;;;;;;;AA2XA,MAAK,YAAU;AAAA,EACd,MAAM;AAAA,EAEN,YAAY;AAAA,IACX,WAAAA;AAAAA,IACA,kBAAAC;AAAAA,IACA;AAAA,EACA;AAAA,EAED,QAAQ,CAAC,eAAe;AAAA,EAExB,QAAQ;AAAA,IACP,kBAAkB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMN,YAAY;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAKD,UAAU;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,QAAQ;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,MAAM;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,aAAa,CAAC,UAAU,YAAY,SAAS,SAAS,QAAQ,EAAE,SAAS,QAAQ;AAAA,IAC7F;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaD,YAAY;AAAA,MACX,MAAM,CAAC,SAAS,MAAM;AAAA,MACtB,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,OAAO;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA,EACD;AAAA,EAED,OAAO,CAAC,mBAAmB;AAAA,EAE3B,QAAQ;AACP,WAAO;AAAA,MACN;AAAA,IACD;AAAA,EACA;AAAA,EAED,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMT,cAAc;AACb,aAAO,CAAC,KAAK;AAAA,IACb;AAAA;AAAA;AAAA;AAAA,IAKD,YAAY;AACX,UAAI,KAAK,SAAS,WAAW,OAAO,KAAK,eAAe,WAAW;AAClE,eAAO,KAAK,eAAe,KAAK;AAAA,MACjC;AACA,aAAO,KAAK;AAAA,IACZ;AAAA;AAAA;AAAA;AAAA,IAKD,aAAa;AACZ,UAAI,KAAK,SAAS,YAAY,KAAK,SAAS,SAAS;AACpD,eAAO,KAAK;AAAA,MACb;AACA,aAAO;AAAA,IACP;AAAA;AAAA;AAAA;AAAA,IAKD,mBAAmB;AAClB,YAAM,aAAa,CAAA;AAEnB,UAAI,KAAK,kBAAkB;AAE1B,mBAAW,OAAO;AAElB,YAAI,KAAK,SAAS,SAAS;AAC1B,qBAAW,OAAO;AAClB,qBAAW,cAAc,IAAI,KAAK,YAAY,SAAS;AAAA,QACxD,WAAW,KAAK,SAAS,cAAe,KAAK,eAAe,YAAY,KAAK,eAAe,MAAO;AAElG,qBAAW,OAAO;AAClB,qBAAW,cAAc,IAAI,KAAK,eAAe,OAAO,UAAW,KAAK,aAAa,SAAS;AAAA,QAC/F;AAAA,iBACU,KAAK,eAAe,QAAQ,KAAK,eAAe,UAAU;AAEpE,mBAAW,cAAc,IAAI,KAAK,aAAa,SAAS;AAAA,MACzD;AAEA,aAAO;AAAA,IACP;AAAA,EACD;AAAA,EAED,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,IAKR,YAAY,OAAO;AAClB,WAAK,QAAQ,KAAK;AAElB,UAAI,KAAK,eAAe,QAAQ,KAAK,SAAS,UAAU;AACvD,YAAI,KAAK,SAAS,SAAS;AAC1B,cAAI,OAAO,KAAK,eAAe,WAAW;AAEzC,gBAAI,CAAC,KAAK,WAAW;AACpB,mBAAK,MAAM,qBAAqB,KAAK,KAAK;AAAA,YAC3C;AAAA,iBACM;AAEN,iBAAK,MAAM,qBAAqB,CAAC,KAAK,SAAS;AAAA,UAChD;AAAA,eACM;AAEN,eAAK,MAAM,qBAAqB,CAAC,KAAK,SAAS;AAAA,QAChD;AAAA,MACD;AAAA,IACA;AAAA,EACD;AACF;AAziBA,MAAA,aAAA,CAAA,MAAA;AAAA,MAAA,aAAA,CAAA,cAAA,YAAA,SAAA,MAAA;;EAAA,KAAA;AAAA,EAgVI,OAAM;;AACE,MAAA,aAAA,EAAA,OAAM,sBAAqB;AAjVvC,MAAA,aAAA,CAAA,aAAA;AAAA,MAAA,aAAA,CAAA,aAAA;;EAAA,KAAA;AAAA,EAkWgB,OAAM;;;EAlWtB,KAAA;AAAA,EAwWyC,OAAM;;;;;;sBA7C9CC,mBAkDK,MAAA;AAAA,IAlDD,OA3TLC,eAAA,CA2TW,UAAQ,EAAA,oBAA+B,OAAQ,SAAA,CAAA,CAAA;AAAA,IAAK,MAAM,SAAgB,oBAAA;AAAA;IACnFC,mBAgDS,UAhDTC,WAgDS;AAAA,MAhDA,cAAY,KAAS;AAAA,MAC5B,OAAK,CAAA,4BAAA;AAAA,iCAA8D,SAAS;AAAA,mBAAiB,SAAW;AAAA;MAIxG,UAAU,OAAQ;AAAA,MAClB,OAAO,KAAK;AAAA,MACZ,MAAM,SAAU;AAAA,OACT,SAAgB,kBAAA;AAAA,MACvB,gDAAO,SAAW,eAAA,SAAA,YAAA,GAAA,IAAA;AAAA;MAEnBC,WAKO,yBALP,MAKO;AAAA,QAJNF,mBAG+B,QAAA;AAAA,UAHxB,OAxUXD,eAwUmB,CAAA,CAAA,KAAA,YAAyC,6BAAA,KAAA,IAAI,GAGrD,qBAAqB,CAAA;AAAA,UAF1B,OAzUNI,eAAA,EAAA,iBAyUgC,KAAS,YAAA,OAAU,KAAI,IAAA,MAAA,KAAA,CAAA;AAAA,UAClD,eAAY;AAAA;;MAKF,KAAI,QAAhBC,aAAAN,mBASO,QATP,YASO;AAAA,QAPNE,mBAES,UAFT,YAESK,gBADL,KAAI,IAAA,GAAA,CAAA;AAAA,kCAERL,mBAAI,MAAA,MAAA,MAAA,EAAA;AAAA,QAGJA,mBAAsD,QAAA;AAAA,UAAhD,OAAM;AAAA,UAvVhB,aAuV0CK,gBAAa,KAAD,IAAA;AAAA,QAvVtD,GAAA,MAAA,GAAA,UAAA;AAAA,YA6VoB,KAAU,2BAA3BP,mBAEiB,QAAA;AAAA,QA/VpB,KAAA;AAAA,QA8VI,OAAM;AAAA,QA9VV,aA+VIO,gBAAa,KAAD,IAAA;AAAA,MA/VhB,GAAA,MAAA,GAAA,UAAA,mBAkWGP,mBAA0D,QAA1D,YAA0DO,gBAAd,KAAI,IAAA,GAAA,CAAA;AAAA,MAGxB,OAAA,WAAW,OAAK,sBAAxCC,YAAwF,6BAAA;AAAA,QArW3F,KAAA;AAAA,QAqW8C,MAAM;AAAA,QAAI,OAAM;AAAA,YAC/B,OAAA,UAAU,OAAK,sBAA3CA,YAA2F,4BAAA;AAAA,QAtW9F,KAAA;AAAA,QAsWiD,MAAM;AAAA,QAAI,OAAM;AAAA,YACxC,SAAS,cAAA,qBAA/BA,YAA2F,sBAAA;AAAA,QAvW9F,KAAA;AAAA,QAuW8C,MAAM;AAAA,QAAI,OAAM;AAAA,YAC1C,SAAS,cAAA,SAA1BF,aAAAN,mBAAiG,QAAjG,UAAiG,KAxWpGS,mBAAA,IAAA,IAAA;AAAA,MAAAA,mBAAA,IAAA,IAAA;AAAA,IAAA,GAAA,IAAA,UAAA;AAAA,EAAA,GAAA,IAAA,UAAA;;;"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import '../assets/NcActionButtonGroup-
|
|
2
|
-
import { defineComponent,
|
|
3
|
-
import {
|
|
4
|
-
import { r as register, a as t } from "./_l10n-
|
|
1
|
+
import '../assets/NcActionButtonGroup-BND4GQdv.css';
|
|
2
|
+
import { defineComponent, createElementBlock, openBlock, createCommentVNode, createElementVNode, toDisplayString, renderSlot } from "vue";
|
|
3
|
+
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
4
|
+
import { r as register, a as t } from "./_l10n-7kR7gXFc.mjs";
|
|
5
|
+
import { a as NC_ACTIONS_IS_SEMANTIC_MENU } from "./useNcActions-CiGWxAJE.mjs";
|
|
5
6
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
6
7
|
register();
|
|
7
8
|
const _sfc_main = defineComponent({
|
|
8
9
|
name: "NcActionButtonGroup",
|
|
9
10
|
inject: {
|
|
10
11
|
isInSemanticMenu: {
|
|
11
|
-
from:
|
|
12
|
+
from: NC_ACTIONS_IS_SEMANTIC_MENU,
|
|
12
13
|
default: false
|
|
13
14
|
}
|
|
14
15
|
},
|
|
@@ -24,7 +25,7 @@ const _sfc_main = defineComponent({
|
|
|
24
25
|
},
|
|
25
26
|
setup() {
|
|
26
27
|
return {
|
|
27
|
-
labelId:
|
|
28
|
+
labelId: createElementId()
|
|
28
29
|
};
|
|
29
30
|
},
|
|
30
31
|
methods: {
|
|
@@ -56,3 +57,4 @@ const NcActionButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _
|
|
|
56
57
|
export {
|
|
57
58
|
NcActionButtonGroup as N
|
|
58
59
|
};
|
|
60
|
+
//# sourceMappingURL=NcActionButtonGroup-TitZerDl.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionButtonGroup-TitZerDl.mjs","sources":["../../src/components/NcActionButtonGroup/NcActionButtonGroup.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 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 inside of the [NcActions](#NcActions) component slots,\nto group buttons as one visual action, like for text alignment.\nThis should be used sparingly for accessibility.\n\n```vue\n<template>\n\t<div style=\"display: flex; align-items: center;\">\n\t\t<NcActions>\n\t\t\t<NcActionButtonGroup name=\"Text alignment\">\n\t\t\t\t<NcActionButton aria-label=\"Align left\"\n\t\t\t\t\tv-model=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"l\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton aria-label=\"Align center\"\n\t\t\t\t\tv-model=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"c\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignCenter :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton aria-label=\"Align right\"\n\t\t\t\t\tv-model=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"r\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActionButtonGroup>\n\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t@click=\"showMessage('Some other action')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tSome other action\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</div>\n</template>\n<script>\nimport AlignLeft from 'vue-material-design-icons/AlignHorizontalLeft'\nimport AlignRight from 'vue-material-design-icons/AlignHorizontalRight'\nimport AlignCenter from 'vue-material-design-icons/AlignHorizontalCenter'\nimport Plus from 'vue-material-design-icons/Plus'\n\nexport default {\n\tcomponents: {\n\t\tAlignLeft,\n\t\tAlignRight,\n\t\tAlignCenter,\n\t\tPlus,\n\t},\n\tdata() {\n\t\treturn { alignment: 'l' }\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"nc-button-group-base\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<div v-if=\"name\" :id=\"labelId\">\n\t\t\t{{ name }}\n\t\t</div>\n\t\t<ul class=\"nc-button-group-content\" role=\"group\" :aria-labelledby=\"name ? labelId : undefined\">\n\t\t\t<slot />\n\t\t</ul>\n\t</li>\n</template>\n\n<script>\nimport { defineComponent } from 'vue'\nimport { createElementId } from '../../utils/createElementId.ts'\nimport { t } from '../../l10n.js'\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\n/**\n * A wrapper for allowing inlining NcAction components within the action menu\n */\nexport default defineComponent({\n\tname: 'NcActionButtonGroup',\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Optional text shown below the button group\n\t\t */\n\t\tname: {\n\t\t\trequired: false,\n\t\t\tdefault: undefined,\n\t\t\ttype: String,\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tlabelId: createElementId(),\n\t\t}\n\t},\n\n\tmethods: {\n\t\tt,\n\t},\n})\n</script>\n\n<style lang=\"scss\">\n.nc-button-group-base {\n\t>div {\n\t\ttext-align: center;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\tul.nc-button-group-content {\n\t\tdisplay: flex;\n\t\tgap: 4px; // required for the focus-visible outline\n\t\tjustify-content: space-between;\n\t\tli {\n\t\t\tflex: 1 1;\n\t\t}\n\n\t\t.action-button {\n\t\t\t// Fix action buttons beeing shifted to the left (right padding)\n\t\t\tpadding: 0 !important;\n\t\t\twidth: 100%;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\n\t\t\t&.action-button--active {\n\t\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t\tborder-radius: var(--border-radius-large);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\n\t\t\t\t&:hover, &:focus, &:focus-within {\n\t\t\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.action-button__pressed-icon {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n"],"names":["_createElementBlock","_toDisplayString","_createCommentVNode","_createElementVNode","_renderSlot"],"mappings":";;;;;;AAgGA,MAAK,YAAa,gBAAa;AAAA,EAC9B,MAAM;AAAA,EAEN,QAAQ;AAAA,IACP,kBAAkB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIN,MAAM;AAAA,MACL,UAAU;AAAA,MACV,SAAS;AAAA,MACT,MAAM;AAAA,IACN;AAAA,EACD;AAAA,EAED,QAAQ;AACP,WAAO;AAAA,MACN,SAAS,gBAAiB;AAAA,IAC3B;AAAA,EACA;AAAA,EAED,SAAS;AAAA,IACR;AAAA,EACA;AACF,CAAC;AA9HD,MAAA,aAAA,CAAA,MAAA;AAAA,MAAA,aAAA,CAAA,IAAA;AAAA,MAAA,aAAA,CAAA,iBAAA;;sBA6ECA,mBAOK,MAAA;AAAA,IAPD,OAAM;AAAA,IAAwB,MAAM,KAAgB,oBAAA;AAAA;IAC5C,KAAI,qBAAfA,mBAEM,OAAA;AAAA,MAhFR,KAAA;AAAA,MA8EoB,IAAI,KAAO;AAAA,IACzB,GAAAC,gBAAA,KAAA,IAAI,GA/EV,GAAA,UAAA,KAAAC,mBAAA,IAAA,IAAA;AAAA,IAiFEC,mBAEK,MAAA;AAAA,MAFD,OAAM;AAAA,MAA0B,MAAK;AAAA,MAAS,mBAAiB,KAAA,OAAO,KAAA,UAAU;AAAA;MACnFC,WAAQ,KAAA,QAAA,SAAA;AAAA,IAlFX,GAAA,GAAA,UAAA;AAAA,EAAA,GAAA,GAAA,UAAA;;;"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import '../assets/NcActionCaption-
|
|
2
|
-
import {
|
|
1
|
+
import '../assets/NcActionCaption-DnG2OyWa.css';
|
|
2
|
+
import { a as NC_ACTIONS_IS_SEMANTIC_MENU } from "./useNcActions-CiGWxAJE.mjs";
|
|
3
|
+
import { createElementBlock, openBlock, toDisplayString } from "vue";
|
|
3
4
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
4
5
|
const _sfc_main = {
|
|
5
6
|
name: "NcActionCaption",
|
|
6
7
|
inject: {
|
|
7
8
|
isInSemanticMenu: {
|
|
8
|
-
from:
|
|
9
|
+
from: NC_ACTIONS_IS_SEMANTIC_MENU,
|
|
9
10
|
default: false
|
|
10
11
|
}
|
|
11
12
|
},
|
|
@@ -26,7 +27,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
26
27
|
role: $options.isInSemanticMenu && "presentation"
|
|
27
28
|
}, toDisplayString($props.name), 9, _hoisted_1);
|
|
28
29
|
}
|
|
29
|
-
const NcActionCaption = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
30
|
+
const NcActionCaption = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-1009e96c"]]);
|
|
30
31
|
export {
|
|
31
32
|
NcActionCaption as N
|
|
32
33
|
};
|
|
34
|
+
//# sourceMappingURL=NcActionCaption-Fumfjzxj.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionCaption-Fumfjzxj.mjs","sources":["../../src/components/NcActionCaption/NcActionCaption.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2021 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 inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<NcActions>\n\t\t<NcActionCaption name=\"Test caption\" />\n\t\t<NcActionCaption name=\"Test caption 2\" />\n\t</NcActions>\n```\n</docs>\n\n<template>\n\t<li class=\"app-navigation-caption\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t{{ name }}\n\t</li>\n</template>\n\n<script>\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\nexport default {\n\tname: 'NcActionCaption',\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * The caption's text\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.app-navigation-caption {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tline-height: var(--default-clickable-area);\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tbox-shadow: none !important;\n\t\tuser-select: none;\n\t\tpointer-events: none;\n\t\tmargin-inline-start: 12px;\n\t\tpadding-inline-end: 14px;\n\t\theight: var(--default-clickable-area);\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n</style>\n"],"names":["_createElementBlock","_toDisplayString"],"mappings":";;;AAyBA,MAAK,YAAU;AAAA,EACd,MAAM;AAAA,EAEN,QAAQ;AAAA,IACP,kBAAkB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIN,MAAM;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,IACV;AAAA,EACD;AACF;AA5CA,MAAA,aAAA,CAAA,MAAA;;sBAiBCA,mBAEK,MAAA;AAAA,IAFD,OAAM;AAAA,IAA0B,MAAM,SAAgB,oBAAA;AAAA,EACtD,GAAAC,gBAAA,OAAA,IAAI,GAlBT,GAAA,UAAA;;;"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import '../assets/NcActionCheckbox-
|
|
1
|
+
import '../assets/NcActionCheckbox-tMIOGziy.css';
|
|
2
2
|
import { A as ActionGlobalMixin } from "./actionGlobal-BZFdtdJL.mjs";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
4
|
+
import { a as NC_ACTIONS_IS_SEMANTIC_MENU } from "./useNcActions-CiGWxAJE.mjs";
|
|
5
|
+
import { createElementBlock, openBlock, normalizeClass, createElementVNode, createCommentVNode, withKeys, withModifiers, toDisplayString } from "vue";
|
|
5
6
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
6
7
|
const _sfc_main = {
|
|
7
8
|
name: "NcActionCheckbox",
|
|
8
9
|
mixins: [ActionGlobalMixin],
|
|
9
10
|
inject: {
|
|
10
11
|
isInSemanticMenu: {
|
|
11
|
-
from:
|
|
12
|
+
from: NC_ACTIONS_IS_SEMANTIC_MENU,
|
|
12
13
|
default: false
|
|
13
14
|
}
|
|
14
15
|
},
|
|
@@ -18,7 +19,7 @@ const _sfc_main = {
|
|
|
18
19
|
*/
|
|
19
20
|
id: {
|
|
20
21
|
type: String,
|
|
21
|
-
default: () => "action-" +
|
|
22
|
+
default: () => "action-" + createElementId(),
|
|
22
23
|
validator: (id) => id.trim() !== ""
|
|
23
24
|
},
|
|
24
25
|
/**
|
|
@@ -119,7 +120,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
119
120
|
], 8, _hoisted_2)
|
|
120
121
|
], 10, _hoisted_1);
|
|
121
122
|
}
|
|
122
|
-
const NcActionCheckbox = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
123
|
+
const NcActionCheckbox = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-735edb01"]]);
|
|
123
124
|
export {
|
|
124
125
|
NcActionCheckbox as N
|
|
125
126
|
};
|
|
127
|
+
//# sourceMappingURL=NcActionCheckbox-CUYbo1rw.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionCheckbox-CUYbo1rw.mjs","sources":["../../src/components/NcActionCheckbox/NcActionCheckbox.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 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 inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<NcActions>\n\t\t<NcActionCheckbox @change=\"alert('(un)checked !')\">First choice</NcActionCheckbox>\n\t\t<NcActionCheckbox value=\"second\" @change=\"alert('(un)checked !')\">Second choice</NcActionCheckbox>\n\t\t<NcActionCheckbox :model-value=\"true\" @change=\"alert('(un)checked !')\">Third choice (checked)</NcActionCheckbox>\n\t\t<NcActionCheckbox :disabled=\"true\" @change=\"alert('(un)checked !')\">Second choice (disabled)</NcActionCheckbox>\n\t</NcActions>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<span class=\"action-checkbox\" :role=\"isInSemanticMenu && 'menuitemcheckbox'\" :aria-checked=\"ariaChecked\">\n\t\t\t<input :id=\"id\"\n\t\t\t\tref=\"checkbox\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:checked=\"modelValue\"\n\t\t\t\t:value=\"value\"\n\t\t\t\t:class=\"{ focusable: isFocusable }\"\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\tclass=\"checkbox action-checkbox__checkbox\"\n\t\t\t\t@keydown.enter.exact.prevent=\"checkInput\"\n\t\t\t\t@change=\"onChange\">\n\t\t\t<label ref=\"label\" :for=\"id\" class=\"action-checkbox__label\">{{ text }}</label>\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nimport ActionGlobalMixin from '../../mixins/actionGlobal.js'\nimport { createElementId } from '../../utils/createElementId.ts'\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\nexport default {\n\tname: 'NcActionCheckbox',\n\n\tmixins: [ActionGlobalMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * id attribute of the checkbox element\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'action-' + createElementId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\n\t\t/**\n\t\t * checked state of the the checkbox element\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * value of the checkbox input\n\t\t */\n\t\tvalue: {\n\t\t\ttype: [String, Number],\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * disabled state of the checkbox element\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: [\n\t\t'change',\n\t\t'check',\n\t\t'uncheck',\n\t\t'update:modelValue',\n\t],\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * aria-checked attribute for role=\"menuitemcheckbox\"\n\t\t *\n\t\t * @return {'true'|'false'|undefined} aria-checked value if needed\n\t\t */\n\t\tariaChecked() {\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\treturn this.modelValue ? 'true' : 'false'\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\t},\n\n\tmethods: {\n\t\tcheckInput(/* event */) {\n\t\t\t// by clicking we also trigger the change event\n\t\t\tthis.$refs.label.click()\n\t\t},\n\t\tonChange(event) {\n\t\t\t/**\n\t\t\t * Emitted when the checkbox state is changed\n\t\t\t *\n\t\t\t * @type {boolean}\n\t\t\t */\n\t\t\tthis.$emit('update:modelValue', this.$refs.checkbox.checked)\n\n\t\t\t/**\n\t\t\t * Emitted when the checkbox state is changed\n\t\t\t *\n\t\t\t * @type {Event}\n\t\t\t */\n\t\t\tthis.$emit('change', event)\n\n\t\t\tif (this.$refs.checkbox.checked) {\n\t\t\t\t/**\n\t\t\t\t * Emitted when the checkbox is checked\n\t\t\t\t *\n\t\t\t\t * @type {Event}\n\t\t\t\t */\n\t\t\t\tthis.$emit('check')\n\t\t\t} else {\n\t\t\t\t/**\n\t\t\t\t * Emitted when the checkbox is unchecked\n\t\t\t\t *\n\t\t\t\t * @type {Event}\n\t\t\t\t */\n\t\t\t\tthis.$emit('uncheck')\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n\n.action-checkbox {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\twidth: 100%;\n\theight: auto;\n\tmargin: 0;\n\tpadding: 0;\n\n\tcursor: pointer;\n\twhite-space: nowrap;\n\n\tcolor: var(--color-main-text);\n\tborder: 0;\n\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\tbackground-color: transparent;\n\tbox-shadow: none;\n\n\tfont-weight: normal;\n\tline-height: var(--default-clickable-area);\n\n\t/* checkbox/radio fixes */\n\t&__checkbox {\n\t\tposition: absolute;\n\t\tinset-inline-start: 0 !important;\n\t\tz-index: -1;\n\t\topacity: 0;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\talign-items: center; // align checkbox to text\n\n\t\twidth: 100%;\n\t\tpadding: 0 !important;\n\t\tpadding-inline-end: $icon-margin !important;\n\n\t\t&::before {\n\t\t\tmargin-block: 0 !important;\n\t\t\tmargin-inline: calc((var(--default-clickable-area) - 14px) / 2) !important;\n\t\t}\n\t}\n\n\t&--disabled {\n\t\t&,\n\t\t.action-checkbox__label {\n\t\t\tcursor: pointer;\n\t\t}\n\t}\n}\n\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_withKeys","_withModifiers","_toDisplayString","_createCommentVNode"],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import '../assets/NcActionInput-
|
|
2
|
-
import { N as NcDateTimePicker } from "./NcDateTimePicker-
|
|
3
|
-
import { N as NcDateTimePickerNative } from "./NcDateTimePickerNative-
|
|
4
|
-
import { N as NcPasswordField } from "./NcPasswordField-
|
|
5
|
-
import { N as NcSelect } from "./NcSelect-
|
|
6
|
-
import { N as NcTextField } from "./NcTextField-
|
|
1
|
+
import '../assets/NcActionInput-C-rQsTEA.css';
|
|
2
|
+
import { N as NcDateTimePicker } from "./NcDateTimePicker-BzfuHym4.mjs";
|
|
3
|
+
import { N as NcDateTimePickerNative } from "./NcDateTimePickerNative-Dake1IML.mjs";
|
|
4
|
+
import { N as NcPasswordField } from "./NcPasswordField-BnnlEhT1.mjs";
|
|
5
|
+
import { N as NcSelect } from "./NcSelect-CAx_ixPU.mjs";
|
|
6
|
+
import { N as NcTextField } from "./NcTextField-BTzKCPza.mjs";
|
|
7
7
|
import { A as ActionGlobalMixin } from "./actionGlobal-BZFdtdJL.mjs";
|
|
8
|
-
import {
|
|
9
|
-
import { r as register,
|
|
10
|
-
import { resolveComponent,
|
|
8
|
+
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
9
|
+
import { r as register, g as t45, a as t } from "./_l10n-7kR7gXFc.mjs";
|
|
10
|
+
import { resolveComponent, createElementBlock, openBlock, normalizeClass, createElementVNode, renderSlot, normalizeStyle, withModifiers, createCommentVNode, toDisplayString, createBlock, mergeProps, createVNode, withCtx } from "vue";
|
|
11
11
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
12
12
|
register(t45);
|
|
13
13
|
const _sfc_main = {
|
|
@@ -27,7 +27,7 @@ const _sfc_main = {
|
|
|
27
27
|
*/
|
|
28
28
|
id: {
|
|
29
29
|
type: String,
|
|
30
|
-
default: () => "action-" +
|
|
30
|
+
default: () => "action-" + createElementId(),
|
|
31
31
|
validator: (id) => id.trim() !== ""
|
|
32
32
|
},
|
|
33
33
|
/**
|
|
@@ -35,7 +35,7 @@ const _sfc_main = {
|
|
|
35
35
|
*/
|
|
36
36
|
inputId: {
|
|
37
37
|
type: String,
|
|
38
|
-
default: () => "action-input-" +
|
|
38
|
+
default: () => "action-input-" + createElementId(),
|
|
39
39
|
validator: (id) => id.trim() !== ""
|
|
40
40
|
},
|
|
41
41
|
/**
|
|
@@ -352,7 +352,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
352
352
|
], 34)
|
|
353
353
|
], 2);
|
|
354
354
|
}
|
|
355
|
-
const NcActionInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
355
|
+
const NcActionInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-d10284cf"]]);
|
|
356
356
|
export {
|
|
357
357
|
NcActionInput as N
|
|
358
358
|
};
|
|
359
|
+
//# sourceMappingURL=NcActionInput-TI648L3V.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionInput-TI648L3V.mjs","sources":["../../src/components/NcActionInput/NcActionInput.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 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 inside of the [NcActions](#NcActions) component slots.\n\nIt is recommended to not only provide a placeholder, but also a label.\nThe label should describe what input is expected and the placehold what format the input should have.\n\nAll undocumented attributes will be bound to the input, the datepicker or the select component, e.g. `maxlength`, `not-before`.\nFor the `NcSelect` component, all events will be passed through. Please see the `NcSelect` component's documentation for more details and examples.\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionInput v-model=\"text\" :label-outside=\"true\" label=\"Label outside the input\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput v-model=\"text\" :show-trailing-button=\"false\" label=\"Input without trailing button\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput v-model=\"text\" label=\"Input with placeholder\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis is the placeholder\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput type=\"password\" v-model=\"text\" label=\"Password with visible label\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Key :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPassword placeholder\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput type=\"password\" v-model=\"text\" :show-trailing-button=\"false\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Key :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPassword placeholder\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput type=\"color\" v-model=\"color\" label=\"Favorite color\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Eyedropper :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tColor placeholder\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput label=\"Visible label\" v-model=\"text\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tInput with visible label\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput :disabled=\"true\" label=\"This is a disabled input\">\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</NcActionInput>\n\t\t\t<NcActionInput type=\"date\" isNativePicker v-model=\"date\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPlease pick a date\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput type=\"date\" v-model=\"date\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPlease pick a date\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput\n\t\t\t\ttype=\"multiselect\"\n\t\t\t\tinput-label=\"Fruit selection\"\n\t\t\t\t:options=\"['Apple', 'Banana', 'Cherry']\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPlease pick a fruit\n\t\t\t</NcActionInput>\n\t\t\t<NcActionInput\n\t\t\t\tv-model=\"multiSelected\"\n\t\t\t\ttype=\"multiselect\"\n\t\t\t\tinput-label=\"Fruit selection\"\n\t\t\t\ttrack-by=\"id\"\n\t\t\t\t:append-to-body=\"true\"\n\t\t\t\t:multiple=\"true\"\n\t\t\t\t:options=\"[{label:'Apple', id: 'apple'}, {label:'Banana', id: 'banana'}, {label:'Cherry', id: 'cherry'}]\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPlease pick a fruit object\n\t\t\t</NcActionInput>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Close from 'vue-material-design-icons/Close'\n\timport Eyedropper from 'vue-material-design-icons/Eyedropper'\n\timport Key from 'vue-material-design-icons/Key'\n\timport Pencil from 'vue-material-design-icons/Pencil'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tClose,\n\t\t\tEyedropper,\n\t\t\tKey,\n\t\t\tPencil,\n\t\t},\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tcolor: '#0082C9',\n\t\t\t\tdate: new Date(),\n\t\t\t\ttext: 'This is the input text',\n\t\t\t\tmultiSelected: [],\n\t\t\t}\n\t\t},\n\t}\n\t</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"[{ 'action--disabled': disabled }, $props.class ]\">\n\t\t<span :class=\"{\n\t\t\t\t'action-input-picker--disabled': disabled,\n\t\t\t\t'action-input--visible-label': labelOutside && label,\n\t\t\t}\"\n\t\t\tclass=\"action-input\"\n\t\t\t@mouseleave=\"onLeave\">\n\t\t\t<span class=\"action-input__icon-wrapper\">\n\t\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t\t<slot name=\"icon\">\n\t\t\t\t\t<span :class=\"[isIconUrl ? 'action-input__icon--url' : icon]\"\n\t\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclass=\"action-input__icon\" />\n\t\t\t\t</slot>\n\t\t\t</span>\n\n\t\t\t<!-- form and input -->\n\t\t\t<form ref=\"form\"\n\t\t\t\tclass=\"action-input__form\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@submit.prevent=\"onSubmit\">\n\t\t\t\t<div class=\"action-input__container\">\n\t\t\t\t\t<label v-if=\"label && labelOutside\"\n\t\t\t\t\t\tclass=\"action-input__text-label\"\n\t\t\t\t\t\t:class=\"{ 'action-input__text-label--hidden': !labelOutside}\"\n\t\t\t\t\t\t:for=\"inputId\">\n\t\t\t\t\t\t{{ label }}\n\t\t\t\t\t</label>\n\t\t\t\t\t<div class=\"action-input__input-container\">\n\n\t\t\t\t\t\t<NcDateTimePicker v-if=\"datePickerType\"\n\t\t\t\t\t\t\tref=\"datetimepicker\"\n\t\t\t\t\t\t\t:model-value=\"modelValue\"\n\t\t\t\t\t\t\tstyle=\"z-index: 99999999999;\"\n\t\t\t\t\t\t\t:placeholder=\"text\"\n\t\t\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t\t\t:type=\"datePickerType\"\n\t\t\t\t\t\t\t:input-class=\"['mx-input', { focusable: isFocusable }]\"\n\t\t\t\t\t\t\tclass=\"action-input__datetimepicker\"\n\t\t\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t\t\t@update:model-value=\"onUpdateModelValue\" />\n\n\t\t\t\t\t\t<NcDateTimePickerNative v-else-if=\"isNativePicker\"\n\t\t\t\t\t\t\t:id=\"idNativeDateTimePicker\"\n\t\t\t\t\t\t\t:model-value=\"modelValue\"\n\t\t\t\t\t\t\t:type=\"nativeDatePickerType\"\n\t\t\t\t\t\t\t:input-class=\"{ focusable: isFocusable }\"\n\t\t\t\t\t\t\tclass=\"action-input__datetimepicker\"\n\t\t\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t\t\t@update:model-value=\"onUpdateModelValue\" />\n\n\t\t\t\t\t\t<NcSelect v-else-if=\"isMultiselectType\"\n\t\t\t\t\t\t\t:model-value=\"modelValue\"\n\t\t\t\t\t\t\t:placeholder=\"text\"\n\t\t\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t\t\t:append-to-body=\"false\"\n\t\t\t\t\t\t\t:input-class=\"{ focusable: isFocusable }\"\n\t\t\t\t\t\t\tclass=\"action-input__multi\"\n\t\t\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t\t\t@update:model-value=\"onUpdateModelValue\" />\n\n\t\t\t\t\t\t<NcPasswordField v-else-if=\"type==='password'\"\n\t\t\t\t\t\t\t:id=\"inputId\"\n\t\t\t\t\t\t\t:model-value=\"modelValue\"\n\t\t\t\t\t\t\t:label=\"label\"\n\t\t\t\t\t\t\t:label-outside=\"!label || labelOutside\"\n\t\t\t\t\t\t\t:placeholder=\"text\"\n\t\t\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t\t\t:input-class=\"{ focusable: isFocusable }\"\n\t\t\t\t\t\t\t:show-trailing-button=\"showTrailingButton && !disabled\"\n\t\t\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t\t\t@update:model-value=\"onUpdateModelValue\" />\n\n\t\t\t\t\t\t<div v-else-if=\"type === 'color'\" class=\"action-input__container\">\n\t\t\t\t\t\t\t<label v-if=\"label && type === 'color'\"\n\t\t\t\t\t\t\t\tclass=\"action-input__text-label\"\n\t\t\t\t\t\t\t\t:class=\"{ 'action-input__text-label--hidden': !labelOutside}\"\n\t\t\t\t\t\t\t\t:for=\"inputId\">\n\t\t\t\t\t\t\t\t{{ label }}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<div class=\"action-input__input-container\">\n\t\t\t\t\t\t\t\t<NcColorPicker id=\"inputId\"\n\t\t\t\t\t\t\t\t\t:model-value=\"modelValue\"\n\t\t\t\t\t\t\t\t\tclass=\"colorpicker__trigger\"\n\t\t\t\t\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t\t\t\t\t@update:model-value=\"onUpdateModelValue\"\n\t\t\t\t\t\t\t\t\t@submit=\"$refs.form.requestSubmit()\">\n\t\t\t\t\t\t\t\t\t<button :style=\"{'background-color': modelValue}\"\n\t\t\t\t\t\t\t\t\t\tclass=\"colorpicker__preview\"\n\t\t\t\t\t\t\t\t\t\t:class=\"{ focusable: isFocusable }\" />\n\t\t\t\t\t\t\t\t</NcColorPicker>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<NcTextField v-else\n\t\t\t\t\t\t\t:id=\"inputId\"\n\t\t\t\t\t\t\t:model-value=\"modelValue\"\n\t\t\t\t\t\t\t:label=\"label\"\n\t\t\t\t\t\t\t:label-outside=\"!label || labelOutside\"\n\t\t\t\t\t\t\t:placeholder=\"text\"\n\t\t\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t\t\t:input-class=\"{ focusable: isFocusable }\"\n\t\t\t\t\t\t\t:type=\"type\"\n\t\t\t\t\t\t\ttrailing-button-icon=\"arrowRight\"\n\t\t\t\t\t\t\t:trailing-button-label=\"trailingButtonLabel\"\n\t\t\t\t\t\t\t:show-trailing-button=\"showTrailingButton && !disabled\"\n\t\t\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t\t\t@trailing-button-click=\"$refs.form.requestSubmit()\"\n\t\t\t\t\t\t\t@update:model-value=\"onUpdateModelValue\" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</form>\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nimport NcDateTimePicker from '../NcDateTimePicker/index.js'\nimport NcDateTimePickerNative from '../NcDateTimePickerNative/index.js'\nimport NcPasswordField from '../NcPasswordField/index.js'\nimport NcSelect from '../NcSelect/index.js'\nimport NcTextField from '../NcTextField/index.js'\nimport ActionGlobalMixin from '../../mixins/actionGlobal.js'\nimport { createElementId } from '../../utils/createElementId.ts'\nimport { t } from '../../l10n.js'\n\nexport default {\n\tname: 'NcActionInput',\n\n\tcomponents: {\n\t\tNcDateTimePicker,\n\t\tNcDateTimePickerNative,\n\t\tNcPasswordField,\n\t\tNcSelect,\n\t\tNcTextField,\n\t},\n\n\tmixins: [ActionGlobalMixin],\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\t/**\n\t\t * id attribute of the checkbox element\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'action-' + createElementId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\t\t/**\n\t\t * id attribute of the text input element\n\t\t */\n\t\tinputId: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'action-input-' + createElementId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\t\t/**\n\t\t * Icon to show with the action, can be either a CSS class or an URL\n\t\t */\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * type attribute of the input field\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'text',\n\t\t\tvalidator(type) {\n\t\t\t\treturn ['date', 'datetime-local', 'month', 'multiselect',\n\t\t\t\t\t'number', 'password', 'search', 'tel',\n\t\t\t\t\t'text', 'time', 'url', 'week', 'color',\n\t\t\t\t\t'email'].indexOf(type) > -1\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * id attribute for the native date time picker\n\t\t */\n\t\tidNativeDateTimePicker: {\n\t\t\ttype: String,\n\t\t\tdefault: 'date-time-picker_id',\n\t\t},\n\t\t/**\n\t\t * Flag to use a native date time picker\n\t\t */\n\t\tisNativePicker: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * The visible input label for accessibility purposes.\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * If you want to show the label just above the\n\t\t * input field, pass in `true` to this prop.\n\t\t */\n\t\tlabelOutside: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * value attribute of the input field\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [String, Date, Number, Array],\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * disabled state of the input field\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * aria-label attribute of the input field\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Attribute forwarded to the underlying NcPasswordField and NcTextField\n\t\t */\n\t\tshowTrailingButton: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * Trailing button label forwarded to the underlying NcTextField\n\t\t */\n\t\ttrailingButtonLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: t('Submit'),\n\t\t},\n\t\t/**\n\t\t * CSS class to apply to the root element.\n\t\t */\n\t\tclass: {\n\t\t\ttype: [String, Array, Object],\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t'submit',\n\t\t'update:modelValue',\n\t],\n\n\tcomputed: {\n\t\tisIconUrl() {\n\t\t\ttry {\n\t\t\t\treturn new URL(this.icon)\n\t\t\t} catch (error) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\n\t\tisMultiselectType() {\n\t\t\treturn this.type === 'multiselect'\n\t\t},\n\n\t\tnativeDatePickerType() {\n\t\t\tswitch (this.type) {\n\t\t\tcase 'date':\n\t\t\tcase 'month':\n\t\t\tcase 'time':\n\t\t\tcase 'week':\n\t\t\tcase 'datetime-local':\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\n\t\tdatePickerType() {\n\t\t\tif (!this.isNativePicker) {\n\t\t\t\tswitch (this.type) {\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'month':\n\t\t\t\tcase 'time':\n\t\t\t\t\treturn this.type\n\n\t\t\t\tcase 'datetime-local':\n\t\t\t\t\treturn 'datetime'\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\t},\n\n\tmethods: {\n\t\t// closing datepicker popup on mouseleave = unfocus\n\t\tonLeave() {\n\t\t\tif (this.$refs.datetimepicker && this.$refs.datetimepicker.$refs.datepicker) {\n\t\t\t\tthis.$refs.datetimepicker.$refs.datepicker.closePopup()\n\t\t\t}\n\t\t},\n\t\tonSubmit(event) {\n\t\t\tevent.preventDefault()\n\t\t\tevent.stopPropagation()\n\t\t\tif (!this.disabled) {\n\t\t\t\t/**\n\t\t\t\t * Emitted on submit of the input field\n\t\t\t\t *\n\t\t\t\t * @type {Event}\n\t\t\t\t */\n\t\t\t\tthis.$emit('submit', event)\n\t\t\t} else {\n\t\t\t\t// ignore submit\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\t\tonUpdateModelValue(event) {\n\t\t\t/**\n\t\t\t * Emitted on update of the model value\n\t\t\t *\n\t\t\t * @type {Event}\n\t\t\t */\n\t\t\tthis.$emit('update:modelValue', event)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/inputs';\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n\n$input-margin: 4px;\n\n.action-input {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\twidth: 100%;\n\theight: auto;\n\tmargin: 0;\n\tpadding: 0;\n\n\tcursor: pointer;\n\twhite-space: nowrap;\n\n\tcolor: var(--color-main-text);\n\tborder: 0;\n\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\tbackground-color: transparent;\n\tbox-shadow: none;\n\n\tfont-weight: normal;\n\n\t&__icon-wrapper {\n\t\tdisplay: flex;\n\t\talign-self: center;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\n\t\t&:deep(.material-design-icon) {\n\t\t\twidth: var(--default-clickable-area);\n\t\t\theight: var(--default-clickable-area);\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\t}\n\n\t& > span {\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t}\n\n\t&__icon {\n\t\tmin-width: 0; /* Overwrite icons*/\n\t\tmin-height: 0;\n\t\t// Keep padding to define the width to assure correct position of a possible text\n\t\tpadding: calc(var(--default-clickable-area) / 2) 0 calc(var(--default-clickable-area) / 2) var(--default-clickable-area);\n\n\t\tbackground-position: #{$icon-margin} center;\n\t\tbackground-size: $icon-size;\n\t}\n\n\t// Forms & text inputs\n\t&__form {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tflex: 1 1 auto;\n\n\t\tmargin: $input-margin 0;\n\t\tpadding-inline-end: $icon-margin;\n\t}\n\n\t&__container {\n\t\tposition: relative;\n\t\twidth: 100%;\n\t}\n\n\t&__input-container {\n\t\tdisplay: flex;\n\n\t\t.colorpicker {\n\t\t\t&__trigger,\n\t\t\t&__preview {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t&__preview {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 36px;\n\t\t\t\tborder-radius: var(--border-radius-large);\n\t\t\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\t\t\tbox-shadow: none !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__text-label {\n\t\tpadding: 4px 0;\n\t\tdisplay: block;\n\n\t\t&--hidden {\n\t\t\tposition: absolute;\n\t\t\tinset-inline-start: 0;\n\t\t\twidth: 1px;\n\t\t\theight: 1px;\n\t\t\toverflow: hidden;\n\t\t\tz-index: -1;\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t&__datetimepicker {\n\t\twidth: 100%;\n\n\t\t:deep(.mx-input) {\n\t\t\tmargin: 0;\n\t\t}\n\t}\n\n\t&__multi {\n\t\twidth: 100%;\n\t}\n}\n\n// if a form is the last of the list\n// add the same bottomMargin as the right padding\n// for visual balance\nli:last-child > .action-input {\n\tpadding-bottom: calc($icon-margin - $input-margin);\n}\n\n// same for first item\nli:first-child > .action-input:not(.action-input--visible-label) {\n\tpadding-top: calc($icon-margin - $input-margin);\n}\n\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_normalizeStyle","_withModifiers","_toDisplayString","_createCommentVNode","_openBlock","_createBlock","_mergeProps","_createVNode","_withCtx"],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import '../assets/NcActionLink-
|
|
2
|
-
import { A as ActionTextMixin } from "./actionText-
|
|
3
|
-
import {
|
|
1
|
+
import '../assets/NcActionLink-jSPFFKV8.css';
|
|
2
|
+
import { A as ActionTextMixin } from "./actionText-BiV1_BZX.mjs";
|
|
3
|
+
import { a as NC_ACTIONS_IS_SEMANTIC_MENU } from "./useNcActions-CiGWxAJE.mjs";
|
|
4
|
+
import { createElementBlock, openBlock, createElementVNode, renderSlot, createCommentVNode, normalizeStyle, normalizeClass, toDisplayString } from "vue";
|
|
4
5
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
5
6
|
const _sfc_main = {
|
|
6
7
|
name: "NcActionLink",
|
|
7
8
|
mixins: [ActionTextMixin],
|
|
8
9
|
inject: {
|
|
9
10
|
isInSemanticMenu: {
|
|
10
|
-
from:
|
|
11
|
+
from: NC_ACTIONS_IS_SEMANTIC_MENU,
|
|
11
12
|
default: false
|
|
12
13
|
}
|
|
13
14
|
},
|
|
@@ -114,7 +115,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
114
115
|
], 8, _hoisted_2)
|
|
115
116
|
], 8, _hoisted_1);
|
|
116
117
|
}
|
|
117
|
-
const NcActionLink = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
118
|
+
const NcActionLink = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-7b92a784"]]);
|
|
118
119
|
export {
|
|
119
120
|
NcActionLink as N
|
|
120
121
|
};
|
|
122
|
+
//# sourceMappingURL=NcActionLink-cQlsviu9.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionLink-cQlsviu9.mjs","sources":["../../src/components/NcActionLink/NcActionLink.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 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 inside of the [NcActions](#NcActions) component slots.\n\n```\n<template>\n\t<div style=\"display: flex; align-items: center;\">\n\t\t<NcActions>\n\t\t\t<NcActionLink href=\"https://nextcloud.com\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<OpenInNew :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tNextcloud website\n\t\t\t</NcActionLink>\n\t\t</NcActions>\n\n\t\t<NcActions>\n\t\t\t<NcActionLink href=\"https://www.gnu.org/licenses/gpl.odt\"\n\t\t\t\t download=\"AGPL License text.odt\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Download :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDownload AGPL license text\n\t\t\t</NcActionLink>\n\t\t</NcActions>\n\n\t\t<NcActions>\n\t\t\t<NcActionLink href=\"https://nextcloud.com\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<OpenInNew :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tNextcloud website\n\t\t\t</NcActionLink>\n\t\t\t<NcActionLink href=\"https://www.gnu.org/licenses/gpl.odt\"\n\t\t\t\t download=\"AGPL License text.odt\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Download :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDownload AGPL license text\n\t\t\t</NcActionLink>\n\t\t</NcActions>\n\t</div>\n</template>\n<script>\nimport Download from 'vue-material-design-icons/Download.vue'\nimport OpenInNew from 'vue-material-design-icons/OpenInNew.vue'\n\nexport default {\n\tcomponents: {\n\t\tDownload,\n\t\tOpenInNew,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<a :download=\"download\"\n\t\t\t:href=\"href\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:target=\"target\"\n\t\t\t:title=\"title\"\n\t\t\tclass=\"action-link focusable\"\n\t\t\trel=\"nofollow noreferrer noopener\"\n\t\t\t:role=\"isInSemanticMenu && 'menuitem'\"\n\t\t\t@click=\"onClick\">\n\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-link__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-link__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-link__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-link__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-link__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-link__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-link__text\">{{ text }}</span>\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</a>\n\t</li>\n</template>\n\n<script>\nimport ActionTextMixin from '../../mixins/actionText.js'\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\nexport default {\n\tname: 'NcActionLink',\n\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * destionation to link to\n\t\t */\n\t\thref: {\n\t\t\ttype: String,\n\t\t\tdefault: '#',\n\t\t\trequired: true,\n\t\t\tvalidator: value => {\n\t\t\t\t// href is either an anchor or a valid url starting with a scheme or a relative path\n\t\t\t\ttry {\n\t\t\t\t\treturn new URL(value)\n\t\t\t\t} catch (error) {\n\t\t\t\t\treturn value.startsWith('#') || value.startsWith('/')\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * download the link instead of opening\n\t\t */\n\t\tdownload: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * target to open the link\n\t\t */\n\t\ttarget: {\n\t\t\ttype: String,\n\t\t\tdefault: '_self',\n\t\t\tvalidator: value => {\n\t\t\t\treturn value && (!value.startsWith('_') || ['_blank', '_self', '_parent', '_top'].indexOf(value) > -1)\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Declares a native tooltip when not null\n\t\t */\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action-item('link');\n\n</style>\n"],"names":["_createElementBlock","_createElementVNode","_renderSlot","_normalizeClass","_normalizeStyle","_openBlock","_toDisplayString","_createCommentVNode"],"mappings":"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"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import '../assets/NcActionRadio-
|
|
1
|
+
import '../assets/NcActionRadio-xdrmoEIq.css';
|
|
2
|
+
import { createElementBlock, openBlock, normalizeClass, createElementVNode, withDirectives, createCommentVNode, withKeys, withModifiers, vModelRadio, toDisplayString, useModel } from "vue";
|
|
3
|
+
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
2
4
|
import { A as ActionGlobalMixin } from "./actionGlobal-BZFdtdJL.mjs";
|
|
3
|
-
import {
|
|
4
|
-
import { openBlock, createElementBlock, normalizeClass, createElementVNode, withKeys, withModifiers, toDisplayString, createCommentVNode } from "vue";
|
|
5
|
+
import { a as NC_ACTIONS_IS_SEMANTIC_MENU } from "./useNcActions-CiGWxAJE.mjs";
|
|
5
6
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
6
7
|
const _sfc_main = {
|
|
7
8
|
name: "NcActionRadio",
|
|
8
9
|
mixins: [ActionGlobalMixin],
|
|
9
10
|
inject: {
|
|
10
11
|
isInSemanticMenu: {
|
|
11
|
-
from:
|
|
12
|
+
from: NC_ACTIONS_IS_SEMANTIC_MENU,
|
|
12
13
|
default: false
|
|
13
14
|
}
|
|
14
15
|
},
|
|
@@ -18,15 +19,15 @@ const _sfc_main = {
|
|
|
18
19
|
*/
|
|
19
20
|
id: {
|
|
20
21
|
type: String,
|
|
21
|
-
default: () =>
|
|
22
|
+
default: () => createElementId(),
|
|
22
23
|
validator: (id) => id.trim() !== ""
|
|
23
24
|
},
|
|
24
25
|
/**
|
|
25
|
-
* checked state of the
|
|
26
|
+
* checked state of the radio element
|
|
26
27
|
*/
|
|
27
28
|
modelValue: {
|
|
28
|
-
type:
|
|
29
|
-
default:
|
|
29
|
+
type: [String, Number],
|
|
30
|
+
default: ""
|
|
30
31
|
},
|
|
31
32
|
/**
|
|
32
33
|
* Define if this radio is part of a set.
|
|
@@ -56,6 +57,11 @@ const _sfc_main = {
|
|
|
56
57
|
"change",
|
|
57
58
|
"update:modelValue"
|
|
58
59
|
],
|
|
60
|
+
setup(props) {
|
|
61
|
+
return {
|
|
62
|
+
model: useModel(props, "modelValue")
|
|
63
|
+
};
|
|
64
|
+
},
|
|
59
65
|
computed: {
|
|
60
66
|
/**
|
|
61
67
|
* determines if the action is focusable
|
|
@@ -72,7 +78,7 @@ const _sfc_main = {
|
|
|
72
78
|
*/
|
|
73
79
|
ariaChecked() {
|
|
74
80
|
if (this.isInSemanticMenu) {
|
|
75
|
-
return this.modelValue ? "true" : "false";
|
|
81
|
+
return this.modelValue === this.value ? "true" : "false";
|
|
76
82
|
}
|
|
77
83
|
return void 0;
|
|
78
84
|
}
|
|
@@ -82,14 +88,13 @@ const _sfc_main = {
|
|
|
82
88
|
this.$refs.label.click();
|
|
83
89
|
},
|
|
84
90
|
onChange(event) {
|
|
85
|
-
this.$emit("update:modelValue", this.$refs.radio.checked);
|
|
86
91
|
this.$emit("change", event);
|
|
87
92
|
}
|
|
88
93
|
}
|
|
89
94
|
};
|
|
90
95
|
const _hoisted_1 = ["role"];
|
|
91
96
|
const _hoisted_2 = ["aria-checked"];
|
|
92
|
-
const _hoisted_3 = ["id", "disabled", "
|
|
97
|
+
const _hoisted_3 = ["id", "disabled", "name", "value"];
|
|
93
98
|
const _hoisted_4 = ["for"];
|
|
94
99
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
95
100
|
return openBlock(), createElementBlock("li", {
|
|
@@ -101,18 +106,20 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
101
106
|
role: "menuitemradio",
|
|
102
107
|
"aria-checked": $options.ariaChecked
|
|
103
108
|
}, [
|
|
104
|
-
createElementVNode("input", {
|
|
109
|
+
withDirectives(createElementVNode("input", {
|
|
105
110
|
id: $props.id,
|
|
106
111
|
ref: "radio",
|
|
112
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $setup.model = $event),
|
|
107
113
|
disabled: $props.disabled,
|
|
108
|
-
checked: $props.modelValue,
|
|
109
114
|
name: $props.name,
|
|
110
115
|
value: $props.value,
|
|
111
116
|
class: normalizeClass([{ focusable: $options.isFocusable }, "radio action-radio__radio"]),
|
|
112
117
|
type: "radio",
|
|
113
|
-
onKeydown: _cache[
|
|
114
|
-
onChange: _cache[
|
|
115
|
-
}, null, 42, _hoisted_3),
|
|
118
|
+
onKeydown: _cache[1] || (_cache[1] = withKeys(withModifiers((...args) => $options.toggleInput && $options.toggleInput(...args), ["exact", "prevent"]), ["enter"])),
|
|
119
|
+
onChange: _cache[2] || (_cache[2] = (...args) => $options.onChange && $options.onChange(...args))
|
|
120
|
+
}, null, 42, _hoisted_3), [
|
|
121
|
+
[vModelRadio, $setup.model]
|
|
122
|
+
]),
|
|
116
123
|
createElementVNode("label", {
|
|
117
124
|
ref: "label",
|
|
118
125
|
for: $props.id,
|
|
@@ -122,7 +129,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
122
129
|
], 8, _hoisted_2)
|
|
123
130
|
], 10, _hoisted_1);
|
|
124
131
|
}
|
|
125
|
-
const NcActionRadio = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
132
|
+
const NcActionRadio = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-0c448a0c"]]);
|
|
126
133
|
export {
|
|
127
134
|
NcActionRadio as N
|
|
128
135
|
};
|
|
136
|
+
//# sourceMappingURL=NcActionRadio-tORL1qPt.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionRadio-tORL1qPt.mjs","sources":["../../src/components/NcActionRadio/NcActionRadio.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 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 inside of the [NcActions](#NcActions) component slots.\nUsually, you will provide a name prop to bind the radio together.\nSo that only one of each name set can be selected at the same time.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionRadio v-for=\"option in radioOptions\"\n\t\t\t\t:key=\"option.value\"\n\t\t\t\t:value=\"option.value\"\n\t\t\t\t:disabled=\"option.disabled\"\n\t\t\t\tname=\"uniqueId\"\n\t\t\t\tv-model=\"radioValue\">\n\t\t\t\t{{ option.label }}\n\t\t\t</NcActionRadio>\n\t\t</NcActions>\n\t\t<span>Selected value: {{ radioValue }}</span>\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tradioOptions: [\n\t\t\t\t\t{ value: 'first', label: 'First choise', disabled: false },\n\t\t\t\t\t{ value: 'second', label: 'Second choise', disabled: false },\n\t\t\t\t\t{ value: 'third', label: 'Third choise', disabled: false },\n\t\t\t\t\t{ value: 'fourth', label: 'Fourth choise (disabled)', disabled: true },\n\t\t\t\t],\n\t\t\t\tradioValue: 'first',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<span class=\"action-radio\" role=\"menuitemradio\" :aria-checked=\"ariaChecked\">\n\t\t\t<input :id=\"id\"\n\t\t\t\tref=\"radio\"\n\t\t\t\tv-model=\"model\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:name=\"name\"\n\t\t\t\t:value=\"value\"\n\t\t\t\t:class=\"{ focusable: isFocusable }\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\tclass=\"radio action-radio__radio\"\n\t\t\t\t@keydown.enter.exact.prevent=\"toggleInput\"\n\t\t\t\t@change=\"onChange\">\n\t\t\t<label ref=\"label\" :for=\"id\" class=\"action-radio__label\">{{ text }}</label>\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nimport { useModel } from 'vue'\nimport { createElementId } from '../../utils/createElementId.ts'\nimport ActionGlobalMixin from '../../mixins/actionGlobal.js'\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\nexport default {\n\tname: 'NcActionRadio',\n\n\tmixins: [ActionGlobalMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * id attribute of the radio element\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => createElementId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\n\t\t/**\n\t\t * checked state of the radio element\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [String, Number],\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Define if this radio is part of a set.\n\t\t * Checking the radio will disable all the\n\t\t * others with the same name.\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * value of the radio input\n\t\t */\n\t\tvalue: {\n\t\t\ttype: [String, Number],\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * disabled state of the radio element\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: [\n\t\t'change',\n\t\t'update:modelValue',\n\t],\n\n\tsetup(props) {\n\t\treturn {\n\t\t\tmodel: useModel(props, 'modelValue'),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * aria-checked attribute for role=\"menuitemcheckbox\"\n\t\t *\n\t\t * @return {'true'|'false'|undefined} aria-checked value if needed\n\t\t */\n\t\t ariaChecked() {\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\treturn this.modelValue === this.value ? 'true' : 'false'\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\t},\n\n\tmethods: {\n\t\ttoggleInput(/* event */) {\n\t\t\t// by clicking we also trigger the change event\n\t\t\tthis.$refs.label.click()\n\t\t},\n\t\tonChange(event) {\n\t\t\t/**\n\t\t\t * Emitted when the radio state is changed\n\t\t\t *\n\t\t\t * @type {Event}\n\t\t\t */\n\t\t\tthis.$emit('change', event)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n\n.action-radio {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\twidth: 100%;\n\theight: auto;\n\tmargin: 0;\n\tpadding: 0;\n\n\tcursor: pointer;\n\twhite-space: nowrap;\n\n\tcolor: var(--color-main-text);\n\tborder: 0;\n\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\tbackground-color: transparent;\n\tbox-shadow: none;\n\n\tfont-weight: normal;\n\tline-height: var(--default-clickable-area);\n\n\t/* checkbox/radio fixes */\n\t&__radio {\n\t\tposition: absolute;\n\t\tinset-inline-start: 0 !important;\n\t\tz-index: -1;\n\t\topacity: 0;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\talign-items: center; // align radio to text\n\n\t\twidth: 100%;\n\t\tpadding: 0 !important;\n\t\tpadding-inline-end: $icon-margin !important;\n\n\t\t// (34 -14) / 2 = 10 same as ncactioncheckbox\n\t\t&::before {\n\t\t\tmargin: calc((var(--default-clickable-area) - 14px) / 2) !important;\n\t\t}\n\t}\n\n\t&--disabled {\n\t\t&,\n\t\t.action-radio__label {\n\t\t\tcursor: pointer;\n\t\t}\n\t}\n}\n\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_withKeys","_withModifiers","_toDisplayString","_createCommentVNode"],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import '../assets/NcActionRouter-
|
|
2
|
-
import { A as ActionTextMixin } from "./actionText-
|
|
3
|
-
import {
|
|
1
|
+
import '../assets/NcActionRouter-qNNqBZab.css';
|
|
2
|
+
import { A as ActionTextMixin } from "./actionText-BiV1_BZX.mjs";
|
|
3
|
+
import { a as NC_ACTIONS_IS_SEMANTIC_MENU } from "./useNcActions-CiGWxAJE.mjs";
|
|
4
|
+
import { resolveComponent, createElementBlock, openBlock, createVNode, withCtx, renderSlot, createCommentVNode, createElementVNode, normalizeStyle, normalizeClass, toDisplayString } from "vue";
|
|
4
5
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
5
6
|
const _sfc_main = {
|
|
6
7
|
name: "NcActionRouter",
|
|
7
8
|
mixins: [ActionTextMixin],
|
|
8
9
|
inject: {
|
|
9
10
|
isInSemanticMenu: {
|
|
10
|
-
from:
|
|
11
|
+
from: NC_ACTIONS_IS_SEMANTIC_MENU,
|
|
11
12
|
default: false
|
|
12
13
|
}
|
|
13
14
|
},
|
|
@@ -75,7 +76,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
75
76
|
}, 8, ["to", "aria-label", "title", "role", "onClick"])
|
|
76
77
|
], 8, _hoisted_1);
|
|
77
78
|
}
|
|
78
|
-
const NcActionRouter = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-
|
|
79
|
+
const NcActionRouter = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-f764e73c"]]);
|
|
79
80
|
export {
|
|
80
81
|
NcActionRouter as N
|
|
81
82
|
};
|
|
83
|
+
//# sourceMappingURL=NcActionRouter-Bw1tpEZt.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcActionRouter-Bw1tpEZt.mjs","sources":["../../src/components/NcActionRouter/NcActionRouter.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<li class=\"action\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<RouterLink :to=\"to\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:title=\"title\"\n\t\t\tclass=\"action-router focusable\"\n\t\t\trel=\"nofollow noreferrer noopener\"\n\t\t\t:role=\"isInSemanticMenu && 'menuitem'\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-router__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\tclass=\"action-router__icon\"\n\t\t\t\t\taria-hidden=\"true\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-router__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-router__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-router__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-router__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-router__text\">{{ text }}</span>\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</RouterLink>\n\t</li>\n</template>\n\n<script>\nimport ActionTextMixin from '../../mixins/actionText.js'\nimport { NC_ACTIONS_IS_SEMANTIC_MENU } from '../NcActions/useNcActions.ts'\n\nexport default {\n\tname: 'NcActionRouter',\n\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: NC_ACTIONS_IS_SEMANTIC_MENU,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * router-link to prop [https://router.vuejs.org/api/#to](https://router.vuejs.org/api/#to)\n\t\t */\n\t\tto: {\n\t\t\ttype: [String, Object],\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action-item('router');\n@include action--disabled;\n\n</style>\n"],"names":["_createElementBlock","_createVNode","_withCtx","_renderSlot","_createElementVNode","_normalizeClass","_normalizeStyle","_openBlock","_toDisplayString","_createCommentVNode"],"mappings":";;;;AAsDA,MAAK,YAAU;AAAA,EACd,MAAM;AAAA,EAEN,QAAQ,CAAC,eAAe;AAAA,EAExB,QAAQ;AAAA,IACP,kBAAkB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA,EACD;AAAA,EAED,OAAO;AAAA;AAAA;AAAA;AAAA,IAIN,IAAI;AAAA,MACH,MAAM,CAAC,QAAQ,MAAM;AAAA,MACrB,SAAS;AAAA,MACT,UAAU;AAAA,IACV;AAAA,EACD;AACF;AA5EA,MAAA,aAAA,CAAA,MAAA;;EAAA,KAAA;AAAA,EAwBI,OAAM;;AACE,MAAA,aAAA,EAAA,OAAM,sBAAqB;AAzBvC,MAAA,aAAA,CAAA,aAAA;AAAA,MAAA,aAAA,CAAA,aAAA;;EAAA,KAAA;AAAA,EA0CgB,OAAM;;;;sBApCrBA,mBAyCK,MAAA;AAAA,IAzCD,OAAM;AAAA,IAAU,MAAM,SAAgB,oBAAA;AAAA;IACzCC,YAuCa,uBAAA;AAAA,MAvCA,IAAI,OAAE;AAAA,MACjB,cAAY,KAAS;AAAA,MACrB,OAAO,KAAK;AAAA,MACb,OAAM;AAAA,MACN,KAAI;AAAA,MACH,MAAM,SAAgB,oBAAA;AAAA,MACtB,SAAO,KAAO;AAAA;MAblB,SAAAC,QAeG,MAKO;AAAA,QALPC,WAKO,yBALP,MAKO;AAAA,UAJNC,mBAGsB,QAAA;AAAA,YAHf,OAhBXC,eAgBmB,CAAA,CAAA,KAAA,YAAyC,6BAAA,KAAA,IAAI,GAErD,qBAAqB,CAAA;AAAA,YAD1B,OAjBNC,eAAA,EAAA,iBAiBgC,KAAS,YAAA,OAAU,KAAI,IAAA,MAAA,KAAA,CAAA;AAAA,YAElD,eAAY;AAAA;;QAIF,KAAI,QAAhBC,aAAAP,mBASO,QATP,YASO;AAAA,UAPNI,mBAES,UAFT,YAESI,gBADL,KAAI,IAAA,GAAA,CAAA;AAAA,oCAERJ,mBAAI,MAAA,MAAA,MAAA,EAAA;AAAA,UAGJA,mBAAsD,QAAA;AAAA,YAAhD,OAAM;AAAA,YA/BhB,aA+B0CI,gBAAa,KAAD,IAAA;AAAA,UA/BtD,GAAA,MAAA,GAAA,UAAA;AAAA,cAqCoB,KAAU,2BAA3BR,mBAEiB,QAAA;AAAA,UAvCpB,KAAA;AAAA,UAsCI,OAAM;AAAA,UAtCV,aAuCIQ,gBAAa,KAAD,IAAA;AAAA,QAvChB,GAAA,MAAA,GAAA,UAAA,mBA0CGR,mBAA0D,QAA1D,YAA0DQ,gBAAd,KAAI,IAAA,GAAA,CAAA;AAAA,QA1CnDC,mBAAA,IAAA,IAAA;AAAA;MAAA,GAAA;AAAA;EAAA,GAAA,GAAA,UAAA;;;"}
|