@nextcloud/vue 8.39.0 → 8.40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/Components/NcActionButton.cjs +1 -1
- package/dist/Components/NcActionButton.mjs +1 -1
- package/dist/Components/NcActionCheckbox.cjs +1 -1
- package/dist/Components/NcActionCheckbox.mjs +1 -1
- package/dist/Components/NcActionInput.cjs +1 -1
- package/dist/Components/NcActionInput.mjs +1 -1
- package/dist/Components/NcActionLink.cjs +1 -1
- package/dist/Components/NcActionLink.mjs +1 -1
- package/dist/Components/NcActionRadio.cjs +1 -1
- package/dist/Components/NcActionRadio.mjs +1 -1
- package/dist/Components/NcActionRouter.cjs +1 -1
- package/dist/Components/NcActionRouter.mjs +1 -1
- package/dist/Components/NcActionText.cjs +1 -1
- package/dist/Components/NcActionText.mjs +1 -1
- package/dist/Components/NcActionTextEditable.cjs +1 -1
- package/dist/Components/NcActionTextEditable.mjs +1 -1
- package/dist/Components/NcActions.cjs +1 -1
- package/dist/Components/NcActions.mjs +1 -1
- package/dist/Components/NcAppContent.cjs +1 -1
- package/dist/Components/NcAppContent.mjs +1 -1
- package/dist/Components/NcAppNavigation.cjs +1 -1
- package/dist/Components/NcAppNavigation.mjs +1 -1
- package/dist/Components/NcAppNavigationCaption.cjs +1 -1
- package/dist/Components/NcAppNavigationCaption.mjs +1 -1
- package/dist/Components/NcAppNavigationItem.cjs +1 -1
- package/dist/Components/NcAppNavigationItem.mjs +1 -1
- package/dist/Components/NcAppNavigationNew.cjs +1 -1
- package/dist/Components/NcAppNavigationNew.mjs +1 -1
- package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
- package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
- package/dist/Components/NcAppNavigationSearch.cjs +1 -1
- package/dist/Components/NcAppNavigationSearch.mjs +1 -1
- package/dist/Components/NcAppNavigationSettings.cjs +1 -1
- package/dist/Components/NcAppNavigationSettings.mjs +1 -1
- package/dist/Components/NcAppNavigationToggle.cjs +1 -1
- package/dist/Components/NcAppNavigationToggle.mjs +1 -1
- package/dist/Components/NcAppSettingsDialog.cjs +1 -1
- package/dist/Components/NcAppSettingsDialog.mjs +1 -1
- package/dist/Components/NcAppSettingsSection.cjs +1 -1
- package/dist/Components/NcAppSettingsSection.mjs +1 -1
- package/dist/Components/NcAppSettingsSectionShortcuts.cjs +1 -1
- package/dist/Components/NcAppSettingsSectionShortcuts.mjs +1 -1
- package/dist/Components/NcAppSettingsShortcutsSection.cjs +1 -1
- package/dist/Components/NcAppSettingsShortcutsSection.mjs +1 -1
- package/dist/Components/NcAppSidebar.cjs +1 -1
- package/dist/Components/NcAppSidebar.mjs +1 -1
- package/dist/Components/NcAssistantButton.cjs +1 -1
- package/dist/Components/NcAssistantButton.mjs +1 -1
- package/dist/Components/NcAssistantContent.cjs +4 -4
- package/dist/Components/NcAssistantContent.mjs +4 -4
- package/dist/Components/NcAssistantIcon.cjs +1 -1
- package/dist/Components/NcAssistantIcon.mjs +1 -1
- package/dist/Components/NcAvatar.cjs +1 -1
- package/dist/Components/NcAvatar.mjs +1 -1
- package/dist/Components/NcBlurHash.cjs +1 -1
- package/dist/Components/NcBlurHash.mjs +1 -1
- package/dist/Components/NcBreadcrumb.cjs +1 -1
- package/dist/Components/NcBreadcrumb.mjs +1 -1
- package/dist/Components/NcBreadcrumbs.cjs +1 -1
- package/dist/Components/NcBreadcrumbs.mjs +1 -1
- package/dist/Components/NcButton.cjs +1 -1
- package/dist/Components/NcButton.mjs +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
- package/dist/Components/NcChip.cjs +2 -2
- package/dist/Components/NcChip.mjs +2 -2
- package/dist/Components/NcCollectionList.cjs +1 -1
- package/dist/Components/NcCollectionList.mjs +1 -1
- package/dist/Components/NcColorPicker.cjs +1 -1
- package/dist/Components/NcColorPicker.mjs +1 -1
- package/dist/Components/NcContent.cjs +1 -1
- package/dist/Components/NcContent.mjs +1 -1
- package/dist/Components/NcDashboardWidget.cjs +1 -1
- package/dist/Components/NcDashboardWidget.mjs +1 -1
- package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
- package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
- package/dist/Components/NcDateTimePicker.cjs +4 -4
- package/dist/Components/NcDateTimePicker.mjs +4 -4
- package/dist/Components/NcDateTimePickerNative.cjs +1 -1
- package/dist/Components/NcDateTimePickerNative.mjs +1 -1
- package/dist/Components/NcDialog.cjs +1 -1
- package/dist/Components/NcDialog.mjs +1 -1
- package/dist/Components/NcDialogButton.cjs +1 -1
- package/dist/Components/NcDialogButton.mjs +1 -1
- package/dist/Components/NcEmojiPicker.cjs +1 -1
- package/dist/Components/NcEmojiPicker.mjs +1 -1
- package/dist/Components/NcEmptyContent.cjs +2 -2
- package/dist/Components/NcEmptyContent.cjs.map +1 -1
- package/dist/Components/NcEmptyContent.mjs +2 -2
- package/dist/Components/NcEmptyContent.mjs.map +1 -1
- package/dist/Components/NcFilePicker.cjs +1 -1
- package/dist/Components/NcFilePicker.mjs +1 -1
- package/dist/Components/NcFormBox.cjs +1 -1
- package/dist/Components/NcFormBox.mjs +1 -1
- package/dist/Components/NcFormBoxButton.cjs +1 -1
- package/dist/Components/NcFormBoxButton.mjs +1 -1
- package/dist/Components/NcFormBoxCopyButton.cjs +1 -1
- package/dist/Components/NcFormBoxCopyButton.mjs +1 -1
- package/dist/Components/NcFormBoxSwitch.cjs +1 -1
- package/dist/Components/NcFormBoxSwitch.mjs +1 -1
- package/dist/Components/NcFormGroup.cjs +1 -1
- package/dist/Components/NcFormGroup.mjs +1 -1
- package/dist/Components/NcGuestContent.cjs +3 -9
- package/dist/Components/NcGuestContent.cjs.map +1 -1
- package/dist/Components/NcGuestContent.mjs +3 -9
- package/dist/Components/NcGuestContent.mjs.map +1 -1
- package/dist/Components/NcHeaderButton.cjs +1 -1
- package/dist/Components/NcHeaderButton.mjs +1 -1
- package/dist/Components/NcHeaderMenu.cjs +1 -1
- package/dist/Components/NcHeaderMenu.mjs +1 -1
- package/dist/Components/NcHotkey.cjs +1 -1
- package/dist/Components/NcHotkey.mjs +1 -1
- package/dist/Components/NcHotkeyList.cjs +1 -1
- package/dist/Components/NcHotkeyList.mjs +1 -1
- package/dist/Components/NcInputField.cjs +1 -1
- package/dist/Components/NcInputField.mjs +1 -1
- package/dist/Components/NcKbd.cjs +1 -1
- package/dist/Components/NcKbd.mjs +1 -1
- package/dist/Components/NcListItem.cjs +1 -1
- package/dist/Components/NcListItem.mjs +1 -1
- package/dist/Components/NcListItemIcon.cjs +1 -1
- package/dist/Components/NcListItemIcon.mjs +1 -1
- package/dist/Components/NcModal.cjs +3 -3
- package/dist/Components/NcModal.mjs +3 -3
- package/dist/Components/NcNoteCard.cjs +2 -2
- package/dist/Components/NcNoteCard.cjs.map +1 -1
- package/dist/Components/NcNoteCard.mjs +2 -2
- package/dist/Components/NcNoteCard.mjs.map +1 -1
- package/dist/Components/NcPasswordField.cjs +1 -1
- package/dist/Components/NcPasswordField.mjs +1 -1
- package/dist/Components/NcPopover.cjs +1 -1
- package/dist/Components/NcPopover.mjs +1 -1
- package/dist/Components/NcRadioGroup.cjs +1 -1
- package/dist/Components/NcRadioGroup.mjs +1 -1
- package/dist/Components/NcRadioGroupButton.cjs +1 -1
- package/dist/Components/NcRadioGroupButton.mjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
- package/dist/Components/NcRichContenteditable.cjs +1 -1
- package/dist/Components/NcRichContenteditable.mjs +1 -1
- package/dist/Components/NcRichText.cjs +3 -3
- package/dist/Components/NcRichText.mjs +4 -4
- package/dist/Components/NcSelect.cjs +1 -1
- package/dist/Components/NcSelect.mjs +1 -1
- package/dist/Components/NcSelectTags.cjs +1 -1
- package/dist/Components/NcSelectTags.mjs +1 -1
- package/dist/Components/NcSelectUsers.cjs +1 -1
- package/dist/Components/NcSelectUsers.mjs +1 -1
- package/dist/Components/NcSettingsSection.cjs +1 -1
- package/dist/Components/NcSettingsSection.mjs +1 -1
- package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
- package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
- package/dist/Components/NcTextArea.cjs +1 -1
- package/dist/Components/NcTextArea.mjs +1 -1
- package/dist/Components/NcTextField.cjs +1 -1
- package/dist/Components/NcTextField.mjs +1 -1
- package/dist/Components/NcTimezonePicker.cjs +1 -1
- package/dist/Components/NcTimezonePicker.mjs +1 -1
- package/dist/Components/NcUserBubble.cjs +1 -1
- package/dist/Components/NcUserBubble.mjs +1 -1
- package/dist/Functions/reference.cjs +2 -2
- package/dist/Functions/reference.mjs +2 -2
- package/dist/Functions/registerReference.cjs +1 -1
- package/dist/Functions/registerReference.mjs +1 -1
- package/dist/assets/{NcActionButton-CjKx3679.css → NcActionButton-CwGeOQFe.css} +3 -2
- package/dist/assets/{NcActionCheckbox-CzUElysW.css → NcActionCheckbox-DG9SyAAy.css} +3 -2
- package/dist/assets/{NcActionInput-CPu4Btyq.css → NcActionInput-ESkvZDNh.css} +66 -66
- package/dist/assets/{NcActionLink-Bt-73iBm.css → NcActionLink-CB74Y-9f.css} +3 -2
- package/dist/assets/{NcActionRadio-CROsOVZe.css → NcActionRadio-4a1cWuYb.css} +3 -2
- package/dist/assets/{NcActionRouter-Bpv5Ywxq.css → NcActionRouter-CyyaRzft.css} +3 -2
- package/dist/assets/{NcActionText-IMOkntPi.css → NcActionText-BMO_HKvg.css} +3 -2
- package/dist/assets/{NcActionTextEditable-AuLw5QVP.css → NcActionTextEditable-DPpx-OUr.css} +66 -66
- package/dist/assets/{NcAppContent-CKJUs-ZZ.css → NcAppContent-DyFYmhvX.css} +20 -20
- package/dist/assets/{NcAppNavigation-DfsSMVgo.css → NcAppNavigation-B-X0bAXx.css} +14 -16
- package/dist/assets/{NcAppNavigationCaption-C7GtQb_y.css → NcAppNavigationCaption-NX44RnkW.css} +8 -8
- package/dist/assets/{NcAppNavigationItem-CksjxOVP.css → NcAppNavigationItem-D4T7UQqz.css} +8 -7
- package/dist/assets/{NcAppNavigationNewItem-Dn_iz3og.css → NcAppNavigationNewItem-CtObIA-e.css} +4 -3
- package/dist/assets/{NcAppNavigationSettings-2Wh1E3Hq.css → NcAppNavigationSettings-DGkLlCyq.css} +11 -11
- package/dist/assets/{NcAppSettingsDialog-DRyLeR3T.css → NcAppSettingsDialog-Bi5b1VZg.css} +34 -34
- package/dist/assets/{NcAppSettingsSection-Yg4NYCih.css → NcAppSettingsSection-DU9FOAnJ.css} +7 -7
- package/dist/assets/{NcAppSettingsShortcutsSection-C_DMnyUy.css → NcAppSettingsShortcutsSection-zIKJEvmV.css} +3 -3
- package/dist/assets/{NcAppSidebar-B1bkEVQA.css → NcAppSidebar-DPorFaqk.css} +73 -73
- package/dist/assets/{NcAssistantButton-BNEXluSq.css → NcAssistantButton-CaIHaboe.css} +9 -9
- package/dist/assets/{NcAssistantContent-DrswfkY-.css → NcAssistantContent-D6ZguiGh.css} +3 -3
- package/dist/assets/{NcAssistantIcon-CdtR1Psu.css → NcAssistantIcon-Cmlid9NS.css} +4 -4
- package/dist/assets/{NcAvatar-CK9ipsjF.css → NcAvatar-Dc_YuZk2.css} +25 -25
- package/dist/assets/{NcBlurHash-CT92vFpc.css → NcBlurHash-BW1TQ16k.css} +2 -2
- package/dist/assets/{NcBreadcrumb-0xB19h6f.css → NcBreadcrumb-DyXnSA6l.css} +16 -16
- package/dist/assets/{NcButton-o3s2D3Dl.css → NcButton-C-bkSL_r.css} +49 -49
- package/dist/assets/{NcCheckboxRadioSwitch-BojbloxL.css → NcCheckboxRadioSwitch-DhXG73Zr.css} +53 -51
- package/dist/assets/{NcColorPicker-CCqpXoam.css → NcColorPicker-DjmfbD2K.css} +32 -32
- package/dist/assets/{NcContent-URJTZQq1.css → NcContent-rDfulBCh.css} +12 -13
- package/dist/assets/{NcDateTimePicker-DknygOcQ.css → NcDateTimePicker-DuZR5gqu.css} +8 -8
- package/dist/assets/{NcEmptyContent-CUFc_Dds.css → NcEmptyContent-DAR2ze6H.css} +10 -10
- package/dist/assets/{NcFilePicker-BokX813z.css → NcFilePicker-D_SA_uGV.css} +1 -1
- package/dist/assets/{NcFormBox-9NY7pxez.css → NcFormBox-yb5gffYX.css} +11 -11
- package/dist/assets/{NcFormBoxButton-BlS280R1.css → NcFormBoxButton-BnSImmUm.css} +2 -2
- package/dist/assets/{NcFormBoxItem-BdFKDYqL.css → NcFormBoxItem-DiaYRoDl.css} +17 -13
- package/dist/assets/{NcFormBoxSwitch-CXtmxIfB.css → NcFormBoxSwitch-CDDwfQx6.css} +2 -2
- package/dist/assets/{NcFormGroup-uKT9TTrz.css → NcFormGroup-ChUa97BY.css} +8 -8
- package/dist/assets/{NcGuestContent-BkegjnLL.css → NcGuestContent-27hnc8yQ.css} +3 -3
- package/dist/assets/{NcHotkey-9k8cxWO5.css → NcHotkey-B-GNBJym.css} +8 -8
- package/dist/assets/{NcHotkeyList-CNWXE5jg.css → NcHotkeyList-D7NVZF42.css} +3 -3
- package/dist/assets/{NcIconToggleSwitch-sDZkWAmc.css → NcIconToggleSwitch-Df8M_g5F.css} +4 -4
- package/dist/assets/{NcInputConfirmCancel-Brp9ZfY5.css → NcInputConfirmCancel-DRZviUxz.css} +8 -8
- package/dist/assets/{NcInputField-Cc-l-KGd.css → NcInputField-KvlF4emB.css} +46 -46
- package/dist/assets/{NcKbd-8TOrFNAw.css → NcKbd-BQUEINsB.css} +3 -3
- package/dist/assets/{NcListItem-DP1egljH.css → NcListItem-3a4Lafwa.css} +47 -47
- package/dist/assets/{NcNoteCard-CwNXZ4vV.css → NcNoteCard-C4SocW9G.css} +13 -13
- package/dist/assets/{NcPopover-CJgeCuwk.css → NcPopover-CVOTdP6j.css} +13 -13
- package/dist/assets/{NcRadioGroup-Dss0ok3g.css → NcRadioGroup-DQde-Yd1.css} +2 -2
- package/dist/assets/{NcRadioGroupButton-CMOW3Q4J.css → NcRadioGroupButton-Dwpy1m0F.css} +14 -14
- package/dist/assets/{NcRelatedResourcesPanel-CTpqdDL9.css → NcRelatedResourcesPanel-D5DxWJPc.css} +30 -30
- package/dist/assets/{NcRichContenteditable-DwS6PNCv.css → NcRichContenteditable-Dwd67_kU.css} +29 -29
- package/dist/assets/{NcRichText-Cp_5tfBy.css → NcRichText-D0xtzoWq.css} +91 -91
- package/dist/assets/{NcSettingsSection-D_qeKnRb.css → NcSettingsSection-Fyy2lFk_.css} +9 -9
- package/dist/assets/{NcTextArea-BtG5_qHD.css → NcTextArea-BMPUvHVL.css} +28 -28
- package/dist/assets/{autolink-KPdaBewQ.css → autolink-CR5N0xNQ.css} +3 -3
- package/dist/assets/{referencePickerModal-CGtNx7ew.css → referencePickerModal-C4Pr02xT.css} +53 -18
- package/dist/chunks/{NcActionButton-CiYel4_C.cjs → NcActionButton-B1jvJWjl.cjs} +2 -2
- package/dist/chunks/{NcActionButton-CiYel4_C.cjs.map → NcActionButton-B1jvJWjl.cjs.map} +1 -1
- package/dist/chunks/{NcActionButton-K4jUGMlW.mjs → NcActionButton-D7uypboC.mjs} +2 -2
- package/dist/chunks/{NcActionButton-K4jUGMlW.mjs.map → NcActionButton-D7uypboC.mjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-BGCUJhg_.cjs → NcActionCheckbox-B3vUOSeb.cjs} +2 -2
- package/dist/chunks/{NcActionCheckbox-BGCUJhg_.cjs.map → NcActionCheckbox-B3vUOSeb.cjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-23CmleUh.mjs → NcActionCheckbox-Cbg5yktN.mjs} +2 -2
- package/dist/chunks/{NcActionCheckbox-23CmleUh.mjs.map → NcActionCheckbox-Cbg5yktN.mjs.map} +1 -1
- package/dist/chunks/{NcActionInput-CcA3XFGe.cjs → NcActionInput-DITmqZz5.cjs} +5 -5
- package/dist/chunks/{NcActionInput-CcA3XFGe.cjs.map → NcActionInput-DITmqZz5.cjs.map} +1 -1
- package/dist/chunks/{NcActionInput-BoKGVBu8.mjs → NcActionInput-Xepxb1Nk.mjs} +5 -5
- package/dist/chunks/{NcActionInput-BoKGVBu8.mjs.map → NcActionInput-Xepxb1Nk.mjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-Dd3CsuiD.mjs → NcActionRadio-B2bgbBHw.mjs} +2 -2
- package/dist/chunks/{NcActionRadio-Dd3CsuiD.mjs.map → NcActionRadio-B2bgbBHw.mjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-DbkRiTHX.cjs → NcActionRadio-BJSZBI9N.cjs} +2 -2
- package/dist/chunks/{NcActionRadio-DbkRiTHX.cjs.map → NcActionRadio-BJSZBI9N.cjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-YqvZGY07.mjs → NcActionTextEditable-BykT5Byh.mjs} +3 -3
- package/dist/chunks/{NcActionTextEditable-BqJ5wONY.cjs.map → NcActionTextEditable-BykT5Byh.mjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-BqJ5wONY.cjs → NcActionTextEditable-D4nvhJff.cjs} +3 -3
- package/dist/chunks/{NcActionTextEditable-YqvZGY07.mjs.map → NcActionTextEditable-D4nvhJff.cjs.map} +1 -1
- package/dist/chunks/{NcActions-D51W1X9v.cjs → NcActions-DYWuXM9w.cjs} +3 -3
- package/dist/chunks/{NcActions-D51W1X9v.cjs.map → NcActions-DYWuXM9w.cjs.map} +1 -1
- package/dist/chunks/{NcActions-DbPerbGE.mjs → NcActions-JnumflF4.mjs} +3 -3
- package/dist/chunks/{NcActions-DbPerbGE.mjs.map → NcActions-JnumflF4.mjs.map} +1 -1
- package/dist/chunks/{NcAppContent-0hbQMH35.cjs → NcAppContent-BDqXhfww.cjs} +4 -4
- package/dist/chunks/{NcAppContent-0hbQMH35.cjs.map → NcAppContent-BDqXhfww.cjs.map} +1 -1
- package/dist/chunks/{NcAppContent-DAN0qPID.mjs → NcAppContent-BScPRxTJ.mjs} +4 -4
- package/dist/chunks/{NcAppContent-DAN0qPID.mjs.map → NcAppContent-BScPRxTJ.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigation-DGufDPoi.mjs → NcAppNavigation-C4iIEWY3.mjs} +4 -4
- package/dist/chunks/{NcAppNavigation-DGufDPoi.mjs.map → NcAppNavigation-C4iIEWY3.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigation-DB3HqxPL.cjs → NcAppNavigation-qz271rGf.cjs} +4 -4
- package/dist/chunks/{NcAppNavigation-DB3HqxPL.cjs.map → NcAppNavigation-qz271rGf.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-BZwuqQcm.mjs → NcAppNavigationCaption-BJnvmftc.mjs} +4 -4
- package/dist/chunks/{NcAppNavigationCaption-WVnxSeIf.cjs.map → NcAppNavigationCaption-BJnvmftc.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-WVnxSeIf.cjs → NcAppNavigationCaption-CYN9-_R2.cjs} +4 -4
- package/dist/chunks/{NcAppNavigationCaption-BZwuqQcm.mjs.map → NcAppNavigationCaption-CYN9-_R2.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-CgYgq_nb.mjs → NcAppNavigationItem-DRaKry-f.mjs} +10 -10
- package/dist/chunks/{NcAppNavigationItem-CgYgq_nb.mjs.map → NcAppNavigationItem-DRaKry-f.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-0zDqIuUZ.cjs → NcAppNavigationItem-qRteEY0G.cjs} +10 -10
- package/dist/chunks/{NcAppNavigationItem-0zDqIuUZ.cjs.map → NcAppNavigationItem-qRteEY0G.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNew-DRdPwKOi.cjs → NcAppNavigationNew-BAuYV_06.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationNew-DRdPwKOi.cjs.map → NcAppNavigationNew-BAuYV_06.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNew-BUVnumWS.mjs → NcAppNavigationNew-BOfIdgIu.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationNew-BUVnumWS.mjs.map → NcAppNavigationNew-BOfIdgIu.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-SR744REn.cjs → NcAppNavigationNewItem-B-29d1We.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationNewItem-SR744REn.cjs.map → NcAppNavigationNewItem-B-29d1We.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-Nz2HecTz.mjs → NcAppNavigationNewItem-KbbB-8vX.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationNewItem-Nz2HecTz.mjs.map → NcAppNavigationNewItem-KbbB-8vX.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-CzhlljAU.mjs → NcAppNavigationSearch-CI_e6Rva.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationSearch-CzhlljAU.mjs.map → NcAppNavigationSearch-CI_e6Rva.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-Czcwiin4.cjs → NcAppNavigationSearch-Du8eBuvW.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationSearch-Czcwiin4.cjs.map → NcAppNavigationSearch-Du8eBuvW.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-BaO-G72x.mjs → NcAppNavigationSettings-BN3w-BCp.mjs} +4 -4
- package/dist/chunks/{NcAppNavigationSettings-BaO-G72x.mjs.map → NcAppNavigationSettings-BN3w-BCp.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-CotFe5aD.cjs → NcAppNavigationSettings-C2Txc8sh.cjs} +4 -4
- package/dist/chunks/{NcAppNavigationSettings-CotFe5aD.cjs.map → NcAppNavigationSettings-C2Txc8sh.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-CkDMk16T.cjs → NcAppNavigationToggle-B7K9pxVq.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationToggle-CkDMk16T.cjs.map → NcAppNavigationToggle-B7K9pxVq.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-CXX1MFrf.mjs → NcAppNavigationToggle-CZqz-wC8.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationToggle-CXX1MFrf.mjs.map → NcAppNavigationToggle-CZqz-wC8.mjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-MxrFh-Ln.mjs → NcAppSettingsDialog-C7Oywy1u.mjs} +7 -7
- package/dist/chunks/NcAppSettingsDialog-C7Oywy1u.mjs.map +1 -0
- package/dist/chunks/{NcAppSettingsDialog-Fa5DTfig.cjs → NcAppSettingsDialog-DhHJQute.cjs} +7 -7
- package/dist/chunks/NcAppSettingsDialog-DhHJQute.cjs.map +1 -0
- package/dist/chunks/{NcAppSettingsSection-BjQllLEA.mjs → NcAppSettingsSection-CsGyNFSh.mjs} +3 -3
- package/dist/chunks/{NcAppSettingsSection-BjQllLEA.mjs.map → NcAppSettingsSection-CsGyNFSh.mjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsSection-CDLQ-AjK.cjs → NcAppSettingsSection-De6vkXOF.cjs} +3 -3
- package/dist/chunks/{NcAppSettingsSection-CDLQ-AjK.cjs.map → NcAppSettingsSection-De6vkXOF.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsShortcutsSection-DgGU8-cF.cjs → NcAppSettingsShortcutsSection-CLKzAASc.cjs} +5 -5
- package/dist/chunks/NcAppSettingsShortcutsSection-CLKzAASc.cjs.map +1 -0
- package/dist/chunks/{NcAppSettingsShortcutsSection-DblUBaWP.mjs → NcAppSettingsShortcutsSection-D3ylJW58.mjs} +5 -5
- package/dist/chunks/NcAppSettingsShortcutsSection-D3ylJW58.mjs.map +1 -0
- package/dist/chunks/{NcAppSidebar-B7GuNZ4C.mjs → NcAppSidebar-CEo2tgBa.mjs} +7 -7
- package/dist/chunks/{NcAppSidebar-B7GuNZ4C.mjs.map → NcAppSidebar-CEo2tgBa.mjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-DXEl0_ou.cjs → NcAppSidebar-DJ8JImth.cjs} +7 -7
- package/dist/chunks/{NcAppSidebar-DXEl0_ou.cjs.map → NcAppSidebar-DJ8JImth.cjs.map} +1 -1
- package/dist/chunks/{NcAssistantButton-B7BLAkwW.mjs → NcAssistantButton-CHiZT-vH.mjs} +11 -11
- package/dist/chunks/{NcAssistantButton-B7BLAkwW.mjs.map → NcAssistantButton-CHiZT-vH.mjs.map} +1 -1
- package/dist/chunks/{NcAssistantButton-XS3UdAKm.cjs → NcAssistantButton-CPlpv0Sl.cjs} +11 -11
- package/dist/chunks/{NcAssistantButton-XS3UdAKm.cjs.map → NcAssistantButton-CPlpv0Sl.cjs.map} +1 -1
- package/dist/chunks/{NcAssistantIcon-CD5mu9O1.cjs → NcAssistantIcon-CS-KbVIN.cjs} +6 -6
- package/dist/chunks/{NcAssistantIcon-CD5mu9O1.cjs.map → NcAssistantIcon-CS-KbVIN.cjs.map} +1 -1
- package/dist/chunks/{NcAssistantIcon-DCx6AaSW.mjs → NcAssistantIcon-mcLe7umL.mjs} +6 -6
- package/dist/chunks/{NcAssistantIcon-DCx6AaSW.mjs.map → NcAssistantIcon-mcLe7umL.mjs.map} +1 -1
- package/dist/chunks/{NcAvatar-DkAX4nqq.mjs → NcAvatar-BBqomFJ3.mjs} +7 -7
- package/dist/chunks/{NcAvatar-DkAX4nqq.mjs.map → NcAvatar-BBqomFJ3.mjs.map} +1 -1
- package/dist/chunks/{NcAvatar-D09ZAgeJ.cjs → NcAvatar-BFWbPSke.cjs} +7 -7
- package/dist/chunks/{NcAvatar-D09ZAgeJ.cjs.map → NcAvatar-BFWbPSke.cjs.map} +1 -1
- package/dist/chunks/{NcBlurHash-KSj0HXbX.mjs → NcBlurHash-CP2UBH-9.mjs} +4 -4
- package/dist/chunks/{NcBlurHash-KSj0HXbX.mjs.map → NcBlurHash-CP2UBH-9.mjs.map} +1 -1
- package/dist/chunks/{NcBlurHash-D0wcwBet.cjs → NcBlurHash-DEa3MZG5.cjs} +4 -4
- package/dist/chunks/{NcBlurHash-D0wcwBet.cjs.map → NcBlurHash-DEa3MZG5.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumb-D8xA3KcG.mjs → NcBreadcrumb-BN1Qrbjc.mjs} +5 -5
- package/dist/chunks/{NcBreadcrumb-14OmaYrH.cjs.map → NcBreadcrumb-BN1Qrbjc.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumb-14OmaYrH.cjs → NcBreadcrumb-D81qHmqH.cjs} +5 -5
- package/dist/chunks/{NcBreadcrumb-D8xA3KcG.mjs.map → NcBreadcrumb-D81qHmqH.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-CZt3UuyO.cjs → NcBreadcrumbs-DxnTSsvR.cjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-CZt3UuyO.cjs.map → NcBreadcrumbs-DxnTSsvR.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-CesoXxTs.mjs → NcBreadcrumbs-OySgLqXi.mjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-CesoXxTs.mjs.map → NcBreadcrumbs-OySgLqXi.mjs.map} +1 -1
- package/dist/chunks/{NcButton-ByTFUhwJ.cjs → NcButton-B3UxfMyE.cjs} +3 -3
- package/dist/chunks/NcButton-B3UxfMyE.cjs.map +1 -0
- package/dist/chunks/{NcButton-CCWEL9Ci.mjs → NcButton-D6Swkr1k.mjs} +3 -3
- package/dist/chunks/NcButton-D6Swkr1k.mjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-BQeglWXd.cjs → NcCheckboxRadioSwitch-BonPjuho.cjs} +7 -7
- package/dist/chunks/NcCheckboxRadioSwitch-BonPjuho.cjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-D4IV4zWy.mjs → NcCheckboxRadioSwitch-Ddl_QlRN.mjs} +7 -7
- package/dist/chunks/NcCheckboxRadioSwitch-Ddl_QlRN.mjs.map +1 -0
- package/dist/chunks/{NcCollectionList-2jk5XCm8.cjs → NcCollectionList-BXSYaf2B.cjs} +6 -6
- package/dist/chunks/NcCollectionList-BXSYaf2B.cjs.map +1 -0
- package/dist/chunks/{NcCollectionList-DOAZ13vO.mjs → NcCollectionList-q7zkDwqG.mjs} +6 -6
- package/dist/chunks/NcCollectionList-q7zkDwqG.mjs.map +1 -0
- package/dist/chunks/{NcColorPicker-BTiAa5mm.cjs → NcColorPicker-CO85TDOK.cjs} +5 -5
- package/dist/chunks/{NcColorPicker-BTiAa5mm.cjs.map → NcColorPicker-CO85TDOK.cjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-SlazeVcI.mjs → NcColorPicker-DlAxFoRr.mjs} +5 -5
- package/dist/chunks/{NcColorPicker-SlazeVcI.mjs.map → NcColorPicker-DlAxFoRr.mjs.map} +1 -1
- package/dist/chunks/{NcContent-BuTh0ZPb.mjs → NcContent-BgMXU5Dv.mjs} +4 -4
- package/dist/chunks/{NcContent-BuTh0ZPb.mjs.map → NcContent-BgMXU5Dv.mjs.map} +1 -1
- package/dist/chunks/{NcContent-BB-v-amq.cjs → NcContent-D5FcB_7G.cjs} +4 -4
- package/dist/chunks/{NcContent-BB-v-amq.cjs.map → NcContent-D5FcB_7G.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-dMwnFBzc.cjs → NcDashboardWidget-DnR3x-B1.cjs} +3 -3
- package/dist/chunks/{NcDashboardWidget-dMwnFBzc.cjs.map → NcDashboardWidget-DnR3x-B1.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-CO1z9VUN.mjs → NcDashboardWidget-oyS__D-B.mjs} +3 -3
- package/dist/chunks/{NcDashboardWidget-CO1z9VUN.mjs.map → NcDashboardWidget-oyS__D-B.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-9tQgaPXS.cjs → NcDashboardWidgetItem-NxvhaIPP.cjs} +4 -4
- package/dist/chunks/{NcDashboardWidgetItem-9tQgaPXS.cjs.map → NcDashboardWidgetItem-NxvhaIPP.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-2VgB9qj2.mjs → NcDashboardWidgetItem-uYQMYeJS.mjs} +4 -4
- package/dist/chunks/{NcDashboardWidgetItem-2VgB9qj2.mjs.map → NcDashboardWidgetItem-uYQMYeJS.mjs.map} +1 -1
- package/dist/chunks/NcDateTime-DE-ltgw2.cjs.map +1 -1
- package/dist/chunks/NcDateTime-enXYuwj8.mjs.map +1 -1
- package/dist/chunks/{NcDialog-DZ7xq7XA.mjs → NcDialog-DmRqcm3W.mjs} +2 -2
- package/dist/chunks/{NcDialog-DZ7xq7XA.mjs.map → NcDialog-DmRqcm3W.mjs.map} +1 -1
- package/dist/chunks/{NcDialog-Qak1QTrv.cjs → NcDialog-W8ujIWJd.cjs} +2 -2
- package/dist/chunks/{NcDialog-Qak1QTrv.cjs.map → NcDialog-W8ujIWJd.cjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-KNF3Co74.mjs → NcDialogButton-Bqjj-wmb.mjs} +2 -2
- package/dist/chunks/{NcDialogButton-KNF3Co74.mjs.map → NcDialogButton-Bqjj-wmb.mjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-BoetK2zm.cjs → NcDialogButton-C8RbaSqF.cjs} +2 -2
- package/dist/chunks/{NcDialogButton-BoetK2zm.cjs.map → NcDialogButton-C8RbaSqF.cjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-2KIJVstd.cjs → NcEmojiPicker-7aElsqCQ.cjs} +5 -5
- package/dist/chunks/{NcEmojiPicker-2KIJVstd.cjs.map → NcEmojiPicker-7aElsqCQ.cjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-DNxcceCn.mjs → NcEmojiPicker-ClkGGFdW.mjs} +5 -5
- package/dist/chunks/{NcEmojiPicker-DNxcceCn.mjs.map → NcEmojiPicker-ClkGGFdW.mjs.map} +1 -1
- package/dist/chunks/{NcFilePicker-Ck9o-ia3.mjs → NcFilePicker-B57HJpaE.mjs} +5 -5
- package/dist/chunks/{NcFilePicker-Ck9o-ia3.mjs.map → NcFilePicker-B57HJpaE.mjs.map} +1 -1
- package/dist/chunks/{NcFilePicker-BL6iajt2.cjs → NcFilePicker-DaUHiwFm.cjs} +5 -5
- package/dist/chunks/{NcFilePicker-BL6iajt2.cjs.map → NcFilePicker-DaUHiwFm.cjs.map} +1 -1
- package/dist/chunks/{NcFormBox-DtoCXLMx.mjs → NcFormBox-Bd7m8ffs.mjs} +7 -7
- package/dist/chunks/{NcFormBox-DtoCXLMx.mjs.map → NcFormBox-Bd7m8ffs.mjs.map} +1 -1
- package/dist/chunks/{NcFormBox-DRGVpFeZ.cjs → NcFormBox-LJwAiXyR.cjs} +7 -7
- package/dist/chunks/{NcFormBox-DRGVpFeZ.cjs.map → NcFormBox-LJwAiXyR.cjs.map} +1 -1
- package/dist/chunks/{NcFormBoxButton-ozVuTgCZ.cjs → NcFormBoxButton-BDI6Q7WA.cjs} +5 -5
- package/dist/chunks/{NcFormBoxButton-ozVuTgCZ.cjs.map → NcFormBoxButton-BDI6Q7WA.cjs.map} +1 -1
- package/dist/chunks/{NcFormBoxButton-CFWCJ0-X.mjs → NcFormBoxButton-CRL7kucw.mjs} +5 -5
- package/dist/chunks/{NcFormBoxButton-CFWCJ0-X.mjs.map → NcFormBoxButton-CRL7kucw.mjs.map} +1 -1
- package/dist/chunks/{NcFormBoxCopyButton-Da8RuDH1.mjs → NcFormBoxCopyButton-BOENrJAS.mjs} +2 -2
- package/dist/chunks/{NcFormBoxCopyButton-Da8RuDH1.mjs.map → NcFormBoxCopyButton-BOENrJAS.mjs.map} +1 -1
- package/dist/chunks/{NcFormBoxCopyButton-BS9aM994.cjs → NcFormBoxCopyButton-Bk121Oc2.cjs} +2 -2
- package/dist/chunks/{NcFormBoxCopyButton-BS9aM994.cjs.map → NcFormBoxCopyButton-Bk121Oc2.cjs.map} +1 -1
- package/dist/chunks/{NcFormBoxItem-Bz-P0lVG.mjs → NcFormBoxItem-DasY7_rJ.mjs} +11 -11
- package/dist/chunks/{NcFormBoxItem-Bz-P0lVG.mjs.map → NcFormBoxItem-DasY7_rJ.mjs.map} +1 -1
- package/dist/chunks/{NcFormBoxItem-3lI7Bu3S.cjs → NcFormBoxItem-Dmcja_Xa.cjs} +11 -11
- package/dist/chunks/{NcFormBoxItem-3lI7Bu3S.cjs.map → NcFormBoxItem-Dmcja_Xa.cjs.map} +1 -1
- package/dist/chunks/{NcFormBoxSwitch-7R8iAj1R.cjs → NcFormBoxSwitch-CEO4FLdd.cjs} +6 -6
- package/dist/chunks/NcFormBoxSwitch-CEO4FLdd.cjs.map +1 -0
- package/dist/chunks/{NcFormBoxSwitch-DaaMuPnk.mjs → NcFormBoxSwitch-bdRBjKGq.mjs} +6 -6
- package/dist/chunks/NcFormBoxSwitch-bdRBjKGq.mjs.map +1 -0
- package/dist/chunks/{NcFormGroup-DblLoFMf.mjs → NcFormGroup-tW-MwPUj.mjs} +9 -9
- package/dist/chunks/{NcFormGroup-DblLoFMf.mjs.map → NcFormGroup-tW-MwPUj.mjs.map} +1 -1
- package/dist/chunks/{NcFormGroup-AxkxubKD.cjs → NcFormGroup-wzUs2kfP.cjs} +9 -9
- package/dist/chunks/{NcFormGroup-AxkxubKD.cjs.map → NcFormGroup-wzUs2kfP.cjs.map} +1 -1
- package/dist/chunks/{NcHeaderButton-GtIbBhEd.mjs → NcHeaderButton-MEyDJghO.mjs} +2 -2
- package/dist/chunks/{NcHeaderButton-GtIbBhEd.mjs.map → NcHeaderButton-MEyDJghO.mjs.map} +1 -1
- package/dist/chunks/{NcHeaderButton-BndVfb3e.cjs → NcHeaderButton-SRHcPWsp.cjs} +2 -2
- package/dist/chunks/{NcHeaderButton-BndVfb3e.cjs.map → NcHeaderButton-SRHcPWsp.cjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-DUQ4pqU-.cjs → NcHeaderMenu-C-K0LFEH.cjs} +2 -2
- package/dist/chunks/{NcHeaderMenu-DUQ4pqU-.cjs.map → NcHeaderMenu-C-K0LFEH.cjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-elBE_Ukl.mjs → NcHeaderMenu-jHItu4LV.mjs} +2 -2
- package/dist/chunks/{NcHeaderMenu-elBE_Ukl.mjs.map → NcHeaderMenu-jHItu4LV.mjs.map} +1 -1
- package/dist/chunks/{NcHotkey-vKyDZ2a7.cjs → NcHotkey-CLFZr-9x.cjs} +7 -7
- package/dist/chunks/{NcHotkey-vKyDZ2a7.cjs.map → NcHotkey-CLFZr-9x.cjs.map} +1 -1
- package/dist/chunks/{NcHotkey-CLLtt9LG.mjs → NcHotkey-CpgacYSd.mjs} +7 -7
- package/dist/chunks/{NcHotkey-CLLtt9LG.mjs.map → NcHotkey-CpgacYSd.mjs.map} +1 -1
- package/dist/chunks/{NcHotkeyList-Co7MBL5U.mjs → NcHotkeyList-BYFbKo6_.mjs} +4 -4
- package/dist/chunks/NcHotkeyList-BYFbKo6_.mjs.map +1 -0
- package/dist/chunks/{NcHotkeyList-DhFQdopw.cjs → NcHotkeyList-C_w3SAG_.cjs} +4 -4
- package/dist/chunks/NcHotkeyList-C_w3SAG_.cjs.map +1 -0
- package/dist/chunks/{NcIconToggleSwitch-LTgdIBoC.cjs → NcIconToggleSwitch-Boo2ulI6.cjs} +4 -4
- package/dist/chunks/{NcIconToggleSwitch-LTgdIBoC.cjs.map → NcIconToggleSwitch-Boo2ulI6.cjs.map} +1 -1
- package/dist/chunks/{NcIconToggleSwitch-0NTw7i-t.mjs → NcIconToggleSwitch-DCTeQGv5.mjs} +4 -4
- package/dist/chunks/{NcIconToggleSwitch-0NTw7i-t.mjs.map → NcIconToggleSwitch-DCTeQGv5.mjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-CEZVhgJR.cjs → NcInputConfirmCancel-CcPcB-bZ.cjs} +7 -7
- package/dist/chunks/{NcInputConfirmCancel-CEZVhgJR.cjs.map → NcInputConfirmCancel-CcPcB-bZ.cjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-CwuZqsuC.mjs → NcInputConfirmCancel-zqo4ijEJ.mjs} +7 -7
- package/dist/chunks/{NcInputConfirmCancel-CwuZqsuC.mjs.map → NcInputConfirmCancel-zqo4ijEJ.mjs.map} +1 -1
- package/dist/chunks/{NcInputField-i4Z8nb4b.mjs → NcInputField-BrzZ8Bne.mjs} +4 -4
- package/dist/chunks/{NcInputField-i4Z8nb4b.mjs.map → NcInputField-BrzZ8Bne.mjs.map} +1 -1
- package/dist/chunks/{NcInputField-Brpn446B.cjs → NcInputField-DPby7_cZ.cjs} +4 -4
- package/dist/chunks/{NcInputField-Brpn446B.cjs.map → NcInputField-DPby7_cZ.cjs.map} +1 -1
- package/dist/chunks/{NcKbd-GB8FuSAU.mjs → NcKbd-CXJA9sCj.mjs} +4 -4
- package/dist/chunks/{NcKbd-GB8FuSAU.mjs.map → NcKbd-CXJA9sCj.mjs.map} +1 -1
- package/dist/chunks/{NcKbd-DbjnDaJH.cjs → NcKbd-uMv3QPhD.cjs} +4 -4
- package/dist/chunks/{NcKbd-DbjnDaJH.cjs.map → NcKbd-uMv3QPhD.cjs.map} +1 -1
- package/dist/chunks/{NcListItem-C-e9iA9w.cjs → NcListItem-BjV4Jjw0.cjs} +4 -4
- package/dist/chunks/{NcListItem-CaosvdEe.mjs.map → NcListItem-BjV4Jjw0.cjs.map} +1 -1
- package/dist/chunks/{NcListItem-CaosvdEe.mjs → NcListItem-Ciok4H4t.mjs} +4 -4
- package/dist/chunks/{NcListItem-C-e9iA9w.cjs.map → NcListItem-Ciok4H4t.mjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-DCKYv8Jr.mjs → NcListItemIcon-DdkIQyoP.mjs} +2 -2
- package/dist/chunks/{NcListItemIcon-DCKYv8Jr.mjs.map → NcListItemIcon-DdkIQyoP.mjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-BQ0f65Vg.cjs → NcListItemIcon-DukIl2hl.cjs} +2 -2
- package/dist/chunks/{NcListItemIcon-BQ0f65Vg.cjs.map → NcListItemIcon-DukIl2hl.cjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-PQt7wMbW.cjs → NcPasswordField-9QeCVkJe.cjs} +2 -2
- package/dist/chunks/{NcPasswordField-PQt7wMbW.cjs.map → NcPasswordField-9QeCVkJe.cjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-D4OFjLza.mjs → NcPasswordField-CSeFP0Uz.mjs} +2 -2
- package/dist/chunks/{NcPasswordField-D4OFjLza.mjs.map → NcPasswordField-CSeFP0Uz.mjs.map} +1 -1
- package/dist/chunks/{NcPopover-Ujf9nIvN.cjs → NcPopover-BIGPurEP.cjs} +4 -4
- package/dist/chunks/{NcPopover-Ujf9nIvN.cjs.map → NcPopover-BIGPurEP.cjs.map} +1 -1
- package/dist/chunks/{NcPopover-UAg26Qdd.mjs → NcPopover-BzTp7LfM.mjs} +4 -4
- package/dist/chunks/{NcPopover-UAg26Qdd.mjs.map → NcPopover-BzTp7LfM.mjs.map} +1 -1
- package/dist/chunks/{NcRadioGroup-CsPmwGlc.cjs → NcRadioGroup-BbMUIkWl.cjs} +6 -6
- package/dist/chunks/{NcRadioGroup-CsPmwGlc.cjs.map → NcRadioGroup-BbMUIkWl.cjs.map} +1 -1
- package/dist/chunks/{NcRadioGroup-BbBX9X2J.mjs → NcRadioGroup-D4kc6Jjr.mjs} +6 -6
- package/dist/chunks/{NcRadioGroup-BbBX9X2J.mjs.map → NcRadioGroup-D4kc6Jjr.mjs.map} +1 -1
- package/dist/chunks/{NcRadioGroupButton-6skMHhr7.cjs → NcRadioGroupButton-7ImC11aP.cjs} +8 -8
- package/dist/chunks/{NcRadioGroupButton-6skMHhr7.cjs.map → NcRadioGroupButton-7ImC11aP.cjs.map} +1 -1
- package/dist/chunks/{NcRadioGroupButton-BkxlxjIA.mjs → NcRadioGroupButton-B8a5TW2l.mjs} +8 -8
- package/dist/chunks/{NcRadioGroupButton-BkxlxjIA.mjs.map → NcRadioGroupButton-B8a5TW2l.mjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel-l1AlGr83.cjs → NcRelatedResourcesPanel-C7r-tIz-.cjs} +7 -7
- package/dist/chunks/NcRelatedResourcesPanel-C7r-tIz-.cjs.map +1 -0
- package/dist/chunks/{NcRelatedResourcesPanel-I2ZOB3cx.mjs → NcRelatedResourcesPanel-CFp3GPty.mjs} +7 -7
- package/dist/chunks/NcRelatedResourcesPanel-CFp3GPty.mjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-8ZA_LArB.mjs → NcRichContenteditable-CG7oWfBl.mjs} +20 -20
- package/dist/chunks/NcRichContenteditable-CG7oWfBl.mjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-DZjIiOKo.cjs → NcRichContenteditable-DbhcrLP_.cjs} +20 -20
- package/dist/chunks/NcRichContenteditable-DbhcrLP_.cjs.map +1 -0
- package/dist/chunks/{NcRichText-ByLPwUvM.mjs → NcRichText-C3Nj11Wy.mjs} +8 -8
- package/dist/chunks/{NcRichText-ByLPwUvM.mjs.map → NcRichText-C3Nj11Wy.mjs.map} +1 -1
- package/dist/chunks/{NcRichText-pqvg5l27.cjs → NcRichText-b0ZZCvrD.cjs} +8 -8
- package/dist/chunks/{NcRichText-pqvg5l27.cjs.map → NcRichText-b0ZZCvrD.cjs.map} +1 -1
- package/dist/chunks/{NcSelect-BCcSawYf.cjs → NcSelect-BYRnqQaI.cjs} +2 -2
- package/dist/chunks/{NcSelect-BCcSawYf.cjs.map → NcSelect-BYRnqQaI.cjs.map} +1 -1
- package/dist/chunks/{NcSelect-CHc1QupB.mjs → NcSelect-DrKzKPZL.mjs} +2 -2
- package/dist/chunks/{NcSelect-CHc1QupB.mjs.map → NcSelect-DrKzKPZL.mjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-uU_mHbSm.cjs → NcSelectTags-CL8AQw8J.cjs} +2 -2
- package/dist/chunks/{NcSelectTags-uU_mHbSm.cjs.map → NcSelectTags-CL8AQw8J.cjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-Bokig7ar.mjs → NcSelectTags-D8pmnLor.mjs} +2 -2
- package/dist/chunks/{NcSelectTags-Bokig7ar.mjs.map → NcSelectTags-D8pmnLor.mjs.map} +1 -1
- package/dist/chunks/{NcSelectUsers-BB9ZIHeB.cjs → NcSelectUsers-CAl1o2gA.cjs} +3 -3
- package/dist/chunks/{NcSelectUsers-BB9ZIHeB.cjs.map → NcSelectUsers-CAl1o2gA.cjs.map} +1 -1
- package/dist/chunks/{NcSelectUsers-B4w9UC_d.mjs → NcSelectUsers-z2bZafO2.mjs} +3 -3
- package/dist/chunks/{NcSelectUsers-B4w9UC_d.mjs.map → NcSelectUsers-z2bZafO2.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-BrIKMh-B.cjs → NcSettingsSection-BfZ8I3zb.cjs} +3 -3
- package/dist/chunks/{NcSettingsSection-BrIKMh-B.cjs.map → NcSettingsSection-BfZ8I3zb.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-Dz_b9rcq.mjs → NcSettingsSection-DV-x6Ag7.mjs} +3 -3
- package/dist/chunks/{NcSettingsSection-Dz_b9rcq.mjs.map → NcSettingsSection-DV-x6Ag7.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-BdXf7ytX.mjs → NcSettingsSelectGroup-CFvLzGNf.mjs} +2 -2
- package/dist/chunks/{NcSettingsSelectGroup-BdXf7ytX.mjs.map → NcSettingsSelectGroup-CFvLzGNf.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-BtNFBX1V.cjs → NcSettingsSelectGroup-CmotAYwP.cjs} +2 -2
- package/dist/chunks/{NcSettingsSelectGroup-BtNFBX1V.cjs.map → NcSettingsSelectGroup-CmotAYwP.cjs.map} +1 -1
- package/dist/chunks/{NcTextArea-B9Vn3rQC.cjs → NcTextArea-BUH-0gIq.cjs} +3 -3
- package/dist/chunks/{NcTextArea-B9Vn3rQC.cjs.map → NcTextArea-BUH-0gIq.cjs.map} +1 -1
- package/dist/chunks/{NcTextArea-DPJWqlJb.mjs → NcTextArea-C82D8CSK.mjs} +3 -3
- package/dist/chunks/{NcTextArea-DPJWqlJb.mjs.map → NcTextArea-C82D8CSK.mjs.map} +1 -1
- package/dist/chunks/{NcTextField-B92lM77I.cjs → NcTextField-2tiCeGZw.cjs} +2 -2
- package/dist/chunks/{NcTextField-B92lM77I.cjs.map → NcTextField-2tiCeGZw.cjs.map} +1 -1
- package/dist/chunks/{NcTextField-Czr9S6YO.mjs → NcTextField-BPhf3E7g.mjs} +2 -2
- package/dist/chunks/{NcTextField-Czr9S6YO.mjs.map → NcTextField-BPhf3E7g.mjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-D2e7hW-Z.cjs → NcTimezonePicker-BSGxeYwn.cjs} +2 -2
- package/dist/chunks/{NcTimezonePicker-D2e7hW-Z.cjs.map → NcTimezonePicker-BSGxeYwn.cjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-n9kr9A4o.mjs → NcTimezonePicker-D4xfdT9T.mjs} +2 -2
- package/dist/chunks/{NcTimezonePicker-n9kr9A4o.mjs.map → NcTimezonePicker-D4xfdT9T.mjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-CNQJUk2l.cjs → NcUserBubble-BJf2sPSm.cjs} +3 -3
- package/dist/chunks/{NcUserBubble-CNQJUk2l.cjs.map → NcUserBubble-BJf2sPSm.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-BGfZAi4c.mjs → NcUserBubble-CuCNjhc8.mjs} +3 -3
- package/dist/chunks/{NcUserBubble-BGfZAi4c.mjs.map → NcUserBubble-CuCNjhc8.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-BLaRYUFv.cjs → ScopeComponent-4M4zyHnT.cjs} +2 -2
- package/dist/chunks/{ScopeComponent-BLaRYUFv.cjs.map → ScopeComponent-4M4zyHnT.cjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-77Az-4PS.mjs → ScopeComponent-xx9Z3w0D.mjs} +2 -2
- package/dist/chunks/{ScopeComponent-77Az-4PS.mjs.map → ScopeComponent-xx9Z3w0D.mjs.map} +1 -1
- package/dist/chunks/{autolink-CeB9uxD9.mjs → autolink-C8BYVvdd.mjs} +5 -5
- package/dist/chunks/{autolink-CeB9uxD9.mjs.map → autolink-C8BYVvdd.mjs.map} +1 -1
- package/dist/chunks/{autolink-VQMuzjxl.cjs → autolink-CMWUgEzj.cjs} +5 -5
- package/dist/chunks/{autolink-VQMuzjxl.cjs.map → autolink-CMWUgEzj.cjs.map} +1 -1
- package/dist/chunks/{customPickerElements-DLFtgReB.mjs → customPickerElements-BGmuXU7x.mjs} +7 -2
- package/dist/chunks/customPickerElements-BGmuXU7x.mjs.map +1 -0
- package/dist/chunks/{customPickerElements-GyIIOHiQ.cjs → customPickerElements-CPxrR1_N.cjs} +6 -1
- package/dist/chunks/customPickerElements-CPxrR1_N.cjs.map +1 -0
- package/dist/chunks/{referencePickerModal-BGYbZYrX.cjs → referencePickerModal-Cqd084NY.cjs} +111 -15
- package/dist/chunks/referencePickerModal-Cqd084NY.cjs.map +1 -0
- package/dist/chunks/{referencePickerModal-B69WouiU.mjs → referencePickerModal-DnsOMAHk.mjs} +111 -15
- package/dist/chunks/referencePickerModal-DnsOMAHk.mjs.map +1 -0
- package/dist/functions/reference/index.d.ts +6 -3
- package/dist/functions/reference/widgets.d.ts +11 -1
- package/dist/index.cjs +66 -65
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +67 -66
- package/dist/index.mjs.map +1 -1
- package/package.json +15 -15
- package/dist/chunks/NcAppSettingsDialog-Fa5DTfig.cjs.map +0 -1
- package/dist/chunks/NcAppSettingsDialog-MxrFh-Ln.mjs.map +0 -1
- package/dist/chunks/NcAppSettingsShortcutsSection-DblUBaWP.mjs.map +0 -1
- package/dist/chunks/NcAppSettingsShortcutsSection-DgGU8-cF.cjs.map +0 -1
- package/dist/chunks/NcButton-ByTFUhwJ.cjs.map +0 -1
- package/dist/chunks/NcButton-CCWEL9Ci.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-BQeglWXd.cjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-D4IV4zWy.mjs.map +0 -1
- package/dist/chunks/NcCollectionList-2jk5XCm8.cjs.map +0 -1
- package/dist/chunks/NcCollectionList-DOAZ13vO.mjs.map +0 -1
- package/dist/chunks/NcFormBoxSwitch-7R8iAj1R.cjs.map +0 -1
- package/dist/chunks/NcFormBoxSwitch-DaaMuPnk.mjs.map +0 -1
- package/dist/chunks/NcHotkeyList-Co7MBL5U.mjs.map +0 -1
- package/dist/chunks/NcHotkeyList-DhFQdopw.cjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-I2ZOB3cx.mjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-l1AlGr83.cjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-8ZA_LArB.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-DZjIiOKo.cjs.map +0 -1
- package/dist/chunks/customPickerElements-DLFtgReB.mjs.map +0 -1
- package/dist/chunks/customPickerElements-GyIIOHiQ.cjs.map +0 -1
- package/dist/chunks/referencePickerModal-B69WouiU.mjs.map +0 -1
- package/dist/chunks/referencePickerModal-BGYbZYrX.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormBoxButton-CFWCJ0-X.mjs","sources":["../../src/composables/useButtonLink.ts","../../src/components/NcFormBoxButton/NcFormBoxButton.vue"],"sourcesContent":["/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { MaybeRef } from '@vueuse/core'\nimport type { AnchorHTMLAttributes, ButtonHTMLAttributes } from 'vue'\nimport type { RawLocation } from 'vue-router'\n\nimport { computed, getCurrentInstance, reactive } from 'vue'\n\ntype ButtonLinkProps = {\n\t// Required - general link props\n\n\t/**\n\t * RouterLink's to props and a trigger to use RouterLink.\n\t * Note: This takes precedence over the href attribute.\n\t */\n\tto: MaybeRef<RawLocation | undefined>\n\t/**\n\t * HyperLink href attribute and a trigger to use <a> hyperlink.\n\t */\n\thref: MaybeRef<string | undefined>\n\t/**\n\t * Define additional attributes, based on the tag\n\t */\n\tadditionalAttrs?: (tag: 'RouterLink' | 'a' | 'button') => object | undefined\n\n\t// RouterLink props\n\n\t/**\n\t * RouterLink's activeClass prop\n\t */\n\tactiveClass?: MaybeRef<string | undefined>\n\n\t// Hyperlink\n\n\t/**\n\t * <a> hyperlink's target attribute\n\t */\n\ttarget?: MaybeRef<AnchorHTMLAttributes['target'] | undefined>\n\t/**\n\t * <a> hyperlink's download attribute\n\t */\n\tdownload?: MaybeRef<string | boolean | undefined>\n\n\t// Button\n\n\t/**\n\t * <button> element's type attribute, but default to \"button\" instead of \"submit\"\n\t */\n\ttype?: MaybeRef<ButtonHTMLAttributes['type'] | undefined>\n\t/**\n\t * <button> element's disabled attribute\n\t */\n\tdisabled?: MaybeRef<boolean | undefined>\n}\n\n/**\n * Reusable implementation of an interactive button-like element that can be a link or a button\n *\n * @param options - Props to determine the button/link behavior. Can be a reactive object, or an object with nested refs, or mixed.\n */\nexport function useButtonLink(options: ButtonLinkProps) {\n\t// Resolve all MaybeRef-s values and maybe reactive object via unwrapping\n\tconst props = reactive(options)\n\n\tconst instance = getCurrentInstance()!\n\tconst hasVueRouterContext = '$router' in instance.proxy.$root\n\n\t/**\n\t * Tag name to be used\n\t */\n\tconst tag = computed(() => {\n\t\t// TODO: should we warn if props.to is provided but there is no vue-router?\n\t\tif (hasVueRouterContext && props.to) {\n\t\t\t// Note: RouterLink is used as globally registered component (by name) and not imported intentionally\n\t\t\t// to use injected component from the app and not bundle it to the button\n\t\t\treturn 'RouterLink'\n\t\t} else if (props.href) {\n\t\t\treturn 'a'\n\t\t} else {\n\t\t\treturn 'button'\n\t\t}\n\t})\n\n\tconst isLink = computed(() => tag.value === 'RouterLink' || tag.value === 'a')\n\tconst isHyperLink = computed(() => tag.value === 'a')\n\tconst isRouterLink = computed(() => tag.value === 'RouterLink')\n\tconst isButton = computed(() => tag.value === 'button')\n\n\tconst attrs = computed(() => {\n\t\tif (tag.value === 'RouterLink') {\n\t\t\treturn {\n\t\t\t\tto: props.to,\n\t\t\t\tactiveClass: 'active',\n\t\t\t\t...(props.additionalAttrs?.('RouterLink') ?? {}),\n\t\t\t}\n\t\t} else if (tag.value === 'a') {\n\t\t\treturn {\n\t\t\t\thref: props.href,\n\t\t\t\ttarget: props.target,\n\t\t\t\tdownload: props.download || undefined,\n\t\t\t\trel: 'nofollow noreferrer noopener',\n\t\t\t\t...(props.additionalAttrs?.('a') ?? {}),\n\t\t\t}\n\t\t} else if (tag.value === 'button') {\n\t\t\treturn {\n\t\t\t\ttype: props.type || 'button',\n\t\t\t\tdisabled: props.disabled,\n\t\t\t\t...(props.additionalAttrs?.('button') ?? {}),\n\t\t\t}\n\t\t}\n\t})\n\n\treturn {\n\t\ttag,\n\t\tisLink,\n\t\tisHyperLink,\n\t\tisRouterLink,\n\t\tisButton,\n\t\tattrs,\n\t}\n}\n","<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport type { AnchorHTMLAttributes } from 'vue'\nimport type { RawLocation } from 'vue-router'\n\nimport { mdiArrowTopRight, mdiOpenInNew } from '@mdi/js'\nimport { toRef } from '@vueuse/core'\nimport { computed } from 'vue'\nimport NcFormBoxItem from '../NcFormBox/NcFormBoxItem.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.vue'\nimport { useButtonLink } from '../../composables/useButtonLink.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Main label */\n\tlabel?: string\n\t/** Optional description below the label, also used for the aria-describedby */\n\tdescription?: string\n\t/** Accent on the description instead of the label (see docs) */\n\tinvertedAccent?: boolean\n\t/** RouterLink's `to` prop; when provided, renders as `<RouterLink>` (takes precedence over the `href` prop) */\n\tto?: RawLocation\n\t/** Hyperlink `href` attribute; when provided, renders as `<a>` */\n\thref?: string\n\t/** Hyperlink's target attribute */\n\ttarget?: AnchorHTMLAttributes['target']\n\t/** Button's disabled attribute, not applicable to links */\n\tdisabled?: boolean\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\tinvertedAccent: false,\n\tto: undefined,\n\thref: undefined,\n\ttarget: undefined, // TODO: should it be _blank by default?\n\tdisabled: false,\n})\n\ndefineEmits<{\n\t/** Native click event */\n\t(e: 'click', event: MouseEvent): void\n}>()\n\nconst { tag, attrs, isLink } = useButtonLink({\n\tto: toRef(() => props.to),\n\thref: toRef(() => props.href),\n\ttarget: toRef(() => props.target),\n\tdisabled: toRef(() => props.disabled),\n})\n\nconst icon = computed(() => {\n\tif (isLink.value) {\n\t\treturn props.target === '_blank' ? mdiOpenInNew : mdiArrowTopRight\n\t}\n\treturn undefined\n})\n</script>\n\n<template>\n\t<NcFormBoxItem\n\t\t:tag=\"tag\"\n\t\t:item-classes=\"[\n\t\t\t'button-vue', /* Reset server's global HTML button styles */\n\t\t\t$style.formBoxButton,\n\t\t]\"\n\t\t:inverted-accent=\"invertedAccent\"\n\t\tv-bind=\"attrs\"\n\t\ttabindex=\"0\"\n\t\t@click=\"$emit('click', $event)\">\n\t\t<template v-if=\"$scopedSlots.default || label\" #default>\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<slot>\n\t\t\t\t{{ label }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template v-if=\"$scopedSlots.description || description\" #description>\n\t\t\t<!-- @slot Custom description content -->\n\t\t\t<slot name=\"description\">\n\t\t\t\t{{ description }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template v-if=\"$scopedSlots.icon || icon\" #icon>\n\t\t\t<!-- @slot Required icon (links have a default icon) -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<NcIconSvgWrapper v-if=\"icon\" :path=\"icon\" inline />\n\t\t\t</slot>\n\t\t</template>\n\t</NcFormBoxItem>\n</template>\n\n<style lang=\"scss\" module>\n.formBoxButton {\n\t/* Reset default HTML button styles */\n\tbackground: unset;\n\tborder: none;\n\tcolor: inherit;\n\tfont-size: inherit;\n\tfont-weight: inherit;\n\ttext-decoration: none;\n\ttext-align: inherit;\n\tline-height: inherit;\n\tpadding: 0;\n\tmargin: 0;\n\toutline: none;\n}\n</style>\n\n<docs>\n### General\n\nAn interactive button-like item within `<NcFormBox>`. It can be a button or a native link/router link if `to` or `href` props are provided.\n\nLike other form box items, it has a label and an optional description.\n\n```vue\n<script>\nimport { mdiContentCopy, mdiInformationOutline } from '@mdi/js'\n\nexport default {\n\tsetup() {\n\t\treturn {\n\t\t\tmdiContentCopy,\n\t\t\tmdiInformationOutline,\n\t\t}\n\t},\n}\n</script>\n\n<template>\n\t<NcFormBox>\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"Nextcloud\"\n\t\t\thref=\"https://nextcloud.com\"\n\t\t\ttarget=\"_blank\" />\n\n\t\t<NcFormBoxButton\n\t\t\thref=\"https://nextcloud-vue-components.netlify.app\">\n\t\t\t<code>@nextcloud/vue</code> documentation\n\t\t</NcFormBoxButton>\n\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"About\"\n\t\t\tdescription=\"Installation details\"\n\t\t\thref=\"https://nextcloud.com\"\n\t\t\ttarget=\"_blank\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :path=\"mdiInformationOutline\" inline />\n\t\t\t</template>\n\t\t</NcFormBoxButton>\n\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"Public signing key\">\n\t\t\t<template #description>\n\t\t\t\t<code>SSBkb24ndCBrbm93IHdoeSB5b3UgZGVjb2RlZCB0aGlzIHZhbHVlDQrgvLwg44GkIOKXlV/il5Ug4Ly944Gk</code>\n\t\t\t</template>\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :path=\"mdiContentCopy\" inline />\n\t\t\t</template>\n\t\t</NcFormBoxButton>\n\t</NcFormBox>\n</template>\n```\n\n### Inverted accent\n\nSometimes the description is more important than the label. In such cases use `inverted-accent` prop.\n\nFor example:\n- **Steps:** the description of the step is more important than the step number\n- **Copy button:** the value being copied is more important than the value label\n- **Folder picker:** the selected folder path is more important than the input label\n\n```vue\n<script>\nimport { mdiContentCopy, mdiDomain, mdiFolderOpenOutline } from '@mdi/js'\n\nexport default {\n\tsetup() {\n\t\treturn { mdiContentCopy, mdiDomain, mdiFolderOpenOutline }\n\t},\n}\n</script>\n\n<template>\n\t<div style=\"display: flex; flex-direction: column; gap: calc(4 * var(--default-grid-baseline));\">\n\t\t<NcFormGroup label=\"Mailvelope\" description=\"A browser extension that enables easy OpenPGP encryption and decryption of emails\">\n\t\t\t<NcFormBox>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Step 1\"\n\t\t\t\t\tdescription=\"Install the browser extension\"\n\t\t\t\t\thref=\"https://www.mailvelope.com/\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\tinverted-accent />\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Step 2\"\n\t\t\t\t\tdescription=\"Enable the current domain\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiDomain\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t</NcFormBox>\n\t\t</NcFormGroup>\n\n\t\t<NcFormGroup label=\"CalDAV\" description=\"Access Nextcloud calendars from other apps and devices\">\n\t\t\t<NcFormBox>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"CalDAV URL\"\n\t\t\t\t\tdescription=\"https://cloud.example.com/remote.php/dav/\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiContentCopy\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Server Address for iOS and macOS\"\n\t\t\t\t\tdescription=\"https://cloud.example.com/remote.php/dav/principals/users/user/\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiContentCopy\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t</NcFormBox>\n\t\t</NcFormGroup>\n\n\t\t<NcFormGroup label=\"Files\">\n\t\t\t<NcFormBox>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Attachments folder\"\n\t\t\t\t\tdescription=\"/Talk\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiFolderOpenOutline\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t</NcFormBox>\n\t\t</NcFormGroup>\n\t</div>\n</template>\n```\n\n### Requirements\n\n- Label is required (`label` prop or the default slot)\n- Icon is required unless there is a default icon (links)\n\n```vue\n<template>\n\t<NcFormBox>\n\t\t<NcFormBoxButton description=\"No label example\">\n\t\t\t<template #icon>\n\t\t\t\t✅\n\t\t\t</template>\n\t\t</NcFormBoxButton>\n\t\t<NcFormBoxButton label=\"No icon example\"/>\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"No icon link example\"\n\t\t\tdescription=\"Links have a default icon\"\n\t\t\thref=\"https://nextcloud.com\"\n\t\t\ttarget=\"_blank\" />\n\t</NcFormBox>\n</template>\n```\n</docs>\n"],"names":[],"mappings":";;;;;;AAAA;AAAA;AAAA;AAAA;AA+DO,SAAS,cAAc,SAA0B;AAEvD,QAAM,QAAQ,SAAS,OAAO;AAE9B,QAAM,WAAW,mBAAA;AACjB,QAAM,sBAAsB,aAAa,SAAS,MAAM;AAKxD,QAAM,MAAM,SAAS,MAAM;AAE1B,QAAI,uBAAuB,MAAM,IAAI;AAGpC,aAAO;AAAA,IACR,WAAW,MAAM,MAAM;AACtB,aAAO;AAAA,IACR,OAAO;AACN,aAAO;AAAA,IACR;AAAA,EACD,CAAC;AAED,QAAM,SAAS,SAAS,MAAM,IAAI,UAAU,gBAAgB,IAAI,UAAU,GAAG;AAC7E,QAAM,cAAc,SAAS,MAAM,IAAI,UAAU,GAAG;AACpD,QAAM,eAAe,SAAS,MAAM,IAAI,UAAU,YAAY;AAC9D,QAAM,WAAW,SAAS,MAAM,IAAI,UAAU,QAAQ;AAEtD,QAAM,QAAQ,SAAS,MAAM;AAC5B,QAAI,IAAI,UAAU,cAAc;AAC/B,aAAO;AAAA,QACN,IAAI,MAAM;AAAA,QACV,aAAa;AAAA,QACb,GAAI,MAAM,kBAAkB,YAAY,KAAK,CAAA;AAAA,MAAC;AAAA,IAEhD,WAAW,IAAI,UAAU,KAAK;AAC7B,aAAO;AAAA,QACN,MAAM,MAAM;AAAA,QACZ,QAAQ,MAAM;AAAA,QACd,UAAU,MAAM,YAAY;AAAA,QAC5B,KAAK;AAAA,QACL,GAAI,MAAM,kBAAkB,GAAG,KAAK,CAAA;AAAA,MAAC;AAAA,IAEvC,WAAW,IAAI,UAAU,UAAU;AAClC,aAAO;AAAA,QACN,MAAM,MAAM,QAAQ;AAAA,QACpB,UAAU,MAAM;AAAA,QAChB,GAAI,MAAM,kBAAkB,QAAQ,KAAK,CAAA;AAAA,MAAC;AAAA,IAE5C;AAAA,EACD,CAAC;AAED,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAEF;;;;;;;;;;;;;;;AC7EA,UAAM,EAAE,KAAK,OAAO,OAAA,IAAW,cAAc;AAAA,MAC5C,IAAI,MAAM,MAAM,MAAM,EAAE;AAAA,MACxB,MAAM,MAAM,MAAM,MAAM,IAAI;AAAA,MAC5B,QAAQ,MAAM,MAAM,MAAM,MAAM;AAAA,MAChC,UAAU,MAAM,MAAM,MAAM,QAAQ;AAAA,IAAA,CACpC;AAED,UAAM,OAAO,SAAS,MAAM;AAC3B,UAAI,OAAO,OAAO;AACjB,eAAO,MAAM,WAAW,WAAW,eAAe;AAAA,MACnD;AACA,aAAO;AAAA,IACR,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"NcFormBoxButton-CRL7kucw.mjs","sources":["../../src/composables/useButtonLink.ts","../../src/components/NcFormBoxButton/NcFormBoxButton.vue"],"sourcesContent":["/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { MaybeRef } from '@vueuse/core'\nimport type { AnchorHTMLAttributes, ButtonHTMLAttributes } from 'vue'\nimport type { RawLocation } from 'vue-router'\n\nimport { computed, getCurrentInstance, reactive } from 'vue'\n\ntype ButtonLinkProps = {\n\t// Required - general link props\n\n\t/**\n\t * RouterLink's to props and a trigger to use RouterLink.\n\t * Note: This takes precedence over the href attribute.\n\t */\n\tto: MaybeRef<RawLocation | undefined>\n\t/**\n\t * HyperLink href attribute and a trigger to use <a> hyperlink.\n\t */\n\thref: MaybeRef<string | undefined>\n\t/**\n\t * Define additional attributes, based on the tag\n\t */\n\tadditionalAttrs?: (tag: 'RouterLink' | 'a' | 'button') => object | undefined\n\n\t// RouterLink props\n\n\t/**\n\t * RouterLink's activeClass prop\n\t */\n\tactiveClass?: MaybeRef<string | undefined>\n\n\t// Hyperlink\n\n\t/**\n\t * <a> hyperlink's target attribute\n\t */\n\ttarget?: MaybeRef<AnchorHTMLAttributes['target'] | undefined>\n\t/**\n\t * <a> hyperlink's download attribute\n\t */\n\tdownload?: MaybeRef<string | boolean | undefined>\n\n\t// Button\n\n\t/**\n\t * <button> element's type attribute, but default to \"button\" instead of \"submit\"\n\t */\n\ttype?: MaybeRef<ButtonHTMLAttributes['type'] | undefined>\n\t/**\n\t * <button> element's disabled attribute\n\t */\n\tdisabled?: MaybeRef<boolean | undefined>\n}\n\n/**\n * Reusable implementation of an interactive button-like element that can be a link or a button\n *\n * @param options - Props to determine the button/link behavior. Can be a reactive object, or an object with nested refs, or mixed.\n */\nexport function useButtonLink(options: ButtonLinkProps) {\n\t// Resolve all MaybeRef-s values and maybe reactive object via unwrapping\n\tconst props = reactive(options)\n\n\tconst instance = getCurrentInstance()!\n\tconst hasVueRouterContext = '$router' in instance.proxy.$root\n\n\t/**\n\t * Tag name to be used\n\t */\n\tconst tag = computed(() => {\n\t\t// TODO: should we warn if props.to is provided but there is no vue-router?\n\t\tif (hasVueRouterContext && props.to) {\n\t\t\t// Note: RouterLink is used as globally registered component (by name) and not imported intentionally\n\t\t\t// to use injected component from the app and not bundle it to the button\n\t\t\treturn 'RouterLink'\n\t\t} else if (props.href) {\n\t\t\treturn 'a'\n\t\t} else {\n\t\t\treturn 'button'\n\t\t}\n\t})\n\n\tconst isLink = computed(() => tag.value === 'RouterLink' || tag.value === 'a')\n\tconst isHyperLink = computed(() => tag.value === 'a')\n\tconst isRouterLink = computed(() => tag.value === 'RouterLink')\n\tconst isButton = computed(() => tag.value === 'button')\n\n\tconst attrs = computed(() => {\n\t\tif (tag.value === 'RouterLink') {\n\t\t\treturn {\n\t\t\t\tto: props.to,\n\t\t\t\tactiveClass: 'active',\n\t\t\t\t...(props.additionalAttrs?.('RouterLink') ?? {}),\n\t\t\t}\n\t\t} else if (tag.value === 'a') {\n\t\t\treturn {\n\t\t\t\thref: props.href,\n\t\t\t\ttarget: props.target,\n\t\t\t\tdownload: props.download || undefined,\n\t\t\t\trel: 'nofollow noreferrer noopener',\n\t\t\t\t...(props.additionalAttrs?.('a') ?? {}),\n\t\t\t}\n\t\t} else if (tag.value === 'button') {\n\t\t\treturn {\n\t\t\t\ttype: props.type || 'button',\n\t\t\t\tdisabled: props.disabled,\n\t\t\t\t...(props.additionalAttrs?.('button') ?? {}),\n\t\t\t}\n\t\t}\n\t})\n\n\treturn {\n\t\ttag,\n\t\tisLink,\n\t\tisHyperLink,\n\t\tisRouterLink,\n\t\tisButton,\n\t\tattrs,\n\t}\n}\n","<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport type { AnchorHTMLAttributes } from 'vue'\nimport type { RawLocation } from 'vue-router'\n\nimport { mdiArrowTopRight, mdiOpenInNew } from '@mdi/js'\nimport { toRef } from '@vueuse/core'\nimport { computed } from 'vue'\nimport NcFormBoxItem from '../NcFormBox/NcFormBoxItem.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.vue'\nimport { useButtonLink } from '../../composables/useButtonLink.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Main label */\n\tlabel?: string\n\t/** Optional description below the label, also used for the aria-describedby */\n\tdescription?: string\n\t/** Accent on the description instead of the label (see docs) */\n\tinvertedAccent?: boolean\n\t/** RouterLink's `to` prop; when provided, renders as `<RouterLink>` (takes precedence over the `href` prop) */\n\tto?: RawLocation\n\t/** Hyperlink `href` attribute; when provided, renders as `<a>` */\n\thref?: string\n\t/** Hyperlink's target attribute */\n\ttarget?: AnchorHTMLAttributes['target']\n\t/** Button's disabled attribute, not applicable to links */\n\tdisabled?: boolean\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\tinvertedAccent: false,\n\tto: undefined,\n\thref: undefined,\n\ttarget: undefined, // TODO: should it be _blank by default?\n\tdisabled: false,\n})\n\ndefineEmits<{\n\t/** Native click event */\n\t(e: 'click', event: MouseEvent): void\n}>()\n\nconst { tag, attrs, isLink } = useButtonLink({\n\tto: toRef(() => props.to),\n\thref: toRef(() => props.href),\n\ttarget: toRef(() => props.target),\n\tdisabled: toRef(() => props.disabled),\n})\n\nconst icon = computed(() => {\n\tif (isLink.value) {\n\t\treturn props.target === '_blank' ? mdiOpenInNew : mdiArrowTopRight\n\t}\n\treturn undefined\n})\n</script>\n\n<template>\n\t<NcFormBoxItem\n\t\t:tag=\"tag\"\n\t\t:item-classes=\"[\n\t\t\t'button-vue', /* Reset server's global HTML button styles */\n\t\t\t$style.formBoxButton,\n\t\t]\"\n\t\t:inverted-accent=\"invertedAccent\"\n\t\tv-bind=\"attrs\"\n\t\ttabindex=\"0\"\n\t\t@click=\"$emit('click', $event)\">\n\t\t<template v-if=\"$scopedSlots.default || label\" #default>\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<slot>\n\t\t\t\t{{ label }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template v-if=\"$scopedSlots.description || description\" #description>\n\t\t\t<!-- @slot Custom description content -->\n\t\t\t<slot name=\"description\">\n\t\t\t\t{{ description }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template v-if=\"$scopedSlots.icon || icon\" #icon>\n\t\t\t<!-- @slot Required icon (links have a default icon) -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<NcIconSvgWrapper v-if=\"icon\" :path=\"icon\" inline />\n\t\t\t</slot>\n\t\t</template>\n\t</NcFormBoxItem>\n</template>\n\n<style lang=\"scss\" module>\n.formBoxButton {\n\t/* Reset default HTML button styles */\n\tbackground: unset;\n\tborder: none;\n\tcolor: inherit;\n\tfont-size: inherit;\n\tfont-weight: inherit;\n\ttext-decoration: none;\n\ttext-align: inherit;\n\tline-height: inherit;\n\tpadding: 0;\n\tmargin: 0;\n\toutline: none;\n}\n</style>\n\n<docs>\n### General\n\nAn interactive button-like item within `<NcFormBox>`. It can be a button or a native link/router link if `to` or `href` props are provided.\n\nLike other form box items, it has a label and an optional description.\n\n```vue\n<script>\nimport { mdiContentCopy, mdiInformationOutline } from '@mdi/js'\n\nexport default {\n\tsetup() {\n\t\treturn {\n\t\t\tmdiContentCopy,\n\t\t\tmdiInformationOutline,\n\t\t}\n\t},\n}\n</script>\n\n<template>\n\t<NcFormBox>\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"Nextcloud\"\n\t\t\thref=\"https://nextcloud.com\"\n\t\t\ttarget=\"_blank\" />\n\n\t\t<NcFormBoxButton\n\t\t\thref=\"https://nextcloud-vue-components.netlify.app\">\n\t\t\t<code>@nextcloud/vue</code> documentation\n\t\t</NcFormBoxButton>\n\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"About\"\n\t\t\tdescription=\"Installation details\"\n\t\t\thref=\"https://nextcloud.com\"\n\t\t\ttarget=\"_blank\">\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :path=\"mdiInformationOutline\" inline />\n\t\t\t</template>\n\t\t</NcFormBoxButton>\n\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"Public signing key\">\n\t\t\t<template #description>\n\t\t\t\t<code>SSBkb24ndCBrbm93IHdoeSB5b3UgZGVjb2RlZCB0aGlzIHZhbHVlDQrgvLwg44GkIOKXlV/il5Ug4Ly944Gk</code>\n\t\t\t</template>\n\t\t\t<template #icon>\n\t\t\t\t<NcIconSvgWrapper :path=\"mdiContentCopy\" inline />\n\t\t\t</template>\n\t\t</NcFormBoxButton>\n\t</NcFormBox>\n</template>\n```\n\n### Inverted accent\n\nSometimes the description is more important than the label. In such cases use `inverted-accent` prop.\n\nFor example:\n- **Steps:** the description of the step is more important than the step number\n- **Copy button:** the value being copied is more important than the value label\n- **Folder picker:** the selected folder path is more important than the input label\n\n```vue\n<script>\nimport { mdiContentCopy, mdiDomain, mdiFolderOpenOutline } from '@mdi/js'\n\nexport default {\n\tsetup() {\n\t\treturn { mdiContentCopy, mdiDomain, mdiFolderOpenOutline }\n\t},\n}\n</script>\n\n<template>\n\t<div style=\"display: flex; flex-direction: column; gap: calc(4 * var(--default-grid-baseline));\">\n\t\t<NcFormGroup label=\"Mailvelope\" description=\"A browser extension that enables easy OpenPGP encryption and decryption of emails\">\n\t\t\t<NcFormBox>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Step 1\"\n\t\t\t\t\tdescription=\"Install the browser extension\"\n\t\t\t\t\thref=\"https://www.mailvelope.com/\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\tinverted-accent />\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Step 2\"\n\t\t\t\t\tdescription=\"Enable the current domain\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiDomain\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t</NcFormBox>\n\t\t</NcFormGroup>\n\n\t\t<NcFormGroup label=\"CalDAV\" description=\"Access Nextcloud calendars from other apps and devices\">\n\t\t\t<NcFormBox>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"CalDAV URL\"\n\t\t\t\t\tdescription=\"https://cloud.example.com/remote.php/dav/\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiContentCopy\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Server Address for iOS and macOS\"\n\t\t\t\t\tdescription=\"https://cloud.example.com/remote.php/dav/principals/users/user/\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiContentCopy\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t</NcFormBox>\n\t\t</NcFormGroup>\n\n\t\t<NcFormGroup label=\"Files\">\n\t\t\t<NcFormBox>\n\t\t\t\t<NcFormBoxButton\n\t\t\t\t\tlabel=\"Attachments folder\"\n\t\t\t\t\tdescription=\"/Talk\"\n\t\t\t\t\tinverted-accent>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcIconSvgWrapper :path=\"mdiFolderOpenOutline\" inline />\n\t\t\t\t\t</template>\n\t\t\t\t</NcFormBoxButton>\n\t\t\t</NcFormBox>\n\t\t</NcFormGroup>\n\t</div>\n</template>\n```\n\n### Requirements\n\n- Label is required (`label` prop or the default slot)\n- Icon is required unless there is a default icon (links)\n\n```vue\n<template>\n\t<NcFormBox>\n\t\t<NcFormBoxButton description=\"No label example\">\n\t\t\t<template #icon>\n\t\t\t\t✅\n\t\t\t</template>\n\t\t</NcFormBoxButton>\n\t\t<NcFormBoxButton label=\"No icon example\"/>\n\t\t<NcFormBoxButton\n\t\t\tlabel=\"No icon link example\"\n\t\t\tdescription=\"Links have a default icon\"\n\t\t\thref=\"https://nextcloud.com\"\n\t\t\ttarget=\"_blank\" />\n\t</NcFormBox>\n</template>\n```\n</docs>\n"],"names":[],"mappings":";;;;;;AAAA;AAAA;AAAA;AAAA;AA+DO,SAAS,cAAc,SAA0B;AAEvD,QAAM,QAAQ,SAAS,OAAO;AAE9B,QAAM,WAAW,mBAAA;AACjB,QAAM,sBAAsB,aAAa,SAAS,MAAM;AAKxD,QAAM,MAAM,SAAS,MAAM;AAE1B,QAAI,uBAAuB,MAAM,IAAI;AAGpC,aAAO;AAAA,IACR,WAAW,MAAM,MAAM;AACtB,aAAO;AAAA,IACR,OAAO;AACN,aAAO;AAAA,IACR;AAAA,EACD,CAAC;AAED,QAAM,SAAS,SAAS,MAAM,IAAI,UAAU,gBAAgB,IAAI,UAAU,GAAG;AAC7E,QAAM,cAAc,SAAS,MAAM,IAAI,UAAU,GAAG;AACpD,QAAM,eAAe,SAAS,MAAM,IAAI,UAAU,YAAY;AAC9D,QAAM,WAAW,SAAS,MAAM,IAAI,UAAU,QAAQ;AAEtD,QAAM,QAAQ,SAAS,MAAM;AAC5B,QAAI,IAAI,UAAU,cAAc;AAC/B,aAAO;AAAA,QACN,IAAI,MAAM;AAAA,QACV,aAAa;AAAA,QACb,GAAI,MAAM,kBAAkB,YAAY,KAAK,CAAA;AAAA,MAAC;AAAA,IAEhD,WAAW,IAAI,UAAU,KAAK;AAC7B,aAAO;AAAA,QACN,MAAM,MAAM;AAAA,QACZ,QAAQ,MAAM;AAAA,QACd,UAAU,MAAM,YAAY;AAAA,QAC5B,KAAK;AAAA,QACL,GAAI,MAAM,kBAAkB,GAAG,KAAK,CAAA;AAAA,MAAC;AAAA,IAEvC,WAAW,IAAI,UAAU,UAAU;AAClC,aAAO;AAAA,QACN,MAAM,MAAM,QAAQ;AAAA,QACpB,UAAU,MAAM;AAAA,QAChB,GAAI,MAAM,kBAAkB,QAAQ,KAAK,CAAA;AAAA,MAAC;AAAA,IAE5C;AAAA,EACD,CAAC;AAED,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAEF;;;;;;;;;;;;;;;AC7EA,UAAM,EAAE,KAAK,OAAO,OAAA,IAAW,cAAc;AAAA,MAC5C,IAAI,MAAM,MAAM,MAAM,EAAE;AAAA,MACxB,MAAM,MAAM,MAAM,MAAM,IAAI;AAAA,MAC5B,QAAQ,MAAM,MAAM,MAAM,MAAM;AAAA,MAChC,UAAU,MAAM,MAAM,MAAM,QAAQ;AAAA,IAAA,CACpC;AAED,UAAM,OAAO,SAAS,MAAM;AAC3B,UAAI,OAAO,OAAO;AACjB,eAAO,MAAM,WAAW,WAAW,eAAe;AAAA,MACnD;AACA,aAAO;AAAA,IACR,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent } from "vue";
|
|
2
2
|
import { whenever } from "@vueuse/core";
|
|
3
|
-
import { N as NcFormBoxButton } from "./NcFormBoxButton-
|
|
3
|
+
import { N as NcFormBoxButton } from "./NcFormBoxButton-CRL7kucw.mjs";
|
|
4
4
|
import { N as NcIconSvgWrapper } from "./NcIconSvgWrapper-Bui9PhAS.mjs";
|
|
5
5
|
import { u as useCopy } from "./useCopy-DDDe5RYH.mjs";
|
|
6
6
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
@@ -44,4 +44,4 @@ const NcFormBoxCopyButton = __component__.exports;
|
|
|
44
44
|
export {
|
|
45
45
|
NcFormBoxCopyButton as N
|
|
46
46
|
};
|
|
47
|
-
//# sourceMappingURL=NcFormBoxCopyButton-
|
|
47
|
+
//# sourceMappingURL=NcFormBoxCopyButton-BOENrJAS.mjs.map
|
package/dist/chunks/{NcFormBoxCopyButton-Da8RuDH1.mjs.map → NcFormBoxCopyButton-BOENrJAS.mjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormBoxCopyButton-
|
|
1
|
+
{"version":3,"file":"NcFormBoxCopyButton-BOENrJAS.mjs","sources":["../../src/components/NcFormBoxCopyButton/NcFormBoxCopyButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport { whenever } from '@vueuse/core'\nimport NcFormBoxButton from '../NcFormBoxButton/NcFormBoxButton.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.vue'\nimport { useCopy } from '../../composables/useCopy.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Copied value's value */\n\tlabel?: string\n\t/** The value to be copied */\n\tvalue: string\n\t/** Native disabled attribute */\n\tdisabled?: boolean\n}>(), {\n\tlabel: undefined,\n\tdisabled: false,\n})\n\nconst emit = defineEmits<{\n\t/** Value has been successfully copied */\n\t(event: 'copy'): void\n}>()\n\nconst { isCopied, copy, icon, altText } = useCopy(() => props.value)\n\nwhenever(isCopied, () => emit('copy'))\n</script>\n\n<template>\n\t<NcFormBoxButton\n\t\t:disabled=\"disabled\"\n\t\tinverted-accent\n\t\t@click=\"copy\">\n\t\t<template v-if=\"$slots.default || label\" #default>\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<span class=\"hidden-visually\">\n\t\t\t\t{{ altText }}\n\t\t\t</span>\n\t\t\t<slot>\n\t\t\t\t{{ label }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template #description>\n\t\t\t{{ value }}\n\t\t</template>\n\t\t<template #icon>\n\t\t\t<NcIconSvgWrapper :path=\"icon\" inline />\n\t\t</template>\n\t</NcFormBoxButton>\n</template>\n\n<docs>\n### General\n\n`NcFormBoxButton` set up to be a copy button.\n\n```vue\n<template>\n\t<NcFormGroup label=\"CalDAV\" description=\"Access Nextcloud calendars from other apps and devices\">\n\t\t<NcFormBox>\n\t\t\t<NcFormBoxCopyButton\n\t\t\t\tlabel=\"CalDAV URL\"\n\t\t\t\tvalue=\"https://cloud.example.com/remote.php/dav/\" />\n\t\t\t<NcFormBoxCopyButton\n\t\t\t\tlabel=\"Server Address for iOS and macOS\"\n\t\t\t\tvalue=\"https://cloud.example.com/remote.php/dav/principals/users/user/\" />\n\t\t</NcFormBox>\n\t</NcFormGroup>\n</template>\n```\n</docs>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AA4BA,UAAM,EAAE,UAAU,MAAM,MAAM,YAAY,QAAQ,MAAM,MAAM,KAAK;AAEnE,aAAS,UAAU,MAAM,KAAK,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const Vue = require("vue");
|
|
3
3
|
const core = require("@vueuse/core");
|
|
4
|
-
const NcFormBoxButton = require("./NcFormBoxButton-
|
|
4
|
+
const NcFormBoxButton = require("./NcFormBoxButton-BDI6Q7WA.cjs");
|
|
5
5
|
const NcIconSvgWrapper = require("./NcIconSvgWrapper-Bbl4kXZI.cjs");
|
|
6
6
|
const useCopy = require("./useCopy-3m2jDiIN.cjs");
|
|
7
7
|
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
@@ -43,4 +43,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
43
43
|
);
|
|
44
44
|
const NcFormBoxCopyButton = __component__.exports;
|
|
45
45
|
exports.NcFormBoxCopyButton = NcFormBoxCopyButton;
|
|
46
|
-
//# sourceMappingURL=NcFormBoxCopyButton-
|
|
46
|
+
//# sourceMappingURL=NcFormBoxCopyButton-Bk121Oc2.cjs.map
|
package/dist/chunks/{NcFormBoxCopyButton-BS9aM994.cjs.map → NcFormBoxCopyButton-Bk121Oc2.cjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormBoxCopyButton-
|
|
1
|
+
{"version":3,"file":"NcFormBoxCopyButton-Bk121Oc2.cjs","sources":["../../src/components/NcFormBoxCopyButton/NcFormBoxCopyButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport { whenever } from '@vueuse/core'\nimport NcFormBoxButton from '../NcFormBoxButton/NcFormBoxButton.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.vue'\nimport { useCopy } from '../../composables/useCopy.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Copied value's value */\n\tlabel?: string\n\t/** The value to be copied */\n\tvalue: string\n\t/** Native disabled attribute */\n\tdisabled?: boolean\n}>(), {\n\tlabel: undefined,\n\tdisabled: false,\n})\n\nconst emit = defineEmits<{\n\t/** Value has been successfully copied */\n\t(event: 'copy'): void\n}>()\n\nconst { isCopied, copy, icon, altText } = useCopy(() => props.value)\n\nwhenever(isCopied, () => emit('copy'))\n</script>\n\n<template>\n\t<NcFormBoxButton\n\t\t:disabled=\"disabled\"\n\t\tinverted-accent\n\t\t@click=\"copy\">\n\t\t<template v-if=\"$slots.default || label\" #default>\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<span class=\"hidden-visually\">\n\t\t\t\t{{ altText }}\n\t\t\t</span>\n\t\t\t<slot>\n\t\t\t\t{{ label }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template #description>\n\t\t\t{{ value }}\n\t\t</template>\n\t\t<template #icon>\n\t\t\t<NcIconSvgWrapper :path=\"icon\" inline />\n\t\t</template>\n\t</NcFormBoxButton>\n</template>\n\n<docs>\n### General\n\n`NcFormBoxButton` set up to be a copy button.\n\n```vue\n<template>\n\t<NcFormGroup label=\"CalDAV\" description=\"Access Nextcloud calendars from other apps and devices\">\n\t\t<NcFormBox>\n\t\t\t<NcFormBoxCopyButton\n\t\t\t\tlabel=\"CalDAV URL\"\n\t\t\t\tvalue=\"https://cloud.example.com/remote.php/dav/\" />\n\t\t\t<NcFormBoxCopyButton\n\t\t\t\tlabel=\"Server Address for iOS and macOS\"\n\t\t\t\tvalue=\"https://cloud.example.com/remote.php/dav/principals/users/user/\" />\n\t\t</NcFormBox>\n\t</NcFormGroup>\n</template>\n```\n</docs>\n"],"names":["useCopy","whenever"],"mappings":";;;;;;;;;;;;;;;;;AA4BA,UAAM,EAAE,UAAU,MAAM,MAAM,YAAYA,QAAAA,QAAQ,MAAM,MAAM,KAAK;AAEnEC,SAAAA,SAAS,UAAU,MAAM,KAAK,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import '../assets/NcFormBoxItem-
|
|
1
|
+
import '../assets/NcFormBoxItem-DiaYRoDl.css';
|
|
2
2
|
import { defineComponent, useSlots } from "vue";
|
|
3
3
|
import { u as useNcFormBox } from "./useNcFormBox-Djlh582y.mjs";
|
|
4
4
|
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
@@ -27,20 +27,20 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
27
27
|
return { __sfc: true, props, slots, formBoxItemClass, descriptionId, hasDescription, isLegacy32 };
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
|
-
const formBoxItem = "
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const formBoxItem__content = "
|
|
36
|
-
const formBoxItem__icon = "
|
|
30
|
+
const formBoxItem = "_formBoxItem_9-pQo";
|
|
31
|
+
const formBoxItem__description = "_formBoxItem__description_9iJ-O";
|
|
32
|
+
const formBoxItem_legacy = "_formBoxItem_legacy_iQoPw";
|
|
33
|
+
const formBoxItem_inverted = "_formBoxItem_inverted_y1uKV";
|
|
34
|
+
const formBoxItem__element = "_formBoxItem__element_9-qks";
|
|
35
|
+
const formBoxItem__content = "_formBoxItem__content_fsltG";
|
|
36
|
+
const formBoxItem__icon = "_formBoxItem__icon_dEMLq";
|
|
37
37
|
const style0 = {
|
|
38
|
-
"material-design-icon": "_material-design-
|
|
38
|
+
"material-design-icon": "_material-design-icon_EeAM0",
|
|
39
39
|
formBoxItem,
|
|
40
|
+
formBoxItem__description,
|
|
40
41
|
formBoxItem_legacy,
|
|
41
42
|
formBoxItem_inverted,
|
|
42
43
|
formBoxItem__element,
|
|
43
|
-
formBoxItem__description,
|
|
44
44
|
formBoxItem__content,
|
|
45
45
|
formBoxItem__icon
|
|
46
46
|
};
|
|
@@ -84,4 +84,4 @@ const NcFormBoxItem = __component__.exports;
|
|
|
84
84
|
export {
|
|
85
85
|
NcFormBoxItem as N
|
|
86
86
|
};
|
|
87
|
-
//# sourceMappingURL=NcFormBoxItem-
|
|
87
|
+
//# sourceMappingURL=NcFormBoxItem-DasY7_rJ.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormBoxItem-
|
|
1
|
+
{"version":3,"file":"NcFormBoxItem-DasY7_rJ.mjs","sources":["../../src/components/NcFormBox/NcFormBoxItem.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script lang=\"ts\">\nexport default {\n\tinheritAttrs: false,\n}\n</script>\n\n<script setup lang=\"ts\">\nimport type { VueClassType } from '../../utils/VueTypes.ts'\n\nimport { useSlots } from 'vue'\nimport { useNcFormBox } from '../../components/NcFormBox/useNcFormBox.ts'\nimport { createElementId } from '../../utils/createElementId.ts'\nimport { isLegacy32 } from '../../utils/legacy.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Interactive item element's tag */\n\ttag: string\n\t/** Main Label */\n\tlabel?: string\n\t/** Optional description below the label, also used for the aria-describedby */\n\tdescription?: string\n\t/** Accent on the description instead of the label */\n\tinvertedAccent?: boolean\n\t/** Interactive item classes */\n\titemClasses?: VueClassType\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\tinvertedAccent: false,\n\tclass: undefined,\n\titemClasses: undefined,\n})\n\ndefineEmits<{\n\t/** Click on the item */\n\t(e: 'click', event: MouseEvent): void\n}>()\n\nconst slots = useSlots()\n\nconst { formBoxItemClass } = useNcFormBox()\n\nconst descriptionId = createElementId()\nconst hasDescription = () => !!props.description || !!slots.description\n</script>\n\n<template>\n\t<div\n\t\t:class=\"[\n\t\t\t$style.formBoxItem,\n\t\t\tformBoxItemClass,\n\t\t\t{\n\t\t\t\t[$style.formBoxItem_inverted]: invertedAccent && hasDescription(),\n\t\t\t\t[$style.formBoxItem_legacy]: isLegacy32,\n\t\t\t},\n\t\t]\">\n\t\t<span :class=\"$style.formBoxItem__content\">\n\t\t\t<component\n\t\t\t\t:is=\"tag\"\n\t\t\t\t:class=\"[$style.formBoxItem__element, itemClasses]\"\n\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t@click=\"$emit('click', $event)\">\n\t\t\t\t<!-- @slot Item's label custom content\n\t\t\t\t @binding {string} descriptionId IDRef of the description element if present -->\n\t\t\t\t<slot :description-id=\"descriptionId\">\n\t\t\t\t\t{{ label || '⚠️ Label is missing' }}\n\t\t\t\t</slot>\n\t\t\t</component>\n\t\t\t<span v-if=\"hasDescription()\" :id=\"descriptionId\" :class=\"$style.formBoxItem__description\">\n\t\t\t\t<!-- @slot Custom description content\n\t\t\t\t @binding {string} descriptionId IDRef of the description element if present -->\n\t\t\t\t<slot name=\"description\">\n\t\t\t\t\t{{ description }}\n\t\t\t\t</slot>\n\t\t\t</span>\n\t\t</span>\n\t\t<span :class=\"$style.formBoxItem__icon\">\n\t\t\t<!-- @slot Icon content -->\n\t\t\t<slot name=\"icon\" :description-id=\"descriptionId\">\n\t\t\t\t⚠️ Icon is missing\n\t\t\t</slot>\n\t\t</span>\n\t</div>\n</template>\n\n<style lang=\"scss\" module>\n.formBoxItem {\n\t--nc-form-box-item-border-width: 1px;\n\t--nc-form-box-item-min-height: 40px; // Special size defined by the design\n\t--form-element-label-offset: calc(var(--border-radius-element) + var(--default-grid-baseline));\n\t--form-element-label-padding: calc(var(--form-element-label-offset) - var(--nc-form-box-item-border-width));\n\t// New colors we don't yet have in theming\n\t// TODO: add new colors to the theming\n\t--color-primary-element-extra-light: hsl(from var(--color-primary-element-light) h s calc(l * 1.045));\n\t--color-primary-element-extra-light-hover: hsl(from var(--color-primary-element-light-hover) h s calc(l * 1.045));\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: calc(2 * var(--default-grid-baseline));\n\tmin-height: var(--nc-form-box-item-min-height);\n\tpadding-inline: var(--form-element-label-padding);\n\tborder: 1px solid var(--color-primary-element-extra-light-hover);\n\tborder-bottom-width: 2px;\n\tborder-radius: var(--border-radius-element);\n\tbackground-color: var(--color-primary-element-extra-light);\n\tcolor: var(--color-main-text);\n\tfont-weight: var(--font-weight-element, normal);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: var(--animation-quick);\n\ttransition-timing-function: linear;\n\t-webkit-user-select: none;\n\tuser-select: none;\n\tcursor: pointer;\n\n\t* {\n\t\tcursor: inherit;\n\t}\n\n\t&:has(:disabled) {\n\t\tcursor: default;\n\t\topacity: 0.5;\n\t}\n\n\t&:hover:not(:has(:disabled)) {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-extra-light-hover);\n\t}\n\n\t&:has(:focus-visible) {\n\t\toutline: 2px solid var(--color-main-text);\n\t\tbox-shadow: 0 0 0 4px var(--color-main-background);\n\t}\n\n\t&__description {\n\t\tfont-weight: var(--font-weight-default, normal);\n\t}\n\n\t&.formBoxItem_legacy {\n\t\t--nc-form-box-item-border-width: 0px;\n\t\tborder: none;\n\t}\n\n\t&.formBoxItem_inverted {\n\t\t.formBoxItem__element {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\n\t\t.formBoxItem__description {\n\t\t\tcolor: inherit;\n\t\t}\n\t}\n}\n\n.formBoxItem__content {\n\tflex: 1;\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding-block: calc(2 * var(--default-grid-baseline));\n\toverflow-wrap: anywhere;\n}\n\n// A trick for accessibility:\n// make entire component clickable while internally splitting the interactive item and the description\n.formBoxItem__element::after {\n\tcontent: '';\n\tposition: absolute;\n\tinset: 0;\n}\n\n.formBoxItem__description {\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.formBoxItem__icon {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: flex-end;\n}\n</style>\n\n<docs>\nAn internal component\n</docs>\n"],"names":[],"mappings":";;;;;AAMA,MAAA,cAAe;AAAA,EACd,cAAc;AACf;;;;;;;;;;;;;;AAmCA,UAAM,QAAQ,SAAA;AAEd,UAAM,EAAE,iBAAA,IAAqB,aAAA;AAE7B,UAAM,gBAAgB,gBAAA;AACtB,UAAM,iBAAiB,MAAM,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require('../assets/NcFormBoxItem-
|
|
1
|
+
require('../assets/NcFormBoxItem-DiaYRoDl.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const Vue = require("vue");
|
|
4
4
|
const useNcFormBox = require("./useNcFormBox-XowgPxpI.cjs");
|
|
@@ -28,20 +28,20 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
|
28
28
|
return { __sfc: true, props, slots, formBoxItemClass, descriptionId, hasDescription, isLegacy32: legacy.isLegacy32 };
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
|
-
const formBoxItem = "
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const
|
|
36
|
-
const formBoxItem__content = "
|
|
37
|
-
const formBoxItem__icon = "
|
|
31
|
+
const formBoxItem = "_formBoxItem_9-pQo";
|
|
32
|
+
const formBoxItem__description = "_formBoxItem__description_9iJ-O";
|
|
33
|
+
const formBoxItem_legacy = "_formBoxItem_legacy_iQoPw";
|
|
34
|
+
const formBoxItem_inverted = "_formBoxItem_inverted_y1uKV";
|
|
35
|
+
const formBoxItem__element = "_formBoxItem__element_9-qks";
|
|
36
|
+
const formBoxItem__content = "_formBoxItem__content_fsltG";
|
|
37
|
+
const formBoxItem__icon = "_formBoxItem__icon_dEMLq";
|
|
38
38
|
const style0 = {
|
|
39
|
-
"material-design-icon": "_material-design-
|
|
39
|
+
"material-design-icon": "_material-design-icon_EeAM0",
|
|
40
40
|
formBoxItem,
|
|
41
|
+
formBoxItem__description,
|
|
41
42
|
formBoxItem_legacy,
|
|
42
43
|
formBoxItem_inverted,
|
|
43
44
|
formBoxItem__element,
|
|
44
|
-
formBoxItem__description,
|
|
45
45
|
formBoxItem__content,
|
|
46
46
|
formBoxItem__icon
|
|
47
47
|
};
|
|
@@ -83,4 +83,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
83
83
|
);
|
|
84
84
|
const NcFormBoxItem = __component__.exports;
|
|
85
85
|
exports.NcFormBoxItem = NcFormBoxItem;
|
|
86
|
-
//# sourceMappingURL=NcFormBoxItem-
|
|
86
|
+
//# sourceMappingURL=NcFormBoxItem-Dmcja_Xa.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormBoxItem-
|
|
1
|
+
{"version":3,"file":"NcFormBoxItem-Dmcja_Xa.cjs","sources":["../../src/components/NcFormBox/NcFormBoxItem.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script lang=\"ts\">\nexport default {\n\tinheritAttrs: false,\n}\n</script>\n\n<script setup lang=\"ts\">\nimport type { VueClassType } from '../../utils/VueTypes.ts'\n\nimport { useSlots } from 'vue'\nimport { useNcFormBox } from '../../components/NcFormBox/useNcFormBox.ts'\nimport { createElementId } from '../../utils/createElementId.ts'\nimport { isLegacy32 } from '../../utils/legacy.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Interactive item element's tag */\n\ttag: string\n\t/** Main Label */\n\tlabel?: string\n\t/** Optional description below the label, also used for the aria-describedby */\n\tdescription?: string\n\t/** Accent on the description instead of the label */\n\tinvertedAccent?: boolean\n\t/** Interactive item classes */\n\titemClasses?: VueClassType\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\tinvertedAccent: false,\n\tclass: undefined,\n\titemClasses: undefined,\n})\n\ndefineEmits<{\n\t/** Click on the item */\n\t(e: 'click', event: MouseEvent): void\n}>()\n\nconst slots = useSlots()\n\nconst { formBoxItemClass } = useNcFormBox()\n\nconst descriptionId = createElementId()\nconst hasDescription = () => !!props.description || !!slots.description\n</script>\n\n<template>\n\t<div\n\t\t:class=\"[\n\t\t\t$style.formBoxItem,\n\t\t\tformBoxItemClass,\n\t\t\t{\n\t\t\t\t[$style.formBoxItem_inverted]: invertedAccent && hasDescription(),\n\t\t\t\t[$style.formBoxItem_legacy]: isLegacy32,\n\t\t\t},\n\t\t]\">\n\t\t<span :class=\"$style.formBoxItem__content\">\n\t\t\t<component\n\t\t\t\t:is=\"tag\"\n\t\t\t\t:class=\"[$style.formBoxItem__element, itemClasses]\"\n\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t@click=\"$emit('click', $event)\">\n\t\t\t\t<!-- @slot Item's label custom content\n\t\t\t\t @binding {string} descriptionId IDRef of the description element if present -->\n\t\t\t\t<slot :description-id=\"descriptionId\">\n\t\t\t\t\t{{ label || '⚠️ Label is missing' }}\n\t\t\t\t</slot>\n\t\t\t</component>\n\t\t\t<span v-if=\"hasDescription()\" :id=\"descriptionId\" :class=\"$style.formBoxItem__description\">\n\t\t\t\t<!-- @slot Custom description content\n\t\t\t\t @binding {string} descriptionId IDRef of the description element if present -->\n\t\t\t\t<slot name=\"description\">\n\t\t\t\t\t{{ description }}\n\t\t\t\t</slot>\n\t\t\t</span>\n\t\t</span>\n\t\t<span :class=\"$style.formBoxItem__icon\">\n\t\t\t<!-- @slot Icon content -->\n\t\t\t<slot name=\"icon\" :description-id=\"descriptionId\">\n\t\t\t\t⚠️ Icon is missing\n\t\t\t</slot>\n\t\t</span>\n\t</div>\n</template>\n\n<style lang=\"scss\" module>\n.formBoxItem {\n\t--nc-form-box-item-border-width: 1px;\n\t--nc-form-box-item-min-height: 40px; // Special size defined by the design\n\t--form-element-label-offset: calc(var(--border-radius-element) + var(--default-grid-baseline));\n\t--form-element-label-padding: calc(var(--form-element-label-offset) - var(--nc-form-box-item-border-width));\n\t// New colors we don't yet have in theming\n\t// TODO: add new colors to the theming\n\t--color-primary-element-extra-light: hsl(from var(--color-primary-element-light) h s calc(l * 1.045));\n\t--color-primary-element-extra-light-hover: hsl(from var(--color-primary-element-light-hover) h s calc(l * 1.045));\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: calc(2 * var(--default-grid-baseline));\n\tmin-height: var(--nc-form-box-item-min-height);\n\tpadding-inline: var(--form-element-label-padding);\n\tborder: 1px solid var(--color-primary-element-extra-light-hover);\n\tborder-bottom-width: 2px;\n\tborder-radius: var(--border-radius-element);\n\tbackground-color: var(--color-primary-element-extra-light);\n\tcolor: var(--color-main-text);\n\tfont-weight: var(--font-weight-element, normal);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: var(--animation-quick);\n\ttransition-timing-function: linear;\n\t-webkit-user-select: none;\n\tuser-select: none;\n\tcursor: pointer;\n\n\t* {\n\t\tcursor: inherit;\n\t}\n\n\t&:has(:disabled) {\n\t\tcursor: default;\n\t\topacity: 0.5;\n\t}\n\n\t&:hover:not(:has(:disabled)) {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-extra-light-hover);\n\t}\n\n\t&:has(:focus-visible) {\n\t\toutline: 2px solid var(--color-main-text);\n\t\tbox-shadow: 0 0 0 4px var(--color-main-background);\n\t}\n\n\t&__description {\n\t\tfont-weight: var(--font-weight-default, normal);\n\t}\n\n\t&.formBoxItem_legacy {\n\t\t--nc-form-box-item-border-width: 0px;\n\t\tborder: none;\n\t}\n\n\t&.formBoxItem_inverted {\n\t\t.formBoxItem__element {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\n\t\t.formBoxItem__description {\n\t\t\tcolor: inherit;\n\t\t}\n\t}\n}\n\n.formBoxItem__content {\n\tflex: 1;\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding-block: calc(2 * var(--default-grid-baseline));\n\toverflow-wrap: anywhere;\n}\n\n// A trick for accessibility:\n// make entire component clickable while internally splitting the interactive item and the description\n.formBoxItem__element::after {\n\tcontent: '';\n\tposition: absolute;\n\tinset: 0;\n}\n\n.formBoxItem__description {\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.formBoxItem__icon {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: flex-end;\n}\n</style>\n\n<docs>\nAn internal component\n</docs>\n"],"names":["useSlots","useNcFormBox","createElementId"],"mappings":";;;;;;AAMA,MAAA,cAAe;AAAA,EACd,cAAc;AACf;;;;;;;;;;;;;;AAmCA,UAAM,QAAQA,IAAAA,SAAA;AAEd,UAAM,EAAE,iBAAA,IAAqBC,0BAAA;AAE7B,UAAM,gBAAgBC,gBAAAA,gBAAA;AACtB,UAAM,iBAAiB,MAAM,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
require('../assets/NcFormBoxSwitch-
|
|
1
|
+
require('../assets/NcFormBoxSwitch-CDDwfQx6.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const Vue = require("vue");
|
|
4
4
|
const core = require("@vueuse/core");
|
|
5
|
-
const NcFormBoxItem = require("./NcFormBoxItem-
|
|
6
|
-
const NcIconToggleSwitch = require("./NcIconToggleSwitch-
|
|
5
|
+
const NcFormBoxItem = require("./NcFormBoxItem-Dmcja_Xa.cjs");
|
|
6
|
+
const NcIconToggleSwitch = require("./NcIconToggleSwitch-Boo2ulI6.cjs");
|
|
7
7
|
const createElementId = require("./createElementId-lalylSCf.cjs");
|
|
8
8
|
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
9
9
|
const __default__ = {
|
|
@@ -40,9 +40,9 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
|
40
40
|
return { __sfc: true, props, emit, model, inputId, NcFormBoxItem: NcFormBoxItem.NcFormBoxItem, NcIconToggleSwitch: NcIconToggleSwitch.NcIconToggleSwitch };
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
|
-
const formBoxSwitch__input = "
|
|
43
|
+
const formBoxSwitch__input = "_formBoxSwitch__input_59A7r";
|
|
44
44
|
const style0 = {
|
|
45
|
-
"material-design-icon": "_material-design-
|
|
45
|
+
"material-design-icon": "_material-design-icon_AHfws",
|
|
46
46
|
formBoxSwitch__input
|
|
47
47
|
};
|
|
48
48
|
var _sfc_render = function render() {
|
|
@@ -90,4 +90,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
90
90
|
);
|
|
91
91
|
const NcFormBoxSwitch = __component__.exports;
|
|
92
92
|
exports.NcFormBoxSwitch = NcFormBoxSwitch;
|
|
93
|
-
//# sourceMappingURL=NcFormBoxSwitch-
|
|
93
|
+
//# sourceMappingURL=NcFormBoxSwitch-CEO4FLdd.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxSwitch-CEO4FLdd.cjs","sources":["../../src/components/NcFormBoxSwitch/NcFormBoxSwitch.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script lang=\"ts\">\nexport default {\n\tmodel: {\n\t\tprop: 'modelValue',\n\t\tevent: 'update:modelValue',\n\t},\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { watch } from 'vue'\nimport NcFormBoxItem from '../NcFormBox/NcFormBoxItem.vue'\nimport NcIconToggleSwitch from '../NcIconToggleSwitch/NcIconToggleSwitch.vue'\nimport { createElementId } from '../../utils/createElementId.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Main label */\n\tlabel?: string\n\t/** Optional description below the label, also used for the aria-describedby */\n\tdescription?: string\n\t/** Disabled state */\n\tdisabled?: boolean\n\t/** Switch toggle model value */\n\tmodelValue: boolean\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\tdisabled: false,\n})\n\nconst emit = defineEmits<{\n\t/** Switch is toggled ON */\n\t(event: 'enable'): void\n\t/** Switch is toggled OFF */\n\t(event: 'disable'): void\n\t(event: 'update:modelValue', value: boolean): void\n}>()\n\nconst model = useVModel(props, 'modelValue', emit, { passive: true })\n\nconst inputId = createElementId()\n\nwatch(model, () => {\n\tif (model.value) {\n\t\temit('enable')\n\t} else {\n\t\temit('disable')\n\t}\n}, {\n\t// defineModel emits update:modelValue synchronously\n\t// Watching it synchronously to emit the enable/disable events together with the update:modelValue event\n\tflush: 'sync',\n})\n</script>\n\n<template>\n\t<NcFormBoxItem\n\t\ttag=\"label\"\n\t\t:for=\"inputId\">\n\t\t<template v-if=\"$slots.default || label\" #default>\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<slot>\n\t\t\t\t{{ label }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template v-if=\"$slots.description || description\" #description>\n\t\t\t<!-- @slot Custom description content -->\n\t\t\t<slot name=\"description\">\n\t\t\t\t{{ description }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template #icon=\"{ descriptionId }\">\n\t\t\t<input\n\t\t\t\t:id=\"inputId\"\n\t\t\t\tv-model=\"model\"\n\t\t\t\t:class=\"$style.formBoxSwitch__input\"\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\trole=\"switch\"\n\t\t\t\t:aria-describedby=\"descriptionId\"\n\t\t\t\t:disabled=\"disabled\">\n\t\t\t<NcIconToggleSwitch :checked=\"modelValue\" inline />\n\t\t</template>\n\t</NcFormBoxItem>\n</template>\n\n<style lang=\"scss\" module>\ninput.formBoxSwitch__input {\n\tmargin: 0;\n\twidth: var(--default-clickable-area);\n\t/* Keep it visually hidden but on the position of visual switch icon */\n\tposition: absolute;\n\tinset-block: 0;\n\tinset-inline-end: var(--form-element-label-offset);\n\tz-index: -1;\n\topacity: 0 !important;\n\t/* Override server styles */\n\theight: auto;\n\tcursor: inherit;\n}\n</style>\n\n<docs>\n### General\n\nA toggle switch to be used within `<NcFormBox>`.\n\nLike other form box items, it has a label and an optional description.\n\nIn addition to the standard `v-model` binding, it emits `enable` and `disable` events when toggled **on** or **off**.\n\n```vue\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tswitchValue: false,\n\t\t}\n\t},\n\tmethods: {\n\t\tlog: console.log,\n\t},\n}\n</script>\n\n<template>\n\t<NcFormBox>\n\t\t<NcFormBoxSwitch v-model=\"switchValue\" label=\"Turn camera and microphone off by default\" />\n\t\t<NcFormBoxSwitch\n\t\t\tv-model=\"switchValue\"\n\t\t\tlabel=\"Blur camera background by default\"\n\t\t\tdisabled />\n\t\t<NcFormBoxSwitch\n\t\t\tv-model=\"switchValue\"\n\t\t\tlabel=\"Skip device preview before joining a call\"\n\t\t\tdescription=\"Will always show if recording consent is required\"\n\t\t\t@update:modelValue=\"log('Switch toggled', $event, switchValue)\"\n\t\t\t@enable=\"log('Switch enabled', switchValue)\"\n\t\t\t@disable=\"log('Switch disabled', switchValue)\"\n\t\t/>\n\t\t<NcFormBoxSwitch v-model=\"switchValue\" />\n\t</NcFormBox>\n</template>\n```\n</docs>\n"],"names":["useVModel","createElementId","watch"],"mappings":";;;;;;;AAMA,MAAA,cAAe;AAAA,EACd,OAAO;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,EAAA;AAET;;;;;;;;;;;;;AAiCA,UAAM,QAAQA,KAAAA,UAAU,OAAO,cAAc,MAAM,EAAE,SAAS,MAAM;AAEpE,UAAM,UAAUC,gBAAAA,gBAAA;AAEhBC,QAAAA,MAAM,OAAO,MAAM;AAClB,UAAI,MAAM,OAAO;AAChB,aAAK,QAAQ;AAAA,MACd,OAAO;AACN,aAAK,SAAS;AAAA,MACf;AAAA,IACD,GAAG;AAAA;AAAA;AAAA,MAGF,OAAO;AAAA,IAAA,CACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import '../assets/NcFormBoxSwitch-
|
|
1
|
+
import '../assets/NcFormBoxSwitch-CDDwfQx6.css';
|
|
2
2
|
import { defineComponent, watch } from "vue";
|
|
3
3
|
import { useVModel } from "@vueuse/core";
|
|
4
|
-
import { N as NcFormBoxItem } from "./NcFormBoxItem-
|
|
5
|
-
import { N as NcIconToggleSwitch } from "./NcIconToggleSwitch-
|
|
4
|
+
import { N as NcFormBoxItem } from "./NcFormBoxItem-DasY7_rJ.mjs";
|
|
5
|
+
import { N as NcIconToggleSwitch } from "./NcIconToggleSwitch-DCTeQGv5.mjs";
|
|
6
6
|
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
7
7
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
8
8
|
const __default__ = {
|
|
@@ -39,9 +39,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
39
39
|
return { __sfc: true, props, emit, model, inputId, NcFormBoxItem, NcIconToggleSwitch };
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
|
-
const formBoxSwitch__input = "
|
|
42
|
+
const formBoxSwitch__input = "_formBoxSwitch__input_59A7r";
|
|
43
43
|
const style0 = {
|
|
44
|
-
"material-design-icon": "_material-design-
|
|
44
|
+
"material-design-icon": "_material-design-icon_AHfws",
|
|
45
45
|
formBoxSwitch__input
|
|
46
46
|
};
|
|
47
47
|
var _sfc_render = function render() {
|
|
@@ -91,4 +91,4 @@ const NcFormBoxSwitch = __component__.exports;
|
|
|
91
91
|
export {
|
|
92
92
|
NcFormBoxSwitch as N
|
|
93
93
|
};
|
|
94
|
-
//# sourceMappingURL=NcFormBoxSwitch-
|
|
94
|
+
//# sourceMappingURL=NcFormBoxSwitch-bdRBjKGq.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxSwitch-bdRBjKGq.mjs","sources":["../../src/components/NcFormBoxSwitch/NcFormBoxSwitch.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script lang=\"ts\">\nexport default {\n\tmodel: {\n\t\tprop: 'modelValue',\n\t\tevent: 'update:modelValue',\n\t},\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { watch } from 'vue'\nimport NcFormBoxItem from '../NcFormBox/NcFormBoxItem.vue'\nimport NcIconToggleSwitch from '../NcIconToggleSwitch/NcIconToggleSwitch.vue'\nimport { createElementId } from '../../utils/createElementId.ts'\n\nconst props = withDefaults(defineProps<{\n\t/** Main label */\n\tlabel?: string\n\t/** Optional description below the label, also used for the aria-describedby */\n\tdescription?: string\n\t/** Disabled state */\n\tdisabled?: boolean\n\t/** Switch toggle model value */\n\tmodelValue: boolean\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\tdisabled: false,\n})\n\nconst emit = defineEmits<{\n\t/** Switch is toggled ON */\n\t(event: 'enable'): void\n\t/** Switch is toggled OFF */\n\t(event: 'disable'): void\n\t(event: 'update:modelValue', value: boolean): void\n}>()\n\nconst model = useVModel(props, 'modelValue', emit, { passive: true })\n\nconst inputId = createElementId()\n\nwatch(model, () => {\n\tif (model.value) {\n\t\temit('enable')\n\t} else {\n\t\temit('disable')\n\t}\n}, {\n\t// defineModel emits update:modelValue synchronously\n\t// Watching it synchronously to emit the enable/disable events together with the update:modelValue event\n\tflush: 'sync',\n})\n</script>\n\n<template>\n\t<NcFormBoxItem\n\t\ttag=\"label\"\n\t\t:for=\"inputId\">\n\t\t<template v-if=\"$slots.default || label\" #default>\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<slot>\n\t\t\t\t{{ label }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template v-if=\"$slots.description || description\" #description>\n\t\t\t<!-- @slot Custom description content -->\n\t\t\t<slot name=\"description\">\n\t\t\t\t{{ description }}\n\t\t\t</slot>\n\t\t</template>\n\t\t<template #icon=\"{ descriptionId }\">\n\t\t\t<input\n\t\t\t\t:id=\"inputId\"\n\t\t\t\tv-model=\"model\"\n\t\t\t\t:class=\"$style.formBoxSwitch__input\"\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\trole=\"switch\"\n\t\t\t\t:aria-describedby=\"descriptionId\"\n\t\t\t\t:disabled=\"disabled\">\n\t\t\t<NcIconToggleSwitch :checked=\"modelValue\" inline />\n\t\t</template>\n\t</NcFormBoxItem>\n</template>\n\n<style lang=\"scss\" module>\ninput.formBoxSwitch__input {\n\tmargin: 0;\n\twidth: var(--default-clickable-area);\n\t/* Keep it visually hidden but on the position of visual switch icon */\n\tposition: absolute;\n\tinset-block: 0;\n\tinset-inline-end: var(--form-element-label-offset);\n\tz-index: -1;\n\topacity: 0 !important;\n\t/* Override server styles */\n\theight: auto;\n\tcursor: inherit;\n}\n</style>\n\n<docs>\n### General\n\nA toggle switch to be used within `<NcFormBox>`.\n\nLike other form box items, it has a label and an optional description.\n\nIn addition to the standard `v-model` binding, it emits `enable` and `disable` events when toggled **on** or **off**.\n\n```vue\n<script>\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tswitchValue: false,\n\t\t}\n\t},\n\tmethods: {\n\t\tlog: console.log,\n\t},\n}\n</script>\n\n<template>\n\t<NcFormBox>\n\t\t<NcFormBoxSwitch v-model=\"switchValue\" label=\"Turn camera and microphone off by default\" />\n\t\t<NcFormBoxSwitch\n\t\t\tv-model=\"switchValue\"\n\t\t\tlabel=\"Blur camera background by default\"\n\t\t\tdisabled />\n\t\t<NcFormBoxSwitch\n\t\t\tv-model=\"switchValue\"\n\t\t\tlabel=\"Skip device preview before joining a call\"\n\t\t\tdescription=\"Will always show if recording consent is required\"\n\t\t\t@update:modelValue=\"log('Switch toggled', $event, switchValue)\"\n\t\t\t@enable=\"log('Switch enabled', switchValue)\"\n\t\t\t@disable=\"log('Switch disabled', switchValue)\"\n\t\t/>\n\t\t<NcFormBoxSwitch v-model=\"switchValue\" />\n\t</NcFormBox>\n</template>\n```\n</docs>\n"],"names":[],"mappings":";;;;;;AAMA,MAAA,cAAe;AAAA,EACd,OAAO;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,EAAA;AAET;;;;;;;;;;;;;AAiCA,UAAM,QAAQ,UAAU,OAAO,cAAc,MAAM,EAAE,SAAS,MAAM;AAEpE,UAAM,UAAU,gBAAA;AAEhB,UAAM,OAAO,MAAM;AAClB,UAAI,MAAM,OAAO;AAChB,aAAK,QAAQ;AAAA,MACd,OAAO;AACN,aAAK,SAAS;AAAA,MACf;AAAA,IACD,GAAG;AAAA;AAAA;AAAA,MAGF,OAAO;AAAA,IAAA,CACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import '../assets/NcFormGroup-
|
|
1
|
+
import '../assets/NcFormGroup-ChUa97BY.css';
|
|
2
2
|
import { defineComponent, useSlots } from "vue";
|
|
3
3
|
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
4
4
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
@@ -22,14 +22,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
22
22
|
return { __sfc: true, props, slots, id, descriptionId, hasDescription, getDescriptionId, hasContentOnly };
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
|
-
const formGroup = "
|
|
26
|
-
const formGroup_noGap = "
|
|
27
|
-
const formGroup__label = "
|
|
28
|
-
const formGroup__description = "
|
|
29
|
-
const formGroup__content = "
|
|
30
|
-
const formGroup__content_only = "
|
|
25
|
+
const formGroup = "_formGroup_yrK8o";
|
|
26
|
+
const formGroup_noGap = "_formGroup_noGap_-XHDf";
|
|
27
|
+
const formGroup__label = "_formGroup__label_-UA7A";
|
|
28
|
+
const formGroup__description = "_formGroup__description_uSxeO";
|
|
29
|
+
const formGroup__content = "_formGroup__content_Cy4eq";
|
|
30
|
+
const formGroup__content_only = "_formGroup__content_only_umUCR";
|
|
31
31
|
const style0 = {
|
|
32
|
-
"material-design-icon": "_material-design-
|
|
32
|
+
"material-design-icon": "_material-design-icon_qbAGk",
|
|
33
33
|
formGroup,
|
|
34
34
|
formGroup_noGap,
|
|
35
35
|
formGroup__label,
|
|
@@ -66,4 +66,4 @@ const NcFormGroup = __component__.exports;
|
|
|
66
66
|
export {
|
|
67
67
|
NcFormGroup as N
|
|
68
68
|
};
|
|
69
|
-
//# sourceMappingURL=NcFormGroup-
|
|
69
|
+
//# sourceMappingURL=NcFormGroup-tW-MwPUj.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormGroup-
|
|
1
|
+
{"version":3,"file":"NcFormGroup-tW-MwPUj.mjs","sources":["../../src/components/NcFormGroup/NcFormGroup.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport { useSlots } from 'vue'\nimport { createElementId } from '../../utils/createElementId.ts'\n\nconst props = withDefaults(defineProps<{\n\t/**\n\t * Group label #label slot can be used for custom label content\n\t */\n\tlabel?: string\n\t/**\n\t * Optional fieldset description. #description slot can be used for custom description content\n\t */\n\tdescription?: string\n\t/**\n\t * Hide the label visually but keep it accessible for screen readers\n\t */\n\thideLabel?: boolean\n\t/**\n\t * Hide the description visually but keep it accessible for screen readers\n\t */\n\thideDescription?: boolean\n\t/**\n\t * Disable default fieldset content gap between content elements\n\t */\n\tnoGap?: boolean\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\thideLabel: false,\n\thideDescription: false,\n\tnoGap: false,\n})\n\nconst slots = useSlots()\n\nconst id = `nc-form-group-${createElementId()}`\nconst descriptionId = `${id}-description`\n\nconst hasDescription = () => !!props.description || !!slots.description\nconst getDescriptionId = () => hasDescription() ? descriptionId : undefined\nconst hasContentOnly = () => props.hideLabel && (!hasDescription() || props.hideDescription)\n</script>\n\n<template>\n\t<fieldset\n\t\t:class=\"[$style.formGroup, { [$style.formGroup_noGap]: noGap }]\"\n\t\t:aria-describedby=\"getDescriptionId()\">\n\t\t<legend :class=\"[$style.formGroup__label, { 'hidden-visually': hideLabel }]\">\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<slot name=\"label\">\n\t\t\t\t{{ label || '⚠️ Missing label' }}\n\t\t\t</slot>\n\t\t</legend>\n\t\t<div v-if=\"hasDescription()\" :id=\"descriptionId\" :class=\"[$style.formGroup__description, { 'hidden-visually': hideDescription }]\">\n\t\t\t<!-- @slot Custom description content -->\n\t\t\t<slot name=\"description\">\n\t\t\t\t{{ description }}\n\t\t\t</slot>\n\t\t</div>\n\t\t<div :class=\"[$style.formGroup__content, { [$style.formGroup__content_only]: hasContentOnly() }]\">\n\t\t\t<!-- @slot Content -->\n\t\t\t<slot />\n\t\t</div>\n\t</fieldset>\n</template>\n\n<style lang=\"scss\" module>\n.formGroup {\n\t--form-element-label-offset: calc(var(--border-radius-element) + var(--default-grid-baseline));\n\t--form-group-content-gap: calc(2 * var(--default-grid-baseline));\n\n\t&.formGroup_noGap {\n\t\t--form-group-content-gap: 0;\n\t}\n}\n\n.formGroup__label {\n\tpadding-inline: var(--form-element-label-offset);\n\tfont-size: var(--font-size);\n\tfont-weight: var(--font-weight-heading, bold);\n}\n\n.formGroup__description {\n\tpadding-inline: var(--form-element-label-offset);\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.formGroup__content {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: var(--form-group-content-gap);\n\tmargin-block-start: calc(2.5 * var(--default-grid-baseline));\n\n\t&.formGroup__content_only {\n\t\tmargin-block-start: 0;\n\t}\n}\n</style>\n\n<docs>\n### General\n\nLabelled group of form elements.\n\n```vue\n<template>\n\t<NcFormGroup label=\"Personal information\">\n\t\t<NcTextField label=\"First name\" />\n\t\t<NcTextField label=\"Last name\" />\n\t</NcFormGroup>\n</template>\n```\n\n### With description\n\n```vue\n<template>\n\t<NcFormGroup label=\"Personal information\" description=\"Your contact details\">\n\t\t<NcTextField label=\"First name\" />\n\t\t<NcTextField label=\"Last name\" />\n\t</NcFormGroup>\n</template>\n```\n\n### Hidden label/description\n\nYou can visually hide the label and/or the description.\\\nNote: you still must provide the label. Do not visually hide the missing label warning!\n\n```vue\n<template>\n\t<NcFormGroup\n\t\tlabel=\"Personal information\"\n\t\tdescription=\"Your contact details\"\n\t\thide-label\n\t\thide-description>\n\t\t<NcTextField label=\"First name\" />\n\t\t<NcTextField label=\"Last name\" />\n\t</NcFormGroup>\n</template>\n```\n</docs>\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAsCA,UAAM,QAAQ,SAAA;AAEd,UAAM,KAAK,iBAAiB,gBAAA,CAAiB;AAC7C,UAAM,gBAAgB,GAAG,EAAE;AAE3B,UAAM,iBAAiB,MAAM,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,MAAM;AAC5D,UAAM,mBAAmB,MAAM,eAAA,IAAmB,gBAAgB;AAClE,UAAM,iBAAiB,MAAM,MAAM,cAAc,CAAC,eAAA,KAAoB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require('../assets/NcFormGroup-
|
|
1
|
+
require('../assets/NcFormGroup-ChUa97BY.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const Vue = require("vue");
|
|
4
4
|
const createElementId = require("./createElementId-lalylSCf.cjs");
|
|
@@ -23,14 +23,14 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
|
23
23
|
return { __sfc: true, props, slots, id, descriptionId, hasDescription, getDescriptionId, hasContentOnly };
|
|
24
24
|
}
|
|
25
25
|
});
|
|
26
|
-
const formGroup = "
|
|
27
|
-
const formGroup_noGap = "
|
|
28
|
-
const formGroup__label = "
|
|
29
|
-
const formGroup__description = "
|
|
30
|
-
const formGroup__content = "
|
|
31
|
-
const formGroup__content_only = "
|
|
26
|
+
const formGroup = "_formGroup_yrK8o";
|
|
27
|
+
const formGroup_noGap = "_formGroup_noGap_-XHDf";
|
|
28
|
+
const formGroup__label = "_formGroup__label_-UA7A";
|
|
29
|
+
const formGroup__description = "_formGroup__description_uSxeO";
|
|
30
|
+
const formGroup__content = "_formGroup__content_Cy4eq";
|
|
31
|
+
const formGroup__content_only = "_formGroup__content_only_umUCR";
|
|
32
32
|
const style0 = {
|
|
33
|
-
"material-design-icon": "_material-design-
|
|
33
|
+
"material-design-icon": "_material-design-icon_qbAGk",
|
|
34
34
|
formGroup,
|
|
35
35
|
formGroup_noGap,
|
|
36
36
|
formGroup__label,
|
|
@@ -65,4 +65,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
65
65
|
);
|
|
66
66
|
const NcFormGroup = __component__.exports;
|
|
67
67
|
exports.NcFormGroup = NcFormGroup;
|
|
68
|
-
//# sourceMappingURL=NcFormGroup-
|
|
68
|
+
//# sourceMappingURL=NcFormGroup-wzUs2kfP.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcFormGroup-
|
|
1
|
+
{"version":3,"file":"NcFormGroup-wzUs2kfP.cjs","sources":["../../src/components/NcFormGroup/NcFormGroup.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<script setup lang=\"ts\">\nimport { useSlots } from 'vue'\nimport { createElementId } from '../../utils/createElementId.ts'\n\nconst props = withDefaults(defineProps<{\n\t/**\n\t * Group label #label slot can be used for custom label content\n\t */\n\tlabel?: string\n\t/**\n\t * Optional fieldset description. #description slot can be used for custom description content\n\t */\n\tdescription?: string\n\t/**\n\t * Hide the label visually but keep it accessible for screen readers\n\t */\n\thideLabel?: boolean\n\t/**\n\t * Hide the description visually but keep it accessible for screen readers\n\t */\n\thideDescription?: boolean\n\t/**\n\t * Disable default fieldset content gap between content elements\n\t */\n\tnoGap?: boolean\n}>(), {\n\tlabel: undefined,\n\tdescription: undefined,\n\thideLabel: false,\n\thideDescription: false,\n\tnoGap: false,\n})\n\nconst slots = useSlots()\n\nconst id = `nc-form-group-${createElementId()}`\nconst descriptionId = `${id}-description`\n\nconst hasDescription = () => !!props.description || !!slots.description\nconst getDescriptionId = () => hasDescription() ? descriptionId : undefined\nconst hasContentOnly = () => props.hideLabel && (!hasDescription() || props.hideDescription)\n</script>\n\n<template>\n\t<fieldset\n\t\t:class=\"[$style.formGroup, { [$style.formGroup_noGap]: noGap }]\"\n\t\t:aria-describedby=\"getDescriptionId()\">\n\t\t<legend :class=\"[$style.formGroup__label, { 'hidden-visually': hideLabel }]\">\n\t\t\t<!-- @slot Custom label content -->\n\t\t\t<slot name=\"label\">\n\t\t\t\t{{ label || '⚠️ Missing label' }}\n\t\t\t</slot>\n\t\t</legend>\n\t\t<div v-if=\"hasDescription()\" :id=\"descriptionId\" :class=\"[$style.formGroup__description, { 'hidden-visually': hideDescription }]\">\n\t\t\t<!-- @slot Custom description content -->\n\t\t\t<slot name=\"description\">\n\t\t\t\t{{ description }}\n\t\t\t</slot>\n\t\t</div>\n\t\t<div :class=\"[$style.formGroup__content, { [$style.formGroup__content_only]: hasContentOnly() }]\">\n\t\t\t<!-- @slot Content -->\n\t\t\t<slot />\n\t\t</div>\n\t</fieldset>\n</template>\n\n<style lang=\"scss\" module>\n.formGroup {\n\t--form-element-label-offset: calc(var(--border-radius-element) + var(--default-grid-baseline));\n\t--form-group-content-gap: calc(2 * var(--default-grid-baseline));\n\n\t&.formGroup_noGap {\n\t\t--form-group-content-gap: 0;\n\t}\n}\n\n.formGroup__label {\n\tpadding-inline: var(--form-element-label-offset);\n\tfont-size: var(--font-size);\n\tfont-weight: var(--font-weight-heading, bold);\n}\n\n.formGroup__description {\n\tpadding-inline: var(--form-element-label-offset);\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.formGroup__content {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: var(--form-group-content-gap);\n\tmargin-block-start: calc(2.5 * var(--default-grid-baseline));\n\n\t&.formGroup__content_only {\n\t\tmargin-block-start: 0;\n\t}\n}\n</style>\n\n<docs>\n### General\n\nLabelled group of form elements.\n\n```vue\n<template>\n\t<NcFormGroup label=\"Personal information\">\n\t\t<NcTextField label=\"First name\" />\n\t\t<NcTextField label=\"Last name\" />\n\t</NcFormGroup>\n</template>\n```\n\n### With description\n\n```vue\n<template>\n\t<NcFormGroup label=\"Personal information\" description=\"Your contact details\">\n\t\t<NcTextField label=\"First name\" />\n\t\t<NcTextField label=\"Last name\" />\n\t</NcFormGroup>\n</template>\n```\n\n### Hidden label/description\n\nYou can visually hide the label and/or the description.\\\nNote: you still must provide the label. Do not visually hide the missing label warning!\n\n```vue\n<template>\n\t<NcFormGroup\n\t\tlabel=\"Personal information\"\n\t\tdescription=\"Your contact details\"\n\t\thide-label\n\t\thide-description>\n\t\t<NcTextField label=\"First name\" />\n\t\t<NcTextField label=\"Last name\" />\n\t</NcFormGroup>\n</template>\n```\n</docs>\n"],"names":["useSlots","createElementId"],"mappings":";;;;;;;;;;;;;;;AAsCA,UAAM,QAAQA,IAAAA,SAAA;AAEd,UAAM,KAAK,iBAAiBC,gBAAAA,gBAAA,CAAiB;AAC7C,UAAM,gBAAgB,GAAG,EAAE;AAE3B,UAAM,iBAAiB,MAAM,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,MAAM;AAC5D,UAAM,mBAAmB,MAAM,eAAA,IAAmB,gBAAgB;AAClE,UAAM,iBAAiB,MAAM,MAAM,cAAc,CAAC,eAAA,KAAoB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../assets/NcHeaderButton-DI-1Gsph.css';
|
|
2
2
|
import { G as GenRandomId } from "./GenRandomId-F5ebeBB_.mjs";
|
|
3
|
-
import { N as NcButton } from "./NcButton-
|
|
3
|
+
import { N as NcButton } from "./NcButton-D6Swkr1k.mjs";
|
|
4
4
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
5
5
|
const _sfc_main = {
|
|
6
6
|
name: "NcHeaderButton",
|
|
@@ -61,4 +61,4 @@ const NcHeaderButton = __component__.exports;
|
|
|
61
61
|
export {
|
|
62
62
|
NcHeaderButton as N
|
|
63
63
|
};
|
|
64
|
-
//# sourceMappingURL=NcHeaderButton-
|
|
64
|
+
//# sourceMappingURL=NcHeaderButton-MEyDJghO.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcHeaderButton-
|
|
1
|
+
{"version":3,"file":"NcHeaderButton-MEyDJghO.mjs","sources":["../../src/components/NcHeaderButton/NcHeaderButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header,\nsimilar to the NcHeaderMenu but to be used when only a trigger button is needed, e.g. when opening a dialog.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderButton id=\"search-dialog\"\n\t\t\taria-label=\"Search\"\n\t\t\t@click=\"showDialog = true\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t</NcHeaderButton>\n\n\t\t<NcDialog name=\"Search\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showDialog\">\n\t\t\t<NcTextField label=\"Search for files, comments, contacts …\"\n\t\t\t\ttype=\"search\"\n\t\t\t\t:value.sync=\"query\" />\n\t\t\t<NcEmptyContent name=\"Search\"\n\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Magnify />\n\t\t\t\t</template>\n\t\t\t</NcEmptyContent>\n\t\t</NcDialog>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowDialog: false,\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-inline-end: 12px;\n}\n</style>\n```\n</docs>\n\n<template>\n\t<!-- We need a wrapper for server styles to apply -->\n\t<div :id=\"id\" class=\"header-menu\">\n\t\t<NcButton\n\t\t\tclass=\"header-menu__trigger\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:aria-describedby=\"descriptionId\"\n\t\t\tsize=\"large\"\n\t\t\tvariant=\"tertiary-no-background\"\n\t\t\t@click.prevent=\"$emit('click', $event)\">\n\t\t\t<template #icon>\n\t\t\t\t<!-- @slot Icon trigger slot. Make sure the svg path\n\t\t\t\tis at least 16px. Usually mdi icon works at 20px -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</template>\n\t\t</NcButton>\n\n\t\t<span\n\t\t\tv-if=\"description\"\n\t\t\t:id=\"descriptionId\"\n\t\t\tclass=\"header-menu__description hidden-visually\">\n\t\t\t{{ description }}\n\t\t</span>\n\t</div>\n</template>\n\n<script>\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport NcButton from '../NcButton/index.js'\n\nexport default {\n\tname: 'NcHeaderButton',\n\n\tcomponents: {\n\t\tNcButton,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Unique id for this menu\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * `aria-label` attribute of the button\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * Additional visually hidden description text for the button\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tdescriptionId: GenRandomId(),\n\t\t}\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@use '../NcHeaderMenu/header-menu__trigger.scss';\n</style>\n"],"names":[],"mappings":";;;AA6FA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,eAAA,YAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
require('../assets/NcHeaderButton-DI-1Gsph.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const GenRandomId = require("./GenRandomId-D7iOvpZS.cjs");
|
|
4
|
-
const NcButton = require("./NcButton-
|
|
4
|
+
const NcButton = require("./NcButton-B3UxfMyE.cjs");
|
|
5
5
|
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
6
6
|
const _sfc_main = {
|
|
7
7
|
name: "NcHeaderButton",
|
|
@@ -60,4 +60,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
60
60
|
);
|
|
61
61
|
const NcHeaderButton = __component__.exports;
|
|
62
62
|
exports.NcHeaderButton = NcHeaderButton;
|
|
63
|
-
//# sourceMappingURL=NcHeaderButton-
|
|
63
|
+
//# sourceMappingURL=NcHeaderButton-SRHcPWsp.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcHeaderButton-
|
|
1
|
+
{"version":3,"file":"NcHeaderButton-SRHcPWsp.cjs","sources":["../../src/components/NcHeaderButton/NcHeaderButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header,\nsimilar to the NcHeaderMenu but to be used when only a trigger button is needed, e.g. when opening a dialog.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderButton id=\"search-dialog\"\n\t\t\taria-label=\"Search\"\n\t\t\t@click=\"showDialog = true\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t</NcHeaderButton>\n\n\t\t<NcDialog name=\"Search\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showDialog\">\n\t\t\t<NcTextField label=\"Search for files, comments, contacts …\"\n\t\t\t\ttype=\"search\"\n\t\t\t\t:value.sync=\"query\" />\n\t\t\t<NcEmptyContent name=\"Search\"\n\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Magnify />\n\t\t\t\t</template>\n\t\t\t</NcEmptyContent>\n\t\t</NcDialog>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowDialog: false,\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-inline-end: 12px;\n}\n</style>\n```\n</docs>\n\n<template>\n\t<!-- We need a wrapper for server styles to apply -->\n\t<div :id=\"id\" class=\"header-menu\">\n\t\t<NcButton\n\t\t\tclass=\"header-menu__trigger\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:aria-describedby=\"descriptionId\"\n\t\t\tsize=\"large\"\n\t\t\tvariant=\"tertiary-no-background\"\n\t\t\t@click.prevent=\"$emit('click', $event)\">\n\t\t\t<template #icon>\n\t\t\t\t<!-- @slot Icon trigger slot. Make sure the svg path\n\t\t\t\tis at least 16px. Usually mdi icon works at 20px -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</template>\n\t\t</NcButton>\n\n\t\t<span\n\t\t\tv-if=\"description\"\n\t\t\t:id=\"descriptionId\"\n\t\t\tclass=\"header-menu__description hidden-visually\">\n\t\t\t{{ description }}\n\t\t</span>\n\t</div>\n</template>\n\n<script>\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport NcButton from '../NcButton/index.js'\n\nexport default {\n\tname: 'NcHeaderButton',\n\n\tcomponents: {\n\t\tNcButton,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Unique id for this menu\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * `aria-label` attribute of the button\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * Additional visually hidden description text for the button\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tdescriptionId: GenRandomId(),\n\t\t}\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@use '../NcHeaderMenu/header-menu__trigger.scss';\n</style>\n"],"names":["NcButton","GenRandomId"],"mappings":";;;;AA6FA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAA,SAAAA;AAAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,eAAAC,YAAAA,YAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;"}
|