@nextcloud/vue 8.21.0 → 8.23.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 +100 -0
- package/README.md +71 -65
- package/dist/Components/NcActionButton.cjs +2 -167
- package/dist/Components/NcActionButton.cjs.map +1 -1
- package/dist/Components/NcActionButton.mjs +2 -167
- package/dist/Components/NcActionButton.mjs.map +1 -1
- package/dist/Components/NcActionButtonGroup.cjs +1 -1
- package/dist/Components/NcActionButtonGroup.mjs +1 -1
- package/dist/Components/NcActionCaption.cjs +2 -2
- package/dist/Components/NcActionCaption.cjs.map +1 -1
- package/dist/Components/NcActionCaption.mjs +2 -2
- package/dist/Components/NcActionCaption.mjs.map +1 -1
- package/dist/Components/NcActionCheckbox.cjs +1 -1
- package/dist/Components/NcActionCheckbox.mjs +1 -1
- package/dist/Components/NcActionInput.cjs +1 -1
- package/dist/Components/NcActionInput.mjs +1 -1
- package/dist/Components/NcActionLink.cjs +1 -1
- package/dist/Components/NcActionLink.mjs +1 -1
- package/dist/Components/NcActionRadio.cjs +1 -1
- package/dist/Components/NcActionRadio.mjs +1 -1
- package/dist/Components/NcActionRouter.cjs +1 -1
- package/dist/Components/NcActionRouter.mjs +1 -1
- package/dist/Components/NcActionText.cjs +1 -1
- package/dist/Components/NcActionText.mjs +1 -1
- package/dist/Components/NcActionTextEditable.cjs +1 -1
- package/dist/Components/NcActionTextEditable.mjs +1 -1
- package/dist/Components/NcActions.cjs +1 -1
- package/dist/Components/NcActions.mjs +1 -1
- package/dist/Components/NcAppContent.cjs +1 -1
- package/dist/Components/NcAppContent.mjs +1 -1
- package/dist/Components/NcAppNavigation.cjs +1 -1
- package/dist/Components/NcAppNavigation.mjs +1 -1
- package/dist/Components/NcAppNavigationCaption.cjs +1 -1
- package/dist/Components/NcAppNavigationCaption.mjs +1 -1
- package/dist/Components/NcAppNavigationItem.cjs +1 -1
- package/dist/Components/NcAppNavigationItem.mjs +1 -1
- package/dist/Components/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/NcAppSidebar.cjs +1 -1
- package/dist/Components/NcAppSidebar.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 +2 -2
- package/dist/Components/NcButton.cjs.map +1 -1
- package/dist/Components/NcButton.mjs +2 -2
- package/dist/Components/NcButton.mjs.map +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
- package/dist/Components/NcChip.cjs +5 -5
- package/dist/Components/NcChip.mjs +4 -4
- 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/NcCounterBubble.cjs +1 -1
- package/dist/Components/NcCounterBubble.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/NcDateTime.cjs +1 -1
- package/dist/Components/NcDateTime.mjs +1 -1
- package/dist/Components/NcDateTimePicker.cjs +6 -6
- package/dist/Components/NcDateTimePicker.mjs +6 -6
- package/dist/Components/NcDateTimePickerNative.cjs +22 -18
- package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
- package/dist/Components/NcDateTimePickerNative.mjs +22 -18
- package/dist/Components/NcDateTimePickerNative.mjs.map +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/NcHeaderButton.cjs +2 -2
- package/dist/Components/NcHeaderButton.cjs.map +1 -1
- package/dist/Components/NcHeaderButton.mjs +2 -2
- package/dist/Components/NcHeaderButton.mjs.map +1 -1
- package/dist/Components/NcHeaderMenu.cjs +1 -1
- package/dist/Components/NcHeaderMenu.mjs +1 -1
- package/dist/Components/NcInputField.cjs +1 -1
- package/dist/Components/NcInputField.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 +59 -61
- package/dist/Components/NcModal.cjs.map +1 -1
- package/dist/Components/NcModal.mjs +59 -61
- package/dist/Components/NcModal.mjs.map +1 -1
- package/dist/Components/NcPasswordField.cjs +1 -1
- package/dist/Components/NcPasswordField.mjs +1 -1
- package/dist/Components/NcPopover.cjs +1 -1
- package/dist/Components/NcPopover.mjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
- package/dist/Components/NcRichContenteditable.cjs +2 -2
- package/dist/Components/NcRichContenteditable.mjs +2 -2
- 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/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/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/useHotKey.cjs +22 -5
- package/dist/Composables/useHotKey.cjs.map +1 -1
- package/dist/Composables/useHotKey.mjs +22 -5
- package/dist/Composables/useHotKey.mjs.map +1 -1
- package/dist/Directives/Linkify.cjs +14 -2
- package/dist/Directives/Linkify.cjs.map +1 -1
- package/dist/Directives/Linkify.mjs +11 -1
- package/dist/Directives/Linkify.mjs.map +1 -1
- package/dist/Functions/contactsMenu.cjs +21 -0
- package/dist/Functions/contactsMenu.cjs.map +1 -0
- package/dist/Functions/contactsMenu.mjs +21 -0
- package/dist/Functions/contactsMenu.mjs.map +1 -0
- 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/Mixins/richEditor.cjs +1 -2
- package/dist/Mixins/richEditor.cjs.map +1 -1
- package/dist/Mixins/richEditor.mjs +1 -2
- package/dist/Mixins/richEditor.mjs.map +1 -1
- package/dist/assets/{NcActionButton-CNq6xIdS.css → NcActionButton-BYN2SUN0.css} +21 -21
- package/dist/assets/{NcActionCaption-JVhz4Wp7.css → NcActionCaption-BNDtcWJ7.css} +4 -4
- package/dist/assets/{NcActionCheckbox-DeW2CCVc.css → NcActionCheckbox-Dan0EvGm.css} +18 -18
- package/dist/assets/{NcActionInput-CNRERfyh.css → NcActionInput-Dz21fyVD.css} +69 -65
- package/dist/assets/{NcActionLink-CC6a7Hsf.css → NcActionLink-BG9B9dP4.css} +6 -5
- package/dist/assets/{NcActionRadio-DC7Wp9rR.css → NcActionRadio-C87waXE-.css} +18 -18
- package/dist/assets/{NcActionRouter-CsIBHw6E.css → NcActionRouter-BAGuUfFu.css} +6 -5
- package/dist/assets/{NcActionText-BSD_HYx4.css → NcActionText-Cjp26Bn0.css} +6 -5
- package/dist/assets/{NcActionTextEditable-Cg16Q4zr.css → NcActionTextEditable-1TXeJ5zp.css} +68 -64
- package/dist/assets/{NcActions-DM_LoRlx.css → NcActions-C4SuFczn.css} +12 -15
- package/dist/assets/{NcAppContent-D97xom6z.css → NcAppContent-BO0ksFwD.css} +19 -19
- package/dist/assets/{NcAppNavigation-CBN6X2dT.css → NcAppNavigation-CJj8AvqM.css} +13 -13
- package/dist/assets/{NcAppNavigationCaption-Dt5K_hKD.css → NcAppNavigationCaption-DU9PxTvu.css} +9 -9
- package/dist/assets/{NcAppNavigationItem-CNZsPcla.css → NcAppNavigationItem-lh9Say1M.css} +39 -39
- package/dist/assets/{NcAppNavigationNewItem-CQ1f40wK.css → NcAppNavigationNewItem-fUP3wQTQ.css} +37 -37
- package/dist/assets/{NcAppNavigationSettings-BV_QS8jh.css → NcAppNavigationSettings-vd47rlNY.css} +14 -14
- package/dist/assets/{NcAppNavigationToggle-Chtb7sE7.css → NcAppNavigationToggle-B6FCDJp7.css} +3 -3
- package/dist/assets/{NcAvatar-xe4gdFKk.css → NcAvatar-CcJlFpcI.css} +25 -25
- package/dist/assets/{NcButton-BHDLon1_.css → NcButton-CfOAX-eQ.css} +47 -47
- package/dist/assets/{NcCheckboxRadioSwitch-D0kAZROF.css → NcCheckboxRadioSwitch-DuFrRU9C.css} +45 -42
- package/dist/assets/{NcColorPicker-Dw2wy2tU.css → NcColorPicker-C1DuuANb.css} +28 -28
- package/dist/assets/{NcCounterBubble-DdYmHnng.css → NcCounterBubble-CI-DxLjL.css} +7 -7
- package/dist/assets/{NcDashboardWidgetItem-BtOuK4mf.css → NcDashboardWidgetItem-B8_6-_k8.css} +16 -16
- package/dist/assets/{NcDateTimePicker-Dp2wSSiQ.css → NcDateTimePicker-MkokZozI.css} +22 -18
- package/dist/assets/NcDateTimePickerNative-DVGEymgr.css +60 -0
- package/dist/assets/{NcEmojiPicker-BNCW1Q94.css → NcEmojiPicker-rk5qcSl7.css} +75 -57
- package/dist/assets/{NcHeaderButton-DH4Qtw3P.css → NcHeaderButton-BPkJ5wxD.css} +7 -7
- package/dist/assets/{NcHeaderMenu-C2XbJMYL.css → NcHeaderMenu-BYjnMPPl.css} +11 -11
- package/dist/assets/{NcInputField-CUsdr7lV.css → NcInputField-CzryIHRa.css} +32 -32
- package/dist/assets/{NcListItem-BBu5UTTe.css → NcListItem-GE5S37TT.css} +48 -47
- package/dist/assets/{NcMentionBubble-Bt71nB8X.css → NcMentionBubble-BL05HUeF.css} +12 -13
- package/dist/assets/{NcModal-BBKX-T6V.css → NcModal-ZfCDJxwd.css} +63 -61
- package/dist/assets/{NcPasswordField-DZ6dcMzH.css → NcPasswordField-whtKJFcB.css} +2 -2
- package/dist/assets/{NcPopover-TS4CW9MJ.css → NcPopover-DpakVVxI.css} +16 -5
- package/dist/assets/{NcRelatedResourcesPanel-DIhZx6lY.css → NcRelatedResourcesPanel-DSf7TVcC.css} +14 -14
- package/dist/assets/{NcRichContenteditable-DkYYyQTJ.css → NcRichContenteditable-BV6g3dmd.css} +53 -42
- package/dist/assets/NcRichText-zt8ALFHi.css +323 -0
- package/dist/assets/{NcSettingsSection-Dlaob2ni.css → NcSettingsSection-_mX6UqM_.css} +9 -9
- package/dist/assets/{NcUserBubble-CNid1YOT.css → NcUserBubble-BsTKRhKz.css} +11 -11
- package/dist/assets/{referencePickerModal-BhhuyO3J.css → referencePickerModal-CTumspFH.css} +46 -46
- package/dist/chunks/ChevronLeft-BK4j9oVH.mjs +37 -0
- package/dist/chunks/ChevronLeft-BK4j9oVH.mjs.map +1 -0
- package/dist/chunks/ChevronLeft-CAiEPWc5.cjs +36 -0
- package/dist/chunks/ChevronLeft-CAiEPWc5.cjs.map +1 -0
- package/dist/chunks/{GenColors-DpvFVzBN.mjs → GenColors-Bp97WTnT.mjs} +1 -1
- package/dist/chunks/{GenColors-DpvFVzBN.mjs.map → GenColors-Bp97WTnT.mjs.map} +1 -1
- package/dist/chunks/{GenColors-iV_vrBr4.cjs → GenColors-DH0trnvh.cjs} +1 -1
- package/dist/chunks/{GenColors-iV_vrBr4.cjs.map → GenColors-DH0trnvh.cjs.map} +1 -1
- package/dist/chunks/NcActionButton-CEysTg4c.mjs +177 -0
- package/dist/chunks/NcActionButton-CEysTg4c.mjs.map +1 -0
- package/dist/chunks/NcActionButton-DcpUnqA7.cjs +176 -0
- package/dist/chunks/NcActionButton-DcpUnqA7.cjs.map +1 -0
- package/dist/chunks/{NcActionButtonGroup-ue4dTx-p.mjs → NcActionButtonGroup-CCsqO10Q.mjs} +1 -1
- package/dist/chunks/{NcActionButtonGroup-ue4dTx-p.mjs.map → NcActionButtonGroup-CCsqO10Q.mjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-C0nQ7J_W.cjs → NcActionButtonGroup-CljgCf7q.cjs} +1 -1
- package/dist/chunks/{NcActionButtonGroup-C0nQ7J_W.cjs.map → NcActionButtonGroup-CljgCf7q.cjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-C_wvm9IO.mjs → NcActionCheckbox-BnL71Qmi.mjs} +2 -2
- package/dist/chunks/{NcActionCheckbox-C_wvm9IO.mjs.map → NcActionCheckbox-BnL71Qmi.mjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-DwU16qcU.cjs → NcActionCheckbox-Dd5Y6f63.cjs} +2 -2
- package/dist/chunks/{NcActionCheckbox-DwU16qcU.cjs.map → NcActionCheckbox-Dd5Y6f63.cjs.map} +1 -1
- package/dist/chunks/{NcActionInput-D0qZP5ag.cjs → NcActionInput-Co580YPc.cjs} +7 -7
- package/dist/chunks/{NcActionInput-D0qZP5ag.cjs.map → NcActionInput-Co580YPc.cjs.map} +1 -1
- package/dist/chunks/{NcActionInput-4-s29xoN.mjs → NcActionInput-DbFfZx2L.mjs} +7 -7
- package/dist/chunks/{NcActionInput-4-s29xoN.mjs.map → NcActionInput-DbFfZx2L.mjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-vHwjWOHS.cjs → NcActionRadio-BQ0jAh5V.cjs} +16 -8
- package/dist/chunks/NcActionRadio-BQ0jAh5V.cjs.map +1 -0
- package/dist/chunks/{NcActionRadio-Dl6W62Vm.mjs → NcActionRadio-CCTupqRR.mjs} +14 -8
- package/dist/chunks/NcActionRadio-CCTupqRR.mjs.map +1 -0
- package/dist/chunks/{NcActionTextEditable-97R7dFen.cjs → NcActionTextEditable-C-ZP8_Tn.cjs} +8 -4
- package/dist/chunks/NcActionTextEditable-C-ZP8_Tn.cjs.map +1 -0
- package/dist/chunks/{NcActionTextEditable-DZCFtqIP.mjs → NcActionTextEditable-JRD-G0CT.mjs} +8 -4
- package/dist/chunks/NcActionTextEditable-JRD-G0CT.mjs.map +1 -0
- package/dist/chunks/{NcActions-CCYNSnCn.cjs → NcActions-B9hBFogn.cjs} +5 -30
- package/dist/chunks/{NcActions-NA1n25Vt.mjs.map → NcActions-B9hBFogn.cjs.map} +1 -1
- package/dist/chunks/{NcActions-NA1n25Vt.mjs → NcActions-DV02tDLT.mjs} +5 -30
- package/dist/chunks/{NcActions-CCYNSnCn.cjs.map → NcActions-DV02tDLT.mjs.map} +1 -1
- package/dist/chunks/{NcAppContent-CIMgDnJM.mjs → NcAppContent-D3ku3oxL.mjs} +18 -8
- package/dist/chunks/NcAppContent-D3ku3oxL.mjs.map +1 -0
- package/dist/chunks/{NcAppContent-DdzUMomS.cjs → NcAppContent-DdfRZmsz.cjs} +18 -8
- package/dist/chunks/NcAppContent-DdfRZmsz.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-BuKJwvwT.cjs → NcAppNavigation-DQnt1SXa.cjs} +42 -9
- package/dist/chunks/NcAppNavigation-DQnt1SXa.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-wz0Fsxe4.mjs → NcAppNavigation-ZFb93kAU.mjs} +42 -9
- package/dist/chunks/NcAppNavigation-ZFb93kAU.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationCaption-DBKM-x5x.mjs → NcAppNavigationCaption-DXufL2i4.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationCaption-DBKM-x5x.mjs.map → NcAppNavigationCaption-DXufL2i4.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-DUPonEWi.cjs → NcAppNavigationCaption-LypfQqMe.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationCaption-DUPonEWi.cjs.map → NcAppNavigationCaption-LypfQqMe.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-Y_CVXzId.cjs → NcAppNavigationItem-D-1kyfhH.cjs} +12 -12
- package/dist/chunks/NcAppNavigationItem-D-1kyfhH.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationItem-BkkuFdfa.mjs → NcAppNavigationItem-rJoyDMUX.mjs} +11 -11
- package/dist/chunks/NcAppNavigationItem-rJoyDMUX.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationNewItem-BFFG7VDH.mjs → NcAppNavigationNewItem-CO4Mau1P.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationNewItem-BFFG7VDH.mjs.map → NcAppNavigationNewItem-CO4Mau1P.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-B76-cCDH.cjs → NcAppNavigationNewItem-DV3fOuWq.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationNewItem-B76-cCDH.cjs.map → NcAppNavigationNewItem-DV3fOuWq.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-DVBgbwyd.cjs → NcAppNavigationSearch-BVBeLYXH.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationSearch-DVBgbwyd.cjs.map → NcAppNavigationSearch-BVBeLYXH.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-Bg-WTyms.mjs → NcAppNavigationSearch-DpaZRVqv.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationSearch-Bg-WTyms.mjs.map → NcAppNavigationSearch-DpaZRVqv.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-BH5t68oV.cjs → NcAppNavigationSettings-CpBSr0CG.cjs} +5 -6
- package/dist/chunks/{NcAppNavigationSettings-BH5t68oV.cjs.map → NcAppNavigationSettings-CpBSr0CG.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-CieV4qU5.mjs → NcAppNavigationSettings-DgUbSU0v.mjs} +5 -6
- package/dist/chunks/{NcAppNavigationSettings-CieV4qU5.mjs.map → NcAppNavigationSettings-DgUbSU0v.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-Dwg-dMWx.cjs → NcAppNavigationToggle-BbDj_xom.cjs} +10 -6
- package/dist/chunks/NcAppNavigationToggle-BbDj_xom.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationToggle-Dw0ZPjy2.mjs → NcAppNavigationToggle-Z_4QmE4l.mjs} +10 -6
- package/dist/chunks/NcAppNavigationToggle-Z_4QmE4l.mjs.map +1 -0
- package/dist/chunks/{NcAppSettingsDialog-Dkl3cqU-.cjs → NcAppSettingsDialog-CLTp2nax.cjs} +3 -3
- package/dist/chunks/{NcAppSettingsDialog-Dkl3cqU-.cjs.map → NcAppSettingsDialog-CLTp2nax.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-B4GS8urN.mjs → NcAppSettingsDialog-DEPymL7F.mjs} +3 -3
- package/dist/chunks/{NcAppSettingsDialog-B4GS8urN.mjs.map → NcAppSettingsDialog-DEPymL7F.mjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-DaJVGxLh.mjs → NcAppSidebar-C149M_Fz.mjs} +4 -4
- package/dist/chunks/{NcAppSidebar-DaJVGxLh.mjs.map → NcAppSidebar-C149M_Fz.mjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-B75YJPC-.cjs → NcAppSidebar-CGra4INE.cjs} +4 -4
- package/dist/chunks/{NcAppSidebar-B75YJPC-.cjs.map → NcAppSidebar-CGra4INE.cjs.map} +1 -1
- package/dist/chunks/{NcAvatar-DypzACJs.cjs → NcAvatar-BGtTigLZ.cjs} +37 -15
- package/dist/chunks/NcAvatar-BGtTigLZ.cjs.map +1 -0
- package/dist/chunks/{NcAvatar-B8e2YFLI.mjs → NcAvatar-DTd55tcm.mjs} +37 -15
- package/dist/chunks/NcAvatar-DTd55tcm.mjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-DVn5-KGF.cjs → NcBreadcrumb-DxF8JaOu.cjs} +1 -1
- package/dist/chunks/{NcBreadcrumb-DVn5-KGF.cjs.map → NcBreadcrumb-DxF8JaOu.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumb-MucRC9Y6.mjs → NcBreadcrumb-bWA_vFfP.mjs} +1 -1
- package/dist/chunks/{NcBreadcrumb-MucRC9Y6.mjs.map → NcBreadcrumb-bWA_vFfP.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-JqPHfTRj.cjs → NcBreadcrumbs-IhjgM1JZ.cjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-JqPHfTRj.cjs.map → NcBreadcrumbs-IhjgM1JZ.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-D59osZ3o.mjs → NcBreadcrumbs-sClaGRTt.mjs} +3 -3
- package/dist/chunks/{NcBreadcrumbs-D59osZ3o.mjs.map → NcBreadcrumbs-sClaGRTt.mjs.map} +1 -1
- package/dist/chunks/{NcCheckboxRadioSwitch-DdquK4fW.cjs → NcCheckboxRadioSwitch-BeqHHlB9.cjs} +3 -3
- package/dist/chunks/{NcCheckboxRadioSwitch-DdquK4fW.cjs.map → NcCheckboxRadioSwitch-BeqHHlB9.cjs.map} +1 -1
- package/dist/chunks/{NcCheckboxRadioSwitch-R1y0mLbC.mjs → NcCheckboxRadioSwitch-TK3dfQ23.mjs} +3 -3
- package/dist/chunks/{NcCheckboxRadioSwitch-R1y0mLbC.mjs.map → NcCheckboxRadioSwitch-TK3dfQ23.mjs.map} +1 -1
- package/dist/chunks/{NcCollectionList-BBs48HVU.cjs → NcCollectionList-960B7fbH.cjs} +8 -8
- package/dist/chunks/{NcCollectionList-BBs48HVU.cjs.map → NcCollectionList-960B7fbH.cjs.map} +1 -1
- package/dist/chunks/{NcCollectionList-COYakeMz.mjs → NcCollectionList-AVScwDI5.mjs} +7 -7
- package/dist/chunks/{NcCollectionList-COYakeMz.mjs.map → NcCollectionList-AVScwDI5.mjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-Df6UVuYn.cjs → NcColorPicker-Cfc8caOi.cjs} +23 -18
- package/dist/chunks/NcColorPicker-Cfc8caOi.cjs.map +1 -0
- package/dist/chunks/{NcColorPicker-8wU8rMbF.mjs → NcColorPicker-CxUVj8Z0.mjs} +23 -18
- package/dist/chunks/NcColorPicker-CxUVj8Z0.mjs.map +1 -0
- package/dist/chunks/{NcContent-BXi18ILU.cjs → NcContent-8DrfnMbH.cjs} +2 -2
- package/dist/chunks/{NcContent-BXi18ILU.cjs.map → NcContent-8DrfnMbH.cjs.map} +1 -1
- package/dist/chunks/{NcContent-BEcHmywv.mjs → NcContent-CUGljSwq.mjs} +2 -2
- package/dist/chunks/{NcContent-BEcHmywv.mjs.map → NcContent-CUGljSwq.mjs.map} +1 -1
- package/dist/chunks/{NcCounterBubble-DF2rwIo4.cjs → NcCounterBubble-BRrUO34D.cjs} +19 -8
- package/dist/chunks/{NcCounterBubble-DF2rwIo4.cjs.map → NcCounterBubble-BRrUO34D.cjs.map} +1 -1
- package/dist/chunks/{NcCounterBubble-M1q9GRkH.mjs → NcCounterBubble-CDfRYl8B.mjs} +19 -8
- package/dist/chunks/{NcCounterBubble-M1q9GRkH.mjs.map → NcCounterBubble-CDfRYl8B.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-GDdmCQm-.mjs → NcDashboardWidget-52sFYtbl.mjs} +4 -4
- package/dist/chunks/{NcDashboardWidget-GDdmCQm-.mjs.map → NcDashboardWidget-52sFYtbl.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-Bu-WC7kg.cjs → NcDashboardWidget-DLT7_5SX.cjs} +4 -4
- package/dist/chunks/{NcDashboardWidget-Bu-WC7kg.cjs.map → NcDashboardWidget-DLT7_5SX.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-CI59K-wE.cjs → NcDashboardWidgetItem-D8hdHDZu.cjs} +6 -6
- package/dist/chunks/{NcDashboardWidgetItem-CI59K-wE.cjs.map → NcDashboardWidgetItem-D8hdHDZu.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-vMP_Z6ay.mjs → NcDashboardWidgetItem-DU3WZN-y.mjs} +5 -5
- package/dist/chunks/{NcDashboardWidgetItem-vMP_Z6ay.mjs.map → NcDashboardWidgetItem-DU3WZN-y.mjs.map} +1 -1
- package/dist/chunks/{NcDateTime-CaJHhgab.cjs → NcDateTime-BRGrNYn0.cjs} +1 -1
- package/dist/chunks/{NcDateTime-CaJHhgab.cjs.map → NcDateTime-BRGrNYn0.cjs.map} +1 -1
- package/dist/chunks/{NcDateTime-D5UaJ0tw.mjs → NcDateTime-CGh9MkHy.mjs} +1 -1
- package/dist/chunks/{NcDateTime-D5UaJ0tw.mjs.map → NcDateTime-CGh9MkHy.mjs.map} +1 -1
- package/dist/chunks/{NcDialog-CzWTz2Qr.mjs → NcDialog-B9vjcT1J.mjs} +1 -1
- package/dist/chunks/{NcDialog-CzWTz2Qr.mjs.map → NcDialog-B9vjcT1J.mjs.map} +1 -1
- package/dist/chunks/{NcDialog-CWGgSCpv.cjs → NcDialog-CfYmQm13.cjs} +1 -1
- package/dist/chunks/{NcDialog-CWGgSCpv.cjs.map → NcDialog-CfYmQm13.cjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-B5jVZIGf.mjs → NcDialogButton-B2SWZUHD.mjs} +2 -2
- package/dist/chunks/{NcDialogButton-B5jVZIGf.mjs.map → NcDialogButton-B2SWZUHD.mjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-B7d1LWFN.cjs → NcDialogButton-HxcYXT5L.cjs} +2 -2
- package/dist/chunks/{NcDialogButton-B7d1LWFN.cjs.map → NcDialogButton-HxcYXT5L.cjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-BSoMzxJl.mjs → NcEmojiPicker-BXZBDiWy.mjs} +70 -43
- package/dist/chunks/NcEmojiPicker-BXZBDiWy.mjs.map +1 -0
- package/dist/chunks/{NcEmojiPicker-XRtfmbk_.cjs → NcEmojiPicker-Cpll3Z7O.cjs} +70 -43
- package/dist/chunks/NcEmojiPicker-Cpll3Z7O.cjs.map +1 -0
- package/dist/chunks/{NcHeaderMenu-CzS2doDR.cjs → NcHeaderMenu-BaHhnhN0.cjs} +3 -4
- package/dist/chunks/NcHeaderMenu-BaHhnhN0.cjs.map +1 -0
- package/dist/chunks/{NcHeaderMenu-vLqcJ-_w.mjs → NcHeaderMenu-CLcpStap.mjs} +3 -4
- package/dist/chunks/NcHeaderMenu-CLcpStap.mjs.map +1 -0
- package/dist/chunks/{NcInputConfirmCancel-DwmLGFYb.mjs → NcInputConfirmCancel-ruvJ51Mx.mjs} +2 -2
- package/dist/chunks/{NcInputConfirmCancel-DwmLGFYb.mjs.map → NcInputConfirmCancel-ruvJ51Mx.mjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-CYQsG_3t.cjs → NcInputConfirmCancel-usP54-1l.cjs} +2 -2
- package/dist/chunks/{NcInputConfirmCancel-CYQsG_3t.cjs.map → NcInputConfirmCancel-usP54-1l.cjs.map} +1 -1
- package/dist/chunks/{NcInputField-ixTTHy3h.mjs → NcInputField-CU5a68Pc.mjs} +6 -7
- package/dist/chunks/NcInputField-CU5a68Pc.mjs.map +1 -0
- package/dist/chunks/{NcInputField-CbBdbdE8.cjs → NcInputField-DkhKrb8k.cjs} +6 -7
- package/dist/chunks/NcInputField-DkhKrb8k.cjs.map +1 -0
- package/dist/chunks/{NcListItem-DMaVvwXJ.cjs → NcListItem-DD-ogntB.cjs} +7 -12
- package/dist/chunks/{NcListItem-DMaVvwXJ.cjs.map → NcListItem-DD-ogntB.cjs.map} +1 -1
- package/dist/chunks/{NcListItem-DCh0J8Z4.mjs → NcListItem-Du0jflbS.mjs} +7 -12
- package/dist/chunks/{NcListItem-DCh0J8Z4.mjs.map → NcListItem-Du0jflbS.mjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-C6Ok3G7x.mjs → NcListItemIcon-21-8tZ2J.mjs} +2 -3
- package/dist/chunks/{NcListItemIcon-C6Ok3G7x.mjs.map → NcListItemIcon-21-8tZ2J.mjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-BLvWsnbD.cjs → NcListItemIcon-BP2C6QPu.cjs} +2 -3
- package/dist/chunks/{NcListItemIcon-BLvWsnbD.cjs.map → NcListItemIcon-BP2C6QPu.cjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-CAGGdgVF.mjs → NcPasswordField-C6zTx4jJ.mjs} +16 -13
- package/dist/chunks/NcPasswordField-C6zTx4jJ.mjs.map +1 -0
- package/dist/chunks/{NcPasswordField-DLuNgJF2.cjs → NcPasswordField-DbFsY4Md.cjs} +18 -15
- package/dist/chunks/NcPasswordField-DbFsY4Md.cjs.map +1 -0
- package/dist/chunks/{NcPopover-MxwUgZu1.cjs → NcPopover-BKlH1mbx.cjs} +12 -13
- package/dist/chunks/NcPopover-BKlH1mbx.cjs.map +1 -0
- package/dist/chunks/{NcPopover-DzYbNu-I.mjs → NcPopover-DFCPlZpS.mjs} +12 -13
- package/dist/chunks/NcPopover-DFCPlZpS.mjs.map +1 -0
- package/dist/chunks/{NcRelatedResourcesPanel-BRoP-NiB.cjs → NcRelatedResourcesPanel-BlasfRyj.cjs} +11 -6
- package/dist/chunks/NcRelatedResourcesPanel-BlasfRyj.cjs.map +1 -0
- package/dist/chunks/{NcRelatedResourcesPanel-Bts9eDYA.mjs → NcRelatedResourcesPanel-D1wjzlCt.mjs} +11 -6
- package/dist/chunks/NcRelatedResourcesPanel-D1wjzlCt.mjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-BznZW1Mm.mjs → NcRichContenteditable-BGdgK6Rt.mjs} +21 -21
- package/dist/chunks/NcRichContenteditable-BGdgK6Rt.mjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-GOiGqL9S.cjs → NcRichContenteditable-DVD649BN.cjs} +21 -21
- package/dist/chunks/NcRichContenteditable-DVD649BN.cjs.map +1 -0
- package/dist/chunks/{NcRichText-BNxuFkK-.cjs → NcRichText-CnnsKa8W.cjs} +28 -41
- package/dist/chunks/NcRichText-CnnsKa8W.cjs.map +1 -0
- package/dist/chunks/{NcRichText-CytzoTXW.mjs → NcRichText-LKapJOAf.mjs} +29 -42
- package/dist/chunks/NcRichText-LKapJOAf.mjs.map +1 -0
- package/dist/chunks/{NcSelect-DvGJHzaa.mjs → NcSelect-BvpEfjtz.mjs} +3 -3
- package/dist/chunks/{NcSelect-DvGJHzaa.mjs.map → NcSelect-BvpEfjtz.mjs.map} +1 -1
- package/dist/chunks/{NcSelect-Cp83bFsi.cjs → NcSelect-Cr_CFqNk.cjs} +3 -3
- package/dist/chunks/{NcSelect-Cp83bFsi.cjs.map → NcSelect-Cr_CFqNk.cjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-Bi9DIwx_.cjs → NcSelectTags-BxJEJZ0W.cjs} +2 -2
- package/dist/chunks/{NcSelectTags-Bi9DIwx_.cjs.map → NcSelectTags-BxJEJZ0W.cjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-B4PjZQtt.mjs → NcSelectTags-yVos6fB8.mjs} +2 -2
- package/dist/chunks/{NcSelectTags-B4PjZQtt.mjs.map → NcSelectTags-yVos6fB8.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-DhZ_giTf.mjs → NcSettingsInputText-DzjW5iHT.mjs} +2 -2
- package/dist/chunks/{NcSettingsInputText-DhZ_giTf.mjs.map → NcSettingsInputText-DzjW5iHT.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-BYq049Qz.cjs → NcSettingsInputText-GL0a7etX.cjs} +2 -2
- package/dist/chunks/{NcSettingsInputText-BYq049Qz.cjs.map → NcSettingsInputText-GL0a7etX.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-B7SqDXbX.mjs → NcSettingsSection-BXxHFEGz.mjs} +4 -4
- package/dist/chunks/{NcSettingsSection-B7SqDXbX.mjs.map → NcSettingsSection-BXxHFEGz.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-Dn7Qmknm.cjs → NcSettingsSection-CJYVADt2.cjs} +4 -4
- package/dist/chunks/{NcSettingsSection-Dn7Qmknm.cjs.map → NcSettingsSection-CJYVADt2.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-DypyXuEW.cjs → NcSettingsSelectGroup-BTnOlySM.cjs} +3 -3
- package/dist/chunks/{NcSettingsSelectGroup-DypyXuEW.cjs.map → NcSettingsSelectGroup-BTnOlySM.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-BAhG6V1R.mjs → NcSettingsSelectGroup-BiI2D550.mjs} +3 -3
- package/dist/chunks/{NcSettingsSelectGroup-BAhG6V1R.mjs.map → NcSettingsSelectGroup-BiI2D550.mjs.map} +1 -1
- package/dist/chunks/{NcTextField-rCaBV_TN.cjs → NcTextField-BKXPIe0I.cjs} +9 -5
- package/dist/chunks/NcTextField-BKXPIe0I.cjs.map +1 -0
- package/dist/chunks/{NcTextField-8RXOuqAy.mjs → NcTextField-CIiNGo2q.mjs} +9 -5
- package/dist/chunks/NcTextField-CIiNGo2q.mjs.map +1 -0
- package/dist/chunks/{NcTimezonePicker-D64nWJh7.mjs → NcTimezonePicker-B5lkrpg4.mjs} +4 -4
- package/dist/chunks/{NcTimezonePicker-D64nWJh7.mjs.map → NcTimezonePicker-B5lkrpg4.mjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-B5ps-VnZ.cjs → NcTimezonePicker-CouwhWKh.cjs} +4 -4
- package/dist/chunks/{NcTimezonePicker-B5ps-VnZ.cjs.map → NcTimezonePicker-CouwhWKh.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-Q0TscgXh.mjs → NcUserBubble-7svwYkFv.mjs} +5 -5
- package/dist/chunks/{NcUserBubble-Q0TscgXh.mjs.map → NcUserBubble-7svwYkFv.mjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-Cg86HaKF.cjs → NcUserBubble-CT8n4fXf.cjs} +5 -5
- package/dist/chunks/{NcUserBubble-Cg86HaKF.cjs.map → NcUserBubble-CT8n4fXf.cjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-CvuiXAZR.mjs → NcUserStatusIcon-BRDxSfqh.mjs} +3 -3
- package/dist/chunks/{NcUserStatusIcon-CvuiXAZR.mjs.map → NcUserStatusIcon-BRDxSfqh.mjs.map} +1 -1
- package/dist/chunks/{NcUserStatusIcon-CP1EGHie.cjs → NcUserStatusIcon-CRX6G1lZ.cjs} +3 -3
- package/dist/chunks/{NcUserStatusIcon-CP1EGHie.cjs.map → NcUserStatusIcon-CRX6G1lZ.cjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-ClDcATYc.cjs → ScopeComponent-DumACiuv.cjs} +1 -1
- package/dist/chunks/{ScopeComponent-ClDcATYc.cjs.map → ScopeComponent-DumACiuv.cjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-BLLOK04K.mjs → ScopeComponent-l9iK4gT7.mjs} +1 -1
- package/dist/chunks/{ScopeComponent-BLLOK04K.mjs.map → ScopeComponent-l9iK4gT7.mjs.map} +1 -1
- package/dist/chunks/_l10n-BFZBMn-A.mjs +130 -0
- package/dist/chunks/_l10n-BFZBMn-A.mjs.map +1 -0
- package/dist/chunks/_l10n-CUjmuQOi.cjs +129 -0
- package/dist/chunks/{_l10n-Ch5mEdUH.cjs.map → _l10n-CUjmuQOi.cjs.map} +1 -1
- package/dist/chunks/{index-bI_wyL5-.cjs → index-BiECbTbJ.cjs} +3 -4
- package/dist/chunks/index-BiECbTbJ.cjs.map +1 -0
- package/dist/chunks/{index-bjwozrEX.mjs → index-G8WQDZ8G.mjs} +3 -4
- package/dist/chunks/index-G8WQDZ8G.mjs.map +1 -0
- package/dist/chunks/logger-3HuiEIF6.cjs +4 -0
- package/dist/chunks/logger-3HuiEIF6.cjs.map +1 -0
- package/dist/chunks/logger-D3RVzcfQ.mjs +5 -0
- package/dist/chunks/logger-D3RVzcfQ.mjs.map +1 -0
- package/dist/chunks/{referencePickerModal-C4eGo6D2.cjs → referencePickerModal-C81hzdRI.cjs} +14 -14
- package/dist/chunks/referencePickerModal-C81hzdRI.cjs.map +1 -0
- package/dist/chunks/{referencePickerModal-C6YJvRC9.mjs → referencePickerModal-O217yxI1.mjs} +14 -14
- package/dist/chunks/referencePickerModal-O217yxI1.mjs.map +1 -0
- package/dist/chunks/{usernameToColor-Cx2qDZ1W.mjs → usernameToColor-D4cWttCX.mjs} +1 -1
- package/dist/chunks/{usernameToColor-Cx2qDZ1W.mjs.map → usernameToColor-D4cWttCX.mjs.map} +1 -1
- package/dist/chunks/{usernameToColor-CWxjw-Pq.cjs → usernameToColor-D_kVgtXG.cjs} +1 -1
- package/dist/chunks/{usernameToColor-CWxjw-Pq.cjs.map → usernameToColor-D_kVgtXG.cjs.map} +1 -1
- package/dist/composables/useFormatDateTime.d.ts +20 -21
- package/dist/composables/useIsDarkTheme/index.d.ts +0 -1
- package/dist/functions/contactsMenu/index.d.ts +40 -0
- package/dist/functions/dialog/index.d.ts +0 -1
- package/dist/functions/index.d.ts +1 -0
- package/dist/index.cjs +56 -53
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +57 -54
- package/dist/index.mjs.map +1 -1
- package/dist/plugin.d.ts +0 -1
- package/dist/utils/logger.d.ts +5 -0
- package/package.json +29 -11
- package/dist/assets/NcDateTimePickerNative-BfZfqRvD.css +0 -47
- package/dist/assets/NcRichText-BlRmdWCX.css +0 -412
- package/dist/chunks/Linkify-BtgR-dXX.mjs +0 -14
- package/dist/chunks/Linkify-BtgR-dXX.mjs.map +0 -1
- package/dist/chunks/Linkify-yeOn5L6T.cjs +0 -15
- package/dist/chunks/Linkify-yeOn5L6T.cjs.map +0 -1
- package/dist/chunks/NcActionRadio-Dl6W62Vm.mjs.map +0 -1
- package/dist/chunks/NcActionRadio-vHwjWOHS.cjs.map +0 -1
- package/dist/chunks/NcActionTextEditable-97R7dFen.cjs.map +0 -1
- package/dist/chunks/NcActionTextEditable-DZCFtqIP.mjs.map +0 -1
- package/dist/chunks/NcAppContent-CIMgDnJM.mjs.map +0 -1
- package/dist/chunks/NcAppContent-DdzUMomS.cjs.map +0 -1
- package/dist/chunks/NcAppNavigation-BuKJwvwT.cjs.map +0 -1
- package/dist/chunks/NcAppNavigation-wz0Fsxe4.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-BkkuFdfa.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-Y_CVXzId.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-Dw0ZPjy2.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-Dwg-dMWx.cjs.map +0 -1
- package/dist/chunks/NcAvatar-B8e2YFLI.mjs.map +0 -1
- package/dist/chunks/NcAvatar-DypzACJs.cjs.map +0 -1
- package/dist/chunks/NcColorPicker-8wU8rMbF.mjs.map +0 -1
- package/dist/chunks/NcColorPicker-Df6UVuYn.cjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-BSoMzxJl.mjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-XRtfmbk_.cjs.map +0 -1
- package/dist/chunks/NcHeaderMenu-CzS2doDR.cjs.map +0 -1
- package/dist/chunks/NcHeaderMenu-vLqcJ-_w.mjs.map +0 -1
- package/dist/chunks/NcInputField-CbBdbdE8.cjs.map +0 -1
- package/dist/chunks/NcInputField-ixTTHy3h.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-CAGGdgVF.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-DLuNgJF2.cjs.map +0 -1
- package/dist/chunks/NcPopover-DzYbNu-I.mjs.map +0 -1
- package/dist/chunks/NcPopover-MxwUgZu1.cjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-BRoP-NiB.cjs.map +0 -1
- package/dist/chunks/NcRelatedResourcesPanel-Bts9eDYA.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-BznZW1Mm.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-GOiGqL9S.cjs.map +0 -1
- package/dist/chunks/NcRichText-BNxuFkK-.cjs.map +0 -1
- package/dist/chunks/NcRichText-CytzoTXW.mjs.map +0 -1
- package/dist/chunks/NcTextField-8RXOuqAy.mjs.map +0 -1
- package/dist/chunks/NcTextField-rCaBV_TN.cjs.map +0 -1
- package/dist/chunks/_l10n-B-QPoWAJ.mjs +0 -132
- package/dist/chunks/_l10n-B-QPoWAJ.mjs.map +0 -1
- package/dist/chunks/_l10n-Ch5mEdUH.cjs +0 -131
- package/dist/chunks/index-bI_wyL5-.cjs.map +0 -1
- package/dist/chunks/index-bjwozrEX.mjs.map +0 -1
- package/dist/chunks/referencePickerModal-C4eGo6D2.cjs.map +0 -1
- package/dist/chunks/referencePickerModal-C6YJvRC9.mjs.map +0 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
require('../assets/NcDateTimePickerNative-
|
|
1
|
+
require('../assets/NcDateTimePickerNative-DVGEymgr.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const useModelMigration = require("../chunks/useModelMigration-D5zhrNXr.cjs");
|
|
4
|
+
const GenRandomId = require("../chunks/GenRandomId-BQDud3d4.cjs");
|
|
4
5
|
const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
5
|
-
const ScopeComponent = require("../chunks/ScopeComponent-
|
|
6
|
+
const ScopeComponent = require("../chunks/ScopeComponent-DumACiuv.cjs");
|
|
6
7
|
const inputDateTypes = ["date", "datetime-local", "month", "time", "week"];
|
|
7
8
|
const _sfc_main = {
|
|
8
9
|
name: "NcDateTimePickerNative",
|
|
@@ -35,7 +36,8 @@ const _sfc_main = {
|
|
|
35
36
|
*/
|
|
36
37
|
id: {
|
|
37
38
|
type: String,
|
|
38
|
-
|
|
39
|
+
default: () => "date-time-picker-" + GenRandomId.GenRandomId(),
|
|
40
|
+
validator: (id) => id.trim() !== ""
|
|
39
41
|
},
|
|
40
42
|
/**
|
|
41
43
|
* type attribute of the input field
|
|
@@ -138,27 +140,29 @@ const _sfc_main = {
|
|
|
138
140
|
input: ($event) => {
|
|
139
141
|
if (isNaN($event.target.valueAsNumber)) {
|
|
140
142
|
this.model = null;
|
|
141
|
-
}
|
|
142
|
-
if (this.type === "time") {
|
|
143
|
+
} else if (this.type === "time") {
|
|
143
144
|
const time = $event.target.value;
|
|
144
145
|
if (this.model === "") {
|
|
145
|
-
const { yyyy
|
|
146
|
-
this.model = /* @__PURE__ */ new Date(`${
|
|
146
|
+
const { yyyy, MM, dd } = this.getReadableDate(/* @__PURE__ */ new Date());
|
|
147
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);
|
|
148
|
+
} else {
|
|
149
|
+
const { yyyy, MM, dd } = this.getReadableDate(this.model);
|
|
150
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);
|
|
147
151
|
}
|
|
148
|
-
const { yyyy, MM, dd } = this.getReadableDate(this.model);
|
|
149
|
-
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);
|
|
150
152
|
} else if (this.type === "month") {
|
|
151
153
|
const MM = (new Date($event.target.value).getMonth() + 1).toString().padStart(2, "0");
|
|
152
154
|
if (this.model === "") {
|
|
153
|
-
const { yyyy
|
|
154
|
-
this.model = /* @__PURE__ */ new Date(`${
|
|
155
|
+
const { yyyy, dd, hh, mm } = this.getReadableDate(/* @__PURE__ */ new Date());
|
|
156
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`);
|
|
157
|
+
} else {
|
|
158
|
+
const { yyyy, dd, hh, mm } = this.getReadableDate(this.model);
|
|
159
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`);
|
|
155
160
|
}
|
|
156
|
-
|
|
157
|
-
|
|
161
|
+
} else {
|
|
162
|
+
const timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1e3 * 60;
|
|
163
|
+
const inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds;
|
|
164
|
+
this.model = new Date(inputDateWithTimezone);
|
|
158
165
|
}
|
|
159
|
-
const timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1e3 * 60;
|
|
160
|
-
const inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds;
|
|
161
|
-
this.model = new Date(inputDateWithTimezone);
|
|
162
166
|
}
|
|
163
167
|
};
|
|
164
168
|
}
|
|
@@ -211,7 +215,7 @@ const _sfc_main = {
|
|
|
211
215
|
};
|
|
212
216
|
var _sfc_render = function render() {
|
|
213
217
|
var _vm = this, _c = _vm._self._c;
|
|
214
|
-
return _c("div", { staticClass: "native-datetime-picker" }, [_c("label", { class: { "hidden-visually": _vm.hideLabel }, attrs: { "for": _vm.id } }, [_vm._v(_vm._s(_vm.label))]), _c("input", _vm._g(_vm._b({ staticClass: "native-datetime-picker--input", class: _vm.inputClass, attrs: { "id": _vm.id, "type": _vm.type, "min": _vm.formattedMin, "max": _vm.formattedMax }, domProps: { "value": _vm.formattedValue } }, "input", _vm.$attrs, false), _vm.listeners))]);
|
|
218
|
+
return _c("div", { staticClass: "native-datetime-picker" }, [_c("label", { staticClass: "native-datetime-picker--label", class: { "hidden-visually": _vm.hideLabel }, attrs: { "for": _vm.id } }, [_vm._v(" " + _vm._s(_vm.label) + " ")]), _c("input", _vm._g(_vm._b({ staticClass: "native-datetime-picker--input", class: _vm.inputClass, attrs: { "id": _vm.id, "type": _vm.type, "min": _vm.formattedMin, "max": _vm.formattedMax }, domProps: { "value": _vm.formattedValue } }, "input", _vm.$attrs, false), _vm.listeners))]);
|
|
215
219
|
};
|
|
216
220
|
var _sfc_staticRenderFns = [];
|
|
217
221
|
var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
@@ -220,7 +224,7 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
220
224
|
_sfc_staticRenderFns,
|
|
221
225
|
false,
|
|
222
226
|
null,
|
|
223
|
-
"
|
|
227
|
+
"a606e088"
|
|
224
228
|
);
|
|
225
229
|
const NcDateTimePickerNative = __component__.exports;
|
|
226
230
|
ScopeComponent.ScopeComponent(NcDateTimePickerNative);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcDateTimePickerNative.cjs","sources":["../../src/components/NcDateTimePickerNative/NcDateTimePickerNative.vue","../../src/components/NcDateTimePickerNative/index.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n\n### General description\n\nThis components provides a wrapper around the native browser datetime picker. <br>\nThis is an input with some type of date e.g. https://html.spec.whatwg.org/multipage/input.html#local-date-and-time-state-(type=datetime-local). <br>\nAll available types are: 'date', 'datetime-local', 'month', 'time' and 'week', please check them here: https://html.spec.whatwg.org/multipage/input.html# <br>\n\n### Examples\n\n#### Usage: type='datetime-local'\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"datetime-local\" />\n\t</div>\n</template>\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n#### Usage: type='datetime-local' with min date and max date\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:min=\"yesterdayDate\"\n\t\t\t:max=\"someDate\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"datetime-local\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t\tyesterdayDate: new Date(new Date().setDate(new Date().getDate() - 1)),\n\t\t\t\tsomeDate: new Date(new Date().setDate(new Date().getDate() + 7)),\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n#### Usage: type='week'\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"week\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n#### Usage: type='month'\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"month\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n</docs>\n\n<template>\n\t<div class=\"native-datetime-picker\">\n\t\t<label :class=\"{ 'hidden-visually': hideLabel }\" :for=\"id\">{{ label }}</label>\n\t\t<input :id=\"id\"\n\t\t\tclass=\"native-datetime-picker--input\"\n\t\t\t:class=\"inputClass\"\n\t\t\t:type=\"type\"\n\t\t\t:value=\"formattedValue\"\n\t\t\t:min=\"formattedMin\"\n\t\t\t:max=\"formattedMax\"\n\t\t\tv-bind=\"$attrs\"\n\t\t\tv-on=\"listeners\">\n\t</div>\n</template>\n\n<script>\nimport { useModelMigration } from '../../composables/useModelMigration.ts'\n\nconst inputDateTypes = ['date', 'datetime-local', 'month', 'time', 'week']\n\nexport default {\n\tname: 'NcDateTimePickerNative',\n\tinheritAttrs: false,\n\n\tmodel: {\n\t\tprop: 'modelValue',\n\t\tevent: 'update:modelValue',\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Removed in v9 - use `modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\tvalue: {\n\t\t\ttype: Date,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * The date is – like the `Date` object in JavaScript – tied to UTC.\n\t\t * The selected time zone does not have an influence of the selected time and date value.\n\t\t * You have to translate the time yourself when you want to factor in time zones.\n\t\t * Pass null to clear the input field.\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: Date,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * id attribute of the input field\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * type attribute of the input field\n\t\t * default type: String\n\t\t * The type of the input element, it can be `date`, `datetime-local`, `month`, `time`, `week`\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'date',\n\t\t\tvalidate: (name) => inputDateTypes.includes(name),\n\t\t},\n\t\t/**\n\t\t * text inside the label element\n\t\t * default type: String\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: 'Please choose a date',\n\t\t},\n\t\t/**\n\t\t * min attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmin: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * max attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmax: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Flag to hide the label\n\t\t * default type: String\n\t\t * The hidden input label for accessibility purposes.\n\t\t */\n\t\thideLabel: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcDateTimePickerNative in the NcActionInput component.\n\t\t */\n\t\tinputClass: {\n\t\t\ttype: [Object, String],\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t/**\n\t\t * Removed in v9 - use `update:modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\t'input',\n\t\t/**\n\t\t * Emitted when the input value changes\n\t\t *\n\t\t * @return {Date} new chosen Date()\n\t\t */\n\t\t'update:modelValue',\n\t\t/** Same as update:modelValue for Vue 2 compatibility */\n\t\t'update:model-value',\n\t],\n\n\tsetup() {\n\t\tconst model = useModelMigration('value', 'input')\n\t\treturn {\n\t\t\tmodel,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tformattedValue() {\n\t\t\treturn this.formatValue(this.model)\n\t\t},\n\t\tformattedMin() {\n\t\t\tif (this.min) {\n\t\t\t\treturn this.formatValue(this.min)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tformattedMax() {\n\t\t\tif (this.max) {\n\t\t\t\treturn this.formatValue(this.max)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tlisteners() {\n\t\t\treturn {\n\t\t\t\t...this.$listeners,\n\t\t\t\t/**\n\t\t\t\t * Handle the input event\n\t\t\t\t *\n\t\t\t\t * @param {InputEvent} $event input event payload\n\t\t\t\t * @return {Date|string} new chosen Date() or an empty string\n\t\t\t\t */\n\t\t\t\tinput: ($event) => {\n\t\t\t\t\tif (isNaN($event.target.valueAsNumber)) {\n\t\t\t\t\t\tthis.model = null\n\t\t\t\t\t}\n\t\t\t\t\tif (this.type === 'time') {\n\t\t\t\t\t\tconst time = $event.target.value\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\t// this case is because of Chrome bug\n\t\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t * Emitted when the input value changes\n\t\t\t\t\t\t\t *\n\t\t\t\t\t\t\t * @return {Date} new chosen Date()\n\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(this.model)\n\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\t\tconst MM = (new Date($event.target.value).getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(this.model)\n\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t}\n\t\t\t\t\tconst timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1000 * 60\n\t\t\t\t\tconst inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds\n\t\t\t\t\tthis.model = new Date(inputDateWithTimezone)\n\t\t\t\t},\n\t\t\t}\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Returns Object with string values of a Date\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {object|undefined}\n\t\t */\n\t\tgetReadableDate(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst yyyy = value.getFullYear().toString().padStart(4, '0')\n\t\t\t\tconst MM = (value.getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\tconst dd = value.getDate().toString().padStart(2, '0')\n\t\t\t\tconst hh = value.getHours().toString().padStart(2, '0')\n\t\t\t\tconst mm = value.getMinutes().toString().padStart(2, '0')\n\n\t\t\t\treturn { yyyy, MM, dd, hh, mm }\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Returns preformatted value for the input field\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {string|undefined}\n\t\t */\n\t\tformatValue(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst { yyyy, MM, dd, hh, mm } = this.getReadableDate(value)\n\t\t\t\tif (this.type === 'datetime-local') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}T${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'date') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}`\n\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\treturn `${yyyy}-${MM}`\n\t\t\t\t} else if (this.type === 'time') {\n\t\t\t\t\treturn `${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'week') {\n\t\t\t\t\tconst startDate = new Date(yyyy, 0, 1)\n\t\t\t\t\tconst daysSinceBeginningOfYear = Math.floor((value - startDate)\n\t\t\t\t\t\t/ (24 * 60 * 60 * 1000))\n\t\t\t\t\tconst weekNumber = Math.ceil(daysSinceBeginningOfYear / 7)\n\t\t\t\t\treturn `${yyyy}-W${weekNumber}`\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn ''\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.native-datetime-picker {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t.native-datetime-picker .native-datetime-picker--input {\n\t\twidth: 100%;\n\t\tflex: 0 0 auto;\n\t\tpadding-right: 4px;\n\t}\n\n\t[data-theme-light],\n\t[data-themes*=light] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: light;\n\t\t}\n\t}\n\n\t[data-theme-dark],\n\t[data-themes*=dark] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: dark;\n\t\t}\n\t}\n\n\t[data-theme-default],\n\t[data-themes*=default] {\n\t\t@media (prefers-color-scheme: light) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: light;\n\t\t\t}\n\t\t}\n\t\t@media (prefers-color-scheme: dark) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: dark;\n\t\t\t}\n\t\t}\n\t}\n</style>\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcDateTimePickerNative from './NcDateTimePickerNative.vue'\nimport ScopeComponent from '../../utils/ScopeComponent.js'\n\nScopeComponent(NcDateTimePickerNative)\n\nexport default NcDateTimePickerNative\n"],"names":["useModelMigration","yyyy","MM","dd","hh","mm","ScopeComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcDateTimePickerNative.cjs","sources":["../../src/components/NcDateTimePickerNative/NcDateTimePickerNative.vue","../../src/components/NcDateTimePickerNative/index.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n\n### General description\n\nThis components provides a wrapper around the native browser datetime picker. <br>\nThis is an input with some type of date e.g. https://html.spec.whatwg.org/multipage/input.html#local-date-and-time-state-(type=datetime-local). <br>\nAll available types are: 'date', 'datetime-local', 'month', 'time' and 'week', please check them here: https://html.spec.whatwg.org/multipage/input.html# <br>\n\n### Examples\n\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<hr/>\n\t\t<div class=\"flex\">\n\t\t\t<NcSelect v-bind=\"props\" v-model=\"type\" />\n\t\t\t<NcDateTimePickerNative\n\t\t\t\tv-model=\"value\"\n\t\t\t\t:label=\"label\"\n\t\t\t\t:type=\"type\" />\n\t\t</div>\n\t</div>\n</template>\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tprops: {\n\t\t\t\t\tclearable: false,\n\t\t\t\t\tinputLabel: 'Picker type',\n\t\t\t\t\toptions: [\n\t\t\t\t\t\t'date',\n\t\t\t\t\t\t'datetime-local',\n\t\t\t\t\t\t'month',\n\t\t\t\t\t\t'time',\n\t\t\t\t\t\t'week',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t\ttype: 'datetime-local',\n\t\t\t\tvalue: new Date(),\n\t\t\t\tlabel: 'Select a new date or time',\n\t\t\t}\n\t\t},\n\t}\n</script>\n<style scoped>\n.flex {\n\tdisplay: flex;\n\tgap: 4px;\n}\n</style>\n```\n\n#### Usage: type='datetime-local' with min date and max date\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:min=\"yesterdayDate\"\n\t\t\t:max=\"someDate\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"datetime-local\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t\tyesterdayDate: new Date(new Date().setDate(new Date().getDate() - 1)),\n\t\t\t\tsomeDate: new Date(new Date().setDate(new Date().getDate() + 7)),\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n</docs>\n\n<template>\n\t<div class=\"native-datetime-picker\">\n\t\t<label class=\"native-datetime-picker--label\"\n\t\t\t:class=\"{ 'hidden-visually': hideLabel }\"\n\t\t\t:for=\"id\">\n\t\t\t{{ label }}\n\t\t</label>\n\t\t<input :id=\"id\"\n\t\t\tclass=\"native-datetime-picker--input\"\n\t\t\t:class=\"inputClass\"\n\t\t\t:type=\"type\"\n\t\t\t:value=\"formattedValue\"\n\t\t\t:min=\"formattedMin\"\n\t\t\t:max=\"formattedMax\"\n\t\t\tv-bind=\"$attrs\"\n\t\t\tv-on=\"listeners\">\n\t</div>\n</template>\n\n<script>\nimport { useModelMigration } from '../../composables/useModelMigration.ts'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nconst inputDateTypes = ['date', 'datetime-local', 'month', 'time', 'week']\n\nexport default {\n\tname: 'NcDateTimePickerNative',\n\tinheritAttrs: false,\n\n\tmodel: {\n\t\tprop: 'modelValue',\n\t\tevent: 'update:modelValue',\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Removed in v9 - use `modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\tvalue: {\n\t\t\ttype: Date,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * The date is – like the `Date` object in JavaScript – tied to UTC.\n\t\t * The selected time zone does not have an influence of the selected time and date value.\n\t\t * You have to translate the time yourself when you want to factor in time zones.\n\t\t * Pass null to clear the input field.\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: Date,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * id attribute of the input field\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'date-time-picker-' + GenRandomId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\t\t/**\n\t\t * type attribute of the input field\n\t\t * default type: String\n\t\t * The type of the input element, it can be `date`, `datetime-local`, `month`, `time`, `week`\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'date',\n\t\t\tvalidate: (name) => inputDateTypes.includes(name),\n\t\t},\n\t\t/**\n\t\t * text inside the label element\n\t\t * default type: String\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: 'Please choose a date',\n\t\t},\n\t\t/**\n\t\t * min attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmin: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * max attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmax: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Flag to hide the label\n\t\t * default type: String\n\t\t * The hidden input label for accessibility purposes.\n\t\t */\n\t\thideLabel: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcDateTimePickerNative in the NcActionInput component.\n\t\t */\n\t\tinputClass: {\n\t\t\ttype: [Object, String],\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t/**\n\t\t * Removed in v9 - use `update:modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\t'input',\n\t\t/**\n\t\t * Emitted when the input value changes\n\t\t *\n\t\t * @return {Date} new chosen Date()\n\t\t */\n\t\t'update:modelValue',\n\t\t/** Same as update:modelValue for Vue 2 compatibility */\n\t\t'update:model-value',\n\t],\n\n\tsetup() {\n\t\tconst model = useModelMigration('value', 'input')\n\t\treturn {\n\t\t\tmodel,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tformattedValue() {\n\t\t\treturn this.formatValue(this.model)\n\t\t},\n\t\tformattedMin() {\n\t\t\tif (this.min) {\n\t\t\t\treturn this.formatValue(this.min)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tformattedMax() {\n\t\t\tif (this.max) {\n\t\t\t\treturn this.formatValue(this.max)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tlisteners() {\n\t\t\treturn {\n\t\t\t\t...this.$listeners,\n\t\t\t\t/**\n\t\t\t\t * Handle the input event\n\t\t\t\t *\n\t\t\t\t * @param {InputEvent} $event input event payload\n\t\t\t\t * @return {Date|string} new chosen Date() or an empty string\n\t\t\t\t */\n\t\t\t\tinput: ($event) => {\n\t\t\t\t\tif (isNaN($event.target.valueAsNumber)) {\n\t\t\t\t\t\tthis.model = null\n\t\t\t\t\t} else if (this.type === 'time') {\n\t\t\t\t\t\tconst time = $event.target.value\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\t// this case is because of Chrome bug\n\t\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t * Emitted when the input value changes\n\t\t\t\t\t\t\t *\n\t\t\t\t\t\t\t * @return {Date} new chosen Date()\n\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(this.model)\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\t\tconst MM = (new Date($event.target.value).getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(this.model)\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1000 * 60\n\t\t\t\t\t\tconst inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds\n\t\t\t\t\t\tthis.model = new Date(inputDateWithTimezone)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t}\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Returns Object with string values of a Date\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {object|undefined}\n\t\t */\n\t\tgetReadableDate(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst yyyy = value.getFullYear().toString().padStart(4, '0')\n\t\t\t\tconst MM = (value.getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\tconst dd = value.getDate().toString().padStart(2, '0')\n\t\t\t\tconst hh = value.getHours().toString().padStart(2, '0')\n\t\t\t\tconst mm = value.getMinutes().toString().padStart(2, '0')\n\n\t\t\t\treturn { yyyy, MM, dd, hh, mm }\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Returns preformatted value for the input field\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {string|undefined}\n\t\t */\n\t\tformatValue(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst { yyyy, MM, dd, hh, mm } = this.getReadableDate(value)\n\t\t\t\tif (this.type === 'datetime-local') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}T${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'date') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}`\n\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\treturn `${yyyy}-${MM}`\n\t\t\t\t} else if (this.type === 'time') {\n\t\t\t\t\treturn `${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'week') {\n\t\t\t\t\tconst startDate = new Date(yyyy, 0, 1)\n\t\t\t\t\tconst daysSinceBeginningOfYear = Math.floor((value - startDate)\n\t\t\t\t\t\t/ (24 * 60 * 60 * 1000))\n\t\t\t\t\tconst weekNumber = Math.ceil(daysSinceBeginningOfYear / 7)\n\t\t\t\t\treturn `${yyyy}-W${weekNumber}`\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn ''\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.native-datetime-picker {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t.native-datetime-picker .native-datetime-picker--label {\n\t\tmargin-block-end: 2px;\n\t}\n\n\t.native-datetime-picker .native-datetime-picker--input {\n\t\t// If border width differs between focused and unfocused we need to compensate to prevent jumping\n\t\t--input-border-width-offset: calc(var(--border-width-input-focused, 2px) - var(--border-width-input, 2px));\n\t\twidth: 100%;\n\t\tflex: 0 0 auto;\n\t\tmargin: 0;\n\t\tpadding-inline-start: calc(var(--border-radius-large) + var(--input-border-width-offset));\n\t\tpadding-inline-end: calc(var(--default-grid-baseline) + var(--input-border-width-offset));\n\t\tborder: var(--border-width-input, 2px) solid var(--color-border-maxcontrast);\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]),\n\t\t&:focus-within:not([disabled]) {\n\t\t\tborder-color: var(--color-main-text);\n\t\t\tborder-width: var(--border-width-input-focused, 2px);\n\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t\t// Reset padding offset when focused\n\t\t\t--input-border-width-offset: 0px;\n\t\t}\n\t}\n\n\t[data-theme-light],\n\t[data-themes*=light] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: light;\n\t\t}\n\t}\n\n\t[data-theme-dark],\n\t[data-themes*=dark] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: dark;\n\t\t}\n\t}\n\n\t[data-theme-default],\n\t[data-themes*=default] {\n\t\t@media (prefers-color-scheme: light) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: light;\n\t\t\t}\n\t\t}\n\t\t@media (prefers-color-scheme: dark) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: dark;\n\t\t\t}\n\t\t}\n\t}\n</style>\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcDateTimePickerNative from './NcDateTimePickerNative.vue'\nimport ScopeComponent from '../../utils/ScopeComponent.js'\n\nScopeComponent(NcDateTimePickerNative)\n\nexport default NcDateTimePickerNative\n"],"names":["GenRandomId","useModelMigration","ScopeComponent"],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import '../assets/NcDateTimePickerNative-
|
|
1
|
+
import '../assets/NcDateTimePickerNative-DVGEymgr.css';
|
|
2
2
|
import { u as useModelMigration } from "../chunks/useModelMigration-EhAWvqDD.mjs";
|
|
3
|
+
import { G as GenRandomId } from "../chunks/GenRandomId-CMooMQt0.mjs";
|
|
3
4
|
import { n as normalizeComponent } from "../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
4
|
-
import { S as ScopeComponent } from "../chunks/ScopeComponent-
|
|
5
|
+
import { S as ScopeComponent } from "../chunks/ScopeComponent-l9iK4gT7.mjs";
|
|
5
6
|
const inputDateTypes = ["date", "datetime-local", "month", "time", "week"];
|
|
6
7
|
const _sfc_main = {
|
|
7
8
|
name: "NcDateTimePickerNative",
|
|
@@ -34,7 +35,8 @@ const _sfc_main = {
|
|
|
34
35
|
*/
|
|
35
36
|
id: {
|
|
36
37
|
type: String,
|
|
37
|
-
|
|
38
|
+
default: () => "date-time-picker-" + GenRandomId(),
|
|
39
|
+
validator: (id) => id.trim() !== ""
|
|
38
40
|
},
|
|
39
41
|
/**
|
|
40
42
|
* type attribute of the input field
|
|
@@ -137,27 +139,29 @@ const _sfc_main = {
|
|
|
137
139
|
input: ($event) => {
|
|
138
140
|
if (isNaN($event.target.valueAsNumber)) {
|
|
139
141
|
this.model = null;
|
|
140
|
-
}
|
|
141
|
-
if (this.type === "time") {
|
|
142
|
+
} else if (this.type === "time") {
|
|
142
143
|
const time = $event.target.value;
|
|
143
144
|
if (this.model === "") {
|
|
144
|
-
const { yyyy
|
|
145
|
-
this.model = /* @__PURE__ */ new Date(`${
|
|
145
|
+
const { yyyy, MM, dd } = this.getReadableDate(/* @__PURE__ */ new Date());
|
|
146
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);
|
|
147
|
+
} else {
|
|
148
|
+
const { yyyy, MM, dd } = this.getReadableDate(this.model);
|
|
149
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);
|
|
146
150
|
}
|
|
147
|
-
const { yyyy, MM, dd } = this.getReadableDate(this.model);
|
|
148
|
-
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${time}`);
|
|
149
151
|
} else if (this.type === "month") {
|
|
150
152
|
const MM = (new Date($event.target.value).getMonth() + 1).toString().padStart(2, "0");
|
|
151
153
|
if (this.model === "") {
|
|
152
|
-
const { yyyy
|
|
153
|
-
this.model = /* @__PURE__ */ new Date(`${
|
|
154
|
+
const { yyyy, dd, hh, mm } = this.getReadableDate(/* @__PURE__ */ new Date());
|
|
155
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`);
|
|
156
|
+
} else {
|
|
157
|
+
const { yyyy, dd, hh, mm } = this.getReadableDate(this.model);
|
|
158
|
+
this.model = /* @__PURE__ */ new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`);
|
|
154
159
|
}
|
|
155
|
-
|
|
156
|
-
|
|
160
|
+
} else {
|
|
161
|
+
const timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1e3 * 60;
|
|
162
|
+
const inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds;
|
|
163
|
+
this.model = new Date(inputDateWithTimezone);
|
|
157
164
|
}
|
|
158
|
-
const timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1e3 * 60;
|
|
159
|
-
const inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds;
|
|
160
|
-
this.model = new Date(inputDateWithTimezone);
|
|
161
165
|
}
|
|
162
166
|
};
|
|
163
167
|
}
|
|
@@ -210,7 +214,7 @@ const _sfc_main = {
|
|
|
210
214
|
};
|
|
211
215
|
var _sfc_render = function render() {
|
|
212
216
|
var _vm = this, _c = _vm._self._c;
|
|
213
|
-
return _c("div", { staticClass: "native-datetime-picker" }, [_c("label", { class: { "hidden-visually": _vm.hideLabel }, attrs: { "for": _vm.id } }, [_vm._v(_vm._s(_vm.label))]), _c("input", _vm._g(_vm._b({ staticClass: "native-datetime-picker--input", class: _vm.inputClass, attrs: { "id": _vm.id, "type": _vm.type, "min": _vm.formattedMin, "max": _vm.formattedMax }, domProps: { "value": _vm.formattedValue } }, "input", _vm.$attrs, false), _vm.listeners))]);
|
|
217
|
+
return _c("div", { staticClass: "native-datetime-picker" }, [_c("label", { staticClass: "native-datetime-picker--label", class: { "hidden-visually": _vm.hideLabel }, attrs: { "for": _vm.id } }, [_vm._v(" " + _vm._s(_vm.label) + " ")]), _c("input", _vm._g(_vm._b({ staticClass: "native-datetime-picker--input", class: _vm.inputClass, attrs: { "id": _vm.id, "type": _vm.type, "min": _vm.formattedMin, "max": _vm.formattedMax }, domProps: { "value": _vm.formattedValue } }, "input", _vm.$attrs, false), _vm.listeners))]);
|
|
214
218
|
};
|
|
215
219
|
var _sfc_staticRenderFns = [];
|
|
216
220
|
var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
@@ -219,7 +223,7 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
219
223
|
_sfc_staticRenderFns,
|
|
220
224
|
false,
|
|
221
225
|
null,
|
|
222
|
-
"
|
|
226
|
+
"a606e088"
|
|
223
227
|
);
|
|
224
228
|
const NcDateTimePickerNative = __component__.exports;
|
|
225
229
|
ScopeComponent(NcDateTimePickerNative);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcDateTimePickerNative.mjs","sources":["../../src/components/NcDateTimePickerNative/NcDateTimePickerNative.vue","../../src/components/NcDateTimePickerNative/index.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n\n### General description\n\nThis components provides a wrapper around the native browser datetime picker. <br>\nThis is an input with some type of date e.g. https://html.spec.whatwg.org/multipage/input.html#local-date-and-time-state-(type=datetime-local). <br>\nAll available types are: 'date', 'datetime-local', 'month', 'time' and 'week', please check them here: https://html.spec.whatwg.org/multipage/input.html# <br>\n\n### Examples\n\n#### Usage: type='datetime-local'\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"datetime-local\" />\n\t</div>\n</template>\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n#### Usage: type='datetime-local' with min date and max date\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:min=\"yesterdayDate\"\n\t\t\t:max=\"someDate\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"datetime-local\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t\tyesterdayDate: new Date(new Date().setDate(new Date().getDate() - 1)),\n\t\t\t\tsomeDate: new Date(new Date().setDate(new Date().getDate() + 7)),\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n#### Usage: type='week'\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"week\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n#### Usage: type='month'\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:id=\"id\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"month\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tid: 'date-time-picker',\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n\n</docs>\n\n<template>\n\t<div class=\"native-datetime-picker\">\n\t\t<label :class=\"{ 'hidden-visually': hideLabel }\" :for=\"id\">{{ label }}</label>\n\t\t<input :id=\"id\"\n\t\t\tclass=\"native-datetime-picker--input\"\n\t\t\t:class=\"inputClass\"\n\t\t\t:type=\"type\"\n\t\t\t:value=\"formattedValue\"\n\t\t\t:min=\"formattedMin\"\n\t\t\t:max=\"formattedMax\"\n\t\t\tv-bind=\"$attrs\"\n\t\t\tv-on=\"listeners\">\n\t</div>\n</template>\n\n<script>\nimport { useModelMigration } from '../../composables/useModelMigration.ts'\n\nconst inputDateTypes = ['date', 'datetime-local', 'month', 'time', 'week']\n\nexport default {\n\tname: 'NcDateTimePickerNative',\n\tinheritAttrs: false,\n\n\tmodel: {\n\t\tprop: 'modelValue',\n\t\tevent: 'update:modelValue',\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Removed in v9 - use `modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\tvalue: {\n\t\t\ttype: Date,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * The date is – like the `Date` object in JavaScript – tied to UTC.\n\t\t * The selected time zone does not have an influence of the selected time and date value.\n\t\t * You have to translate the time yourself when you want to factor in time zones.\n\t\t * Pass null to clear the input field.\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: Date,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * id attribute of the input field\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * type attribute of the input field\n\t\t * default type: String\n\t\t * The type of the input element, it can be `date`, `datetime-local`, `month`, `time`, `week`\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'date',\n\t\t\tvalidate: (name) => inputDateTypes.includes(name),\n\t\t},\n\t\t/**\n\t\t * text inside the label element\n\t\t * default type: String\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: 'Please choose a date',\n\t\t},\n\t\t/**\n\t\t * min attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmin: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * max attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmax: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Flag to hide the label\n\t\t * default type: String\n\t\t * The hidden input label for accessibility purposes.\n\t\t */\n\t\thideLabel: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcDateTimePickerNative in the NcActionInput component.\n\t\t */\n\t\tinputClass: {\n\t\t\ttype: [Object, String],\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t/**\n\t\t * Removed in v9 - use `update:modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\t'input',\n\t\t/**\n\t\t * Emitted when the input value changes\n\t\t *\n\t\t * @return {Date} new chosen Date()\n\t\t */\n\t\t'update:modelValue',\n\t\t/** Same as update:modelValue for Vue 2 compatibility */\n\t\t'update:model-value',\n\t],\n\n\tsetup() {\n\t\tconst model = useModelMigration('value', 'input')\n\t\treturn {\n\t\t\tmodel,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tformattedValue() {\n\t\t\treturn this.formatValue(this.model)\n\t\t},\n\t\tformattedMin() {\n\t\t\tif (this.min) {\n\t\t\t\treturn this.formatValue(this.min)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tformattedMax() {\n\t\t\tif (this.max) {\n\t\t\t\treturn this.formatValue(this.max)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tlisteners() {\n\t\t\treturn {\n\t\t\t\t...this.$listeners,\n\t\t\t\t/**\n\t\t\t\t * Handle the input event\n\t\t\t\t *\n\t\t\t\t * @param {InputEvent} $event input event payload\n\t\t\t\t * @return {Date|string} new chosen Date() or an empty string\n\t\t\t\t */\n\t\t\t\tinput: ($event) => {\n\t\t\t\t\tif (isNaN($event.target.valueAsNumber)) {\n\t\t\t\t\t\tthis.model = null\n\t\t\t\t\t}\n\t\t\t\t\tif (this.type === 'time') {\n\t\t\t\t\t\tconst time = $event.target.value\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\t// this case is because of Chrome bug\n\t\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t * Emitted when the input value changes\n\t\t\t\t\t\t\t *\n\t\t\t\t\t\t\t * @return {Date} new chosen Date()\n\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(this.model)\n\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\t\tconst MM = (new Date($event.target.value).getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(this.model)\n\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t}\n\t\t\t\t\tconst timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1000 * 60\n\t\t\t\t\tconst inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds\n\t\t\t\t\tthis.model = new Date(inputDateWithTimezone)\n\t\t\t\t},\n\t\t\t}\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Returns Object with string values of a Date\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {object|undefined}\n\t\t */\n\t\tgetReadableDate(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst yyyy = value.getFullYear().toString().padStart(4, '0')\n\t\t\t\tconst MM = (value.getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\tconst dd = value.getDate().toString().padStart(2, '0')\n\t\t\t\tconst hh = value.getHours().toString().padStart(2, '0')\n\t\t\t\tconst mm = value.getMinutes().toString().padStart(2, '0')\n\n\t\t\t\treturn { yyyy, MM, dd, hh, mm }\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Returns preformatted value for the input field\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {string|undefined}\n\t\t */\n\t\tformatValue(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst { yyyy, MM, dd, hh, mm } = this.getReadableDate(value)\n\t\t\t\tif (this.type === 'datetime-local') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}T${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'date') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}`\n\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\treturn `${yyyy}-${MM}`\n\t\t\t\t} else if (this.type === 'time') {\n\t\t\t\t\treturn `${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'week') {\n\t\t\t\t\tconst startDate = new Date(yyyy, 0, 1)\n\t\t\t\t\tconst daysSinceBeginningOfYear = Math.floor((value - startDate)\n\t\t\t\t\t\t/ (24 * 60 * 60 * 1000))\n\t\t\t\t\tconst weekNumber = Math.ceil(daysSinceBeginningOfYear / 7)\n\t\t\t\t\treturn `${yyyy}-W${weekNumber}`\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn ''\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.native-datetime-picker {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t.native-datetime-picker .native-datetime-picker--input {\n\t\twidth: 100%;\n\t\tflex: 0 0 auto;\n\t\tpadding-right: 4px;\n\t}\n\n\t[data-theme-light],\n\t[data-themes*=light] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: light;\n\t\t}\n\t}\n\n\t[data-theme-dark],\n\t[data-themes*=dark] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: dark;\n\t\t}\n\t}\n\n\t[data-theme-default],\n\t[data-themes*=default] {\n\t\t@media (prefers-color-scheme: light) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: light;\n\t\t\t}\n\t\t}\n\t\t@media (prefers-color-scheme: dark) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: dark;\n\t\t\t}\n\t\t}\n\t}\n</style>\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcDateTimePickerNative from './NcDateTimePickerNative.vue'\nimport ScopeComponent from '../../utils/ScopeComponent.js'\n\nScopeComponent(NcDateTimePickerNative)\n\nexport default NcDateTimePickerNative\n"],"names":["yyyy","MM","dd","hh","mm"],"mappings":";;;AA8IA,MAAA,iBAAA,CAAA,QAAA,kBAAA,SAAA,QAAA,MAAA;AAEA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EACA,cAAA;AAAA,EAEA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA,CAAA,SAAA,eAAA,SAAA,IAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,KAAA;AAAA,MACA,MAAA,CAAA,MAAA,OAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,KAAA;AAAA,MACA,MAAA,CAAA,MAAA,OAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA,CAAA,QAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA;AAAA;AAAA,IAEA;AAAA,EACA;AAAA,EAEA,QAAA;AACA,UAAA,QAAA,kBAAA,SAAA,OAAA;AACA,WAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IACA,iBAAA;AACA,aAAA,KAAA,YAAA,KAAA,KAAA;AAAA,IACA;AAAA,IACA,eAAA;AACA,UAAA,KAAA,KAAA;AACA,eAAA,KAAA,YAAA,KAAA,GAAA;AAAA,MACA;AACA,aAAA;AAAA,IACA;AAAA,IACA,eAAA;AACA,UAAA,KAAA,KAAA;AACA,eAAA,KAAA,YAAA,KAAA,GAAA;AAAA,MACA;AACA,aAAA;AAAA,IACA;AAAA,IACA,YAAA;AACA,aAAA;AAAA,QACA,GAAA,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAOA,OAAA,CAAA,WAAA;AACA,cAAA,MAAA,OAAA,OAAA,aAAA,GAAA;AACA,iBAAA,QAAA;AAAA,UACA;AACA,cAAA,KAAA,SAAA,QAAA;AACA,kBAAA,OAAA,OAAA,OAAA;AACA,gBAAA,KAAA,UAAA,IAAA;AAEA,oBAAA,EAAA,MAAAA,OAAA,IAAAC,KAAA,IAAAC,IAAA,IAAA,KAAA,gBAAA,oBAAA,MAAA;AAMA,mBAAA,QAAA,oBAAA,KAAA,GAAAF,KAAA,IAAAC,GAAA,IAAAC,GAAA,IAAA,IAAA,EAAA;AAAA,YACA;AACA,kBAAA,EAAA,MAAA,IAAA,GAAA,IAAA,KAAA,gBAAA,KAAA,KAAA;AACA,iBAAA,QAAA,oBAAA,KAAA,GAAA,IAAA,IAAA,EAAA,IAAA,EAAA,IAAA,IAAA,EAAA;AAAA,UACA,WAAA,KAAA,SAAA,SAAA;AACA,kBAAA,MAAA,IAAA,KAAA,OAAA,OAAA,KAAA,EAAA,SAAA,IAAA,GAAA,SAAA,EAAA,SAAA,GAAA,GAAA;AACA,gBAAA,KAAA,UAAA,IAAA;AACA,oBAAA,EAAA,MAAAF,OAAA,IAAAE,KAAA,IAAAC,KAAA,IAAAC,IAAA,IAAA,KAAA,gBAAA,oBAAA,MAAA;AACA,mBAAA,QAAA,oBAAA,KAAA,GAAAJ,KAAA,IAAA,EAAA,IAAAE,GAAA,IAAAC,GAAA,IAAAC,GAAA,EAAA;AAAA,YACA;AACA,kBAAA,EAAA,MAAA,IAAA,IAAA,GAAA,IAAA,KAAA,gBAAA,KAAA,KAAA;AACA,iBAAA,QAAA,oBAAA,KAAA,GAAA,IAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA;AAAA,UACA;AACA,gBAAA,wBAAA,IAAA,KAAA,OAAA,OAAA,aAAA,EAAA,sBAAA,MAAA;AACA,gBAAA,wBAAA,OAAA,OAAA,gBAAA;AACA,eAAA,QAAA,IAAA,KAAA,qBAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,gBAAA,OAAA;AACA,UAAA,iBAAA,MAAA;AACA,cAAA,OAAA,MAAA,YAAA,EAAA,SAAA,EAAA,SAAA,GAAA,GAAA;AACA,cAAA,MAAA,MAAA,SAAA,IAAA,GAAA,WAAA,SAAA,GAAA,GAAA;AACA,cAAA,KAAA,MAAA,QAAA,EAAA,SAAA,EAAA,SAAA,GAAA,GAAA;AACA,cAAA,KAAA,MAAA,SAAA,EAAA,SAAA,EAAA,SAAA,GAAA,GAAA;AACA,cAAA,KAAA,MAAA,WAAA,EAAA,SAAA,EAAA,SAAA,GAAA,GAAA;AAEA,eAAA,EAAA,MAAA,IAAA,IAAA,IAAA,GAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,YAAA,OAAA;AACA,UAAA,iBAAA,MAAA;AACA,cAAA,EAAA,MAAA,IAAA,IAAA,IAAA,OAAA,KAAA,gBAAA,KAAA;AACA,YAAA,KAAA,SAAA,kBAAA;AACA,iBAAA,GAAA,IAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA;AAAA,QACA,WAAA,KAAA,SAAA,QAAA;AACA,iBAAA,GAAA,IAAA,IAAA,EAAA,IAAA,EAAA;AAAA,QACA,WAAA,KAAA,SAAA,SAAA;AACA,iBAAA,GAAA,IAAA,IAAA,EAAA;AAAA,QACA,WAAA,KAAA,SAAA,QAAA;AACA,iBAAA,GAAA,EAAA,IAAA,EAAA;AAAA,QACA,WAAA,KAAA,SAAA,QAAA;AACA,gBAAA,YAAA,IAAA,KAAA,MAAA,GAAA,CAAA;AACA,gBAAA,2BAAA,KAAA,OAAA,QAAA,cACA,KAAA,KAAA,KAAA,IAAA;AACA,gBAAA,aAAA,KAAA,KAAA,2BAAA,CAAA;AACA,iBAAA,GAAA,IAAA,KAAA,UAAA;AAAA,QACA;AAAA,MACA,OAAA;AACA,eAAA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;ACpWA,eAAe,sBAAsB;"}
|
|
1
|
+
{"version":3,"file":"NcDateTimePickerNative.mjs","sources":["../../src/components/NcDateTimePickerNative/NcDateTimePickerNative.vue","../../src/components/NcDateTimePickerNative/index.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\n\n### General description\n\nThis components provides a wrapper around the native browser datetime picker. <br>\nThis is an input with some type of date e.g. https://html.spec.whatwg.org/multipage/input.html#local-date-and-time-state-(type=datetime-local). <br>\nAll available types are: 'date', 'datetime-local', 'month', 'time' and 'week', please check them here: https://html.spec.whatwg.org/multipage/input.html# <br>\n\n### Examples\n\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<hr/>\n\t\t<div class=\"flex\">\n\t\t\t<NcSelect v-bind=\"props\" v-model=\"type\" />\n\t\t\t<NcDateTimePickerNative\n\t\t\t\tv-model=\"value\"\n\t\t\t\t:label=\"label\"\n\t\t\t\t:type=\"type\" />\n\t\t</div>\n\t</div>\n</template>\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tprops: {\n\t\t\t\t\tclearable: false,\n\t\t\t\t\tinputLabel: 'Picker type',\n\t\t\t\t\toptions: [\n\t\t\t\t\t\t'date',\n\t\t\t\t\t\t'datetime-local',\n\t\t\t\t\t\t'month',\n\t\t\t\t\t\t'time',\n\t\t\t\t\t\t'week',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t\ttype: 'datetime-local',\n\t\t\t\tvalue: new Date(),\n\t\t\t\tlabel: 'Select a new date or time',\n\t\t\t}\n\t\t},\n\t}\n</script>\n<style scoped>\n.flex {\n\tdisplay: flex;\n\tgap: 4px;\n}\n</style>\n```\n\n#### Usage: type='datetime-local' with min date and max date\n```vue\n<template>\n\t<div>\n\t\t<span>Picked date: {{ value || 'null' }}</span>\n\t\t<NcDateTimePickerNative\n\t\t\tv-model=\"value\"\n\t\t\t:min=\"yesterdayDate\"\n\t\t\t:max=\"someDate\"\n\t\t\t:label=\"label\"\n\t\t\ttype=\"datetime-local\" />\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tvalue: new Date(),\n\t\t\t\tlabel: 'please select a new date',\n\t\t\t\tyesterdayDate: new Date(new Date().setDate(new Date().getDate() - 1)),\n\t\t\t\tsomeDate: new Date(new Date().setDate(new Date().getDate() + 7)),\n\t\t\t}\n\t\t},\n\t}\n</script>\n```\n</docs>\n\n<template>\n\t<div class=\"native-datetime-picker\">\n\t\t<label class=\"native-datetime-picker--label\"\n\t\t\t:class=\"{ 'hidden-visually': hideLabel }\"\n\t\t\t:for=\"id\">\n\t\t\t{{ label }}\n\t\t</label>\n\t\t<input :id=\"id\"\n\t\t\tclass=\"native-datetime-picker--input\"\n\t\t\t:class=\"inputClass\"\n\t\t\t:type=\"type\"\n\t\t\t:value=\"formattedValue\"\n\t\t\t:min=\"formattedMin\"\n\t\t\t:max=\"formattedMax\"\n\t\t\tv-bind=\"$attrs\"\n\t\t\tv-on=\"listeners\">\n\t</div>\n</template>\n\n<script>\nimport { useModelMigration } from '../../composables/useModelMigration.ts'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nconst inputDateTypes = ['date', 'datetime-local', 'month', 'time', 'week']\n\nexport default {\n\tname: 'NcDateTimePickerNative',\n\tinheritAttrs: false,\n\n\tmodel: {\n\t\tprop: 'modelValue',\n\t\tevent: 'update:modelValue',\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Removed in v9 - use `modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\tvalue: {\n\t\t\ttype: Date,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * The date is – like the `Date` object in JavaScript – tied to UTC.\n\t\t * The selected time zone does not have an influence of the selected time and date value.\n\t\t * You have to translate the time yourself when you want to factor in time zones.\n\t\t * Pass null to clear the input field.\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: Date,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * id attribute of the input field\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'date-time-picker-' + GenRandomId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\t\t/**\n\t\t * type attribute of the input field\n\t\t * default type: String\n\t\t * The type of the input element, it can be `date`, `datetime-local`, `month`, `time`, `week`\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'date',\n\t\t\tvalidate: (name) => inputDateTypes.includes(name),\n\t\t},\n\t\t/**\n\t\t * text inside the label element\n\t\t * default type: String\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: 'Please choose a date',\n\t\t},\n\t\t/**\n\t\t * min attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmin: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * max attribute of the input field\n\t\t * default type: null\n\t\t */\n\t\tmax: {\n\t\t\ttype: [Date, Boolean],\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Flag to hide the label\n\t\t * default type: String\n\t\t * The hidden input label for accessibility purposes.\n\t\t */\n\t\thideLabel: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcDateTimePickerNative in the NcActionInput component.\n\t\t */\n\t\tinputClass: {\n\t\t\ttype: [Object, String],\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t/**\n\t\t * Removed in v9 - use `update:modelValue` (`v-model`) instead\n\t\t * @deprecated\n\t\t */\n\t\t'input',\n\t\t/**\n\t\t * Emitted when the input value changes\n\t\t *\n\t\t * @return {Date} new chosen Date()\n\t\t */\n\t\t'update:modelValue',\n\t\t/** Same as update:modelValue for Vue 2 compatibility */\n\t\t'update:model-value',\n\t],\n\n\tsetup() {\n\t\tconst model = useModelMigration('value', 'input')\n\t\treturn {\n\t\t\tmodel,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tformattedValue() {\n\t\t\treturn this.formatValue(this.model)\n\t\t},\n\t\tformattedMin() {\n\t\t\tif (this.min) {\n\t\t\t\treturn this.formatValue(this.min)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tformattedMax() {\n\t\t\tif (this.max) {\n\t\t\t\treturn this.formatValue(this.max)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tlisteners() {\n\t\t\treturn {\n\t\t\t\t...this.$listeners,\n\t\t\t\t/**\n\t\t\t\t * Handle the input event\n\t\t\t\t *\n\t\t\t\t * @param {InputEvent} $event input event payload\n\t\t\t\t * @return {Date|string} new chosen Date() or an empty string\n\t\t\t\t */\n\t\t\t\tinput: ($event) => {\n\t\t\t\t\tif (isNaN($event.target.valueAsNumber)) {\n\t\t\t\t\t\tthis.model = null\n\t\t\t\t\t} else if (this.type === 'time') {\n\t\t\t\t\t\tconst time = $event.target.value\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\t// this case is because of Chrome bug\n\t\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t * Emitted when the input value changes\n\t\t\t\t\t\t\t *\n\t\t\t\t\t\t\t * @return {Date} new chosen Date()\n\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst { yyyy, MM, dd } = this.getReadableDate(this.model)\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${time}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\t\tconst MM = (new Date($event.target.value).getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\t\t\tif (this.model === '') {\n\t\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(new Date())\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst { yyyy, dd, hh, mm } = this.getReadableDate(this.model)\n\t\t\t\t\t\t\tthis.model = new Date(`${yyyy}-${MM}-${dd}T${hh}:${mm}`)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst timezoneOffsetSeconds = new Date($event.target.valueAsNumber).getTimezoneOffset() * 1000 * 60\n\t\t\t\t\t\tconst inputDateWithTimezone = $event.target.valueAsNumber + timezoneOffsetSeconds\n\t\t\t\t\t\tthis.model = new Date(inputDateWithTimezone)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t}\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Returns Object with string values of a Date\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {object|undefined}\n\t\t */\n\t\tgetReadableDate(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst yyyy = value.getFullYear().toString().padStart(4, '0')\n\t\t\t\tconst MM = (value.getMonth() + 1).toString().padStart(2, '0')\n\t\t\t\tconst dd = value.getDate().toString().padStart(2, '0')\n\t\t\t\tconst hh = value.getHours().toString().padStart(2, '0')\n\t\t\t\tconst mm = value.getMinutes().toString().padStart(2, '0')\n\n\t\t\t\treturn { yyyy, MM, dd, hh, mm }\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Returns preformatted value for the input field\n\t\t *\n\t\t * @param {Date} value The selected value\n\t\t * @return {string|undefined}\n\t\t */\n\t\tformatValue(value) {\n\t\t\tif (value instanceof Date) {\n\t\t\t\tconst { yyyy, MM, dd, hh, mm } = this.getReadableDate(value)\n\t\t\t\tif (this.type === 'datetime-local') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}T${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'date') {\n\t\t\t\t\treturn `${yyyy}-${MM}-${dd}`\n\t\t\t\t} else if (this.type === 'month') {\n\t\t\t\t\treturn `${yyyy}-${MM}`\n\t\t\t\t} else if (this.type === 'time') {\n\t\t\t\t\treturn `${hh}:${mm}`\n\t\t\t\t} else if (this.type === 'week') {\n\t\t\t\t\tconst startDate = new Date(yyyy, 0, 1)\n\t\t\t\t\tconst daysSinceBeginningOfYear = Math.floor((value - startDate)\n\t\t\t\t\t\t/ (24 * 60 * 60 * 1000))\n\t\t\t\t\tconst weekNumber = Math.ceil(daysSinceBeginningOfYear / 7)\n\t\t\t\t\treturn `${yyyy}-W${weekNumber}`\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\treturn ''\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.native-datetime-picker {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t.native-datetime-picker .native-datetime-picker--label {\n\t\tmargin-block-end: 2px;\n\t}\n\n\t.native-datetime-picker .native-datetime-picker--input {\n\t\t// If border width differs between focused and unfocused we need to compensate to prevent jumping\n\t\t--input-border-width-offset: calc(var(--border-width-input-focused, 2px) - var(--border-width-input, 2px));\n\t\twidth: 100%;\n\t\tflex: 0 0 auto;\n\t\tmargin: 0;\n\t\tpadding-inline-start: calc(var(--border-radius-large) + var(--input-border-width-offset));\n\t\tpadding-inline-end: calc(var(--default-grid-baseline) + var(--input-border-width-offset));\n\t\tborder: var(--border-width-input, 2px) solid var(--color-border-maxcontrast);\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]),\n\t\t&:focus-within:not([disabled]) {\n\t\t\tborder-color: var(--color-main-text);\n\t\t\tborder-width: var(--border-width-input-focused, 2px);\n\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t\t// Reset padding offset when focused\n\t\t\t--input-border-width-offset: 0px;\n\t\t}\n\t}\n\n\t[data-theme-light],\n\t[data-themes*=light] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: light;\n\t\t}\n\t}\n\n\t[data-theme-dark],\n\t[data-themes*=dark] {\n\t\t.native-datetime-picker--input {\n\t\t\tcolor-scheme: dark;\n\t\t}\n\t}\n\n\t[data-theme-default],\n\t[data-themes*=default] {\n\t\t@media (prefers-color-scheme: light) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: light;\n\t\t\t}\n\t\t}\n\t\t@media (prefers-color-scheme: dark) {\n\t\t\t.native-datetime-picker--input {\n\t\t\t\tcolor-scheme: dark;\n\t\t\t}\n\t\t}\n\t}\n</style>\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcDateTimePickerNative from './NcDateTimePickerNative.vue'\nimport ScopeComponent from '../../utils/ScopeComponent.js'\n\nScopeComponent(NcDateTimePickerNative)\n\nexport default NcDateTimePickerNative\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require('../assets/NcHeaderButton-
|
|
1
|
+
require('../assets/NcHeaderButton-BPkJ5wxD.css');
|
|
2
2
|
"use strict";
|
|
3
3
|
const GenRandomId = require("../chunks/GenRandomId-BQDud3d4.cjs");
|
|
4
4
|
const Components_NcButton = require("./NcButton.cjs");
|
|
@@ -56,7 +56,7 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
56
56
|
_sfc_staticRenderFns,
|
|
57
57
|
false,
|
|
58
58
|
null,
|
|
59
|
-
"
|
|
59
|
+
"6be13bb0"
|
|
60
60
|
);
|
|
61
61
|
const NcHeaderButton = __component__.exports;
|
|
62
62
|
module.exports = NcHeaderButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcHeaderButton.cjs","sources":["../../src/components/NcHeaderButton/NcHeaderButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header,\nsimilar to the NcHeaderMenu but to be used when only a trigger button is needed, e.g. when opening a dialog.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderButton id=\"search-dialog\"\n\t\t\taria-label=\"Search\"\n\t\t\t@click=\"showDialog = true\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t</NcHeaderButton>\n\n\t\t<NcDialog name=\"Search\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showDialog\">\n\t\t\t<NcTextField label=\"Search for files, comments, contacts…\"\n\t\t\t\ttype=\"search\"\n\t\t\t\t:value.sync=\"query\" />\n\t\t\t<NcEmptyContent name=\"Search\"\n\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Magnify />\n\t\t\t\t</template>\n\t\t\t</NcEmptyContent>\n\t\t</NcDialog>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowDialog: false,\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-
|
|
1
|
+
{"version":3,"file":"NcHeaderButton.cjs","sources":["../../src/components/NcHeaderButton/NcHeaderButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header,\nsimilar to the NcHeaderMenu but to be used when only a trigger button is needed, e.g. when opening a dialog.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderButton id=\"search-dialog\"\n\t\t\taria-label=\"Search\"\n\t\t\t@click=\"showDialog = true\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t</NcHeaderButton>\n\n\t\t<NcDialog name=\"Search\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showDialog\">\n\t\t\t<NcTextField label=\"Search for files, comments, contacts…\"\n\t\t\t\ttype=\"search\"\n\t\t\t\t:value.sync=\"query\" />\n\t\t\t<NcEmptyContent name=\"Search\"\n\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Magnify />\n\t\t\t\t</template>\n\t\t\t</NcEmptyContent>\n\t\t</NcDialog>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowDialog: false,\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-inline-end: 12px;\n}\n</style>\n```\n</docs>\n\n<template>\n\t<!-- We need a wrapper for server styles to apply -->\n\t<div :id=\"id\" class=\"header-menu\">\n\t\t<NcButton type=\"tertiary-no-background\"\n\t\t\tclass=\"header-menu__trigger\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:aria-describedby=\"descriptionId\"\n\t\t\tsize=\"large\"\n\t\t\t@click.prevent=\"$emit('click', $event)\">\n\t\t\t<template #icon>\n\t\t\t\t<!-- @slot Icon trigger slot. Make sure the svg path\n\t\t\t\tis at least 16px. Usually mdi icon works at 20px -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</template>\n\t\t</NcButton>\n\n\t\t<span v-if=\"description\"\n\t\t\t:id=\"descriptionId\"\n\t\t\tclass=\"header-menu__description hidden-visually\">\n\t\t\t{{ description }}\n\t\t</span>\n\t</div>\n</template>\n\n<script>\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport NcButton from '../NcButton/index.js'\n\nexport default {\n\tname: 'NcHeaderButton',\n\n\tcomponents: {\n\t\tNcButton,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Unique id for this menu\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * `aria-label` attribute of the button\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * Additional visually hidden description text for the button\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tdescriptionId: GenRandomId(),\n\t\t}\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../NcHeaderMenu/header-menu__trigger';\n</style>\n"],"names":["NcButton","GenRandomId"],"mappings":";;;;AA2FA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,UAAAA;AAAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,eAAAC,YAAAA,YAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import '../assets/NcHeaderButton-
|
|
1
|
+
import '../assets/NcHeaderButton-BPkJ5wxD.css';
|
|
2
2
|
import { G as GenRandomId } from "../chunks/GenRandomId-CMooMQt0.mjs";
|
|
3
3
|
import NcButton from "./NcButton.mjs";
|
|
4
4
|
import { n as normalizeComponent } from "../chunks/_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
@@ -55,7 +55,7 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
55
55
|
_sfc_staticRenderFns,
|
|
56
56
|
false,
|
|
57
57
|
null,
|
|
58
|
-
"
|
|
58
|
+
"6be13bb0"
|
|
59
59
|
);
|
|
60
60
|
const NcHeaderButton = __component__.exports;
|
|
61
61
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcHeaderButton.mjs","sources":["../../src/components/NcHeaderButton/NcHeaderButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header,\nsimilar to the NcHeaderMenu but to be used when only a trigger button is needed, e.g. when opening a dialog.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderButton id=\"search-dialog\"\n\t\t\taria-label=\"Search\"\n\t\t\t@click=\"showDialog = true\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t</NcHeaderButton>\n\n\t\t<NcDialog name=\"Search\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showDialog\">\n\t\t\t<NcTextField label=\"Search for files, comments, contacts…\"\n\t\t\t\ttype=\"search\"\n\t\t\t\t:value.sync=\"query\" />\n\t\t\t<NcEmptyContent name=\"Search\"\n\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Magnify />\n\t\t\t\t</template>\n\t\t\t</NcEmptyContent>\n\t\t</NcDialog>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowDialog: false,\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-
|
|
1
|
+
{"version":3,"file":"NcHeaderButton.mjs","sources":["../../src/components/NcHeaderButton/NcHeaderButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used in the Nextcloud top header,\nsimilar to the NcHeaderMenu but to be used when only a trigger button is needed, e.g. when opening a dialog.\n\n```\n<template>\n\t<div id=\"nextcloud-header\">\n\t\t<NcHeaderButton id=\"search-dialog\"\n\t\t\taria-label=\"Search\"\n\t\t\t@click=\"showDialog = true\">\n\t\t\t<template #icon>\n\t\t\t\t<Magnify />\n\t\t\t</template>\n\t\t</NcHeaderButton>\n\n\t\t<NcDialog name=\"Search\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showDialog\">\n\t\t\t<NcTextField label=\"Search for files, comments, contacts…\"\n\t\t\t\ttype=\"search\"\n\t\t\t\t:value.sync=\"query\" />\n\t\t\t<NcEmptyContent name=\"Search\"\n\t\t\t\t:description=\"query ? `No results for '${query}'` : 'Start typing to search'\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Magnify />\n\t\t\t\t</template>\n\t\t\t</NcEmptyContent>\n\t\t</NcDialog>\n\t</div>\n</template>\n<script>\nimport Magnify from 'vue-material-design-icons/Magnify'\n\nexport default {\n\tcomponents: {\n\t\tMagnify,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowDialog: false,\n\t\t\tquery: '',\n\t\t}\n\t},\n}\n</script>\n<style>\n#nextcloud-header {\n\tdisplay: flex;\n\tjustify-content: right;\n\tbackground-color: var(--color-primary);\n\theight: var(--header-height, 50px);\n\tpadding-inline-end: 12px;\n}\n</style>\n```\n</docs>\n\n<template>\n\t<!-- We need a wrapper for server styles to apply -->\n\t<div :id=\"id\" class=\"header-menu\">\n\t\t<NcButton type=\"tertiary-no-background\"\n\t\t\tclass=\"header-menu__trigger\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:aria-describedby=\"descriptionId\"\n\t\t\tsize=\"large\"\n\t\t\t@click.prevent=\"$emit('click', $event)\">\n\t\t\t<template #icon>\n\t\t\t\t<!-- @slot Icon trigger slot. Make sure the svg path\n\t\t\t\tis at least 16px. Usually mdi icon works at 20px -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</template>\n\t\t</NcButton>\n\n\t\t<span v-if=\"description\"\n\t\t\t:id=\"descriptionId\"\n\t\t\tclass=\"header-menu__description hidden-visually\">\n\t\t\t{{ description }}\n\t\t</span>\n\t</div>\n</template>\n\n<script>\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport NcButton from '../NcButton/index.js'\n\nexport default {\n\tname: 'NcHeaderButton',\n\n\tcomponents: {\n\t\tNcButton,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Unique id for this menu\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * `aria-label` attribute of the button\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * Additional visually hidden description text for the button\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tdescriptionId: GenRandomId(),\n\t\t}\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../NcHeaderMenu/header-menu__trigger';\n</style>\n"],"names":[],"mappings":";;;AA2FA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,eAAA,YAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
|