@nextcloud/vue 8.33.0 → 8.35.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 +55 -0
- package/README.md +2 -2
- package/dist/Components/NcActionButton.cjs +1 -1
- package/dist/Components/NcActionButton.mjs +1 -1
- package/dist/Components/NcActionButtonGroup.cjs +1 -1
- package/dist/Components/NcActionButtonGroup.mjs +1 -1
- package/dist/Components/NcActionInput.cjs +1 -1
- package/dist/Components/NcActionInput.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 +2 -2
- package/dist/Components/NcAppSettingsSectionShortcuts.mjs +1 -1
- package/dist/Components/NcAppSettingsShortcutsSection.cjs +4 -0
- package/dist/Components/NcAppSettingsShortcutsSection.cjs.map +1 -0
- package/dist/Components/NcAppSettingsShortcutsSection.mjs +5 -0
- package/dist/Components/NcAppSettingsShortcutsSection.mjs.map +1 -0
- 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/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/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 +7 -7
- package/dist/Components/NcChip.cjs.map +1 -1
- package/dist/Components/NcChip.mjs +7 -7
- package/dist/Components/NcChip.mjs.map +1 -1
- 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 +5 -5
- package/dist/Components/NcDateTimePicker.mjs +5 -5
- 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/NcFormBox.cjs +4 -0
- package/dist/Components/NcFormBox.cjs.map +1 -0
- package/dist/Components/NcFormBox.mjs +5 -0
- package/dist/Components/NcFormBox.mjs.map +1 -0
- package/dist/Components/NcFormBoxButton.cjs +4 -0
- package/dist/Components/NcFormBoxButton.cjs.map +1 -0
- package/dist/Components/NcFormBoxButton.mjs +5 -0
- package/dist/Components/NcFormBoxButton.mjs.map +1 -0
- package/dist/Components/NcFormBoxCopyButton.cjs +4 -0
- package/dist/Components/NcFormBoxCopyButton.cjs.map +1 -0
- package/dist/Components/NcFormBoxCopyButton.mjs +5 -0
- package/dist/Components/NcFormBoxCopyButton.mjs.map +1 -0
- package/dist/Components/NcFormBoxSwitch.cjs +4 -0
- package/dist/Components/NcFormBoxSwitch.cjs.map +1 -0
- package/dist/Components/NcFormBoxSwitch.mjs +5 -0
- package/dist/Components/NcFormBoxSwitch.mjs.map +1 -0
- package/dist/Components/NcFormGroup.cjs +4 -0
- package/dist/Components/NcFormGroup.cjs.map +1 -0
- package/dist/Components/NcFormGroup.mjs +5 -0
- package/dist/Components/NcFormGroup.mjs.map +1 -0
- 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/NcIconSvgWrapper.cjs +1 -1
- package/dist/Components/NcIconSvgWrapper.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 +7 -7
- package/dist/Components/NcModal.mjs +7 -7
- 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/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 +2 -2
- package/dist/Components/NcRichText.mjs +3 -3
- 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/NcSettingsInputText.cjs +1 -1
- package/dist/Components/NcSettingsInputText.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/Components/NcUserStatusIcon.cjs +1 -1
- package/dist/Components/NcUserStatusIcon.mjs +1 -1
- package/dist/Composables/useFormatDateTime.cjs +1 -1
- package/dist/Composables/useFormatDateTime.mjs +1 -1
- package/dist/Composables/useHotKey.cjs +1 -1
- package/dist/Composables/useHotKey.cjs.map +1 -1
- package/dist/Composables/useHotKey.mjs +1 -1
- package/dist/Composables/useHotKey.mjs.map +1 -1
- package/dist/Functions/reference.cjs +1 -1
- package/dist/Functions/reference.mjs +1 -1
- package/dist/Functions/usernameToColor.cjs +1 -1
- package/dist/Functions/usernameToColor.mjs +1 -1
- package/dist/assets/{NcActions-B4-9qwLn.css → NcActions-CVw1SmBu.css} +11 -11
- package/dist/assets/{NcAppContent-Ri_iNfn5.css → NcAppContent-CY_qJiOL.css} +19 -19
- package/dist/assets/{NcAppNavigation-Bg4Oe7WC.css → NcAppNavigation-Dbpqdigp.css} +12 -12
- package/dist/assets/{NcAppNavigationItem-DSL2nLRf.css → NcAppNavigationItem-De04deJW.css} +36 -36
- package/dist/assets/{NcAppNavigationSearch-o97SOfOb.css → NcAppNavigationSearch-DWhTZbjb.css} +6 -6
- package/dist/assets/{NcAppSettingsDialog-2axspyf-.css → NcAppSettingsDialog-p8V4OFR1.css} +39 -10
- package/dist/assets/NcAppSettingsSection-Yg4NYCih.css +46 -0
- package/dist/assets/{NcAppSidebar-Bd2cj1W-.css → NcAppSidebar-DujbJ9sN.css} +44 -44
- package/dist/assets/{NcAvatar-Cm4kVIfS.css → NcAvatar-CK9ipsjF.css} +24 -24
- package/dist/assets/{NcButton-uQUvp7DS.css → NcButton-n-KI8Bqb.css} +46 -46
- package/dist/assets/{NcChip-ByvuZS2-.css → NcChip-DLfUzq07.css} +12 -12
- package/dist/assets/{NcDashboardWidget-DzJMoJ_B.css → NcDashboardWidget-CodY3evn.css} +12 -12
- package/dist/assets/{NcDateTimePicker-BmMuUpwr.css → NcDateTimePicker-DzPH7x0i.css} +8 -8
- package/dist/assets/NcFormBox-D-kcijXp.css +54 -0
- package/dist/assets/{NcAppSettingsSection-CLSVNQzv.css → NcFormBoxButton-C6EvdLK4.css} +13 -11
- package/dist/assets/NcFormBoxItem-BfXKp9xJ.css +88 -0
- package/dist/assets/NcFormBoxSwitch-BmyNQCbA.css +37 -0
- package/dist/assets/NcFormGroup-BrD0Scm7.css +43 -0
- package/dist/assets/{NcHotkey-QklVKSyr.css → NcHotkey-4yi1Hobg.css} +10 -9
- package/dist/assets/NcHotkeyList-gAZN0WIu.css +8 -0
- package/dist/assets/{NcIconSvgWrapper-DJQ2Kuip.css → NcIconSvgWrapper-Cm1Dmlij.css} +7 -7
- package/dist/assets/{NcInputField-CtUAgq1i.css → NcInputField-DDJ6W_1o.css} +84 -63
- package/dist/assets/{NcListItem-rxOwDYE-.css → NcListItem-BX2N-9Dt.css} +44 -44
- package/dist/assets/{NcListItemIcon-Co3jVZZ8.css → NcListItemIcon-BDyiLlk2.css} +13 -13
- package/dist/assets/{NcNoteCard-Dz5-u2BY.css → NcNoteCard-CwNXZ4vV.css} +12 -12
- package/dist/assets/{NcPasswordField-mhXQk8aT.css → NcPasswordField-CiN_phAQ.css} +2 -2
- package/dist/assets/NcRadioGroup-1zpSX8V5.css +21 -0
- package/dist/assets/{NcRadioGroupButton-qxDfssOp.css → NcRadioGroupButton-DRZ1_-yY.css} +11 -19
- package/dist/assets/{NcRichContenteditable-CO5ziuZO.css → NcRichContenteditable-BjQ4qHUO.css} +11 -11
- package/dist/assets/{NcRichText-BpXupu1n.css → NcRichText-C72XMOoz.css} +109 -86
- package/dist/assets/{NcSelect-B1pyRV6j.css → NcSelect-z8dCuG3q.css} +53 -6
- package/dist/assets/NcTextArea-Tr_3gutt.css +156 -0
- package/dist/chunks/{NcActionButton-DSq_luox.cjs → NcActionButton-BS9Mv3XD.cjs} +3 -3
- package/dist/chunks/{NcActionButton-DSq_luox.cjs.map → NcActionButton-BS9Mv3XD.cjs.map} +1 -1
- package/dist/chunks/{NcActionButton-CD1Z-o2Y.mjs → NcActionButton-CECxOkhK.mjs} +3 -3
- package/dist/chunks/{NcActionButton-CD1Z-o2Y.mjs.map → NcActionButton-CECxOkhK.mjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-DKVCsZhH.cjs → NcActionButtonGroup-CbKrDPie.cjs} +2 -2
- package/dist/chunks/{NcActionButtonGroup-DKVCsZhH.cjs.map → NcActionButtonGroup-CbKrDPie.cjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-Bd-SOAHU.mjs → NcActionButtonGroup-D_ldp8Lw.mjs} +2 -2
- package/dist/chunks/{NcActionButtonGroup-Bd-SOAHU.mjs.map → NcActionButtonGroup-D_ldp8Lw.mjs.map} +1 -1
- package/dist/chunks/{NcActionInput-D4MLI-0P.mjs → NcActionInput-CB9jcc0_.mjs} +5 -5
- package/dist/chunks/{NcActionInput-D4MLI-0P.mjs.map → NcActionInput-CB9jcc0_.mjs.map} +1 -1
- package/dist/chunks/{NcActionInput-BMUreHhp.cjs → NcActionInput-Cd7bhV5-.cjs} +5 -5
- package/dist/chunks/{NcActionInput-BMUreHhp.cjs.map → NcActionInput-Cd7bhV5-.cjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-5mNFl7Jm.mjs → NcActionTextEditable-CNEW3Fav.mjs} +3 -3
- package/dist/chunks/{NcActionTextEditable-5mNFl7Jm.mjs.map → NcActionTextEditable-CNEW3Fav.mjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-C8B1qqqe.cjs → NcActionTextEditable-D-peY-RA.cjs} +3 -3
- package/dist/chunks/{NcActionTextEditable-C8B1qqqe.cjs.map → NcActionTextEditable-D-peY-RA.cjs.map} +1 -1
- package/dist/chunks/{NcActions-BvFVkIzX.mjs → NcActions-C-CwY6XQ.mjs} +44 -33
- package/dist/chunks/NcActions-C-CwY6XQ.mjs.map +1 -0
- package/dist/chunks/{NcActions-CF9VxHHD.cjs → NcActions-S-0Ec5lH.cjs} +43 -32
- package/dist/chunks/NcActions-S-0Ec5lH.cjs.map +1 -0
- package/dist/chunks/{NcAppContent-C7hwN-sU.mjs → NcAppContent-BvgsOP0K.mjs} +8 -11
- package/dist/chunks/NcAppContent-BvgsOP0K.mjs.map +1 -0
- package/dist/chunks/{NcAppContent-BSyhjn2J.cjs → NcAppContent-CMntmSFj.cjs} +8 -11
- package/dist/chunks/NcAppContent-CMntmSFj.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-DApCpI_F.cjs → NcAppNavigation-BcFTYsgM.cjs} +4 -4
- package/dist/chunks/NcAppNavigation-BcFTYsgM.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-B2cKVKBH.mjs → NcAppNavigation-DgekTp_z.mjs} +4 -4
- package/dist/chunks/NcAppNavigation-DgekTp_z.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationCaption-BOHmVyQb.cjs → NcAppNavigationCaption-1-KiRt-N.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationCaption-BOHmVyQb.cjs.map → NcAppNavigationCaption-1-KiRt-N.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-bTauZtcw.mjs → NcAppNavigationCaption-D7mH8K7B.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationCaption-bTauZtcw.mjs.map → NcAppNavigationCaption-D7mH8K7B.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-geCwhCsd.mjs → NcAppNavigationItem-B6YKr1n2.mjs} +9 -9
- package/dist/chunks/NcAppNavigationItem-B6YKr1n2.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationItem-DbtR6u7Y.cjs → NcAppNavigationItem-CkAgsU6p.cjs} +9 -9
- package/dist/chunks/NcAppNavigationItem-CkAgsU6p.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationNew-BYvFykgl.cjs → NcAppNavigationNew-ByTNXL-2.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationNew-BYvFykgl.cjs.map → NcAppNavigationNew-ByTNXL-2.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNew-BHzvRlVc.mjs → NcAppNavigationNew-t3Rkrwjh.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationNew-BHzvRlVc.mjs.map → NcAppNavigationNew-t3Rkrwjh.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-Yy56yPrn.mjs → NcAppNavigationNewItem-C96AER1b.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationNewItem-Yy56yPrn.mjs.map → NcAppNavigationNewItem-C96AER1b.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-Dqnwa8Gl.cjs → NcAppNavigationNewItem-D7dxbu-1.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationNewItem-Dqnwa8Gl.cjs.map → NcAppNavigationNewItem-D7dxbu-1.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-pMlFjm9w.cjs → NcAppNavigationSearch-C9dLgU2t.cjs} +6 -6
- package/dist/chunks/NcAppNavigationSearch-C9dLgU2t.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationSearch-WfL4IPD8.mjs → NcAppNavigationSearch-CuqE2exX.mjs} +6 -6
- package/dist/chunks/NcAppNavigationSearch-CuqE2exX.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationSettings-BhK7vlfP.mjs → NcAppNavigationSettings-Ba8OcJxl.mjs} +6 -6
- package/dist/chunks/{NcAppNavigationSettings-BhK7vlfP.mjs.map → NcAppNavigationSettings-Ba8OcJxl.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-C6qjJ3hF.cjs → NcAppNavigationSettings-C7d5dhkD.cjs} +6 -6
- package/dist/chunks/{NcAppNavigationSettings-C6qjJ3hF.cjs.map → NcAppNavigationSettings-C7d5dhkD.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-DlnxjlcH.mjs → NcAppNavigationToggle-B0N05AxP.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationToggle-DlnxjlcH.mjs.map → NcAppNavigationToggle-B0N05AxP.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-8lSuagjd.cjs → NcAppNavigationToggle-Ck-d5mHe.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationToggle-8lSuagjd.cjs.map → NcAppNavigationToggle-Ck-d5mHe.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-8YaW7ud3.mjs → NcAppSettingsDialog-PRGGDKCy.mjs} +55 -14
- package/dist/chunks/NcAppSettingsDialog-PRGGDKCy.mjs.map +1 -0
- package/dist/chunks/{NcAppSettingsDialog--RlMIfbo.cjs → NcAppSettingsDialog-fOCnfyD-.cjs} +53 -12
- package/dist/chunks/NcAppSettingsDialog-fOCnfyD-.cjs.map +1 -0
- package/dist/chunks/{NcAppSettingsSection-DVrBPuLD.mjs → NcAppSettingsSection-Cq1VIzMR.mjs} +9 -7
- package/dist/chunks/NcAppSettingsSection-Cq1VIzMR.mjs.map +1 -0
- package/dist/chunks/{NcAppSettingsSection-OPWPqi2Y.cjs → NcAppSettingsSection-Q5PB51ht.cjs} +8 -6
- package/dist/chunks/NcAppSettingsSection-Q5PB51ht.cjs.map +1 -0
- package/dist/chunks/{NcAppSettingsSectionShortcuts-CdP-4ktS.mjs → NcAppSettingsShortcutsSection-BGMDhIXI.mjs} +7 -7
- package/dist/chunks/NcAppSettingsShortcutsSection-BGMDhIXI.mjs.map +1 -0
- package/dist/chunks/{NcAppSettingsSectionShortcuts-CBYgfYGz.cjs → NcAppSettingsShortcutsSection-DI5YBdYf.cjs} +7 -7
- package/dist/chunks/NcAppSettingsShortcutsSection-DI5YBdYf.cjs.map +1 -0
- package/dist/chunks/{NcAppSidebar-f7tuofzM.mjs → NcAppSidebar-1Q4AznUI.mjs} +7 -7
- package/dist/chunks/NcAppSidebar-1Q4AznUI.mjs.map +1 -0
- package/dist/chunks/{NcAppSidebar-DLb6ALHL.cjs → NcAppSidebar-BA8rmpOk.cjs} +7 -7
- package/dist/chunks/NcAppSidebar-BA8rmpOk.cjs.map +1 -0
- package/dist/chunks/{NcAssistantButton-enexPvoC.mjs → NcAssistantButton-BPXX2mz6.mjs} +5 -5
- package/dist/chunks/{NcAssistantButton-enexPvoC.mjs.map → NcAssistantButton-BPXX2mz6.mjs.map} +1 -1
- package/dist/chunks/{NcAssistantButton-BMzPE7WA.cjs → NcAssistantButton-CAJQBxgk.cjs} +5 -5
- package/dist/chunks/{NcAssistantButton-BMzPE7WA.cjs.map → NcAssistantButton-CAJQBxgk.cjs.map} +1 -1
- package/dist/chunks/{NcAssistantIcon-XwQFzBgA.mjs → NcAssistantIcon-CKWZRzXg.mjs} +2 -2
- package/dist/chunks/{NcAssistantIcon-XwQFzBgA.mjs.map → NcAssistantIcon-CKWZRzXg.mjs.map} +1 -1
- package/dist/chunks/{NcAssistantIcon-DfVd2zWt.cjs → NcAssistantIcon-jHDGZ_Bd.cjs} +2 -2
- package/dist/chunks/{NcAssistantIcon-DfVd2zWt.cjs.map → NcAssistantIcon-jHDGZ_Bd.cjs.map} +1 -1
- package/dist/chunks/{NcAvatar-DwUmx6Fg.mjs → NcAvatar-4h0wo9uv.mjs} +28 -24
- package/dist/chunks/NcAvatar-4h0wo9uv.mjs.map +1 -0
- package/dist/chunks/{NcAvatar-BwioPrbY.cjs → NcAvatar-BrDByW-X.cjs} +28 -24
- package/dist/chunks/NcAvatar-BrDByW-X.cjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-B-zWjBNp.cjs → NcBreadcrumb-BUsCwbnF.cjs} +3 -3
- package/dist/chunks/{NcBreadcrumb-B-zWjBNp.cjs.map → NcBreadcrumb-BUsCwbnF.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumb-ljdZbX7p.mjs → NcBreadcrumb-CcKJsew_.mjs} +3 -3
- package/dist/chunks/{NcBreadcrumb-ljdZbX7p.mjs.map → NcBreadcrumb-CcKJsew_.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-B6tPEu9b.cjs → NcBreadcrumbs-W9wcvU4n.cjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-B6tPEu9b.cjs.map → NcBreadcrumbs-W9wcvU4n.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-D2DtX3XC.mjs → NcBreadcrumbs-bDlnNcz1.mjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-D2DtX3XC.mjs.map → NcBreadcrumbs-bDlnNcz1.mjs.map} +1 -1
- package/dist/chunks/{NcButton-CJBZrdiL.cjs → NcButton-CuFElrFD.cjs} +3 -3
- package/dist/chunks/NcButton-CuFElrFD.cjs.map +1 -0
- package/dist/chunks/{NcButton-DUZTtFhr.mjs → NcButton-Dz2O6cSU.mjs} +3 -3
- package/dist/chunks/NcButton-Dz2O6cSU.mjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-wSD3hWxs.cjs → NcCheckboxRadioSwitch-CG2BbMsv.cjs} +2 -2
- package/dist/chunks/{NcCheckboxRadioSwitch-wSD3hWxs.cjs.map → NcCheckboxRadioSwitch-CG2BbMsv.cjs.map} +1 -1
- package/dist/chunks/{NcCheckboxRadioSwitch-NPJuwzqS.mjs → NcCheckboxRadioSwitch-CX3HXCEk.mjs} +2 -2
- package/dist/chunks/{NcCheckboxRadioSwitch-NPJuwzqS.mjs.map → NcCheckboxRadioSwitch-CX3HXCEk.mjs.map} +1 -1
- package/dist/chunks/{NcCollectionList-D85QdobI.mjs → NcCollectionList-CejmntlL.mjs} +7 -7
- package/dist/chunks/{NcCollectionList-D85QdobI.mjs.map → NcCollectionList-CejmntlL.mjs.map} +1 -1
- package/dist/chunks/{NcCollectionList-Br6V_EiM.cjs → NcCollectionList-DSk0m1Ap.cjs} +7 -7
- package/dist/chunks/{NcCollectionList-Br6V_EiM.cjs.map → NcCollectionList-DSk0m1Ap.cjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-BoS26yac.mjs → NcColorPicker-BERjJHgc.mjs} +6 -6
- package/dist/chunks/{NcColorPicker-BoS26yac.mjs.map → NcColorPicker-BERjJHgc.mjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-Dg3d5_aQ.cjs → NcColorPicker-BPVlMiBg.cjs} +6 -6
- package/dist/chunks/{NcColorPicker-Dg3d5_aQ.cjs.map → NcColorPicker-BPVlMiBg.cjs.map} +1 -1
- package/dist/chunks/{NcContent-BbPae-OV.cjs → NcContent-DWLtsXHf.cjs} +5 -5
- package/dist/chunks/{NcContent-BbPae-OV.cjs.map → NcContent-DWLtsXHf.cjs.map} +1 -1
- package/dist/chunks/{NcContent-D8OFKv52.mjs → NcContent-yW5m-Mj5.mjs} +5 -5
- package/dist/chunks/{NcContent-D8OFKv52.mjs.map → NcContent-yW5m-Mj5.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-SSlGHcII.mjs → NcDashboardWidget-Bk6i__T-.mjs} +7 -7
- package/dist/chunks/NcDashboardWidget-Bk6i__T-.mjs.map +1 -0
- package/dist/chunks/{NcDashboardWidget-mEPmvuR0.cjs → NcDashboardWidget-Dc0fUaGv.cjs} +7 -7
- package/dist/chunks/NcDashboardWidget-Dc0fUaGv.cjs.map +1 -0
- package/dist/chunks/{NcDashboardWidgetItem-BqlNJI6a.mjs → NcDashboardWidgetItem--NyYqf1-.mjs} +4 -4
- package/dist/chunks/{NcDashboardWidgetItem-BqlNJI6a.mjs.map → NcDashboardWidgetItem--NyYqf1-.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-C7AmqxH4.cjs → NcDashboardWidgetItem-DiSoDid-.cjs} +4 -4
- package/dist/chunks/{NcDashboardWidgetItem-C7AmqxH4.cjs.map → NcDashboardWidgetItem-DiSoDid-.cjs.map} +1 -1
- package/dist/chunks/{NcDialog-Bg0hY6TP.mjs → NcDialog-8ipQ69_t.mjs} +2 -2
- package/dist/chunks/{NcDialog-Bg0hY6TP.mjs.map → NcDialog-8ipQ69_t.mjs.map} +1 -1
- package/dist/chunks/{NcDialog-D020rlVy.cjs → NcDialog-WN4eYniZ.cjs} +2 -2
- package/dist/chunks/{NcDialog-D020rlVy.cjs.map → NcDialog-WN4eYniZ.cjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-8JhFaC5X.cjs → NcDialogButton-BFV6qd7F.cjs} +5 -5
- package/dist/chunks/{NcDialogButton-8JhFaC5X.cjs.map → NcDialogButton-BFV6qd7F.cjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-DSrC6lFd.mjs → NcDialogButton-CSC8PAz-.mjs} +5 -5
- package/dist/chunks/{NcDialogButton-DSrC6lFd.mjs.map → NcDialogButton-CSC8PAz-.mjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-DwXhWYHY.cjs → NcEmojiPicker-BENbptkx.cjs} +7 -7
- package/dist/chunks/{NcEmojiPicker-DwXhWYHY.cjs.map → NcEmojiPicker-BENbptkx.cjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-CAphjgaf.mjs → NcEmojiPicker-DlizXqla.mjs} +7 -7
- package/dist/chunks/{NcEmojiPicker-CAphjgaf.mjs.map → NcEmojiPicker-DlizXqla.mjs.map} +1 -1
- package/dist/chunks/NcFormBox-DL435pbV.mjs +56 -0
- package/dist/chunks/NcFormBox-DL435pbV.mjs.map +1 -0
- package/dist/chunks/NcFormBox-_JqkU_xn.cjs +55 -0
- package/dist/chunks/NcFormBox-_JqkU_xn.cjs.map +1 -0
- package/dist/chunks/NcFormBoxButton-B4STyrn7.cjs +137 -0
- package/dist/chunks/NcFormBoxButton-B4STyrn7.cjs.map +1 -0
- package/dist/chunks/NcFormBoxButton-DR_OMvmB.mjs +138 -0
- package/dist/chunks/NcFormBoxButton-DR_OMvmB.mjs.map +1 -0
- package/dist/chunks/NcFormBoxCopyButton-BQt4cqDo.mjs +47 -0
- package/dist/chunks/NcFormBoxCopyButton-BQt4cqDo.mjs.map +1 -0
- package/dist/chunks/NcFormBoxCopyButton-CthOiHuc.cjs +46 -0
- package/dist/chunks/NcFormBoxCopyButton-CthOiHuc.cjs.map +1 -0
- package/dist/chunks/NcFormBoxItem-BcNIAmpc.mjs +87 -0
- package/dist/chunks/NcFormBoxItem-BcNIAmpc.mjs.map +1 -0
- package/dist/chunks/NcFormBoxItem-BfXaRfkc.cjs +86 -0
- package/dist/chunks/NcFormBoxItem-BfXaRfkc.cjs.map +1 -0
- package/dist/chunks/NcFormBoxSwitch-BUBD5jli.cjs +96 -0
- package/dist/chunks/NcFormBoxSwitch-BUBD5jli.cjs.map +1 -0
- package/dist/chunks/NcFormBoxSwitch-BqbGsapa.mjs +97 -0
- package/dist/chunks/NcFormBoxSwitch-BqbGsapa.mjs.map +1 -0
- package/dist/chunks/NcFormGroup-BfsPo9aC.mjs +69 -0
- package/dist/chunks/NcFormGroup-BfsPo9aC.mjs.map +1 -0
- package/dist/chunks/NcFormGroup-CBMl_9_J.cjs +68 -0
- package/dist/chunks/NcFormGroup-CBMl_9_J.cjs.map +1 -0
- package/dist/chunks/{NcHeaderButton-6kuTEKbj.cjs → NcHeaderButton-CpWQbzfF.cjs} +2 -2
- package/dist/chunks/{NcHeaderButton-6kuTEKbj.cjs.map → NcHeaderButton-CpWQbzfF.cjs.map} +1 -1
- package/dist/chunks/{NcHeaderButton-TgPjfPtk.mjs → NcHeaderButton-Dvo1_Bwc.mjs} +2 -2
- package/dist/chunks/{NcHeaderButton-TgPjfPtk.mjs.map → NcHeaderButton-Dvo1_Bwc.mjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-CwjH_j0c.cjs → NcHeaderMenu-Cmu-m_aM.cjs} +2 -2
- package/dist/chunks/{NcHeaderMenu-CwjH_j0c.cjs.map → NcHeaderMenu-Cmu-m_aM.cjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-Hk8OTuma.mjs → NcHeaderMenu-Cuh8ay0F.mjs} +2 -2
- package/dist/chunks/{NcHeaderMenu-Hk8OTuma.mjs.map → NcHeaderMenu-Cuh8ay0F.mjs.map} +1 -1
- package/dist/chunks/{NcHotkey-CUPH5u09.cjs → NcHotkey-CuAapY_f.cjs} +7 -7
- package/dist/chunks/{NcHotkey-CUPH5u09.cjs.map → NcHotkey-CuAapY_f.cjs.map} +1 -1
- package/dist/chunks/{NcHotkey-BVMf1V89.mjs → NcHotkey-DcpG5Pla.mjs} +7 -7
- package/dist/chunks/{NcHotkey-BVMf1V89.mjs.map → NcHotkey-DcpG5Pla.mjs.map} +1 -1
- package/dist/chunks/{NcHotkeyList-jfSroQAQ.mjs → NcHotkeyList-CV_FJXF8.mjs} +5 -5
- package/dist/chunks/NcHotkeyList-CV_FJXF8.mjs.map +1 -0
- package/dist/chunks/{NcHotkeyList-CUjp1-hr.cjs → NcHotkeyList-CyJKMulK.cjs} +5 -5
- package/dist/chunks/NcHotkeyList-CyJKMulK.cjs.map +1 -0
- package/dist/chunks/{NcIconSvgWrapper-D-aKMbf3.cjs → NcIconSvgWrapper-Bbl4kXZI.cjs} +4 -4
- package/dist/chunks/NcIconSvgWrapper-Bbl4kXZI.cjs.map +1 -0
- package/dist/chunks/{NcIconSvgWrapper-BreCg8pX.mjs → NcIconSvgWrapper-Bui9PhAS.mjs} +4 -4
- package/dist/chunks/NcIconSvgWrapper-Bui9PhAS.mjs.map +1 -0
- package/dist/chunks/{NcInputConfirmCancel-XPlRewAN.mjs → NcInputConfirmCancel-D7omQqvB.mjs} +3 -3
- package/dist/chunks/{NcInputConfirmCancel-XPlRewAN.mjs.map → NcInputConfirmCancel-D7omQqvB.mjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-Bk_FQ5aA.cjs → NcInputConfirmCancel-lLiyPQvo.cjs} +3 -3
- package/dist/chunks/{NcInputConfirmCancel-Bk_FQ5aA.cjs.map → NcInputConfirmCancel-lLiyPQvo.cjs.map} +1 -1
- package/dist/chunks/{NcInputField-DUtDY_1I.mjs → NcInputField-CZRuRX_c.mjs} +4 -4
- package/dist/chunks/NcInputField-CZRuRX_c.mjs.map +1 -0
- package/dist/chunks/{NcInputField-DAllLk3X.cjs → NcInputField-Dyvi0lw3.cjs} +4 -4
- package/dist/chunks/NcInputField-Dyvi0lw3.cjs.map +1 -0
- package/dist/chunks/{NcKbd-BdW5UbhW.mjs → NcKbd-ChdGXvZR.mjs} +2 -2
- package/dist/chunks/{NcKbd-BdW5UbhW.mjs.map → NcKbd-ChdGXvZR.mjs.map} +1 -1
- package/dist/chunks/{NcKbd-CVBh8nyU.cjs → NcKbd-CyyEm6BD.cjs} +2 -2
- package/dist/chunks/{NcKbd-CVBh8nyU.cjs.map → NcKbd-CyyEm6BD.cjs.map} +1 -1
- package/dist/chunks/{NcListItem-D3HiK7ra.cjs → NcListItem-DB6prfmf.cjs} +6 -6
- package/dist/chunks/NcListItem-DB6prfmf.cjs.map +1 -0
- package/dist/chunks/{NcListItem-YVemqwZ_.mjs → NcListItem-DP0kl2g5.mjs} +6 -6
- package/dist/chunks/NcListItem-DP0kl2g5.mjs.map +1 -0
- package/dist/chunks/{NcListItemIcon-DL1VwHvL.cjs → NcListItemIcon-BM5iJwye.cjs} +5 -5
- package/dist/chunks/NcListItemIcon-BM5iJwye.cjs.map +1 -0
- package/dist/chunks/{NcListItemIcon-BKwmcXnO.mjs → NcListItemIcon-D41xabRp.mjs} +5 -5
- package/dist/chunks/NcListItemIcon-D41xabRp.mjs.map +1 -0
- package/dist/chunks/{NcPasswordField-BeEYmL5N.cjs → NcPasswordField-Cq8yg7NE.cjs} +8 -8
- package/dist/chunks/{NcPasswordField-CujpFQHq.mjs.map → NcPasswordField-Cq8yg7NE.cjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-CujpFQHq.mjs → NcPasswordField-D2xXHnvI.mjs} +8 -8
- package/dist/chunks/{NcPasswordField-BeEYmL5N.cjs.map → NcPasswordField-D2xXHnvI.mjs.map} +1 -1
- package/dist/chunks/{NcRadioGroup-VKZJ0Vnh.mjs → NcRadioGroup-D0rC63G8.mjs} +10 -19
- package/dist/chunks/NcRadioGroup-D0rC63G8.mjs.map +1 -0
- package/dist/chunks/{NcRadioGroup-BZ-humrK.cjs → NcRadioGroup-D59En1O3.cjs} +10 -19
- package/dist/chunks/NcRadioGroup-D59En1O3.cjs.map +1 -0
- package/dist/chunks/{NcRadioGroupButton-CD4tkF_s.mjs → NcRadioGroupButton-3Pu4Iqdf.mjs} +11 -9
- package/dist/chunks/NcRadioGroupButton-3Pu4Iqdf.mjs.map +1 -0
- package/dist/chunks/{NcRadioGroupButton-DrqgN-8C.cjs → NcRadioGroupButton-DoOf7cE1.cjs} +11 -9
- package/dist/chunks/NcRadioGroupButton-DoOf7cE1.cjs.map +1 -0
- package/dist/chunks/{NcRelatedResourcesPanel-BTyqVb_E.mjs → NcRelatedResourcesPanel-BbjG2Qvg.mjs} +6 -6
- package/dist/chunks/{NcRelatedResourcesPanel-BTyqVb_E.mjs.map → NcRelatedResourcesPanel-BbjG2Qvg.mjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel-CO6jajKF.cjs → NcRelatedResourcesPanel-DUxV4_Bt.cjs} +6 -6
- package/dist/chunks/{NcRelatedResourcesPanel-CO6jajKF.cjs.map → NcRelatedResourcesPanel-DUxV4_Bt.cjs.map} +1 -1
- package/dist/chunks/{NcRichContenteditable-BjxmdpS0.cjs → NcRichContenteditable-C_PlLt-H.cjs} +14 -11
- package/dist/chunks/{NcRichContenteditable-BjxmdpS0.cjs.map → NcRichContenteditable-C_PlLt-H.cjs.map} +1 -1
- package/dist/chunks/{NcRichContenteditable-BivvoSO5.mjs → NcRichContenteditable-S7ASR6NI.mjs} +14 -11
- package/dist/chunks/{NcRichContenteditable-BivvoSO5.mjs.map → NcRichContenteditable-S7ASR6NI.mjs.map} +1 -1
- package/dist/chunks/{NcRichText-Dy5By94Y.mjs → NcRichText-C7k_8zuH.mjs} +57 -14
- package/dist/chunks/NcRichText-C7k_8zuH.mjs.map +1 -0
- package/dist/chunks/{NcRichText-DoQg3Lha.cjs → NcRichText-kd0NZSP_.cjs} +56 -13
- package/dist/chunks/NcRichText-kd0NZSP_.cjs.map +1 -0
- package/dist/chunks/{NcSelect-QVd6uJPA.mjs → NcSelect-CkB50N9T.mjs} +11 -8
- package/dist/chunks/NcSelect-CkB50N9T.mjs.map +1 -0
- package/dist/chunks/{NcSelect-Bw8EG_xU.cjs → NcSelect-DfosTlgF.cjs} +11 -8
- package/dist/chunks/NcSelect-DfosTlgF.cjs.map +1 -0
- package/dist/chunks/{NcSelectTags-D-22teKJ.mjs → NcSelectTags-DrDrZUA6.mjs} +3 -3
- package/dist/chunks/{NcSelectTags-D-22teKJ.mjs.map → NcSelectTags-DrDrZUA6.mjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-aGwTgIM-.cjs → NcSelectTags-deek6JXy.cjs} +3 -3
- package/dist/chunks/{NcSelectTags-aGwTgIM-.cjs.map → NcSelectTags-deek6JXy.cjs.map} +1 -1
- package/dist/chunks/{NcSelectUsers-Qhrizan5.cjs → NcSelectUsers-Cu5KZCxC.cjs} +5 -5
- package/dist/chunks/{NcSelectUsers-Qhrizan5.cjs.map → NcSelectUsers-Cu5KZCxC.cjs.map} +1 -1
- package/dist/chunks/{NcSelectUsers-DR6-q1aK.mjs → NcSelectUsers-HmMuAP19.mjs} +5 -5
- package/dist/chunks/{NcSelectUsers-DR6-q1aK.mjs.map → NcSelectUsers-HmMuAP19.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-Q8DDr-Yj.mjs → NcSettingsInputText-wFKkjw2t.mjs} +3 -3
- package/dist/chunks/{NcSettingsInputText-Q8DDr-Yj.mjs.map → NcSettingsInputText-wFKkjw2t.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-O8870Grr.cjs → NcSettingsInputText-ynxiTO4n.cjs} +3 -3
- package/dist/chunks/{NcSettingsInputText-O8870Grr.cjs.map → NcSettingsInputText-ynxiTO4n.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-DKpzo7eI.cjs → NcSettingsSection-Bvo098h3.cjs} +3 -3
- package/dist/chunks/{NcSettingsSection-DKpzo7eI.cjs.map → NcSettingsSection-Bvo098h3.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-VxcVEF8L.mjs → NcSettingsSection-ZV3KIsxm.mjs} +3 -3
- package/dist/chunks/{NcSettingsSection-VxcVEF8L.mjs.map → NcSettingsSection-ZV3KIsxm.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-CZ0EjeJb.mjs → NcSettingsSelectGroup-CXGxufce.mjs} +4 -4
- package/dist/chunks/{NcSettingsSelectGroup-CZ0EjeJb.mjs.map → NcSettingsSelectGroup-CXGxufce.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-BQWwtSEb.cjs → NcSettingsSelectGroup-DmHVvBng.cjs} +4 -4
- package/dist/chunks/{NcSettingsSelectGroup-BQWwtSEb.cjs.map → NcSettingsSelectGroup-DmHVvBng.cjs.map} +1 -1
- package/dist/chunks/{NcTextArea-DHmD6-6s.mjs → NcTextArea-CIgfjLRv.mjs} +3 -3
- package/dist/chunks/NcTextArea-CIgfjLRv.mjs.map +1 -0
- package/dist/chunks/{NcTextArea-DkVtHTpD.cjs → NcTextArea-Dd8ctlvG.cjs} +3 -3
- package/dist/chunks/NcTextArea-Dd8ctlvG.cjs.map +1 -0
- package/dist/chunks/{NcTextField-52Fnd27A.cjs → NcTextField-CYbpyxC1.cjs} +6 -6
- package/dist/chunks/NcTextField-CYbpyxC1.cjs.map +1 -0
- package/dist/chunks/{NcTextField-CVfixgfj.mjs → NcTextField-CijJWC3h.mjs} +6 -6
- package/dist/chunks/NcTextField-CijJWC3h.mjs.map +1 -0
- package/dist/chunks/{NcTimezonePicker-CtFsF-jG.cjs → NcTimezonePicker-8z2Jxzq-.cjs} +5 -5
- package/dist/chunks/{NcTimezonePicker-CtFsF-jG.cjs.map → NcTimezonePicker-8z2Jxzq-.cjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-BInLNCSt.mjs → NcTimezonePicker-DOSucwRx.mjs} +5 -5
- package/dist/chunks/{NcTimezonePicker-BInLNCSt.mjs.map → NcTimezonePicker-DOSucwRx.mjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-ByvVV8jh.cjs → NcUserBubble-Bzng2YLf.cjs} +2 -2
- package/dist/chunks/{NcUserBubble-ByvVV8jh.cjs.map → NcUserBubble-Bzng2YLf.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-sIUM-Rru.mjs → NcUserBubble-CSGX6IdN.mjs} +2 -2
- package/dist/chunks/{NcUserBubble-sIUM-Rru.mjs.map → NcUserBubble-CSGX6IdN.mjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-CYsrjxDh.cjs → NcUserStatusIcon-DYU-ubF3.cjs} +3 -3
- package/dist/chunks/{NcUserStatusIcon-CYsrjxDh.cjs.map → NcUserStatusIcon-DYU-ubF3.cjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-DZI9jlXE.mjs → NcUserStatusIcon-Dfd_lPCI.mjs} +3 -3
- package/dist/chunks/{NcUserStatusIcon-DZI9jlXE.mjs.map → NcUserStatusIcon-Dfd_lPCI.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-CNZ_b7IG.mjs → ScopeComponent-CTeSJqUJ.mjs} +2 -2
- package/dist/chunks/{ScopeComponent-CNZ_b7IG.mjs.map → ScopeComponent-CTeSJqUJ.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-BCznIxFT.cjs → ScopeComponent-CycICbeB.cjs} +2 -2
- package/dist/chunks/{ScopeComponent-BCznIxFT.cjs.map → ScopeComponent-CycICbeB.cjs.map} +1 -1
- package/dist/chunks/{_l10n-BWisB7-O.mjs → _l10n-D3tJt_gL.mjs} +81 -79
- package/dist/chunks/_l10n-D3tJt_gL.mjs.map +1 -0
- package/dist/chunks/{_l10n-eOBJ3Dwl.cjs → _l10n-DWMcjgRh.cjs} +35 -33
- package/dist/chunks/{_l10n-eOBJ3Dwl.cjs.map → _l10n-DWMcjgRh.cjs.map} +1 -1
- package/dist/chunks/appName-D8lIU8jk.cjs +43 -0
- package/dist/chunks/appName-D8lIU8jk.cjs.map +1 -0
- package/dist/chunks/appName-DA23ARcC.mjs +44 -0
- package/dist/chunks/appName-DA23ARcC.mjs.map +1 -0
- package/dist/chunks/{colors-D3xlq-id.mjs → colors-DYuPlOca.mjs} +2 -2
- package/dist/chunks/{colors-D3xlq-id.mjs.map → colors-DYuPlOca.mjs.map} +1 -1
- package/dist/chunks/{colors-BsDQ1Yz3.cjs → colors-RIMKc3tN.cjs} +2 -2
- package/dist/chunks/{colors-BsDQ1Yz3.cjs.map → colors-RIMKc3tN.cjs.map} +1 -1
- package/dist/chunks/{mdi-Nhb6SBw8.cjs → mdi-CVXTs58m.cjs} +11 -1
- package/dist/chunks/{mdi-CKSXwCsV.mjs.map → mdi-CVXTs58m.cjs.map} +1 -1
- package/dist/chunks/{mdi-CKSXwCsV.mjs → mdi-CgetWrFc.mjs} +19 -9
- package/dist/chunks/{mdi-Nhb6SBw8.cjs.map → mdi-CgetWrFc.mjs.map} +1 -1
- package/dist/chunks/{referencePickerModal-Dz1h1EHq.cjs → referencePickerModal-BPowR5yI.cjs} +10 -10
- package/dist/chunks/{referencePickerModal-Dz1h1EHq.cjs.map → referencePickerModal-BPowR5yI.cjs.map} +1 -1
- package/dist/chunks/{referencePickerModal-Cl3fIc9s.mjs → referencePickerModal-eu8fU-gn.mjs} +10 -10
- package/dist/chunks/{referencePickerModal-Cl3fIc9s.mjs.map → referencePickerModal-eu8fU-gn.mjs.map} +1 -1
- package/dist/chunks/{useAppSettingsDialog-CPqmms-u.cjs → useAppSettingsDialog-BfnyikIV.cjs} +3 -1
- package/dist/chunks/useAppSettingsDialog-BfnyikIV.cjs.map +1 -0
- package/dist/chunks/{useAppSettingsDialog-Dn48dw1k.mjs → useAppSettingsDialog-DbtEkXa4.mjs} +4 -2
- package/dist/chunks/useAppSettingsDialog-DbtEkXa4.mjs.map +1 -0
- package/dist/chunks/useCopy-BrkuO6SD.cjs +39 -0
- package/dist/chunks/useCopy-BrkuO6SD.cjs.map +1 -0
- package/dist/chunks/useCopy-J3zJ3s94.mjs +40 -0
- package/dist/chunks/useCopy-J3zJ3s94.mjs.map +1 -0
- package/dist/chunks/useNcFormBox-DA9iwXWY.mjs +13 -0
- package/dist/chunks/useNcFormBox-DA9iwXWY.mjs.map +1 -0
- package/dist/chunks/useNcFormBox-DQeOEuQp.cjs +12 -0
- package/dist/chunks/useNcFormBox-DQeOEuQp.cjs.map +1 -0
- package/dist/components/NcAppSettingsDialog/useAppSettingsDialog.d.ts +2 -1
- package/dist/components/NcAppSettingsSectionShortcuts/index.d.ts +8 -1
- package/dist/components/NcAppSettingsShortcutsSection/index.d.ts +5 -0
- package/dist/components/NcFormBox/index.d.ts +1 -0
- package/dist/components/NcFormBox/useNcFormBox.d.ts +19 -0
- package/dist/components/NcFormBoxButton/index.d.ts +5 -0
- package/dist/components/NcFormBoxCopyButton/index.d.ts +5 -0
- package/dist/components/NcFormBoxSwitch/index.d.ts +5 -0
- package/dist/components/NcFormGroup/index.d.ts +5 -0
- package/dist/composables/useButtonLink.d.ts +71 -0
- package/dist/composables/useCopy.d.ts +12 -0
- package/dist/index.cjs +77 -60
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +78 -61
- package/dist/index.mjs.map +1 -1
- package/dist/utils/VueTypes.d.ts +7 -0
- package/dist/utils/appName.d.ts +10 -0
- package/dist/utils/utils.d.ts +10 -0
- package/package.json +21 -21
- package/dist/assets/NcHotkeyList-B42a0d8Z.css +0 -9
- package/dist/assets/NcRadioGroup-CNgjqqiP.css +0 -49
- package/dist/assets/NcTextArea-B6zS3CRN.css +0 -136
- package/dist/chunks/NcActions-BvFVkIzX.mjs.map +0 -1
- package/dist/chunks/NcActions-CF9VxHHD.cjs.map +0 -1
- package/dist/chunks/NcAppContent-BSyhjn2J.cjs.map +0 -1
- package/dist/chunks/NcAppContent-C7hwN-sU.mjs.map +0 -1
- package/dist/chunks/NcAppNavigation-B2cKVKBH.mjs.map +0 -1
- package/dist/chunks/NcAppNavigation-DApCpI_F.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-DbtR6u7Y.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-geCwhCsd.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSearch-WfL4IPD8.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSearch-pMlFjm9w.cjs.map +0 -1
- package/dist/chunks/NcAppSettingsDialog--RlMIfbo.cjs.map +0 -1
- package/dist/chunks/NcAppSettingsDialog-8YaW7ud3.mjs.map +0 -1
- package/dist/chunks/NcAppSettingsSection-DVrBPuLD.mjs.map +0 -1
- package/dist/chunks/NcAppSettingsSection-OPWPqi2Y.cjs.map +0 -1
- package/dist/chunks/NcAppSettingsSectionShortcuts-CBYgfYGz.cjs.map +0 -1
- package/dist/chunks/NcAppSettingsSectionShortcuts-CdP-4ktS.mjs.map +0 -1
- package/dist/chunks/NcAppSidebar-DLb6ALHL.cjs.map +0 -1
- package/dist/chunks/NcAppSidebar-f7tuofzM.mjs.map +0 -1
- package/dist/chunks/NcAvatar-BwioPrbY.cjs.map +0 -1
- package/dist/chunks/NcAvatar-DwUmx6Fg.mjs.map +0 -1
- package/dist/chunks/NcButton-CJBZrdiL.cjs.map +0 -1
- package/dist/chunks/NcButton-DUZTtFhr.mjs.map +0 -1
- package/dist/chunks/NcDashboardWidget-SSlGHcII.mjs.map +0 -1
- package/dist/chunks/NcDashboardWidget-mEPmvuR0.cjs.map +0 -1
- package/dist/chunks/NcHotkeyList-CUjp1-hr.cjs.map +0 -1
- package/dist/chunks/NcHotkeyList-jfSroQAQ.mjs.map +0 -1
- package/dist/chunks/NcIconSvgWrapper-BreCg8pX.mjs.map +0 -1
- package/dist/chunks/NcIconSvgWrapper-D-aKMbf3.cjs.map +0 -1
- package/dist/chunks/NcInputField-DAllLk3X.cjs.map +0 -1
- package/dist/chunks/NcInputField-DUtDY_1I.mjs.map +0 -1
- package/dist/chunks/NcListItem-D3HiK7ra.cjs.map +0 -1
- package/dist/chunks/NcListItem-YVemqwZ_.mjs.map +0 -1
- package/dist/chunks/NcListItemIcon-BKwmcXnO.mjs.map +0 -1
- package/dist/chunks/NcListItemIcon-DL1VwHvL.cjs.map +0 -1
- package/dist/chunks/NcRadioGroup-BZ-humrK.cjs.map +0 -1
- package/dist/chunks/NcRadioGroup-VKZJ0Vnh.mjs.map +0 -1
- package/dist/chunks/NcRadioGroupButton-CD4tkF_s.mjs.map +0 -1
- package/dist/chunks/NcRadioGroupButton-DrqgN-8C.cjs.map +0 -1
- package/dist/chunks/NcRichText-DoQg3Lha.cjs.map +0 -1
- package/dist/chunks/NcRichText-Dy5By94Y.mjs.map +0 -1
- package/dist/chunks/NcSelect-Bw8EG_xU.cjs.map +0 -1
- package/dist/chunks/NcSelect-QVd6uJPA.mjs.map +0 -1
- package/dist/chunks/NcTextArea-DHmD6-6s.mjs.map +0 -1
- package/dist/chunks/NcTextArea-DkVtHTpD.cjs.map +0 -1
- package/dist/chunks/NcTextField-52Fnd27A.cjs.map +0 -1
- package/dist/chunks/NcTextField-CVfixgfj.mjs.map +0 -1
- package/dist/chunks/_l10n-BWisB7-O.mjs.map +0 -1
- package/dist/chunks/useAppSettingsDialog-CPqmms-u.cjs.map +0 -1
- package/dist/chunks/useAppSettingsDialog-Dn48dw1k.mjs.map +0 -1
- /package/dist/assets/{NcAppSettingsSectionShortcuts-BuI-s4kd.css → NcAppSettingsShortcutsSection-BuI-s4kd.css} +0 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import '../assets/NcFormBoxButton-C6EvdLK4.css';
|
|
2
|
+
import { reactive, getCurrentInstance, computed, defineComponent } from "vue";
|
|
3
|
+
import { k as mdiOpenInNew, l as mdiArrowTopRight } from "./mdi-CgetWrFc.mjs";
|
|
4
|
+
import { toRef } from "@vueuse/core";
|
|
5
|
+
import { N as NcFormBoxItem } from "./NcFormBoxItem-BcNIAmpc.mjs";
|
|
6
|
+
import { N as NcIconSvgWrapper } from "./NcIconSvgWrapper-Bui9PhAS.mjs";
|
|
7
|
+
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
8
|
+
/*!
|
|
9
|
+
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
|
|
10
|
+
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
11
|
+
*/
|
|
12
|
+
function useButtonLink(options) {
|
|
13
|
+
const props = reactive(options);
|
|
14
|
+
const instance = getCurrentInstance();
|
|
15
|
+
const hasVueRouterContext = "$router" in instance.proxy.$root;
|
|
16
|
+
const tag = computed(() => {
|
|
17
|
+
if (hasVueRouterContext && props.to) {
|
|
18
|
+
return "RouterLink";
|
|
19
|
+
} else if (props.href) {
|
|
20
|
+
return "a";
|
|
21
|
+
} else {
|
|
22
|
+
return "button";
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
const isLink = computed(() => tag.value === "RouterLink" || tag.value === "a");
|
|
26
|
+
const isHyperLink = computed(() => tag.value === "a");
|
|
27
|
+
const isRouterLink = computed(() => tag.value === "RouterLink");
|
|
28
|
+
const isButton = computed(() => tag.value === "button");
|
|
29
|
+
const attrs = computed(() => {
|
|
30
|
+
if (tag.value === "RouterLink") {
|
|
31
|
+
return {
|
|
32
|
+
to: props.to,
|
|
33
|
+
activeClass: "active",
|
|
34
|
+
...props.additionalAttrs?.("RouterLink") ?? {}
|
|
35
|
+
};
|
|
36
|
+
} else if (tag.value === "a") {
|
|
37
|
+
return {
|
|
38
|
+
href: props.href,
|
|
39
|
+
target: props.target,
|
|
40
|
+
download: props.download || void 0,
|
|
41
|
+
rel: "nofollow noreferrer noopener",
|
|
42
|
+
...props.additionalAttrs?.("a") ?? {}
|
|
43
|
+
};
|
|
44
|
+
} else if (tag.value === "button") {
|
|
45
|
+
return {
|
|
46
|
+
type: props.type || "button",
|
|
47
|
+
disabled: props.disabled,
|
|
48
|
+
...props.additionalAttrs?.("button") ?? {}
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
return {
|
|
53
|
+
tag,
|
|
54
|
+
isLink,
|
|
55
|
+
isHyperLink,
|
|
56
|
+
isRouterLink,
|
|
57
|
+
isButton,
|
|
58
|
+
attrs
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
62
|
+
__name: "NcFormBoxButton",
|
|
63
|
+
props: {
|
|
64
|
+
label: { default: void 0 },
|
|
65
|
+
description: { default: void 0 },
|
|
66
|
+
invertedAccent: { type: Boolean, default: false },
|
|
67
|
+
to: { default: void 0 },
|
|
68
|
+
href: { default: void 0 },
|
|
69
|
+
target: { default: void 0 },
|
|
70
|
+
disabled: { type: Boolean, default: false }
|
|
71
|
+
},
|
|
72
|
+
emits: ["click"],
|
|
73
|
+
setup(__props) {
|
|
74
|
+
const props = __props;
|
|
75
|
+
const { tag, attrs, isLink } = useButtonLink({
|
|
76
|
+
to: toRef(() => props.to),
|
|
77
|
+
href: toRef(() => props.href),
|
|
78
|
+
target: toRef(() => props.target),
|
|
79
|
+
disabled: toRef(() => props.disabled)
|
|
80
|
+
});
|
|
81
|
+
const icon = computed(() => {
|
|
82
|
+
if (isLink.value) {
|
|
83
|
+
return props.target === "_blank" ? mdiOpenInNew : mdiArrowTopRight;
|
|
84
|
+
}
|
|
85
|
+
return void 0;
|
|
86
|
+
});
|
|
87
|
+
return { __sfc: true, props, tag, attrs, isLink, icon, NcFormBoxItem, NcIconSvgWrapper };
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
const formBoxButton = "_formBoxButton_15jyc_20";
|
|
91
|
+
const style0 = {
|
|
92
|
+
"material-design-icon": "_material-design-icon_15jyc_12",
|
|
93
|
+
formBoxButton
|
|
94
|
+
};
|
|
95
|
+
var _sfc_render = function render() {
|
|
96
|
+
var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
|
|
97
|
+
return _c(_setup.NcFormBoxItem, _vm._b({ attrs: { "tag": _setup.tag, "item-classes": [
|
|
98
|
+
"button-vue",
|
|
99
|
+
/* Reset server's global HTML button styles */
|
|
100
|
+
_vm.$style.formBoxButton
|
|
101
|
+
], "inverted-accent": _vm.invertedAccent, "tabindex": "0" }, on: { "click": function($event) {
|
|
102
|
+
return _vm.$emit("click", $event);
|
|
103
|
+
} }, scopedSlots: _vm._u([_vm.$scopedSlots.default || _vm.label ? { key: "default", fn: function() {
|
|
104
|
+
return [_vm._t("default", function() {
|
|
105
|
+
return [_vm._v(" " + _vm._s(_vm.label) + " ")];
|
|
106
|
+
})];
|
|
107
|
+
}, proxy: true } : null, _vm.$scopedSlots.description || _vm.description ? { key: "description", fn: function() {
|
|
108
|
+
return [_vm._t("description", function() {
|
|
109
|
+
return [_vm._v(" " + _vm._s(_vm.description) + " ")];
|
|
110
|
+
})];
|
|
111
|
+
}, proxy: true } : null, _vm.$scopedSlots.icon || _setup.icon ? { key: "icon", fn: function() {
|
|
112
|
+
return [_vm._t("icon", function() {
|
|
113
|
+
return [_setup.icon ? _c(_setup.NcIconSvgWrapper, { attrs: { "path": _setup.icon, "inline": "" } }) : _vm._e()];
|
|
114
|
+
})];
|
|
115
|
+
}, proxy: true } : null], null, true) }, "NcFormBoxItem", _setup.attrs, false));
|
|
116
|
+
};
|
|
117
|
+
var _sfc_staticRenderFns = [];
|
|
118
|
+
const __cssModules = {
|
|
119
|
+
"$style": style0
|
|
120
|
+
};
|
|
121
|
+
function _sfc_injectStyles(ctx) {
|
|
122
|
+
for (var key in __cssModules) {
|
|
123
|
+
this[key] = __cssModules[key];
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
127
|
+
_sfc_main,
|
|
128
|
+
_sfc_render,
|
|
129
|
+
_sfc_staticRenderFns,
|
|
130
|
+
false,
|
|
131
|
+
_sfc_injectStyles,
|
|
132
|
+
null
|
|
133
|
+
);
|
|
134
|
+
const NcFormBoxButton = __component__.exports;
|
|
135
|
+
export {
|
|
136
|
+
NcFormBoxButton as N
|
|
137
|
+
};
|
|
138
|
+
//# sourceMappingURL=NcFormBoxButton-DR_OMvmB.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxButton-DR_OMvmB.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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { defineComponent } from "vue";
|
|
2
|
+
import { whenever } from "@vueuse/core";
|
|
3
|
+
import { N as NcFormBoxButton } from "./NcFormBoxButton-DR_OMvmB.mjs";
|
|
4
|
+
import { N as NcIconSvgWrapper } from "./NcIconSvgWrapper-Bui9PhAS.mjs";
|
|
5
|
+
import { u as useCopy } from "./useCopy-J3zJ3s94.mjs";
|
|
6
|
+
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
7
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
8
|
+
__name: "NcFormBoxCopyButton",
|
|
9
|
+
props: {
|
|
10
|
+
label: { default: void 0 },
|
|
11
|
+
value: null,
|
|
12
|
+
disabled: { type: Boolean, default: false }
|
|
13
|
+
},
|
|
14
|
+
emits: ["copy"],
|
|
15
|
+
setup(__props, { emit }) {
|
|
16
|
+
const props = __props;
|
|
17
|
+
const { isCopied, copy, icon, altText } = useCopy(() => props.value);
|
|
18
|
+
whenever(isCopied, () => emit("copy"));
|
|
19
|
+
return { __sfc: true, props, emit, isCopied, copy, icon, altText, NcFormBoxButton, NcIconSvgWrapper };
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
var _sfc_render = function render() {
|
|
23
|
+
var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
|
|
24
|
+
return _c(_setup.NcFormBoxButton, { attrs: { "disabled": _vm.disabled, "inverted-accent": "" }, on: { "click": _setup.copy }, scopedSlots: _vm._u([_vm.$slots.default || _vm.label ? { key: "default", fn: function() {
|
|
25
|
+
return [_c("span", { staticClass: "hidden-visually" }, [_vm._v(" " + _vm._s(_setup.altText) + " ")]), _vm._t("default", function() {
|
|
26
|
+
return [_vm._v(" " + _vm._s(_vm.label) + " ")];
|
|
27
|
+
})];
|
|
28
|
+
}, proxy: true } : null, { key: "description", fn: function() {
|
|
29
|
+
return [_vm._v(" " + _vm._s(_vm.value) + " ")];
|
|
30
|
+
}, proxy: true }, { key: "icon", fn: function() {
|
|
31
|
+
return [_c(_setup.NcIconSvgWrapper, { attrs: { "path": _setup.icon, "inline": "" } })];
|
|
32
|
+
}, proxy: true }], null, true) });
|
|
33
|
+
};
|
|
34
|
+
var _sfc_staticRenderFns = [];
|
|
35
|
+
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
36
|
+
_sfc_main,
|
|
37
|
+
_sfc_render,
|
|
38
|
+
_sfc_staticRenderFns,
|
|
39
|
+
false,
|
|
40
|
+
null,
|
|
41
|
+
null
|
|
42
|
+
);
|
|
43
|
+
const NcFormBoxCopyButton = __component__.exports;
|
|
44
|
+
export {
|
|
45
|
+
NcFormBoxCopyButton as N
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=NcFormBoxCopyButton-BQt4cqDo.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxCopyButton-BQt4cqDo.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;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const Vue = require("vue");
|
|
3
|
+
const core = require("@vueuse/core");
|
|
4
|
+
const NcFormBoxButton = require("./NcFormBoxButton-B4STyrn7.cjs");
|
|
5
|
+
const NcIconSvgWrapper = require("./NcIconSvgWrapper-Bbl4kXZI.cjs");
|
|
6
|
+
const useCopy = require("./useCopy-BrkuO6SD.cjs");
|
|
7
|
+
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
8
|
+
const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
9
|
+
__name: "NcFormBoxCopyButton",
|
|
10
|
+
props: {
|
|
11
|
+
label: { default: void 0 },
|
|
12
|
+
value: null,
|
|
13
|
+
disabled: { type: Boolean, default: false }
|
|
14
|
+
},
|
|
15
|
+
emits: ["copy"],
|
|
16
|
+
setup(__props, { emit }) {
|
|
17
|
+
const props = __props;
|
|
18
|
+
const { isCopied, copy, icon, altText } = useCopy.useCopy(() => props.value);
|
|
19
|
+
core.whenever(isCopied, () => emit("copy"));
|
|
20
|
+
return { __sfc: true, props, emit, isCopied, copy, icon, altText, NcFormBoxButton: NcFormBoxButton.NcFormBoxButton, NcIconSvgWrapper: NcIconSvgWrapper.NcIconSvgWrapper };
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
var _sfc_render = function render() {
|
|
24
|
+
var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
|
|
25
|
+
return _c(_setup.NcFormBoxButton, { attrs: { "disabled": _vm.disabled, "inverted-accent": "" }, on: { "click": _setup.copy }, scopedSlots: _vm._u([_vm.$slots.default || _vm.label ? { key: "default", fn: function() {
|
|
26
|
+
return [_c("span", { staticClass: "hidden-visually" }, [_vm._v(" " + _vm._s(_setup.altText) + " ")]), _vm._t("default", function() {
|
|
27
|
+
return [_vm._v(" " + _vm._s(_vm.label) + " ")];
|
|
28
|
+
})];
|
|
29
|
+
}, proxy: true } : null, { key: "description", fn: function() {
|
|
30
|
+
return [_vm._v(" " + _vm._s(_vm.value) + " ")];
|
|
31
|
+
}, proxy: true }, { key: "icon", fn: function() {
|
|
32
|
+
return [_c(_setup.NcIconSvgWrapper, { attrs: { "path": _setup.icon, "inline": "" } })];
|
|
33
|
+
}, proxy: true }], null, true) });
|
|
34
|
+
};
|
|
35
|
+
var _sfc_staticRenderFns = [];
|
|
36
|
+
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
37
|
+
_sfc_main,
|
|
38
|
+
_sfc_render,
|
|
39
|
+
_sfc_staticRenderFns,
|
|
40
|
+
false,
|
|
41
|
+
null,
|
|
42
|
+
null
|
|
43
|
+
);
|
|
44
|
+
const NcFormBoxCopyButton = __component__.exports;
|
|
45
|
+
exports.NcFormBoxCopyButton = NcFormBoxCopyButton;
|
|
46
|
+
//# sourceMappingURL=NcFormBoxCopyButton-CthOiHuc.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxCopyButton-CthOiHuc.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;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import '../assets/NcFormBoxItem-BfXKp9xJ.css';
|
|
2
|
+
import { defineComponent, useSlots } from "vue";
|
|
3
|
+
import { u as useNcFormBox } from "./useNcFormBox-DA9iwXWY.mjs";
|
|
4
|
+
import { c as createElementId } from "./createElementId-DhjFt1I9.mjs";
|
|
5
|
+
import { i as isLegacy32 } from "./legacy-MK4GvP26.mjs";
|
|
6
|
+
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
7
|
+
const __default__ = {
|
|
8
|
+
inheritAttrs: false
|
|
9
|
+
};
|
|
10
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
11
|
+
...__default__,
|
|
12
|
+
__name: "NcFormBoxItem",
|
|
13
|
+
props: {
|
|
14
|
+
tag: null,
|
|
15
|
+
label: { default: void 0 },
|
|
16
|
+
description: { default: void 0 },
|
|
17
|
+
invertedAccent: { type: Boolean, default: false },
|
|
18
|
+
itemClasses: { default: void 0 }
|
|
19
|
+
},
|
|
20
|
+
emits: ["click"],
|
|
21
|
+
setup(__props) {
|
|
22
|
+
const props = __props;
|
|
23
|
+
const slots = useSlots();
|
|
24
|
+
const { formBoxItemClass } = useNcFormBox();
|
|
25
|
+
const descriptionId = createElementId();
|
|
26
|
+
const hasDescription = () => !!props.description || !!slots.description;
|
|
27
|
+
return { __sfc: true, props, slots, formBoxItemClass, descriptionId, hasDescription, isLegacy32 };
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
const formBoxItem = "_formBoxItem_v5un7_20";
|
|
31
|
+
const formBoxItem_legacy = "_formBoxItem_legacy_v5un7_60";
|
|
32
|
+
const formBoxItem_inverted = "_formBoxItem_inverted_v5un7_64";
|
|
33
|
+
const formBoxItem__element = "_formBoxItem__element_v5un7_64";
|
|
34
|
+
const formBoxItem__description = "_formBoxItem__description_v5un7_67";
|
|
35
|
+
const formBoxItem__content = "_formBoxItem__content_v5un7_71";
|
|
36
|
+
const formBoxItem__icon = "_formBoxItem__icon_v5un7_89";
|
|
37
|
+
const style0 = {
|
|
38
|
+
"material-design-icon": "_material-design-icon_v5un7_12",
|
|
39
|
+
formBoxItem,
|
|
40
|
+
formBoxItem_legacy,
|
|
41
|
+
formBoxItem_inverted,
|
|
42
|
+
formBoxItem__element,
|
|
43
|
+
formBoxItem__description,
|
|
44
|
+
formBoxItem__content,
|
|
45
|
+
formBoxItem__icon
|
|
46
|
+
};
|
|
47
|
+
var _sfc_render = function render() {
|
|
48
|
+
var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
|
|
49
|
+
return _c("div", { class: [
|
|
50
|
+
_vm.$style.formBoxItem,
|
|
51
|
+
_setup.formBoxItemClass,
|
|
52
|
+
{
|
|
53
|
+
[_vm.$style.formBoxItem_inverted]: _vm.invertedAccent && _setup.hasDescription(),
|
|
54
|
+
[_vm.$style.formBoxItem_legacy]: _setup.isLegacy32
|
|
55
|
+
}
|
|
56
|
+
] }, [_c("span", { class: _vm.$style.formBoxItem__content }, [_c(_vm.tag, _vm._b({ tag: "component", class: [_vm.$style.formBoxItem__element, _vm.itemClasses], on: { "click": function($event) {
|
|
57
|
+
return _vm.$emit("click", $event);
|
|
58
|
+
} } }, "component", _vm.$attrs, false), [_vm._t("default", function() {
|
|
59
|
+
return [_vm._v(" " + _vm._s(_vm.label || "⚠️ Label is missing") + " ")];
|
|
60
|
+
}, { "descriptionId": _setup.descriptionId })], 2), _setup.hasDescription() ? _c("span", { class: _vm.$style.formBoxItem__description, attrs: { "id": _setup.descriptionId } }, [_vm._t("description", function() {
|
|
61
|
+
return [_vm._v(" " + _vm._s(_vm.description) + " ")];
|
|
62
|
+
})], 2) : _vm._e()], 1), _c("span", { class: _vm.$style.formBoxItem__icon }, [_vm._t("icon", function() {
|
|
63
|
+
return [_vm._v(" ⚠️ Icon is missing ")];
|
|
64
|
+
}, { "descriptionId": _setup.descriptionId })], 2)]);
|
|
65
|
+
};
|
|
66
|
+
var _sfc_staticRenderFns = [];
|
|
67
|
+
const __cssModules = {
|
|
68
|
+
"$style": style0
|
|
69
|
+
};
|
|
70
|
+
function _sfc_injectStyles(ctx) {
|
|
71
|
+
for (var key in __cssModules) {
|
|
72
|
+
this[key] = __cssModules[key];
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
76
|
+
_sfc_main,
|
|
77
|
+
_sfc_render,
|
|
78
|
+
_sfc_staticRenderFns,
|
|
79
|
+
false,
|
|
80
|
+
_sfc_injectStyles,
|
|
81
|
+
null
|
|
82
|
+
);
|
|
83
|
+
const NcFormBoxItem = __component__.exports;
|
|
84
|
+
export {
|
|
85
|
+
NcFormBoxItem as N
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=NcFormBoxItem-BcNIAmpc.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxItem-BcNIAmpc.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\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&.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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
require('../assets/NcFormBoxItem-BfXKp9xJ.css');
|
|
2
|
+
"use strict";
|
|
3
|
+
const Vue = require("vue");
|
|
4
|
+
const useNcFormBox = require("./useNcFormBox-DQeOEuQp.cjs");
|
|
5
|
+
const createElementId = require("./createElementId-lalylSCf.cjs");
|
|
6
|
+
const legacy = require("./legacy-KBXhWdRy.cjs");
|
|
7
|
+
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
8
|
+
const __default__ = {
|
|
9
|
+
inheritAttrs: false
|
|
10
|
+
};
|
|
11
|
+
const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
12
|
+
...__default__,
|
|
13
|
+
__name: "NcFormBoxItem",
|
|
14
|
+
props: {
|
|
15
|
+
tag: null,
|
|
16
|
+
label: { default: void 0 },
|
|
17
|
+
description: { default: void 0 },
|
|
18
|
+
invertedAccent: { type: Boolean, default: false },
|
|
19
|
+
itemClasses: { default: void 0 }
|
|
20
|
+
},
|
|
21
|
+
emits: ["click"],
|
|
22
|
+
setup(__props) {
|
|
23
|
+
const props = __props;
|
|
24
|
+
const slots = Vue.useSlots();
|
|
25
|
+
const { formBoxItemClass } = useNcFormBox.useNcFormBox();
|
|
26
|
+
const descriptionId = createElementId.createElementId();
|
|
27
|
+
const hasDescription = () => !!props.description || !!slots.description;
|
|
28
|
+
return { __sfc: true, props, slots, formBoxItemClass, descriptionId, hasDescription, isLegacy32: legacy.isLegacy32 };
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
const formBoxItem = "_formBoxItem_v5un7_20";
|
|
32
|
+
const formBoxItem_legacy = "_formBoxItem_legacy_v5un7_60";
|
|
33
|
+
const formBoxItem_inverted = "_formBoxItem_inverted_v5un7_64";
|
|
34
|
+
const formBoxItem__element = "_formBoxItem__element_v5un7_64";
|
|
35
|
+
const formBoxItem__description = "_formBoxItem__description_v5un7_67";
|
|
36
|
+
const formBoxItem__content = "_formBoxItem__content_v5un7_71";
|
|
37
|
+
const formBoxItem__icon = "_formBoxItem__icon_v5un7_89";
|
|
38
|
+
const style0 = {
|
|
39
|
+
"material-design-icon": "_material-design-icon_v5un7_12",
|
|
40
|
+
formBoxItem,
|
|
41
|
+
formBoxItem_legacy,
|
|
42
|
+
formBoxItem_inverted,
|
|
43
|
+
formBoxItem__element,
|
|
44
|
+
formBoxItem__description,
|
|
45
|
+
formBoxItem__content,
|
|
46
|
+
formBoxItem__icon
|
|
47
|
+
};
|
|
48
|
+
var _sfc_render = function render() {
|
|
49
|
+
var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
|
|
50
|
+
return _c("div", { class: [
|
|
51
|
+
_vm.$style.formBoxItem,
|
|
52
|
+
_setup.formBoxItemClass,
|
|
53
|
+
{
|
|
54
|
+
[_vm.$style.formBoxItem_inverted]: _vm.invertedAccent && _setup.hasDescription(),
|
|
55
|
+
[_vm.$style.formBoxItem_legacy]: _setup.isLegacy32
|
|
56
|
+
}
|
|
57
|
+
] }, [_c("span", { class: _vm.$style.formBoxItem__content }, [_c(_vm.tag, _vm._b({ tag: "component", class: [_vm.$style.formBoxItem__element, _vm.itemClasses], on: { "click": function($event) {
|
|
58
|
+
return _vm.$emit("click", $event);
|
|
59
|
+
} } }, "component", _vm.$attrs, false), [_vm._t("default", function() {
|
|
60
|
+
return [_vm._v(" " + _vm._s(_vm.label || "⚠️ Label is missing") + " ")];
|
|
61
|
+
}, { "descriptionId": _setup.descriptionId })], 2), _setup.hasDescription() ? _c("span", { class: _vm.$style.formBoxItem__description, attrs: { "id": _setup.descriptionId } }, [_vm._t("description", function() {
|
|
62
|
+
return [_vm._v(" " + _vm._s(_vm.description) + " ")];
|
|
63
|
+
})], 2) : _vm._e()], 1), _c("span", { class: _vm.$style.formBoxItem__icon }, [_vm._t("icon", function() {
|
|
64
|
+
return [_vm._v(" ⚠️ Icon is missing ")];
|
|
65
|
+
}, { "descriptionId": _setup.descriptionId })], 2)]);
|
|
66
|
+
};
|
|
67
|
+
var _sfc_staticRenderFns = [];
|
|
68
|
+
const __cssModules = {
|
|
69
|
+
"$style": style0
|
|
70
|
+
};
|
|
71
|
+
function _sfc_injectStyles(ctx) {
|
|
72
|
+
for (var key in __cssModules) {
|
|
73
|
+
this[key] = __cssModules[key];
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
77
|
+
_sfc_main,
|
|
78
|
+
_sfc_render,
|
|
79
|
+
_sfc_staticRenderFns,
|
|
80
|
+
false,
|
|
81
|
+
_sfc_injectStyles,
|
|
82
|
+
null
|
|
83
|
+
);
|
|
84
|
+
const NcFormBoxItem = __component__.exports;
|
|
85
|
+
exports.NcFormBoxItem = NcFormBoxItem;
|
|
86
|
+
//# sourceMappingURL=NcFormBoxItem-BfXaRfkc.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxItem-BfXaRfkc.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\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&.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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
require('../assets/NcFormBoxSwitch-BmyNQCbA.css');
|
|
2
|
+
"use strict";
|
|
3
|
+
const Vue = require("vue");
|
|
4
|
+
const mdi = require("./mdi-CVXTs58m.cjs");
|
|
5
|
+
const core = require("@vueuse/core");
|
|
6
|
+
const NcFormBoxItem = require("./NcFormBoxItem-BfXaRfkc.cjs");
|
|
7
|
+
const NcIconSvgWrapper = require("./NcIconSvgWrapper-Bbl4kXZI.cjs");
|
|
8
|
+
const createElementId = require("./createElementId-lalylSCf.cjs");
|
|
9
|
+
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
10
|
+
const __default__ = {
|
|
11
|
+
model: {
|
|
12
|
+
prop: "modelValue",
|
|
13
|
+
event: "update:modelValue"
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
|
|
17
|
+
...__default__,
|
|
18
|
+
__name: "NcFormBoxSwitch",
|
|
19
|
+
props: {
|
|
20
|
+
label: { default: void 0 },
|
|
21
|
+
description: { default: void 0 },
|
|
22
|
+
disabled: { type: Boolean, default: false },
|
|
23
|
+
modelValue: { type: Boolean }
|
|
24
|
+
},
|
|
25
|
+
emits: ["enable", "disable", "update:modelValue"],
|
|
26
|
+
setup(__props, { emit }) {
|
|
27
|
+
const props = __props;
|
|
28
|
+
const model = core.useVModel(props, "modelValue", emit, { passive: true });
|
|
29
|
+
const inputId = createElementId.createElementId();
|
|
30
|
+
Vue.watch(model, () => {
|
|
31
|
+
if (model.value) {
|
|
32
|
+
emit("enable");
|
|
33
|
+
} else {
|
|
34
|
+
emit("disable");
|
|
35
|
+
}
|
|
36
|
+
}, {
|
|
37
|
+
// defineModel emits update:modelValue synchronously
|
|
38
|
+
// Watching it synchronously to emit the enable/disable events together with the update:modelValue event
|
|
39
|
+
flush: "sync"
|
|
40
|
+
});
|
|
41
|
+
return { __sfc: true, props, emit, model, inputId, mdiToggleSwitch: mdi.mdiToggleSwitch, mdiToggleSwitchOff: mdi.mdiToggleSwitchOff, NcFormBoxItem: NcFormBoxItem.NcFormBoxItem, NcIconSvgWrapper: NcIconSvgWrapper.NcIconSvgWrapper };
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
const formBoxSwitch__input = "_formBoxSwitch__input_hjv1a_20";
|
|
45
|
+
const formBoxSwitch__icon = "_formBoxSwitch__icon_hjv1a_34";
|
|
46
|
+
const style0 = {
|
|
47
|
+
"material-design-icon": "_material-design-icon_hjv1a_12",
|
|
48
|
+
formBoxSwitch__input,
|
|
49
|
+
formBoxSwitch__icon
|
|
50
|
+
};
|
|
51
|
+
var _sfc_render = function render() {
|
|
52
|
+
var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;
|
|
53
|
+
return _c(_setup.NcFormBoxItem, { attrs: { "tag": "label", "for": _setup.inputId }, scopedSlots: _vm._u([_vm.$slots.default || _vm.label ? { key: "default", fn: function() {
|
|
54
|
+
return [_vm._t("default", function() {
|
|
55
|
+
return [_vm._v(" " + _vm._s(_vm.label) + " ")];
|
|
56
|
+
})];
|
|
57
|
+
}, proxy: true } : null, _vm.$slots.description || _vm.description ? { key: "description", fn: function() {
|
|
58
|
+
return [_vm._t("description", function() {
|
|
59
|
+
return [_vm._v(" " + _vm._s(_vm.description) + " ")];
|
|
60
|
+
})];
|
|
61
|
+
}, proxy: true } : null, { key: "icon", fn: function({ descriptionId }) {
|
|
62
|
+
return [_c("input", { directives: [{ name: "model", rawName: "v-model", value: _setup.model, expression: "model" }], class: _vm.$style.formBoxSwitch__input, attrs: { "id": _setup.inputId, "type": "checkbox", "role": "switch", "aria-describedby": descriptionId, "disabled": _vm.disabled }, domProps: { "checked": Array.isArray(_setup.model) ? _vm._i(_setup.model, null) > -1 : _setup.model }, on: { "change": function($event) {
|
|
63
|
+
var $$a = _setup.model, $$el = $event.target, $$c = $$el.checked ? true : false;
|
|
64
|
+
if (Array.isArray($$a)) {
|
|
65
|
+
var $$v = null, $$i = _vm._i($$a, $$v);
|
|
66
|
+
if ($$el.checked) {
|
|
67
|
+
$$i < 0 && (_setup.model = $$a.concat([$$v]));
|
|
68
|
+
} else {
|
|
69
|
+
$$i > -1 && (_setup.model = $$a.slice(0, $$i).concat($$a.slice($$i + 1)));
|
|
70
|
+
}
|
|
71
|
+
} else {
|
|
72
|
+
_setup.model = $$c;
|
|
73
|
+
}
|
|
74
|
+
} } }), _c(_setup.NcIconSvgWrapper, { class: _vm.$style.formBoxSwitch__icon, attrs: { "path": _setup.model ? _setup.mdiToggleSwitch : _setup.mdiToggleSwitchOff, "size": 34, "inline": "" } })];
|
|
75
|
+
} }], null, true) });
|
|
76
|
+
};
|
|
77
|
+
var _sfc_staticRenderFns = [];
|
|
78
|
+
const __cssModules = {
|
|
79
|
+
"$style": style0
|
|
80
|
+
};
|
|
81
|
+
function _sfc_injectStyles(ctx) {
|
|
82
|
+
for (var key in __cssModules) {
|
|
83
|
+
this[key] = __cssModules[key];
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
87
|
+
_sfc_main,
|
|
88
|
+
_sfc_render,
|
|
89
|
+
_sfc_staticRenderFns,
|
|
90
|
+
false,
|
|
91
|
+
_sfc_injectStyles,
|
|
92
|
+
null
|
|
93
|
+
);
|
|
94
|
+
const NcFormBoxSwitch = __component__.exports;
|
|
95
|
+
exports.NcFormBoxSwitch = NcFormBoxSwitch;
|
|
96
|
+
//# sourceMappingURL=NcFormBoxSwitch-BUBD5jli.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcFormBoxSwitch-BUBD5jli.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 { mdiToggleSwitch, mdiToggleSwitchOff } from '@mdi/js'\nimport { useVModel } from '@vueuse/core'\nimport { watch } from 'vue'\nimport NcFormBoxItem from '../NcFormBox/NcFormBoxItem.vue'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.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 // eslint-disable-line vue/no-unused-properties\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<NcIconSvgWrapper\n\t\t\t\t:path=\"model ? mdiToggleSwitch : mdiToggleSwitchOff\"\n\t\t\t\t:class=\"$style.formBoxSwitch__icon\"\n\t\t\t\t:size=\"34 /* --default-clickable-area */\"\n\t\t\t\tinline />\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\n.formBoxSwitch__icon {\n\tcolor: var(--color-text-maxcontrast);\n}\n\ninput:checked + .formBoxSwitch__icon {\n\tcolor: var(--color-primary-element);\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;;;;;;;;;;;;;AAkCA,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|