@nextcloud/vue 9.0.0-alpha.0 → 9.0.0-alpha.1
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 +47 -1
- package/dist/Components/NcActionButton.cjs +1 -1
- package/dist/Components/NcActionButton.mjs +1 -1
- package/dist/Components/NcActionButtonGroup.cjs +1 -1
- package/dist/Components/NcActionButtonGroup.mjs +1 -1
- package/dist/Components/NcActionCheckbox.cjs +1 -1
- package/dist/Components/NcActionCheckbox.mjs +1 -1
- package/dist/Components/NcActionInput.cjs +1 -1
- package/dist/Components/NcActionInput.mjs +1 -1
- package/dist/Components/NcActionLink.cjs +1 -1
- package/dist/Components/NcActionLink.mjs +1 -1
- package/dist/Components/NcActionRadio.cjs +1 -1
- package/dist/Components/NcActionRadio.mjs +1 -1
- package/dist/Components/NcActionRouter.cjs +1 -1
- package/dist/Components/NcActionRouter.mjs +1 -1
- package/dist/Components/NcActionText.cjs +1 -1
- package/dist/Components/NcActionText.mjs +1 -1
- package/dist/Components/NcActionTextEditable.cjs +1 -1
- package/dist/Components/NcActionTextEditable.mjs +1 -1
- package/dist/Components/NcActions.cjs +1 -1
- package/dist/Components/NcActions.mjs +1 -1
- package/dist/Components/NcAppContent.cjs +1 -1
- package/dist/Components/NcAppContent.mjs +1 -1
- package/dist/Components/NcAppNavigation.cjs +1 -1
- package/dist/Components/NcAppNavigation.mjs +1 -1
- package/dist/Components/NcAppNavigationCaption.cjs +1 -1
- package/dist/Components/NcAppNavigationCaption.mjs +1 -1
- package/dist/Components/NcAppNavigationItem.cjs +1 -1
- package/dist/Components/NcAppNavigationItem.mjs +1 -1
- package/dist/Components/NcAppNavigationNew.cjs +1 -1
- package/dist/Components/NcAppNavigationNew.mjs +1 -1
- package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
- package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
- package/dist/Components/NcAppNavigationSettings.cjs +1 -1
- package/dist/Components/NcAppNavigationSettings.mjs +1 -1
- package/dist/Components/NcAppNavigationToggle.cjs +1 -1
- package/dist/Components/NcAppNavigationToggle.mjs +1 -1
- package/dist/Components/NcAppSettingsDialog.cjs +1 -1
- package/dist/Components/NcAppSettingsDialog.mjs +1 -1
- package/dist/Components/NcAppSettingsSection.cjs +1 -1
- package/dist/Components/NcAppSettingsSection.mjs +1 -1
- package/dist/Components/NcAppSidebar.cjs +1 -1
- package/dist/Components/NcAppSidebar.mjs +1 -1
- package/dist/Components/NcAppSidebarTab.cjs +1 -1
- package/dist/Components/NcAppSidebarTab.mjs +1 -1
- package/dist/Components/NcAvatar.cjs +1 -1
- package/dist/Components/NcAvatar.mjs +1 -1
- package/dist/Components/NcBreadcrumb.cjs +1 -1
- package/dist/Components/NcBreadcrumb.mjs +1 -1
- package/dist/Components/NcBreadcrumbs.cjs +1 -1
- package/dist/Components/NcBreadcrumbs.mjs +1 -1
- package/dist/Components/NcButton.cjs +1 -1
- package/dist/Components/NcButton.mjs +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
- package/dist/Components/NcColorPicker.cjs +1 -1
- package/dist/Components/NcColorPicker.mjs +1 -1
- package/dist/Components/NcContent.cjs +1 -1
- package/dist/Components/NcContent.mjs +1 -1
- package/dist/Components/NcDashboardWidget.cjs +1 -1
- package/dist/Components/NcDashboardWidget.mjs +1 -1
- package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
- package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
- package/dist/Components/NcDateTime.cjs +1 -1
- package/dist/Components/NcDateTime.mjs +1 -1
- package/dist/Components/NcDateTimePicker.cjs +1 -1
- package/dist/Components/NcDateTimePicker.mjs +1 -1
- package/dist/Components/NcDateTimePickerNative.cjs +1 -1
- package/dist/Components/NcDateTimePickerNative.mjs +1 -1
- package/dist/Components/NcDialog.cjs +1 -1
- package/dist/Components/NcDialog.mjs +1 -1
- package/dist/Components/NcDialogButton.cjs +1 -1
- package/dist/Components/NcDialogButton.mjs +1 -1
- package/dist/Components/NcEmojiPicker.cjs +1 -1
- package/dist/Components/NcEmojiPicker.mjs +1 -1
- package/dist/Components/NcHeaderMenu.cjs +1 -1
- package/dist/Components/NcHeaderMenu.mjs +1 -1
- package/dist/Components/NcIconSvgWrapper.cjs +1 -1
- package/dist/Components/NcIconSvgWrapper.mjs +1 -1
- package/dist/Components/NcInputField.cjs +1 -1
- package/dist/Components/NcInputField.mjs +1 -1
- package/dist/Components/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 +12 -11
- package/dist/Components/NcModal.cjs.map +1 -1
- package/dist/Components/NcModal.mjs +37 -36
- package/dist/Components/NcModal.mjs.map +1 -1
- package/dist/Components/NcNoteCard.cjs +1 -1
- package/dist/Components/NcNoteCard.mjs +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/NcProgressBar.cjs +1 -1
- package/dist/Components/NcProgressBar.mjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
- package/dist/Components/NcRichContenteditable.cjs +1 -1
- package/dist/Components/NcRichContenteditable.mjs +2 -2
- package/dist/Components/NcRichText.cjs +1 -1
- 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/NcTextArea.cjs +1 -1
- package/dist/Components/NcTextArea.mjs +1 -1
- package/dist/Components/NcTextField.cjs +1 -1
- package/dist/Components/NcTextField.mjs +1 -1
- package/dist/Components/NcTimezonePicker.cjs +1 -1
- package/dist/Components/NcTimezonePicker.mjs +1 -1
- package/dist/Components/NcUserBubble.cjs +1 -1
- package/dist/Components/NcUserBubble.mjs +1 -1
- package/dist/Components/NcUserStatusIcon.cjs +1 -1
- package/dist/Components/NcUserStatusIcon.mjs +1 -1
- package/dist/Components/NcVNodes.cjs +4 -3
- package/dist/Components/NcVNodes.cjs.map +1 -1
- package/dist/Components/NcVNodes.mjs +4 -3
- package/dist/Components/NcVNodes.mjs.map +1 -1
- package/dist/Directives/Linkify.cjs +5 -4
- package/dist/Directives/Linkify.cjs.map +1 -1
- package/dist/Directives/Linkify.mjs +6 -5
- package/dist/Directives/Linkify.mjs.map +1 -1
- package/dist/Functions/emoji.cjs +1 -1
- package/dist/Functions/emoji.mjs +1 -1
- package/dist/Functions/usernameToColor.cjs +1 -1
- package/dist/Functions/usernameToColor.mjs +1 -1
- package/dist/Mixins/richEditor.cjs +1 -1
- package/dist/Mixins/richEditor.mjs +1 -1
- package/dist/assets/{NcActionButton-p7spK21h.css → NcActionButton-De4wlKZH.css} +17 -17
- package/dist/assets/{NcActions-cEMOhd0g.css → NcActions-PR-7NI_x.css} +12 -12
- package/dist/assets/{NcAppContent--D5zvLsb.css → NcAppContent-kIkHd4VN.css} +1 -0
- package/dist/assets/{NcAppNavigationItem-V2jQd3bm.css → NcAppNavigationItem-_MHs9DEv.css} +14 -7
- package/dist/assets/{NcAppNavigationNewItem-MQBvffq9.css → NcAppNavigationNewItem-ue-H4LQY.css} +14 -7
- package/dist/assets/{NcAppNavigationToggle-egZffUzR.css → NcAppNavigationToggle-VrntFGdJ.css} +3 -3
- package/dist/assets/{NcAppSettingsDialog-F29bz2Yx.css → NcAppSettingsDialog-HOydlmNi.css} +16 -17
- package/dist/assets/{NcAppSidebar-QQPSZPo9.css → NcAppSidebar-UFABwmpX.css} +44 -44
- package/dist/assets/{NcAvatar-qgACiUer.css → NcAvatar-DCUiVghV.css} +27 -27
- package/dist/assets/{NcBreadcrumbs-liWjT068.css → NcBreadcrumbs-VKFJ9HrE.css} +7 -7
- package/dist/assets/{NcButton-fqTN6SJK.css → NcButton-rKJYdkZn.css} +43 -43
- package/dist/assets/{NcCheckboxRadioSwitch-P71iLdgD.css → NcCheckboxRadioSwitch-dNV4KgTO.css} +49 -47
- package/dist/assets/{NcColorPicker-88MDZrB0.css → NcColorPicker-FiFz1rof.css} +24 -24
- package/dist/assets/{NcContent-ZG2BJ837.css → NcContent-3Fl9j87E.css} +9 -9
- package/dist/assets/{NcDateTimePicker-SsDztIsS.css → NcDateTimePicker-CC5ocPIo.css} +10 -10
- package/dist/assets/{NcDateTimePickerNative-QBosiBWA.css → NcDateTimePickerNative-BeREqSH_.css} +19 -7
- package/dist/assets/{NcDialog-9-cx1V0y.css → NcDialog-IM0YIgKq.css} +30 -19
- package/dist/assets/{NcEmojiPicker-KRMyqbWg.css → NcEmojiPicker-nDpi1GKA.css} +6 -5
- package/dist/assets/{NcHeaderMenu-j8h_puZT.css → NcHeaderMenu-kKraSlS3.css} +15 -15
- package/dist/assets/{NcInputField-42mSa1zm.css → NcInputField-qx4Me7uJ.css} +39 -38
- package/dist/assets/{NcListItem--i7b67QY.css → NcListItem-RylkggkP.css} +49 -49
- package/dist/assets/{NcModal-DzsqMWSJ.css → NcModal-lgvjJTYz.css} +65 -65
- package/dist/assets/{NcNoteCard-OTfZqVvP.css → NcNoteCard-f0NZpwjL.css} +7 -7
- package/dist/assets/{NcRichContenteditable-nUZdQSMZ.css → NcRichContenteditable--bkjerM1.css} +13 -12
- package/dist/assets/{NcTextArea-6akBm4Ks.css → NcTextArea-Eqv_-5FR.css} +24 -23
- package/dist/assets/{referencePickerModal-G-NTZHL1.css → referencePickerModal-k5G-IS2z.css} +2 -2
- package/dist/chunks/{AlertCircleOutline-Q4EgxGNm.mjs → AlertCircleOutline-1fsF7za7.mjs} +6 -6
- package/dist/chunks/AlertCircleOutline-1fsF7za7.mjs.map +1 -0
- package/dist/chunks/{AlertCircleOutline-aU4Cu4IM.cjs → AlertCircleOutline-M7wVqz_-.cjs} +1 -1
- package/dist/chunks/AlertCircleOutline-M7wVqz_-.cjs.map +1 -0
- package/dist/chunks/{ArrowLeft-4DZMGcXE.cjs → ArrowLeft-arUkZZ3U.cjs} +4 -4
- package/dist/chunks/ArrowLeft-arUkZZ3U.cjs.map +1 -0
- package/dist/chunks/{ArrowLeft-LlLrrfss.mjs → ArrowLeft-uvAzhtxD.mjs} +4 -4
- package/dist/chunks/ArrowLeft-uvAzhtxD.mjs.map +1 -0
- package/dist/chunks/{ArrowRight-Fk_qtqpW.mjs → ArrowRight-6gYTXvBH.mjs} +4 -4
- package/dist/chunks/ArrowRight-6gYTXvBH.mjs.map +1 -0
- package/dist/chunks/{ArrowRight-mI4Fw0h2.cjs → ArrowRight-UxW1qyeX.cjs} +5 -5
- package/dist/chunks/ArrowRight-UxW1qyeX.cjs.map +1 -0
- package/dist/chunks/{Check-SlTPuUzR.cjs → Check-fwcsc82n.cjs} +4 -4
- package/dist/chunks/Check-fwcsc82n.cjs.map +1 -0
- package/dist/chunks/{Check-hentWFPd.mjs → Check-tQl0Vp18.mjs} +6 -6
- package/dist/chunks/Check-tQl0Vp18.mjs.map +1 -0
- package/dist/chunks/{ChevronDown-7w1_NWAd.cjs → ChevronDown-8tkFE94e.cjs} +4 -4
- package/dist/chunks/ChevronDown-8tkFE94e.cjs.map +1 -0
- package/dist/chunks/{ChevronDown-hP8YKVnf.mjs → ChevronDown-BxTx7hZm.mjs} +1 -1
- package/dist/chunks/ChevronDown-BxTx7hZm.mjs.map +1 -0
- package/dist/chunks/{ChevronRight-iDcqZ2Ih.cjs → ChevronRight-7GGKl2bX.cjs} +2 -2
- package/dist/chunks/ChevronRight-7GGKl2bX.cjs.map +1 -0
- package/dist/chunks/{ChevronRight-xEIO1OE7.mjs → ChevronRight-gF2cX9Cu.mjs} +4 -4
- package/dist/chunks/ChevronRight-gF2cX9Cu.mjs.map +1 -0
- package/dist/chunks/{Close-2nENZfbn.cjs → Close-e2vDvDm2.cjs} +7 -7
- package/dist/chunks/Close-e2vDvDm2.cjs.map +1 -0
- package/dist/chunks/{Close-4lZze_oD.mjs → Close-hKJ11hky.mjs} +5 -5
- package/dist/chunks/Close-hKJ11hky.mjs.map +1 -0
- package/dist/chunks/{DotsHorizontal-2GCivGee.mjs → DotsHorizontal-JfmEIGBo.mjs} +4 -4
- package/dist/chunks/DotsHorizontal-JfmEIGBo.mjs.map +1 -0
- package/dist/chunks/{DotsHorizontal-Ehuu1q0g.cjs → DotsHorizontal-z8LXg-4B.cjs} +4 -4
- package/dist/chunks/DotsHorizontal-z8LXg-4B.cjs.map +1 -0
- package/dist/chunks/{GenColors-avBT67Zu.mjs → GenColors-L7jWucCS.mjs} +3 -3
- package/dist/chunks/{GenColors-avBT67Zu.mjs.map → GenColors-L7jWucCS.mjs.map} +1 -1
- package/dist/chunks/{GenColors-ojnUsIA8.cjs → GenColors-vx_p2Tvw.cjs} +3 -3
- package/dist/chunks/{GenColors-ojnUsIA8.cjs.map → GenColors-vx_p2Tvw.cjs.map} +1 -1
- package/dist/chunks/{NcActionButton-TAhaLmwa.mjs → NcActionButton-VnbqrtOY.mjs} +15 -13
- package/dist/chunks/NcActionButton-VnbqrtOY.mjs.map +1 -0
- package/dist/chunks/{NcActionButton-G4OSfyii.cjs → NcActionButton-sJpgOVU9.cjs} +19 -17
- package/dist/chunks/NcActionButton-sJpgOVU9.cjs.map +1 -0
- package/dist/chunks/{NcActionButtonGroup-jTRjqpYM.cjs → NcActionButtonGroup-5PPiueIz.cjs} +2 -2
- package/dist/chunks/{NcActionButtonGroup-jTRjqpYM.cjs.map → NcActionButtonGroup-5PPiueIz.cjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-0hif9Dcf.mjs → NcActionButtonGroup-oFPVvd4U.mjs} +2 -2
- package/dist/chunks/{NcActionButtonGroup-0hif9Dcf.mjs.map → NcActionButtonGroup-oFPVvd4U.mjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-PWAridhc.mjs → NcActionCheckbox-5-bIAzkC.mjs} +1 -1
- package/dist/chunks/{NcActionCheckbox-PWAridhc.mjs.map → NcActionCheckbox-5-bIAzkC.mjs.map} +1 -1
- package/dist/chunks/{NcActionCheckbox-Z4Wc9828.cjs → NcActionCheckbox-CUXJQss6.cjs} +1 -1
- package/dist/chunks/{NcActionCheckbox-Z4Wc9828.cjs.map → NcActionCheckbox-CUXJQss6.cjs.map} +1 -1
- package/dist/chunks/{NcActionInput-GuwDt73G.cjs → NcActionInput-of1oXP_n.cjs} +2 -2
- package/dist/chunks/{NcActionInput-GuwDt73G.cjs.map → NcActionInput-of1oXP_n.cjs.map} +1 -1
- package/dist/chunks/{NcActionInput-7-f1OPr6.mjs → NcActionInput-zg13uJ6x.mjs} +8 -8
- package/dist/chunks/{NcActionInput-7-f1OPr6.mjs.map → NcActionInput-zg13uJ6x.mjs.map} +1 -1
- package/dist/chunks/{NcActionLink-QLFtD_iF.cjs → NcActionLink-eBaRU5qY.cjs} +2 -2
- package/dist/chunks/{NcActionLink-QLFtD_iF.cjs.map → NcActionLink-eBaRU5qY.cjs.map} +1 -1
- package/dist/chunks/{NcActionLink-YllmwOrF.mjs → NcActionLink-pscYsQ_3.mjs} +2 -2
- package/dist/chunks/{NcActionLink-YllmwOrF.mjs.map → NcActionLink-pscYsQ_3.mjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-DSBghCIA.mjs → NcActionRadio-1QLxEcfl.mjs} +1 -1
- package/dist/chunks/{NcActionRadio-DSBghCIA.mjs.map → NcActionRadio-1QLxEcfl.mjs.map} +1 -1
- package/dist/chunks/{NcActionRadio-1U50276u.cjs → NcActionRadio-3UkRsS6r.cjs} +1 -1
- package/dist/chunks/{NcActionRadio-1U50276u.cjs.map → NcActionRadio-3UkRsS6r.cjs.map} +1 -1
- package/dist/chunks/{NcActionRouter-vBYCxyc1.mjs → NcActionRouter-BsOXVKlY.mjs} +2 -2
- package/dist/chunks/{NcActionRouter-vBYCxyc1.mjs.map → NcActionRouter-BsOXVKlY.mjs.map} +1 -1
- package/dist/chunks/{NcActionRouter-Vg-BSvq7.cjs → NcActionRouter-c6pYto3T.cjs} +2 -2
- package/dist/chunks/{NcActionRouter-Vg-BSvq7.cjs.map → NcActionRouter-c6pYto3T.cjs.map} +1 -1
- package/dist/chunks/{NcActionText-p3Ew3r1G.mjs → NcActionText-9Ti6bh1b.mjs} +2 -2
- package/dist/chunks/{NcActionText-p3Ew3r1G.mjs.map → NcActionText-9Ti6bh1b.mjs.map} +1 -1
- package/dist/chunks/{NcActionText-aWTbDRVH.cjs → NcActionText-Sw_tMRaW.cjs} +2 -2
- package/dist/chunks/{NcActionText-aWTbDRVH.cjs.map → NcActionText-Sw_tMRaW.cjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-RUh3BjpU.cjs → NcActionTextEditable-faJIAtYw.cjs} +2 -2
- package/dist/chunks/{NcActionTextEditable-RUh3BjpU.cjs.map → NcActionTextEditable-faJIAtYw.cjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-PAn8Dpv4.mjs → NcActionTextEditable-xPb_cTMW.mjs} +3 -3
- package/dist/chunks/{NcActionTextEditable-PAn8Dpv4.mjs.map → NcActionTextEditable-xPb_cTMW.mjs.map} +1 -1
- package/dist/chunks/{NcActions-6Yv0De7D.mjs → NcActions-76CtOBCq.mjs} +160 -114
- package/dist/chunks/NcActions-76CtOBCq.mjs.map +1 -0
- package/dist/chunks/{NcActions-VJy75Dj8.cjs → NcActions-YpbmJ7hS.cjs} +160 -115
- package/dist/chunks/NcActions-YpbmJ7hS.cjs.map +1 -0
- package/dist/chunks/{NcAppContent-rV1EGzGY.mjs → NcAppContent-Tw5gNorr.mjs} +6 -6
- package/dist/chunks/{NcAppContent-rV1EGzGY.mjs.map → NcAppContent-Tw5gNorr.mjs.map} +1 -1
- package/dist/chunks/{NcAppContent-khCUrgDu.cjs → NcAppContent-mHc-Ms2b.cjs} +5 -5
- package/dist/chunks/{NcAppContent-khCUrgDu.cjs.map → NcAppContent-mHc-Ms2b.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigation-wvBM1j2_.mjs → NcAppNavigation-sY7HaHMv.mjs} +1 -1
- package/dist/chunks/{NcAppNavigation-wvBM1j2_.mjs.map → NcAppNavigation-sY7HaHMv.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigation-qnc3o3YP.cjs → NcAppNavigation-yEZ-RJA2.cjs} +1 -1
- package/dist/chunks/{NcAppNavigation-qnc3o3YP.cjs.map → NcAppNavigation-yEZ-RJA2.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-6SpoIhcW.cjs → NcAppNavigationCaption-XpbVXYKV.cjs} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-6SpoIhcW.cjs.map → NcAppNavigationCaption-XpbVXYKV.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-wnBg9gYq.mjs → NcAppNavigationCaption-pcyV3wRO.mjs} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-wnBg9gYq.mjs.map → NcAppNavigationCaption-pcyV3wRO.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-VR6oSt2q.mjs → NcAppNavigationItem-JLYTEgEH.mjs} +22 -22
- package/dist/chunks/NcAppNavigationItem-JLYTEgEH.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationItem-6kzsp9I8.cjs → NcAppNavigationItem-NE1UdZkS.cjs} +6 -6
- package/dist/chunks/NcAppNavigationItem-NE1UdZkS.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationNew-AamR4VD3.mjs → NcAppNavigationNew-6ZAJS_DY.mjs} +1 -1
- package/dist/chunks/{NcAppNavigationNew-AamR4VD3.mjs.map → NcAppNavigationNew-6ZAJS_DY.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNew-ae4GCKxx.cjs → NcAppNavigationNew-hmJL2IDR.cjs} +1 -1
- package/dist/chunks/{NcAppNavigationNew-ae4GCKxx.cjs.map → NcAppNavigationNew-hmJL2IDR.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-sZ0DdaXr.cjs → NcAppNavigationNewItem-MjsbS_dO.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationNewItem-sZ0DdaXr.cjs.map → NcAppNavigationNewItem-MjsbS_dO.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-tSH06MX2.mjs → NcAppNavigationNewItem-NzRL8Uwy.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationNewItem-tSH06MX2.mjs.map → NcAppNavigationNewItem-NzRL8Uwy.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-mYqB3vRb.cjs → NcAppNavigationSettings-DPeH305A.cjs} +2 -2
- package/dist/chunks/NcAppNavigationSettings-DPeH305A.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationSettings-giVx2sHN.mjs → NcAppNavigationSettings-LR3QCvNr.mjs} +2 -2
- package/dist/chunks/NcAppNavigationSettings-LR3QCvNr.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationToggle-DBCPaseG.mjs → NcAppNavigationToggle-SEvIEY16.mjs} +29 -20
- package/dist/chunks/NcAppNavigationToggle-SEvIEY16.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationToggle-cRUPsHZH.cjs → NcAppNavigationToggle-sXvQDqok.cjs} +17 -8
- package/dist/chunks/NcAppNavigationToggle-sXvQDqok.cjs.map +1 -0
- package/dist/chunks/{NcAppSettingsDialog-WvDTWMwC.cjs → NcAppSettingsDialog-HnYa47vg.cjs} +51 -44
- package/dist/chunks/{NcAppSettingsDialog-90cJBaTf.mjs.map → NcAppSettingsDialog-HnYa47vg.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-90cJBaTf.mjs → NcAppSettingsDialog-nbTWBbti.mjs} +65 -58
- package/dist/chunks/{NcAppSettingsDialog-WvDTWMwC.cjs.map → NcAppSettingsDialog-nbTWBbti.mjs.map} +1 -1
- package/dist/chunks/NcAppSettingsSection-LHcKgBpz.cjs +54 -0
- package/dist/chunks/{NcAppSettingsSection-wLClE1lO.cjs.map → NcAppSettingsSection-LHcKgBpz.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsSection-WcupJObJ.mjs → NcAppSettingsSection-a0Un2ZRv.mjs} +18 -15
- package/dist/chunks/{NcAppSettingsSection-WcupJObJ.mjs.map → NcAppSettingsSection-a0Un2ZRv.mjs.map} +1 -1
- package/dist/chunks/NcAppSidebar-Tvy0LplS.cjs +712 -0
- package/dist/chunks/NcAppSidebar-Tvy0LplS.cjs.map +1 -0
- package/dist/chunks/NcAppSidebar-xWMj1EI8.mjs +731 -0
- package/dist/chunks/NcAppSidebar-xWMj1EI8.mjs.map +1 -0
- package/dist/chunks/{NcAppSidebarTab-BeWt8Sdt.cjs → NcAppSidebarTab-oPHofCKq.cjs} +15 -14
- package/dist/chunks/{NcAppSidebarTab-BeWt8Sdt.cjs.map → NcAppSidebarTab-oPHofCKq.cjs.map} +1 -1
- package/dist/chunks/{NcAppSidebarTab--7BkDK9T.mjs → NcAppSidebarTab-sMoFkDTb.mjs} +13 -12
- package/dist/chunks/{NcAppSidebarTab--7BkDK9T.mjs.map → NcAppSidebarTab-sMoFkDTb.mjs.map} +1 -1
- package/dist/chunks/{NcAvatar-paLjF9Tc.mjs → NcAvatar-JsMCceHU.mjs} +110 -100
- package/dist/chunks/NcAvatar-JsMCceHU.mjs.map +1 -0
- package/dist/chunks/{NcAvatar-1MXwkOA2.cjs → NcAvatar-uPVG9WWg.cjs} +133 -123
- package/dist/chunks/NcAvatar-uPVG9WWg.cjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-X45pwcLq.cjs → NcBreadcrumb-7q3EEfcO.cjs} +3 -3
- package/dist/chunks/{NcBreadcrumb-X45pwcLq.cjs.map → NcBreadcrumb-7q3EEfcO.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumb-gB_hnDG_.mjs → NcBreadcrumb-Fr7J33Qv.mjs} +5 -5
- package/dist/chunks/{NcBreadcrumb-gB_hnDG_.mjs.map → NcBreadcrumb-Fr7J33Qv.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-Y8LRE6xz.cjs → NcBreadcrumbs-XVIsLfXn.cjs} +100 -96
- package/dist/chunks/NcBreadcrumbs-XVIsLfXn.cjs.map +1 -0
- package/dist/chunks/{NcBreadcrumbs-N7-Jj_ry.mjs → NcBreadcrumbs-ozezYXlM.mjs} +114 -110
- package/dist/chunks/NcBreadcrumbs-ozezYXlM.mjs.map +1 -0
- package/dist/chunks/{NcButton-Uxh-oARg.cjs → NcButton-7UKtzkX5.cjs} +73 -66
- package/dist/chunks/NcButton-7UKtzkX5.cjs.map +1 -0
- package/dist/chunks/{NcButton-nCkJxwsi.mjs → NcButton-YOXv3gFY.mjs} +73 -66
- package/dist/chunks/NcButton-YOXv3gFY.mjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-Hi5ocuhB.cjs → NcCheckboxRadioSwitch-IA6Ssm8K.cjs} +22 -22
- package/dist/chunks/NcCheckboxRadioSwitch-IA6Ssm8K.cjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-RgFq8ZUL.mjs → NcCheckboxRadioSwitch-NwTx_zgG.mjs} +80 -80
- package/dist/chunks/NcCheckboxRadioSwitch-NwTx_zgG.mjs.map +1 -0
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_48c28b96_lang-togIrFzp.cjs +3 -0
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_48c28b96_lang-togIrFzp.cjs.map +1 -0
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_48c28b96_lang-yghIE9RS.mjs +3 -0
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_48c28b96_lang-yghIE9RS.mjs.map +1 -0
- package/dist/chunks/{NcColorPicker-hS0KYrLP.mjs → NcColorPicker-DNy0FRJb.mjs} +42 -35
- package/dist/chunks/{NcColorPicker-hS0KYrLP.mjs.map → NcColorPicker-DNy0FRJb.mjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-rE3Dd7s7.cjs → NcColorPicker-i9PgTYBd.cjs} +26 -19
- package/dist/chunks/{NcColorPicker-rE3Dd7s7.cjs.map → NcColorPicker-i9PgTYBd.cjs.map} +1 -1
- package/dist/chunks/NcContent-HdbQCleH.mjs +111 -0
- package/dist/chunks/{NcContent-fGj1oSM5.cjs.map → NcContent-HdbQCleH.mjs.map} +1 -1
- package/dist/chunks/NcContent-MOEEa0z1.cjs +103 -0
- package/dist/chunks/{NcContent-CUWR0V-w.mjs.map → NcContent-MOEEa0z1.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-DC4_9Yv_.mjs → NcDashboardWidget-JGkvqDWC.mjs} +4 -4
- package/dist/chunks/{NcDashboardWidget-DC4_9Yv_.mjs.map → NcDashboardWidget-JGkvqDWC.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-fnhMGIb6.cjs → NcDashboardWidget-qHSuK2yd.cjs} +1 -1
- package/dist/chunks/{NcDashboardWidget-fnhMGIb6.cjs.map → NcDashboardWidget-qHSuK2yd.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-0jGJ_5Nx.cjs → NcDashboardWidgetItem-fl92G4Pt.cjs} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-0jGJ_5Nx.cjs.map → NcDashboardWidgetItem-fl92G4Pt.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-TD0N9xlv.mjs → NcDashboardWidgetItem-oQGp29KO.mjs} +3 -3
- package/dist/chunks/{NcDashboardWidgetItem-TD0N9xlv.mjs.map → NcDashboardWidgetItem-oQGp29KO.mjs.map} +1 -1
- package/dist/chunks/{NcDateTime-EnQV6T52.mjs → NcDateTime-JYO8uPbb.mjs} +1 -1
- package/dist/chunks/{NcDateTime-EnQV6T52.mjs.map → NcDateTime-JYO8uPbb.mjs.map} +1 -1
- package/dist/chunks/{NcDateTime-m_WZoAvd.cjs → NcDateTime-T52KrH65.cjs} +1 -1
- package/dist/chunks/{NcDateTime-m_WZoAvd.cjs.map → NcDateTime-T52KrH65.cjs.map} +1 -1
- package/dist/chunks/{NcDateTimePicker-4edYzlVf.cjs → NcDateTimePicker-X2pCnTer.cjs} +36 -34
- package/dist/chunks/NcDateTimePicker-X2pCnTer.cjs.map +1 -0
- package/dist/chunks/{NcDateTimePicker-GHt3kJ7B.mjs → NcDateTimePicker-ahgVldMQ.mjs} +55 -53
- package/dist/chunks/NcDateTimePicker-ahgVldMQ.mjs.map +1 -0
- package/dist/chunks/{NcDateTimePickerNative-nDQjZSiZ.mjs → NcDateTimePickerNative-3Xru7_OT.mjs} +12 -12
- package/dist/chunks/{NcDateTimePickerNative-nDQjZSiZ.mjs.map → NcDateTimePickerNative-3Xru7_OT.mjs.map} +1 -1
- package/dist/chunks/{NcDateTimePickerNative-m30hv5MT.cjs → NcDateTimePickerNative-xSITuvpX.cjs} +13 -13
- package/dist/chunks/{NcDateTimePickerNative-m30hv5MT.cjs.map → NcDateTimePickerNative-xSITuvpX.cjs.map} +1 -1
- package/dist/chunks/{NcDialog-qsI2VY8S.cjs → NcDialog-BYXi2emF.cjs} +26 -24
- package/dist/chunks/NcDialog-BYXi2emF.cjs.map +1 -0
- package/dist/chunks/{NcDialog-eZWcoYL9.mjs → NcDialog-rTTTdaH3.mjs} +36 -34
- package/dist/chunks/NcDialog-rTTTdaH3.mjs.map +1 -0
- package/dist/chunks/NcDialogButton-37TPbyFs.cjs +73 -0
- package/dist/chunks/{NcDialogButton-Dou0EAc_.cjs.map → NcDialogButton-37TPbyFs.cjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-R-zAILHz.mjs → NcDialogButton-ax4NTfDU.mjs} +21 -20
- package/dist/chunks/{NcDialogButton-R-zAILHz.mjs.map → NcDialogButton-ax4NTfDU.mjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-84m02Stk.mjs → NcEmojiPicker-oWZ5anxp.mjs} +74 -71
- package/dist/chunks/NcEmojiPicker-oWZ5anxp.mjs.map +1 -0
- package/dist/chunks/{NcEmojiPicker-hxiKGEHb.cjs → NcEmojiPicker-tOE2N9VS.cjs} +68 -65
- package/dist/chunks/NcEmojiPicker-tOE2N9VS.cjs.map +1 -0
- package/dist/chunks/{NcHeaderMenu-yJJ4FWin.mjs → NcHeaderMenu-67JCzTGo.mjs} +44 -42
- package/dist/chunks/{NcHeaderMenu-Eo6rZDeL.cjs.map → NcHeaderMenu-67JCzTGo.mjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-Eo6rZDeL.cjs → NcHeaderMenu-TvFFSvGS.cjs} +30 -28
- package/dist/chunks/{NcHeaderMenu-yJJ4FWin.mjs.map → NcHeaderMenu-TvFFSvGS.cjs.map} +1 -1
- package/dist/chunks/{NcIconSvgWrapper-gQnsseD2.mjs → NcIconSvgWrapper-ACaaN_pS.mjs} +1 -1
- package/dist/chunks/{NcIconSvgWrapper-gQnsseD2.mjs.map → NcIconSvgWrapper-ACaaN_pS.mjs.map} +1 -1
- package/dist/chunks/{NcIconSvgWrapper-rDMSblV4.cjs → NcIconSvgWrapper-_hHu9P_M.cjs} +1 -1
- package/dist/chunks/{NcIconSvgWrapper-rDMSblV4.cjs.map → NcIconSvgWrapper-_hHu9P_M.cjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-3c-uWUuw.cjs → NcInputConfirmCancel-DYlc289d.cjs} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-3c-uWUuw.cjs.map → NcInputConfirmCancel-DYlc289d.cjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-cDJ5_L-Z.mjs → NcInputConfirmCancel-lmWu4ouW.mjs} +4 -4
- package/dist/chunks/{NcInputConfirmCancel-cDJ5_L-Z.mjs.map → NcInputConfirmCancel-lmWu4ouW.mjs.map} +1 -1
- package/dist/chunks/{NcInputField-9PAE2ONE.mjs → NcInputField-6pRWha3h.mjs} +7 -7
- package/dist/chunks/{NcInputField-dP-QARJo.cjs.map → NcInputField-6pRWha3h.mjs.map} +1 -1
- package/dist/chunks/{NcInputField-dP-QARJo.cjs → NcInputField-6vveMrmf.cjs} +5 -5
- package/dist/chunks/{NcInputField-9PAE2ONE.mjs.map → NcInputField-6vveMrmf.cjs.map} +1 -1
- package/dist/chunks/{NcListItem-iWTR4IZZ.cjs → NcListItem-3QDILDKr.cjs} +55 -53
- package/dist/chunks/NcListItem-3QDILDKr.cjs.map +1 -0
- package/dist/chunks/{NcListItem-gdczIybY.mjs → NcListItem-vkgu6Biu.mjs} +63 -61
- package/dist/chunks/NcListItem-vkgu6Biu.mjs.map +1 -0
- package/dist/chunks/{NcListItemIcon-XsKTtITp.mjs → NcListItemIcon-130Lt3dW.mjs} +32 -31
- package/dist/chunks/{NcListItemIcon-XsKTtITp.mjs.map → NcListItemIcon-130Lt3dW.mjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-FeNwaJy4.cjs → NcListItemIcon-dOvFvjqI.cjs} +29 -28
- package/dist/chunks/{NcListItemIcon-FeNwaJy4.cjs.map → NcListItemIcon-dOvFvjqI.cjs.map} +1 -1
- package/dist/chunks/{NcNoteCard-joOYqjyF.mjs → NcNoteCard-MnmgJvKD.mjs} +41 -39
- package/dist/chunks/NcNoteCard-MnmgJvKD.mjs.map +1 -0
- package/dist/chunks/{NcNoteCard-IAgTi5HW.cjs → NcNoteCard-ujnbiyLI.cjs} +20 -18
- package/dist/chunks/NcNoteCard-ujnbiyLI.cjs.map +1 -0
- package/dist/chunks/{NcPasswordField-QA6kIMu2.cjs → NcPasswordField-8rboJv29.cjs} +21 -21
- package/dist/chunks/NcPasswordField-8rboJv29.cjs.map +1 -0
- package/dist/chunks/{NcPasswordField-8NI5u7lk.mjs → NcPasswordField-RHelr3R-.mjs} +27 -27
- package/dist/chunks/NcPasswordField-RHelr3R-.mjs.map +1 -0
- package/dist/chunks/{NcPopover-sVfBFdPh.cjs → NcPopover-J0pw-klF.cjs} +31 -32
- package/dist/chunks/NcPopover-J0pw-klF.cjs.map +1 -0
- package/dist/chunks/{NcPopover-HwP68PjO.mjs → NcPopover-XgOWyuQF.mjs} +46 -47
- package/dist/chunks/NcPopover-XgOWyuQF.mjs.map +1 -0
- package/dist/chunks/{NcProgressBar-KvtCwl-0.mjs → NcProgressBar-1EANJyYJ.mjs} +2 -2
- package/dist/chunks/{NcProgressBar-KvtCwl-0.mjs.map → NcProgressBar-1EANJyYJ.mjs.map} +1 -1
- package/dist/chunks/{NcProgressBar-3p3Phbcw.cjs → NcProgressBar-zsehqkEw.cjs} +2 -2
- package/dist/chunks/{NcProgressBar-3p3Phbcw.cjs.map → NcProgressBar-zsehqkEw.cjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel--UoHihRf.mjs → NcRelatedResourcesPanel-NqDuh_7F.mjs} +24 -20
- package/dist/chunks/{NcRelatedResourcesPanel--UoHihRf.mjs.map → NcRelatedResourcesPanel-NqDuh_7F.mjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel-oTY2g2gt.cjs → NcRelatedResourcesPanel-QgNIHnCY.cjs} +45 -41
- package/dist/chunks/{NcRelatedResourcesPanel-oTY2g2gt.cjs.map → NcRelatedResourcesPanel-QgNIHnCY.cjs.map} +1 -1
- package/dist/chunks/{NcRichContenteditable-0x4AmYZf.cjs → NcRichContenteditable-L8aEJNGb.cjs} +28 -25
- package/dist/chunks/{NcRichContenteditable-rSquEMs2.mjs.map → NcRichContenteditable-L8aEJNGb.cjs.map} +1 -1
- package/dist/chunks/{NcRichContenteditable-rSquEMs2.mjs → NcRichContenteditable-W0BnJp3x.mjs} +31 -28
- package/dist/chunks/{NcRichContenteditable-0x4AmYZf.cjs.map → NcRichContenteditable-W0BnJp3x.mjs.map} +1 -1
- package/dist/chunks/{NcRichText-S8FLpGCe.cjs → NcRichText-91v7gJEe.cjs} +66 -54
- package/dist/chunks/NcRichText-91v7gJEe.cjs.map +1 -0
- package/dist/chunks/{NcRichText-_MNRVaQB.mjs → NcRichText-RTwlrmhz.mjs} +95 -83
- package/dist/chunks/NcRichText-RTwlrmhz.mjs.map +1 -0
- package/dist/chunks/{NcSelect-w_Gt1U72.mjs → NcSelect-HmmLuUCp.mjs} +63 -58
- package/dist/chunks/{NcSelect-9cM-OGdn.cjs.map → NcSelect-HmmLuUCp.mjs.map} +1 -1
- package/dist/chunks/{NcSelect-9cM-OGdn.cjs → NcSelect-P2FpWJBr.cjs} +46 -41
- package/dist/chunks/{NcSelect-w_Gt1U72.mjs.map → NcSelect-P2FpWJBr.cjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-vm5Fx2H5.cjs → NcSelectTags-HX8YbYwd.cjs} +2 -11
- package/dist/chunks/{NcSelectTags-vm5Fx2H5.cjs.map → NcSelectTags-HX8YbYwd.cjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-6F9oTRUw.mjs → NcSelectTags-ZoLcdmHG.mjs} +3 -12
- package/dist/chunks/{NcSelectTags-6F9oTRUw.mjs.map → NcSelectTags-ZoLcdmHG.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-KTYvd9zc.mjs → NcSettingsInputText-9TVSwO_s.mjs} +1 -1
- package/dist/chunks/{NcSettingsInputText-KTYvd9zc.mjs.map → NcSettingsInputText-9TVSwO_s.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-wY_R_c6S.cjs → NcSettingsInputText-oJ_c6sMr.cjs} +1 -1
- package/dist/chunks/{NcSettingsInputText-wY_R_c6S.cjs.map → NcSettingsInputText-oJ_c6sMr.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-2TP0NQPH.cjs → NcSettingsSection-W7Ieq32P.cjs} +7 -7
- package/dist/chunks/NcSettingsSection-W7Ieq32P.cjs.map +1 -0
- package/dist/chunks/{NcSettingsSection-dEPaFL2w.mjs → NcSettingsSection-bpmpu801.mjs} +2 -2
- package/dist/chunks/NcSettingsSection-bpmpu801.mjs.map +1 -0
- package/dist/chunks/{NcSettingsSelectGroup-JfvkEnNr.mjs → NcSettingsSelectGroup-HFDYgsw-.mjs} +5 -5
- package/dist/chunks/{NcSettingsSelectGroup-JfvkEnNr.mjs.map → NcSettingsSelectGroup-HFDYgsw-.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-p8cgn6pv.cjs → NcSettingsSelectGroup-UnB2ao3D.cjs} +4 -4
- package/dist/chunks/{NcSettingsSelectGroup-p8cgn6pv.cjs.map → NcSettingsSelectGroup-UnB2ao3D.cjs.map} +1 -1
- package/dist/chunks/{NcTextArea-hNPj4rEs.cjs → NcTextArea-QIkvyzz7.cjs} +7 -7
- package/dist/chunks/{NcTextArea-hNPj4rEs.cjs.map → NcTextArea-QIkvyzz7.cjs.map} +1 -1
- package/dist/chunks/{NcTextArea-dRgNOiSU.mjs → NcTextArea-SeSiP6Dy.mjs} +6 -6
- package/dist/chunks/{NcTextArea-dRgNOiSU.mjs.map → NcTextArea-SeSiP6Dy.mjs.map} +1 -1
- package/dist/chunks/{NcTextField-avDV7Ry_.mjs → NcTextField-qqwMB07_.mjs} +19 -19
- package/dist/chunks/NcTextField-qqwMB07_.mjs.map +1 -0
- package/dist/chunks/{NcTextField-bz_keSKF.cjs → NcTextField-zi19KqEm.cjs} +2 -2
- package/dist/chunks/NcTextField-zi19KqEm.cjs.map +1 -0
- package/dist/chunks/NcTimezonePicker-EPCmHeHy.mjs +3790 -0
- package/dist/chunks/{NcTimezonePicker-wLjOcbbU.mjs.map → NcTimezonePicker-EPCmHeHy.mjs.map} +1 -1
- package/dist/chunks/NcTimezonePicker-f6X4yiuj.cjs +3783 -0
- package/dist/chunks/{NcTimezonePicker-YNWJXRnl.cjs.map → NcTimezonePicker-f6X4yiuj.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-fA1TQtnx.mjs → NcUserBubble-Jw-rOju8.mjs} +17 -16
- package/dist/chunks/{NcUserBubble-fA1TQtnx.mjs.map → NcUserBubble-Jw-rOju8.mjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-epl-RDQa.cjs → NcUserBubble-NZeBFOmo.cjs} +23 -22
- package/dist/chunks/{NcUserBubble-epl-RDQa.cjs.map → NcUserBubble-NZeBFOmo.cjs.map} +1 -1
- package/dist/chunks/NcUserStatusIcon-b0xt-g7X.cjs +146 -0
- package/dist/chunks/{NcUserStatusIcon-swCHU0tl.cjs.map → NcUserStatusIcon-b0xt-g7X.cjs.map} +1 -1
- package/dist/chunks/NcUserStatusIcon-hmLq9dti.mjs +154 -0
- package/dist/chunks/{NcUserStatusIcon--z2VUZIt.mjs.map → NcUserStatusIcon-hmLq9dti.mjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-4ppIHwI4.cjs → ScopeComponent-Gzz2FMnQ.cjs} +1 -1
- package/dist/chunks/{ScopeComponent-4ppIHwI4.cjs.map → ScopeComponent-Gzz2FMnQ.cjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-KbEZrKGJ.mjs → ScopeComponent-mG7CSpxl.mjs} +1 -1
- package/dist/chunks/{ScopeComponent-KbEZrKGJ.mjs.map → ScopeComponent-mG7CSpxl.mjs.map} +1 -1
- package/dist/chunks/_l10n-Fl7RzbcZ.cjs +64 -0
- package/dist/chunks/_l10n-Fl7RzbcZ.cjs.map +1 -0
- package/dist/chunks/_l10n-uuAvfQgY.mjs +66 -0
- package/dist/chunks/_l10n-uuAvfQgY.mjs.map +1 -0
- package/dist/chunks/{actionGlobal-kyAHPMcH.cjs → actionGlobal-Cx6Fi9Pj.cjs} +4 -3
- package/dist/chunks/{actionGlobal-1onxXJwM.mjs.map → actionGlobal-Cx6Fi9Pj.cjs.map} +1 -1
- package/dist/chunks/{actionGlobal-1onxXJwM.mjs → actionGlobal-pi4JQ0yh.mjs} +4 -3
- package/dist/chunks/{actionGlobal-kyAHPMcH.cjs.map → actionGlobal-pi4JQ0yh.mjs.map} +1 -1
- package/dist/chunks/{actionText-WQ07UNmt.cjs → actionText-H_SIpDkO.cjs} +1 -1
- package/dist/chunks/{actionText-WQ07UNmt.cjs.map → actionText-H_SIpDkO.cjs.map} +1 -1
- package/dist/chunks/{actionText-IqPIFk1D.mjs → actionText-yZ-YQ_fz.mjs} +1 -1
- package/dist/chunks/{actionText-IqPIFk1D.mjs.map → actionText-yZ-YQ_fz.mjs.map} +1 -1
- package/dist/chunks/{emoji-mJIuLpNR.cjs → emoji-NrWIXNZ4.cjs} +7 -6
- package/dist/chunks/{emoji-mJIuLpNR.cjs.map → emoji-NrWIXNZ4.cjs.map} +1 -1
- package/dist/chunks/{emoji-tllD0Rvt.mjs → emoji-mEkenm2t.mjs} +4 -3
- package/dist/chunks/{emoji-tllD0Rvt.mjs.map → emoji-mEkenm2t.mjs.map} +1 -1
- package/dist/chunks/{index-NP8hZQhr.cjs → index-6mzaBTml.cjs} +8 -10
- package/dist/chunks/{index-NP8hZQhr.cjs.map → index-6mzaBTml.cjs.map} +1 -1
- package/dist/chunks/{index-hX7KRzaJ.mjs → index-clpvFjGU.mjs} +8 -10
- package/dist/chunks/{index-hX7KRzaJ.mjs.map → index-clpvFjGU.mjs.map} +1 -1
- package/dist/chunks/{referencePickerModal-9sd4Ftja.mjs → referencePickerModal-Fu9pQBdT.mjs} +188 -173
- package/dist/chunks/referencePickerModal-Fu9pQBdT.mjs.map +1 -0
- package/dist/chunks/{referencePickerModal-gCkuVbeM.cjs → referencePickerModal-JVKOIVTG.cjs} +143 -128
- package/dist/chunks/referencePickerModal-JVKOIVTG.cjs.map +1 -0
- package/dist/chunks/{usernameToColor-t95If_mB.mjs → usernameToColor-YCPAFxlc.mjs} +1 -1
- package/dist/chunks/{usernameToColor-t95If_mB.mjs.map → usernameToColor-YCPAFxlc.mjs.map} +1 -1
- package/dist/chunks/{usernameToColor--FE9Dq8h.cjs → usernameToColor-r5M5P032.cjs} +1 -1
- package/dist/chunks/{usernameToColor--FE9Dq8h.cjs.map → usernameToColor-r5M5P032.cjs.map} +1 -1
- package/dist/index.cjs +4 -4
- package/dist/index.mjs +64 -64
- package/dist/src/components/NcActionButton/NcActionButton.vue.d.ts +8 -4
- package/dist/src/components/NcActions/NcActions.vue.d.ts +29 -7
- package/dist/src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue.d.ts +14 -0
- package/dist/src/components/NcBreadcrumbs/NcBreadcrumbs.vue.d.ts +2 -3
- package/dist/src/components/NcButton/NcButton.vue.d.ts +1 -0
- package/dist/src/components/NcListItem/NcListItem.vue.d.ts +1 -1
- package/dist/src/components/NcRichText/NcReferenceList.vue.d.ts +9 -0
- package/dist/src/components/NcRichText/NcRichText.vue.d.ts +1 -1
- package/dist/vendor.LICENSE.txt +1 -1
- package/package.json +4 -3
- package/dist/chunks/AlertCircleOutline-Q4EgxGNm.mjs.map +0 -1
- package/dist/chunks/AlertCircleOutline-aU4Cu4IM.cjs.map +0 -1
- package/dist/chunks/ArrowLeft-4DZMGcXE.cjs.map +0 -1
- package/dist/chunks/ArrowLeft-LlLrrfss.mjs.map +0 -1
- package/dist/chunks/ArrowRight-Fk_qtqpW.mjs.map +0 -1
- package/dist/chunks/ArrowRight-mI4Fw0h2.cjs.map +0 -1
- package/dist/chunks/Check-SlTPuUzR.cjs.map +0 -1
- package/dist/chunks/Check-hentWFPd.mjs.map +0 -1
- package/dist/chunks/ChevronDown-7w1_NWAd.cjs.map +0 -1
- package/dist/chunks/ChevronDown-hP8YKVnf.mjs.map +0 -1
- package/dist/chunks/ChevronRight-iDcqZ2Ih.cjs.map +0 -1
- package/dist/chunks/ChevronRight-xEIO1OE7.mjs.map +0 -1
- package/dist/chunks/Close-2nENZfbn.cjs.map +0 -1
- package/dist/chunks/Close-4lZze_oD.mjs.map +0 -1
- package/dist/chunks/DotsHorizontal-2GCivGee.mjs.map +0 -1
- package/dist/chunks/DotsHorizontal-Ehuu1q0g.cjs.map +0 -1
- package/dist/chunks/NcActionButton-G4OSfyii.cjs.map +0 -1
- package/dist/chunks/NcActionButton-TAhaLmwa.mjs.map +0 -1
- package/dist/chunks/NcActions-6Yv0De7D.mjs.map +0 -1
- package/dist/chunks/NcActions-VJy75Dj8.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-6kzsp9I8.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-VR6oSt2q.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSettings-giVx2sHN.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationSettings-mYqB3vRb.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-DBCPaseG.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationToggle-cRUPsHZH.cjs.map +0 -1
- package/dist/chunks/NcAppSettingsSection-wLClE1lO.cjs +0 -51
- package/dist/chunks/NcAppSidebar-19vWkj82.cjs +0 -706
- package/dist/chunks/NcAppSidebar-19vWkj82.cjs.map +0 -1
- package/dist/chunks/NcAppSidebar-yjd-HiUO.mjs +0 -725
- package/dist/chunks/NcAppSidebar-yjd-HiUO.mjs.map +0 -1
- package/dist/chunks/NcAvatar-1MXwkOA2.cjs.map +0 -1
- package/dist/chunks/NcAvatar-paLjF9Tc.mjs.map +0 -1
- package/dist/chunks/NcBreadcrumbs-N7-Jj_ry.mjs.map +0 -1
- package/dist/chunks/NcBreadcrumbs-Y8LRE6xz.cjs.map +0 -1
- package/dist/chunks/NcButton-Uxh-oARg.cjs.map +0 -1
- package/dist/chunks/NcButton-nCkJxwsi.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-Hi5ocuhB.cjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-RgFq8ZUL.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-RYt-H2PA.cjs +0 -3
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-RYt-H2PA.cjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-kB-352LR.mjs +0 -3
- package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-kB-352LR.mjs.map +0 -1
- package/dist/chunks/NcContent-CUWR0V-w.mjs +0 -156
- package/dist/chunks/NcContent-fGj1oSM5.cjs +0 -148
- package/dist/chunks/NcDateTimePicker-4edYzlVf.cjs.map +0 -1
- package/dist/chunks/NcDateTimePicker-GHt3kJ7B.mjs.map +0 -1
- package/dist/chunks/NcDialog-eZWcoYL9.mjs.map +0 -1
- package/dist/chunks/NcDialog-qsI2VY8S.cjs.map +0 -1
- package/dist/chunks/NcDialogButton-Dou0EAc_.cjs +0 -72
- package/dist/chunks/NcEmojiPicker-84m02Stk.mjs.map +0 -1
- package/dist/chunks/NcEmojiPicker-hxiKGEHb.cjs.map +0 -1
- package/dist/chunks/NcListItem-gdczIybY.mjs.map +0 -1
- package/dist/chunks/NcListItem-iWTR4IZZ.cjs.map +0 -1
- package/dist/chunks/NcNoteCard-IAgTi5HW.cjs.map +0 -1
- package/dist/chunks/NcNoteCard-joOYqjyF.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-8NI5u7lk.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-QA6kIMu2.cjs.map +0 -1
- package/dist/chunks/NcPopover-HwP68PjO.mjs.map +0 -1
- package/dist/chunks/NcPopover-sVfBFdPh.cjs.map +0 -1
- package/dist/chunks/NcRichText-S8FLpGCe.cjs.map +0 -1
- package/dist/chunks/NcRichText-_MNRVaQB.mjs.map +0 -1
- package/dist/chunks/NcSettingsSection-2TP0NQPH.cjs.map +0 -1
- package/dist/chunks/NcSettingsSection-dEPaFL2w.mjs.map +0 -1
- package/dist/chunks/NcTextField-avDV7Ry_.mjs.map +0 -1
- package/dist/chunks/NcTextField-bz_keSKF.cjs.map +0 -1
- package/dist/chunks/NcTimezonePicker-YNWJXRnl.cjs +0 -7202
- package/dist/chunks/NcTimezonePicker-wLjOcbbU.mjs +0 -7209
- package/dist/chunks/NcUserStatusIcon--z2VUZIt.mjs +0 -171
- package/dist/chunks/NcUserStatusIcon-swCHU0tl.cjs +0 -163
- package/dist/chunks/_l10n-JmazR_zZ.mjs +0 -66
- package/dist/chunks/_l10n-JmazR_zZ.mjs.map +0 -1
- package/dist/chunks/_l10n-wK0o0jNS.cjs +0 -64
- package/dist/chunks/_l10n-wK0o0jNS.cjs.map +0 -1
- package/dist/chunks/referencePickerModal-9sd4Ftja.mjs.map +0 -1
- package/dist/chunks/referencePickerModal-gCkuVbeM.cjs.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "../assets/NcInputConfirmCancel-_GF_RjYc.css";
|
|
2
|
-
import { N as C } from "./NcButton-
|
|
3
|
-
import { r as v, m as _, a as p } from "./_l10n-
|
|
4
|
-
import { A as y } from "./ArrowRight-
|
|
5
|
-
import { C as h } from "./Close-
|
|
2
|
+
import { N as C } from "./NcButton-YOXv3gFY.mjs";
|
|
3
|
+
import { r as v, m as _, a as p } from "./_l10n-uuAvfQgY.mjs";
|
|
4
|
+
import { A as y } from "./ArrowRight-6gYTXvBH.mjs";
|
|
5
|
+
import { C as h } from "./Close-hKJ11hky.mjs";
|
|
6
6
|
import { resolveComponent as a, openBlock as b, createElementBlock as g, createElementVNode as s, withModifiers as n, withKeys as N, withDirectives as w, vModelText as k, createVNode as r, withCtx as u } from "vue";
|
|
7
7
|
import { _ as x } from "./_plugin-vue_export-helper-hUChTQA_.mjs";
|
|
8
8
|
v(_);
|
package/dist/chunks/{NcInputConfirmCancel-cDJ5_L-Z.mjs.map → NcInputConfirmCancel-lmWu4ouW.mjs.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcInputConfirmCancel-
|
|
1
|
+
{"version":3,"file":"NcInputConfirmCancel-lmWu4ouW.mjs","sources":["../../src/components/NcAppNavigationItem/NcInputConfirmCancel.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2020 Jonathan Treffler <mail@jonathan-treffler.de>\n -\n - @author Jonathan Treffler <mail@jonathan-treffler.de>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\n# Usage\n\n```\n<NcInputConfirmCancel @confirm=\"alert('confirm')\" @cancel=\"alert('cancel')\" />\n```\n</docs>\n<template>\n\t<div class=\"app-navigation-input-confirm\">\n\t\t<form @submit.prevent=\"confirm\"\n\t\t\t@keydown.esc.exact.stop.prevent=\"cancel\"\n\t\t\t@click.stop.prevent>\n\t\t\t<input ref=\"input\"\n\t\t\t\tv-model=\"valueModel\"\n\t\t\t\ttype=\"text\"\n\t\t\t\tclass=\"app-navigation-input-confirm__input\"\n\t\t\t\t:placeholder=\"placeholder\">\n\n\t\t\t<NcButton native-type=\"submit\"\n\t\t\t\ttype=\"primary\"\n\t\t\t\t:aria-label=\"labelConfirm\"\n\t\t\t\t@click.stop.prevent=\"confirm\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\n\t\t\t<NcButton native-type=\"reset\"\n\t\t\t\t:type=\"primary ? 'primary' : 'tertiary'\"\n\t\t\t\t:aria-label=\"labelCancel\"\n\t\t\t\t@click.stop.prevent=\"cancel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Close :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t</form>\n\t</div>\n</template>\n<script>\nimport NcButton from '../NcButton/index.ts'\nimport { t } from '../../l10n.js'\n\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\nimport Close from 'vue-material-design-icons/Close.vue'\n\nexport default {\n\tname: 'NcInputConfirmCancel',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tArrowRight,\n\t\tClose,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * If this element is used on a primary element set to true for primary styling.\n\t\t */\n\t\tprimary: {\n\t\t\tdefault: false,\n\t\t\ttype: Boolean,\n\t\t},\n\n\t\tplaceholder: {\n\t\t\tdefault: '',\n\t\t\ttype: String,\n\t\t},\n\n\t\tmodelValue: {\n\t\t\tdefault: '',\n\t\t\ttype: String,\n\t\t},\n\t},\n\n\temits: [\n\t\t'cancel',\n\t\t'confirm',\n\t\t'update:modelValue',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\tlabelConfirm: t('Confirm changes'),\n\t\t\tlabelCancel: t('Cancel changes'),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tvalueModel: {\n\t\t\tget() { return this.modelValue },\n\t\t\tset(newValue) {\n\t\t\t\tthis.$emit('update:modelValue', newValue)\n\t\t\t},\n\t\t},\n\t},\n\n\tmethods: {\n\t\tconfirm() {\n\t\t\tthis.$emit('confirm')\n\t\t},\n\t\tcancel() {\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t\tfocusInput() {\n\t\t\tthis.$refs.input.focus()\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n$input-height: 34px;\n$input-padding: 7px;\n$input-margin: 5px;\n\n.app-navigation-input-confirm {\n\tflex: 1 0 100%;\n\twidth: 100%;\n\n\tform {\n\t\tdisplay: flex;\n\t}\n\n\t&__input {\n\t\theight: $input-height;\n\t\tflex: 1 1 100%;\n\t\tfont-size: 100% !important;\n\t\tmargin: $input-margin !important;\n\t\tmargin-left: -1px - $input-padding !important;\n\t\tpadding: $input-padding !important;\n\n\t\t&:active,\n\t\t&:focus,\n\t\t&:hover {\n\t\t\toutline: none;\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tcolor: var(--color-main-text);\n\t\t\tborder-color: var(--color-primary-element);\n\t\t}\n\t}\n}\n</style>\n"],"names":["_sfc_main","NcButton","t","newValue","_hoisted_1","_hoisted_2","openBlock","createElementBlock","_cache","$event","$options","$props","$data","withCtx"],"mappings":";;;;;;;;AAmEA,MAAAA,IAAA;AAAA;;IAIE,UAAAC;AAAA;;;EAKD,OAAA;AAAA;AAAA;AAAA;AAAA,IAIC,SAAA;AAAA;;;;;;;;;;;;EAgBD,OAAA;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA;EAGD,OAAA;AACC,WAAA;AAAA,MACC,cAAAC,EAAA,iBAAA;AAAA,MACA,aAAAA,EAAA,gBAAA;AAAA,IACD;AAAA;EAGD,UAAA;AAAA;;;;;AAIG,aAAA,MAAA,qBAAAC,CAAA;AAAA;;;EAKH,SAAA;AAAA,IACC,UAAA;AACC,WAAA,MAAA,SAAA;AAAA;IAED,SAAA;AACC,WAAA,MAAA,QAAA;AAAA;;;;;AAMH,GAnGMC,IAAA,EAAA,OAAA,+BAAA,GA9BNC,IAAA,CAAA,aAAA;;;AA8BC,SAAAC,EAAA,GAAAC,EAAA,OAAAH,GAAA;AAAA;;;;;;;QAIS,KAAA;AAAA,QAlCV,uBAAAI,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAC,EAAA,aAAAD;AAAA,QAoCI,MAAA;AAAA,QACA,OAAA;AAAA,QACC,aAAAE,EAAA;AAAA,MAtCL,GAAA,MAAA,GAAAN,CAAA,GAAA;AAAA;;;QAwCa,eAAA;AAAA,QACT,MAAA;AAAA,QACC,cAAAO,EAAA;AAAA;;QAEU,MAAAC,EAAA,MAAA;AAAA;;;;;QAKF,eAAA;AAAA,QACR,MAAAF,EAAA,UAAA,YAAA;AAAA,QACA,cAAAC,EAAA;AAAA;;QAEU,MAAAC,EAAA,MAAA;AAAA;;;;;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import "../assets/NcInputField-
|
|
2
|
-
import { N as b } from "./NcButton-
|
|
1
|
+
import "../assets/NcInputField-qx4Me7uJ.css";
|
|
2
|
+
import { N as b } from "./NcButton-YOXv3gFY.mjs";
|
|
3
3
|
import { G as g } from "./GenRandomId-VodkdWbp.mjs";
|
|
4
|
-
import { A as y } from "./AlertCircleOutline-
|
|
5
|
-
import { C as k } from "./Check-
|
|
4
|
+
import { A as y } from "./AlertCircleOutline-1fsF7za7.mjs";
|
|
5
|
+
import { C as k } from "./Check-tQl0Vp18.mjs";
|
|
6
6
|
import { resolveComponent as d, openBlock as l, createElementBlock as s, normalizeClass as r, createElementVNode as u, mergeProps as B, toDisplayString as p, createCommentVNode as a, withDirectives as C, renderSlot as f, vShow as N, createBlock as n, withCtx as v, createTextVNode as x } from "vue";
|
|
7
7
|
import { _ as I } from "./_plugin-vue_export-helper-hUChTQA_.mjs";
|
|
8
8
|
const T = {
|
|
@@ -166,7 +166,7 @@ const T = {
|
|
|
166
166
|
},
|
|
167
167
|
ariaDescribedby() {
|
|
168
168
|
const t = [];
|
|
169
|
-
return this.helperText.length > 0 && t.push(
|
|
169
|
+
return this.helperText.length > 0 && t.push("".concat(this.inputName, "-helper-text")), this.$attrs["aria-describedby"] && t.push(this.$attrs["aria-describedby"]), t.join(" ") || null;
|
|
170
170
|
}
|
|
171
171
|
},
|
|
172
172
|
methods: {
|
|
@@ -266,7 +266,7 @@ function D(t, o, e, L, P, i) {
|
|
|
266
266
|
]),
|
|
267
267
|
e.helperText.length > 0 ? (l(), s("p", {
|
|
268
268
|
key: 0,
|
|
269
|
-
id:
|
|
269
|
+
id: "".concat(i.inputName, "-helper-text"),
|
|
270
270
|
class: r(["input-field__helper-text-message", {
|
|
271
271
|
"input-field__helper-text-message--error": e.error,
|
|
272
272
|
"input-field__helper-text-message--success": e.success
|
|
@@ -285,7 +285,7 @@ function D(t, o, e, L, P, i) {
|
|
|
285
285
|
], 10, z)) : a("", !0)
|
|
286
286
|
], 2);
|
|
287
287
|
}
|
|
288
|
-
const H = /* @__PURE__ */ I(T, [["render", D], ["__scopeId", "data-v-
|
|
288
|
+
const H = /* @__PURE__ */ I(T, [["render", D], ["__scopeId", "data-v-53a71842"]]);
|
|
289
289
|
export {
|
|
290
290
|
H as N
|
|
291
291
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcInputField-dP-QARJo.cjs","sources":["../../src/components/NcInputField/NcInputField.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2022 Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @author Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n\n<docs>\n### Description\n\nThis component is used by the other Fields components.\nIt extends and styles an HTMLInputElement.\n\nYou cannot use it as is. This is here for documentation purposes.\nSee the other field components.\n\nFor a list of all available props and attributes, please check the [HTMLInputElement documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attributes)\n\n</docs>\n\n<template>\n\t<div class=\"input-field\" :class=\"[{ 'input-field--disabled': disabled }, $props.class ]\">\n\t\t<div class=\"input-field__main-wrapper\">\n\t\t\t<input v-bind=\"$attrs\"\n\t\t\t\t:id=\"computedId\"\n\t\t\t\tref=\"input\"\n\t\t\t\tclass=\"input-field__input\"\n\t\t\t\t:type=\"type\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:placeholder=\"computedPlaceholder\"\n\t\t\t\t:aria-describedby=\"ariaDescribedby\"\n\t\t\t\taria-live=\"polite\"\n\t\t\t\t:class=\"[inputClass,\n\t\t\t\t\t{\n\t\t\t\t\t\t'input-field__input--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t\t'input-field__input--leading-icon': !!$slots.icon,\n\t\t\t\t\t\t'input-field__input--label-outside': labelOutside,\n\t\t\t\t\t\t'input-field__input--success': success,\n\t\t\t\t\t\t'input-field__input--error': error,\n\t\t\t\t\t\t'input-field__input--pill': pill,\n\t\t\t\t\t}]\"\n\t\t\t\t:value=\"modelValue.toString()\"\n\t\t\t\t@input=\"handleInput\">\n\t\t\t<!-- Label -->\n\t\t\t<label v-if=\"!labelOutside && isValidLabel\"\n\t\t\t\tclass=\"input-field__label\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__label--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t'input-field__label--leading-icon': !!$slots.icon,\n\t\t\t\t}]\"\n\t\t\t\t:for=\"computedId\">\n\t\t\t\t{{ label }}\n\t\t\t</label>\n\n\t\t\t<!-- Leading icon -->\n\t\t\t<div v-show=\"!!$slots.icon\" class=\"input-field__icon input-field__icon--leading\">\n\t\t\t\t<!-- Leading material design icon in the text field, set the size to 18 -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</div>\n\n\t\t\t<!-- trailing button -->\n\t\t\t<NcButton v-if=\"showTrailingButton\"\n\t\t\t\ttype=\"tertiary-no-background\"\n\t\t\t\tclass=\"input-field__trailing-button\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__trailing-button--pill': pill,\n\t\t\t\t}]\"\n\t\t\t\t:aria-label=\"trailingButtonLabel\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@click=\"handleTrailingButtonClick\">\n\t\t\t\t<!-- Populating this slot creates a trailing button within the\n\t\t\t\tinput boundaries that emits a `trailing-button-click` event -->\n\t\t\t\t<template #icon>\n\t\t\t\t\t<slot name=\"trailing-button-icon\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\n\t\t\t<!-- Success and error icons -->\n\t\t\t<div v-else-if=\"success || error\"\n\t\t\t\tclass=\"input-field__icon input-field__icon--trailing\">\n\t\t\t\t<Check v-if=\"success\" :size=\"20\" style=\"color: var(--color-success-text);\" />\n\t\t\t\t<AlertCircle v-else-if=\"error\" :size=\"20\" style=\"color: var(--color-error-text);\" />\n\t\t\t</div>\n\t\t</div>\n\t\t<p v-if=\"helperText.length > 0\"\n\t\t\t:id=\"`${inputName}-helper-text`\"\n\t\t\tclass=\"input-field__helper-text-message\"\n\t\t\t:class=\"{\n\t\t\t\t'input-field__helper-text-message--error': error,\n\t\t\t\t'input-field__helper-text-message--success': success,\n\t\t\t}\">\n\t\t\t<Check v-if=\"success\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t<AlertCircle v-else-if=\"error\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t{{ helperText }}\n\t\t</p>\n\t</div>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.ts'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nimport AlertCircle from 'vue-material-design-icons/AlertCircleOutline.vue'\nimport Check from 'vue-material-design-icons/Check.vue'\n\nexport default {\n\tname: 'NcInputField',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tAlertCircle,\n\t\tCheck,\n\t},\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\t/**\n\t\t * The value of the input field\n\t\t * If type is 'number' and a number is passed as value than the type of `update:value` will also be 'number'\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [String, Number],\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * The type of the input element\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'text',\n\t\t\tvalidator: (value) => [\n\t\t\t\t'text',\n\t\t\t\t'password',\n\t\t\t\t'email',\n\t\t\t\t'tel',\n\t\t\t\t'url',\n\t\t\t\t'search',\n\t\t\t\t'number',\n\t\t\t].includes(value),\n\t\t},\n\n\t\t/**\n\t\t * The input label, always provide one for accessibility purposes.\n\t\t * This will also be used as a placeholder unless the placeholder\n\t\t * prop is populated with a different string.\n\t\t *\n\t\t * Note: If the background color is not `--color-main-background` consider using an external label instead (see `labelOutside`).\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Pass in true if you want to use an external label. This is useful\n\t\t * if you need a label that looks different from the one provided by\n\t\t * this component\n\t\t */\n\t\tlabelOutside: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The placeholder of the input. This defaults as the string that's\n\t\t * passed into the label prop. In order to remove the placeholder,\n\t\t * pass in an empty string.\n\t\t */\n\t\tplaceholder: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Controls whether to display the trailing button.\n\t\t */\n\t\tshowTrailingButton: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Label of the trailing button\n\t\t *\n\t\t * Required when showTrailingButton is set\n\t\t */\n\t\ttrailingButtonLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Toggles the success state of the component. Adds a checkmark icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\tsuccess: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggles the error state of the component. Adds an error icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\terror: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Additional helper text message\n\t\t *\n\t\t * This will be displayed beneath the input field. In case the field is\n\t\t * also marked as having an error, the text will be displayed in red.\n\t\t */\n\t\thelperText: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Disable the input field\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies whether the input should have a pill form.\n\t\t * By default, input has rounded corners.\n\t\t */\n\t\tpill: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Class to add to the root component.\n\t\t */\n\t\tclass: {\n\t\t\ttype: [Object, String, Array],\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcInputField 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'update:modelValue',\n\t\t'trailing-button-click',\n\t],\n\n\tcomputed: {\n\t\tcomputedId() {\n\t\t\treturn this.$attrs.id && this.$attrs.id !== '' ? this.$attrs.id : this.inputName\n\t\t},\n\n\t\tinputName() {\n\t\t\treturn 'input' + GenRandomId()\n\t\t},\n\n\t\thasTrailingIcon() {\n\t\t\treturn this.success\n\t\t},\n\n\t\thasPlaceholder() {\n\t\t\treturn this.placeholder !== '' && this.placeholder !== undefined\n\t\t},\n\n\t\tcomputedPlaceholder() {\n\t\t\treturn this.hasPlaceholder ? this.placeholder : this.label\n\t\t},\n\n\t\tisValidLabel() {\n\t\t\tconst isValidLabel = this.label || this.labelOutside\n\t\t\tif (!isValidLabel) {\n\t\t\t\tconsole.warn('You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.')\n\t\t\t}\n\t\t\treturn isValidLabel\n\t\t},\n\n\t\tariaDescribedby() {\n\t\t\tconst ariaDescribedby = []\n\t\t\tif (this.helperText.length > 0) {\n\t\t\t\tariaDescribedby.push(`${this.inputName}-helper-text`)\n\t\t\t}\n\t\t\tif (this.$attrs['aria-describedby']) {\n\t\t\t\tariaDescribedby.push(this.$attrs['aria-describedby'])\n\t\t\t}\n\t\t\treturn ariaDescribedby.join(' ') || null\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Focus the input element\n\t\t *\n\t\t * @public\n\t\t */\n\t\tfocus() {\n\t\t\tthis.$refs.input.focus()\n\t\t},\n\n\t\t/**\n\t\t * Select all the text in the input\n\t\t *\n\t\t * @public\n\t\t */\n\t\tselect() {\n\t\t\tthis.$refs.input.select()\n\t\t},\n\n\t\thandleInput(event) {\n\t\t\tthis.$emit('update:modelValue', this.type === 'number' && typeof this.modelValue === 'number' ? parseFloat(event.target.value, 10) : event.target.value)\n\t\t},\n\n\t\thandleTrailingButtonClick(event) {\n\t\t\tthis.$emit('trailing-button-click', event)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.input-field {\n\tposition: relative;\n\twidth: 100%;\n\tborder-radius: var(--border-radius-large);\n\tmargin-block-start: 6px; // for the label in active state\n\n\t&__main-wrapper {\n\t\theight: var(--default-clickable-area);\n\t\tposition: relative;\n\t}\n\n\t&--disabled {\n\t\topacity: 0.4;\n\t\tfilter: saturate(0.4);\n\t}\n\n\t&__input {\n\t\tmargin: 0;\n\t\tpadding-inline: 12px 6px; // align with label 8px margin label + 6px padding label - 2px border input\n\t\theight: var(--default-clickable-area) !important;\n\t\twidth: 100%;\n\n\t\tfont-size: var(--default-font-size);\n\t\ttext-overflow: ellipsis;\n\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tcursor: pointer;\n\t\t-webkit-appearance: textfield !important;\n\t\t-moz-appearance: textfield !important;\n\n\t\t// Center text if external label is used\n\t\t&--label-outside {\n\t\t\tpadding-block: 0;\n\t\t}\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]) {\n\t\t\tborder-color: 2px solid var(--color-main-text) !important;\n\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t}\n\n\t\t&:focus + .input-field__label,\n\t\t&:hover:not(:placeholder-shown) + .input-field__label {\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\n\t\t// Hide placeholder while not focussed -> show label instead (only if internal label is used)\n\t\t&:not(:focus,&--label-outside)::placeholder {\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&:focus {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:disabled {\n\t\t\tcursor: default;\n\t\t}\n\n\t\t&:focus-visible {\n\t\t\tbox-shadow: unset !important; // Override server rules\n\t\t}\n\n\t\t&--leading-icon {\n\t\t\tpadding-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tpadding-inline-end: var(--default-clickable-area);\n\t\t}\n\n\t\t&--success {\n\t\t\tborder-color: var(--color-success) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--error {\n\t\t\tborder-color: var(--color-error) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--pill {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__label {\n\t\tposition: absolute;\n\t\tmargin-inline: 14px 0;\n\t\tmax-width: fit-content;\n\t\tinset-block-start: 11px;\n\t\tinset-inline: 0;\n\t\t// Fix color so that users do not think the input already has content\n\t\tcolor: var(--color-text-maxcontrast);\n\t\t// only one line labels are allowed\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\t// forward events to input\n\t\tpointer-events: none;\n\t\t// Position transition\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick), background-color var(--animation-quick) var(--animation-slow);\n\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tmargin-inline-end: var(--default-clickable-area);\n\t\t}\n\t}\n\n\t&__input:focus + &__label,\n\t&__input:not(:placeholder-shown) + &__label {\n\t\tinset-block-start: -10px;\n\t\tfont-size: 13px; // minimum allowed font size for accessibility\n\t\tfont-weight: 500;\n\t\tborder-radius: var(--default-grid-baseline) var(--default-grid-baseline) 0 0;\n\t\tbackground-color: var(--color-main-background);\n\t\tpadding-inline: 5px;\n\t\tmargin-inline-start: 9px;\n\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick);\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: 41px;\n\t\t}\n\t}\n\n\t&__icon {\n\t\tposition: absolute;\n\t\theight: var(--default-clickable-area);\n\t\twidth: var(--default-clickable-area);\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: 0.7;\n\n\t\t&--leading {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-start: 2px;\n\t\t}\n\n\t\t&--trailing {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-end: 2px;\n\t\t}\n\t}\n\n\t&__trailing-button {\n\t\t&.button-vue {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&--pill.button-vue {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__helper-text-message {\n\t\tpadding-block: 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t\t&__icon {\n\t\t\tmargin-inline-end: 8px;\n\t\t}\n\n\t\t&--error {\n\t\t\tcolor: var(--color-error-text);\n\t\t}\n\n\t\t&--success {\n\t\t\tcolor: var(--color-success-text);\n\t\t}\n\t}\n}\n</style>\n"],"names":["_sfc_main","NcButton","value","isValidLabel","ariaDescribedby","event","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_6","vue","$options","$props","_ctx","_cache","args","_hoisted_5"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcInputField-6pRWha3h.mjs","sources":["../../src/components/NcInputField/NcInputField.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2022 Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @author Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n\n<docs>\n### Description\n\nThis component is used by the other Fields components.\nIt extends and styles an HTMLInputElement.\n\nYou cannot use it as is. This is here for documentation purposes.\nSee the other field components.\n\nFor a list of all available props and attributes, please check the [HTMLInputElement documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attributes)\n\n</docs>\n\n<template>\n\t<div class=\"input-field\" :class=\"[{ 'input-field--disabled': disabled }, $props.class ]\">\n\t\t<div class=\"input-field__main-wrapper\">\n\t\t\t<input v-bind=\"$attrs\"\n\t\t\t\t:id=\"computedId\"\n\t\t\t\tref=\"input\"\n\t\t\t\tclass=\"input-field__input\"\n\t\t\t\t:type=\"type\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:placeholder=\"computedPlaceholder\"\n\t\t\t\t:aria-describedby=\"ariaDescribedby\"\n\t\t\t\taria-live=\"polite\"\n\t\t\t\t:class=\"[inputClass,\n\t\t\t\t\t{\n\t\t\t\t\t\t'input-field__input--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t\t'input-field__input--leading-icon': !!$slots.icon,\n\t\t\t\t\t\t'input-field__input--label-outside': labelOutside,\n\t\t\t\t\t\t'input-field__input--success': success,\n\t\t\t\t\t\t'input-field__input--error': error,\n\t\t\t\t\t\t'input-field__input--pill': pill,\n\t\t\t\t\t}]\"\n\t\t\t\t:value=\"modelValue.toString()\"\n\t\t\t\t@input=\"handleInput\">\n\t\t\t<!-- Label -->\n\t\t\t<label v-if=\"!labelOutside && isValidLabel\"\n\t\t\t\tclass=\"input-field__label\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__label--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t'input-field__label--leading-icon': !!$slots.icon,\n\t\t\t\t}]\"\n\t\t\t\t:for=\"computedId\">\n\t\t\t\t{{ label }}\n\t\t\t</label>\n\n\t\t\t<!-- Leading icon -->\n\t\t\t<div v-show=\"!!$slots.icon\" class=\"input-field__icon input-field__icon--leading\">\n\t\t\t\t<!-- Leading material design icon in the text field, set the size to 18 -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</div>\n\n\t\t\t<!-- trailing button -->\n\t\t\t<NcButton v-if=\"showTrailingButton\"\n\t\t\t\ttype=\"tertiary-no-background\"\n\t\t\t\tclass=\"input-field__trailing-button\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__trailing-button--pill': pill,\n\t\t\t\t}]\"\n\t\t\t\t:aria-label=\"trailingButtonLabel\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@click=\"handleTrailingButtonClick\">\n\t\t\t\t<!-- Populating this slot creates a trailing button within the\n\t\t\t\tinput boundaries that emits a `trailing-button-click` event -->\n\t\t\t\t<template #icon>\n\t\t\t\t\t<slot name=\"trailing-button-icon\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\n\t\t\t<!-- Success and error icons -->\n\t\t\t<div v-else-if=\"success || error\"\n\t\t\t\tclass=\"input-field__icon input-field__icon--trailing\">\n\t\t\t\t<Check v-if=\"success\" :size=\"20\" style=\"color: var(--color-success-text);\" />\n\t\t\t\t<AlertCircle v-else-if=\"error\" :size=\"20\" style=\"color: var(--color-error-text);\" />\n\t\t\t</div>\n\t\t</div>\n\t\t<p v-if=\"helperText.length > 0\"\n\t\t\t:id=\"`${inputName}-helper-text`\"\n\t\t\tclass=\"input-field__helper-text-message\"\n\t\t\t:class=\"{\n\t\t\t\t'input-field__helper-text-message--error': error,\n\t\t\t\t'input-field__helper-text-message--success': success,\n\t\t\t}\">\n\t\t\t<Check v-if=\"success\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t<AlertCircle v-else-if=\"error\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t{{ helperText }}\n\t\t</p>\n\t</div>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.ts'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nimport AlertCircle from 'vue-material-design-icons/AlertCircleOutline.vue'\nimport Check from 'vue-material-design-icons/Check.vue'\n\nexport default {\n\tname: 'NcInputField',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tAlertCircle,\n\t\tCheck,\n\t},\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\t/**\n\t\t * The value of the input field\n\t\t * If type is 'number' and a number is passed as value than the type of `update:value` will also be 'number'\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [String, Number],\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * The type of the input element\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'text',\n\t\t\tvalidator: (value) => [\n\t\t\t\t'text',\n\t\t\t\t'password',\n\t\t\t\t'email',\n\t\t\t\t'tel',\n\t\t\t\t'url',\n\t\t\t\t'search',\n\t\t\t\t'number',\n\t\t\t].includes(value),\n\t\t},\n\n\t\t/**\n\t\t * The input label, always provide one for accessibility purposes.\n\t\t * This will also be used as a placeholder unless the placeholder\n\t\t * prop is populated with a different string.\n\t\t *\n\t\t * Note: If the background color is not `--color-main-background` consider using an external label instead (see `labelOutside`).\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Pass in true if you want to use an external label. This is useful\n\t\t * if you need a label that looks different from the one provided by\n\t\t * this component\n\t\t */\n\t\tlabelOutside: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The placeholder of the input. This defaults as the string that's\n\t\t * passed into the label prop. In order to remove the placeholder,\n\t\t * pass in an empty string.\n\t\t */\n\t\tplaceholder: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Controls whether to display the trailing button.\n\t\t */\n\t\tshowTrailingButton: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Label of the trailing button\n\t\t *\n\t\t * Required when showTrailingButton is set\n\t\t */\n\t\ttrailingButtonLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Toggles the success state of the component. Adds a checkmark icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\tsuccess: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggles the error state of the component. Adds an error icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\terror: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Additional helper text message\n\t\t *\n\t\t * This will be displayed beneath the input field. In case the field is\n\t\t * also marked as having an error, the text will be displayed in red.\n\t\t */\n\t\thelperText: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Disable the input field\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies whether the input should have a pill form.\n\t\t * By default, input has rounded corners.\n\t\t */\n\t\tpill: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Class to add to the root component.\n\t\t */\n\t\tclass: {\n\t\t\ttype: [Object, String, Array],\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcInputField 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'update:modelValue',\n\t\t'trailing-button-click',\n\t],\n\n\tcomputed: {\n\t\tcomputedId() {\n\t\t\treturn this.$attrs.id && this.$attrs.id !== '' ? this.$attrs.id : this.inputName\n\t\t},\n\n\t\tinputName() {\n\t\t\treturn 'input' + GenRandomId()\n\t\t},\n\n\t\thasTrailingIcon() {\n\t\t\treturn this.success\n\t\t},\n\n\t\thasPlaceholder() {\n\t\t\treturn this.placeholder !== '' && this.placeholder !== undefined\n\t\t},\n\n\t\tcomputedPlaceholder() {\n\t\t\treturn this.hasPlaceholder ? this.placeholder : this.label\n\t\t},\n\n\t\tisValidLabel() {\n\t\t\tconst isValidLabel = this.label || this.labelOutside\n\t\t\tif (!isValidLabel) {\n\t\t\t\tconsole.warn('You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.')\n\t\t\t}\n\t\t\treturn isValidLabel\n\t\t},\n\n\t\tariaDescribedby() {\n\t\t\tconst ariaDescribedby = []\n\t\t\tif (this.helperText.length > 0) {\n\t\t\t\tariaDescribedby.push(`${this.inputName}-helper-text`)\n\t\t\t}\n\t\t\tif (this.$attrs['aria-describedby']) {\n\t\t\t\tariaDescribedby.push(this.$attrs['aria-describedby'])\n\t\t\t}\n\t\t\treturn ariaDescribedby.join(' ') || null\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Focus the input element\n\t\t *\n\t\t * @public\n\t\t */\n\t\tfocus() {\n\t\t\tthis.$refs.input.focus()\n\t\t},\n\n\t\t/**\n\t\t * Select all the text in the input\n\t\t *\n\t\t * @public\n\t\t */\n\t\tselect() {\n\t\t\tthis.$refs.input.select()\n\t\t},\n\n\t\thandleInput(event) {\n\t\t\tthis.$emit('update:modelValue', this.type === 'number' && typeof this.modelValue === 'number' ? parseFloat(event.target.value, 10) : event.target.value)\n\t\t},\n\n\t\thandleTrailingButtonClick(event) {\n\t\t\tthis.$emit('trailing-button-click', event)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.input-field {\n\tposition: relative;\n\twidth: 100%;\n\tborder-radius: var(--border-radius-large);\n\tmargin-block-start: 6px; // for the label in active state\n\n\t&__main-wrapper {\n\t\theight: var(--default-clickable-area);\n\t\tposition: relative;\n\t}\n\n\t&--disabled {\n\t\topacity: 0.4;\n\t\tfilter: saturate(0.4);\n\t}\n\n\t&__input {\n\t\tmargin: 0;\n\t\tpadding-inline: 12px 6px; // align with label 8px margin label + 6px padding label - 2px border input\n\t\theight: var(--default-clickable-area) !important;\n\t\twidth: 100%;\n\n\t\tfont-size: var(--default-font-size);\n\t\ttext-overflow: ellipsis;\n\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tcursor: pointer;\n\t\t-webkit-appearance: textfield !important;\n\t\t-moz-appearance: textfield !important;\n\n\t\t// Center text if external label is used\n\t\t&--label-outside {\n\t\t\tpadding-block: 0;\n\t\t}\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]) {\n\t\t\tborder-color: 2px solid var(--color-main-text) !important;\n\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t}\n\n\t\t&:focus + .input-field__label,\n\t\t&:hover:not(:placeholder-shown) + .input-field__label {\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\n\t\t// Hide placeholder while not focussed -> show label instead (only if internal label is used)\n\t\t&:not(:focus,&--label-outside)::placeholder {\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&:focus {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:disabled {\n\t\t\tcursor: default;\n\t\t}\n\n\t\t&:focus-visible {\n\t\t\tbox-shadow: unset !important; // Override server rules\n\t\t}\n\n\t\t&--leading-icon {\n\t\t\tpadding-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tpadding-inline-end: var(--default-clickable-area);\n\t\t}\n\n\t\t&--success {\n\t\t\tborder-color: var(--color-success) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--error {\n\t\t\tborder-color: var(--color-error) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--pill {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__label {\n\t\tposition: absolute;\n\t\tmargin-inline: 14px 0;\n\t\tmax-width: fit-content;\n\t\tinset-block-start: 11px;\n\t\tinset-inline: 0;\n\t\t// Fix color so that users do not think the input already has content\n\t\tcolor: var(--color-text-maxcontrast);\n\t\t// only one line labels are allowed\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\t// forward events to input\n\t\tpointer-events: none;\n\t\t// Position transition\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick), background-color var(--animation-quick) var(--animation-slow);\n\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tmargin-inline-end: var(--default-clickable-area);\n\t\t}\n\t}\n\n\t&__input:focus + &__label,\n\t&__input:not(:placeholder-shown) + &__label {\n\t\tinset-block-start: -10px;\n\t\tline-height: 1.5; // minimum allowed line height for accessibility\n\t\tfont-size: 13px; // minimum allowed font size for accessibility\n\t\tfont-weight: 500;\n\t\tborder-radius: var(--default-grid-baseline) var(--default-grid-baseline) 0 0;\n\t\tbackground-color: var(--color-main-background);\n\t\tpadding-inline: 5px;\n\t\tmargin-inline-start: 9px;\n\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick);\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: 41px;\n\t\t}\n\t}\n\n\t&__icon {\n\t\tposition: absolute;\n\t\theight: var(--default-clickable-area);\n\t\twidth: var(--default-clickable-area);\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: 0.7;\n\n\t\t&--leading {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-start: 2px;\n\t\t}\n\n\t\t&--trailing {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-end: 2px;\n\t\t}\n\t}\n\n\t&__trailing-button {\n\t\t&.button-vue {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&--pill.button-vue {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__helper-text-message {\n\t\tpadding-block: 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t\t&__icon {\n\t\t\tmargin-inline-end: 8px;\n\t\t}\n\n\t\t&--error {\n\t\t\tcolor: var(--color-error-text);\n\t\t}\n\n\t\t&--success {\n\t\t\tcolor: var(--color-success-text);\n\t\t}\n\t}\n}\n</style>\n"],"names":["_sfc_main","NcButton","value","isValidLabel","ariaDescribedby","event","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_6","createElementVNode","$options","$props","_ctx","_cache","args","toDisplayString","createCommentVNode","withDirectives","vShow","withCtx","openBlock","createElementBlock","_hoisted_5"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
var V = require("../assets/NcInputField-
|
|
2
|
-
const c = require("./NcButton-
|
|
1
|
+
var V = require("../assets/NcInputField-qx4Me7uJ.css");
|
|
2
|
+
const c = require("./NcButton-7UKtzkX5.cjs"), d = require("./GenRandomId-ULxaMkkr.cjs"), u = require("./AlertCircleOutline-M7wVqz_-.cjs"), h = require("./Check-fwcsc82n.cjs"), e = require("vue"), p = require("./_plugin-vue_export-helper-xG2iG1wl.cjs"), _ = {
|
|
3
3
|
name: "NcInputField",
|
|
4
4
|
components: {
|
|
5
5
|
NcButton: c.NcButton,
|
|
@@ -160,7 +160,7 @@ const c = require("./NcButton-Uxh-oARg.cjs"), d = require("./GenRandomId-ULxaMkk
|
|
|
160
160
|
},
|
|
161
161
|
ariaDescribedby() {
|
|
162
162
|
const l = [];
|
|
163
|
-
return this.helperText.length > 0 && l.push(
|
|
163
|
+
return this.helperText.length > 0 && l.push("".concat(this.inputName, "-helper-text")), this.$attrs["aria-describedby"] && l.push(this.$attrs["aria-describedby"]), l.join(" ") || null;
|
|
164
164
|
}
|
|
165
165
|
},
|
|
166
166
|
methods: {
|
|
@@ -260,7 +260,7 @@ function B(l, n, t, N, v, i) {
|
|
|
260
260
|
]),
|
|
261
261
|
t.helperText.length > 0 ? (e.openBlock(), e.createElementBlock("p", {
|
|
262
262
|
key: 0,
|
|
263
|
-
id:
|
|
263
|
+
id: "".concat(i.inputName, "-helper-text"),
|
|
264
264
|
class: e.normalizeClass(["input-field__helper-text-message", {
|
|
265
265
|
"input-field__helper-text-message--error": t.error,
|
|
266
266
|
"input-field__helper-text-message--success": t.success
|
|
@@ -279,5 +279,5 @@ function B(l, n, t, N, v, i) {
|
|
|
279
279
|
], 10, k)) : e.createCommentVNode("", !0)
|
|
280
280
|
], 2);
|
|
281
281
|
}
|
|
282
|
-
const C = /* @__PURE__ */ p._export_sfc(_, [["render", B], ["__scopeId", "data-v-
|
|
282
|
+
const C = /* @__PURE__ */ p._export_sfc(_, [["render", B], ["__scopeId", "data-v-53a71842"]]);
|
|
283
283
|
exports.NcInputField = C;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NcInputField-9PAE2ONE.mjs","sources":["../../src/components/NcInputField/NcInputField.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2022 Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @author Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n\n<docs>\n### Description\n\nThis component is used by the other Fields components.\nIt extends and styles an HTMLInputElement.\n\nYou cannot use it as is. This is here for documentation purposes.\nSee the other field components.\n\nFor a list of all available props and attributes, please check the [HTMLInputElement documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attributes)\n\n</docs>\n\n<template>\n\t<div class=\"input-field\" :class=\"[{ 'input-field--disabled': disabled }, $props.class ]\">\n\t\t<div class=\"input-field__main-wrapper\">\n\t\t\t<input v-bind=\"$attrs\"\n\t\t\t\t:id=\"computedId\"\n\t\t\t\tref=\"input\"\n\t\t\t\tclass=\"input-field__input\"\n\t\t\t\t:type=\"type\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:placeholder=\"computedPlaceholder\"\n\t\t\t\t:aria-describedby=\"ariaDescribedby\"\n\t\t\t\taria-live=\"polite\"\n\t\t\t\t:class=\"[inputClass,\n\t\t\t\t\t{\n\t\t\t\t\t\t'input-field__input--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t\t'input-field__input--leading-icon': !!$slots.icon,\n\t\t\t\t\t\t'input-field__input--label-outside': labelOutside,\n\t\t\t\t\t\t'input-field__input--success': success,\n\t\t\t\t\t\t'input-field__input--error': error,\n\t\t\t\t\t\t'input-field__input--pill': pill,\n\t\t\t\t\t}]\"\n\t\t\t\t:value=\"modelValue.toString()\"\n\t\t\t\t@input=\"handleInput\">\n\t\t\t<!-- Label -->\n\t\t\t<label v-if=\"!labelOutside && isValidLabel\"\n\t\t\t\tclass=\"input-field__label\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__label--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t'input-field__label--leading-icon': !!$slots.icon,\n\t\t\t\t}]\"\n\t\t\t\t:for=\"computedId\">\n\t\t\t\t{{ label }}\n\t\t\t</label>\n\n\t\t\t<!-- Leading icon -->\n\t\t\t<div v-show=\"!!$slots.icon\" class=\"input-field__icon input-field__icon--leading\">\n\t\t\t\t<!-- Leading material design icon in the text field, set the size to 18 -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</div>\n\n\t\t\t<!-- trailing button -->\n\t\t\t<NcButton v-if=\"showTrailingButton\"\n\t\t\t\ttype=\"tertiary-no-background\"\n\t\t\t\tclass=\"input-field__trailing-button\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__trailing-button--pill': pill,\n\t\t\t\t}]\"\n\t\t\t\t:aria-label=\"trailingButtonLabel\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@click=\"handleTrailingButtonClick\">\n\t\t\t\t<!-- Populating this slot creates a trailing button within the\n\t\t\t\tinput boundaries that emits a `trailing-button-click` event -->\n\t\t\t\t<template #icon>\n\t\t\t\t\t<slot name=\"trailing-button-icon\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\n\t\t\t<!-- Success and error icons -->\n\t\t\t<div v-else-if=\"success || error\"\n\t\t\t\tclass=\"input-field__icon input-field__icon--trailing\">\n\t\t\t\t<Check v-if=\"success\" :size=\"20\" style=\"color: var(--color-success-text);\" />\n\t\t\t\t<AlertCircle v-else-if=\"error\" :size=\"20\" style=\"color: var(--color-error-text);\" />\n\t\t\t</div>\n\t\t</div>\n\t\t<p v-if=\"helperText.length > 0\"\n\t\t\t:id=\"`${inputName}-helper-text`\"\n\t\t\tclass=\"input-field__helper-text-message\"\n\t\t\t:class=\"{\n\t\t\t\t'input-field__helper-text-message--error': error,\n\t\t\t\t'input-field__helper-text-message--success': success,\n\t\t\t}\">\n\t\t\t<Check v-if=\"success\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t<AlertCircle v-else-if=\"error\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t{{ helperText }}\n\t\t</p>\n\t</div>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.ts'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nimport AlertCircle from 'vue-material-design-icons/AlertCircleOutline.vue'\nimport Check from 'vue-material-design-icons/Check.vue'\n\nexport default {\n\tname: 'NcInputField',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tAlertCircle,\n\t\tCheck,\n\t},\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\t/**\n\t\t * The value of the input field\n\t\t * If type is 'number' and a number is passed as value than the type of `update:value` will also be 'number'\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [String, Number],\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * The type of the input element\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'text',\n\t\t\tvalidator: (value) => [\n\t\t\t\t'text',\n\t\t\t\t'password',\n\t\t\t\t'email',\n\t\t\t\t'tel',\n\t\t\t\t'url',\n\t\t\t\t'search',\n\t\t\t\t'number',\n\t\t\t].includes(value),\n\t\t},\n\n\t\t/**\n\t\t * The input label, always provide one for accessibility purposes.\n\t\t * This will also be used as a placeholder unless the placeholder\n\t\t * prop is populated with a different string.\n\t\t *\n\t\t * Note: If the background color is not `--color-main-background` consider using an external label instead (see `labelOutside`).\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Pass in true if you want to use an external label. This is useful\n\t\t * if you need a label that looks different from the one provided by\n\t\t * this component\n\t\t */\n\t\tlabelOutside: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The placeholder of the input. This defaults as the string that's\n\t\t * passed into the label prop. In order to remove the placeholder,\n\t\t * pass in an empty string.\n\t\t */\n\t\tplaceholder: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Controls whether to display the trailing button.\n\t\t */\n\t\tshowTrailingButton: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Label of the trailing button\n\t\t *\n\t\t * Required when showTrailingButton is set\n\t\t */\n\t\ttrailingButtonLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Toggles the success state of the component. Adds a checkmark icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\tsuccess: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggles the error state of the component. Adds an error icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\terror: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Additional helper text message\n\t\t *\n\t\t * This will be displayed beneath the input field. In case the field is\n\t\t * also marked as having an error, the text will be displayed in red.\n\t\t */\n\t\thelperText: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Disable the input field\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies whether the input should have a pill form.\n\t\t * By default, input has rounded corners.\n\t\t */\n\t\tpill: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Class to add to the root component.\n\t\t */\n\t\tclass: {\n\t\t\ttype: [Object, String, Array],\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcInputField 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'update:modelValue',\n\t\t'trailing-button-click',\n\t],\n\n\tcomputed: {\n\t\tcomputedId() {\n\t\t\treturn this.$attrs.id && this.$attrs.id !== '' ? this.$attrs.id : this.inputName\n\t\t},\n\n\t\tinputName() {\n\t\t\treturn 'input' + GenRandomId()\n\t\t},\n\n\t\thasTrailingIcon() {\n\t\t\treturn this.success\n\t\t},\n\n\t\thasPlaceholder() {\n\t\t\treturn this.placeholder !== '' && this.placeholder !== undefined\n\t\t},\n\n\t\tcomputedPlaceholder() {\n\t\t\treturn this.hasPlaceholder ? this.placeholder : this.label\n\t\t},\n\n\t\tisValidLabel() {\n\t\t\tconst isValidLabel = this.label || this.labelOutside\n\t\t\tif (!isValidLabel) {\n\t\t\t\tconsole.warn('You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.')\n\t\t\t}\n\t\t\treturn isValidLabel\n\t\t},\n\n\t\tariaDescribedby() {\n\t\t\tconst ariaDescribedby = []\n\t\t\tif (this.helperText.length > 0) {\n\t\t\t\tariaDescribedby.push(`${this.inputName}-helper-text`)\n\t\t\t}\n\t\t\tif (this.$attrs['aria-describedby']) {\n\t\t\t\tariaDescribedby.push(this.$attrs['aria-describedby'])\n\t\t\t}\n\t\t\treturn ariaDescribedby.join(' ') || null\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Focus the input element\n\t\t *\n\t\t * @public\n\t\t */\n\t\tfocus() {\n\t\t\tthis.$refs.input.focus()\n\t\t},\n\n\t\t/**\n\t\t * Select all the text in the input\n\t\t *\n\t\t * @public\n\t\t */\n\t\tselect() {\n\t\t\tthis.$refs.input.select()\n\t\t},\n\n\t\thandleInput(event) {\n\t\t\tthis.$emit('update:modelValue', this.type === 'number' && typeof this.modelValue === 'number' ? parseFloat(event.target.value, 10) : event.target.value)\n\t\t},\n\n\t\thandleTrailingButtonClick(event) {\n\t\t\tthis.$emit('trailing-button-click', event)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.input-field {\n\tposition: relative;\n\twidth: 100%;\n\tborder-radius: var(--border-radius-large);\n\tmargin-block-start: 6px; // for the label in active state\n\n\t&__main-wrapper {\n\t\theight: var(--default-clickable-area);\n\t\tposition: relative;\n\t}\n\n\t&--disabled {\n\t\topacity: 0.4;\n\t\tfilter: saturate(0.4);\n\t}\n\n\t&__input {\n\t\tmargin: 0;\n\t\tpadding-inline: 12px 6px; // align with label 8px margin label + 6px padding label - 2px border input\n\t\theight: var(--default-clickable-area) !important;\n\t\twidth: 100%;\n\n\t\tfont-size: var(--default-font-size);\n\t\ttext-overflow: ellipsis;\n\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tcursor: pointer;\n\t\t-webkit-appearance: textfield !important;\n\t\t-moz-appearance: textfield !important;\n\n\t\t// Center text if external label is used\n\t\t&--label-outside {\n\t\t\tpadding-block: 0;\n\t\t}\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]) {\n\t\t\tborder-color: 2px solid var(--color-main-text) !important;\n\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t}\n\n\t\t&:focus + .input-field__label,\n\t\t&:hover:not(:placeholder-shown) + .input-field__label {\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\n\t\t// Hide placeholder while not focussed -> show label instead (only if internal label is used)\n\t\t&:not(:focus,&--label-outside)::placeholder {\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&:focus {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:disabled {\n\t\t\tcursor: default;\n\t\t}\n\n\t\t&:focus-visible {\n\t\t\tbox-shadow: unset !important; // Override server rules\n\t\t}\n\n\t\t&--leading-icon {\n\t\t\tpadding-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tpadding-inline-end: var(--default-clickable-area);\n\t\t}\n\n\t\t&--success {\n\t\t\tborder-color: var(--color-success) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--error {\n\t\t\tborder-color: var(--color-error) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--pill {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__label {\n\t\tposition: absolute;\n\t\tmargin-inline: 14px 0;\n\t\tmax-width: fit-content;\n\t\tinset-block-start: 11px;\n\t\tinset-inline: 0;\n\t\t// Fix color so that users do not think the input already has content\n\t\tcolor: var(--color-text-maxcontrast);\n\t\t// only one line labels are allowed\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\t// forward events to input\n\t\tpointer-events: none;\n\t\t// Position transition\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick), background-color var(--animation-quick) var(--animation-slow);\n\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tmargin-inline-end: var(--default-clickable-area);\n\t\t}\n\t}\n\n\t&__input:focus + &__label,\n\t&__input:not(:placeholder-shown) + &__label {\n\t\tinset-block-start: -10px;\n\t\tfont-size: 13px; // minimum allowed font size for accessibility\n\t\tfont-weight: 500;\n\t\tborder-radius: var(--default-grid-baseline) var(--default-grid-baseline) 0 0;\n\t\tbackground-color: var(--color-main-background);\n\t\tpadding-inline: 5px;\n\t\tmargin-inline-start: 9px;\n\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick);\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: 41px;\n\t\t}\n\t}\n\n\t&__icon {\n\t\tposition: absolute;\n\t\theight: var(--default-clickable-area);\n\t\twidth: var(--default-clickable-area);\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: 0.7;\n\n\t\t&--leading {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-start: 2px;\n\t\t}\n\n\t\t&--trailing {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-end: 2px;\n\t\t}\n\t}\n\n\t&__trailing-button {\n\t\t&.button-vue {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&--pill.button-vue {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__helper-text-message {\n\t\tpadding-block: 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t\t&__icon {\n\t\t\tmargin-inline-end: 8px;\n\t\t}\n\n\t\t&--error {\n\t\t\tcolor: var(--color-error-text);\n\t\t}\n\n\t\t&--success {\n\t\t\tcolor: var(--color-success-text);\n\t\t}\n\t}\n}\n</style>\n"],"names":["_sfc_main","NcButton","value","isValidLabel","ariaDescribedby","event","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_6","createElementVNode","$options","$props","_ctx","_cache","args","toDisplayString","createCommentVNode","withDirectives","vShow","withCtx","openBlock","createElementBlock","_hoisted_5"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NcInputField-6vveMrmf.cjs","sources":["../../src/components/NcInputField/NcInputField.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2022 Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @author Marco Ambrosini <marcoambrosini@pm.me>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n\n<docs>\n### Description\n\nThis component is used by the other Fields components.\nIt extends and styles an HTMLInputElement.\n\nYou cannot use it as is. This is here for documentation purposes.\nSee the other field components.\n\nFor a list of all available props and attributes, please check the [HTMLInputElement documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attributes)\n\n</docs>\n\n<template>\n\t<div class=\"input-field\" :class=\"[{ 'input-field--disabled': disabled }, $props.class ]\">\n\t\t<div class=\"input-field__main-wrapper\">\n\t\t\t<input v-bind=\"$attrs\"\n\t\t\t\t:id=\"computedId\"\n\t\t\t\tref=\"input\"\n\t\t\t\tclass=\"input-field__input\"\n\t\t\t\t:type=\"type\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:placeholder=\"computedPlaceholder\"\n\t\t\t\t:aria-describedby=\"ariaDescribedby\"\n\t\t\t\taria-live=\"polite\"\n\t\t\t\t:class=\"[inputClass,\n\t\t\t\t\t{\n\t\t\t\t\t\t'input-field__input--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t\t'input-field__input--leading-icon': !!$slots.icon,\n\t\t\t\t\t\t'input-field__input--label-outside': labelOutside,\n\t\t\t\t\t\t'input-field__input--success': success,\n\t\t\t\t\t\t'input-field__input--error': error,\n\t\t\t\t\t\t'input-field__input--pill': pill,\n\t\t\t\t\t}]\"\n\t\t\t\t:value=\"modelValue.toString()\"\n\t\t\t\t@input=\"handleInput\">\n\t\t\t<!-- Label -->\n\t\t\t<label v-if=\"!labelOutside && isValidLabel\"\n\t\t\t\tclass=\"input-field__label\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__label--trailing-icon': showTrailingButton || hasTrailingIcon,\n\t\t\t\t\t'input-field__label--leading-icon': !!$slots.icon,\n\t\t\t\t}]\"\n\t\t\t\t:for=\"computedId\">\n\t\t\t\t{{ label }}\n\t\t\t</label>\n\n\t\t\t<!-- Leading icon -->\n\t\t\t<div v-show=\"!!$slots.icon\" class=\"input-field__icon input-field__icon--leading\">\n\t\t\t\t<!-- Leading material design icon in the text field, set the size to 18 -->\n\t\t\t\t<slot name=\"icon\" />\n\t\t\t</div>\n\n\t\t\t<!-- trailing button -->\n\t\t\t<NcButton v-if=\"showTrailingButton\"\n\t\t\t\ttype=\"tertiary-no-background\"\n\t\t\t\tclass=\"input-field__trailing-button\"\n\t\t\t\t:class=\"[{\n\t\t\t\t\t'input-field__trailing-button--pill': pill,\n\t\t\t\t}]\"\n\t\t\t\t:aria-label=\"trailingButtonLabel\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@click=\"handleTrailingButtonClick\">\n\t\t\t\t<!-- Populating this slot creates a trailing button within the\n\t\t\t\tinput boundaries that emits a `trailing-button-click` event -->\n\t\t\t\t<template #icon>\n\t\t\t\t\t<slot name=\"trailing-button-icon\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\n\t\t\t<!-- Success and error icons -->\n\t\t\t<div v-else-if=\"success || error\"\n\t\t\t\tclass=\"input-field__icon input-field__icon--trailing\">\n\t\t\t\t<Check v-if=\"success\" :size=\"20\" style=\"color: var(--color-success-text);\" />\n\t\t\t\t<AlertCircle v-else-if=\"error\" :size=\"20\" style=\"color: var(--color-error-text);\" />\n\t\t\t</div>\n\t\t</div>\n\t\t<p v-if=\"helperText.length > 0\"\n\t\t\t:id=\"`${inputName}-helper-text`\"\n\t\t\tclass=\"input-field__helper-text-message\"\n\t\t\t:class=\"{\n\t\t\t\t'input-field__helper-text-message--error': error,\n\t\t\t\t'input-field__helper-text-message--success': success,\n\t\t\t}\">\n\t\t\t<Check v-if=\"success\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t<AlertCircle v-else-if=\"error\" class=\"input-field__helper-text-message__icon\" :size=\"18\" />\n\t\t\t{{ helperText }}\n\t\t</p>\n\t</div>\n</template>\n\n<script>\nimport NcButton from '../NcButton/index.ts'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nimport AlertCircle from 'vue-material-design-icons/AlertCircleOutline.vue'\nimport Check from 'vue-material-design-icons/Check.vue'\n\nexport default {\n\tname: 'NcInputField',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tAlertCircle,\n\t\tCheck,\n\t},\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\t/**\n\t\t * The value of the input field\n\t\t * If type is 'number' and a number is passed as value than the type of `update:value` will also be 'number'\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [String, Number],\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * The type of the input element\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'text',\n\t\t\tvalidator: (value) => [\n\t\t\t\t'text',\n\t\t\t\t'password',\n\t\t\t\t'email',\n\t\t\t\t'tel',\n\t\t\t\t'url',\n\t\t\t\t'search',\n\t\t\t\t'number',\n\t\t\t].includes(value),\n\t\t},\n\n\t\t/**\n\t\t * The input label, always provide one for accessibility purposes.\n\t\t * This will also be used as a placeholder unless the placeholder\n\t\t * prop is populated with a different string.\n\t\t *\n\t\t * Note: If the background color is not `--color-main-background` consider using an external label instead (see `labelOutside`).\n\t\t */\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Pass in true if you want to use an external label. This is useful\n\t\t * if you need a label that looks different from the one provided by\n\t\t * this component\n\t\t */\n\t\tlabelOutside: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The placeholder of the input. This defaults as the string that's\n\t\t * passed into the label prop. In order to remove the placeholder,\n\t\t * pass in an empty string.\n\t\t */\n\t\tplaceholder: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined,\n\t\t},\n\n\t\t/**\n\t\t * Controls whether to display the trailing button.\n\t\t */\n\t\tshowTrailingButton: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Label of the trailing button\n\t\t *\n\t\t * Required when showTrailingButton is set\n\t\t */\n\t\ttrailingButtonLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Toggles the success state of the component. Adds a checkmark icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\tsuccess: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggles the error state of the component. Adds an error icon.\n\t\t * this cannot be used together with canClear.\n\t\t */\n\t\terror: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Additional helper text message\n\t\t *\n\t\t * This will be displayed beneath the input field. In case the field is\n\t\t * also marked as having an error, the text will be displayed in red.\n\t\t */\n\t\thelperText: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Disable the input field\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies whether the input should have a pill form.\n\t\t * By default, input has rounded corners.\n\t\t */\n\t\tpill: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Class to add to the root component.\n\t\t */\n\t\tclass: {\n\t\t\ttype: [Object, String, Array],\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * Class to add to the input field.\n\t\t * Necessary to use NcInputField 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'update:modelValue',\n\t\t'trailing-button-click',\n\t],\n\n\tcomputed: {\n\t\tcomputedId() {\n\t\t\treturn this.$attrs.id && this.$attrs.id !== '' ? this.$attrs.id : this.inputName\n\t\t},\n\n\t\tinputName() {\n\t\t\treturn 'input' + GenRandomId()\n\t\t},\n\n\t\thasTrailingIcon() {\n\t\t\treturn this.success\n\t\t},\n\n\t\thasPlaceholder() {\n\t\t\treturn this.placeholder !== '' && this.placeholder !== undefined\n\t\t},\n\n\t\tcomputedPlaceholder() {\n\t\t\treturn this.hasPlaceholder ? this.placeholder : this.label\n\t\t},\n\n\t\tisValidLabel() {\n\t\t\tconst isValidLabel = this.label || this.labelOutside\n\t\t\tif (!isValidLabel) {\n\t\t\t\tconsole.warn('You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.')\n\t\t\t}\n\t\t\treturn isValidLabel\n\t\t},\n\n\t\tariaDescribedby() {\n\t\t\tconst ariaDescribedby = []\n\t\t\tif (this.helperText.length > 0) {\n\t\t\t\tariaDescribedby.push(`${this.inputName}-helper-text`)\n\t\t\t}\n\t\t\tif (this.$attrs['aria-describedby']) {\n\t\t\t\tariaDescribedby.push(this.$attrs['aria-describedby'])\n\t\t\t}\n\t\t\treturn ariaDescribedby.join(' ') || null\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Focus the input element\n\t\t *\n\t\t * @public\n\t\t */\n\t\tfocus() {\n\t\t\tthis.$refs.input.focus()\n\t\t},\n\n\t\t/**\n\t\t * Select all the text in the input\n\t\t *\n\t\t * @public\n\t\t */\n\t\tselect() {\n\t\t\tthis.$refs.input.select()\n\t\t},\n\n\t\thandleInput(event) {\n\t\t\tthis.$emit('update:modelValue', this.type === 'number' && typeof this.modelValue === 'number' ? parseFloat(event.target.value, 10) : event.target.value)\n\t\t},\n\n\t\thandleTrailingButtonClick(event) {\n\t\t\tthis.$emit('trailing-button-click', event)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.input-field {\n\tposition: relative;\n\twidth: 100%;\n\tborder-radius: var(--border-radius-large);\n\tmargin-block-start: 6px; // for the label in active state\n\n\t&__main-wrapper {\n\t\theight: var(--default-clickable-area);\n\t\tposition: relative;\n\t}\n\n\t&--disabled {\n\t\topacity: 0.4;\n\t\tfilter: saturate(0.4);\n\t}\n\n\t&__input {\n\t\tmargin: 0;\n\t\tpadding-inline: 12px 6px; // align with label 8px margin label + 6px padding label - 2px border input\n\t\theight: var(--default-clickable-area) !important;\n\t\twidth: 100%;\n\n\t\tfont-size: var(--default-font-size);\n\t\ttext-overflow: ellipsis;\n\n\t\tbackground-color: var(--color-main-background);\n\t\tcolor: var(--color-main-text);\n\t\tborder: 2px solid var(--color-border-maxcontrast);\n\t\tborder-radius: var(--border-radius-large);\n\n\t\tcursor: pointer;\n\t\t-webkit-appearance: textfield !important;\n\t\t-moz-appearance: textfield !important;\n\n\t\t// Center text if external label is used\n\t\t&--label-outside {\n\t\t\tpadding-block: 0;\n\t\t}\n\n\t\t&:active:not([disabled]),\n\t\t&:hover:not([disabled]),\n\t\t&:focus:not([disabled]) {\n\t\t\tborder-color: 2px solid var(--color-main-text) !important;\n\t\t\tbox-shadow: 0 0 0 2px var(--color-main-background) !important;\n\t\t}\n\n\t\t&:focus + .input-field__label,\n\t\t&:hover:not(:placeholder-shown) + .input-field__label {\n\t\t\tcolor: var(--color-main-text);\n\t\t}\n\n\t\t// Hide placeholder while not focussed -> show label instead (only if internal label is used)\n\t\t&:not(:focus,&--label-outside)::placeholder {\n\t\t\topacity: 0;\n\t\t}\n\n\t\t&:focus {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:disabled {\n\t\t\tcursor: default;\n\t\t}\n\n\t\t&:focus-visible {\n\t\t\tbox-shadow: unset !important; // Override server rules\n\t\t}\n\n\t\t&--leading-icon {\n\t\t\tpadding-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tpadding-inline-end: var(--default-clickable-area);\n\t\t}\n\n\t\t&--success {\n\t\t\tborder-color: var(--color-success) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--error {\n\t\t\tborder-color: var(--color-error) !important; //Override hover border color\n\t\t\t&:focus-visible {\n\t\t\t\tbox-shadow: rgb(248, 250, 252) 0px 0px 0px 2px, var(--color-primary-element) 0px 0px 0px 4px, rgba(0, 0, 0, 0.05) 0px 1px 2px 0px\n\t\t\t}\n\t\t}\n\n\t\t&--pill {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__label {\n\t\tposition: absolute;\n\t\tmargin-inline: 14px 0;\n\t\tmax-width: fit-content;\n\t\tinset-block-start: 11px;\n\t\tinset-inline: 0;\n\t\t// Fix color so that users do not think the input already has content\n\t\tcolor: var(--color-text-maxcontrast);\n\t\t// only one line labels are allowed\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\t// forward events to input\n\t\tpointer-events: none;\n\t\t// Position transition\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick), background-color var(--animation-quick) var(--animation-slow);\n\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: var(--default-clickable-area);\n\t\t}\n\n\t\t&--trailing-icon {\n\t\t\tmargin-inline-end: var(--default-clickable-area);\n\t\t}\n\t}\n\n\t&__input:focus + &__label,\n\t&__input:not(:placeholder-shown) + &__label {\n\t\tinset-block-start: -10px;\n\t\tline-height: 1.5; // minimum allowed line height for accessibility\n\t\tfont-size: 13px; // minimum allowed font size for accessibility\n\t\tfont-weight: 500;\n\t\tborder-radius: var(--default-grid-baseline) var(--default-grid-baseline) 0 0;\n\t\tbackground-color: var(--color-main-background);\n\t\tpadding-inline: 5px;\n\t\tmargin-inline-start: 9px;\n\n\t\ttransition: height var(--animation-quick), inset-block-start var(--animation-quick), font-size var(--animation-quick), color var(--animation-quick);\n\t\t&--leading-icon {\n\t\t\tmargin-inline-start: 41px;\n\t\t}\n\t}\n\n\t&__icon {\n\t\tposition: absolute;\n\t\theight: var(--default-clickable-area);\n\t\twidth: var(--default-clickable-area);\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: 0.7;\n\n\t\t&--leading {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-start: 2px;\n\t\t}\n\n\t\t&--trailing {\n\t\t\tinset-block-end: 0;\n\t\t\tinset-inline-end: 2px;\n\t\t}\n\t}\n\n\t&__trailing-button {\n\t\t&.button-vue {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\tborder-radius: var(--border-radius-large);\n\t\t}\n\n\t\t&--pill.button-vue {\n\t\t\tborder-radius: var(--border-radius-pill);\n\t\t}\n\t}\n\n\t&__helper-text-message {\n\t\tpadding-block: 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\n\t\t&__icon {\n\t\t\tmargin-inline-end: 8px;\n\t\t}\n\n\t\t&--error {\n\t\t\tcolor: var(--color-error-text);\n\t\t}\n\n\t\t&--success {\n\t\t\tcolor: var(--color-success-text);\n\t\t}\n\t}\n}\n</style>\n"],"names":["_sfc_main","NcButton","value","isValidLabel","ariaDescribedby","event","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_6","vue","$options","$props","_ctx","_cache","args","_hoisted_5"],"mappings":";6PAuHAA,IAAA;AAAA,EACC,MAAA;AAAA;IAGC,UAAAC,EAAA;AAAA;;;EAKD,cAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;MAME,MAAA,CAAA,QAAA,MAAA;AAAA;;;;;;;MASA,SAAA;AAAA,MACA,WAAA,CAAAC,MAAA;AAAA,QACC;AAAA;QAEA;AAAA;;QAGA;AAAA,QACA;AAAA,MACD,EAAA,SAAAA,CAAA;AAAA;;;;;;;;IAUD,OAAA;AAAA;MAEC,SAAA;AAAA;;;;;;;;;;;;;;;;;MAoBA,SAAA;AAAA;;;;IAMD,oBAAA;AAAA;;;;;;;;IAUA,qBAAA;AAAA;;;;;;;IASA,SAAA;AAAA;;;;;;;IASA,OAAA;AAAA;;;;;;;;;;;;;;;;IAmBA,UAAA;AAAA;;;;;;;;;;;;;;IAiBA,OAAA;AAAA;;;;;;;;MASC,MAAA,CAAA,QAAA,MAAA;AAAA;;;EAKF,OAAA;AAAA,IACC;AAAA;;EAID,UAAA;AAAA;AAEE,aAAA,KAAA,OAAA,MAAA,KAAA,OAAA,OAAA,KAAA,KAAA,OAAA,KAAA,KAAA;AAAA;;;;IAOD,kBAAA;AACC,aAAA,KAAA;AAAA;IAGD,iBAAA;;;IAIA,sBAAA;;;IAIA,eAAA;;AAEC,aAAAC,KACC,QAAA,KAAA,mJAAA,GAEDA;AAAA;IAGD,kBAAA;;8FAKC,KAAA,OAAA,kBAAA,8CAGAC,EAAA,KAAA,GAAA,KAAA;AAAA;;EAIF,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMC,QAAA;;;;;;;;IASA,SAAA;;;IAIA,YAAAC,GAAA;AACC,WAAA,MAAA,qBAAA,KAAA,SAAA,YAAA,OAAA,KAAA,cAAA,WAAA,WAAAA,EAAA,OAAA,OAAA,EAAA,IAAAA,EAAA,OAAA,KAAA;AAAA;IAGD,0BAAAA,GAAA;AACC,WAAA,MAAA,yBAAAA,CAAA;AAAA;;AAGH,GAnTOC,IAAA,EAAA,OAAA,4BAAA,GApCPC,IAAA,CAAA,MAAA,QAAA,YAAA,eAAA,oBAAA,OAAA,GAAAC,IAAA,CAAA,KAAA,GAqE+BC,IAAA,EAAA,OAAA,+CAAA;;EAwB3B,OAAA;GA7FJC,IAAA,CAAA,IAAA;;;;;;IAoCEC,EAAA,mBAAA,OAAAL,GAAA;AAAA;QAEG,IAAAM,EAAA;AAAA,QACD,KAAA;AAAA;;;YAOuE,qCAAAC,EAAA,sBAAAD,EAAA;AAAA,YAAmF,oCAAA,CAAA,CAAAE,EAAA,OAAA;AAAA;;;;;;QALzJ,MAAAD,EAAA;AAAA,QACA,UAAAA,EAAA;AAAA,QACA,aAAAD,EAAA;AAAA,QACA,oBAAAA,EAAA;AAAA,QACD,aAAA;AAAA;QAWC,SAAAG,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,IAAAC,MAAAJ,EAAA,eAAAA,EAAA,YAAA,GAAAI,CAAA;AAAA,MAxDL,CAAA,GAAA,MAAA,IAAAT,CAAA;AAAA,MA0DiB,CAAAM,EAAA,gBAAAD,EAAA;;;UAEwC,qCAAAC,EAAA,sBAAAD,EAAA;AAAA,UAAkF,oCAAA,CAAA,CAAAE,EAAA,OAAA;AAAA;QAItI,KAAAF,EAAA;AAAA,MACE,GAAAD,EAAA,gBAAAE,EAAA,KAAA,GAAA,IAAAL,CAAA,KAjEPG,EAAA,mBAAA,IAAA,EAAA;AAAA,MAqEGA,EAAA,eAAAA,EAAA,mBAAA,OAAAF,GAAA;AAAA;;QAAe,CAAAE,EAAA,OAAA,CAAA,CAAAG,EAAA,OAAA,IAAA;AAAA;;;QAOd,MAAA;AAAA;;;QAKC,cAAAD,EAAA;AAAA,QACA,UAAAA,EAAA;AAAA,QACA,SAAAD,EAAA;AAAA;QAGU,MAAAD,EAAA,QAAA,MAAA;AAAA;;;+DAMIE,EAAA,WAAAA,EAAA,SAAhBF,EAAA,UAAA,GAAAA,EAAA,mBAAA,OAAAM,GAAA;AAAA;;UAEwB,MAAA;AAAA,UAAU,OAAA,EAAA,OAAA,4BAAA;AAAA;;UACD,MAAA;AAAA,UAAU,OAAA,EAAA,OAAA,0BAAA;AAAA,cA/F9CN,EAAA,mBAAA,IAAA,EAAA;AAAA,YAAAA,EAAA,mBAAA,IAAA,EAAA;AAAA;IAkGWE,EAAA,WAAA,SAAA;;MACP,IAAA,GAAA,OAAAD,EAAA,WAAA;AAAA;;;;;;;QAMqB,OAAA;AAAA,QAAgD,MAAA;AAAA;;QACvC,OAAA;AAAA,QAAgD,MAAA;AAAA,YA1GlFD,EAAA,mBAAA,IAAA,EAAA;AAAA;IAAA,GAAA,IAAAD,CAAA,KAAAC,EAAA,mBAAA,IAAA,EAAA;AAAA;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
var
|
|
2
|
-
const m = require("./NcActions-
|
|
1
|
+
var g = require("../assets/NcListItem-RylkggkP.css");
|
|
2
|
+
const m = require("./NcActions-YpbmJ7hS.cjs"), f = require("./NcCounterBubble-0pCAxQl7.cjs"), y = require("../Components/NcVNodes.cjs"), r = require("./_l10n-Fl7RzbcZ.cjs"), e = require("vue"), p = require("./_plugin-vue_export-helper-xG2iG1wl.cjs");
|
|
3
3
|
r.register(r.t5);
|
|
4
|
-
const
|
|
4
|
+
const _ = {
|
|
5
5
|
name: "NcListItem",
|
|
6
6
|
components: {
|
|
7
7
|
NcActions: m.NcActions,
|
|
@@ -122,13 +122,11 @@ const b = {
|
|
|
122
122
|
hasSubname: !1,
|
|
123
123
|
displayActionsOnHoverFocus: !1,
|
|
124
124
|
menuOpen: !1,
|
|
125
|
-
hasIndicator: !1
|
|
125
|
+
hasIndicator: !1,
|
|
126
|
+
hasDetails: !1
|
|
126
127
|
};
|
|
127
128
|
},
|
|
128
129
|
computed: {
|
|
129
|
-
hasDetails() {
|
|
130
|
-
return this.details !== "";
|
|
131
|
-
},
|
|
132
130
|
oneLine() {
|
|
133
131
|
return !this.hasSubname && !this.showDetails;
|
|
134
132
|
},
|
|
@@ -136,7 +134,7 @@ const b = {
|
|
|
136
134
|
return !this.displayActionsOnHoverFocus || this.forceDisplayActions;
|
|
137
135
|
},
|
|
138
136
|
showDetails() {
|
|
139
|
-
return this.hasDetails && (!this.displayActionsOnHoverFocus || this.forceDisplayActions);
|
|
137
|
+
return (this.details !== "" || this.hasDetails) && (!this.displayActionsOnHoverFocus || this.forceDisplayActions);
|
|
140
138
|
},
|
|
141
139
|
computedActionsAriaLabel() {
|
|
142
140
|
return this.actionsAriaLabel || r.t('Actions for item with name "{name}"', { name: this.name });
|
|
@@ -161,8 +159,8 @@ const b = {
|
|
|
161
159
|
* @param {Function} [navigate] - VueRouter link's navigate if any
|
|
162
160
|
* @param {string} [routerLinkHref] - VueRouter link's href
|
|
163
161
|
*/
|
|
164
|
-
onClick(t,
|
|
165
|
-
this.$emit("click", t), !(t.metaKey || t.altKey || t.ctrlKey || t.shiftKey) &&
|
|
162
|
+
onClick(t, n, s) {
|
|
163
|
+
this.$emit("click", t), !(t.metaKey || t.altKey || t.ctrlKey || t.shiftKey) && s && (n == null || n(t), t.preventDefault());
|
|
166
164
|
},
|
|
167
165
|
handleMouseover() {
|
|
168
166
|
this.showActions(), this.hovered = !0;
|
|
@@ -202,10 +200,10 @@ const b = {
|
|
|
202
200
|
},
|
|
203
201
|
// Check if subname and actions slots are populated
|
|
204
202
|
checkSlots() {
|
|
205
|
-
this.hasActions !== !!this.$slots.actions && (this.hasActions = !!this.$slots.actions), this.hasSubname !== !!this.$slots.subname && (this.hasSubname = !!this.$slots.subname), this.hasIndicator !== !!this.$slots.indicator && (this.hasIndicator = !!this.$slots.indicator);
|
|
203
|
+
this.hasActions !== !!this.$slots.actions && (this.hasActions = !!this.$slots.actions), this.hasSubname !== !!this.$slots.subname && (this.hasSubname = !!this.$slots.subname), this.hasIndicator !== !!this.$slots.indicator && (this.hasIndicator = !!this.$slots.indicator), this.hasDetails !== !!this.$slots.details && (this.hasDetails = !!this.$slots.details);
|
|
206
204
|
}
|
|
207
205
|
}
|
|
208
|
-
},
|
|
206
|
+
}, b = ["id", "href", "target", "rel", "aria-label", "onClick"], A = { class: "list-item-content" }, N = { class: "line-one" }, k = { class: "line-one__name" }, v = {
|
|
209
207
|
key: 0,
|
|
210
208
|
class: "line-one__details"
|
|
211
209
|
}, w = {
|
|
@@ -221,58 +219,62 @@ const b = {
|
|
|
221
219
|
key: 0,
|
|
222
220
|
class: "list-item__extra"
|
|
223
221
|
};
|
|
224
|
-
function
|
|
222
|
+
function V(t, n, s, O, a, i) {
|
|
225
223
|
const u = e.resolveComponent("NcCounterBubble"), c = e.resolveComponent("NcActions");
|
|
226
|
-
return e.openBlock(), e.createBlock(e.resolveDynamicComponent(
|
|
224
|
+
return e.openBlock(), e.createBlock(e.resolveDynamicComponent(s.to ? "router-link" : "NcVNodes"), e.normalizeProps(e.guardReactiveProps({ ...s.to && { custom: !0, to: s.to } })), {
|
|
227
225
|
default: e.withCtx(({ href: d, navigate: h, isActive: l }) => [
|
|
228
226
|
e.createElementVNode("li", e.mergeProps({
|
|
229
|
-
class: ["list-item__wrapper", { "list-item__wrapper--active": l ||
|
|
227
|
+
class: ["list-item__wrapper", { "list-item__wrapper--active": l || s.active }]
|
|
230
228
|
}, t.$attrs), [
|
|
231
229
|
e.createElementVNode("a", {
|
|
232
|
-
id:
|
|
230
|
+
id: s.anchorId,
|
|
233
231
|
ref: "list-item",
|
|
234
|
-
href: d ||
|
|
235
|
-
target:
|
|
236
|
-
rel:
|
|
232
|
+
href: d || s.href,
|
|
233
|
+
target: s.target || (s.href === "#" ? void 0 : "_blank"),
|
|
234
|
+
rel: s.href === "#" ? void 0 : "noopener noreferrer",
|
|
237
235
|
class: "list-item",
|
|
238
|
-
"aria-label":
|
|
239
|
-
onMouseover:
|
|
240
|
-
onMouseleave:
|
|
241
|
-
onFocus:
|
|
242
|
-
onBlur:
|
|
236
|
+
"aria-label": s.linkAriaLabel,
|
|
237
|
+
onMouseover: n[2] || (n[2] = (...o) => i.handleMouseover && i.handleMouseover(...o)),
|
|
238
|
+
onMouseleave: n[3] || (n[3] = (...o) => i.handleMouseleave && i.handleMouseleave(...o)),
|
|
239
|
+
onFocus: n[4] || (n[4] = (...o) => i.handleFocus && i.handleFocus(...o)),
|
|
240
|
+
onBlur: n[5] || (n[5] = (...o) => i.handleBlur && i.handleBlur(...o)),
|
|
243
241
|
onKeydown: [
|
|
244
|
-
|
|
245
|
-
|
|
242
|
+
n[6] || (n[6] = e.withKeys(e.withModifiers((...o) => i.handleTab && i.handleTab(...o), ["exact"]), ["tab"])),
|
|
243
|
+
n[7] || (n[7] = e.withKeys((...o) => i.hideActions && i.hideActions(...o), ["esc"]))
|
|
246
244
|
],
|
|
247
|
-
onClick: (o) =>
|
|
245
|
+
onClick: (o) => i.onClick(o, h, d)
|
|
248
246
|
}, [
|
|
249
247
|
e.createElementVNode("div", {
|
|
250
|
-
class: e.normalizeClass(["list-item-content__wrapper", { "list-item-content__wrapper--compact":
|
|
248
|
+
class: e.normalizeClass(["list-item-content__wrapper", { "list-item-content__wrapper--compact": s.compact }])
|
|
251
249
|
}, [
|
|
252
250
|
e.renderSlot(t.$slots, "icon", {}, void 0, !0),
|
|
253
|
-
e.createElementVNode("div",
|
|
251
|
+
e.createElementVNode("div", A, [
|
|
254
252
|
e.createElementVNode("div", {
|
|
255
|
-
class: e.normalizeClass(["list-item-content__main", { "list-item-content__main--oneline":
|
|
253
|
+
class: e.normalizeClass(["list-item-content__main", { "list-item-content__main--oneline": i.oneLine }])
|
|
256
254
|
}, [
|
|
257
|
-
e.createElementVNode("div",
|
|
258
|
-
e.createElementVNode("span",
|
|
259
|
-
|
|
255
|
+
e.createElementVNode("div", N, [
|
|
256
|
+
e.createElementVNode("span", k, e.toDisplayString(s.name), 1),
|
|
257
|
+
i.showDetails ? (e.openBlock(), e.createElementBlock("span", v, [
|
|
258
|
+
e.renderSlot(t.$slots, "details", {}, () => [
|
|
259
|
+
e.createTextVNode(e.toDisplayString(s.details), 1)
|
|
260
|
+
], !0)
|
|
261
|
+
])) : e.createCommentVNode("", !0)
|
|
260
262
|
]),
|
|
261
263
|
e.createElementVNode("div", {
|
|
262
|
-
class: e.normalizeClass(["line-two", { "line-two--bold":
|
|
264
|
+
class: e.normalizeClass(["line-two", { "line-two--bold": s.bold }])
|
|
263
265
|
}, [
|
|
264
266
|
a.hasSubname ? (e.openBlock(), e.createElementBlock("span", w, [
|
|
265
267
|
e.renderSlot(t.$slots, "subname", {}, void 0, !0)
|
|
266
268
|
])) : e.createCommentVNode("", !0),
|
|
267
|
-
|
|
268
|
-
|
|
269
|
+
s.counterNumber != 0 || a.hasIndicator ? e.withDirectives((e.openBlock(), e.createElementBlock("span", B, [
|
|
270
|
+
s.counterNumber != 0 ? (e.openBlock(), e.createBlock(u, {
|
|
269
271
|
key: 0,
|
|
270
|
-
active: l ||
|
|
272
|
+
active: l || s.active,
|
|
271
273
|
class: "line-two__counter",
|
|
272
|
-
type:
|
|
274
|
+
type: s.counterType
|
|
273
275
|
}, {
|
|
274
276
|
default: e.withCtx(() => [
|
|
275
|
-
e.createTextVNode(e.toDisplayString(
|
|
277
|
+
e.createTextVNode(e.toDisplayString(s.counterNumber), 1)
|
|
276
278
|
]),
|
|
277
279
|
_: 2
|
|
278
280
|
}, 1032, ["active", "type"])) : e.createCommentVNode("", !0),
|
|
@@ -280,21 +282,21 @@ function g(t, i, n, O, a, s) {
|
|
|
280
282
|
e.renderSlot(t.$slots, "indicator", {}, void 0, !0)
|
|
281
283
|
])) : e.createCommentVNode("", !0)
|
|
282
284
|
], 512)), [
|
|
283
|
-
[e.vShow,
|
|
285
|
+
[e.vShow, i.showAdditionalElements]
|
|
284
286
|
]) : e.createCommentVNode("", !0)
|
|
285
287
|
], 2)
|
|
286
288
|
], 2),
|
|
287
|
-
|
|
289
|
+
s.forceDisplayActions ? e.createCommentVNode("", !0) : e.withDirectives((e.openBlock(), e.createElementBlock("div", {
|
|
288
290
|
key: 0,
|
|
289
291
|
class: "list-item-content__actions",
|
|
290
|
-
onClick:
|
|
292
|
+
onClick: n[0] || (n[0] = e.withModifiers(() => {
|
|
291
293
|
}, ["prevent", "stop"]))
|
|
292
294
|
}, [
|
|
293
295
|
e.createVNode(c, {
|
|
294
296
|
ref: "actions",
|
|
295
|
-
primary: l ||
|
|
296
|
-
"aria-label":
|
|
297
|
-
"onUpdate:open":
|
|
297
|
+
primary: l || s.active,
|
|
298
|
+
"aria-label": i.computedActionsAriaLabel,
|
|
299
|
+
"onUpdate:open": i.handleActionsUpdateOpen
|
|
298
300
|
}, {
|
|
299
301
|
default: e.withCtx(() => [
|
|
300
302
|
e.renderSlot(t.$slots, "actions", {}, void 0, !0)
|
|
@@ -305,17 +307,17 @@ function g(t, i, n, O, a, s) {
|
|
|
305
307
|
[e.vShow, a.displayActionsOnHoverFocus]
|
|
306
308
|
])
|
|
307
309
|
]),
|
|
308
|
-
|
|
310
|
+
s.forceDisplayActions ? (e.openBlock(), e.createElementBlock("div", {
|
|
309
311
|
key: 0,
|
|
310
312
|
class: "list-item-content__actions",
|
|
311
|
-
onClick:
|
|
313
|
+
onClick: n[1] || (n[1] = e.withModifiers(() => {
|
|
312
314
|
}, ["prevent", "stop"]))
|
|
313
315
|
}, [
|
|
314
316
|
e.createVNode(c, {
|
|
315
317
|
ref: "actions",
|
|
316
|
-
primary: l ||
|
|
317
|
-
"aria-label":
|
|
318
|
-
"onUpdate:open":
|
|
318
|
+
primary: l || s.active,
|
|
319
|
+
"aria-label": i.computedActionsAriaLabel,
|
|
320
|
+
"onUpdate:open": i.handleActionsUpdateOpen
|
|
319
321
|
}, {
|
|
320
322
|
default: e.withCtx(() => [
|
|
321
323
|
e.renderSlot(t.$slots, "actions", {}, void 0, !0)
|
|
@@ -327,11 +329,11 @@ function g(t, i, n, O, a, s) {
|
|
|
327
329
|
t.$slots.extra ? (e.openBlock(), e.createElementBlock("div", S, [
|
|
328
330
|
e.renderSlot(t.$slots, "extra", {}, void 0, !0)
|
|
329
331
|
])) : e.createCommentVNode("", !0)
|
|
330
|
-
], 40,
|
|
332
|
+
], 40, b)
|
|
331
333
|
], 16)
|
|
332
334
|
]),
|
|
333
335
|
_: 3
|
|
334
336
|
}, 16);
|
|
335
337
|
}
|
|
336
|
-
const
|
|
337
|
-
exports.NcListItem =
|
|
338
|
+
const D = /* @__PURE__ */ p._export_sfc(_, [["render", V], ["__scopeId", "data-v-1f33651e"]]);
|
|
339
|
+
exports.NcListItem = D;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NcListItem-3QDILDKr.cjs","sources":["../../src/components/NcListItem/NcListItem.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2021 Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n<docs>\n\n### Default Usage\n\n```vue\n<template>\n\t<ul>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with highlighted counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"highlighted\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with outlined counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"outlined\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with normal counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:counter-number=\"44\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #details>\n\t\t\t\t<LinkIcon :size=\"16\"/>\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with highlighted counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"highlighted\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with outlined counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"outlined\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with normal counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element'\"\n\t\t\t:bold=\"false\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #details>\n\t\t\t\t<LinkIcon :size=\"16\"/>\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#0082c9\"/>\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element'\"\n\t\t\t:bold=\"false\"\n\t\t\t:details=\"'1h'\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#0082c9\"/>\n\t\t\t</template>\n\t\t</NcListItem>\n\t</ul>\n</template>\n\n<script>\n\timport CheckboxBlankCircle from 'vue-material-design-icons/CheckboxBlankCircle'\n\timport LinkIcon from 'vue-material-design-icons/Link'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tCheckboxBlankCircle,\n\t\t\tLinkIcon,\n\t\t}\n\t}\n</script>\n\n```\n\n### NcListItem compact mode\n```\n<ul style=\"width: 350px;\">\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:counter-number=\"1\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with subname\n\t\t</template>\n\t\t<template #actions>\n\t\t\t<NcActionButton>\n\t\t\t\tButton one\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton>\n\t\t\t\tButton two\n\t\t\t</NcActionButton>\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:counter-number=\"3\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with subname\n\t\t</template>\n\t\t<template #actions>\n\t\t\t<NcActionButton>\n\t\t\t\tButton one\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton>\n\t\t\t\tButton two\n\t\t\t</NcActionButton>\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:compact=\"true\"\n\t\t:counter-number=\"4\"\n\t\thref=\"https://nextcloud.com\">\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with an external link\n\t\t</template>\n\t</NcListItem>\n</ul>\n```\n</docs>\n\n<template>\n\t<!-- This wrapper can be either a router link or a `<li>` -->\n\t<component :is=\"to ? 'router-link' : 'NcVNodes'\"\n\t\tv-slot=\"{ href: routerLinkHref, navigate, isActive }\"\n\t\tv-bind=\"{ ...to && { custom: true, to } }\">\n\t\t<li class=\"list-item__wrapper\"\n\t\t\t:class=\"{ 'list-item__wrapper--active' : isActive || active }\"\n\t\t\tv-bind=\"$attrs\">\n\t\t\t<a :id=\"anchorId\"\n\t\t\t\tref=\"list-item\"\n\t\t\t\t:href=\"routerLinkHref || href\"\n\t\t\t\t:target=\"target || (href === '#' ? undefined : '_blank')\"\n\t\t\t\t:rel=\"href === '#' ? undefined : 'noopener noreferrer'\"\n\t\t\t\tclass=\"list-item\"\n\t\t\t\t:aria-label=\"linkAriaLabel\"\n\t\t\t\t@mouseover=\"handleMouseover\"\n\t\t\t\t@mouseleave=\"handleMouseleave\"\n\t\t\t\t@focus=\"handleFocus\"\n\t\t\t\t@blur=\"handleBlur\"\n\t\t\t\t@keydown.tab.exact=\"handleTab\"\n\t\t\t\t@click=\"onClick($event, navigate, routerLinkHref)\"\n\t\t\t\t@keydown.esc=\"hideActions\">\n\n\t\t\t\t<div class=\"list-item-content__wrapper\"\n\t\t\t\t\t:class=\"{ 'list-item-content__wrapper--compact': compact }\">\n\t\t\t\t\t<!-- @slot This slot is used for the NcAvatar or icon -->\n\t\t\t\t\t<slot name=\"icon\" />\n\n\t\t\t\t\t<!-- Main content -->\n\t\t\t\t\t<div class=\"list-item-content\">\n\t\t\t\t\t\t<div class=\"list-item-content__main\"\n\t\t\t\t\t\t\t:class=\"{ 'list-item-content__main--oneline': oneLine }\">\n\n\t\t\t\t\t\t\t<!-- First line, name and details -->\n\t\t\t\t\t\t\t<div class=\"line-one\">\n\t\t\t\t\t\t\t\t<span class=\"line-one__name\">\n\t\t\t\t\t\t\t\t\t{{ name }}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<span v-if=\"showDetails\"\n\t\t\t\t\t\t\t\t\tclass=\"line-one__details\">\n\t\t\t\t\t\t\t\t\t<!-- @slot This slot is used for some details in form of icon (prop `details` as a fallback) -->\n\t\t\t\t\t\t\t\t\t<slot name=\"details\">{{ details }}</slot>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<!-- Second line, subname and counter -->\n\t\t\t\t\t\t\t<div class=\"line-two\"\n\t\t\t\t\t\t\t\t:class=\"{'line-two--bold': bold}\">\n\t\t\t\t\t\t\t\t<span v-if=\"hasSubname\" class=\"line-two__subname\">\n\t\t\t\t\t\t\t\t\t<!-- @slot Slot for the second line of the component -->\n\t\t\t\t\t\t\t\t\t<slot name=\"subname\" />\n\t\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\t<!-- Counter and indicator -->\n\t\t\t\t\t\t\t\t<span v-if=\"counterNumber != 0 || hasIndicator\"\n\t\t\t\t\t\t\t\t\tv-show=\"showAdditionalElements\"\n\t\t\t\t\t\t\t\t\tclass=\"line-two__additional_elements\">\n\t\t\t\t\t\t\t\t\t<NcCounterBubble v-if=\"counterNumber != 0\"\n\t\t\t\t\t\t\t\t\t\t:active=\"isActive || active\"\n\t\t\t\t\t\t\t\t\t\tclass=\"line-two__counter\"\n\t\t\t\t\t\t\t\t\t\t:type=\"counterType\">\n\t\t\t\t\t\t\t\t\t\t{{ counterNumber }}\n\t\t\t\t\t\t\t\t\t</NcCounterBubble>\n\n\t\t\t\t\t\t\t\t\t<span v-if=\"hasIndicator\" class=\"line-two__indicator\">\n\t\t\t\t\t\t\t\t\t\t<!-- @slot This slot is used for some indicator in form of icon -->\n\t\t\t\t\t\t\t\t\t\t<slot name=\"indicator\" />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<!-- Actions -->\n\t\t\t\t\t\t<div v-if=\"!forceDisplayActions\"\n\t\t\t\t\t\t\tv-show=\"displayActionsOnHoverFocus\"\n\t\t\t\t\t\t\tclass=\"list-item-content__actions\"\n\t\t\t\t\t\t\t@click.prevent.stop=\"\">\n\t\t\t\t\t\t\t<NcActions ref=\"actions\"\n\t\t\t\t\t\t\t\t:primary=\"isActive || active\"\n\t\t\t\t\t\t\t\t:aria-label=\"computedActionsAriaLabel\"\n\t\t\t\t\t\t\t\t@update:open=\"handleActionsUpdateOpen\">\n\t\t\t\t\t\t\t\t<!-- @slot Provide the actions for the right side quick menu -->\n\t\t\t\t\t\t\t\t<slot name=\"actions\" />\n\t\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<!-- Actions -->\n\t\t\t\t\t<div v-if=\"forceDisplayActions\"\n\t\t\t\t\t\tclass=\"list-item-content__actions\"\n\t\t\t\t\t\t@click.prevent.stop=\"\">\n\t\t\t\t\t\t<NcActions ref=\"actions\"\n\t\t\t\t\t\t\t:primary=\"isActive || active\"\n\t\t\t\t\t\t\t:aria-label=\"computedActionsAriaLabel\"\n\t\t\t\t\t\t\t@update:open=\"handleActionsUpdateOpen\">\n\t\t\t\t\t\t\t<!-- @slot Provide the actions for the right side quick menu -->\n\t\t\t\t\t\t\t<slot name=\"actions\" />\n\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- @slot Extra elements below the item -->\n\t\t\t\t<div v-if=\"$slots.extra\" class=\"list-item__extra\">\n\t\t\t\t\t<slot name=\"extra\" />\n\t\t\t\t</div>\n\t\t\t</a>\n\t\t</li>\n\t</component>\n</template>\n\n<script>\nimport NcActions from '../NcActions/index.js'\nimport NcCounterBubble from '../NcCounterBubble/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { t } from '../../l10n.js'\n\nexport default {\n\tname: 'NcListItem',\n\n\tcomponents: {\n\t\tNcActions,\n\t\tNcCounterBubble,\n\t\tNcVNodes,\n\t},\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\t/**\n\t\t * The details text displayed in the upper right part of the component\n\t\t */\n\t\tdetails: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Name (first line of text)\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * The route for the router link.\n\t\t */\n\t\tto: {\n\t\t\ttype: [String, Object],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value for the external link\n\t\t */\n\t\thref: {\n\t\t\ttype: String,\n\t\t\tdefault: '#',\n\t\t},\n\n\t\ttarget: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Id for the `<a>` element\n\t\t */\n\t\tanchorId: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Make subname bold\n\t\t */\n\t\tbold: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Show the NcListItem in compact design\n\t\t */\n\t\tcompact: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggle the active state of the component\n\t\t */\n\t\tactive: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the wrapper element\n\t\t */\n\t\tlinkAriaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the actions toggle\n\t\t */\n\t\tactionsAriaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * If different from 0 this component will display the\n\t\t * NcCounterBubble component\n\t\t */\n\t\t counterNumber: {\n\t\t\t type: [Number, String],\n\t\t\t default: 0,\n\t\t },\n\n\t\t/**\n\t\t * Outlined or highlighted state of the counter\n\t\t */\n\t\tcounterType: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['highlighted', 'outlined', ''].indexOf(value) !== -1\n\t\t\t},\n\t\t},\n\n\t\t/**\n\t\t * To be used only when the elements in the actions menu are very important\n\t\t */\n\t\tforceDisplayActions: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t\t'update:menuOpen',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\thovered: false,\n\t\t\tfocused: false,\n\t\t\thasActions: false,\n\t\t\thasSubname: false,\n\t\t\tdisplayActionsOnHoverFocus: false,\n\t\t\tmenuOpen: false,\n\t\t\thasIndicator: false,\n\t\t\thasDetails: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\toneLine() {\n\t\t\treturn !this.hasSubname && !this.showDetails\n\t\t},\n\n\t\tshowAdditionalElements() {\n\t\t\treturn !this.displayActionsOnHoverFocus || this.forceDisplayActions\n\t\t},\n\n\t\tshowDetails() {\n\t\t\treturn (this.details !== '' || this.hasDetails)\n\t\t\t\t&& (!this.displayActionsOnHoverFocus || this.forceDisplayActions)\n\t\t},\n\n\t\tcomputedActionsAriaLabel() {\n\t\t\treturn this.actionsAriaLabel || t('Actions for item with name \"{name}\"', { name: this.name })\n\t\t},\n\t},\n\n\twatch: {\n\n\t\tmenuOpen(newValue) {\n\t\t\t// A click outside both the menu and the root element hides the actions again\n\t\t\tif (!newValue && !this.hovered) {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.checkSlots()\n\t},\n\n\tupdated() {\n\t\tthis.checkSlots()\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Handle link click\n\t\t *\n\t\t * @param {PointerEvent} event - Native click event\n\t\t * @param {Function} [navigate] - VueRouter link's navigate if any\n\t\t * @param {string} [routerLinkHref] - VueRouter link's href\n\t\t */\n\t\tonClick(event, navigate, routerLinkHref) {\n\t\t\t// Always forward native event\n\t\t\tthis.$emit('click', event)\n\t\t\t// Do not navigate with control keys - it is opening in a new tab\n\t\t\tif (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// Prevent default link behaviour if it's a router-link and navigate manually\n\t\t\tif (routerLinkHref) {\n\t\t\t\tnavigate?.(event)\n\t\t\t\tevent.preventDefault()\n\t\t\t}\n\t\t},\n\n\t\thandleMouseover() {\n\t\t\tthis.showActions()\n\t\t\tthis.hovered = true\n\t\t},\n\n\t\tshowActions() {\n\t\t\tif (this.hasActions) {\n\t\t\t\tthis.displayActionsOnHoverFocus = true\n\t\t\t}\n\t\t\tthis.hovered = false\n\t\t},\n\n\t\thideActions() {\n\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t},\n\n\t\t/**\n\t\t * Show actions upon focus\n\t\t */\n\t\thandleFocus() {\n\t\t\tthis.focused = true\n\t\t\tthis.showActions()\n\t\t},\n\n\t\thandleBlur() {\n\t\t\tthis.focused = false\n\t\t},\n\n\t\t/**\n\t\t * Hide the actions on mouseleave unless the menu is open\n\t\t */\n\t\thandleMouseleave() {\n\t\t\tif (!this.menuOpen) {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t\tthis.hovered = false\n\t\t},\n\n\t\t/**\n\t\t * This method checks if the root element of the component is focused and\n\t\t * if that's the case it focuses the actions button if available\n\t\t *\n\t\t * @param {Event} e the keydown event\n\t\t */\n\t\thandleTab(e) {\n\t\t\tif (this.focused && this.hasActions) {\n\t\t\t\te.preventDefault()\n\t\t\t\tthis.$refs.actions.$refs.menuButton.$el.focus()\n\t\t\t\tthis.focused = false\n\t\t\t} else {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t},\n\n\t\thandleActionsUpdateOpen(e) {\n\t\t\tthis.menuOpen = e\n\t\t\tthis.$emit('update:menuOpen', e)\n\t\t},\n\n\t\t// Check if subname and actions slots are populated\n\t\tcheckSlots() {\n\t\t\tif (this.hasActions !== !!this.$slots.actions) {\n\t\t\t\tthis.hasActions = !!this.$slots.actions\n\t\t\t}\n\t\t\tif (this.hasSubname !== !!this.$slots.subname) {\n\t\t\t\tthis.hasSubname = !!this.$slots.subname\n\t\t\t}\n\t\t\tif (this.hasIndicator !== !!this.$slots.indicator) {\n\t\t\t\tthis.hasIndicator = !!this.$slots.indicator\n\t\t\t}\n\t\t\tif (this.hasDetails !== !!this.$slots.details) {\n\t\t\t\tthis.hasDetails = !!this.$slots.details\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.list-item__wrapper {\n\tposition: relative;\n\twidth: 100%;\n\n\t&--active,\n\t&:active,\n\t&.active {\n\t\t.list-item {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t&:active,\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:focus-visible {\n\t\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t\t}\n\t\t}\n\n\t\t.line-one__name, .line-one__details {\n\t\t\tcolor: var(--color-primary-element-text) !important;\n\t\t}\n\n\t\t.line-two__subname {\n\t\t\tcolor: var(--color-primary-element-text) !important;\n\t\t}\n\t}\n}\n\n// NcListItem\n.list-item {\n\tbox-sizing: border-box;\n\tdisplay: block;\n\tposition: relative;\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\tpadding: 8px 10px;\n\t// Fix for border-radius being too large for 3-line entries like in Mail\n\t// 44px avatar size / 2 + 8px padding, and 2px for better visual quality\n\tborder-radius: 32px;\n\tmargin: 2px 0;\n\twidth: 100%;\n\tcursor: pointer;\n\ttransition: background-color var(--animation-quick) ease-in-out;\n\tlist-style: none;\n\t&:active,\n\t&:hover,\n\t&:focus,\n\t&:focus-visible {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n\n\t&-content__wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 48px;\n\n\t\t&--compact {\n\t\t\theight: 36px;\n\n\t\t\t.line-one, .line-two {\n\t\t\t\tmargin-top: -4px;\n\t\t\t\tmargin-bottom: -4px;\n\t\t\t}\n\t\t}\n\t}\n\n\t&-content {\n\t\tdisplay: flex;\n\t\tflex: 1 1 auto;\n\t\tjustify-content: space-between;\n\t\tpadding-left: 8px;\n\n\t\t&__main {\n\t\t\tflex: 1 1 auto;\n\t\t\twidth: 0;\n\t\t\tmargin: auto 0;\n\n\t\t\t&--oneline {\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t\t&__actions {\n\t\t\tflex: 0 0 auto;\n\t\t\talign-self: center;\n\t\t\tjustify-content: center;\n\t\t\tmargin-left: 4px;\n\t\t}\n\t}\n\n\t&__extra {\n\t\tmargin-top: 4px;\n\t}\n}\n\n.line-one {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\twhite-space: nowrap;\n\tmargin: 0 auto 0 0;\n\toverflow: hidden;\n\n\t&__name {\n\t\toverflow: hidden;\n\t\tflex-grow: 1;\n\t\tcursor: pointer;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-main-text);\n\t\tfont-weight: bold;\n\t}\n\n\t&__details {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin: 0 9px;\n\t\tfont-weight: normal;\n\t}\n}\n\n.line-two {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tjustify-content: space-between;\n\twhite-space: nowrap;\n\t&--bold {\n\t\tfont-weight: bold;\n\t}\n\n\t&__subname {\n\t\toverflow: hidden;\n\t\tflex-grow: 1;\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t&__additional_elements {\n\t\tmargin: 2px 4px 0 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t&__indicator {\n\t\tmargin: 0 5px;\n\t}\n}\n\n</style>\n"],"names":["_sfc_main","NcActions","NcCounterBubble","Components_NcVNodes","value","_l10n","newValue","event","navigate","routerLinkHref","e","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","vue","isActive","$props","_cache","args","$options","$event","_hoisted_5","_ctx","_hoisted_6","$data","_hoisted_7","_hoisted_8","_hoisted_9"],"mappings":"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"}
|