@nextcloud/vue 8.27.0 → 8.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +99 -25
- package/dist/Components/NcActionButton.cjs +1 -1
- package/dist/Components/NcActionButton.mjs +1 -1
- package/dist/Components/NcActionButtonGroup.cjs +1 -1
- package/dist/Components/NcActionButtonGroup.mjs +1 -1
- package/dist/Components/NcActionInput.cjs +1 -1
- package/dist/Components/NcActionInput.mjs +1 -1
- package/dist/Components/NcActionText.cjs +3 -3
- package/dist/Components/NcActionText.cjs.map +1 -1
- package/dist/Components/NcActionText.mjs +3 -3
- package/dist/Components/NcActionText.mjs.map +1 -1
- package/dist/Components/NcActionTextEditable.cjs +1 -1
- package/dist/Components/NcActionTextEditable.mjs +1 -1
- package/dist/Components/NcActions.cjs +1 -1
- package/dist/Components/NcActions.mjs +1 -1
- package/dist/Components/NcAppContent.cjs +1 -1
- package/dist/Components/NcAppContent.mjs +1 -1
- package/dist/Components/NcAppNavigation.cjs +1 -1
- package/dist/Components/NcAppNavigation.mjs +1 -1
- package/dist/Components/NcAppNavigationCaption.cjs +1 -1
- package/dist/Components/NcAppNavigationCaption.mjs +1 -1
- package/dist/Components/NcAppNavigationItem.cjs +1 -1
- package/dist/Components/NcAppNavigationItem.mjs +1 -1
- package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
- package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
- package/dist/Components/NcAppNavigationSearch.cjs +1 -1
- package/dist/Components/NcAppNavigationSearch.mjs +1 -1
- package/dist/Components/NcAppNavigationSettings.cjs +1 -1
- package/dist/Components/NcAppNavigationSettings.mjs +1 -1
- package/dist/Components/NcAppNavigationToggle.cjs +1 -1
- package/dist/Components/NcAppNavigationToggle.mjs +1 -1
- package/dist/Components/NcAppSettingsDialog.cjs +1 -1
- package/dist/Components/NcAppSettingsDialog.mjs +1 -1
- package/dist/Components/NcAppSidebar.cjs +1 -1
- package/dist/Components/NcAppSidebar.mjs +1 -1
- package/dist/Components/NcAvatar.cjs +1 -1
- package/dist/Components/NcAvatar.mjs +1 -1
- package/dist/Components/NcBreadcrumb.cjs +1 -1
- package/dist/Components/NcBreadcrumb.mjs +1 -1
- package/dist/Components/NcBreadcrumbs.cjs +1 -1
- package/dist/Components/NcBreadcrumbs.mjs +1 -1
- package/dist/Components/NcButton.cjs +15 -2
- package/dist/Components/NcButton.cjs.map +1 -1
- package/dist/Components/NcButton.mjs +15 -2
- package/dist/Components/NcButton.mjs.map +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
- package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
- package/dist/Components/NcChip.cjs +4 -4
- package/dist/Components/NcChip.mjs +4 -4
- package/dist/Components/NcCollectionList.cjs +1 -1
- package/dist/Components/NcCollectionList.mjs +1 -1
- package/dist/Components/NcColorPicker.cjs +1 -1
- package/dist/Components/NcColorPicker.mjs +1 -1
- package/dist/Components/NcContent.cjs +1 -1
- package/dist/Components/NcContent.mjs +1 -1
- package/dist/Components/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 +5 -5
- package/dist/Components/NcDateTimePicker.mjs +5 -5
- package/dist/Components/NcDateTimePickerNative.cjs +1 -1
- package/dist/Components/NcDateTimePickerNative.mjs +1 -1
- package/dist/Components/NcDialog.cjs +1 -1
- package/dist/Components/NcDialog.mjs +1 -1
- package/dist/Components/NcDialogButton.cjs +1 -1
- package/dist/Components/NcDialogButton.mjs +1 -1
- package/dist/Components/NcEmojiPicker.cjs +1 -1
- package/dist/Components/NcEmojiPicker.mjs +1 -1
- package/dist/Components/NcGuestContent.cjs +2 -2
- package/dist/Components/NcGuestContent.cjs.map +1 -1
- package/dist/Components/NcGuestContent.mjs +2 -2
- package/dist/Components/NcGuestContent.mjs.map +1 -1
- package/dist/Components/NcHeaderButton.cjs +1 -1
- package/dist/Components/NcHeaderButton.mjs +1 -1
- package/dist/Components/NcHeaderMenu.cjs +1 -1
- package/dist/Components/NcHeaderMenu.mjs +1 -1
- package/dist/Components/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/NcLoadingIcon.cjs +2 -2
- package/dist/Components/NcLoadingIcon.cjs.map +1 -1
- package/dist/Components/NcLoadingIcon.mjs +2 -2
- package/dist/Components/NcLoadingIcon.mjs.map +1 -1
- package/dist/Components/NcModal.cjs +8 -17
- package/dist/Components/NcModal.cjs.map +1 -1
- package/dist/Components/NcModal.mjs +8 -17
- package/dist/Components/NcModal.mjs.map +1 -1
- package/dist/Components/NcPasswordField.cjs +1 -1
- package/dist/Components/NcPasswordField.mjs +1 -1
- package/dist/Components/NcPopover.cjs +1 -1
- package/dist/Components/NcPopover.mjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
- package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
- package/dist/Components/NcRichContenteditable.cjs +2 -2
- package/dist/Components/NcRichContenteditable.mjs +2 -2
- package/dist/Components/NcRichText.cjs +2 -2
- package/dist/Components/NcRichText.mjs +3 -3
- package/dist/Components/NcSavingIndicatorIcon.cjs +1 -1
- package/dist/Components/NcSavingIndicatorIcon.mjs +1 -1
- package/dist/Components/NcSelect.cjs +1 -1
- package/dist/Components/NcSelect.mjs +1 -1
- package/dist/Components/NcSelectTags.cjs +1 -1
- package/dist/Components/NcSelectTags.mjs +1 -1
- package/dist/Components/NcSelectUsers.cjs +1 -1
- package/dist/Components/NcSelectUsers.mjs +1 -1
- package/dist/Components/NcSettingsInputText.cjs +1 -1
- package/dist/Components/NcSettingsInputText.mjs +1 -1
- package/dist/Components/NcSettingsSection.cjs +1 -1
- package/dist/Components/NcSettingsSection.mjs +1 -1
- package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
- package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
- package/dist/Components/NcTextArea.cjs +1 -1
- package/dist/Components/NcTextArea.mjs +1 -1
- package/dist/Components/NcTextField.cjs +1 -1
- package/dist/Components/NcTextField.mjs +1 -1
- package/dist/Components/NcThemeProvider.cjs +4 -0
- package/dist/Components/NcThemeProvider.cjs.map +1 -0
- package/dist/Components/NcThemeProvider.mjs +5 -0
- package/dist/Components/NcThemeProvider.mjs.map +1 -0
- package/dist/Components/NcTimezonePicker.cjs +1 -1
- package/dist/Components/NcTimezonePicker.mjs +1 -1
- package/dist/Components/NcUserBubble.cjs +1 -1
- package/dist/Components/NcUserBubble.mjs +1 -1
- package/dist/Components/NcUserStatusIcon.cjs +1 -1
- package/dist/Components/NcUserStatusIcon.mjs +1 -1
- package/dist/Composables/useFormatDateTime.cjs +68 -0
- package/dist/Composables/useFormatDateTime.cjs.map +1 -0
- package/dist/Composables/useFormatDateTime.mjs +68 -0
- package/dist/Composables/useFormatDateTime.mjs.map +1 -0
- package/dist/Composables/useHotKey.cjs +13 -1
- package/dist/Composables/useHotKey.cjs.map +1 -1
- package/dist/Composables/useHotKey.mjs +13 -1
- package/dist/Composables/useHotKey.mjs.map +1 -1
- package/dist/Composables/useIsDarkTheme.cjs +23 -6
- package/dist/Composables/useIsDarkTheme.cjs.map +1 -1
- package/dist/Composables/useIsDarkTheme.mjs +24 -7
- package/dist/Composables/useIsDarkTheme.mjs.map +1 -1
- package/dist/Functions/dialog.cjs +19 -7
- package/dist/Functions/dialog.cjs.map +1 -1
- package/dist/Functions/dialog.mjs +19 -7
- package/dist/Functions/dialog.mjs.map +1 -1
- package/dist/Functions/reference.cjs +1 -1
- package/dist/Functions/reference.mjs +1 -1
- package/dist/Functions/usernameToColor.cjs +28 -2
- package/dist/Functions/usernameToColor.cjs.map +1 -1
- package/dist/Functions/usernameToColor.mjs +25 -2
- package/dist/Functions/usernameToColor.mjs.map +1 -1
- package/dist/Mixins/richEditor.cjs +1 -1
- package/dist/Mixins/richEditor.mjs +1 -1
- package/dist/assets/{NcActionButton-CuV1ITDb.css → NcActionButton-D8Lyueq3.css} +20 -17
- package/dist/assets/{NcActionInput-gUagFGC5.css → NcActionInput-Q0DfTHVL.css} +62 -62
- package/dist/assets/{NcActionText-vT7nheBU.css → NcActionText-Rad4JSXq.css} +18 -18
- package/dist/assets/{NcActions-3STB3u9J.css → NcActions-C3F-rqxz.css} +11 -11
- package/dist/assets/{NcAppContent-DUkkgtHn.css → NcAppContent-Bb5hgGi3.css} +23 -23
- package/dist/assets/{NcAppNavigationItem-CdT6ce8-.css → NcAppNavigationItem-Ca2ekElv.css} +35 -31
- package/dist/assets/{NcAppNavigationNewItem-D7wroqrc.css → NcAppNavigationNewItem-PE-w8y-g.css} +5 -1
- package/dist/assets/{NcAppSidebar-BFg2HHh6.css → NcAppSidebar-u0G_qQMh.css} +44 -67
- package/dist/assets/NcAvatar-BqNcvkxP.css +134 -0
- package/dist/assets/{NcButton-DnNZaEy_.css → NcButton-Cjx-v-Qz.css} +84 -72
- package/dist/assets/{NcCheckboxRadioSwitch-DlEieXCj.css → NcCheckboxRadioSwitch-B-axx3m7.css} +45 -42
- package/dist/assets/{NcColorPicker-BayJGD4p.css → NcColorPicker-C-3wb1sk.css} +28 -28
- package/dist/assets/{NcContent-Bq-7EZQc.css → NcContent-DH4tX3N4.css} +12 -9
- package/dist/assets/{NcDateTimePicker-hcAowAbZ.css → NcDateTimePicker-Bx7XHFo7.css} +7 -7
- package/dist/assets/{NcDialog-BPI0CJvw.css → NcDialog-X7BRqUGJ.css} +15 -15
- package/dist/assets/{NcGuestContent-B0ivUQHg.css → NcGuestContent-ByAkjts7.css} +2 -2
- package/dist/assets/{NcHeaderButton-Dr6MgPDQ.css → NcHeaderButton-ByNXqS7x.css} +4 -0
- package/dist/assets/{NcHeaderMenu-DN-HfTkh.css → NcHeaderMenu-Dp_vJKTP.css} +4 -0
- package/dist/assets/{NcInputField-GxJ-rf2p.css → NcInputField-Cdd0B1OR.css} +38 -32
- package/dist/assets/{NcListItem-DfaWGP5A.css → NcListItem-CCu1OBiG.css} +44 -44
- package/dist/assets/{NcLoadingIcon-x1d284UU.css → NcLoadingIcon-DbbToJVp.css} +5 -2
- package/dist/assets/{NcMentionBubble-CB5c5ue2.css → NcMentionBubble-UsTMm5VD.css} +9 -9
- package/dist/assets/{NcModal-BS5vtogq.css → NcModal-Cy3UOuI2.css} +62 -62
- package/dist/assets/{NcPasswordField-whtKJFcB.css → NcPasswordField-DVK8tuPi.css} +2 -2
- package/dist/assets/{NcRichContenteditable-BbOjh6i7.css → NcRichContenteditable-CGRMNrie.css} +9 -9
- package/dist/assets/{NcRichText-li93TNBn.css → NcRichText-CWVHZl8s.css} +86 -83
- package/dist/assets/NcSelectUsers-BOwQNNMf.css +4 -0
- package/dist/assets/{NcSettingsSection-_mX6UqM_.css → NcSettingsSection-uKqWTbhb.css} +8 -8
- package/dist/assets/{NcTextArea-fzbciv3V.css → NcTextArea-DhttRTsL.css} +20 -20
- package/dist/assets/{NcUserStatusIcon-DAVSJFhS.css → NcUserStatusIcon-ChHaXPex.css} +7 -7
- package/dist/chunks/{GenColors-7bkY5Nwl.cjs → GenColors-BnYS3bvv.cjs} +2 -2
- package/dist/chunks/{GenColors-7bkY5Nwl.cjs.map → GenColors-BnYS3bvv.cjs.map} +1 -1
- package/dist/chunks/{GenColors-B49R8TGp.mjs → GenColors-DNN63dHB.mjs} +2 -2
- package/dist/chunks/{GenColors-B49R8TGp.mjs.map → GenColors-DNN63dHB.mjs.map} +1 -1
- package/dist/chunks/{NcActionButton-CD87AU6W.cjs → NcActionButton-2qh96K_i.cjs} +4 -4
- package/dist/chunks/{NcActionButton-CD87AU6W.cjs.map → NcActionButton-2qh96K_i.cjs.map} +1 -1
- package/dist/chunks/{NcActionButton-CuVNJJtW.mjs → NcActionButton-CHrE7amZ.mjs} +4 -4
- package/dist/chunks/{NcActionButton-CuVNJJtW.mjs.map → NcActionButton-CHrE7amZ.mjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-BMy3W9fG.cjs → NcActionButtonGroup-B8Bj-Qb3.cjs} +2 -2
- package/dist/chunks/{NcActionButtonGroup-BMy3W9fG.cjs.map → NcActionButtonGroup-B8Bj-Qb3.cjs.map} +1 -1
- package/dist/chunks/{NcActionButtonGroup-DEf00ge6.mjs → NcActionButtonGroup-_R4fp-bK.mjs} +2 -2
- package/dist/chunks/{NcActionButtonGroup-DEf00ge6.mjs.map → NcActionButtonGroup-_R4fp-bK.mjs.map} +1 -1
- package/dist/chunks/{NcActionInput-B4qGsF57.mjs → NcActionInput-BXOssTbe.mjs} +12 -11
- package/dist/chunks/NcActionInput-BXOssTbe.mjs.map +1 -0
- package/dist/chunks/{NcActionInput-BmERg0FB.cjs → NcActionInput-Bv4_2oYO.cjs} +13 -11
- package/dist/chunks/NcActionInput-Bv4_2oYO.cjs.map +1 -0
- package/dist/chunks/{NcActionTextEditable-Cceub6Yt.cjs → NcActionTextEditable-DqcHZqN5.cjs} +2 -2
- package/dist/chunks/{NcActionTextEditable-Cceub6Yt.cjs.map → NcActionTextEditable-DqcHZqN5.cjs.map} +1 -1
- package/dist/chunks/{NcActionTextEditable-DNweMXRJ.mjs → NcActionTextEditable-xrMV-kE8.mjs} +2 -2
- package/dist/chunks/{NcActionTextEditable-DNweMXRJ.mjs.map → NcActionTextEditable-xrMV-kE8.mjs.map} +1 -1
- package/dist/chunks/{NcActions-B4VZCD8B.mjs → NcActions-BANvgaMn.mjs} +42 -9
- package/dist/chunks/NcActions-BANvgaMn.mjs.map +1 -0
- package/dist/chunks/{NcActions-B7DbEbCo.cjs → NcActions-DV3CjPHr.cjs} +42 -9
- package/dist/chunks/NcActions-DV3CjPHr.cjs.map +1 -0
- package/dist/chunks/{NcAppContent-B7ER65tk.cjs → NcAppContent-BqR67yTH.cjs} +44 -36
- package/dist/chunks/NcAppContent-BqR67yTH.cjs.map +1 -0
- package/dist/chunks/{NcAppContent-DyXqBrOB.mjs → NcAppContent-twZJBrQv.mjs} +44 -36
- package/dist/chunks/NcAppContent-twZJBrQv.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigation-JyeZxhb6.cjs → NcAppNavigation-COge8_bn.cjs} +3 -3
- package/dist/chunks/{NcAppNavigation-JyeZxhb6.cjs.map → NcAppNavigation-COge8_bn.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigation-CqKWSnxO.mjs → NcAppNavigation-VSGTDckG.mjs} +3 -3
- package/dist/chunks/{NcAppNavigation-CqKWSnxO.mjs.map → NcAppNavigation-VSGTDckG.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-CMnWvBgA.cjs → NcAppNavigationCaption-ofy-JSGu.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationCaption-CMnWvBgA.cjs.map → NcAppNavigationCaption-ofy-JSGu.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationCaption-DcgSwIOY.mjs → NcAppNavigationCaption-oxc7chGv.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationCaption-DcgSwIOY.mjs.map → NcAppNavigationCaption-oxc7chGv.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationItem-B9Gs5p7m.cjs → NcAppNavigationItem-B-uv2tWu.cjs} +8 -8
- package/dist/chunks/NcAppNavigationItem-B-uv2tWu.cjs.map +1 -0
- package/dist/chunks/{NcAppNavigationItem-CrTVtqYV.mjs → NcAppNavigationItem-CbtPNTg_.mjs} +8 -8
- package/dist/chunks/NcAppNavigationItem-CbtPNTg_.mjs.map +1 -0
- package/dist/chunks/{NcAppNavigationNewItem-CcBvnQst.mjs → NcAppNavigationNewItem-Cz8VbLjN.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationNewItem-CcBvnQst.mjs.map → NcAppNavigationNewItem-Cz8VbLjN.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationNewItem-BLek0JRU.cjs → NcAppNavigationNewItem-DzpW6cIK.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationNewItem-BLek0JRU.cjs.map → NcAppNavigationNewItem-DzpW6cIK.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-BC3kPnxr.mjs → NcAppNavigationSearch-BvCjwhyQ.mjs} +3 -3
- package/dist/chunks/{NcAppNavigationSearch-BC3kPnxr.mjs.map → NcAppNavigationSearch-BvCjwhyQ.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSearch-BblolNaS.cjs → NcAppNavigationSearch-s1mEjjZM.cjs} +3 -3
- package/dist/chunks/{NcAppNavigationSearch-BblolNaS.cjs.map → NcAppNavigationSearch-s1mEjjZM.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-JruJ3cF1.mjs → NcAppNavigationSettings-DhQ5tXEJ.mjs} +5 -3
- package/dist/chunks/{NcAppNavigationSettings-JruJ3cF1.mjs.map → NcAppNavigationSettings-DhQ5tXEJ.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationSettings-ppse1A0c.cjs → NcAppNavigationSettings-DnvFbZyP.cjs} +5 -3
- package/dist/chunks/{NcAppNavigationSettings-ppse1A0c.cjs.map → NcAppNavigationSettings-DnvFbZyP.cjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-CUdNQwyN.mjs → NcAppNavigationToggle-CINjg2Mo.mjs} +2 -2
- package/dist/chunks/{NcAppNavigationToggle-CUdNQwyN.mjs.map → NcAppNavigationToggle-CINjg2Mo.mjs.map} +1 -1
- package/dist/chunks/{NcAppNavigationToggle-CUGOWggc.cjs → NcAppNavigationToggle-CbZem2gZ.cjs} +2 -2
- package/dist/chunks/{NcAppNavigationToggle-CUGOWggc.cjs.map → NcAppNavigationToggle-CbZem2gZ.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-6cTux_qA.cjs → NcAppSettingsDialog-C1m0QYAK.cjs} +3 -3
- package/dist/chunks/{NcAppSettingsDialog-6cTux_qA.cjs.map → NcAppSettingsDialog-C1m0QYAK.cjs.map} +1 -1
- package/dist/chunks/{NcAppSettingsDialog-D98cLpyy.mjs → NcAppSettingsDialog-Duyfikm-.mjs} +3 -3
- package/dist/chunks/{NcAppSettingsDialog-D98cLpyy.mjs.map → NcAppSettingsDialog-Duyfikm-.mjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-BqMsSY-_.cjs → NcAppSidebar-C-7OzN3N.cjs} +7 -7
- package/dist/chunks/{NcAppSidebar-BdryV6wY.mjs.map → NcAppSidebar-C-7OzN3N.cjs.map} +1 -1
- package/dist/chunks/{NcAppSidebar-BdryV6wY.mjs → NcAppSidebar-ape8OSJ3.mjs} +7 -7
- package/dist/chunks/{NcAppSidebar-BqMsSY-_.cjs.map → NcAppSidebar-ape8OSJ3.mjs.map} +1 -1
- package/dist/chunks/{NcAvatar-YSp2ORHc.mjs → NcAvatar-BA6pHpbT.mjs} +37 -26
- package/dist/chunks/NcAvatar-BA6pHpbT.mjs.map +1 -0
- package/dist/chunks/{NcAvatar-D_1clyWB.cjs → NcAvatar-CdBMEKsO.cjs} +39 -28
- package/dist/chunks/NcAvatar-CdBMEKsO.cjs.map +1 -0
- package/dist/chunks/{NcBreadcrumb-BSRmcIIh.cjs → NcBreadcrumb-BiW4k0c_.cjs} +2 -2
- package/dist/chunks/{NcBreadcrumb-BSRmcIIh.cjs.map → NcBreadcrumb-BiW4k0c_.cjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumb-Cu1XtrUo.mjs → NcBreadcrumb-BjsavDr1.mjs} +2 -2
- package/dist/chunks/{NcBreadcrumb-Cu1XtrUo.mjs.map → NcBreadcrumb-BjsavDr1.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-B1LdRe5_.mjs → NcBreadcrumbs-Bc2obqjl.mjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-B1LdRe5_.mjs.map → NcBreadcrumbs-Bc2obqjl.mjs.map} +1 -1
- package/dist/chunks/{NcBreadcrumbs-B0m6jKER.cjs → NcBreadcrumbs-Dwnn6dKU.cjs} +4 -4
- package/dist/chunks/{NcBreadcrumbs-B0m6jKER.cjs.map → NcBreadcrumbs-Dwnn6dKU.cjs.map} +1 -1
- package/dist/chunks/{NcCheckboxRadioSwitch-DbK49DI7.cjs → NcCheckboxRadioSwitch-ewtyZP3Z.cjs} +5 -5
- package/dist/chunks/NcCheckboxRadioSwitch-ewtyZP3Z.cjs.map +1 -0
- package/dist/chunks/{NcCheckboxRadioSwitch-VeztTzpz.mjs → NcCheckboxRadioSwitch-qmvgRzxb.mjs} +5 -5
- package/dist/chunks/NcCheckboxRadioSwitch-qmvgRzxb.mjs.map +1 -0
- package/dist/chunks/{NcCollectionList-BStYmq4u.cjs → NcCollectionList-C5nw4svt.cjs} +6 -6
- package/dist/chunks/{NcCollectionList-BStYmq4u.cjs.map → NcCollectionList-C5nw4svt.cjs.map} +1 -1
- package/dist/chunks/{NcCollectionList-CFt-EZON.mjs → NcCollectionList-CXAtmdEZ.mjs} +6 -6
- package/dist/chunks/{NcCollectionList-CFt-EZON.mjs.map → NcCollectionList-CXAtmdEZ.mjs.map} +1 -1
- package/dist/chunks/{NcColorPicker-D7aj2f61.mjs → NcColorPicker-CU2sbJKt.mjs} +63 -33
- package/dist/chunks/NcColorPicker-CU2sbJKt.mjs.map +1 -0
- package/dist/chunks/{NcColorPicker-T-ifFDNs.cjs → NcColorPicker-DkoxNQJS.cjs} +63 -33
- package/dist/chunks/NcColorPicker-DkoxNQJS.cjs.map +1 -0
- package/dist/chunks/{NcContent-Cfz3ytoh.mjs → NcContent-BkmB4vmh.mjs} +4 -4
- package/dist/chunks/{NcContent-DUUfYUtn.cjs.map → NcContent-BkmB4vmh.mjs.map} +1 -1
- package/dist/chunks/{NcContent-DUUfYUtn.cjs → NcContent-h4LUA1hj.cjs} +4 -4
- package/dist/chunks/{NcContent-Cfz3ytoh.mjs.map → NcContent-h4LUA1hj.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-eStjL-WD.mjs → NcDashboardWidget-B_Egc1Og.mjs} +4 -4
- package/dist/chunks/{NcDashboardWidget-eStjL-WD.mjs.map → NcDashboardWidget-B_Egc1Og.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidget-BI_Z44sc.cjs → NcDashboardWidget-EsWoGPKV.cjs} +4 -4
- package/dist/chunks/{NcDashboardWidget-BI_Z44sc.cjs.map → NcDashboardWidget-EsWoGPKV.cjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-BRFj1-Ir.mjs → NcDashboardWidgetItem-3oirT6j6.mjs} +4 -4
- package/dist/chunks/{NcDashboardWidgetItem-BRFj1-Ir.mjs.map → NcDashboardWidgetItem-3oirT6j6.mjs.map} +1 -1
- package/dist/chunks/{NcDashboardWidgetItem-gMKHqbAo.cjs → NcDashboardWidgetItem-qibYWTLk.cjs} +4 -4
- package/dist/chunks/{NcDashboardWidgetItem-gMKHqbAo.cjs.map → NcDashboardWidgetItem-qibYWTLk.cjs.map} +1 -1
- package/dist/chunks/NcDateTime-Cl-PZpLN.cjs +76 -0
- package/dist/chunks/NcDateTime-Cl-PZpLN.cjs.map +1 -0
- package/dist/chunks/NcDateTime-kanSdMgW.mjs +77 -0
- package/dist/chunks/NcDateTime-kanSdMgW.mjs.map +1 -0
- package/dist/chunks/{NcDialog-CKgpZOiy.mjs → NcDialog-C_IHQciE.mjs} +5 -5
- package/dist/chunks/{NcDialog-CKgpZOiy.mjs.map → NcDialog-C_IHQciE.mjs.map} +1 -1
- package/dist/chunks/{NcDialog-DvC6y1MC.cjs → NcDialog-Cqdo11BM.cjs} +5 -5
- package/dist/chunks/{NcDialog-DvC6y1MC.cjs.map → NcDialog-Cqdo11BM.cjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-CROAi1Ll.mjs → NcDialogButton-Cc3iWZH1.mjs} +2 -2
- package/dist/chunks/{NcDialogButton-CROAi1Ll.mjs.map → NcDialogButton-Cc3iWZH1.mjs.map} +1 -1
- package/dist/chunks/{NcDialogButton-BFemrIUw.cjs → NcDialogButton-_biPxXPQ.cjs} +2 -2
- package/dist/chunks/{NcDialogButton-BFemrIUw.cjs.map → NcDialogButton-_biPxXPQ.cjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-Du-vbR5T.mjs → NcEmojiPicker-C3rhl7Xh.mjs} +7 -7
- package/dist/chunks/{NcEmojiPicker-Du-vbR5T.mjs.map → NcEmojiPicker-C3rhl7Xh.mjs.map} +1 -1
- package/dist/chunks/{NcEmojiPicker-CtvRZuBW.cjs → NcEmojiPicker-Dynz_fRD.cjs} +7 -7
- package/dist/chunks/{NcEmojiPicker-CtvRZuBW.cjs.map → NcEmojiPicker-Dynz_fRD.cjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-Dj7jeq88.mjs → NcHeaderMenu--AvoyMeD.mjs} +6 -4
- package/dist/chunks/{NcHeaderMenu-Dj7jeq88.mjs.map → NcHeaderMenu--AvoyMeD.mjs.map} +1 -1
- package/dist/chunks/{NcHeaderMenu-CCaYMhFb.cjs → NcHeaderMenu-B12nEFGc.cjs} +6 -4
- package/dist/chunks/{NcHeaderMenu-CCaYMhFb.cjs.map → NcHeaderMenu-B12nEFGc.cjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-lVLFwBA4.cjs → NcInputConfirmCancel-BpPXGiKs.cjs} +2 -2
- package/dist/chunks/{NcInputConfirmCancel-lVLFwBA4.cjs.map → NcInputConfirmCancel-BpPXGiKs.cjs.map} +1 -1
- package/dist/chunks/{NcInputConfirmCancel-Dhbj3Gad.mjs → NcInputConfirmCancel-P1H1ymiB.mjs} +2 -2
- package/dist/chunks/{NcInputConfirmCancel-Dhbj3Gad.mjs.map → NcInputConfirmCancel-P1H1ymiB.mjs.map} +1 -1
- package/dist/chunks/{NcInputField-C61UUN46.cjs → NcInputField-CD_Jxnho.cjs} +11 -4
- package/dist/chunks/NcInputField-CD_Jxnho.cjs.map +1 -0
- package/dist/chunks/{NcInputField-DTtUueUZ.mjs → NcInputField-a50IXAHm.mjs} +11 -4
- package/dist/chunks/NcInputField-a50IXAHm.mjs.map +1 -0
- package/dist/chunks/{NcListItem-BVNMtN9D.cjs → NcListItem-BJLfBv4G.cjs} +10 -9
- package/dist/chunks/{NcListItem-BVNMtN9D.cjs.map → NcListItem-BJLfBv4G.cjs.map} +1 -1
- package/dist/chunks/{NcListItem-B4Uyn2AS.mjs → NcListItem-DIupNkcV.mjs} +10 -9
- package/dist/chunks/{NcListItem-B4Uyn2AS.mjs.map → NcListItem-DIupNkcV.mjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-C_sEE5Xw.cjs → NcListItemIcon-BGehR6IP.cjs} +5 -3
- package/dist/chunks/{NcListItemIcon-C_sEE5Xw.cjs.map → NcListItemIcon-BGehR6IP.cjs.map} +1 -1
- package/dist/chunks/{NcListItemIcon-0H1Pepui.mjs → NcListItemIcon-C2PVlvB7.mjs} +5 -3
- package/dist/chunks/{NcListItemIcon-0H1Pepui.mjs.map → NcListItemIcon-C2PVlvB7.mjs.map} +1 -1
- package/dist/chunks/{NcPasswordField-BCzIotoB.cjs → NcPasswordField-Bci0EOiA.cjs} +35 -19
- package/dist/chunks/NcPasswordField-Bci0EOiA.cjs.map +1 -0
- package/dist/chunks/{NcPasswordField-DNjegDVj.mjs → NcPasswordField-CNUa4WOq.mjs} +35 -19
- package/dist/chunks/NcPasswordField-CNUa4WOq.mjs.map +1 -0
- package/dist/chunks/{NcPopover-kYsewfff.mjs → NcPopover-4-YxCZOD.mjs} +2 -2
- package/dist/chunks/{NcPopover-kYsewfff.mjs.map → NcPopover-4-YxCZOD.mjs.map} +1 -1
- package/dist/chunks/{NcPopover-B2z7TwNr.cjs → NcPopover-DH2oMHFe.cjs} +2 -2
- package/dist/chunks/{NcPopover-B2z7TwNr.cjs.map → NcPopover-DH2oMHFe.cjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel-C9qkNtuo.cjs → NcRelatedResourcesPanel-D_4x0nYR.cjs} +2 -2
- package/dist/chunks/{NcRelatedResourcesPanel-C9qkNtuo.cjs.map → NcRelatedResourcesPanel-D_4x0nYR.cjs.map} +1 -1
- package/dist/chunks/{NcRelatedResourcesPanel-Y38zaKtn.mjs → NcRelatedResourcesPanel-qQK3J_qe.mjs} +2 -2
- package/dist/chunks/{NcRelatedResourcesPanel-Y38zaKtn.mjs.map → NcRelatedResourcesPanel-qQK3J_qe.mjs.map} +1 -1
- package/dist/chunks/{NcRichContenteditable-Df_eA-oc.cjs → NcRichContenteditable-BLXUzOmi.cjs} +20 -15
- package/dist/chunks/NcRichContenteditable-BLXUzOmi.cjs.map +1 -0
- package/dist/chunks/{NcRichContenteditable-B8UqleMX.mjs → NcRichContenteditable-C5Dfv3nk.mjs} +20 -15
- package/dist/chunks/NcRichContenteditable-C5Dfv3nk.mjs.map +1 -0
- package/dist/chunks/{NcRichText-CwXSzf21.mjs → NcRichText-BE5jQHKt.mjs} +10 -6
- package/dist/chunks/{NcRichText-BS22_NFb.cjs.map → NcRichText-BE5jQHKt.mjs.map} +1 -1
- package/dist/chunks/{NcRichText-BS22_NFb.cjs → NcRichText-Blh7R46K.cjs} +10 -6
- package/dist/chunks/{NcRichText-CwXSzf21.mjs.map → NcRichText-Blh7R46K.cjs.map} +1 -1
- package/dist/chunks/{NcSavingIndicatorIcon-nv1147dk.mjs → NcSavingIndicatorIcon-BPlY5Y9p.mjs} +2 -2
- package/dist/chunks/{NcSavingIndicatorIcon-nv1147dk.mjs.map → NcSavingIndicatorIcon-BPlY5Y9p.mjs.map} +1 -1
- package/dist/chunks/{NcSavingIndicatorIcon-Bu-zt4pR.cjs → NcSavingIndicatorIcon-DmGFZsmS.cjs} +2 -2
- package/dist/chunks/{NcSavingIndicatorIcon-Bu-zt4pR.cjs.map → NcSavingIndicatorIcon-DmGFZsmS.cjs.map} +1 -1
- package/dist/chunks/{NcSelect-CjUzohn5.mjs → NcSelect-B3fxFbfG.mjs} +3 -3
- package/dist/chunks/{NcSelect-CjUzohn5.mjs.map → NcSelect-B3fxFbfG.mjs.map} +1 -1
- package/dist/chunks/{NcSelect-D2xnxw4_.cjs → NcSelect-R8bPyBFL.cjs} +3 -3
- package/dist/chunks/{NcSelect-D2xnxw4_.cjs.map → NcSelect-R8bPyBFL.cjs.map} +1 -1
- package/dist/chunks/{NcSelectTags-wJN9J7_t.mjs → NcSelectTags-BxII3k6P.mjs} +3 -3
- package/dist/chunks/{NcSelectTags-wJN9J7_t.mjs.map → NcSelectTags-BxII3k6P.mjs.map} +1 -1
- package/dist/chunks/{NcSelectTags--3rrSgOf.cjs → NcSelectTags-CmOvIcGU.cjs} +3 -3
- package/dist/chunks/{NcSelectTags--3rrSgOf.cjs.map → NcSelectTags-CmOvIcGU.cjs.map} +1 -1
- package/dist/chunks/{NcSelectUsers-CtuVriGK.cjs → NcSelectUsers-4dbGg26c.cjs} +14 -8
- package/dist/chunks/{NcSelectUsers-CtuVriGK.cjs.map → NcSelectUsers-4dbGg26c.cjs.map} +1 -1
- package/dist/chunks/{NcSelectUsers-W17kOow7.mjs → NcSelectUsers-BlVsLFrq.mjs} +14 -8
- package/dist/chunks/{NcSelectUsers-W17kOow7.mjs.map → NcSelectUsers-BlVsLFrq.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-BU1_SHOq.cjs → NcSettingsInputText-Cf-juMyF.cjs} +2 -2
- package/dist/chunks/{NcSettingsInputText-BU1_SHOq.cjs.map → NcSettingsInputText-Cf-juMyF.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsInputText-YO053agL.mjs → NcSettingsInputText-DYN2i2d2.mjs} +2 -2
- package/dist/chunks/{NcSettingsInputText-YO053agL.mjs.map → NcSettingsInputText-DYN2i2d2.mjs.map} +1 -1
- package/dist/chunks/{NcSettingsSection-C76Kqeew.mjs → NcSettingsSection-DK0dtGcw.mjs} +8 -9
- package/dist/chunks/NcSettingsSection-DK0dtGcw.mjs.map +1 -0
- package/dist/chunks/{NcSettingsSection-Dcdxs1IN.cjs → NcSettingsSection-VrSMms0R.cjs} +8 -9
- package/dist/chunks/NcSettingsSection-VrSMms0R.cjs.map +1 -0
- package/dist/chunks/{NcSettingsSelectGroup-Dj0Cusng.cjs → NcSettingsSelectGroup-CutKYnV3.cjs} +3 -3
- package/dist/chunks/{NcSettingsSelectGroup-Dj0Cusng.cjs.map → NcSettingsSelectGroup-CutKYnV3.cjs.map} +1 -1
- package/dist/chunks/{NcSettingsSelectGroup-CH_kppKo.mjs → NcSettingsSelectGroup-buP5uEyf.mjs} +3 -3
- package/dist/chunks/{NcSettingsSelectGroup-CH_kppKo.mjs.map → NcSettingsSelectGroup-buP5uEyf.mjs.map} +1 -1
- package/dist/chunks/{NcTextArea-CYLGAGcO.cjs → NcTextArea-BUqxDVLX.cjs} +11 -4
- package/dist/chunks/NcTextArea-BUqxDVLX.cjs.map +1 -0
- package/dist/chunks/{NcTextArea-BHERsE_g.mjs → NcTextArea-C10S9llK.mjs} +11 -4
- package/dist/chunks/NcTextArea-C10S9llK.mjs.map +1 -0
- package/dist/chunks/{NcTextField-Uk5iD8o2.cjs → NcTextField-C24Y7Zzr.cjs} +30 -49
- package/dist/chunks/NcTextField-C24Y7Zzr.cjs.map +1 -0
- package/dist/chunks/{NcTextField-o_8gWurX.mjs → NcTextField-GdOVvMI8.mjs} +30 -49
- package/dist/chunks/NcTextField-GdOVvMI8.mjs.map +1 -0
- package/dist/chunks/NcThemeProvider-25ResoIv.mjs +53 -0
- package/dist/chunks/NcThemeProvider-25ResoIv.mjs.map +1 -0
- package/dist/chunks/NcThemeProvider-BqGPTeWg.cjs +52 -0
- package/dist/chunks/NcThemeProvider-BqGPTeWg.cjs.map +1 -0
- package/dist/chunks/{NcTimezonePicker-q46K1fSq.mjs → NcTimezonePicker-CHrv7H1J.mjs} +3 -3
- package/dist/chunks/{NcTimezonePicker-q46K1fSq.mjs.map → NcTimezonePicker-CHrv7H1J.mjs.map} +1 -1
- package/dist/chunks/{NcTimezonePicker-BZhgUp10.cjs → NcTimezonePicker-DiYxhC2U.cjs} +3 -3
- package/dist/chunks/{NcTimezonePicker-BZhgUp10.cjs.map → NcTimezonePicker-DiYxhC2U.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-CQHrLJ0S.cjs → NcUserBubble-Bb2KMW2-.cjs} +3 -3
- package/dist/chunks/{NcUserBubble-CQHrLJ0S.cjs.map → NcUserBubble-Bb2KMW2-.cjs.map} +1 -1
- package/dist/chunks/{NcUserBubble-B3-E-5F5.mjs → NcUserBubble-DMHgoLZr.mjs} +3 -3
- package/dist/chunks/{NcUserBubble-B3-E-5F5.mjs.map → NcUserBubble-DMHgoLZr.mjs.map} +1 -1
- package/dist/chunks/NcUserStatusIcon-4MmJE11d.cjs +147 -0
- package/dist/chunks/NcUserStatusIcon-4MmJE11d.cjs.map +1 -0
- package/dist/chunks/NcUserStatusIcon-C1nS9t71.mjs +146 -0
- package/dist/chunks/NcUserStatusIcon-C1nS9t71.mjs.map +1 -0
- package/dist/chunks/{ScopeComponent-CsLxtFTy.cjs → ScopeComponent-CB6JQj2P.cjs} +2 -2
- package/dist/chunks/{ScopeComponent-CsLxtFTy.cjs.map → ScopeComponent-CB6JQj2P.cjs.map} +1 -1
- package/dist/chunks/{ScopeComponent-B1B5sM-c.mjs → ScopeComponent-DRKCxrLx.mjs} +2 -2
- package/dist/chunks/{ScopeComponent-B1B5sM-c.mjs.map → ScopeComponent-DRKCxrLx.mjs.map} +1 -1
- package/dist/chunks/_l10n-BU8-kQzN.mjs +145 -0
- package/dist/chunks/_l10n-BU8-kQzN.mjs.map +1 -0
- package/dist/chunks/_l10n-DpwcsAC3.cjs +144 -0
- package/dist/chunks/{_l10n-BiiXtYiP.cjs.map → _l10n-DpwcsAC3.cjs.map} +1 -1
- package/dist/chunks/constants-Bls5liKo.mjs +9 -0
- package/dist/chunks/constants-Bls5liKo.mjs.map +1 -0
- package/dist/chunks/constants-C_lA-vcp.cjs +8 -0
- package/dist/chunks/constants-C_lA-vcp.cjs.map +1 -0
- package/dist/chunks/{focusTrap-Vbgxe8ZX.cjs → focusTrap-DUTqW_IG.cjs} +6 -3
- package/dist/chunks/focusTrap-DUTqW_IG.cjs.map +1 -0
- package/dist/chunks/{focusTrap-DmkaYJTC.mjs → focusTrap-HJQ4pqHV.mjs} +6 -3
- package/dist/chunks/focusTrap-HJQ4pqHV.mjs.map +1 -0
- package/dist/chunks/getAvatarUrl-Du9Y3cPO.cjs +14 -0
- package/dist/chunks/getAvatarUrl-Du9Y3cPO.cjs.map +1 -0
- package/dist/chunks/getAvatarUrl-IhLacDEr.mjs +15 -0
- package/dist/chunks/getAvatarUrl-IhLacDEr.mjs.map +1 -0
- package/dist/chunks/{index-B0yHh7IW.cjs → index-AlIgEQXL.cjs} +12 -8
- package/dist/chunks/index-AlIgEQXL.cjs.map +1 -0
- package/dist/chunks/{index-Dpk-sL3D.mjs → index-B8gPNa8c.mjs} +12 -8
- package/dist/chunks/index-B8gPNa8c.mjs.map +1 -0
- package/dist/chunks/legacy-Brrs7mi9.cjs +4 -0
- package/dist/chunks/legacy-Brrs7mi9.cjs.map +1 -0
- package/dist/chunks/legacy-SvM_Of-C.mjs +5 -0
- package/dist/chunks/legacy-SvM_Of-C.mjs.map +1 -0
- package/dist/chunks/{mdi-YVKlPhQN.cjs → mdi-BqDPfc6J.cjs} +7 -1
- package/dist/chunks/{mdi-YVKlPhQN.cjs.map → mdi-BqDPfc6J.cjs.map} +1 -1
- package/dist/chunks/mdi-vLkDaZ9y.mjs +19 -0
- package/dist/chunks/{mdi-VRLMiqbd.mjs.map → mdi-vLkDaZ9y.mjs.map} +1 -1
- package/dist/chunks/{referencePickerModal-4kExxHbR.mjs → referencePickerModal-C9Ot-OgO.mjs} +6 -6
- package/dist/chunks/{referencePickerModal-4kExxHbR.mjs.map → referencePickerModal-C9Ot-OgO.mjs.map} +1 -1
- package/dist/chunks/{referencePickerModal-D4q4tELn.cjs → referencePickerModal-Yw2bZ96U.cjs} +6 -6
- package/dist/chunks/{referencePickerModal-D4q4tELn.cjs.map → referencePickerModal-Yw2bZ96U.cjs.map} +1 -1
- package/dist/chunks/{useTrapStackControl-BJmJdJak.cjs → useTrapStackControl-CTZTSUOt.cjs} +2 -2
- package/dist/chunks/{useTrapStackControl-BJmJdJak.cjs.map → useTrapStackControl-CTZTSUOt.cjs.map} +1 -1
- package/dist/chunks/{useTrapStackControl-b3A_383w.mjs → useTrapStackControl-yqM2SDEs.mjs} +2 -2
- package/dist/chunks/{useTrapStackControl-b3A_383w.mjs.map → useTrapStackControl-yqM2SDEs.mjs.map} +1 -1
- package/dist/composables/useFormatDateTime/index.d.ts +73 -0
- package/dist/composables/useIsDarkTheme/constants.d.ts +7 -0
- package/dist/composables/useIsDarkTheme/index.d.ts +7 -3
- package/dist/functions/dialog/index.d.ts +10 -14
- package/dist/functions/index.d.ts +1 -1
- package/dist/index.cjs +59 -53
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +61 -56
- package/dist/index.mjs.map +1 -1
- package/dist/utils/focusTrap.d.ts +6 -0
- package/dist/utils/getAvatarUrl.d.ts +23 -1
- package/dist/utils/legacy.d.ts +1 -0
- package/package.json +44 -35
- package/dist/assets/NcAvatar-CRiCqAWQ.css +0 -132
- package/dist/assets/NcSelectUsers-CRH00RA2.css +0 -4
- package/dist/chunks/DotsHorizontal-BoI3vnhk.cjs +0 -37
- package/dist/chunks/DotsHorizontal-BoI3vnhk.cjs.map +0 -1
- package/dist/chunks/DotsHorizontal-C6LNsw4N.mjs +0 -38
- package/dist/chunks/DotsHorizontal-C6LNsw4N.mjs.map +0 -1
- package/dist/chunks/NcActionInput-B4qGsF57.mjs.map +0 -1
- package/dist/chunks/NcActionInput-BmERg0FB.cjs.map +0 -1
- package/dist/chunks/NcActions-B4VZCD8B.mjs.map +0 -1
- package/dist/chunks/NcActions-B7DbEbCo.cjs.map +0 -1
- package/dist/chunks/NcAppContent-B7ER65tk.cjs.map +0 -1
- package/dist/chunks/NcAppContent-DyXqBrOB.mjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-B9Gs5p7m.cjs.map +0 -1
- package/dist/chunks/NcAppNavigationItem-CrTVtqYV.mjs.map +0 -1
- package/dist/chunks/NcAvatar-D_1clyWB.cjs.map +0 -1
- package/dist/chunks/NcAvatar-YSp2ORHc.mjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-DbK49DI7.cjs.map +0 -1
- package/dist/chunks/NcCheckboxRadioSwitch-VeztTzpz.mjs.map +0 -1
- package/dist/chunks/NcColorPicker-D7aj2f61.mjs.map +0 -1
- package/dist/chunks/NcColorPicker-T-ifFDNs.cjs.map +0 -1
- package/dist/chunks/NcDateTime-C-kLQayi.cjs +0 -158
- package/dist/chunks/NcDateTime-C-kLQayi.cjs.map +0 -1
- package/dist/chunks/NcDateTime-DshRFtUU.mjs +0 -159
- package/dist/chunks/NcDateTime-DshRFtUU.mjs.map +0 -1
- package/dist/chunks/NcInputField-C61UUN46.cjs.map +0 -1
- package/dist/chunks/NcInputField-DTtUueUZ.mjs.map +0 -1
- package/dist/chunks/NcPasswordField-BCzIotoB.cjs.map +0 -1
- package/dist/chunks/NcPasswordField-DNjegDVj.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-B8UqleMX.mjs.map +0 -1
- package/dist/chunks/NcRichContenteditable-Df_eA-oc.cjs.map +0 -1
- package/dist/chunks/NcSettingsSection-C76Kqeew.mjs.map +0 -1
- package/dist/chunks/NcSettingsSection-Dcdxs1IN.cjs.map +0 -1
- package/dist/chunks/NcTextArea-BHERsE_g.mjs.map +0 -1
- package/dist/chunks/NcTextArea-CYLGAGcO.cjs.map +0 -1
- package/dist/chunks/NcTextField-Uk5iD8o2.cjs.map +0 -1
- package/dist/chunks/NcTextField-o_8gWurX.mjs.map +0 -1
- package/dist/chunks/NcUserStatusIcon-cs42Lzdd.cjs +0 -139
- package/dist/chunks/NcUserStatusIcon-cs42Lzdd.cjs.map +0 -1
- package/dist/chunks/NcUserStatusIcon-kbPFeJV6.mjs +0 -138
- package/dist/chunks/NcUserStatusIcon-kbPFeJV6.mjs.map +0 -1
- package/dist/chunks/_l10n-BiiXtYiP.cjs +0 -143
- package/dist/chunks/_l10n-DQgzdF9S.mjs +0 -144
- package/dist/chunks/_l10n-DQgzdF9S.mjs.map +0 -1
- package/dist/chunks/focusTrap-DmkaYJTC.mjs.map +0 -1
- package/dist/chunks/focusTrap-Vbgxe8ZX.cjs.map +0 -1
- package/dist/chunks/getAvatarUrl-6z9qRNH-.cjs +0 -11
- package/dist/chunks/getAvatarUrl-6z9qRNH-.cjs.map +0 -1
- package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs +0 -12
- package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs.map +0 -1
- package/dist/chunks/index-B0yHh7IW.cjs.map +0 -1
- package/dist/chunks/index-Dpk-sL3D.mjs.map +0 -1
- package/dist/chunks/mdi-VRLMiqbd.mjs +0 -13
- package/dist/chunks/usernameToColor-mqInDrGv.cjs +0 -28
- package/dist/chunks/usernameToColor-mqInDrGv.cjs.map +0 -1
- package/dist/chunks/usernameToColor-yoVXn0De.mjs +0 -27
- package/dist/chunks/usernameToColor-yoVXn0De.mjs.map +0 -1
- package/dist/composables/useFormatDateTime.d.ts +0 -56
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_l10n-
|
|
1
|
+
{"version":3,"file":"_l10n-DpwcsAC3.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
|
|
3
|
+
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
4
|
+
*/
|
|
5
|
+
const INJECTION_KEY_THEME = Symbol.for("nc:theme:enforced");
|
|
6
|
+
export {
|
|
7
|
+
INJECTION_KEY_THEME as I
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=constants-Bls5liKo.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-Bls5liKo.mjs","sources":["../../src/composables/useIsDarkTheme/constants.ts"],"sourcesContent":["/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { ComputedRef, InjectionKey } from 'vue'\n\n/**\n * Enforced dark / light theme state\n *\n * @private\n */\nexport const INJECTION_KEY_THEME: InjectionKey<ComputedRef<'light' | 'dark' | ''> | undefined> = Symbol.for('nc:theme:enforced')\n"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAYa,MAAA,sBAAoF,OAAO,IAAI,mBAAmB;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
|
|
4
|
+
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
5
|
+
*/
|
|
6
|
+
const INJECTION_KEY_THEME = Symbol.for("nc:theme:enforced");
|
|
7
|
+
exports.INJECTION_KEY_THEME = INJECTION_KEY_THEME;
|
|
8
|
+
//# sourceMappingURL=constants-C_lA-vcp.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-C_lA-vcp.cjs","sources":["../../src/composables/useIsDarkTheme/constants.ts"],"sourcesContent":["/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { ComputedRef, InjectionKey } from 'vue'\n\n/**\n * Enforced dark / light theme state\n *\n * @private\n */\nexport const INJECTION_KEY_THEME: InjectionKey<ComputedRef<'light' | 'dark' | ''> | undefined> = Symbol.for('nc:theme:enforced')\n"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAYa,MAAA,sBAAoF,OAAO,IAAI,mBAAmB;;"}
|
|
@@ -17,10 +17,13 @@ function createTrapStackController() {
|
|
|
17
17
|
},
|
|
18
18
|
/**
|
|
19
19
|
* Unpause the paused focus trap stack
|
|
20
|
+
* If the actual stack is different from the paused one, ignore unpause.
|
|
20
21
|
*/
|
|
21
22
|
unpause() {
|
|
22
|
-
|
|
23
|
-
trap
|
|
23
|
+
if (pausedStack.length === getTrapStack().length) {
|
|
24
|
+
for (const trap of pausedStack) {
|
|
25
|
+
trap.unpause();
|
|
26
|
+
}
|
|
24
27
|
}
|
|
25
28
|
pausedStack = [];
|
|
26
29
|
}
|
|
@@ -28,4 +31,4 @@ function createTrapStackController() {
|
|
|
28
31
|
}
|
|
29
32
|
exports.createTrapStackController = createTrapStackController;
|
|
30
33
|
exports.getTrapStack = getTrapStack;
|
|
31
|
-
//# sourceMappingURL=focusTrap-
|
|
34
|
+
//# sourceMappingURL=focusTrap-DUTqW_IG.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focusTrap-DUTqW_IG.cjs","sources":["../../src/utils/focusTrap.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { FocusTrap } from 'focus-trap'\n\ndeclare global {\n\tinterface Window {\n\t\t_nc_focus_trap: FocusTrap[]\n\t}\n}\n\n/**\n * Get the default global focus trap stack\n */\nexport function getTrapStack() {\n\t// Create global stack if undefined\n\twindow._nc_focus_trap ??= []\n\n\treturn window._nc_focus_trap\n}\n\n/**\n * Create controller to pause/unpause the global focus trap stack.\n *\n * When some component manually implements its own focus-trap without using global focus-trap stack,\n * it also needs to pause the global stack to avoid conflict.\n *\n * Note: if global focus-trap stack was modified outside TrapStackController (likely due to user actions),\n * trap queue should be correctly handled by focus-trap itself.\n * It is no longer safe to unpause cached `pausedStack`, as it can disrupt the current focus trap state.\n * We assume that the focus-trap stack is self-regulated and ignore unpause.\n */\nexport function createTrapStackController() {\n\t/**\n\t * Stack of focus traps that were paused to unpause the exact stack later\n\t */\n\tlet pausedStack: FocusTrap[] = []\n\n\treturn {\n\t\t/**\n\t\t * Pause the current focus-trap stack\n\t\t */\n\t\tpause() {\n\t\t\tpausedStack = [...getTrapStack()]\n\t\t\tfor (const trap of pausedStack) {\n\t\t\t\ttrap.pause()\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Unpause the paused focus trap stack\n\t\t * If the actual stack is different from the paused one, ignore unpause.\n\t\t */\n\t\tunpause() {\n\t\t\tif (pausedStack.length === getTrapStack().length) {\n\t\t\t\tfor (const trap of pausedStack) {\n\t\t\t\t\ttrap.unpause()\n\t\t\t\t}\n\t\t\t}\n\t\t\tpausedStack = []\n\t\t},\n\t}\n}\n"],"names":[],"mappings":";AAgBO,SAAS,eAAe;AAE9B,SAAO,mBAAmB,CAAC;AAE3B,SAAO,OAAO;AACf;AAaO,SAAS,4BAA4B;AAI3C,MAAI,cAA2B,CAAC;AAEzB,SAAA;AAAA;AAAA;AAAA;AAAA,IAIN,QAAQ;AACO,oBAAA,CAAC,GAAG,cAAc;AAChC,iBAAW,QAAQ,aAAa;AAC/B,aAAK,MAAM;AAAA,MAAA;AAAA,IAEb;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAU;AACT,UAAI,YAAY,WAAW,aAAa,EAAE,QAAQ;AACjD,mBAAW,QAAQ,aAAa;AAC/B,eAAK,QAAQ;AAAA,QAAA;AAAA,MACd;AAED,oBAAc,CAAC;AAAA,IAAA;AAAA,EAEjB;AACD;;;"}
|
|
@@ -16,10 +16,13 @@ function createTrapStackController() {
|
|
|
16
16
|
},
|
|
17
17
|
/**
|
|
18
18
|
* Unpause the paused focus trap stack
|
|
19
|
+
* If the actual stack is different from the paused one, ignore unpause.
|
|
19
20
|
*/
|
|
20
21
|
unpause() {
|
|
21
|
-
|
|
22
|
-
trap
|
|
22
|
+
if (pausedStack.length === getTrapStack().length) {
|
|
23
|
+
for (const trap of pausedStack) {
|
|
24
|
+
trap.unpause();
|
|
25
|
+
}
|
|
23
26
|
}
|
|
24
27
|
pausedStack = [];
|
|
25
28
|
}
|
|
@@ -29,4 +32,4 @@ export {
|
|
|
29
32
|
createTrapStackController as c,
|
|
30
33
|
getTrapStack as g
|
|
31
34
|
};
|
|
32
|
-
//# sourceMappingURL=focusTrap-
|
|
35
|
+
//# sourceMappingURL=focusTrap-HJQ4pqHV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focusTrap-HJQ4pqHV.mjs","sources":["../../src/utils/focusTrap.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { FocusTrap } from 'focus-trap'\n\ndeclare global {\n\tinterface Window {\n\t\t_nc_focus_trap: FocusTrap[]\n\t}\n}\n\n/**\n * Get the default global focus trap stack\n */\nexport function getTrapStack() {\n\t// Create global stack if undefined\n\twindow._nc_focus_trap ??= []\n\n\treturn window._nc_focus_trap\n}\n\n/**\n * Create controller to pause/unpause the global focus trap stack.\n *\n * When some component manually implements its own focus-trap without using global focus-trap stack,\n * it also needs to pause the global stack to avoid conflict.\n *\n * Note: if global focus-trap stack was modified outside TrapStackController (likely due to user actions),\n * trap queue should be correctly handled by focus-trap itself.\n * It is no longer safe to unpause cached `pausedStack`, as it can disrupt the current focus trap state.\n * We assume that the focus-trap stack is self-regulated and ignore unpause.\n */\nexport function createTrapStackController() {\n\t/**\n\t * Stack of focus traps that were paused to unpause the exact stack later\n\t */\n\tlet pausedStack: FocusTrap[] = []\n\n\treturn {\n\t\t/**\n\t\t * Pause the current focus-trap stack\n\t\t */\n\t\tpause() {\n\t\t\tpausedStack = [...getTrapStack()]\n\t\t\tfor (const trap of pausedStack) {\n\t\t\t\ttrap.pause()\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Unpause the paused focus trap stack\n\t\t * If the actual stack is different from the paused one, ignore unpause.\n\t\t */\n\t\tunpause() {\n\t\t\tif (pausedStack.length === getTrapStack().length) {\n\t\t\t\tfor (const trap of pausedStack) {\n\t\t\t\t\ttrap.unpause()\n\t\t\t\t}\n\t\t\t}\n\t\t\tpausedStack = []\n\t\t},\n\t}\n}\n"],"names":[],"mappings":"AAgBO,SAAS,eAAe;AAE9B,SAAO,mBAAmB,CAAC;AAE3B,SAAO,OAAO;AACf;AAaO,SAAS,4BAA4B;AAI3C,MAAI,cAA2B,CAAC;AAEzB,SAAA;AAAA;AAAA;AAAA;AAAA,IAIN,QAAQ;AACO,oBAAA,CAAC,GAAG,cAAc;AAChC,iBAAW,QAAQ,aAAa;AAC/B,aAAK,MAAM;AAAA,MAAA;AAAA,IAEb;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAU;AACT,UAAI,YAAY,WAAW,aAAa,EAAE,QAAQ;AACjD,mBAAW,QAAQ,aAAa;AAC/B,eAAK,QAAQ;AAAA,QAAA;AAAA,MACd;AAED,oBAAc,CAAC;AAAA,IAAA;AAAA,EAEjB;AACD;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const router = require("@nextcloud/router");
|
|
3
|
+
const Functions_isDarkTheme = require("../Functions/isDarkTheme.cjs");
|
|
4
|
+
function getAvatarUrl(user, options) {
|
|
5
|
+
const size = (options?.size || 64) <= 64 ? 64 : 512;
|
|
6
|
+
const guestUrl = options?.isGuest ? "/guest" : "";
|
|
7
|
+
const themeUrl = options?.isDarkTheme ?? Functions_isDarkTheme.checkIfDarkTheme(document.body) ? "/dark" : "";
|
|
8
|
+
return router.generateUrl(`/avatar${guestUrl}/{user}/{size}${themeUrl}`, {
|
|
9
|
+
user,
|
|
10
|
+
size
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
exports.getAvatarUrl = getAvatarUrl;
|
|
14
|
+
//# sourceMappingURL=getAvatarUrl-Du9Y3cPO.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAvatarUrl-Du9Y3cPO.cjs","sources":["../../src/utils/getAvatarUrl.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { generateUrl } from '@nextcloud/router'\nimport { checkIfDarkTheme } from '../functions/isDarkTheme/index.ts'\n\ninterface AvatarUrlOptions {\n\t/**\n\t * Should the dark theme variant be used.\n\t */\n\tisDarkTheme?: boolean\n\n\t/**\n\t * Is the user a guest user.\n\t */\n\tisGuest?: boolean\n\n\t/**\n\t * Size of the avatar.\n\t * @default 64\n\t */\n\tsize?: 64 | 512\n}\n\n/**\n * Get the avatar URL for a given user.\n *\n * @param user - The user id\n * @param options - Adjustments for the avatar format\n */\nexport function getAvatarUrl(user: string, options?: AvatarUrlOptions): string {\n\t// backend only supports 64 and 512px\n\t// so we only requrest the needed size for better caching of the request.\n\tconst size = (options?.size || 64) <= 64\n\t\t? 64\n\t\t: 512\n\n\tconst guestUrl = options?.isGuest\n\t\t? '/guest'\n\t\t: ''\n\tconst themeUrl = options?.isDarkTheme ?? checkIfDarkTheme(document.body)\n\t\t? '/dark'\n\t\t: ''\n\n\treturn generateUrl(`/avatar${guestUrl}/{user}/{size}${themeUrl}`, {\n\t\tuser,\n\t\tsize,\n\t})\n}\n"],"names":["checkIfDarkTheme","generateUrl"],"mappings":";;;AAgCgB,SAAA,aAAa,MAAc,SAAoC;AAG9E,QAAM,QAAQ,SAAS,QAAQ,OAAO,KACnC,KACA;AAEG,QAAA,WAAW,SAAS,UACvB,WACA;AACH,QAAM,WAAW,SAAS,eAAeA,sBAAAA,iBAAiB,SAAS,IAAI,IACpE,UACA;AAEH,SAAOC,OAAAA,YAAY,UAAU,QAAQ,iBAAiB,QAAQ,IAAI;AAAA,IACjE;AAAA,IACA;AAAA,EAAA,CACA;AACF;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { generateUrl } from "@nextcloud/router";
|
|
2
|
+
import { checkIfDarkTheme } from "../Functions/isDarkTheme.mjs";
|
|
3
|
+
function getAvatarUrl(user, options) {
|
|
4
|
+
const size = (options?.size || 64) <= 64 ? 64 : 512;
|
|
5
|
+
const guestUrl = options?.isGuest ? "/guest" : "";
|
|
6
|
+
const themeUrl = options?.isDarkTheme ?? checkIfDarkTheme(document.body) ? "/dark" : "";
|
|
7
|
+
return generateUrl(`/avatar${guestUrl}/{user}/{size}${themeUrl}`, {
|
|
8
|
+
user,
|
|
9
|
+
size
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
getAvatarUrl as g
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=getAvatarUrl-IhLacDEr.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAvatarUrl-IhLacDEr.mjs","sources":["../../src/utils/getAvatarUrl.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { generateUrl } from '@nextcloud/router'\nimport { checkIfDarkTheme } from '../functions/isDarkTheme/index.ts'\n\ninterface AvatarUrlOptions {\n\t/**\n\t * Should the dark theme variant be used.\n\t */\n\tisDarkTheme?: boolean\n\n\t/**\n\t * Is the user a guest user.\n\t */\n\tisGuest?: boolean\n\n\t/**\n\t * Size of the avatar.\n\t * @default 64\n\t */\n\tsize?: 64 | 512\n}\n\n/**\n * Get the avatar URL for a given user.\n *\n * @param user - The user id\n * @param options - Adjustments for the avatar format\n */\nexport function getAvatarUrl(user: string, options?: AvatarUrlOptions): string {\n\t// backend only supports 64 and 512px\n\t// so we only requrest the needed size for better caching of the request.\n\tconst size = (options?.size || 64) <= 64\n\t\t? 64\n\t\t: 512\n\n\tconst guestUrl = options?.isGuest\n\t\t? '/guest'\n\t\t: ''\n\tconst themeUrl = options?.isDarkTheme ?? checkIfDarkTheme(document.body)\n\t\t? '/dark'\n\t\t: ''\n\n\treturn generateUrl(`/avatar${guestUrl}/{user}/{size}${themeUrl}`, {\n\t\tuser,\n\t\tsize,\n\t})\n}\n"],"names":[],"mappings":";;AAgCgB,SAAA,aAAa,MAAc,SAAoC;AAG9E,QAAM,QAAQ,SAAS,QAAQ,OAAO,KACnC,KACA;AAEG,QAAA,WAAW,SAAS,UACvB,WACA;AACH,QAAM,WAAW,SAAS,eAAe,iBAAiB,SAAS,IAAI,IACpE,UACA;AAEH,SAAO,YAAY,UAAU,QAAQ,iBAAiB,QAAQ,IAAI;AAAA,IACjE;AAAA,IACA;AAAA,EAAA,CACA;AACF;"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
require('../assets/NcMentionBubble-
|
|
1
|
+
require('../assets/NcMentionBubble-UsTMm5VD.css');
|
|
2
2
|
"use strict";
|
|
3
|
-
const
|
|
3
|
+
const Composables_useIsDarkTheme = require("../Composables/useIsDarkTheme.cjs");
|
|
4
|
+
const getAvatarUrl = require("./getAvatarUrl-Du9Y3cPO.cjs");
|
|
4
5
|
;/* empty css */
|
|
5
6
|
const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
|
|
6
7
|
const escapeHtml = require("escape-html");
|
|
@@ -47,12 +48,18 @@ const _sfc_main = {
|
|
|
47
48
|
default: false
|
|
48
49
|
}
|
|
49
50
|
},
|
|
51
|
+
setup() {
|
|
52
|
+
const isDarkTheme = Composables_useIsDarkTheme.useIsDarkTheme();
|
|
53
|
+
return {
|
|
54
|
+
isDarkTheme
|
|
55
|
+
};
|
|
56
|
+
},
|
|
50
57
|
computed: {
|
|
51
58
|
avatarUrl() {
|
|
52
59
|
if (this.iconUrl) {
|
|
53
60
|
return this.iconUrl;
|
|
54
61
|
}
|
|
55
|
-
return this.id && this.source === "users" ?
|
|
62
|
+
return this.id && this.source === "users" ? getAvatarUrl.getAvatarUrl(this.id, { isDarkTheme: this.isDarkTheme }) : null;
|
|
56
63
|
},
|
|
57
64
|
mentionText() {
|
|
58
65
|
return !this.id.includes(" ") && !this.id.includes("/") ? `@${this.id}` : `@"${this.id}"`;
|
|
@@ -61,9 +68,6 @@ const _sfc_main = {
|
|
|
61
68
|
labelWithFallback() {
|
|
62
69
|
return this.label || this.title;
|
|
63
70
|
}
|
|
64
|
-
},
|
|
65
|
-
methods: {
|
|
66
|
-
getAvatarUrl: getAvatarUrl.getAvatarUrl
|
|
67
71
|
}
|
|
68
72
|
};
|
|
69
73
|
var _sfc_render = function render() {
|
|
@@ -77,7 +81,7 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
|
|
|
77
81
|
_sfc_staticRenderFns,
|
|
78
82
|
false,
|
|
79
83
|
null,
|
|
80
|
-
"
|
|
84
|
+
"67366405"
|
|
81
85
|
);
|
|
82
86
|
const NcMentionBubble = __component__.exports;
|
|
83
87
|
const MENTION_START = /(?=[a-z0-9_\-@.'])\B/.source;
|
|
@@ -174,4 +178,4 @@ exports.NcMentionBubble = NcMentionBubble;
|
|
|
174
178
|
exports.USERID_REGEX = USERID_REGEX;
|
|
175
179
|
exports.USERID_REGEX_WITH_SPACE = USERID_REGEX_WITH_SPACE;
|
|
176
180
|
exports.richEditor = richEditor;
|
|
177
|
-
//# sourceMappingURL=index-
|
|
181
|
+
//# sourceMappingURL=index-AlIgEQXL.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-AlIgEQXL.cjs","sources":["../../src/components/NcRichContenteditable/NcMentionBubble.vue","../../src/mixins/richEditor/index.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<span class=\"mention-bubble\"\n\t\t:class=\"{'mention-bubble--primary': primary}\"\n\t\tcontenteditable=\"false\">\n\t\t<span class=\"mention-bubble__wrapper\">\n\t\t\t<span class=\"mention-bubble__content\">\n\t\t\t\t<!-- Avatar or icon -->\n\t\t\t\t<span :class=\"[icon, `mention-bubble__icon--${avatarUrl ? 'with-avatar' : ''}`]\"\n\t\t\t\t\t:style=\"avatarUrl ? { backgroundImage: `url(${avatarUrl})` } : null\"\n\t\t\t\t\tclass=\"mention-bubble__icon\" />\n\n\t\t\t\t<!-- Title -->\n\t\t\t\t<span role=\"heading\" class=\"mention-bubble__title\" :title=\"labelWithFallback\" />\n\t\t\t</span>\n\n\t\t\t<!-- Selectable text for copy/paste -->\n\t\t\t<span role=\"none\" class=\"mention-bubble__select\">{{ mentionText }}</span>\n\t\t</span>\n\t</span>\n</template>\n\n<script>\nimport { useIsDarkTheme } from '../../composables/useIsDarkTheme/index.ts'\nimport { getAvatarUrl } from '../../utils/getAvatarUrl.ts'\n\nexport default {\n\tname: 'NcMentionBubble',\n\n\tprops: {\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * @deprecated Use `label` instead\n\t\t */\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: null,\n\t\t},\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: null,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\ticonUrl: {\n\t\t\ttype: [String, null],\n\t\t\tdefault: null,\n\t\t},\n\t\tsource: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tprimary: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst isDarkTheme = useIsDarkTheme()\n\n\t\treturn {\n\t\t\tisDarkTheme,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tavatarUrl() {\n\t\t\tif (this.iconUrl) {\n\t\t\t\treturn this.iconUrl\n\t\t\t}\n\n\t\t\treturn this.id && this.source === 'users'\n\t\t\t\t? getAvatarUrl(this.id, { isDarkTheme: this.isDarkTheme })\n\t\t\t\t: null\n\t\t},\n\t\tmentionText() {\n\t\t\treturn !this.id.includes(' ') && !this.id.includes('/')\n\t\t\t\t? `@${this.id}`\n\t\t\t\t: `@\"${this.id}\"`\n\t\t},\n\t\t// Fallback to title for compatibility\n\t\tlabelWithFallback() {\n\t\t\treturn this.label || this.title\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$bubble-height: 20px;\n$bubble-max-width: 150px;\n$bubble-padding: 2px;\n$bubble-avatar-size: $bubble-height - 2 * $bubble-padding;\n\n.mention-bubble {\n\t&--primary &__content {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\tmax-width: $bubble-max-width;\n\t\t// Align with text\n\t\theight: $bubble-height - $bubble-padding;\n\t\tvertical-align: text-bottom;\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t}\n\n\t&__content {\n\t\tdisplay: inline-flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tmax-width: 100%;\n\t\theight: $bubble-height;\n\t\t-webkit-user-select: none;\n\t\tuser-select: none;\n\t\tpadding-inline: $bubble-padding $bubble-padding * 3;\n\t\tborder-radius: math.div($bubble-height, 2);\n\t\tbackground-color: var(--color-background-dark);\n\t}\n\n\t&__icon {\n\t\tposition: relative;\n\t\twidth: $bubble-avatar-size;\n\t\theight: $bubble-avatar-size;\n\t\tborder-radius: math.div($bubble-avatar-size, 2);\n\t\tbackground-color: var(--color-background-darker);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: center;\n\t\tbackground-size: $bubble-avatar-size - 2 * $bubble-padding;\n\n\t\t&--with-avatar {\n\t\t\tcolor: inherit;\n\t\t\tbackground-size: cover;\n\t\t}\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin-inline-start: $bubble-padding;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\t// Put title in ::before so it is not selectable\n\t\t&::before {\n\t\t\tcontent: attr(title);\n\t\t}\n\t}\n\n\t// Hide the mention id so it is selectable\n\t&__select {\n\t\tposition: absolute;\n\t\tz-index: -1;\n\t\tinset-inline-start: -100vw;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\toverflow: hidden;\n\t}\n}\n\n</style>\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcMentionBubble from '../../components/NcRichContenteditable/NcMentionBubble.vue'\n\nimport escapeHtml from 'escape-html'\nimport stripTags from 'striptags'\nimport Vue from 'vue'\n\n// Referenced from public function getMentions(): https://github.com/nextcloud/server/blob/master/lib/private/Comments/Comment.php\n// Beginning or whitespace. Uses positive lookahead (to work on MobileSafari <16.4)\nconst MENTION_START = /(?=[a-z0-9_\\-@.'])\\B/.source\n// Capturing groups like: @user-id, @\"guest/abc16def\", @\"federated_user/user-id\", @\"user-id with space\"\nconst MENTION_SIMPLE = /(@[a-z0-9_\\-@.']+)/.source\nconst MENTION_GUEST = /@"(?:guest|email){1}\\/[a-f0-9]+"/.source\nconst MENTION_PREFIXED = /@"(?:federated_)?(?:group|team|user){1}\\/[a-z0-9_\\-@.' /:]+"/.source\nconst MENTION_WITH_SPACE = /@"[a-z0-9_\\-@.' ]+"/.source\nconst MENTION_COMPLEX = `(${MENTION_GUEST}|${MENTION_PREFIXED}|${MENTION_WITH_SPACE})`\n// Concatenated regular expressions\nexport const USERID_REGEX = new RegExp(`${MENTION_START}${MENTION_SIMPLE}`, 'gi')\nexport const USERID_REGEX_WITH_SPACE = new RegExp(`${MENTION_START}${MENTION_COMPLEX}`, 'gi')\n\nexport default {\n\tprops: {\n\t\tuserData: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Convert the value string to html for the inner content\n\t\t *\n\t\t * @param {string} value the content without html\n\t\t * @return {string} rendered html\n\t\t */\n\t\trenderContent(value) {\n\t\t\t// Sanitize the value prop\n\t\t\tconst sanitizedValue = escapeHtml(value)\n\n\t\t\t// Extract all the userIds\n\t\t\tconst splitValue = sanitizedValue.split(USERID_REGEX)\n\t\t\t\t.map(part => part.split(USERID_REGEX_WITH_SPACE)).flat()\n\n\t\t\t// Replace userIds by html\n\t\t\treturn splitValue\n\t\t\t\t.map(part => {\n\t\t\t\t\t// When splitting, the string is always putting the userIds\n\t\t\t\t\t// on the uneven indexes. We only want to generate the mentions html\n\t\t\t\t\tif (!part.startsWith('@')) {\n\t\t\t\t\t\treturn part\n\t\t\t\t\t}\n\n\t\t\t\t\t// Extracting the id, nuking the leading @ and all \"\n\t\t\t\t\tconst id = part.slice(1).replace(/"/gi, '')\n\t\t\t\t\t// Compiling template and prepend with the space we removed during the split\n\t\t\t\t\treturn this.genSelectTemplate(id)\n\t\t\t\t})\n\t\t\t\t.join('')\n\t\t\t\t.replace(/\\n/gmi, '<br>')\n\t\t\t\t.replace(/&/gmi, '&')\n\t\t},\n\n\t\t/**\n\t\t * Convert the innerHtml content to a string with mentions as text\n\t\t *\n\t\t * @param {string} content the content without html\n\t\t * @return {string}\n\t\t */\n\t\tparseContent(content) {\n\t\t\tlet text = content\n\t\t\t// Replace break lines with new lines\n\t\t\ttext = text.replace(/<br>/gmi, '\\n')\n\t\t\t// Replace some html special characters\n\t\t\ttext = text.replace(/ /gmi, ' ')\n\t\t\ttext = text.replace(/&/gmi, '&')\n\n\t\t\t// Convert the mentions to text only\n\t\t\t// first we replace divs with new lines\n\t\t\ttext = text.replace(/<\\/div>/gmi, '\\n')\n\t\t\t// then we remove all leftover html\n\t\t\ttext = stripTags(text, '<div>')\n\t\t\ttext = stripTags(text)\n\n\t\t\treturn text\n\t\t},\n\n\t\t/**\n\t\t * Generate an autocompletion popup entry template\n\t\t *\n\t\t * @param {string} value the value to match against the userData\n\t\t * @return {string}\n\t\t */\n\t\tgenSelectTemplate(value) {\n\t\t\t// The value returned by this function will replace the trigger '@'\n\t\t\t// and the search text, so when there is no match we simply return\n\t\t\t// '@' and the text.\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\treturn `${this.autocompleteTribute.current.collection.trigger}${this.autocompleteTribute.current.mentionText}`\n\t\t\t}\n\n\t\t\tconst data = this.userData[value]\n\n\t\t\t// Fallback to @mention in case no data matches\n\t\t\tif (!data) {\n\t\t\t\t// return @value if matches MENTION_SIMPLE, @\"value\" otherwise\n\t\t\t\treturn [' ', '/', ':'].every(char => !value.includes(char))\n\t\t\t\t\t? `@${value}`\n\t\t\t\t\t: `@\"${value}\"`\n\t\t\t}\n\n\t\t\t// Return template and make sure we strip off new lines, tabs and consecutive whitespaces\n\t\t\treturn this.renderComponentHtml(data, NcMentionBubble)\n\t\t\t\t.replace(/[\\n\\t]/gmi, '')\n\t\t\t\t.replace(/>\\s+</g, '><')\n\t\t},\n\n\t\t/**\n\t\t * Render a component and return its html content\n\t\t *\n\t\t * @param {object} propsData the props to pass to the component\n\t\t * @param {object} component the component to render\n\t\t * @return {string} the rendered html\n\t\t */\n\t\trenderComponentHtml(propsData, component) {\n\t\t\tconst View = Vue.extend(component)\n\t\t\tconst Item = new View({\n\t\t\t\tpropsData,\n\t\t\t})\n\n\t\t\t// Prepare mountpoint\n\t\t\tconst wrapper = document.createElement('div')\n\t\t\tconst mount = document.createElement('div')\n\t\t\twrapper.style.display = 'none'\n\t\t\twrapper.appendChild(mount)\n\t\t\tdocument.body.appendChild(wrapper)\n\n\t\t\t// Mount and get raw html\n\t\t\tItem.$mount(mount)\n\t\t\tconst renderedHtml = wrapper.innerHTML\n\n\t\t\t// Destroy\n\t\t\tItem.$destroy()\n\t\t\twrapper.remove()\n\n\t\t\treturn renderedHtml\n\t\t},\n\t},\n}\n"],"names":["useIsDarkTheme","getAvatarUrl","escapeHtml","stripTags","Vue"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import '../assets/NcMentionBubble-
|
|
2
|
-
import {
|
|
1
|
+
import '../assets/NcMentionBubble-UsTMm5VD.css';
|
|
2
|
+
import { useIsDarkTheme } from "../Composables/useIsDarkTheme.mjs";
|
|
3
|
+
import { g as getAvatarUrl } from "./getAvatarUrl-IhLacDEr.mjs";
|
|
3
4
|
/* empty css */
|
|
4
5
|
import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
|
|
5
6
|
import escapeHtml from "escape-html";
|
|
@@ -42,12 +43,18 @@ const _sfc_main = {
|
|
|
42
43
|
default: false
|
|
43
44
|
}
|
|
44
45
|
},
|
|
46
|
+
setup() {
|
|
47
|
+
const isDarkTheme = useIsDarkTheme();
|
|
48
|
+
return {
|
|
49
|
+
isDarkTheme
|
|
50
|
+
};
|
|
51
|
+
},
|
|
45
52
|
computed: {
|
|
46
53
|
avatarUrl() {
|
|
47
54
|
if (this.iconUrl) {
|
|
48
55
|
return this.iconUrl;
|
|
49
56
|
}
|
|
50
|
-
return this.id && this.source === "users" ?
|
|
57
|
+
return this.id && this.source === "users" ? getAvatarUrl(this.id, { isDarkTheme: this.isDarkTheme }) : null;
|
|
51
58
|
},
|
|
52
59
|
mentionText() {
|
|
53
60
|
return !this.id.includes(" ") && !this.id.includes("/") ? `@${this.id}` : `@"${this.id}"`;
|
|
@@ -56,9 +63,6 @@ const _sfc_main = {
|
|
|
56
63
|
labelWithFallback() {
|
|
57
64
|
return this.label || this.title;
|
|
58
65
|
}
|
|
59
|
-
},
|
|
60
|
-
methods: {
|
|
61
|
-
getAvatarUrl
|
|
62
66
|
}
|
|
63
67
|
};
|
|
64
68
|
var _sfc_render = function render() {
|
|
@@ -72,7 +76,7 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
72
76
|
_sfc_staticRenderFns,
|
|
73
77
|
false,
|
|
74
78
|
null,
|
|
75
|
-
"
|
|
79
|
+
"67366405"
|
|
76
80
|
);
|
|
77
81
|
const NcMentionBubble = __component__.exports;
|
|
78
82
|
const MENTION_START = /(?=[a-z0-9_\-@.'])\B/.source;
|
|
@@ -171,4 +175,4 @@ export {
|
|
|
171
175
|
USERID_REGEX_WITH_SPACE as a,
|
|
172
176
|
richEditor as r
|
|
173
177
|
};
|
|
174
|
-
//# sourceMappingURL=index-
|
|
178
|
+
//# sourceMappingURL=index-B8gPNa8c.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-B8gPNa8c.mjs","sources":["../../src/components/NcRichContenteditable/NcMentionBubble.vue","../../src/mixins/richEditor/index.js"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<span class=\"mention-bubble\"\n\t\t:class=\"{'mention-bubble--primary': primary}\"\n\t\tcontenteditable=\"false\">\n\t\t<span class=\"mention-bubble__wrapper\">\n\t\t\t<span class=\"mention-bubble__content\">\n\t\t\t\t<!-- Avatar or icon -->\n\t\t\t\t<span :class=\"[icon, `mention-bubble__icon--${avatarUrl ? 'with-avatar' : ''}`]\"\n\t\t\t\t\t:style=\"avatarUrl ? { backgroundImage: `url(${avatarUrl})` } : null\"\n\t\t\t\t\tclass=\"mention-bubble__icon\" />\n\n\t\t\t\t<!-- Title -->\n\t\t\t\t<span role=\"heading\" class=\"mention-bubble__title\" :title=\"labelWithFallback\" />\n\t\t\t</span>\n\n\t\t\t<!-- Selectable text for copy/paste -->\n\t\t\t<span role=\"none\" class=\"mention-bubble__select\">{{ mentionText }}</span>\n\t\t</span>\n\t</span>\n</template>\n\n<script>\nimport { useIsDarkTheme } from '../../composables/useIsDarkTheme/index.ts'\nimport { getAvatarUrl } from '../../utils/getAvatarUrl.ts'\n\nexport default {\n\tname: 'NcMentionBubble',\n\n\tprops: {\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * @deprecated Use `label` instead\n\t\t */\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: null,\n\t\t},\n\t\tlabel: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: null,\n\t\t},\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\ticonUrl: {\n\t\t\ttype: [String, null],\n\t\t\tdefault: null,\n\t\t},\n\t\tsource: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tprimary: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst isDarkTheme = useIsDarkTheme()\n\n\t\treturn {\n\t\t\tisDarkTheme,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tavatarUrl() {\n\t\t\tif (this.iconUrl) {\n\t\t\t\treturn this.iconUrl\n\t\t\t}\n\n\t\t\treturn this.id && this.source === 'users'\n\t\t\t\t? getAvatarUrl(this.id, { isDarkTheme: this.isDarkTheme })\n\t\t\t\t: null\n\t\t},\n\t\tmentionText() {\n\t\t\treturn !this.id.includes(' ') && !this.id.includes('/')\n\t\t\t\t? `@${this.id}`\n\t\t\t\t: `@\"${this.id}\"`\n\t\t},\n\t\t// Fallback to title for compatibility\n\t\tlabelWithFallback() {\n\t\t\treturn this.label || this.title\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$bubble-height: 20px;\n$bubble-max-width: 150px;\n$bubble-padding: 2px;\n$bubble-avatar-size: $bubble-height - 2 * $bubble-padding;\n\n.mention-bubble {\n\t&--primary &__content {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\tmax-width: $bubble-max-width;\n\t\t// Align with text\n\t\theight: $bubble-height - $bubble-padding;\n\t\tvertical-align: text-bottom;\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t}\n\n\t&__content {\n\t\tdisplay: inline-flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tmax-width: 100%;\n\t\theight: $bubble-height;\n\t\t-webkit-user-select: none;\n\t\tuser-select: none;\n\t\tpadding-inline: $bubble-padding $bubble-padding * 3;\n\t\tborder-radius: math.div($bubble-height, 2);\n\t\tbackground-color: var(--color-background-dark);\n\t}\n\n\t&__icon {\n\t\tposition: relative;\n\t\twidth: $bubble-avatar-size;\n\t\theight: $bubble-avatar-size;\n\t\tborder-radius: math.div($bubble-avatar-size, 2);\n\t\tbackground-color: var(--color-background-darker);\n\t\tbackground-repeat: no-repeat;\n\t\tbackground-position: center;\n\t\tbackground-size: $bubble-avatar-size - 2 * $bubble-padding;\n\n\t\t&--with-avatar {\n\t\t\tcolor: inherit;\n\t\t\tbackground-size: cover;\n\t\t}\n\t}\n\n\t&__title {\n\t\toverflow: hidden;\n\t\tmargin-inline-start: $bubble-padding;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\t// Put title in ::before so it is not selectable\n\t\t&::before {\n\t\t\tcontent: attr(title);\n\t\t}\n\t}\n\n\t// Hide the mention id so it is selectable\n\t&__select {\n\t\tposition: absolute;\n\t\tz-index: -1;\n\t\tinset-inline-start: -100vw;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\toverflow: hidden;\n\t}\n}\n\n</style>\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcMentionBubble from '../../components/NcRichContenteditable/NcMentionBubble.vue'\n\nimport escapeHtml from 'escape-html'\nimport stripTags from 'striptags'\nimport Vue from 'vue'\n\n// Referenced from public function getMentions(): https://github.com/nextcloud/server/blob/master/lib/private/Comments/Comment.php\n// Beginning or whitespace. Uses positive lookahead (to work on MobileSafari <16.4)\nconst MENTION_START = /(?=[a-z0-9_\\-@.'])\\B/.source\n// Capturing groups like: @user-id, @\"guest/abc16def\", @\"federated_user/user-id\", @\"user-id with space\"\nconst MENTION_SIMPLE = /(@[a-z0-9_\\-@.']+)/.source\nconst MENTION_GUEST = /@"(?:guest|email){1}\\/[a-f0-9]+"/.source\nconst MENTION_PREFIXED = /@"(?:federated_)?(?:group|team|user){1}\\/[a-z0-9_\\-@.' /:]+"/.source\nconst MENTION_WITH_SPACE = /@"[a-z0-9_\\-@.' ]+"/.source\nconst MENTION_COMPLEX = `(${MENTION_GUEST}|${MENTION_PREFIXED}|${MENTION_WITH_SPACE})`\n// Concatenated regular expressions\nexport const USERID_REGEX = new RegExp(`${MENTION_START}${MENTION_SIMPLE}`, 'gi')\nexport const USERID_REGEX_WITH_SPACE = new RegExp(`${MENTION_START}${MENTION_COMPLEX}`, 'gi')\n\nexport default {\n\tprops: {\n\t\tuserData: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Convert the value string to html for the inner content\n\t\t *\n\t\t * @param {string} value the content without html\n\t\t * @return {string} rendered html\n\t\t */\n\t\trenderContent(value) {\n\t\t\t// Sanitize the value prop\n\t\t\tconst sanitizedValue = escapeHtml(value)\n\n\t\t\t// Extract all the userIds\n\t\t\tconst splitValue = sanitizedValue.split(USERID_REGEX)\n\t\t\t\t.map(part => part.split(USERID_REGEX_WITH_SPACE)).flat()\n\n\t\t\t// Replace userIds by html\n\t\t\treturn splitValue\n\t\t\t\t.map(part => {\n\t\t\t\t\t// When splitting, the string is always putting the userIds\n\t\t\t\t\t// on the uneven indexes. We only want to generate the mentions html\n\t\t\t\t\tif (!part.startsWith('@')) {\n\t\t\t\t\t\treturn part\n\t\t\t\t\t}\n\n\t\t\t\t\t// Extracting the id, nuking the leading @ and all \"\n\t\t\t\t\tconst id = part.slice(1).replace(/"/gi, '')\n\t\t\t\t\t// Compiling template and prepend with the space we removed during the split\n\t\t\t\t\treturn this.genSelectTemplate(id)\n\t\t\t\t})\n\t\t\t\t.join('')\n\t\t\t\t.replace(/\\n/gmi, '<br>')\n\t\t\t\t.replace(/&/gmi, '&')\n\t\t},\n\n\t\t/**\n\t\t * Convert the innerHtml content to a string with mentions as text\n\t\t *\n\t\t * @param {string} content the content without html\n\t\t * @return {string}\n\t\t */\n\t\tparseContent(content) {\n\t\t\tlet text = content\n\t\t\t// Replace break lines with new lines\n\t\t\ttext = text.replace(/<br>/gmi, '\\n')\n\t\t\t// Replace some html special characters\n\t\t\ttext = text.replace(/ /gmi, ' ')\n\t\t\ttext = text.replace(/&/gmi, '&')\n\n\t\t\t// Convert the mentions to text only\n\t\t\t// first we replace divs with new lines\n\t\t\ttext = text.replace(/<\\/div>/gmi, '\\n')\n\t\t\t// then we remove all leftover html\n\t\t\ttext = stripTags(text, '<div>')\n\t\t\ttext = stripTags(text)\n\n\t\t\treturn text\n\t\t},\n\n\t\t/**\n\t\t * Generate an autocompletion popup entry template\n\t\t *\n\t\t * @param {string} value the value to match against the userData\n\t\t * @return {string}\n\t\t */\n\t\tgenSelectTemplate(value) {\n\t\t\t// The value returned by this function will replace the trigger '@'\n\t\t\t// and the search text, so when there is no match we simply return\n\t\t\t// '@' and the text.\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\treturn `${this.autocompleteTribute.current.collection.trigger}${this.autocompleteTribute.current.mentionText}`\n\t\t\t}\n\n\t\t\tconst data = this.userData[value]\n\n\t\t\t// Fallback to @mention in case no data matches\n\t\t\tif (!data) {\n\t\t\t\t// return @value if matches MENTION_SIMPLE, @\"value\" otherwise\n\t\t\t\treturn [' ', '/', ':'].every(char => !value.includes(char))\n\t\t\t\t\t? `@${value}`\n\t\t\t\t\t: `@\"${value}\"`\n\t\t\t}\n\n\t\t\t// Return template and make sure we strip off new lines, tabs and consecutive whitespaces\n\t\t\treturn this.renderComponentHtml(data, NcMentionBubble)\n\t\t\t\t.replace(/[\\n\\t]/gmi, '')\n\t\t\t\t.replace(/>\\s+</g, '><')\n\t\t},\n\n\t\t/**\n\t\t * Render a component and return its html content\n\t\t *\n\t\t * @param {object} propsData the props to pass to the component\n\t\t * @param {object} component the component to render\n\t\t * @return {string} the rendered html\n\t\t */\n\t\trenderComponentHtml(propsData, component) {\n\t\t\tconst View = Vue.extend(component)\n\t\t\tconst Item = new View({\n\t\t\t\tpropsData,\n\t\t\t})\n\n\t\t\t// Prepare mountpoint\n\t\t\tconst wrapper = document.createElement('div')\n\t\t\tconst mount = document.createElement('div')\n\t\t\twrapper.style.display = 'none'\n\t\t\twrapper.appendChild(mount)\n\t\t\tdocument.body.appendChild(wrapper)\n\n\t\t\t// Mount and get raw html\n\t\t\tItem.$mount(mount)\n\t\t\tconst renderedHtml = wrapper.innerHTML\n\n\t\t\t// Destroy\n\t\t\tItem.$destroy()\n\t\t\twrapper.remove()\n\n\t\t\treturn renderedHtml\n\t\t},\n\t},\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-Brrs7mi9.cjs","sources":["../../src/utils/legacy.ts"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport const isLegacy32 = Number.parseInt(window.OC?.config.version.split('.')[0] ?? '0') < 32\n"],"names":[],"mappings":";AAKO,MAAM,aAAa,OAAO,SAAS,OAAO,IAAI,OAAO,QAAQ,MAAM,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-SvM_Of-C.mjs","sources":["../../src/utils/legacy.ts"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport const isLegacy32 = Number.parseInt(window.OC?.config.version.split('.')[0] ?? '0') < 32\n"],"names":[],"mappings":"AAKO,MAAM,aAAa,OAAO,SAAS,OAAO,IAAI,OAAO,QAAQ,MAAM,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI;"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var mdiArrowLeft = "M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z";
|
|
2
3
|
var mdiArrowRight = "M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";
|
|
3
4
|
var mdiCheck = "M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z";
|
|
4
5
|
var mdiChevronLeft = "M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z";
|
|
5
6
|
var mdiChevronRight = "M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z";
|
|
6
7
|
var mdiClose = "M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z";
|
|
8
|
+
var mdiDotsHorizontal = "M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z";
|
|
9
|
+
var mdiUndo = "M12.5,8C9.85,8 7.45,9 5.6,10.6L2,7V16H11L7.38,12.38C8.77,11.22 10.54,10.5 12.5,10.5C16.04,10.5 19.05,12.81 20.1,16L22.47,15.22C21.08,11.03 17.15,8 12.5,8Z";
|
|
10
|
+
exports.mdiArrowLeft = mdiArrowLeft;
|
|
7
11
|
exports.mdiArrowRight = mdiArrowRight;
|
|
8
12
|
exports.mdiCheck = mdiCheck;
|
|
9
13
|
exports.mdiChevronLeft = mdiChevronLeft;
|
|
10
14
|
exports.mdiChevronRight = mdiChevronRight;
|
|
11
15
|
exports.mdiClose = mdiClose;
|
|
12
|
-
|
|
16
|
+
exports.mdiDotsHorizontal = mdiDotsHorizontal;
|
|
17
|
+
exports.mdiUndo = mdiUndo;
|
|
18
|
+
//# sourceMappingURL=mdi-BqDPfc6J.cjs.map
|