@nextcloud/vue 9.0.0-alpha.3 → 9.0.0-alpha.5

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.
Files changed (586) hide show
  1. package/CHANGELOG.md +68 -2
  2. package/README.md +5 -0
  3. package/dist/Components/NcActionButton.mjs +1 -1
  4. package/dist/Components/NcActionButtonGroup.mjs +1 -1
  5. package/dist/Components/NcActionCaption.mjs +1 -1
  6. package/dist/Components/NcActionCheckbox.mjs +1 -1
  7. package/dist/Components/NcActionInput.mjs +1 -1
  8. package/dist/Components/NcActionLink.mjs +1 -1
  9. package/dist/Components/NcActionRadio.mjs +1 -1
  10. package/dist/Components/NcActionRouter.mjs +1 -1
  11. package/dist/Components/NcActionSeparator.mjs +1 -1
  12. package/dist/Components/NcActionText.mjs +1 -1
  13. package/dist/Components/NcActionTextEditable.mjs +1 -1
  14. package/dist/Components/NcActions.mjs +1 -1
  15. package/dist/Components/NcAppContent.mjs +1 -1
  16. package/dist/Components/NcAppNavigation.mjs +1 -1
  17. package/dist/Components/NcAppNavigationCaption.mjs +1 -1
  18. package/dist/Components/NcAppNavigationIconBullet.mjs +1 -1
  19. package/dist/Components/NcAppNavigationItem.mjs +1 -1
  20. package/dist/Components/NcAppNavigationList.mjs +1 -1
  21. package/dist/Components/NcAppNavigationNew.mjs +1 -1
  22. package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
  23. package/dist/Components/NcAppNavigationSettings.mjs +1 -1
  24. package/dist/Components/NcAppNavigationSpacer.mjs +1 -1
  25. package/dist/Components/NcAppNavigationToggle.mjs +1 -21
  26. package/dist/Components/NcAppNavigationToggle.mjs.map +1 -1
  27. package/dist/Components/NcAppSettingsDialog.mjs +1 -1
  28. package/dist/Components/NcAppSettingsSection.mjs +1 -1
  29. package/dist/Components/NcAppSidebar.mjs +1 -1
  30. package/dist/Components/NcAppSidebarTab.mjs +1 -1
  31. package/dist/Components/NcAvatar.mjs +1 -1
  32. package/dist/Components/NcBreadcrumb.mjs +1 -1
  33. package/dist/Components/NcBreadcrumbs.mjs +1 -1
  34. package/dist/Components/NcButton.mjs +4 -1
  35. package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
  36. package/dist/Components/NcChip.mjs +4 -0
  37. package/dist/Components/NcChip.mjs.map +1 -0
  38. package/dist/Components/NcCollectionList.mjs +4 -0
  39. package/dist/Components/NcCollectionList.mjs.map +1 -0
  40. package/dist/Components/NcColorPicker.mjs +1 -1
  41. package/dist/Components/NcContent.mjs +1 -1
  42. package/dist/Components/NcCounterBubble.mjs +1 -1
  43. package/dist/Components/NcDashboardWidget.mjs +1 -1
  44. package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
  45. package/dist/Components/NcDateTime.mjs +1 -1
  46. package/dist/Components/NcDateTimePicker.mjs +1 -1
  47. package/dist/Components/NcDateTimePickerNative.mjs +1 -1
  48. package/dist/Components/NcDialog.mjs +1 -1
  49. package/dist/Components/NcDialogButton.mjs +1 -1
  50. package/dist/Components/NcEllipsisedOption.mjs +1 -1
  51. package/dist/Components/NcEmojiPicker.mjs +1 -1
  52. package/dist/Components/NcEmptyContent.mjs +1 -1
  53. package/dist/Components/NcGuestContent.mjs +1 -1
  54. package/dist/Components/NcHeaderMenu.mjs +1 -1
  55. package/dist/Components/NcHighlight.mjs +1 -1
  56. package/dist/Components/NcIconSvgWrapper.mjs +1 -1
  57. package/dist/Components/NcInputField.mjs +1 -1
  58. package/dist/Components/NcListItem.mjs +1 -1
  59. package/dist/Components/NcListItemIcon.mjs +1 -1
  60. package/dist/Components/NcLoadingIcon.mjs +1 -1
  61. package/dist/Components/NcModal.mjs +36 -58
  62. package/dist/Components/NcModal.mjs.map +1 -1
  63. package/dist/Components/NcNoteCard.mjs +1 -1
  64. package/dist/Components/NcPasswordField.mjs +1 -1
  65. package/dist/Components/NcPopover.mjs +1 -1
  66. package/dist/Components/NcProgressBar.mjs +1 -1
  67. package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
  68. package/dist/Components/NcRichContenteditable.mjs +2 -2
  69. package/dist/Components/NcRichText.mjs +3 -24
  70. package/dist/Components/NcRichText.mjs.map +1 -1
  71. package/dist/Components/NcSelect.mjs +1 -1
  72. package/dist/Components/NcSelectTags.mjs +1 -1
  73. package/dist/Components/NcSettingsInputText.mjs +1 -1
  74. package/dist/Components/NcSettingsSection.mjs +1 -1
  75. package/dist/Components/NcSettingsSelectGroup.mjs +1 -22
  76. package/dist/Components/NcSettingsSelectGroup.mjs.map +1 -1
  77. package/dist/Components/NcTextArea.mjs +1 -1
  78. package/dist/Components/NcTextField.mjs +1 -1
  79. package/dist/Components/NcTimezonePicker.mjs +1 -1
  80. package/dist/Components/NcUserBubble.mjs +1 -1
  81. package/dist/Components/NcUserStatusIcon.mjs +1 -1
  82. package/dist/Components/NcVNodes.mjs.map +1 -1
  83. package/dist/Composables/useIsFullscreen.mjs +0 -21
  84. package/dist/Composables/useIsFullscreen.mjs.map +1 -1
  85. package/dist/Composables/useIsMobile.mjs +0 -21
  86. package/dist/Composables/useIsMobile.mjs.map +1 -1
  87. package/dist/Directives/Focus.mjs +0 -21
  88. package/dist/Directives/Focus.mjs.map +1 -1
  89. package/dist/Directives/Linkify.mjs +1 -1
  90. package/dist/Directives/Linkify.mjs.map +1 -1
  91. package/dist/Directives/Tooltip.mjs +1 -23
  92. package/dist/Directives/Tooltip.mjs.map +1 -1
  93. package/dist/Functions/a11y.mjs +0 -21
  94. package/dist/Functions/a11y.mjs.map +1 -1
  95. package/dist/Functions/emoji.mjs +1 -1
  96. package/dist/Functions/reference.mjs +1 -1
  97. package/dist/Functions/usernameToColor.mjs +1 -1
  98. package/dist/Mixins/clickOutsideOptions.mjs +0 -21
  99. package/dist/Mixins/clickOutsideOptions.mjs.map +1 -1
  100. package/dist/Mixins/richEditor.mjs +2 -2
  101. package/dist/assets/NcActionButton-tvMk0Dz-.css +107 -0
  102. package/dist/assets/{NcActionButtonGroup-CvloX35s.css → NcActionButtonGroup-CQxLn2fv.css} +6 -20
  103. package/dist/assets/NcActionCaption-D-VXTPLI.css +32 -0
  104. package/dist/assets/NcActionCheckbox-DzmNTqwC.css +78 -0
  105. package/dist/assets/NcActionInput-4qR5N5lV.css +222 -0
  106. package/dist/assets/NcActionLink-Djp7wPGg.css +92 -0
  107. package/dist/assets/NcActionRadio-ZRQheAZT.css +78 -0
  108. package/dist/assets/NcActionRouter-B0l-dISs.css +103 -0
  109. package/dist/assets/NcActionSeparator-CEbb5P6P.css +24 -0
  110. package/dist/assets/NcActionText-Ip9hRt85.css +107 -0
  111. package/dist/assets/NcActionTextEditable-1JPkW_4o.css +238 -0
  112. package/dist/assets/NcActions-pRTZ3RyK.css +83 -0
  113. package/dist/assets/NcAppContent-CK9aL637.css +125 -0
  114. package/dist/assets/NcAppNavigation-BjnW8PQn.css +103 -0
  115. package/dist/assets/NcAppNavigationCaption-CWeMjjhD.css +48 -0
  116. package/dist/assets/NcAppNavigationIconBullet-EfIZU7x-.css +30 -0
  117. package/dist/assets/{NcAppNavigationItem-DBjQubbD.css → NcAppNavigationItem-wQ3n8jc-.css} +50 -74
  118. package/dist/assets/NcAppNavigationList-BIbyyT7b.css +29 -0
  119. package/dist/assets/NcAppNavigationNew-R0QcGqvG.css +27 -0
  120. package/dist/assets/{NcAppNavigationNewItem-wTDYmQmA.css → NcAppNavigationNewItem-CO3GnR26.css} +42 -52
  121. package/dist/assets/NcAppNavigationSettings-TYqL_3Eu.css +79 -0
  122. package/dist/assets/NcAppNavigationSpacer-DiE3sVy0.css +6 -0
  123. package/dist/assets/NcAppNavigationToggle-CNPQvWtG.css +27 -0
  124. package/dist/assets/NcAppSettingsDialog-ksK-DMgk.css +74 -0
  125. package/dist/assets/NcAppSettingsSection-C_QldGnW.css +30 -0
  126. package/dist/assets/{NcAppSidebar-v-H-37nV.css → NcAppSidebar-B7CgUHLX.css} +98 -149
  127. package/dist/assets/NcAppSidebarTab-Cp0hG2NU.css +34 -0
  128. package/dist/assets/NcAvatar-BnHiRwVr.css +129 -0
  129. package/dist/assets/NcBreadcrumb-CJ7KeSKQ.css +68 -0
  130. package/dist/assets/NcBreadcrumbs-C05lySw_.css +37 -0
  131. package/dist/assets/NcButton-B62D9Gft.css +210 -0
  132. package/dist/assets/{NcCheckboxRadioSwitch-BrP8x4oD.css → NcCheckboxRadioSwitch-ChIIElUW.css} +53 -81
  133. package/dist/assets/NcChip-Cho4h_Kr.css +61 -0
  134. package/dist/assets/NcCollectionList-BT2L4guq.css +221 -0
  135. package/dist/assets/NcColorPicker-vEZb9dRS.css +122 -0
  136. package/dist/assets/NcContent-DljiVMLl.css +80 -0
  137. package/dist/assets/NcCounterBubble-DT16e2bg.css +53 -0
  138. package/dist/assets/NcDashboardWidget-CvGZT_xf.css +73 -0
  139. package/dist/assets/NcDashboardWidgetItem-JCtQhwhS.css +85 -0
  140. package/dist/assets/{NcDateTimePicker-DBxgtJoU.css → NcDateTimePicker-DHWLpzCH.css} +38 -76
  141. package/dist/assets/NcDateTimePickerNative-DLch-JRA.css +47 -0
  142. package/dist/assets/NcDialog-DXX2MKxJ.css +132 -0
  143. package/dist/assets/NcEllipsisedOption-DZK2vWD1.css +34 -0
  144. package/dist/assets/{NcEmojiPicker-DPDnLnba.css → NcEmojiPicker-C18M6LHu.css} +16 -44
  145. package/dist/assets/NcEmptyContent-C-nruaFh.css +65 -0
  146. package/dist/assets/NcGuestContent-Dh5z5Dgm.css +50 -0
  147. package/dist/assets/NcHeaderMenu-Cb5YSERm.css +77 -0
  148. package/dist/assets/NcIconSvgWrapper-CtTf2c7f.css +39 -0
  149. package/dist/assets/NcInputConfirmCancel-DBjIHKvN.css +39 -0
  150. package/dist/assets/{NcInputField-CSuJUlgW.css → NcInputField-CZnSCalG.css} +43 -56
  151. package/dist/assets/NcListItem-Cs-R5Xpu.css +156 -0
  152. package/dist/assets/NcListItemIcon-C2zhDUEr.css +64 -0
  153. package/dist/assets/NcLoadingIcon-BSONDy7x.css +21 -0
  154. package/dist/assets/NcMentionBubble-C6t8od-_.css +73 -0
  155. package/dist/assets/{NcModal-JZMyM8zO.css → NcModal-Cr_CG7O3.css} +70 -87
  156. package/dist/assets/NcNoteCard-BLPU1den.css +50 -0
  157. package/dist/assets/{NcPopover-BwI1hPzy.css → NcPopover-BDlL00qZ.css} +6 -20
  158. package/dist/assets/NcProgressBar-BsqdCn-x.css +56 -0
  159. package/dist/assets/NcRelatedResourcesPanel-C56aj2M3.css +158 -0
  160. package/dist/assets/{NcRichContenteditable-C9Sikuur.css → NcRichContenteditable-Cf8PvtvB.css} +55 -97
  161. package/dist/assets/NcRichText-yXgN8zvG.css +217 -0
  162. package/dist/assets/{NcSelect-Fmyu7qyl.css → NcSelect-9AZOhTlS.css} +9 -21
  163. package/dist/assets/NcSettingsInputText-C3j73xA0.css +35 -0
  164. package/dist/assets/NcSettingsSection-CFKAEs4p.css +52 -0
  165. package/dist/assets/NcSettingsSelectGroup-CGfaysRv.css +23 -0
  166. package/dist/assets/{NcTextArea-n0qdPImB.css → NcTextArea-BjB_qSH0.css} +30 -42
  167. package/dist/assets/NcUserBubble-CIfQjmmP.css +48 -0
  168. package/dist/assets/NcUserStatusIcon-FLA1tQpD.css +30 -0
  169. package/dist/assets/{Tooltip-jHgt4m-W.css → Tooltip-4CSl8xev.css} +10 -30
  170. package/dist/assets/referencePickerModal-G4uFPuyg.css +413 -0
  171. package/dist/chunks/{GenColors-BjorWIgA.mjs → GenColors-AKX06ocD.mjs} +1 -23
  172. package/dist/chunks/GenColors-AKX06ocD.mjs.map +1 -0
  173. package/dist/chunks/GenRandomId-CMooMQt0.mjs +6 -0
  174. package/dist/chunks/GenRandomId-CMooMQt0.mjs.map +1 -0
  175. package/dist/chunks/Linkify-BtgR-dXX.mjs +14 -0
  176. package/dist/chunks/Linkify-BtgR-dXX.mjs.map +1 -0
  177. package/dist/chunks/{NcActionButton-BFQnlisT.mjs → NcActionButton-Bqkgltcz.mjs} +4 -4
  178. package/dist/chunks/NcActionButton-Bqkgltcz.mjs.map +1 -0
  179. package/dist/chunks/{NcActionButtonGroup-D-8C3HSO.mjs → NcActionButtonGroup-QSxR0BLf.mjs} +3 -3
  180. package/dist/chunks/NcActionButtonGroup-QSxR0BLf.mjs.map +1 -0
  181. package/dist/chunks/{NcActionCaption-CV_zDfFg.mjs → NcActionCaption-Cb_uvgZc.mjs} +2 -2
  182. package/dist/chunks/{NcActionCaption-CV_zDfFg.mjs.map → NcActionCaption-Cb_uvgZc.mjs.map} +1 -1
  183. package/dist/chunks/{NcActionCheckbox-CjZH6kjg.mjs → NcActionCheckbox-A6JNjini.mjs} +4 -4
  184. package/dist/chunks/NcActionCheckbox-A6JNjini.mjs.map +1 -0
  185. package/dist/chunks/{NcActionInput-ClUviDGB.mjs → NcActionInput-DY8dxchc.mjs} +11 -11
  186. package/dist/chunks/NcActionInput-DY8dxchc.mjs.map +1 -0
  187. package/dist/chunks/{NcActionLink-CQEzoS_a.mjs → NcActionLink-C0mINC5i.mjs} +4 -4
  188. package/dist/chunks/NcActionLink-C0mINC5i.mjs.map +1 -0
  189. package/dist/chunks/{NcActionRadio-D6VrxjcX.mjs → NcActionRadio-BqAyH2zq.mjs} +4 -4
  190. package/dist/chunks/NcActionRadio-BqAyH2zq.mjs.map +1 -0
  191. package/dist/chunks/{NcActionRouter-DmrWV-q1.mjs → NcActionRouter-Dr-j-IUI.mjs} +4 -4
  192. package/dist/chunks/NcActionRouter-Dr-j-IUI.mjs.map +1 -0
  193. package/dist/chunks/{NcActionSeparator-ib21YUAE.mjs → NcActionSeparator-DKFXmIJ5.mjs} +2 -2
  194. package/dist/chunks/NcActionSeparator-DKFXmIJ5.mjs.map +1 -0
  195. package/dist/chunks/{NcActionText-dj38IHk6.mjs → NcActionText-C5ZPI56c.mjs} +4 -4
  196. package/dist/chunks/NcActionText-C5ZPI56c.mjs.map +1 -0
  197. package/dist/chunks/{NcActionTextEditable-W1wFQ9dc.mjs → NcActionTextEditable-CLXTDGjr.mjs} +4 -4
  198. package/dist/chunks/NcActionTextEditable-CLXTDGjr.mjs.map +1 -0
  199. package/dist/chunks/{NcActions-B6QL_4DD.mjs → NcActions-DqMOvrbN.mjs} +7 -7
  200. package/dist/chunks/NcActions-DqMOvrbN.mjs.map +1 -0
  201. package/dist/chunks/{NcAppContent-jvz75P8O.mjs → NcAppContent-xtfi9kNO.mjs} +6 -6
  202. package/dist/chunks/NcAppContent-xtfi9kNO.mjs.map +1 -0
  203. package/dist/chunks/NcAppContentDetails-Ch6NJvAl.mjs.map +1 -1
  204. package/dist/chunks/NcAppContentList-DGwk3AvB.mjs.map +1 -1
  205. package/dist/chunks/{NcAppNavigation-D0RINQda.mjs → NcAppNavigation-C9Ku9eb2.mjs} +5 -5
  206. package/dist/chunks/NcAppNavigation-C9Ku9eb2.mjs.map +1 -0
  207. package/dist/chunks/{NcAppNavigationCaption-BnhoAPkJ.mjs → NcAppNavigationCaption-BysnsczC.mjs} +10 -6
  208. package/dist/chunks/NcAppNavigationCaption-BysnsczC.mjs.map +1 -0
  209. package/dist/chunks/{NcAppNavigationIconBullet-JoIYov5C.mjs → NcAppNavigationIconBullet-DuqQFciH.mjs} +2 -2
  210. package/dist/chunks/NcAppNavigationIconBullet-DuqQFciH.mjs.map +1 -0
  211. package/dist/chunks/{NcAppNavigationItem-s0czI8KR.mjs → NcAppNavigationItem--znMc-4G.mjs} +12 -12
  212. package/dist/chunks/NcAppNavigationItem--znMc-4G.mjs.map +1 -0
  213. package/dist/chunks/{NcAppNavigationList-DzTic3Q7.mjs → NcAppNavigationList-DCmrqe9N.mjs} +2 -2
  214. package/dist/chunks/NcAppNavigationList-DCmrqe9N.mjs.map +1 -0
  215. package/dist/chunks/{NcAppNavigationNew-RBp5Nk-2.mjs → NcAppNavigationNew-xPVyvfza.mjs} +3 -3
  216. package/dist/chunks/NcAppNavigationNew-xPVyvfza.mjs.map +1 -0
  217. package/dist/chunks/{NcAppNavigationNewItem-u85Ffz-V.mjs → NcAppNavigationNewItem-DS1hIl6W.mjs} +4 -4
  218. package/dist/chunks/NcAppNavigationNewItem-DS1hIl6W.mjs.map +1 -0
  219. package/dist/chunks/{NcAppNavigationSettings-D_4gHC9H.mjs → NcAppNavigationSettings-CekHqqk0.mjs} +5 -5
  220. package/dist/chunks/NcAppNavigationSettings-CekHqqk0.mjs.map +1 -0
  221. package/dist/chunks/{NcAppNavigationSpacer-Ctbl-q5I.mjs → NcAppNavigationSpacer-BQFYpMbq.mjs} +2 -2
  222. package/dist/chunks/NcAppNavigationSpacer-BQFYpMbq.mjs.map +1 -0
  223. package/dist/chunks/{NcAppNavigationToggle-BtC5hBww.mjs → NcAppNavigationToggle-DfX9dazn.mjs} +5 -5
  224. package/dist/chunks/NcAppNavigationToggle-DfX9dazn.mjs.map +1 -0
  225. package/dist/chunks/{NcAppSettingsDialog-DXpamfEo.mjs → NcAppSettingsDialog-ChTLtlsE.mjs} +5 -5
  226. package/dist/chunks/NcAppSettingsDialog-ChTLtlsE.mjs.map +1 -0
  227. package/dist/chunks/{NcAppSettingsSection-PG8OLRbP.mjs → NcAppSettingsSection-CJff2xNR.mjs} +10 -6
  228. package/dist/chunks/NcAppSettingsSection-CJff2xNR.mjs.map +1 -0
  229. package/dist/chunks/{NcAppSidebar-B0pjWsoI.mjs → NcAppSidebar-C9frc6kG.mjs} +252 -202
  230. package/dist/chunks/NcAppSidebar-C9frc6kG.mjs.map +1 -0
  231. package/dist/chunks/{NcAppSidebarTab-BTuuQoW5.mjs → NcAppSidebarTab-zBqyKIgn.mjs} +2 -2
  232. package/dist/chunks/NcAppSidebarTab-zBqyKIgn.mjs.map +1 -0
  233. package/dist/chunks/{NcAvatar-BKmfsBcY.mjs → NcAvatar-BjooMt8H.mjs} +16 -37
  234. package/dist/chunks/NcAvatar-BjooMt8H.mjs.map +1 -0
  235. package/dist/chunks/{NcBreadcrumb-C3k6T3Bj.mjs → NcBreadcrumb-Btbcn1IT.mjs} +5 -5
  236. package/dist/chunks/NcBreadcrumb-Btbcn1IT.mjs.map +1 -0
  237. package/dist/chunks/{NcBreadcrumbs-Crc4BkfA.mjs → NcBreadcrumbs-BFR0zNov.mjs} +12 -16
  238. package/dist/chunks/NcBreadcrumbs-BFR0zNov.mjs.map +1 -0
  239. package/dist/chunks/{NcButton-B27fpd1m.mjs → NcButton-Bhuckhtj.mjs} +57 -43
  240. package/dist/chunks/NcButton-Bhuckhtj.mjs.map +1 -0
  241. package/dist/chunks/{NcCheckboxRadioSwitch-DdG8AL_h.mjs → NcCheckboxRadioSwitch-fsQs5UG3.mjs} +49 -31
  242. package/dist/chunks/NcCheckboxRadioSwitch-fsQs5UG3.mjs.map +1 -0
  243. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_266d05fb_lang-8iSIJ9Oz.mjs +3 -0
  244. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_266d05fb_lang-8iSIJ9Oz.mjs.map +1 -0
  245. package/dist/chunks/NcChip-Z436j_vb.mjs +143 -0
  246. package/dist/chunks/NcChip-Z436j_vb.mjs.map +1 -0
  247. package/dist/chunks/NcCollectionList-B8r2GWp5.mjs +589 -0
  248. package/dist/chunks/NcCollectionList-B8r2GWp5.mjs.map +1 -0
  249. package/dist/chunks/{NcColorPicker-D4IB1shI.mjs → NcColorPicker-ChOP5UKN.mjs} +7 -7
  250. package/dist/chunks/NcColorPicker-ChOP5UKN.mjs.map +1 -0
  251. package/dist/chunks/NcContent-BTRh5byh.mjs +130 -0
  252. package/dist/chunks/NcContent-BTRh5byh.mjs.map +1 -0
  253. package/dist/chunks/{NcCounterBubble-BVDNwJiw.mjs → NcCounterBubble-B0Sk58x_.mjs} +2 -2
  254. package/dist/chunks/NcCounterBubble-B0Sk58x_.mjs.map +1 -0
  255. package/dist/chunks/{NcDashboardWidget-B5H6n5qG.mjs → NcDashboardWidget-CyEJLxAR.mjs} +8 -8
  256. package/dist/chunks/NcDashboardWidget-CyEJLxAR.mjs.map +1 -0
  257. package/dist/chunks/{NcDashboardWidgetItem-BbgZpZ-D.mjs → NcDashboardWidgetItem-DfP6DwdF.mjs} +5 -5
  258. package/dist/chunks/NcDashboardWidgetItem-DfP6DwdF.mjs.map +1 -0
  259. package/dist/chunks/{NcDateTime-p5872lEX.mjs → NcDateTime-DX34z7Lo.mjs} +1 -22
  260. package/dist/chunks/NcDateTime-DX34z7Lo.mjs.map +1 -0
  261. package/dist/chunks/{NcDateTimePicker-C1gBl-W0.mjs → NcDateTimePicker-D9gDwRl4.mjs} +8 -8
  262. package/dist/chunks/NcDateTimePicker-D9gDwRl4.mjs.map +1 -0
  263. package/dist/chunks/{NcDateTimePickerNative-CyCL5Ovh.mjs → NcDateTimePickerNative-d04KsMAl.mjs} +3 -3
  264. package/dist/chunks/NcDateTimePickerNative-d04KsMAl.mjs.map +1 -0
  265. package/dist/chunks/{NcDialog-Dq3Qnbke.mjs → NcDialog-D5IAHMrC.mjs} +13 -9
  266. package/dist/chunks/NcDialog-D5IAHMrC.mjs.map +1 -0
  267. package/dist/chunks/{NcDialogButton-C6SudZTq.mjs → NcDialogButton-BkFODtad.mjs} +15 -5
  268. package/dist/chunks/NcDialogButton-BkFODtad.mjs.map +1 -0
  269. package/dist/chunks/{NcEllipsisedOption-DsCFqgUF.mjs → NcEllipsisedOption-CufdpPBu.mjs} +9 -3
  270. package/dist/chunks/NcEllipsisedOption-CufdpPBu.mjs.map +1 -0
  271. package/dist/chunks/{NcEmojiPicker-BwQ8VxQZ.mjs → NcEmojiPicker-Dtc8dnSp.mjs} +10 -10
  272. package/dist/chunks/NcEmojiPicker-Dtc8dnSp.mjs.map +1 -0
  273. package/dist/chunks/{NcEmptyContent-CdgacgQe.mjs → NcEmptyContent-BoGB3vFC.mjs} +2 -2
  274. package/dist/chunks/NcEmptyContent-BoGB3vFC.mjs.map +1 -0
  275. package/dist/chunks/{NcGuestContent-DfnVEtGM.mjs → NcGuestContent-DVqg5Bq4.mjs} +2 -2
  276. package/dist/chunks/NcGuestContent-DVqg5Bq4.mjs.map +1 -0
  277. package/dist/chunks/{NcHeaderMenu-CJVtnKpb.mjs → NcHeaderMenu-CKynqFZZ.mjs} +7 -6
  278. package/dist/chunks/NcHeaderMenu-CKynqFZZ.mjs.map +1 -0
  279. package/dist/chunks/{NcHighlight-CR5kySMp.mjs → NcHighlight-BHtRIzqk.mjs} +0 -21
  280. package/dist/chunks/NcHighlight-BHtRIzqk.mjs.map +1 -0
  281. package/dist/chunks/{NcIconSvgWrapper-C0csZ9zg.mjs → NcIconSvgWrapper-DbL6OP85.mjs} +3 -3
  282. package/dist/chunks/NcIconSvgWrapper-DbL6OP85.mjs.map +1 -0
  283. package/dist/chunks/{NcInputConfirmCancel-Rk8B1Q0j.mjs → NcInputConfirmCancel-DkOh9UP_.mjs} +5 -5
  284. package/dist/chunks/NcInputConfirmCancel-DkOh9UP_.mjs.map +1 -0
  285. package/dist/chunks/{NcInputField-DX0Brmlk.mjs → NcInputField-hpiI0X9L.mjs} +4 -4
  286. package/dist/chunks/NcInputField-hpiI0X9L.mjs.map +1 -0
  287. package/dist/chunks/{NcListItem-CgZoQEIf.mjs → NcListItem-DX-yKrou.mjs} +5 -5
  288. package/dist/chunks/{NcListItem-CgZoQEIf.mjs.map → NcListItem-DX-yKrou.mjs.map} +1 -1
  289. package/dist/chunks/{NcListItemIcon-A5o8HkQv.mjs → NcListItemIcon-Bgd2w_Ug.mjs} +6 -6
  290. package/dist/chunks/NcListItemIcon-Bgd2w_Ug.mjs.map +1 -0
  291. package/dist/chunks/{NcLoadingIcon-DwbO7gAy.mjs → NcLoadingIcon-DREmHXr2.mjs} +2 -2
  292. package/dist/chunks/NcLoadingIcon-DREmHXr2.mjs.map +1 -0
  293. package/dist/chunks/{NcNoteCard-CdZRsd8-.mjs → NcNoteCard-CQgzjr2r.mjs} +2 -2
  294. package/dist/chunks/NcNoteCard-CQgzjr2r.mjs.map +1 -0
  295. package/dist/chunks/{NcPasswordField-B7CiEElO.mjs → NcPasswordField-Vfr9wcwj.mjs} +5 -4
  296. package/dist/chunks/NcPasswordField-Vfr9wcwj.mjs.map +1 -0
  297. package/dist/chunks/{NcPopover-B9UbiGTv.mjs → NcPopover-BXfbq-Vs.mjs} +2 -2
  298. package/dist/chunks/NcPopover-BXfbq-Vs.mjs.map +1 -0
  299. package/dist/chunks/{NcProgressBar-CAXfza4R.mjs → NcProgressBar-C2r8oqsv.mjs} +3 -3
  300. package/dist/chunks/NcProgressBar-C2r8oqsv.mjs.map +1 -0
  301. package/dist/chunks/{NcRelatedResourcesPanel-Dr4jL2gw.mjs → NcRelatedResourcesPanel-DXQ9WHF5.mjs} +11 -11
  302. package/dist/chunks/NcRelatedResourcesPanel-DXQ9WHF5.mjs.map +1 -0
  303. package/dist/chunks/{NcRichContenteditable-P06ORHyg.mjs → NcRichContenteditable-Bf9Kg4hl.mjs} +53 -30
  304. package/dist/chunks/NcRichContenteditable-Bf9Kg4hl.mjs.map +1 -0
  305. package/dist/chunks/{NcRichText-BfreYq5m.mjs → NcRichText-COi8Ex6O.mjs} +11 -10
  306. package/dist/chunks/NcRichText-COi8Ex6O.mjs.map +1 -0
  307. package/dist/chunks/NcSavingIndicatorIcon-BiGAtlKQ.mjs.map +1 -1
  308. package/dist/chunks/{NcSelect-Dt3JJc9b.mjs → NcSelect-uOkQ9CdB.mjs} +7 -7
  309. package/dist/chunks/NcSelect-uOkQ9CdB.mjs.map +1 -0
  310. package/dist/chunks/{NcSelectTags-F8Z_SdXE.mjs → NcSelectTags-1hIEJsvj.mjs} +3 -24
  311. package/dist/chunks/NcSelectTags-1hIEJsvj.mjs.map +1 -0
  312. package/dist/chunks/{NcSettingsInputText-BtDwhhX0.mjs → NcSettingsInputText-DO40BQ3B.mjs} +5 -5
  313. package/dist/chunks/NcSettingsInputText-DO40BQ3B.mjs.map +1 -0
  314. package/dist/chunks/{NcSettingsSection-BN98AV4b.mjs → NcSettingsSection-BDI1fNYG.mjs} +4 -4
  315. package/dist/chunks/NcSettingsSection-BDI1fNYG.mjs.map +1 -0
  316. package/dist/chunks/{NcSettingsSelectGroup-61ylzaOo.mjs → NcSettingsSelectGroup-OQVMB2G-.mjs} +6 -6
  317. package/dist/chunks/NcSettingsSelectGroup-OQVMB2G-.mjs.map +1 -0
  318. package/dist/chunks/{NcTextArea-DOXp3B2R.mjs → NcTextArea-qvR02aYz.mjs} +3 -3
  319. package/dist/chunks/NcTextArea-qvR02aYz.mjs.map +1 -0
  320. package/dist/chunks/{NcTextField-5CbWAUlw.mjs → NcTextField-DctsarIL.mjs} +3 -3
  321. package/dist/chunks/NcTextField-DctsarIL.mjs.map +1 -0
  322. package/dist/chunks/NcTimezonePicker-CGW5Q2gI.mjs +187 -0
  323. package/dist/chunks/NcTimezonePicker-CGW5Q2gI.mjs.map +1 -0
  324. package/dist/chunks/{NcUserBubble-B1nO-OgL.mjs → NcUserBubble-CsVyJK3C.mjs} +4 -4
  325. package/dist/chunks/NcUserBubble-CsVyJK3C.mjs.map +1 -0
  326. package/dist/chunks/{NcUserStatusIcon-DXxHWiO9.mjs → NcUserStatusIcon-CLYI768S.mjs} +10 -36
  327. package/dist/chunks/NcUserStatusIcon-CLYI768S.mjs.map +1 -0
  328. package/dist/chunks/ScopeComponent-59SnWk9S.mjs +14 -0
  329. package/dist/chunks/ScopeComponent-59SnWk9S.mjs.map +1 -0
  330. package/dist/chunks/_l10n-6dsjYig_.mjs +126 -0
  331. package/dist/chunks/_l10n-6dsjYig_.mjs.map +1 -0
  332. package/dist/chunks/actionGlobal-BZFdtdJL.mjs +25 -0
  333. package/dist/chunks/actionGlobal-BZFdtdJL.mjs.map +1 -0
  334. package/dist/chunks/{actionText-CBxkao_8.mjs → actionText-aI0owku1.mjs} +1 -43
  335. package/dist/chunks/actionText-aI0owku1.mjs.map +1 -0
  336. package/dist/chunks/{autolink-CuPhRJIL.mjs → autolink-CKPk5rzg.mjs} +7 -24
  337. package/dist/chunks/autolink-CKPk5rzg.mjs.map +1 -0
  338. package/dist/chunks/{emoji-BjUFGMrw.mjs → emoji-Ba55f8iV.mjs} +0 -21
  339. package/dist/chunks/emoji-Ba55f8iV.mjs.map +1 -0
  340. package/dist/chunks/focusTrap-Cecv_gjR.mjs +7 -0
  341. package/dist/chunks/focusTrap-Cecv_gjR.mjs.map +1 -0
  342. package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs +11 -0
  343. package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs.map +1 -0
  344. package/dist/chunks/index-CtoB4eIp.mjs.map +1 -1
  345. package/dist/chunks/{index-5AsHlmYO.mjs → index-CyNq54HS.mjs} +4 -25
  346. package/dist/chunks/index-CyNq54HS.mjs.map +1 -0
  347. package/dist/chunks/{referencePickerModal-Tr-vmVPW.mjs → referencePickerModal-BwzqUWFA.mjs} +27 -246
  348. package/dist/chunks/referencePickerModal-BwzqUWFA.mjs.map +1 -0
  349. package/dist/chunks/usernameToColor-CEyHwgy-.mjs +26 -0
  350. package/dist/chunks/usernameToColor-CEyHwgy-.mjs.map +1 -0
  351. package/dist/components/NcActionButton/NcActionButton.vue.d.ts +3 -7
  352. package/dist/components/NcActionButtonGroup/NcActionButtonGroup.vue.d.ts +1 -1
  353. package/dist/components/NcActionCheckbox/NcActionCheckbox.vue.d.ts +4 -4
  354. package/dist/components/NcActionInput/NcActionInput.vue.d.ts +11 -11
  355. package/dist/components/NcActionRadio/NcActionRadio.vue.d.ts +4 -4
  356. package/dist/components/NcActionTextEditable/NcActionTextEditable.vue.d.ts +4 -4
  357. package/dist/components/NcActions/NcActions.vue.d.ts +6 -6
  358. package/dist/components/NcAppContent/NcAppContent.vue.d.ts +1 -1
  359. package/dist/components/NcAppNavigationCaption/NcAppNavigationCaption.vue.d.ts +6 -69
  360. package/dist/components/NcAppNavigationItem/NcAppNavigationItem.vue.d.ts +6 -6
  361. package/dist/components/NcAppNavigationItem/NcInputConfirmCancel.vue.d.ts +3 -3
  362. package/dist/components/NcAppNavigationSettings/NcAppNavigationSettings.vue.d.ts +3 -3
  363. package/dist/components/NcAppSidebar/NcAppSidebar.vue.d.ts +62 -15
  364. package/dist/components/NcAppSidebar/NcAppSidebarTabs.vue.d.ts +16 -0
  365. package/dist/components/NcAvatar/NcAvatar.vue.d.ts +4 -4
  366. package/dist/components/NcBreadcrumb/NcBreadcrumb.vue.d.ts +5 -5
  367. package/dist/components/NcButton/NcButton.vue.d.ts +47 -25
  368. package/dist/components/NcButton/index.d.ts +3 -19
  369. package/dist/components/NcButton/types.d.ts +30 -0
  370. package/dist/components/NcChip/NcChip.vue.d.ts +113 -0
  371. package/dist/components/NcChip/index.d.ts +5 -0
  372. package/dist/components/NcCollectionList/NcCollectionList.vue.d.ts +126 -0
  373. package/dist/components/NcCollectionList/NcCollectionListItem.vue.d.ts +50 -0
  374. package/dist/components/NcCollectionList/index.d.ts +1 -0
  375. package/dist/components/NcCollectionList/service.d.ts +47 -0
  376. package/dist/components/NcCollectionList/useCollections.d.ts +31 -0
  377. package/dist/components/NcContent/NcContent.vue.d.ts +1 -1
  378. package/dist/components/NcDashboardWidgetItem/NcDashboardWidgetItem.vue.d.ts +1 -1
  379. package/dist/components/NcDialog/NcDialog.vue.d.ts +359 -1
  380. package/dist/components/NcDialogButton/NcDialogButton.vue.d.ts +94 -1
  381. package/dist/components/NcDialogButton/index.d.ts +4 -0
  382. package/dist/components/NcEllipsisedOption/NcEllipsisedOption.vue.d.ts +12 -0
  383. package/dist/components/NcEmojiPicker/NcEmojiPicker.vue.d.ts +2 -2
  384. package/dist/components/NcHeaderMenu/NcHeaderMenu.vue.d.ts +3 -3
  385. package/dist/components/NcHighlight/NcHighlight.vue.d.ts +1 -1
  386. package/dist/components/NcIconSvgWrapper/NcIconSvgWrapper.vue.d.ts +4 -4
  387. package/dist/components/NcInputField/NcInputField.vue.d.ts +6 -6
  388. package/dist/components/NcListItem/NcListItem.vue.d.ts +1 -1
  389. package/dist/components/NcListItemIcon/NcListItemIcon.vue.d.ts +3 -3
  390. package/dist/components/NcLoadingIcon/NcLoadingIcon.vue.d.ts +1 -1
  391. package/dist/components/NcNoteCard/NcNoteCard.vue.d.ts +1 -1
  392. package/dist/components/NcRelatedResourcesPanel/NcRelatedResourcesPanel.vue.d.ts +3 -3
  393. package/dist/components/NcRelatedResourcesPanel/NcResource.vue.d.ts +1 -1
  394. package/dist/components/NcRelatedResourcesPanel/NcTeamResources.vue.d.ts +1 -1
  395. package/dist/components/NcRichContenteditable/NcAutoCompleteResult.vue.d.ts +4 -4
  396. package/dist/components/NcRichContenteditable/NcRichContenteditable.vue.d.ts +22 -10
  397. package/dist/components/NcRichText/NcReferencePicker/NcSearch.vue.d.ts +1 -1
  398. package/dist/components/NcRichText/NcReferenceWidget.vue.d.ts +1 -1
  399. package/dist/components/NcRichText/NcRichText.vue.d.ts +2 -2
  400. package/dist/components/NcRichText/helpers.d.ts +4 -0
  401. package/dist/components/NcSavingIndicatorIcon/NcSavingIndicatorIcon.vue.d.ts +3 -3
  402. package/dist/components/NcSelect/NcSelect.vue.d.ts +2 -2
  403. package/dist/components/NcSelectTags/NcSelectTags.vue.d.ts +1 -1
  404. package/dist/components/NcSettingsInputText/NcSettingsInputText.vue.d.ts +4 -4
  405. package/dist/components/NcSettingsSelectGroup/NcSettingsSelectGroup.vue.d.ts +5 -5
  406. package/dist/components/NcTextArea/NcTextArea.vue.d.ts +3 -3
  407. package/dist/components/NcTimezonePicker/NcTimezonePicker.vue.d.ts +1 -1
  408. package/dist/components/NcUserBubble/NcUserBubble.vue.d.ts +4 -4
  409. package/dist/components/NcVNodes/NcVNodes.vue.d.ts +3 -3
  410. package/dist/components/index.d.ts +7 -19
  411. package/dist/composables/useFormatDateTime.d.ts +5 -5
  412. package/dist/directives/index.d.ts +2 -19
  413. package/dist/functions/a11y/index.d.ts +2 -19
  414. package/dist/functions/emoji/emoji.d.ts +2 -19
  415. package/dist/functions/emoji/index.d.ts +2 -19
  416. package/dist/functions/reference/widgets.d.ts +4 -0
  417. package/dist/index.d.ts +2 -19
  418. package/dist/index.mjs +93 -119
  419. package/dist/index.mjs.map +1 -1
  420. package/dist/l10n.d.ts +2 -2
  421. package/dist/mixins/clickOutsideOptions/index.d.ts +1 -1
  422. package/dist/mixins/richEditor/index.d.ts +1 -1
  423. package/dist/utils/FindRanges.d.ts +2 -19
  424. package/dist/utils/GenRandomId.d.ts +2 -19
  425. package/dist/utils/GetChildren.d.ts +2 -19
  426. package/dist/utils/GetParent.d.ts +2 -19
  427. package/dist/utils/ScopeComponent.d.ts +2 -19
  428. package/dist/utils/Timer.d.ts +4 -38
  429. package/dist/utils/UserStatus.d.ts +2 -19
  430. package/dist/utils/VueTypes.d.ts +3 -0
  431. package/dist/utils/getAvatarUrl.d.ts +2 -19
  432. package/dist/vendor.LICENSE.txt +4 -4
  433. package/package.json +32 -33
  434. package/LICENSE +0 -661
  435. package/dist/assets/NcActionButton-DilAGmID.css +0 -139
  436. package/dist/assets/NcActionCaption-sfcjBZnu.css +0 -46
  437. package/dist/assets/NcActionCheckbox-BPTe8v7j.css +0 -110
  438. package/dist/assets/NcActionInput-BCm3Bb6i.css +0 -271
  439. package/dist/assets/NcActionLink-ufhOZDI9.css +0 -124
  440. package/dist/assets/NcActionRadio-BgKkAdF8.css +0 -110
  441. package/dist/assets/NcActionRouter-DJDXSMeq.css +0 -135
  442. package/dist/assets/NcActionSeparator-CB59y4di.css +0 -38
  443. package/dist/assets/NcActionText-FrsQgrnA.css +0 -139
  444. package/dist/assets/NcActionTextEditable-pgsRQJ7l.css +0 -287
  445. package/dist/assets/NcActions-6uFGQVJQ.css +0 -111
  446. package/dist/assets/NcAppContent-CVWf32qC.css +0 -153
  447. package/dist/assets/NcAppNavigation-B_aG01bd.css +0 -131
  448. package/dist/assets/NcAppNavigationCaption-B32FjjW3.css +0 -62
  449. package/dist/assets/NcAppNavigationIconBullet-B8q3pUL5.css +0 -44
  450. package/dist/assets/NcAppNavigationList-DnIxrbVX.css +0 -43
  451. package/dist/assets/NcAppNavigationNew-B29SvI0s.css +0 -41
  452. package/dist/assets/NcAppNavigationSettings-RpFZX7Hx.css +0 -93
  453. package/dist/assets/NcAppNavigationSpacer-C12GX5n6.css +0 -6
  454. package/dist/assets/NcAppNavigationToggle-Bb19ZkjT.css +0 -41
  455. package/dist/assets/NcAppSettingsDialog-CQY4VVRw.css +0 -88
  456. package/dist/assets/NcAppSettingsSection-BUxPrhYB.css +0 -44
  457. package/dist/assets/NcAppSidebarTab-WhMYMxlI.css +0 -48
  458. package/dist/assets/NcAvatar-xxyc0_S6.css +0 -143
  459. package/dist/assets/NcBreadcrumb-BKgJHxzd.css +0 -82
  460. package/dist/assets/NcBreadcrumbs-Dq8VnSzJ.css +0 -51
  461. package/dist/assets/NcButton-BqOBMPBj.css +0 -204
  462. package/dist/assets/NcColorPicker-q8nVYCvu.css +0 -136
  463. package/dist/assets/NcContent-CQqz6KXD.css +0 -108
  464. package/dist/assets/NcCounterBubble-CWi_P1Tb.css +0 -67
  465. package/dist/assets/NcDashboardWidget-DzDAv3ER.css +0 -87
  466. package/dist/assets/NcDashboardWidgetItem-BevETFRF.css +0 -99
  467. package/dist/assets/NcDateTimePickerNative-DHZcOvOf.css +0 -61
  468. package/dist/assets/NcDialog-CvmjNcgn.css +0 -160
  469. package/dist/assets/NcEllipsisedOption-ClDzkIX6.css +0 -48
  470. package/dist/assets/NcEmptyContent-CMM4BKRc.css +0 -79
  471. package/dist/assets/NcGuestContent-BTahASdv.css +0 -78
  472. package/dist/assets/NcHeaderMenu-fYpidmuR.css +0 -91
  473. package/dist/assets/NcIconSvgWrapper-C95UOHYS.css +0 -53
  474. package/dist/assets/NcInputConfirmCancel-dYsxq6pH.css +0 -53
  475. package/dist/assets/NcListItem-CJa4SoZs.css +0 -170
  476. package/dist/assets/NcListItemIcon-KqKY7_tj.css +0 -78
  477. package/dist/assets/NcLoadingIcon-gxK0ujO0.css +0 -35
  478. package/dist/assets/NcMentionBubble-DmzU72Mw.css +0 -84
  479. package/dist/assets/NcNoteCard-e7-Bxio8.css +0 -64
  480. package/dist/assets/NcProgressBar-D5VftcJm.css +0 -70
  481. package/dist/assets/NcRelatedResourcesPanel-CbFY3Cdm.css +0 -200
  482. package/dist/assets/NcRichText-Cc65tYYs.css +0 -240
  483. package/dist/assets/NcSettingsInputText-DR4Wv2XP.css +0 -49
  484. package/dist/assets/NcSettingsSection-DrlA06-W.css +0 -66
  485. package/dist/assets/NcSettingsSelectGroup-Ba_9qqBq.css +0 -37
  486. package/dist/assets/NcUserBubble-a6zTGwWG.css +0 -62
  487. package/dist/assets/NcUserStatusIcon-DYNzsng_.css +0 -44
  488. package/dist/assets/referencePickerModal-4K_FZwca.css +0 -539
  489. package/dist/chunks/GenColors-BjorWIgA.mjs.map +0 -1
  490. package/dist/chunks/GenRandomId-CXkjMlAT.mjs +0 -27
  491. package/dist/chunks/GenRandomId-CXkjMlAT.mjs.map +0 -1
  492. package/dist/chunks/Linkify-BBPJHBma.mjs +0 -35
  493. package/dist/chunks/Linkify-BBPJHBma.mjs.map +0 -1
  494. package/dist/chunks/NcActionButton-BFQnlisT.mjs.map +0 -1
  495. package/dist/chunks/NcActionButtonGroup-D-8C3HSO.mjs.map +0 -1
  496. package/dist/chunks/NcActionCheckbox-CjZH6kjg.mjs.map +0 -1
  497. package/dist/chunks/NcActionInput-ClUviDGB.mjs.map +0 -1
  498. package/dist/chunks/NcActionLink-CQEzoS_a.mjs.map +0 -1
  499. package/dist/chunks/NcActionRadio-D6VrxjcX.mjs.map +0 -1
  500. package/dist/chunks/NcActionRouter-DmrWV-q1.mjs.map +0 -1
  501. package/dist/chunks/NcActionSeparator-ib21YUAE.mjs.map +0 -1
  502. package/dist/chunks/NcActionText-dj38IHk6.mjs.map +0 -1
  503. package/dist/chunks/NcActionTextEditable-W1wFQ9dc.mjs.map +0 -1
  504. package/dist/chunks/NcActions-B6QL_4DD.mjs.map +0 -1
  505. package/dist/chunks/NcAppContent-jvz75P8O.mjs.map +0 -1
  506. package/dist/chunks/NcAppNavigation-D0RINQda.mjs.map +0 -1
  507. package/dist/chunks/NcAppNavigationCaption-BnhoAPkJ.mjs.map +0 -1
  508. package/dist/chunks/NcAppNavigationIconBullet-JoIYov5C.mjs.map +0 -1
  509. package/dist/chunks/NcAppNavigationItem-s0czI8KR.mjs.map +0 -1
  510. package/dist/chunks/NcAppNavigationList-DzTic3Q7.mjs.map +0 -1
  511. package/dist/chunks/NcAppNavigationNew-RBp5Nk-2.mjs.map +0 -1
  512. package/dist/chunks/NcAppNavigationNewItem-u85Ffz-V.mjs.map +0 -1
  513. package/dist/chunks/NcAppNavigationSettings-D_4gHC9H.mjs.map +0 -1
  514. package/dist/chunks/NcAppNavigationSpacer-Ctbl-q5I.mjs.map +0 -1
  515. package/dist/chunks/NcAppNavigationToggle-BtC5hBww.mjs.map +0 -1
  516. package/dist/chunks/NcAppSettingsDialog-DXpamfEo.mjs.map +0 -1
  517. package/dist/chunks/NcAppSettingsSection-PG8OLRbP.mjs.map +0 -1
  518. package/dist/chunks/NcAppSidebar-B0pjWsoI.mjs.map +0 -1
  519. package/dist/chunks/NcAppSidebarTab-BTuuQoW5.mjs.map +0 -1
  520. package/dist/chunks/NcAvatar-BKmfsBcY.mjs.map +0 -1
  521. package/dist/chunks/NcBreadcrumb-C3k6T3Bj.mjs.map +0 -1
  522. package/dist/chunks/NcBreadcrumbs-Crc4BkfA.mjs.map +0 -1
  523. package/dist/chunks/NcButton-B27fpd1m.mjs.map +0 -1
  524. package/dist/chunks/NcCheckboxRadioSwitch-DdG8AL_h.mjs.map +0 -1
  525. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_9bdeea42_lang-C9ptCbXx.mjs +0 -3
  526. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_9bdeea42_lang-C9ptCbXx.mjs.map +0 -1
  527. package/dist/chunks/NcColorPicker-D4IB1shI.mjs.map +0 -1
  528. package/dist/chunks/NcContent-CMQytlSd.mjs +0 -129
  529. package/dist/chunks/NcContent-CMQytlSd.mjs.map +0 -1
  530. package/dist/chunks/NcCounterBubble-BVDNwJiw.mjs.map +0 -1
  531. package/dist/chunks/NcDashboardWidget-B5H6n5qG.mjs.map +0 -1
  532. package/dist/chunks/NcDashboardWidgetItem-BbgZpZ-D.mjs.map +0 -1
  533. package/dist/chunks/NcDateTime-p5872lEX.mjs.map +0 -1
  534. package/dist/chunks/NcDateTimePicker-C1gBl-W0.mjs.map +0 -1
  535. package/dist/chunks/NcDateTimePickerNative-CyCL5Ovh.mjs.map +0 -1
  536. package/dist/chunks/NcDialog-Dq3Qnbke.mjs.map +0 -1
  537. package/dist/chunks/NcDialogButton-C6SudZTq.mjs.map +0 -1
  538. package/dist/chunks/NcEllipsisedOption-DsCFqgUF.mjs.map +0 -1
  539. package/dist/chunks/NcEmojiPicker-BwQ8VxQZ.mjs.map +0 -1
  540. package/dist/chunks/NcEmptyContent-CdgacgQe.mjs.map +0 -1
  541. package/dist/chunks/NcGuestContent-DfnVEtGM.mjs.map +0 -1
  542. package/dist/chunks/NcHeaderMenu-CJVtnKpb.mjs.map +0 -1
  543. package/dist/chunks/NcHighlight-CR5kySMp.mjs.map +0 -1
  544. package/dist/chunks/NcIconSvgWrapper-C0csZ9zg.mjs.map +0 -1
  545. package/dist/chunks/NcInputConfirmCancel-Rk8B1Q0j.mjs.map +0 -1
  546. package/dist/chunks/NcInputField-DX0Brmlk.mjs.map +0 -1
  547. package/dist/chunks/NcListItemIcon-A5o8HkQv.mjs.map +0 -1
  548. package/dist/chunks/NcLoadingIcon-DwbO7gAy.mjs.map +0 -1
  549. package/dist/chunks/NcNoteCard-CdZRsd8-.mjs.map +0 -1
  550. package/dist/chunks/NcPasswordField-B7CiEElO.mjs.map +0 -1
  551. package/dist/chunks/NcPopover-B9UbiGTv.mjs.map +0 -1
  552. package/dist/chunks/NcProgressBar-CAXfza4R.mjs.map +0 -1
  553. package/dist/chunks/NcRelatedResourcesPanel-Dr4jL2gw.mjs.map +0 -1
  554. package/dist/chunks/NcRichContenteditable-P06ORHyg.mjs.map +0 -1
  555. package/dist/chunks/NcRichText-BfreYq5m.mjs.map +0 -1
  556. package/dist/chunks/NcSelect-Dt3JJc9b.mjs.map +0 -1
  557. package/dist/chunks/NcSelectTags-F8Z_SdXE.mjs.map +0 -1
  558. package/dist/chunks/NcSettingsInputText-BtDwhhX0.mjs.map +0 -1
  559. package/dist/chunks/NcSettingsSection-BN98AV4b.mjs.map +0 -1
  560. package/dist/chunks/NcSettingsSelectGroup-61ylzaOo.mjs.map +0 -1
  561. package/dist/chunks/NcTextArea-DOXp3B2R.mjs.map +0 -1
  562. package/dist/chunks/NcTextField-5CbWAUlw.mjs.map +0 -1
  563. package/dist/chunks/NcTimezonePicker-Cs2arCUX.mjs +0 -4051
  564. package/dist/chunks/NcTimezonePicker-Cs2arCUX.mjs.map +0 -1
  565. package/dist/chunks/NcUserBubble-B1nO-OgL.mjs.map +0 -1
  566. package/dist/chunks/NcUserStatusIcon-DXxHWiO9.mjs.map +0 -1
  567. package/dist/chunks/ScopeComponent-B2OE7k3z.mjs +0 -35
  568. package/dist/chunks/ScopeComponent-B2OE7k3z.mjs.map +0 -1
  569. package/dist/chunks/_l10n-ipRV_dfs.mjs +0 -122
  570. package/dist/chunks/_l10n-ipRV_dfs.mjs.map +0 -1
  571. package/dist/chunks/actionGlobal-BIN1Dngv.mjs +0 -46
  572. package/dist/chunks/actionGlobal-BIN1Dngv.mjs.map +0 -1
  573. package/dist/chunks/actionText-CBxkao_8.mjs.map +0 -1
  574. package/dist/chunks/autolink-CuPhRJIL.mjs.map +0 -1
  575. package/dist/chunks/emoji-BjUFGMrw.mjs.map +0 -1
  576. package/dist/chunks/focusTrap-hWDNhn4t.mjs +0 -28
  577. package/dist/chunks/focusTrap-hWDNhn4t.mjs.map +0 -1
  578. package/dist/chunks/getAvatarUrl-BBvqBOJD.mjs +0 -32
  579. package/dist/chunks/getAvatarUrl-BBvqBOJD.mjs.map +0 -1
  580. package/dist/chunks/index-5AsHlmYO.mjs.map +0 -1
  581. package/dist/chunks/logger-C7ZZ6zFQ.mjs +0 -25
  582. package/dist/chunks/logger-C7ZZ6zFQ.mjs.map +0 -1
  583. package/dist/chunks/referencePickerModal-Tr-vmVPW.mjs.map +0 -1
  584. package/dist/chunks/usernameToColor-BpeOvoed.mjs +0 -47
  585. package/dist/chunks/usernameToColor-BpeOvoed.mjs.map +0 -1
  586. package/dist/utils/IsOutOfViewport.d.ts +0 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_l10n-6dsjYig_.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,25 @@
1
+ const ActionGlobalMixin = {
2
+ beforeUpdate() {
3
+ this.text = this.getText();
4
+ },
5
+ data() {
6
+ return {
7
+ // $slots are not reactive.
8
+ // We need to update the content manually
9
+ text: this.getText()
10
+ };
11
+ },
12
+ computed: {
13
+ isLongText() {
14
+ return this.text && this.text.trim().length > 20;
15
+ }
16
+ },
17
+ methods: {
18
+ getText() {
19
+ return this.$slots.default?.()[0].children?.trim?.() || "";
20
+ }
21
+ }
22
+ };
23
+ export {
24
+ ActionGlobalMixin as A
25
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionGlobal-BZFdtdJL.mjs","sources":["../../src/mixins/actionGlobal.js"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nexport default {\n\tbeforeUpdate() {\n\t\tthis.text = this.getText()\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\t// $slots are not reactive.\n\t\t\t// We need to update the content manually\n\t\t\ttext: this.getText(),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tisLongText() {\n\t\t\treturn this.text && this.text.trim().length > 20\n\t\t},\n\t},\n\n\tmethods: {\n\t\tgetText() {\n\t\t\treturn this.$slots.default?.()[0].children?.trim?.() || ''\n\t\t},\n\t},\n}\n"],"names":[],"mappings":"AAKA,MAAe,oBAAA;AAAA,EACd,eAAe;AACd,SAAK,OAAO,KAAK,QAAS;AAAA,EAC1B;AAAA,EAED,OAAO;AACN,WAAO;AAAA;AAAA;AAAA,MAGN,MAAM,KAAK,QAAS;AAAA,IACpB;AAAA,EACD;AAAA,EAED,UAAU;AAAA,IACT,aAAa;AACZ,aAAO,KAAK,QAAQ,KAAK,KAAK,KAAI,EAAG,SAAS;AAAA,IAC9C;AAAA,EACD;AAAA,EAED,SAAS;AAAA,IACR,UAAU;AACT,aAAO,KAAK,OAAO,UAAW,EAAC,CAAC,EAAE,UAAU,OAAI,KAAQ;AAAA,IACxD;AAAA,EACD;AACF;"}
@@ -1,25 +1,4 @@
1
- import { A as ActionGlobalMixin } from "./actionGlobal-BIN1Dngv.mjs";
2
- /**
3
- * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
4
- *
5
- * @author John Molakvoæ <skjnldsv@protonmail.com>
6
- *
7
- * @license AGPL-3.0-or-later
8
- *
9
- * This program is free software: you can redistribute it and/or modify
10
- * it under the terms of the GNU Affero General Public License as
11
- * published by the Free Software Foundation, either version 3 of the
12
- * License, or (at your option) any later version.
13
- *
14
- * This program is distributed in the hope that it will be useful,
15
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
- * GNU Affero General Public License for more details.
18
- *
19
- * You should have received a copy of the GNU Affero General Public License
20
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
21
- *
22
- */
1
+ import { A as ActionGlobalMixin } from "./actionGlobal-BZFdtdJL.mjs";
23
2
  const GetParent = function(context, name) {
24
3
  let parent = context.$parent;
25
4
  while (parent) {
@@ -29,27 +8,6 @@ const GetParent = function(context, name) {
29
8
  parent = parent.$parent;
30
9
  }
31
10
  };
32
- /**
33
- * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
34
- *
35
- * @author John Molakvoæ <skjnldsv@protonmail.com>
36
- *
37
- * @license AGPL-3.0-or-later
38
- *
39
- * This program is free software: you can redistribute it and/or modify
40
- * it under the terms of the GNU Affero General Public License as
41
- * published by the Free Software Foundation, either version 3 of the
42
- * License, or (at your option) any later version.
43
- *
44
- * This program is distributed in the hope that it will be useful,
45
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
46
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
47
- * GNU Affero General Public License for more details.
48
- *
49
- * You should have received a copy of the GNU Affero General Public License
50
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
51
- *
52
- */
53
11
  const ActionTextMixin = {
54
12
  mixins: [ActionGlobalMixin],
55
13
  props: {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionText-aI0owku1.mjs","sources":["../../src/utils/GetParent.js","../../src/mixins/actionText.js"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * Get the first parent component matching the provided name\n *\n * @param {object} context the context to search from (usually this)\n * @param {string} name the parent name\n * @return {object|undefined} the parent component\n */\nconst GetParent = function(context, name) {\n\tlet parent = context.$parent\n\twhile (parent) {\n\t\tif (parent.$options.name === name) {\n\t\t\treturn parent\n\t\t}\n\t\tparent = parent.$parent\n\t}\n}\n\nexport default GetParent\n","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport actionGlobal from './actionGlobal.js'\nimport GetParent from '../utils/GetParent.js'\n\nexport default {\n\tmixins: [actionGlobal],\n\tprops: {\n\t\t/**\n\t\t * Icon to show with the action, can be either a CSS class or an URL\n\t\t */\n\t\ticon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * The main text content of the entry.\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * The title attribute of the element.\n\t\t */\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\t/**\n\t\t * Whether we close the Actions menu after the click\n\t\t */\n\t\tcloseAfterClick: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * Aria label for the button. Not needed if the button has text.\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t],\n\n\tcomputed: {\n\t\t/**\n\t\t * Check if icon prop is an URL\n\t\t * @return {boolean} Whether the icon prop is an URL\n\t\t */\n\t\tisIconUrl() {\n\t\t\ttry {\n\t\t\t\treturn !!(new URL(this.icon, this.icon.startsWith('/') ? window.location.origin : undefined))\n\t\t\t} catch (error) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\t},\n\n\tmethods: {\n\t\tonClick(event) {\n\t\t\t/**\n\t\t\t * Emitted when the action is clicked\n\t\t\t *\n\t\t\t * @type {Event}\n\t\t\t */\n\t\t\tthis.$emit('click', event)\n\n\t\t\tif (this.closeAfterClick) {\n\t\t\t\tconst parent = GetParent(this, 'NcActions')\n\t\t\t\tif (parent && parent.closeMenu) {\n\t\t\t\t\tparent.closeMenu(false)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n"],"names":["actionGlobal"],"mappings":";AAYA,MAAM,YAAY,SAAS,SAAS,MAAM;AACzC,MAAI,SAAS,QAAQ;AACrB,SAAO,QAAQ;AACd,QAAI,OAAO,SAAS,SAAS,MAAM;AAClC,aAAO;AAAA,IACP;AACD,aAAS,OAAO;AAAA,EAChB;AACF;ACZA,MAAe,kBAAA;AAAA,EACd,QAAQ,CAACA,iBAAY;AAAA,EACrB,OAAO;AAAA;AAAA;AAAA;AAAA,IAIN,MAAM;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAID,MAAM;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAID,OAAO;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAID,iBAAiB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA,IAID,WAAW;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACT;AAAA,EACD;AAAA,EAED,OAAO;AAAA,IACN;AAAA,EACA;AAAA,EAED,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,IAKT,YAAY;AACX,UAAI;AACH,eAAO,CAAC,CAAE,IAAI,IAAI,KAAK,MAAM,KAAK,KAAK,WAAW,GAAG,IAAI,OAAO,SAAS,SAAS,MAAS;AAAA,MAC3F,SAAQ,OAAO;AACf,eAAO;AAAA,MACP;AAAA,IACD;AAAA,EACD;AAAA,EAED,SAAS;AAAA,IACR,QAAQ,OAAO;AAMd,WAAK,MAAM,SAAS,KAAK;AAEzB,UAAI,KAAK,iBAAiB;AACzB,cAAM,SAAS,UAAU,MAAM,WAAW;AAC1C,YAAI,UAAU,OAAO,WAAW;AAC/B,iBAAO,UAAU,KAAK;AAAA,QACtB;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACF;"}
@@ -4,30 +4,6 @@ import { visit, SKIP } from "unist-util-visit";
4
4
  import { defineComponent, h } from "vue";
5
5
  const URL_PATTERN = /(\s|^)(https?:\/\/)([-A-Z0-9+_.]+(?::[0-9]+)?(?:\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\s|$)/ig;
6
6
  const URL_PATTERN_AUTOLINK = /(\s|\(|^)((https?:\/\/)([-A-Z0-9+_.]+[-A-Z0-9]+(?::[0-9]+)?(?:\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\s|\)|$)/ig;
7
- /**
8
- * @copyright Copyright (c) 2022 Julius Härtl <jus@bitgrid.net>
9
- *
10
- * @author Julius Härtl <jus@bitgrid.net>
11
- * @author Raimund Schlüßler <raimund.schluessler@mailbox.org>
12
- * @author Maksim Sukharev <antreesy.web@gmail.com>
13
- * @author Grigorii K. Shartsev <me@shgk.me>
14
- *
15
- * @license AGPL-3.0-or-later
16
- *
17
- * This program is free software: you can redistribute it and/or modify
18
- * it under the terms of the GNU Affero General Public License as
19
- * published by the Free Software Foundation, either version 3 of the
20
- * License, or (at your option) any later version.
21
- *
22
- * This program is distributed in the hope that it will be useful,
23
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
24
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25
- * GNU Affero General Public License for more details.
26
- *
27
- * You should have received a copy of the GNU Affero General Public License
28
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
29
- *
30
- */
31
7
  const NcLink = defineComponent({
32
8
  name: "NcLink",
33
9
  props: {
@@ -109,9 +85,16 @@ const getRoute = (router, url) => {
109
85
  return null;
110
86
  }
111
87
  const isAbsoluteURL = /^https?:\/\//.test(url);
88
+ const isNonHttpLink = /^[a-z][a-z0-9+.-]*:.+/.test(url);
89
+ if (!isAbsoluteURL && isNonHttpLink) {
90
+ return null;
91
+ }
112
92
  if (isAbsoluteURL && !url.startsWith(getBaseUrl())) {
113
93
  return null;
114
94
  }
95
+ if (!isAbsoluteURL && !url.startsWith("/")) {
96
+ return null;
97
+ }
115
98
  const relativeUrl = isAbsoluteURL ? removePrefixes(url, getBaseUrl(), "/index.php") : url;
116
99
  const relativeRouterBase = removePrefixes(router.options.history.base, getRootUrl(), "/index.php");
117
100
  const potentialRouterPath = removePrefixes(relativeUrl, relativeRouterBase) || "/";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autolink-CKPk5rzg.mjs","sources":["../../src/components/NcRichText/helpers.js","../../src/components/NcRichText/autolink.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * Regex pattern to match links to be resolved by the link-reference provider\n *\n * @type {RegExp}\n */\nexport const URL_PATTERN = /(\\s|^)(https?:\\/\\/)([-A-Z0-9+_.]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*)(\\s|$)/ig\n\n/**\n * Regex pattern to identify strings as links and then making them clickable\n *\n * @type {RegExp}\n */\nexport const URL_PATTERN_AUTOLINK = /(\\s|\\(|^)((https?:\\/\\/)([-A-Z0-9+_.]+[-A-Z0-9]+(?::[0-9]+)?(?:\\/[-A-Z0-9+&@#%?=~_|!:,.;()]*)*))(?=\\s|\\)|$)/ig\n","/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { URL_PATTERN_AUTOLINK } from './helpers.js'\n\nimport type { Router } from 'vue-router'\nimport { getBaseUrl, getRootUrl } from '@nextcloud/router'\nimport { u } from 'unist-builder'\nimport { visit, SKIP } from 'unist-util-visit'\nimport { defineComponent, h } from 'vue'\n\nconst NcLink = defineComponent({\n\tname: 'NcLink',\n\tprops: {\n\t\thref: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n\trender() {\n\t\treturn h('a', {\n\t\t\thref: this.href,\n\t\t\trel: 'noopener noreferrer',\n\t\t\ttarget: '_blank',\n\t\t\tclass: 'rich-text--external-link',\n\t\t}, [this.href.trim()])\n\t},\n})\n\nexport const remarkAutolink = function({ autolink, useMarkdown, useExtendedMarkdown }) {\n\treturn function(tree) {\n\t\t// remark-gfm has its own autolink parser which can not be disabled\n\t\t// and thus a local one is not needed\n\t\tif (useExtendedMarkdown || !useMarkdown || !autolink) {\n\t\t\treturn\n\t\t}\n\n\t\tvisit(tree, (node) => node.type === 'text', (node, index, parent) => {\n\t\t\tlet parsed = parseUrl(node.value)\n\t\t\tif (typeof parsed === 'string') {\n\t\t\t\tparsed = [u('text', parsed)]\n\t\t\t} else {\n\t\t\t\tparsed = parsed\n\t\t\t\t\t.map((n) => {\n\t\t\t\t\t\tif (typeof n === 'string') {\n\t\t\t\t\t\t\treturn u('text', n)\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn u('link', {\n\t\t\t\t\t\t\turl: n.props.href,\n\t\t\t\t\t\t}, [u('text', n.props.href)])\n\t\t\t\t\t})\n\t\t\t\t\t.filter((x) => x)\n\t\t\t\t\t.flat()\n\t\t\t}\n\n\t\t\tparent.children.splice(index, 1, ...parsed)\n\t\t\treturn [SKIP, (index ?? 0) + parsed.length]\n\t\t})\n\t}\n}\n\nexport const parseUrl = (text: string) => {\n\tlet match = URL_PATTERN_AUTOLINK.exec(text)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tconst list: (string|Record<string, any>)[] = []\n\tlet start = 0\n\twhile (match !== null) {\n\t\tlet href = match[2]\n\t\tlet textAfter\n\t\tlet textBefore = text.substring(start, match.index + match[1].length)\n\t\tif (href[0] === ' ') {\n\t\t\ttextBefore += href[0]\n\t\t\thref = href.substring(1).trim()\n\t\t}\n\t\tconst lastChar = href[(href.length - 1)]\n\t\tif (lastChar === '.' || lastChar === ',' || lastChar === ';' || (match[0][0] === '(' && lastChar === ')')) {\n\t\t\thref = href.substring(0, href.length - 1)\n\t\t\ttextAfter = lastChar\n\t\t}\n\t\tlist.push(textBefore)\n\t\tlist.push({ component: NcLink, props: { href } })\n\t\tif (textAfter) {\n\t\t\tlist.push(textAfter)\n\t\t}\n\t\tstart = match.index + match[0].length\n\t\tmatch = URL_PATTERN_AUTOLINK.exec(text)\n\t}\n\tlist.push(text.substring(start))\n\tconst joinedText = list.map((item) => typeof item === 'string' ? item : item.props.href).join('')\n\tif (text === joinedText) {\n\t\treturn list\n\t}\n\tconsole.error('Failed to reassemble the chunked text: ' + text)\n\treturn text\n}\n\n/**\n * Try to get path for router link from an absolute or relative URL.\n *\n * @param {Router} router - VueRouter instance of the router link\n * @param {string} url - absolute URL to parse\n * @return {string|null} a path that can be used in the router link or null if this URL doesn't match this router config\n * @example http://cloud.ltd/nextcloud/index.php/apps/files/favorites?fileid=2#fragment => /files/favorites?fileid=2#fragment\n */\nexport const getRoute = (router: Router, url: string): string | null => {\n\t/**\n\t * http://cloud.ltd /nextcloud /index.php /apps/files /favorites?fileid=2#fragment\n\t * |_____origin____|___________router-base____________| |\n\t * |__________base____________| |______________relative-url______________|\n\t * | |___root___|_optional_|__app-base__|_________router-path_______|\n\t */\n\n\tconst removePrefix = (str, prefix) => str.startsWith(prefix) ? str.slice(prefix.length) : str\n\tconst removePrefixes = (str, ...prefixes) => prefixes.reduce((acc, prefix) => removePrefix(acc, prefix), str)\n\n\t// Router is not defined in the app => not an app route\n\tif (!router) {\n\t\treturn null\n\t}\n\n\tconst isAbsoluteURL = /^https?:\\/\\//.test(url)\n\n\t// URL is a \"mailto:\", \"tel:\" or any custom app protocol link\n\tconst isNonHttpLink = /^[a-z][a-z0-9+.-]*:.+/.test(url)\n\tif (!isAbsoluteURL && isNonHttpLink) {\n\t\treturn null\n\t}\n\n\t// URL is not a link to this Nextcloud server instance => not an app route\n\tif (isAbsoluteURL && !url.startsWith(getBaseUrl())) {\n\t\treturn null\n\t}\n\n\tif (!isAbsoluteURL && !url.startsWith('/')) {\n\t\t// Relative URL without a leading slash are not allowed\n\t\t// VueRouter handles such urls according to the URL RFC,\n\t\t// for example, being on /call/abc page, link \"def\" is resolved as \"/call/def\" relative to \"/call/\".\n\t\t// We don't want to support such links,\n\t\t// so relative URL MUST start with a slash.\n\t\treturn null\n\t}\n\n\t// URL relative to the instance root\n\tconst relativeUrl = isAbsoluteURL ? removePrefixes(url, getBaseUrl(), '/index.php') : url\n\n\t// Router base relative to the instance root (app-base above)\n\tconst relativeRouterBase = removePrefixes(router.options.history.base, getRootUrl(), '/index.php')\n\n\t// Root route may have an empty '' path, fallback to '/'\n\tconst potentialRouterPath = removePrefixes(relativeUrl, relativeRouterBase) || '/'\n\n\t// Check if there is actually matching route in the router for this path\n\tconst route = router.resolve(potentialRouterPath)\n\n\tif (!route.matched.length) {\n\t\treturn null\n\t}\n\n\treturn route.fullPath\n}\n"],"names":[],"mappings":"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"}
@@ -1,27 +1,6 @@
1
1
  import { getBuilder } from "@nextcloud/browser-storage";
2
2
  import { EmojiIndex, frequently } from "emoji-mart-vue-fast";
3
3
  import data from "emoji-mart-vue-fast/data/all.json";
4
- /**
5
- * @copyright Copyright (c) 2021 Jonas Meurer <jonas@freesources.org>
6
- *
7
- * @author Jonas Meurer <jonas@freesources.org>
8
- *
9
- * @license AGPL-3.0-or-later
10
- *
11
- * This program is free software: you can redistribute it and/or modify
12
- * it under the terms of the GNU Affero General Public License as
13
- * published by the Free Software Foundation, either version 3 of the
14
- * License, or (at your option) any later version.
15
- *
16
- * This program is distributed in the hope that it will be useful,
17
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
18
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
- * GNU Affero General Public License for more details.
20
- *
21
- * You should have received a copy of the GNU Affero General Public License
22
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
23
- *
24
- */
25
4
  const storage = getBuilder("nextcloud-vue").persist(true).build();
26
5
  let emojiIndex;
27
6
  var EmojiSkinTone = /* @__PURE__ */ ((EmojiSkinTone2) => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emoji-Ba55f8iV.mjs","sources":["../../src/functions/emoji/emoji.ts"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getBuilder } from '@nextcloud/browser-storage'\nimport { EmojiIndex, frequently } from 'emoji-mart-vue-fast'\n\nimport data from 'emoji-mart-vue-fast/data/all.json'\n\nconst storage = getBuilder('nextcloud-vue').persist(true).build()\n\n// Shared emoji index and skinTone for all emojiSearch function calls\n// Will be initialized on the first call\nlet emojiIndex\n\n/**\n * Skin tones supported by Unicode Emojis (Fitzpatrick scale)\n * The numeric values align with `emoji-mart-vue`\n */\nexport enum EmojiSkinTone {\n\tNeutral = 1,\n\tLight = 2,\n\tMediumLight = 3,\n\tMedium = 4,\n\tMediumDark = 5,\n\tDark = 6,\n}\n\n/**\n * @param {string} query Emoji search string\n * @param {number} maxResults Maximum of returned emojis\n * @return {Array} list of found emojis\n */\nexport const emojiSearch = (query: string, maxResults: number = 10) => {\n\t// If this is the first call of function - initialize EmojiIndex\n\tif (!emojiIndex) {\n\t\temojiIndex = new EmojiIndex(data)\n\t}\n\tconst currentSkinTone = getCurrentSkinTone()\n\n\tlet results\n\tif (query) {\n\t\tresults = emojiIndex.search(`:${query}`, maxResults)\n\t\tif (results.length < maxResults) {\n\t\t\tresults = results.concat(emojiIndex.search(query, maxResults - results.length))\n\t\t}\n\t} else {\n\t\tresults = frequently.get(maxResults).map((id: number) => emojiIndex.emoji(id)) || []\n\t}\n\n\treturn results.map((emoji) => emoji.getSkin(currentSkinTone))\n}\n\nexport const emojiAddRecent = function(id) {\n\tfrequently.add(id)\n}\n\n/**\n * Get the current skin tone index used for emojis\n * @return {EmojiSkinTone} The skin tone\n */\nexport const getCurrentSkinTone = () => {\n\tconst skinTone = Number.parseInt(storage.getItem('NcEmojiPicker::currentSkinTone') ?? '1')\n\t// Clamp skinTone to valid ranges\n\treturn Math.min(Math.max(skinTone, EmojiSkinTone.Neutral), EmojiSkinTone.Dark)\n}\n\n/**\n * Set the current active skin tone for emojis\n * @param {EmojiSkinTone} skinTone Skin tone\n */\nexport const setCurrentSkinTone = (skinTone: EmojiSkinTone) => {\n\t// Clamp skinTone to valid ranges\n\tskinTone = Math.min(Math.max(skinTone, EmojiSkinTone.Neutral), EmojiSkinTone.Dark)\n\tstorage.setItem('NcEmojiPicker::currentSkinTone', skinTone.toString())\n}\n"],"names":["EmojiSkinTone"],"mappings":";;;AAUA,MAAM,UAAU,WAAW,eAAe,EAAE,QAAQ,IAAI,EAAE;AAI1D,IAAI;AAMQ,IAAA,kCAAAA,mBAAL;AACNA,iBAAAA,eAAA,aAAU,CAAV,IAAA;AACAA,iBAAAA,eAAA,WAAQ,CAAR,IAAA;AACAA,iBAAAA,eAAA,iBAAc,CAAd,IAAA;AACAA,iBAAAA,eAAA,YAAS,CAAT,IAAA;AACAA,iBAAAA,eAAA,gBAAa,CAAb,IAAA;AACAA,iBAAAA,eAAA,UAAO,CAAP,IAAA;AANWA,SAAAA;AAAA,GAAA,iBAAA,CAAA,CAAA;AAcL,MAAM,cAAc,CAAC,OAAe,aAAqB,OAAO;AAEtE,MAAI,CAAC,YAAY;AACH,iBAAA,IAAI,WAAW,IAAI;AAAA,EACjC;AACA,QAAM,kBAAkB;AAEpB,MAAA;AACJ,MAAI,OAAO;AACV,cAAU,WAAW,OAAO,IAAI,KAAK,IAAI,UAAU;AAC/C,QAAA,QAAQ,SAAS,YAAY;AACtB,gBAAA,QAAQ,OAAO,WAAW,OAAO,OAAO,aAAa,QAAQ,MAAM,CAAC;AAAA,IAC/E;AAAA,EAAA,OACM;AACN,cAAU,WAAW,IAAI,UAAU,EAAE,IAAI,CAAC,OAAe,WAAW,MAAM,EAAE,CAAC,KAAK,CAAA;AAAA,EACnF;AAEA,SAAO,QAAQ,IAAI,CAAC,UAAU,MAAM,QAAQ,eAAe,CAAC;AAC7D;AAEa,MAAA,iBAAiB,SAAS,IAAI;AAC1C,aAAW,IAAI,EAAE;AAClB;AAMO,MAAM,qBAAqB,MAAM;AACvC,QAAM,WAAW,OAAO,SAAS,QAAQ,QAAQ,gCAAgC,KAAK,GAAG;AAEzF,SAAO,KAAK;AAAA,IAAI,KAAK;AAAA,MAAI;AAAA,MAAU;AAAA;AAAA,IAAA;AAAA,IAAwB;AAAA;AAAA;AAC5D;AAMa,MAAA,qBAAqB,CAAC,aAA4B;AAE9D,aAAW,KAAK;AAAA,IAAI,KAAK;AAAA,MAAI;AAAA,MAAU;AAAA;AAAA;IAAwB;AAAA;AAAA;AAC/D,UAAQ,QAAQ,kCAAkC,SAAS,SAAU,CAAA;AACtE;"}
@@ -0,0 +1,7 @@
1
+ const getTrapStack = function() {
2
+ Object.assign(window, { _nc_focus_trap: window._nc_focus_trap || [] });
3
+ return window._nc_focus_trap;
4
+ };
5
+ export {
6
+ getTrapStack as g
7
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focusTrap-Cecv_gjR.mjs","sources":["../../src/utils/focusTrap.js"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * Return the default global focus trap stack\n *\n * @return {import('focus-trap').FocusTrap[]}\n */\nexport const getTrapStack = function() {\n\t// Create global stack if undefined\n\tObject.assign(window, { _nc_focus_trap: window._nc_focus_trap || [] })\n\n\treturn window._nc_focus_trap\n}\n"],"names":[],"mappings":"AAUY,MAAC,eAAe,WAAW;AAEtC,SAAO,OAAO,QAAQ,EAAE,gBAAgB,OAAO,kBAAkB,CAAA,GAAI;AAErE,SAAO,OAAO;AACf;"}
@@ -0,0 +1,11 @@
1
+ import { generateUrl } from "@nextcloud/router";
2
+ const getAvatarUrl = (user, size, isGuest) => {
3
+ const darkTheme = window.getComputedStyle(document.body).getPropertyValue("--background-invert-if-dark") === "invert(100%)";
4
+ return generateUrl("/avatar" + (isGuest ? "/guest" : "") + "/{user}/{size}" + (darkTheme ? "/dark" : ""), {
5
+ user,
6
+ size
7
+ });
8
+ };
9
+ export {
10
+ getAvatarUrl as g
11
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAvatarUrl-DxvUjKMi.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'\n\nexport const getAvatarUrl = (user: string, size: number | string, isGuest?: boolean): string => {\n\tconst darkTheme = window.getComputedStyle(document.body)\n\t\t.getPropertyValue('--background-invert-if-dark') === 'invert(100%)'\n\n\treturn generateUrl('/avatar' + (isGuest ? '/guest' : '') + '/{user}/{size}' + (darkTheme ? '/dark' : ''), {\n\t\tuser,\n\t\tsize,\n\t})\n}\n"],"names":[],"mappings":";AAOO,MAAM,eAAe,CAAC,MAAc,MAAuB,YAA8B;AACzF,QAAA,YAAY,OAAO,iBAAiB,SAAS,IAAI,EACrD,iBAAiB,6BAA6B,MAAM;AAE/C,SAAA,YAAY,aAAa,UAAU,WAAW,MAAM,oBAAoB,YAAY,UAAU,KAAK;AAAA,IACzG;AAAA,IACA;AAAA,EAAA,CACA;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index-CtoB4eIp.mjs","sources":["../../src/functions/reference/widgets.ts","../../src/functions/reference/customPickerElements.js"],"sourcesContent":["interface WidgetRenderProperties {\n\trichObjectType: string;\n\trichObject: object;\n\taccessible: boolean;\n\tinteractive: boolean;\n}\n\ntype widgetRenderCallback = (el: HTMLElement, properties: WidgetRenderProperties) => void;\ntype widgetDestroyCallback = (el: HTMLElement) => void;\n\ninterface WidgetProps {\n\tid: string;\n\thasInteractiveView: boolean;\n\tfullWidth: boolean;\n\tcallback: widgetRenderCallback;\n\tonDestroy: widgetDestroyCallback;\n}\n\ninterface WidgetPropsOptional {\n\thasInteractiveView?: boolean;\n\tfullWidth?: boolean;\n}\n\ndeclare global {\n\tinterface Window {\n\t\t_vue_richtext_widgets: Record<string, WidgetProps>;\n\t\t_registerWidget: (id: string, callback: widgetRenderCallback, onDestroy: widgetDestroyCallback, props: WidgetPropsOptional) => void;\n\t}\n}\n\nif (!window._vue_richtext_widgets) {\n\twindow._vue_richtext_widgets = {}\n}\n\nconst isWidgetRegistered = (id: string) => {\n\treturn !!window._vue_richtext_widgets[id]\n}\n\nconst hasInteractiveView = (id: string) => {\n\treturn !!window._vue_richtext_widgets[id]?.hasInteractiveView\n}\n\nexport const hasFullWidth = (id: string) => {\n\treturn !!window._vue_richtext_widgets[id]?.fullWidth\n}\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst registerWidget = (id: string, callback: widgetRenderCallback, onDestroy = (el: HTMLElement) => {}, props: WidgetPropsOptional) => {\n\tconst propsWithDefaults = {\n\t\thasInteractiveView: true,\n\t\tfullWidth: false,\n\t\t...props,\n\t}\n\n\tif (window._vue_richtext_widgets[id]) {\n\t\tconsole.error('Widget for id ' + id + ' already registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[id] = {\n\t\tid,\n\t\tcallback,\n\t\tonDestroy,\n\t\t...propsWithDefaults,\n\t}\n}\n\nconst renderWidget = (el: HTMLElement, { richObjectType, richObject, accessible, interactive }) => {\n\tif (richObjectType === 'open-graph') {\n\t\treturn\n\t}\n\n\tif (!window._vue_richtext_widgets[richObjectType]) {\n\t\tconsole.error('Widget for rich object type ' + richObjectType + ' not registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[richObjectType].callback(el, { richObjectType, richObject, accessible, interactive })\n}\n\nconst destroyWidget = (richObjectType: string, el: HTMLElement) => {\n\tif (richObjectType === 'open-graph') {\n\t\treturn\n\t}\n\n\tif (!window._vue_richtext_widgets[richObjectType]) {\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[richObjectType].onDestroy(el)\n}\n\nwindow._registerWidget = (id: string, callback: widgetRenderCallback, onDestroy: widgetDestroyCallback, props: WidgetPropsOptional) => {\n\tregisterWidget(id, callback, onDestroy, props)\n}\n\nexport {\n\tregisterWidget,\n\trenderWidget,\n\tdestroyWidget,\n\tisWidgetRegistered,\n\thasInteractiveView,\n}\n","if (!window._vue_richtext_custom_picker_elements) {\n\twindow._vue_richtext_custom_picker_elements = {}\n}\n\n/**\n * Representation of the render callback result\n * It contains a dom element and an object (Vue instance or other fancy things)\n */\nclass NcCustomPickerRenderResult {\n\n\t/**\n\t * @param {HTMLElement} element The HTML element\n\t * @param {object} object The object\n\t */\n\tconstructor(element, object) {\n\t\tthis.element = element\n\t\tthis.object = object\n\t}\n\n}\n\nconst isCustomPickerElementRegistered = (id) => {\n\treturn !!window._vue_richtext_custom_picker_elements[id]\n}\n\nconst getCustomPickerElementSize = (id) => {\n\tconst size = window._vue_richtext_custom_picker_elements[id]?.size\n\tif (['small', 'normal', 'large', 'full'].includes(size)) {\n\t\treturn size\n\t}\n\treturn null\n}\n\nconst registerCustomPickerElement = (id, callback, onDestroy = (el) => {}, size = 'large') => {\n\tif (window._vue_richtext_custom_picker_elements[id]) {\n\t\tconsole.error('Custom reference picker element for id ' + id + ' already registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_custom_picker_elements[id] = {\n\t\tid,\n\t\tcallback,\n\t\tonDestroy,\n\t\tsize,\n\t}\n}\n\nconst renderCustomPickerElement = (el, { providerId, accessible }) => {\n\tif (!window._vue_richtext_custom_picker_elements[providerId]) {\n\t\tconsole.error('Custom reference picker element for reference provider ID ' + providerId + ' not registered')\n\t\treturn\n\t}\n\n\treturn window._vue_richtext_custom_picker_elements[providerId].callback(el, { providerId, accessible })\n}\n\nconst destroyCustomPickerElement = (providerId, el, renderResult) => {\n\tif (!window._vue_richtext_custom_picker_elements[providerId]) {\n\t\treturn\n\t}\n\n\twindow._vue_richtext_custom_picker_elements[providerId].onDestroy(el, renderResult)\n}\n\nwindow._registerCustomPickerElement = registerCustomPickerElement\n\nexport {\n\tNcCustomPickerRenderResult,\n\tregisterCustomPickerElement,\n\trenderCustomPickerElement,\n\tdestroyCustomPickerElement,\n\tisCustomPickerElementRegistered,\n\tgetCustomPickerElementSize,\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-CtoB4eIp.mjs","sources":["../../src/functions/reference/widgets.ts","../../src/functions/reference/customPickerElements.js"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\ninterface WidgetRenderProperties {\n\trichObjectType: string;\n\trichObject: object;\n\taccessible: boolean;\n\tinteractive: boolean;\n}\n\ntype widgetRenderCallback = (el: HTMLElement, properties: WidgetRenderProperties) => void;\ntype widgetDestroyCallback = (el: HTMLElement) => void;\n\ninterface WidgetProps {\n\tid: string;\n\thasInteractiveView: boolean;\n\tfullWidth: boolean;\n\tcallback: widgetRenderCallback;\n\tonDestroy: widgetDestroyCallback;\n}\n\ninterface WidgetPropsOptional {\n\thasInteractiveView?: boolean;\n\tfullWidth?: boolean;\n}\n\ndeclare global {\n\tinterface Window {\n\t\t_vue_richtext_widgets: Record<string, WidgetProps>;\n\t\t_registerWidget: (id: string, callback: widgetRenderCallback, onDestroy: widgetDestroyCallback, props: WidgetPropsOptional) => void;\n\t}\n}\n\nif (!window._vue_richtext_widgets) {\n\twindow._vue_richtext_widgets = {}\n}\n\nconst isWidgetRegistered = (id: string) => {\n\treturn !!window._vue_richtext_widgets[id]\n}\n\nconst hasInteractiveView = (id: string) => {\n\treturn !!window._vue_richtext_widgets[id]?.hasInteractiveView\n}\n\nexport const hasFullWidth = (id: string) => {\n\treturn !!window._vue_richtext_widgets[id]?.fullWidth\n}\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst registerWidget = (id: string, callback: widgetRenderCallback, onDestroy = (el: HTMLElement) => {}, props: WidgetPropsOptional) => {\n\tconst propsWithDefaults = {\n\t\thasInteractiveView: true,\n\t\tfullWidth: false,\n\t\t...props,\n\t}\n\n\tif (window._vue_richtext_widgets[id]) {\n\t\tconsole.error('Widget for id ' + id + ' already registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[id] = {\n\t\tid,\n\t\tcallback,\n\t\tonDestroy,\n\t\t...propsWithDefaults,\n\t}\n}\n\nconst renderWidget = (el: HTMLElement, { richObjectType, richObject, accessible, interactive }) => {\n\tif (richObjectType === 'open-graph') {\n\t\treturn\n\t}\n\n\tif (!window._vue_richtext_widgets[richObjectType]) {\n\t\tconsole.error('Widget for rich object type ' + richObjectType + ' not registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[richObjectType].callback(el, { richObjectType, richObject, accessible, interactive })\n}\n\nconst destroyWidget = (richObjectType: string, el: HTMLElement) => {\n\tif (richObjectType === 'open-graph') {\n\t\treturn\n\t}\n\n\tif (!window._vue_richtext_widgets[richObjectType]) {\n\t\treturn\n\t}\n\n\twindow._vue_richtext_widgets[richObjectType].onDestroy(el)\n}\n\nwindow._registerWidget = (id: string, callback: widgetRenderCallback, onDestroy: widgetDestroyCallback, props: WidgetPropsOptional) => {\n\tregisterWidget(id, callback, onDestroy, props)\n}\n\nexport {\n\tregisterWidget,\n\trenderWidget,\n\tdestroyWidget,\n\tisWidgetRegistered,\n\thasInteractiveView,\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nif (!window._vue_richtext_custom_picker_elements) {\n\twindow._vue_richtext_custom_picker_elements = {}\n}\n\n/**\n * Representation of the render callback result\n * It contains a dom element and an object (Vue instance or other fancy things)\n */\nclass NcCustomPickerRenderResult {\n\n\t/**\n\t * @param {HTMLElement} element The HTML element\n\t * @param {object} object The object\n\t */\n\tconstructor(element, object) {\n\t\tthis.element = element\n\t\tthis.object = object\n\t}\n\n}\n\nconst isCustomPickerElementRegistered = (id) => {\n\treturn !!window._vue_richtext_custom_picker_elements[id]\n}\n\nconst getCustomPickerElementSize = (id) => {\n\tconst size = window._vue_richtext_custom_picker_elements[id]?.size\n\tif (['small', 'normal', 'large', 'full'].includes(size)) {\n\t\treturn size\n\t}\n\treturn null\n}\n\nconst registerCustomPickerElement = (id, callback, onDestroy = (el) => {}, size = 'large') => {\n\tif (window._vue_richtext_custom_picker_elements[id]) {\n\t\tconsole.error('Custom reference picker element for id ' + id + ' already registered')\n\t\treturn\n\t}\n\n\twindow._vue_richtext_custom_picker_elements[id] = {\n\t\tid,\n\t\tcallback,\n\t\tonDestroy,\n\t\tsize,\n\t}\n}\n\nconst renderCustomPickerElement = (el, { providerId, accessible }) => {\n\tif (!window._vue_richtext_custom_picker_elements[providerId]) {\n\t\tconsole.error('Custom reference picker element for reference provider ID ' + providerId + ' not registered')\n\t\treturn\n\t}\n\n\treturn window._vue_richtext_custom_picker_elements[providerId].callback(el, { providerId, accessible })\n}\n\nconst destroyCustomPickerElement = (providerId, el, renderResult) => {\n\tif (!window._vue_richtext_custom_picker_elements[providerId]) {\n\t\treturn\n\t}\n\n\twindow._vue_richtext_custom_picker_elements[providerId].onDestroy(el, renderResult)\n}\n\nwindow._registerCustomPickerElement = registerCustomPickerElement\n\nexport {\n\tNcCustomPickerRenderResult,\n\tregisterCustomPickerElement,\n\trenderCustomPickerElement,\n\tdestroyCustomPickerElement,\n\tisCustomPickerElementRegistered,\n\tgetCustomPickerElementSize,\n}\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import '../assets/NcMentionBubble-DmzU72Mw.css';
2
- import { g as getAvatarUrl } from "./getAvatarUrl-BBvqBOJD.mjs";
1
+ import '../assets/NcMentionBubble-C6t8od-_.css';
2
+ import { g as getAvatarUrl } from "./getAvatarUrl-DxvUjKMi.mjs";
3
3
  import { openBlock, createElementBlock, normalizeClass, createElementVNode, normalizeStyle, toDisplayString, createApp } from "vue";
4
4
  /* empty css */
5
5
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
6
- import { L as Linkify } from "./Linkify-BBPJHBma.mjs";
6
+ import { L as Linkify } from "./Linkify-BtgR-dXX.mjs";
7
7
  import escapeHtml from "escape-html";
8
8
  import stripTags from "striptags";
9
9
  const _sfc_main = {
@@ -90,28 +90,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
90
90
  ])
91
91
  ], 2);
92
92
  }
93
- const NcMentionBubble = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-791c3b28"]]);
94
- /**
95
- * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
96
- *
97
- * @author John Molakvoæ <skjnldsv@protonmail.com>
98
- *
99
- * @license AGPL-3.0-or-later
100
- *
101
- * This program is free software: you can redistribute it and/or modify
102
- * it under the terms of the GNU Affero General Public License as
103
- * published by the Free Software Foundation, either version 3 of the
104
- * License, or (at your option) any later version.
105
- *
106
- * This program is distributed in the hope that it will be useful,
107
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
108
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
109
- * GNU Affero General Public License for more details.
110
- *
111
- * You should have received a copy of the GNU Affero General Public License
112
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
113
- *
114
- */
93
+ const NcMentionBubble = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-a519576f"]]);
115
94
  const MENTION_START = new RegExp("\\B(?<![^a-z0-9_\\-@.'\\s])").source;
116
95
  const MENTION_SIMPLE = /(@[a-z0-9_\-@.']+)/.source;
117
96
  const MENTION_GUEST = /@&quot;guest\/[a-f0-9]+&quot;/.source;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CyNq54HS.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--primary': primary}\"\n\t\tclass=\"mention-bubble\"\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 { 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\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? this.getAvatarUrl(this.id, 44)\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\tmethods: {\n\t\tgetAvatarUrl,\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\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-right: $bubble-padding * 3;\n\t\tpadding-left: $bubble-padding;\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-left: $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\tleft: -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'\nimport Linkify from '../../utils/Linkify.js'\n\nimport escapeHtml from 'escape-html'\nimport stripTags from 'striptags'\nimport { createApp } 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. Non-capturing group within word boundary\nconst MENTION_START = /\\B(?<![^a-z0-9_\\-@.'\\s])/.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 = /@&quot;guest\\/[a-f0-9]+&quot;/.source\nconst MENTION_PREFIXED = /@&quot;(?:federated_)?(?:group|team|user){1}\\/[a-z0-9_\\-@.' /:]+&quot;/.source\nconst MENTION_WITH_SPACE = /@&quot;[a-z0-9_\\-@.' ]+&quot;/.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\t// This part doesn't contain a mention, let's make sure links are parsed\n\t\t\t\t\t\treturn Linkify(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(/&quot;/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(/&amp;/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// Consecutive spaces in HTML tags should collapse\n\t\t\ttext = text.replace(/>\\s+</g, '><')\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(/&nbsp;/gmi, ' ')\n\t\t\ttext = text.replace(/&amp;/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 of new lines and tabs\n\t\t\treturn this.renderComponentHtml(data, NcMentionBubble).replace(/[\\n\\t]/gmi, '')\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} props 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(props, component) {\n\t\t\tconst Item = createApp(component, {\n\t\t\t\t...props,\n\t\t\t})\n\n\t\t\t// Prepare mountpoint\n\t\t\tconst mount = document.createElement('div')\n\t\t\tmount.style.display = 'none'\n\t\t\tdocument.body.appendChild(mount)\n\n\t\t\t// Mount and get raw html\n\t\t\tItem.mount(mount)\n\t\t\tconst renderedHtml = mount.innerHTML\n\n\t\t\t// Destroy\n\t\t\tItem.unmount()\n\t\t\tmount.remove()\n\n\t\t\treturn renderedHtml\n\t\t},\n\t},\n}\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_toDisplayString"],"mappings":"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"}