@nextcloud/vue 8.12.0 → 8.14.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.
Files changed (797) hide show
  1. package/CHANGELOG.md +68 -2
  2. package/README.md +5 -0
  3. package/dist/Components/NcActionButton.cjs +3 -3
  4. package/dist/Components/NcActionButton.cjs.map +1 -1
  5. package/dist/Components/NcActionButton.mjs +3 -3
  6. package/dist/Components/NcActionButton.mjs.map +1 -1
  7. package/dist/Components/NcActionButtonGroup.cjs +1 -1
  8. package/dist/Components/NcActionButtonGroup.mjs +1 -1
  9. package/dist/Components/NcActionCaption.cjs +2 -2
  10. package/dist/Components/NcActionCaption.cjs.map +1 -1
  11. package/dist/Components/NcActionCaption.mjs +2 -2
  12. package/dist/Components/NcActionCaption.mjs.map +1 -1
  13. package/dist/Components/NcActionCheckbox.cjs +6 -8
  14. package/dist/Components/NcActionCheckbox.cjs.map +1 -1
  15. package/dist/Components/NcActionCheckbox.mjs +6 -8
  16. package/dist/Components/NcActionCheckbox.mjs.map +1 -1
  17. package/dist/Components/NcActionInput.cjs +1 -1
  18. package/dist/Components/NcActionInput.mjs +1 -1
  19. package/dist/Components/NcActionLink.cjs +3 -3
  20. package/dist/Components/NcActionLink.cjs.map +1 -1
  21. package/dist/Components/NcActionLink.mjs +3 -3
  22. package/dist/Components/NcActionLink.mjs.map +1 -1
  23. package/dist/Components/NcActionRadio.cjs +6 -8
  24. package/dist/Components/NcActionRadio.cjs.map +1 -1
  25. package/dist/Components/NcActionRadio.mjs +6 -8
  26. package/dist/Components/NcActionRadio.mjs.map +1 -1
  27. package/dist/Components/NcActionRouter.cjs +3 -3
  28. package/dist/Components/NcActionRouter.cjs.map +1 -1
  29. package/dist/Components/NcActionRouter.mjs +3 -3
  30. package/dist/Components/NcActionRouter.mjs.map +1 -1
  31. package/dist/Components/NcActionSeparator.cjs +2 -2
  32. package/dist/Components/NcActionSeparator.cjs.map +1 -1
  33. package/dist/Components/NcActionSeparator.mjs +2 -2
  34. package/dist/Components/NcActionSeparator.mjs.map +1 -1
  35. package/dist/Components/NcActionText.cjs +3 -3
  36. package/dist/Components/NcActionText.cjs.map +1 -1
  37. package/dist/Components/NcActionText.mjs +3 -3
  38. package/dist/Components/NcActionText.mjs.map +1 -1
  39. package/dist/Components/NcActionTextEditable.cjs +4 -4
  40. package/dist/Components/NcActionTextEditable.cjs.map +1 -1
  41. package/dist/Components/NcActionTextEditable.mjs +4 -4
  42. package/dist/Components/NcActionTextEditable.mjs.map +1 -1
  43. package/dist/Components/NcActions.cjs +1 -1
  44. package/dist/Components/NcActions.mjs +1 -1
  45. package/dist/Components/NcAppContent.cjs +1 -1
  46. package/dist/Components/NcAppContent.mjs +1 -1
  47. package/dist/Components/NcAppContentDetails.cjs.map +1 -1
  48. package/dist/Components/NcAppContentDetails.mjs.map +1 -1
  49. package/dist/Components/NcAppContentList.cjs.map +1 -1
  50. package/dist/Components/NcAppContentList.mjs.map +1 -1
  51. package/dist/Components/NcAppNavigation.cjs +1 -1
  52. package/dist/Components/NcAppNavigation.mjs +1 -1
  53. package/dist/Components/NcAppNavigationCaption.cjs +1 -1
  54. package/dist/Components/NcAppNavigationCaption.mjs +1 -1
  55. package/dist/Components/NcAppNavigationIconBullet.cjs +2 -2
  56. package/dist/Components/NcAppNavigationIconBullet.cjs.map +1 -1
  57. package/dist/Components/NcAppNavigationIconBullet.mjs +2 -2
  58. package/dist/Components/NcAppNavigationIconBullet.mjs.map +1 -1
  59. package/dist/Components/NcAppNavigationItem.cjs +1 -1
  60. package/dist/Components/NcAppNavigationItem.mjs +1 -1
  61. package/dist/Components/NcAppNavigationList.cjs +2 -2
  62. package/dist/Components/NcAppNavigationList.cjs.map +1 -1
  63. package/dist/Components/NcAppNavigationList.mjs +2 -2
  64. package/dist/Components/NcAppNavigationList.mjs.map +1 -1
  65. package/dist/Components/NcAppNavigationNew.cjs +2 -2
  66. package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
  67. package/dist/Components/NcAppNavigationNew.mjs +2 -2
  68. package/dist/Components/NcAppNavigationNew.mjs.map +1 -1
  69. package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
  70. package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
  71. package/dist/Components/NcAppNavigationSettings.cjs +1 -1
  72. package/dist/Components/NcAppNavigationSettings.mjs +1 -1
  73. package/dist/Components/NcAppNavigationSpacer.cjs +2 -2
  74. package/dist/Components/NcAppNavigationSpacer.cjs.map +1 -1
  75. package/dist/Components/NcAppNavigationSpacer.mjs +2 -2
  76. package/dist/Components/NcAppNavigationSpacer.mjs.map +1 -1
  77. package/dist/Components/NcAppNavigationToggle.cjs +1 -21
  78. package/dist/Components/NcAppNavigationToggle.cjs.map +1 -1
  79. package/dist/Components/NcAppNavigationToggle.mjs +1 -21
  80. package/dist/Components/NcAppNavigationToggle.mjs.map +1 -1
  81. package/dist/Components/NcAppSettingsDialog.cjs +1 -1
  82. package/dist/Components/NcAppSettingsDialog.mjs +1 -1
  83. package/dist/Components/NcAppSettingsSection.cjs +3 -3
  84. package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
  85. package/dist/Components/NcAppSettingsSection.mjs +3 -3
  86. package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
  87. package/dist/Components/NcAppSidebar.cjs +1 -1
  88. package/dist/Components/NcAppSidebar.mjs +1 -1
  89. package/dist/Components/NcAppSidebarTab.cjs +2 -2
  90. package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
  91. package/dist/Components/NcAppSidebarTab.mjs +2 -2
  92. package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
  93. package/dist/Components/NcAvatar.cjs +1 -1
  94. package/dist/Components/NcAvatar.mjs +1 -1
  95. package/dist/Components/NcBreadcrumb.cjs +1 -1
  96. package/dist/Components/NcBreadcrumb.mjs +1 -1
  97. package/dist/Components/NcBreadcrumbs.cjs +1 -1
  98. package/dist/Components/NcBreadcrumbs.mjs +1 -1
  99. package/dist/Components/NcButton.cjs +15 -3
  100. package/dist/Components/NcButton.cjs.map +1 -1
  101. package/dist/Components/NcButton.mjs +15 -3
  102. package/dist/Components/NcButton.mjs.map +1 -1
  103. package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
  104. package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
  105. package/dist/Components/NcChip.cjs +111 -0
  106. package/dist/Components/NcChip.cjs.map +1 -0
  107. package/dist/Components/NcChip.mjs +112 -0
  108. package/dist/Components/NcChip.mjs.map +1 -0
  109. package/dist/Components/NcCollectionList.cjs +3 -0
  110. package/dist/Components/NcCollectionList.cjs.map +1 -0
  111. package/dist/Components/NcCollectionList.mjs +4 -0
  112. package/dist/Components/NcCollectionList.mjs.map +1 -0
  113. package/dist/Components/NcColorPicker.cjs +1 -1
  114. package/dist/Components/NcColorPicker.mjs +1 -1
  115. package/dist/Components/NcContent.cjs +1 -1
  116. package/dist/Components/NcContent.mjs +1 -1
  117. package/dist/Components/NcCounterBubble.cjs +2 -2
  118. package/dist/Components/NcCounterBubble.cjs.map +1 -1
  119. package/dist/Components/NcCounterBubble.mjs +2 -2
  120. package/dist/Components/NcCounterBubble.mjs.map +1 -1
  121. package/dist/Components/NcDashboardWidget.cjs +1 -1
  122. package/dist/Components/NcDashboardWidget.mjs +1 -1
  123. package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
  124. package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
  125. package/dist/Components/NcDateTime.cjs +1 -1
  126. package/dist/Components/NcDateTime.mjs +1 -1
  127. package/dist/Components/NcDateTimePicker.cjs +8 -29
  128. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  129. package/dist/Components/NcDateTimePicker.mjs +8 -29
  130. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  131. package/dist/Components/NcDateTimePickerNative.cjs +3 -24
  132. package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
  133. package/dist/Components/NcDateTimePickerNative.mjs +3 -24
  134. package/dist/Components/NcDateTimePickerNative.mjs.map +1 -1
  135. package/dist/Components/NcDialog.cjs +1 -1
  136. package/dist/Components/NcDialog.mjs +1 -1
  137. package/dist/Components/NcDialogButton.cjs +1 -1
  138. package/dist/Components/NcDialogButton.mjs +1 -1
  139. package/dist/Components/NcEllipsisedOption.cjs +9 -3
  140. package/dist/Components/NcEllipsisedOption.cjs.map +1 -1
  141. package/dist/Components/NcEllipsisedOption.mjs +9 -3
  142. package/dist/Components/NcEllipsisedOption.mjs.map +1 -1
  143. package/dist/Components/NcEmojiPicker.cjs +1 -1
  144. package/dist/Components/NcEmojiPicker.mjs +1 -1
  145. package/dist/Components/NcEmptyContent.cjs +2 -2
  146. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  147. package/dist/Components/NcEmptyContent.mjs +2 -2
  148. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  149. package/dist/Components/NcGuestContent.cjs +2 -2
  150. package/dist/Components/NcGuestContent.cjs.map +1 -1
  151. package/dist/Components/NcGuestContent.mjs +2 -2
  152. package/dist/Components/NcGuestContent.mjs.map +1 -1
  153. package/dist/Components/NcHeaderMenu.cjs +1 -1
  154. package/dist/Components/NcHeaderMenu.mjs +1 -1
  155. package/dist/Components/NcHighlight.cjs +1 -1
  156. package/dist/Components/NcHighlight.mjs +1 -1
  157. package/dist/Components/NcIconSvgWrapper.cjs +1 -1
  158. package/dist/Components/NcIconSvgWrapper.mjs +1 -1
  159. package/dist/Components/NcInputField.cjs +3 -3
  160. package/dist/Components/NcInputField.cjs.map +1 -1
  161. package/dist/Components/NcInputField.mjs +3 -3
  162. package/dist/Components/NcInputField.mjs.map +1 -1
  163. package/dist/Components/NcListItem.cjs +1 -1
  164. package/dist/Components/NcListItem.mjs +1 -1
  165. package/dist/Components/NcListItemIcon.cjs +1 -1
  166. package/dist/Components/NcListItemIcon.mjs +1 -1
  167. package/dist/Components/NcLoadingIcon.cjs +2 -2
  168. package/dist/Components/NcLoadingIcon.cjs.map +1 -1
  169. package/dist/Components/NcLoadingIcon.mjs +2 -2
  170. package/dist/Components/NcLoadingIcon.mjs.map +1 -1
  171. package/dist/Components/NcModal.cjs +32 -55
  172. package/dist/Components/NcModal.cjs.map +1 -1
  173. package/dist/Components/NcModal.mjs +30 -55
  174. package/dist/Components/NcModal.mjs.map +1 -1
  175. package/dist/Components/NcNoteCard.cjs +2 -2
  176. package/dist/Components/NcNoteCard.cjs.map +1 -1
  177. package/dist/Components/NcNoteCard.mjs +2 -2
  178. package/dist/Components/NcNoteCard.mjs.map +1 -1
  179. package/dist/Components/NcPasswordField.cjs +1 -1
  180. package/dist/Components/NcPasswordField.mjs +1 -1
  181. package/dist/Components/NcPopover.cjs +1 -1
  182. package/dist/Components/NcPopover.mjs +1 -1
  183. package/dist/Components/NcProgressBar.cjs +1 -1
  184. package/dist/Components/NcProgressBar.mjs +1 -1
  185. package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
  186. package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
  187. package/dist/Components/NcRichContenteditable.cjs +2 -2
  188. package/dist/Components/NcRichContenteditable.mjs +2 -2
  189. package/dist/Components/NcRichText.cjs +2 -23
  190. package/dist/Components/NcRichText.cjs.map +1 -1
  191. package/dist/Components/NcRichText.mjs +3 -24
  192. package/dist/Components/NcRichText.mjs.map +1 -1
  193. package/dist/Components/NcSelect.cjs +1 -1
  194. package/dist/Components/NcSelect.mjs +1 -1
  195. package/dist/Components/NcSelectTags.cjs +1 -1
  196. package/dist/Components/NcSelectTags.mjs +1 -1
  197. package/dist/Components/NcSettingsInputText.cjs +1 -1
  198. package/dist/Components/NcSettingsInputText.mjs +1 -1
  199. package/dist/Components/NcSettingsSection.cjs +1 -1
  200. package/dist/Components/NcSettingsSection.mjs +1 -1
  201. package/dist/Components/NcSettingsSelectGroup.cjs +1 -22
  202. package/dist/Components/NcSettingsSelectGroup.cjs.map +1 -1
  203. package/dist/Components/NcSettingsSelectGroup.mjs +1 -22
  204. package/dist/Components/NcSettingsSelectGroup.mjs.map +1 -1
  205. package/dist/Components/NcTextArea.cjs +3 -3
  206. package/dist/Components/NcTextArea.cjs.map +1 -1
  207. package/dist/Components/NcTextArea.mjs +3 -3
  208. package/dist/Components/NcTextArea.mjs.map +1 -1
  209. package/dist/Components/NcTextField.cjs +1 -1
  210. package/dist/Components/NcTextField.mjs +1 -1
  211. package/dist/Components/NcTimezonePicker.cjs +1 -1
  212. package/dist/Components/NcTimezonePicker.mjs +1 -1
  213. package/dist/Components/NcUserBubble.cjs +1 -1
  214. package/dist/Components/NcUserBubble.mjs +1 -1
  215. package/dist/Components/NcUserStatusIcon.cjs +1 -1
  216. package/dist/Components/NcUserStatusIcon.mjs +1 -1
  217. package/dist/Components/NcVNodes.cjs.map +1 -1
  218. package/dist/Components/NcVNodes.mjs.map +1 -1
  219. package/dist/Composables/useIsFullscreen.cjs +0 -21
  220. package/dist/Composables/useIsFullscreen.cjs.map +1 -1
  221. package/dist/Composables/useIsFullscreen.mjs +0 -21
  222. package/dist/Composables/useIsFullscreen.mjs.map +1 -1
  223. package/dist/Composables/useIsMobile.cjs +0 -21
  224. package/dist/Composables/useIsMobile.cjs.map +1 -1
  225. package/dist/Composables/useIsMobile.mjs +0 -21
  226. package/dist/Composables/useIsMobile.mjs.map +1 -1
  227. package/dist/Directives/Focus.cjs +0 -21
  228. package/dist/Directives/Focus.cjs.map +1 -1
  229. package/dist/Directives/Focus.mjs +0 -21
  230. package/dist/Directives/Focus.mjs.map +1 -1
  231. package/dist/Directives/Linkify.cjs +1 -1
  232. package/dist/Directives/Linkify.cjs.map +1 -1
  233. package/dist/Directives/Linkify.mjs +1 -1
  234. package/dist/Directives/Linkify.mjs.map +1 -1
  235. package/dist/Directives/Tooltip.cjs +1 -23
  236. package/dist/Directives/Tooltip.cjs.map +1 -1
  237. package/dist/Directives/Tooltip.mjs +1 -23
  238. package/dist/Directives/Tooltip.mjs.map +1 -1
  239. package/dist/Functions/a11y.cjs +0 -21
  240. package/dist/Functions/a11y.cjs.map +1 -1
  241. package/dist/Functions/a11y.mjs +0 -21
  242. package/dist/Functions/a11y.mjs.map +1 -1
  243. package/dist/Functions/emoji.cjs +1 -1
  244. package/dist/Functions/emoji.mjs +1 -1
  245. package/dist/Functions/reference.cjs +1 -1
  246. package/dist/Functions/reference.mjs +1 -1
  247. package/dist/Functions/usernameToColor.cjs +1 -1
  248. package/dist/Functions/usernameToColor.mjs +1 -1
  249. package/dist/Mixins/clickOutsideOptions.cjs +0 -21
  250. package/dist/Mixins/clickOutsideOptions.cjs.map +1 -1
  251. package/dist/Mixins/clickOutsideOptions.mjs +0 -21
  252. package/dist/Mixins/clickOutsideOptions.mjs.map +1 -1
  253. package/dist/Mixins/isFullscreen.cjs +0 -21
  254. package/dist/Mixins/isFullscreen.cjs.map +1 -1
  255. package/dist/Mixins/isFullscreen.mjs +0 -21
  256. package/dist/Mixins/isFullscreen.mjs.map +1 -1
  257. package/dist/Mixins/isMobile.cjs +0 -21
  258. package/dist/Mixins/isMobile.cjs.map +1 -1
  259. package/dist/Mixins/isMobile.mjs +0 -21
  260. package/dist/Mixins/isMobile.mjs.map +1 -1
  261. package/dist/Mixins/richEditor.cjs +2 -2
  262. package/dist/Mixins/richEditor.mjs +2 -2
  263. package/dist/assets/NcActionButton-D90PTEA5.css +107 -0
  264. package/dist/assets/{NcActionButtonGroup-CvloX35s.css → NcActionButtonGroup-CQxLn2fv.css} +6 -20
  265. package/dist/assets/NcActionCaption-B7FZTc3Y.css +32 -0
  266. package/dist/assets/NcActionCheckbox-C-PJVvtb.css +78 -0
  267. package/dist/assets/NcActionInput-C_3Csa6A.css +220 -0
  268. package/dist/assets/NcActionLink-Db_ZlqWs.css +92 -0
  269. package/dist/assets/NcActionRadio-CpCvyMa_.css +78 -0
  270. package/dist/assets/NcActionRouter-DidTlbov.css +103 -0
  271. package/dist/assets/NcActionSeparator-CEbb5P6P.css +24 -0
  272. package/dist/assets/NcActionText-DCx1DWXe.css +107 -0
  273. package/dist/assets/NcActionTextEditable-Dud9NOdm.css +238 -0
  274. package/dist/assets/NcActions-JDMMURyt.css +83 -0
  275. package/dist/assets/NcAppContent-B1ZWQTUv.css +125 -0
  276. package/dist/assets/NcAppNavigation-DvCTUTpR.css +103 -0
  277. package/dist/assets/NcAppNavigationCaption-Cgexlz2n.css +48 -0
  278. package/dist/assets/NcAppNavigationIconBullet-By_0o2dG.css +30 -0
  279. package/dist/assets/NcAppNavigationItem-Cas1plMr.css +211 -0
  280. package/dist/assets/NcAppNavigationList-BIbyyT7b.css +29 -0
  281. package/dist/assets/NcAppNavigationNew-BKfawNII.css +27 -0
  282. package/dist/assets/{NcAppNavigationNewItem-DF3nldsK.css → NcAppNavigationNewItem-Dw2sHtEO.css} +58 -68
  283. package/dist/assets/NcAppNavigationSettings-DtCFYPKb.css +79 -0
  284. package/dist/assets/NcAppNavigationSpacer-CfNqmQeR.css +6 -0
  285. package/dist/assets/NcAppNavigationToggle-DvYpNzHv.css +27 -0
  286. package/dist/assets/NcAppSettingsDialog-YgAGku7I.css +74 -0
  287. package/dist/assets/NcAppSettingsSection-AUZ2NjMX.css +30 -0
  288. package/dist/assets/{NcAppSidebar-DixS4RLm.css → NcAppSidebar-GLK326IR.css} +126 -172
  289. package/dist/assets/NcAppSidebarTab-BieYhqvk.css +34 -0
  290. package/dist/assets/NcAvatar-m0lTnGXX.css +129 -0
  291. package/dist/assets/NcBreadcrumb-DOvK-XG1.css +68 -0
  292. package/dist/assets/NcBreadcrumbs-CPUAM38l.css +37 -0
  293. package/dist/assets/NcButton-BHxZm42y.css +210 -0
  294. package/dist/assets/{NcCheckboxRadioSwitch-DArK1Q95.css → NcCheckboxRadioSwitch-BkBep4wT.css} +58 -86
  295. package/dist/assets/NcChip-CQm1mq2C.css +61 -0
  296. package/dist/assets/NcCollectionList-ETQTqkqt.css +221 -0
  297. package/dist/assets/NcColorPicker-Ctv2cwt1.css +122 -0
  298. package/dist/assets/NcContent--2CGtswk.css +82 -0
  299. package/dist/assets/NcCounterBubble-BlAq2Vim.css +53 -0
  300. package/dist/assets/NcDashboardWidget-CpstyXok.css +73 -0
  301. package/dist/assets/NcDashboardWidgetItem-Qe5SSOhA.css +85 -0
  302. package/dist/assets/{NcDateTimePicker-3FfsWOh0.css → NcDateTimePicker-BR1KY59N.css} +39 -77
  303. package/dist/assets/NcDateTimePickerNative-BAcKr0B3.css +47 -0
  304. package/dist/assets/NcDialog-j6_6dpiF.css +132 -0
  305. package/dist/assets/NcEllipsisedOption-DZK2vWD1.css +34 -0
  306. package/dist/assets/{NcEmojiPicker-XL3oUsqE.css → NcEmojiPicker-ielwHIhs.css} +16 -44
  307. package/dist/assets/NcEmptyContent-BU0QVo3d.css +65 -0
  308. package/dist/assets/NcGuestContent-BLJ37yLM.css +50 -0
  309. package/dist/assets/NcHeaderMenu-CuAI7Fgb.css +77 -0
  310. package/dist/assets/NcIconSvgWrapper-BwsJ8wBM.css +39 -0
  311. package/dist/assets/NcInputConfirmCancel-SGr0-6w8.css +39 -0
  312. package/dist/assets/{NcInputField-CXoTqF9T.css → NcInputField-CrdP183e.css} +43 -56
  313. package/dist/assets/NcListItem-DTaecNLV.css +156 -0
  314. package/dist/assets/NcListItemIcon-DxPdaRV5.css +64 -0
  315. package/dist/assets/NcLoadingIcon-BSONDy7x.css +21 -0
  316. package/dist/assets/NcMentionBubble-C6t8od-_.css +73 -0
  317. package/dist/assets/NcModal-CYa2IEvm.css +282 -0
  318. package/dist/assets/NcNoteCard-BLPU1den.css +50 -0
  319. package/dist/assets/{NcPopover-BwI1hPzy.css → NcPopover-BDlL00qZ.css} +6 -20
  320. package/dist/assets/NcProgressBar-BsqdCn-x.css +56 -0
  321. package/dist/assets/NcRelatedResourcesPanel-BE9CQ8s8.css +158 -0
  322. package/dist/assets/{NcRichContenteditable-C-eZyVQM.css → NcRichContenteditable-CkvTrjfG.css} +58 -100
  323. package/dist/assets/NcRichText-BzeK2YTS.css +217 -0
  324. package/dist/assets/{NcSelect-Fmyu7qyl.css → NcSelect-BQt_SpyP.css} +10 -22
  325. package/dist/assets/NcSettingsInputText-DbTNj9E6.css +35 -0
  326. package/dist/assets/NcSettingsSection-DZwOPKg1.css +56 -0
  327. package/dist/assets/NcSettingsSelectGroup-CzD7YrGm.css +23 -0
  328. package/dist/assets/{NcTextArea-XCi8a16Y.css → NcTextArea-D8bZi2fT.css} +30 -42
  329. package/dist/assets/NcUserBubble-DMjZyrGY.css +48 -0
  330. package/dist/assets/NcUserStatusIcon-DMxcdM51.css +30 -0
  331. package/dist/assets/{Tooltip-jHgt4m-W.css → Tooltip-4CSl8xev.css} +10 -30
  332. package/dist/assets/referencePickerModal-9BcmmfUy.css +413 -0
  333. package/dist/chunks/{GenColors-CAUl-IDP.cjs → GenColors-Dt-3yZwf.cjs} +1 -23
  334. package/dist/chunks/GenColors-Dt-3yZwf.cjs.map +1 -0
  335. package/dist/chunks/{GenColors-DcjtQMk3.mjs → GenColors-DtEnxSd9.mjs} +1 -23
  336. package/dist/chunks/GenColors-DtEnxSd9.mjs.map +1 -0
  337. package/dist/chunks/GenRandomId-BQDud3d4.cjs +5 -0
  338. package/dist/chunks/GenRandomId-BQDud3d4.cjs.map +1 -0
  339. package/dist/chunks/GenRandomId-CMooMQt0.mjs +6 -0
  340. package/dist/chunks/GenRandomId-CMooMQt0.mjs.map +1 -0
  341. package/dist/chunks/Linkify-BtgR-dXX.mjs +14 -0
  342. package/dist/chunks/Linkify-BtgR-dXX.mjs.map +1 -0
  343. package/dist/chunks/Linkify-yeOn5L6T.cjs +15 -0
  344. package/dist/chunks/Linkify-yeOn5L6T.cjs.map +1 -0
  345. package/dist/chunks/{NcActionButtonGroup-D650-6zv.mjs → NcActionButtonGroup-B62_HajM.mjs} +3 -3
  346. package/dist/chunks/NcActionButtonGroup-B62_HajM.mjs.map +1 -0
  347. package/dist/chunks/{NcActionButtonGroup-D7hycpXY.cjs → NcActionButtonGroup-DKtkuRy5.cjs} +3 -3
  348. package/dist/chunks/NcActionButtonGroup-DKtkuRy5.cjs.map +1 -0
  349. package/dist/chunks/{NcActionInput-BqG7gSLn.mjs → NcActionInput-DvbN3P1D.mjs} +9 -9
  350. package/dist/chunks/NcActionInput-DvbN3P1D.mjs.map +1 -0
  351. package/dist/chunks/{NcActionInput-CHucaM0V.cjs → NcActionInput-Dw1TL9ig.cjs} +9 -9
  352. package/dist/chunks/NcActionInput-Dw1TL9ig.cjs.map +1 -0
  353. package/dist/chunks/{NcActions-CocYka0Y.mjs → NcActions-CL3YRRgz.mjs} +6 -6
  354. package/dist/chunks/NcActions-CL3YRRgz.mjs.map +1 -0
  355. package/dist/chunks/{NcActions-JX6wbAVA.cjs → NcActions-DRSoPS6a.cjs} +6 -6
  356. package/dist/chunks/NcActions-DRSoPS6a.cjs.map +1 -0
  357. package/dist/chunks/{NcAppContent-wlhVbyg0.mjs → NcAppContent-Cgay0O3i.mjs} +5 -5
  358. package/dist/chunks/NcAppContent-Cgay0O3i.mjs.map +1 -0
  359. package/dist/chunks/{NcAppContent-CkO1Y93z.cjs → NcAppContent-ibyvoVc4.cjs} +5 -5
  360. package/dist/chunks/NcAppContent-ibyvoVc4.cjs.map +1 -0
  361. package/dist/chunks/{NcAppNavigation-Du3J8BTm.cjs → NcAppNavigation-Cw8qnf4l.cjs} +5 -6
  362. package/dist/chunks/NcAppNavigation-Cw8qnf4l.cjs.map +1 -0
  363. package/dist/chunks/{NcAppNavigation-BKiDVBw7.mjs → NcAppNavigation-D15PXjlO.mjs} +5 -6
  364. package/dist/chunks/NcAppNavigation-D15PXjlO.mjs.map +1 -0
  365. package/dist/chunks/{NcAppNavigationCaption-BoN0P7tD.cjs → NcAppNavigationCaption-CO8Hwyrb.cjs} +3 -3
  366. package/dist/chunks/NcAppNavigationCaption-CO8Hwyrb.cjs.map +1 -0
  367. package/dist/chunks/{NcAppNavigationCaption-CKTQZ_u_.mjs → NcAppNavigationCaption-DsGPHQvj.mjs} +3 -3
  368. package/dist/chunks/NcAppNavigationCaption-DsGPHQvj.mjs.map +1 -0
  369. package/dist/chunks/{NcAppNavigationItem-D_lh17am.cjs → NcAppNavigationItem-BVLg_dnQ.cjs} +11 -13
  370. package/dist/chunks/NcAppNavigationItem-BVLg_dnQ.cjs.map +1 -0
  371. package/dist/chunks/{NcAppNavigationItem-qe8jnLow.mjs → NcAppNavigationItem-fKe0Oi-K.mjs} +11 -13
  372. package/dist/chunks/NcAppNavigationItem-fKe0Oi-K.mjs.map +1 -0
  373. package/dist/chunks/{NcAppNavigationNewItem-B107Beoc.mjs → NcAppNavigationNewItem-BEVsUTrd.mjs} +3 -3
  374. package/dist/chunks/NcAppNavigationNewItem-BEVsUTrd.mjs.map +1 -0
  375. package/dist/chunks/{NcAppNavigationNewItem-DyxVXE5t.cjs → NcAppNavigationNewItem-DlC2GWGK.cjs} +3 -3
  376. package/dist/chunks/NcAppNavigationNewItem-DlC2GWGK.cjs.map +1 -0
  377. package/dist/chunks/{NcAppNavigationSettings-CmP_tXFm.cjs → NcAppNavigationSettings-BidyunnY.cjs} +5 -5
  378. package/dist/chunks/NcAppNavigationSettings-BidyunnY.cjs.map +1 -0
  379. package/dist/chunks/{NcAppNavigationSettings-DZ1-Sbdz.mjs → NcAppNavigationSettings-CEHSXiJt.mjs} +5 -5
  380. package/dist/chunks/NcAppNavigationSettings-CEHSXiJt.mjs.map +1 -0
  381. package/dist/chunks/{NcAppNavigationToggle-zCGgvNDT.mjs → NcAppNavigationToggle-CdNG26lR.mjs} +4 -4
  382. package/dist/chunks/NcAppNavigationToggle-CdNG26lR.mjs.map +1 -0
  383. package/dist/chunks/{NcAppNavigationToggle-hmEUqxbP.cjs → NcAppNavigationToggle-DFhfV_Ic.cjs} +4 -4
  384. package/dist/chunks/NcAppNavigationToggle-DFhfV_Ic.cjs.map +1 -0
  385. package/dist/chunks/{NcAppSettingsDialog-D9cNYQ8b.mjs → NcAppSettingsDialog-BExa9wmg.mjs} +6 -7
  386. package/dist/chunks/NcAppSettingsDialog-BExa9wmg.mjs.map +1 -0
  387. package/dist/chunks/{NcAppSettingsDialog-YqNhco1P.cjs → NcAppSettingsDialog-Zy4akEYz.cjs} +6 -7
  388. package/dist/chunks/NcAppSettingsDialog-Zy4akEYz.cjs.map +1 -0
  389. package/dist/chunks/{NcAppSidebar-CQWODfsy.mjs → NcAppSidebar-CYd47NKe.mjs} +91 -67
  390. package/dist/chunks/NcAppSidebar-CYd47NKe.mjs.map +1 -0
  391. package/dist/chunks/{NcAppSidebar-J15zHyfq.cjs → NcAppSidebar-kuqm78Wl.cjs} +91 -67
  392. package/dist/chunks/NcAppSidebar-kuqm78Wl.cjs.map +1 -0
  393. package/dist/chunks/{NcAvatar-CX3OX2C4.mjs → NcAvatar-BC884DnC.mjs} +11 -32
  394. package/dist/chunks/NcAvatar-BC884DnC.mjs.map +1 -0
  395. package/dist/chunks/{NcAvatar-CYzikYku.cjs → NcAvatar-BX8J9gZF.cjs} +11 -32
  396. package/dist/chunks/NcAvatar-BX8J9gZF.cjs.map +1 -0
  397. package/dist/chunks/{NcBreadcrumb-DytGDsr8.mjs → NcBreadcrumb-BVLavjOe.mjs} +4 -4
  398. package/dist/chunks/NcBreadcrumb-BVLavjOe.mjs.map +1 -0
  399. package/dist/chunks/{NcBreadcrumb-jMJw2OQJ.cjs → NcBreadcrumb-DbuEPD5w.cjs} +4 -4
  400. package/dist/chunks/NcBreadcrumb-DbuEPD5w.cjs.map +1 -0
  401. package/dist/chunks/{NcBreadcrumbs-BqFPBZ-h.mjs → NcBreadcrumbs-BBO2DLP1.mjs} +8 -33
  402. package/dist/chunks/NcBreadcrumbs-BBO2DLP1.mjs.map +1 -0
  403. package/dist/chunks/{NcBreadcrumbs-CzObAKB-.cjs → NcBreadcrumbs-iIR1Tw0r.cjs} +8 -33
  404. package/dist/chunks/NcBreadcrumbs-iIR1Tw0r.cjs.map +1 -0
  405. package/dist/chunks/{NcCheckboxRadioSwitch-CIHl8lnP.cjs → NcCheckboxRadioSwitch-B0HYTOsR.cjs} +12 -6
  406. package/dist/chunks/NcCheckboxRadioSwitch-B0HYTOsR.cjs.map +1 -0
  407. package/dist/chunks/{NcCheckboxRadioSwitch-CpupDtee.mjs → NcCheckboxRadioSwitch-D2GbHtCS.mjs} +12 -6
  408. package/dist/chunks/NcCheckboxRadioSwitch-D2GbHtCS.mjs.map +1 -0
  409. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_919d07b7_lang-CPc4BraS.cjs +4 -0
  410. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_919d07b7_lang-CPc4BraS.cjs.map +1 -0
  411. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_919d07b7_lang-ScT6WV__.mjs +3 -0
  412. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_919d07b7_lang-ScT6WV__.mjs.map +1 -0
  413. package/dist/chunks/NcCollectionList-3O-OrcfS.mjs +428 -0
  414. package/dist/chunks/NcCollectionList-3O-OrcfS.mjs.map +1 -0
  415. package/dist/chunks/NcCollectionList-D4oNsvJ0.cjs +430 -0
  416. package/dist/chunks/NcCollectionList-D4oNsvJ0.cjs.map +1 -0
  417. package/dist/chunks/{NcColorPicker-BEs2B-HB.mjs → NcColorPicker-D7awy8o_.mjs} +6 -6
  418. package/dist/chunks/NcColorPicker-D7awy8o_.mjs.map +1 -0
  419. package/dist/chunks/{NcColorPicker-KrvDMhej.cjs → NcColorPicker-hOteJtis.cjs} +6 -6
  420. package/dist/chunks/NcColorPicker-hOteJtis.cjs.map +1 -0
  421. package/dist/chunks/NcContent-CQn8oXxp.mjs +105 -0
  422. package/dist/chunks/NcContent-CQn8oXxp.mjs.map +1 -0
  423. package/dist/chunks/NcContent-Dr9e_aYA.cjs +104 -0
  424. package/dist/chunks/NcContent-Dr9e_aYA.cjs.map +1 -0
  425. package/dist/chunks/{NcDashboardWidget-BvNtltPU.cjs → NcDashboardWidget-DnDLhRmV.cjs} +6 -6
  426. package/dist/chunks/NcDashboardWidget-DnDLhRmV.cjs.map +1 -0
  427. package/dist/chunks/{NcDashboardWidget-Da715DSB.mjs → NcDashboardWidget-hTBgsnwG.mjs} +6 -6
  428. package/dist/chunks/NcDashboardWidget-hTBgsnwG.mjs.map +1 -0
  429. package/dist/chunks/{NcDashboardWidgetItem-CKv_fb-1.cjs → NcDashboardWidgetItem-BorZC7ZL.cjs} +4 -4
  430. package/dist/chunks/NcDashboardWidgetItem-BorZC7ZL.cjs.map +1 -0
  431. package/dist/chunks/{NcDashboardWidgetItem-BkJTg3kj.mjs → NcDashboardWidgetItem-CorJJt6-.mjs} +4 -4
  432. package/dist/chunks/NcDashboardWidgetItem-CorJJt6-.mjs.map +1 -0
  433. package/dist/chunks/{NcDateTime-CpJDGhl7.mjs → NcDateTime-Eat0YWPN.mjs} +1 -22
  434. package/dist/chunks/NcDateTime-Eat0YWPN.mjs.map +1 -0
  435. package/dist/chunks/{NcDateTime-Cy5Bp0d2.cjs → NcDateTime-K3Rie9qv.cjs} +1 -22
  436. package/dist/chunks/NcDateTime-K3Rie9qv.cjs.map +1 -0
  437. package/dist/chunks/{NcDialog-C7KRNdTc.cjs → NcDialog-DGaf6Udc.cjs} +8 -6
  438. package/dist/chunks/NcDialog-DGaf6Udc.cjs.map +1 -0
  439. package/dist/chunks/{NcDialog-B3ZaXnpn.mjs → NcDialog-VincZ0XS.mjs} +8 -6
  440. package/dist/chunks/NcDialog-VincZ0XS.mjs.map +1 -0
  441. package/dist/chunks/{NcDialogButton-CLWLvwpm.cjs → NcDialogButton-CNWF4urB.cjs} +9 -2
  442. package/dist/chunks/NcDialogButton-CNWF4urB.cjs.map +1 -0
  443. package/dist/chunks/{NcDialogButton-BV3Kf9U7.mjs → NcDialogButton-JvyN3X6S.mjs} +9 -2
  444. package/dist/chunks/NcDialogButton-JvyN3X6S.mjs.map +1 -0
  445. package/dist/chunks/{NcEmojiPicker-LFuZ15M5.cjs → NcEmojiPicker-DCT0-SIC.cjs} +9 -9
  446. package/dist/chunks/NcEmojiPicker-DCT0-SIC.cjs.map +1 -0
  447. package/dist/chunks/{NcEmojiPicker-SqbRSwu2.mjs → NcEmojiPicker-ziqKge9K.mjs} +9 -9
  448. package/dist/chunks/NcEmojiPicker-ziqKge9K.mjs.map +1 -0
  449. package/dist/chunks/{NcHeaderMenu-830tFszI.cjs → NcHeaderMenu-D-Jo3l41.cjs} +6 -6
  450. package/dist/chunks/NcHeaderMenu-D-Jo3l41.cjs.map +1 -0
  451. package/dist/chunks/{NcHeaderMenu-2n5GDt37.mjs → NcHeaderMenu-Da6Ob-6t.mjs} +6 -6
  452. package/dist/chunks/NcHeaderMenu-Da6Ob-6t.mjs.map +1 -0
  453. package/dist/chunks/{NcIconSvgWrapper-KWEbPRC9.mjs → NcIconSvgWrapper-Ckqpz-vm.mjs} +3 -3
  454. package/dist/chunks/NcIconSvgWrapper-Ckqpz-vm.mjs.map +1 -0
  455. package/dist/chunks/{NcIconSvgWrapper-O61kZVNp.cjs → NcIconSvgWrapper-DaSgIT19.cjs} +3 -3
  456. package/dist/chunks/NcIconSvgWrapper-DaSgIT19.cjs.map +1 -0
  457. package/dist/chunks/{NcInputConfirmCancel-CJ7nPGEd.cjs → NcInputConfirmCancel-Bt_VDaTA.cjs} +7 -10
  458. package/dist/chunks/NcInputConfirmCancel-Bt_VDaTA.cjs.map +1 -0
  459. package/dist/chunks/{NcInputConfirmCancel-XXXgXoSw.mjs → NcInputConfirmCancel-BvsvyKxD.mjs} +7 -10
  460. package/dist/chunks/NcInputConfirmCancel-BvsvyKxD.mjs.map +1 -0
  461. package/dist/chunks/{NcListItem-CxpC4EKk.cjs → NcListItem-BwUN8FaS.cjs} +5 -6
  462. package/dist/chunks/{NcListItem-DrTIia88.mjs.map → NcListItem-BwUN8FaS.cjs.map} +1 -1
  463. package/dist/chunks/{NcListItem-DrTIia88.mjs → NcListItem-DwIZ95t7.mjs} +5 -6
  464. package/dist/chunks/{NcListItem-CxpC4EKk.cjs.map → NcListItem-DwIZ95t7.mjs.map} +1 -1
  465. package/dist/chunks/{NcListItemIcon-CTTJYWzN.mjs → NcListItemIcon-DhW1Fob8.mjs} +6 -6
  466. package/dist/chunks/NcListItemIcon-DhW1Fob8.mjs.map +1 -0
  467. package/dist/chunks/{NcListItemIcon-44A7fm62.cjs → NcListItemIcon-JeS1a2jI.cjs} +6 -6
  468. package/dist/chunks/NcListItemIcon-JeS1a2jI.cjs.map +1 -0
  469. package/dist/chunks/{NcPasswordField-DN-kdAfl.cjs → NcPasswordField-9h22h-sl.cjs} +5 -4
  470. package/dist/chunks/NcPasswordField-9h22h-sl.cjs.map +1 -0
  471. package/dist/chunks/{NcPasswordField-Z6BCKScy.mjs → NcPasswordField-xauR6801.mjs} +4 -3
  472. package/dist/chunks/NcPasswordField-xauR6801.mjs.map +1 -0
  473. package/dist/chunks/{NcPopover-BS1bBSkg.cjs → NcPopover-Cl1AvQ5o.cjs} +2 -2
  474. package/dist/chunks/NcPopover-Cl1AvQ5o.cjs.map +1 -0
  475. package/dist/chunks/{NcPopover-foxJPAfG.mjs → NcPopover-VxUr4c6P.mjs} +2 -2
  476. package/dist/chunks/NcPopover-VxUr4c6P.mjs.map +1 -0
  477. package/dist/chunks/{NcProgressBar-mFqoqB4L.cjs → NcProgressBar-BnKA91Pj.cjs} +3 -3
  478. package/dist/chunks/NcProgressBar-BnKA91Pj.cjs.map +1 -0
  479. package/dist/chunks/{NcProgressBar-BafFcKiu.mjs → NcProgressBar-CZtllSde.mjs} +3 -3
  480. package/dist/chunks/NcProgressBar-CZtllSde.mjs.map +1 -0
  481. package/dist/chunks/{NcRelatedResourcesPanel-Dcm2wvfd.cjs → NcRelatedResourcesPanel-Be1fGCiu.cjs} +10 -10
  482. package/dist/chunks/NcRelatedResourcesPanel-Be1fGCiu.cjs.map +1 -0
  483. package/dist/chunks/{NcRelatedResourcesPanel-D3QlWSNc.mjs → NcRelatedResourcesPanel-mSjo_nq5.mjs} +10 -10
  484. package/dist/chunks/NcRelatedResourcesPanel-mSjo_nq5.mjs.map +1 -0
  485. package/dist/chunks/{NcRichContenteditable-DljQv8gw.cjs → NcRichContenteditable-BbPOC-_I.cjs} +60 -48
  486. package/dist/chunks/NcRichContenteditable-BbPOC-_I.cjs.map +1 -0
  487. package/dist/chunks/{NcRichContenteditable-BB-qsHEm.mjs → NcRichContenteditable-CakN30zF.mjs} +60 -48
  488. package/dist/chunks/NcRichContenteditable-CakN30zF.mjs.map +1 -0
  489. package/dist/chunks/{NcRichText-BDVKgmY5.cjs → NcRichText-65CdQLUw.cjs} +9 -8
  490. package/dist/chunks/NcRichText-65CdQLUw.cjs.map +1 -0
  491. package/dist/chunks/{NcRichText-BT4VjvXi.mjs → NcRichText-CCM1HmZE.mjs} +9 -8
  492. package/dist/chunks/NcRichText-CCM1HmZE.mjs.map +1 -0
  493. package/dist/chunks/NcSavingIndicatorIcon-Bhy7wcoT.mjs.map +1 -1
  494. package/dist/chunks/NcSavingIndicatorIcon-BzKAIkhk.cjs.map +1 -1
  495. package/dist/chunks/{NcSelect-CNm4fmR6.mjs → NcSelect-CKgXIbQN.mjs} +5 -5
  496. package/dist/chunks/NcSelect-CKgXIbQN.mjs.map +1 -0
  497. package/dist/chunks/{NcSelect-DckQCxxX.cjs → NcSelect-CmV2Q0A0.cjs} +5 -5
  498. package/dist/chunks/NcSelect-CmV2Q0A0.cjs.map +1 -0
  499. package/dist/chunks/{NcSelectTags-nCqLANFH.mjs → NcSelectTags-BIha_vfa.mjs} +2 -23
  500. package/dist/chunks/NcSelectTags-BIha_vfa.mjs.map +1 -0
  501. package/dist/chunks/{NcSelectTags-CnkBJ3vP.cjs → NcSelectTags-eQRTXuQr.cjs} +2 -23
  502. package/dist/chunks/NcSelectTags-eQRTXuQr.cjs.map +1 -0
  503. package/dist/chunks/{NcSettingsInputText-Dd3wEwGy.cjs → NcSettingsInputText-Cdw4mTrp.cjs} +5 -5
  504. package/dist/chunks/NcSettingsInputText-Cdw4mTrp.cjs.map +1 -0
  505. package/dist/chunks/{NcSettingsInputText-D-S5LBmN.mjs → NcSettingsInputText-DDJdALzH.mjs} +5 -5
  506. package/dist/chunks/NcSettingsInputText-DDJdALzH.mjs.map +1 -0
  507. package/dist/chunks/{NcSettingsSection-B0-LmypW.mjs → NcSettingsSection-CFn4bRnA.mjs} +4 -4
  508. package/dist/chunks/NcSettingsSection-CFn4bRnA.mjs.map +1 -0
  509. package/dist/chunks/{NcSettingsSection-ayl3nvdL.cjs → NcSettingsSection-uZhZY4jp.cjs} +4 -4
  510. package/dist/chunks/NcSettingsSection-uZhZY4jp.cjs.map +1 -0
  511. package/dist/chunks/{NcSettingsSelectGroup-C51Km4wj.mjs → NcSettingsSelectGroup-BJIByip9.mjs} +6 -6
  512. package/dist/chunks/NcSettingsSelectGroup-BJIByip9.mjs.map +1 -0
  513. package/dist/chunks/{NcSettingsSelectGroup-Dc7oy0Jg.cjs → NcSettingsSelectGroup-fY7wG4iL.cjs} +6 -6
  514. package/dist/chunks/NcSettingsSelectGroup-fY7wG4iL.cjs.map +1 -0
  515. package/dist/chunks/{NcTextField-BmaDUUfq.mjs → NcTextField-CjEhJrIE.mjs} +2 -2
  516. package/dist/chunks/NcTextField-CjEhJrIE.mjs.map +1 -0
  517. package/dist/chunks/{NcTextField-BmOKGaQ4.cjs → NcTextField-DGywgzwv.cjs} +2 -2
  518. package/dist/chunks/NcTextField-DGywgzwv.cjs.map +1 -0
  519. package/dist/chunks/NcTimezonePicker-DLFrgfqk.cjs +184 -0
  520. package/dist/chunks/NcTimezonePicker-DLFrgfqk.cjs.map +1 -0
  521. package/dist/chunks/NcTimezonePicker-J8vQyRH8.mjs +185 -0
  522. package/dist/chunks/NcTimezonePicker-J8vQyRH8.mjs.map +1 -0
  523. package/dist/chunks/{NcUserBubble-BJp-ZBGW.mjs → NcUserBubble-C1ecV_fU.mjs} +4 -4
  524. package/dist/chunks/NcUserBubble-C1ecV_fU.mjs.map +1 -0
  525. package/dist/chunks/{NcUserBubble-BsQJPVXD.cjs → NcUserBubble-C4fdYO4b.cjs} +4 -4
  526. package/dist/chunks/NcUserBubble-C4fdYO4b.cjs.map +1 -0
  527. package/dist/chunks/{NcUserStatusIcon-Ba9ajMhK.cjs → NcUserStatusIcon-BqUz25xE.cjs} +9 -37
  528. package/dist/chunks/NcUserStatusIcon-BqUz25xE.cjs.map +1 -0
  529. package/dist/chunks/{NcUserStatusIcon-BkO1ZAdq.mjs → NcUserStatusIcon-DQyfBtYn.mjs} +9 -36
  530. package/dist/chunks/NcUserStatusIcon-DQyfBtYn.mjs.map +1 -0
  531. package/dist/chunks/ScopeComponent-00_hPc9T.mjs +13 -0
  532. package/dist/chunks/ScopeComponent-00_hPc9T.mjs.map +1 -0
  533. package/dist/chunks/ScopeComponent-ByTiGqjs.cjs +12 -0
  534. package/dist/chunks/ScopeComponent-ByTiGqjs.cjs.map +1 -0
  535. package/dist/chunks/_l10n-CWsOa8mM.cjs +125 -0
  536. package/dist/chunks/{_l10n-BYPqjHzt.cjs.map → _l10n-CWsOa8mM.cjs.map} +1 -1
  537. package/dist/chunks/_l10n-DDx8P-X1.mjs +126 -0
  538. package/dist/chunks/_l10n-DDx8P-X1.mjs.map +1 -0
  539. package/dist/chunks/actionGlobal-DqVa7c7G.mjs +25 -0
  540. package/dist/chunks/actionGlobal-DqVa7c7G.mjs.map +1 -0
  541. package/dist/chunks/actionGlobal-L0Ls8tPJ.cjs +24 -0
  542. package/dist/chunks/actionGlobal-L0Ls8tPJ.cjs.map +1 -0
  543. package/dist/chunks/{actionText-BnA6RS9I.cjs → actionText-BcrK4uH1.cjs} +1 -43
  544. package/dist/chunks/actionText-BcrK4uH1.cjs.map +1 -0
  545. package/dist/chunks/{actionText-BaGktsVf.mjs → actionText-fFcUPi2g.mjs} +1 -43
  546. package/dist/chunks/actionText-fFcUPi2g.mjs.map +1 -0
  547. package/dist/chunks/{autolink-Bgjz08wN.cjs → autolink-BAgL31EZ.cjs} +7 -24
  548. package/dist/chunks/autolink-BAgL31EZ.cjs.map +1 -0
  549. package/dist/chunks/{autolink-DA7VzS8Y.mjs → autolink-cbuFALXr.mjs} +7 -24
  550. package/dist/chunks/autolink-cbuFALXr.mjs.map +1 -0
  551. package/dist/chunks/{emoji-CWr00EYY.cjs → emoji-BCCCB3t3.cjs} +9 -30
  552. package/dist/chunks/emoji-BCCCB3t3.cjs.map +1 -0
  553. package/dist/chunks/{emoji-CbOkKZx5.mjs → emoji-V6ytyzoR.mjs} +9 -30
  554. package/dist/chunks/emoji-V6ytyzoR.mjs.map +1 -0
  555. package/dist/chunks/focusTrap-Cecv_gjR.mjs +7 -0
  556. package/dist/chunks/focusTrap-Cecv_gjR.mjs.map +1 -0
  557. package/dist/chunks/focusTrap-EeXFmjdI.cjs +6 -0
  558. package/dist/chunks/focusTrap-EeXFmjdI.cjs.map +1 -0
  559. package/dist/chunks/getAvatarUrl-6z9qRNH-.cjs +10 -0
  560. package/dist/chunks/getAvatarUrl-6z9qRNH-.cjs.map +1 -0
  561. package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs +11 -0
  562. package/dist/chunks/getAvatarUrl-DxvUjKMi.mjs.map +1 -0
  563. package/dist/chunks/{index-Dl-SBuhJ.cjs → index-BANjku4q.cjs} +0 -21
  564. package/dist/chunks/index-BANjku4q.cjs.map +1 -0
  565. package/dist/chunks/index-BwyQ2N-M.mjs.map +1 -1
  566. package/dist/chunks/{index-DYccGIvD.mjs → index-CsogA-K5.mjs} +0 -21
  567. package/dist/chunks/index-CsogA-K5.mjs.map +1 -0
  568. package/dist/chunks/{index-BRQQ9NaL.mjs → index-DbA2OZyf.mjs} +4 -25
  569. package/dist/chunks/index-DbA2OZyf.mjs.map +1 -0
  570. package/dist/chunks/index-Dsgv-f-l.cjs.map +1 -1
  571. package/dist/chunks/{index-D0euettC.cjs → index-oIpl1nrk.cjs} +4 -25
  572. package/dist/chunks/index-oIpl1nrk.cjs.map +1 -0
  573. package/dist/chunks/referencePickerModal-Dab6KzWL.cjs +1115 -0
  574. package/dist/chunks/referencePickerModal-Dab6KzWL.cjs.map +1 -0
  575. package/dist/chunks/referencePickerModal-KbBRUf9r.mjs +1113 -0
  576. package/dist/chunks/referencePickerModal-KbBRUf9r.mjs.map +1 -0
  577. package/dist/chunks/usernameToColor-BzDTLedj.cjs +27 -0
  578. package/dist/chunks/usernameToColor-BzDTLedj.cjs.map +1 -0
  579. package/dist/chunks/usernameToColor-CB3rGdYw.mjs +26 -0
  580. package/dist/chunks/usernameToColor-CB3rGdYw.mjs.map +1 -0
  581. package/dist/components/NcCollectionList/service.d.ts +47 -0
  582. package/dist/composables/actions/useActionText.d.ts +14 -0
  583. package/dist/composables/useFormatDateTime.d.ts +6 -6
  584. package/dist/functions/a11y/index.d.ts +2 -19
  585. package/dist/functions/emoji/emoji.d.ts +23 -27
  586. package/dist/functions/emoji/index.d.ts +2 -19
  587. package/dist/functions/reference/widgets.d.ts +4 -0
  588. package/dist/index.cjs +63 -92
  589. package/dist/index.cjs.map +1 -1
  590. package/dist/index.mjs +65 -94
  591. package/dist/index.mjs.map +1 -1
  592. package/dist/utils/UserStatus.d.ts +2 -19
  593. package/dist/utils/getAvatarUrl.d.ts +2 -19
  594. package/dist/vendor.LICENSE.txt +4 -4
  595. package/package.json +11 -9
  596. package/LICENSE +0 -661
  597. package/dist/assets/NcActionButton-D08gPtwM.css +0 -139
  598. package/dist/assets/NcActionCaption-sfcjBZnu.css +0 -46
  599. package/dist/assets/NcActionCheckbox-DTlI7y7p.css +0 -110
  600. package/dist/assets/NcActionInput-B8l22cnm.css +0 -271
  601. package/dist/assets/NcActionLink-ufhOZDI9.css +0 -124
  602. package/dist/assets/NcActionRadio-syUIsm9B.css +0 -110
  603. package/dist/assets/NcActionRouter-BbTCI4sn.css +0 -135
  604. package/dist/assets/NcActionSeparator-CB59y4di.css +0 -38
  605. package/dist/assets/NcActionText-Ceh88fy8.css +0 -139
  606. package/dist/assets/NcActionTextEditable-BoxziChR.css +0 -287
  607. package/dist/assets/NcActions-N_Y6Nzew.css +0 -111
  608. package/dist/assets/NcAppContent-C08OMmgh.css +0 -153
  609. package/dist/assets/NcAppNavigation-DlFgsfe2.css +0 -131
  610. package/dist/assets/NcAppNavigationCaption-DnApJ5OW.css +0 -62
  611. package/dist/assets/NcAppNavigationIconBullet-B8q3pUL5.css +0 -44
  612. package/dist/assets/NcAppNavigationItem-OJEHVyVk.css +0 -235
  613. package/dist/assets/NcAppNavigationList-DnIxrbVX.css +0 -43
  614. package/dist/assets/NcAppNavigationNew-BPZ1O8Xm.css +0 -41
  615. package/dist/assets/NcAppNavigationSettings-BCkvRAy8.css +0 -93
  616. package/dist/assets/NcAppNavigationSpacer-Cb4q1zb5.css +0 -6
  617. package/dist/assets/NcAppNavigationToggle-0yhQ9xse.css +0 -41
  618. package/dist/assets/NcAppSettingsDialog-CajWZJNV.css +0 -88
  619. package/dist/assets/NcAppSettingsSection-BDvzWKkd.css +0 -44
  620. package/dist/assets/NcAppSidebarTab-CBFET-hQ.css +0 -48
  621. package/dist/assets/NcAvatar-C2EFGp-3.css +0 -143
  622. package/dist/assets/NcBreadcrumb-AES5eSWo.css +0 -82
  623. package/dist/assets/NcBreadcrumbs-tYrp1DVs.css +0 -51
  624. package/dist/assets/NcButton-DZS360ia.css +0 -204
  625. package/dist/assets/NcColorPicker-CzKZjMxY.css +0 -136
  626. package/dist/assets/NcContent-Cuv2HvFH.css +0 -110
  627. package/dist/assets/NcCounterBubble-CWi_P1Tb.css +0 -67
  628. package/dist/assets/NcDashboardWidget-CGOA8X60.css +0 -87
  629. package/dist/assets/NcDashboardWidgetItem-BevETFRF.css +0 -99
  630. package/dist/assets/NcDateTimePickerNative-CV_VuzvQ.css +0 -61
  631. package/dist/assets/NcDialog-DFMxsFp5.css +0 -160
  632. package/dist/assets/NcEllipsisedOption-ClDzkIX6.css +0 -48
  633. package/dist/assets/NcEmptyContent-BY1-Gge4.css +0 -79
  634. package/dist/assets/NcGuestContent-CeRLfUEi.css +0 -78
  635. package/dist/assets/NcHeaderMenu-N5y8yFGd.css +0 -91
  636. package/dist/assets/NcIconSvgWrapper-DF9sBD2g.css +0 -53
  637. package/dist/assets/NcInputConfirmCancel-UcHrm0al.css +0 -53
  638. package/dist/assets/NcListItem-DMYcn1cc.css +0 -170
  639. package/dist/assets/NcListItemIcon-CuPMgXoB.css +0 -78
  640. package/dist/assets/NcLoadingIcon-gxK0ujO0.css +0 -35
  641. package/dist/assets/NcMentionBubble-DmzU72Mw.css +0 -84
  642. package/dist/assets/NcModal-Cof88czY.css +0 -299
  643. package/dist/assets/NcNoteCard-e7-Bxio8.css +0 -64
  644. package/dist/assets/NcProgressBar-D5VftcJm.css +0 -70
  645. package/dist/assets/NcRelatedResourcesPanel-BrXxbjgR.css +0 -200
  646. package/dist/assets/NcRichText-Cdp_2wEm.css +0 -240
  647. package/dist/assets/NcSettingsInputText-CU65Coab.css +0 -49
  648. package/dist/assets/NcSettingsSection-TX28tYCG.css +0 -70
  649. package/dist/assets/NcSettingsSelectGroup-CPauLI-o.css +0 -37
  650. package/dist/assets/NcUserBubble-D5ieZC-f.css +0 -62
  651. package/dist/assets/NcUserStatusIcon-BcLArDqV.css +0 -44
  652. package/dist/assets/referencePickerModal-BaGbKZky.css +0 -539
  653. package/dist/chunks/GenColors-CAUl-IDP.cjs.map +0 -1
  654. package/dist/chunks/GenColors-DcjtQMk3.mjs.map +0 -1
  655. package/dist/chunks/GenRandomId-CXkjMlAT.mjs +0 -27
  656. package/dist/chunks/GenRandomId-CXkjMlAT.mjs.map +0 -1
  657. package/dist/chunks/GenRandomId-kBCcgMJd.cjs +0 -26
  658. package/dist/chunks/GenRandomId-kBCcgMJd.cjs.map +0 -1
  659. package/dist/chunks/Linkify-BBPJHBma.mjs +0 -35
  660. package/dist/chunks/Linkify-BBPJHBma.mjs.map +0 -1
  661. package/dist/chunks/Linkify-CIO279AG.cjs +0 -36
  662. package/dist/chunks/Linkify-CIO279AG.cjs.map +0 -1
  663. package/dist/chunks/NcActionButtonGroup-D650-6zv.mjs.map +0 -1
  664. package/dist/chunks/NcActionButtonGroup-D7hycpXY.cjs.map +0 -1
  665. package/dist/chunks/NcActionInput-BqG7gSLn.mjs.map +0 -1
  666. package/dist/chunks/NcActionInput-CHucaM0V.cjs.map +0 -1
  667. package/dist/chunks/NcActions-CocYka0Y.mjs.map +0 -1
  668. package/dist/chunks/NcActions-JX6wbAVA.cjs.map +0 -1
  669. package/dist/chunks/NcAppContent-CkO1Y93z.cjs.map +0 -1
  670. package/dist/chunks/NcAppContent-wlhVbyg0.mjs.map +0 -1
  671. package/dist/chunks/NcAppNavigation-BKiDVBw7.mjs.map +0 -1
  672. package/dist/chunks/NcAppNavigation-Du3J8BTm.cjs.map +0 -1
  673. package/dist/chunks/NcAppNavigationCaption-BoN0P7tD.cjs.map +0 -1
  674. package/dist/chunks/NcAppNavigationCaption-CKTQZ_u_.mjs.map +0 -1
  675. package/dist/chunks/NcAppNavigationItem-D_lh17am.cjs.map +0 -1
  676. package/dist/chunks/NcAppNavigationItem-qe8jnLow.mjs.map +0 -1
  677. package/dist/chunks/NcAppNavigationNewItem-B107Beoc.mjs.map +0 -1
  678. package/dist/chunks/NcAppNavigationNewItem-DyxVXE5t.cjs.map +0 -1
  679. package/dist/chunks/NcAppNavigationSettings-CmP_tXFm.cjs.map +0 -1
  680. package/dist/chunks/NcAppNavigationSettings-DZ1-Sbdz.mjs.map +0 -1
  681. package/dist/chunks/NcAppNavigationToggle-hmEUqxbP.cjs.map +0 -1
  682. package/dist/chunks/NcAppNavigationToggle-zCGgvNDT.mjs.map +0 -1
  683. package/dist/chunks/NcAppSettingsDialog-D9cNYQ8b.mjs.map +0 -1
  684. package/dist/chunks/NcAppSettingsDialog-YqNhco1P.cjs.map +0 -1
  685. package/dist/chunks/NcAppSidebar-CQWODfsy.mjs.map +0 -1
  686. package/dist/chunks/NcAppSidebar-J15zHyfq.cjs.map +0 -1
  687. package/dist/chunks/NcAvatar-CX3OX2C4.mjs.map +0 -1
  688. package/dist/chunks/NcAvatar-CYzikYku.cjs.map +0 -1
  689. package/dist/chunks/NcBreadcrumb-DytGDsr8.mjs.map +0 -1
  690. package/dist/chunks/NcBreadcrumb-jMJw2OQJ.cjs.map +0 -1
  691. package/dist/chunks/NcBreadcrumbs-BqFPBZ-h.mjs.map +0 -1
  692. package/dist/chunks/NcBreadcrumbs-CzObAKB-.cjs.map +0 -1
  693. package/dist/chunks/NcCheckboxRadioSwitch-CIHl8lnP.cjs.map +0 -1
  694. package/dist/chunks/NcCheckboxRadioSwitch-CpupDtee.mjs.map +0 -1
  695. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-CAFQAKcK.mjs +0 -3
  696. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-CAFQAKcK.mjs.map +0 -1
  697. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-D2wGnjg7.cjs +0 -4
  698. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-D2wGnjg7.cjs.map +0 -1
  699. package/dist/chunks/NcColorPicker-BEs2B-HB.mjs.map +0 -1
  700. package/dist/chunks/NcColorPicker-KrvDMhej.cjs.map +0 -1
  701. package/dist/chunks/NcContent-CcrNrpVC.mjs +0 -104
  702. package/dist/chunks/NcContent-CcrNrpVC.mjs.map +0 -1
  703. package/dist/chunks/NcContent-DChC6Khv.cjs +0 -103
  704. package/dist/chunks/NcContent-DChC6Khv.cjs.map +0 -1
  705. package/dist/chunks/NcDashboardWidget-BvNtltPU.cjs.map +0 -1
  706. package/dist/chunks/NcDashboardWidget-Da715DSB.mjs.map +0 -1
  707. package/dist/chunks/NcDashboardWidgetItem-BkJTg3kj.mjs.map +0 -1
  708. package/dist/chunks/NcDashboardWidgetItem-CKv_fb-1.cjs.map +0 -1
  709. package/dist/chunks/NcDateTime-CpJDGhl7.mjs.map +0 -1
  710. package/dist/chunks/NcDateTime-Cy5Bp0d2.cjs.map +0 -1
  711. package/dist/chunks/NcDialog-B3ZaXnpn.mjs.map +0 -1
  712. package/dist/chunks/NcDialog-C7KRNdTc.cjs.map +0 -1
  713. package/dist/chunks/NcDialogButton-BV3Kf9U7.mjs.map +0 -1
  714. package/dist/chunks/NcDialogButton-CLWLvwpm.cjs.map +0 -1
  715. package/dist/chunks/NcEmojiPicker-LFuZ15M5.cjs.map +0 -1
  716. package/dist/chunks/NcEmojiPicker-SqbRSwu2.mjs.map +0 -1
  717. package/dist/chunks/NcHeaderMenu-2n5GDt37.mjs.map +0 -1
  718. package/dist/chunks/NcHeaderMenu-830tFszI.cjs.map +0 -1
  719. package/dist/chunks/NcIconSvgWrapper-KWEbPRC9.mjs.map +0 -1
  720. package/dist/chunks/NcIconSvgWrapper-O61kZVNp.cjs.map +0 -1
  721. package/dist/chunks/NcInputConfirmCancel-CJ7nPGEd.cjs.map +0 -1
  722. package/dist/chunks/NcInputConfirmCancel-XXXgXoSw.mjs.map +0 -1
  723. package/dist/chunks/NcListItemIcon-44A7fm62.cjs.map +0 -1
  724. package/dist/chunks/NcListItemIcon-CTTJYWzN.mjs.map +0 -1
  725. package/dist/chunks/NcPasswordField-DN-kdAfl.cjs.map +0 -1
  726. package/dist/chunks/NcPasswordField-Z6BCKScy.mjs.map +0 -1
  727. package/dist/chunks/NcPopover-BS1bBSkg.cjs.map +0 -1
  728. package/dist/chunks/NcPopover-foxJPAfG.mjs.map +0 -1
  729. package/dist/chunks/NcProgressBar-BafFcKiu.mjs.map +0 -1
  730. package/dist/chunks/NcProgressBar-mFqoqB4L.cjs.map +0 -1
  731. package/dist/chunks/NcRelatedResourcesPanel-D3QlWSNc.mjs.map +0 -1
  732. package/dist/chunks/NcRelatedResourcesPanel-Dcm2wvfd.cjs.map +0 -1
  733. package/dist/chunks/NcRichContenteditable-BB-qsHEm.mjs.map +0 -1
  734. package/dist/chunks/NcRichContenteditable-DljQv8gw.cjs.map +0 -1
  735. package/dist/chunks/NcRichText-BDVKgmY5.cjs.map +0 -1
  736. package/dist/chunks/NcRichText-BT4VjvXi.mjs.map +0 -1
  737. package/dist/chunks/NcSelect-CNm4fmR6.mjs.map +0 -1
  738. package/dist/chunks/NcSelect-DckQCxxX.cjs.map +0 -1
  739. package/dist/chunks/NcSelectTags-CnkBJ3vP.cjs.map +0 -1
  740. package/dist/chunks/NcSelectTags-nCqLANFH.mjs.map +0 -1
  741. package/dist/chunks/NcSettingsInputText-D-S5LBmN.mjs.map +0 -1
  742. package/dist/chunks/NcSettingsInputText-Dd3wEwGy.cjs.map +0 -1
  743. package/dist/chunks/NcSettingsSection-B0-LmypW.mjs.map +0 -1
  744. package/dist/chunks/NcSettingsSection-ayl3nvdL.cjs.map +0 -1
  745. package/dist/chunks/NcSettingsSelectGroup-C51Km4wj.mjs.map +0 -1
  746. package/dist/chunks/NcSettingsSelectGroup-Dc7oy0Jg.cjs.map +0 -1
  747. package/dist/chunks/NcTextField-BmOKGaQ4.cjs.map +0 -1
  748. package/dist/chunks/NcTextField-BmaDUUfq.mjs.map +0 -1
  749. package/dist/chunks/NcTimezonePicker-BSgT2QA5.mjs +0 -4049
  750. package/dist/chunks/NcTimezonePicker-BSgT2QA5.mjs.map +0 -1
  751. package/dist/chunks/NcTimezonePicker-iD8mrVb_.cjs +0 -4048
  752. package/dist/chunks/NcTimezonePicker-iD8mrVb_.cjs.map +0 -1
  753. package/dist/chunks/NcUserBubble-BJp-ZBGW.mjs.map +0 -1
  754. package/dist/chunks/NcUserBubble-BsQJPVXD.cjs.map +0 -1
  755. package/dist/chunks/NcUserStatusIcon-Ba9ajMhK.cjs.map +0 -1
  756. package/dist/chunks/NcUserStatusIcon-BkO1ZAdq.mjs.map +0 -1
  757. package/dist/chunks/ScopeComponent-BpyBuaF3.cjs +0 -33
  758. package/dist/chunks/ScopeComponent-BpyBuaF3.cjs.map +0 -1
  759. package/dist/chunks/ScopeComponent-Dy6ublmy.mjs +0 -34
  760. package/dist/chunks/ScopeComponent-Dy6ublmy.mjs.map +0 -1
  761. package/dist/chunks/_l10n-BYPqjHzt.cjs +0 -121
  762. package/dist/chunks/_l10n-hRR5zBTZ.mjs +0 -122
  763. package/dist/chunks/_l10n-hRR5zBTZ.mjs.map +0 -1
  764. package/dist/chunks/actionGlobal-BfK-CImU.cjs +0 -45
  765. package/dist/chunks/actionGlobal-BfK-CImU.cjs.map +0 -1
  766. package/dist/chunks/actionGlobal-DV5ZiuS0.mjs +0 -46
  767. package/dist/chunks/actionGlobal-DV5ZiuS0.mjs.map +0 -1
  768. package/dist/chunks/actionText-BaGktsVf.mjs.map +0 -1
  769. package/dist/chunks/actionText-BnA6RS9I.cjs.map +0 -1
  770. package/dist/chunks/autolink-Bgjz08wN.cjs.map +0 -1
  771. package/dist/chunks/autolink-DA7VzS8Y.mjs.map +0 -1
  772. package/dist/chunks/emoji-CWr00EYY.cjs.map +0 -1
  773. package/dist/chunks/emoji-CbOkKZx5.mjs.map +0 -1
  774. package/dist/chunks/focusTrap-Dsmd28wG.cjs +0 -27
  775. package/dist/chunks/focusTrap-Dsmd28wG.cjs.map +0 -1
  776. package/dist/chunks/focusTrap-hWDNhn4t.mjs +0 -28
  777. package/dist/chunks/focusTrap-hWDNhn4t.mjs.map +0 -1
  778. package/dist/chunks/getAvatarUrl-BBvqBOJD.mjs +0 -32
  779. package/dist/chunks/getAvatarUrl-BBvqBOJD.mjs.map +0 -1
  780. package/dist/chunks/getAvatarUrl-C40xfr4C.cjs +0 -31
  781. package/dist/chunks/getAvatarUrl-C40xfr4C.cjs.map +0 -1
  782. package/dist/chunks/index-BRQQ9NaL.mjs.map +0 -1
  783. package/dist/chunks/index-D0euettC.cjs.map +0 -1
  784. package/dist/chunks/index-DYccGIvD.mjs.map +0 -1
  785. package/dist/chunks/index-Dl-SBuhJ.cjs.map +0 -1
  786. package/dist/chunks/logger-BcZGm6Un.cjs +0 -24
  787. package/dist/chunks/logger-BcZGm6Un.cjs.map +0 -1
  788. package/dist/chunks/logger-C7ZZ6zFQ.mjs +0 -25
  789. package/dist/chunks/logger-C7ZZ6zFQ.mjs.map +0 -1
  790. package/dist/chunks/referencePickerModal-CFPdv-m1.mjs +0 -3469
  791. package/dist/chunks/referencePickerModal-CFPdv-m1.mjs.map +0 -1
  792. package/dist/chunks/referencePickerModal-m0FcnvxK.cjs +0 -3471
  793. package/dist/chunks/referencePickerModal-m0FcnvxK.cjs.map +0 -1
  794. package/dist/chunks/usernameToColor-CLlyFMmy.mjs +0 -47
  795. package/dist/chunks/usernameToColor-CLlyFMmy.mjs.map +0 -1
  796. package/dist/chunks/usernameToColor-cfXKb46d.cjs +0 -48
  797. package/dist/chunks/usernameToColor-cfXKb46d.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"referencePickerModal-KbBRUf9r.mjs","sources":["../../src/components/NcRichText/NcReferenceWidget.vue","../../src/components/NcRichText/NcReferencePicker/NcCustomPickerElement.vue","../../src/functions/reference/providerHelper.js","../../src/components/NcRichText/NcReferencePicker/utils.js","../../node_modules/vue-material-design-icons/LinkVariant.vue","../../src/components/NcRichText/NcReferencePicker/NcProviderList.vue","../../src/components/NcRichText/NcReferencePicker/NcRawLinkInput.vue","../../src/components/NcRichText/NcReferencePicker/NcSearchResult.vue","../../src/components/NcRichText/NcReferencePicker/NcSearch.vue","../../src/components/NcRichText/NcReferencePicker/NcReferencePicker.vue","../../src/components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue","../../src/functions/reference/referencePickerModal.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<div ref=\"widgetRoot\" :class=\"{'toggle-interactive': hasInteractiveView && !isInteractive }\">\n\t\t<div v-if=\"reference && hasCustomWidget\"\n\t\t\tref=\"customWidget\"\n\t\t\tclass=\"widget-custom\"\n\t\t\t:class=\"{ 'full-width': hasFullWidth }\" />\n\n\t\t<component :is=\"referenceWidgetLinkComponent\"\n\t\t\tv-else-if=\"!noAccess && reference && reference.openGraphObject && !hasCustomWidget\"\n\t\t\tv-bind=\"referenceWidgetLinkProps\"\n\t\t\trel=\"noopener noreferrer\"\n\t\t\tclass=\"widget-default\">\n\t\t\t<img v-if=\"reference.openGraphObject.thumb\" class=\"widget-default--image\" :src=\"reference.openGraphObject.thumb\">\n\t\t\t<div class=\"widget-default--details\">\n\t\t\t\t<p class=\"widget-default--name\">\n\t\t\t\t\t{{ reference.openGraphObject.name }}\n\t\t\t\t</p>\n\t\t\t\t<p class=\"widget-default--description\" :style=\"descriptionStyle\">\n\t\t\t\t\t{{ reference.openGraphObject.description }}\n\t\t\t\t</p>\n\t\t\t\t<p class=\"widget-default--link\">\n\t\t\t\t\t{{ compactLink }}\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</component>\n\t\t<NcButton v-if=\"interactiveOptIn && hasInteractiveView && !isInteractive\" class=\"toggle-interactive--button\" @click=\"enableInteractive\">\n\t\t\t{{ t('Enable interactive view') }}\n\t\t</NcButton>\n\t</div>\n</template>\n<script>\nimport { useElementSize, useIntersectionObserver } from '@vueuse/core'\nimport { nextTick, ref } from 'vue'\nimport { RouterLink } from 'vue-router'\n\nimport { t } from '../../l10n.js'\nimport { getRoute } from './autolink.js'\nimport { renderWidget, isWidgetRegistered, destroyWidget, hasInteractiveView, hasFullWidth } from './../../functions/reference/widgets.ts'\n\nimport NcButton from '../../components/NcButton/index.js'\n\nconst IDLE_TIMEOUT = 3 * 60 * 1000 // 3 minutes outside of viewport before widget is removed from the DOM\n\nexport default {\n\tname: 'NcReferenceWidget',\n\tcomponents: {\n\t\tNcButton,\n\t},\n\tprops: {\n\t\treference: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tinteractive: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tinteractiveOptIn: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst isVisible = ref(false)\n\t\t// This is the widget root node\n\t\tconst widgetRoot = ref()\n\t\tconst { width } = useElementSize(widgetRoot)\n\n\t\tuseIntersectionObserver(widgetRoot, ([entry]) => {\n\t\t\tnextTick(() => {\n\t\t\t\tisVisible.value = entry.isIntersecting\n\t\t\t})\n\t\t})\n\n\t\treturn {\n\t\t\twidth,\n\t\t\tisVisible,\n\t\t\twidgetRoot,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowInteractive: false,\n\t\t\trendered: false,\n\t\t\tidleTimeout: null,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tisInteractive() {\n\t\t\treturn (!this.interactiveOptIn && this.interactive) || this.showInteractive\n\t\t},\n\t\thasFullWidth() {\n\t\t\treturn hasFullWidth(this.reference.richObjectType)\n\t\t},\n\t\thasCustomWidget() {\n\t\t\treturn isWidgetRegistered(this.reference.richObjectType)\n\t\t},\n\t\thasInteractiveView() {\n\t\t\treturn isWidgetRegistered(this.reference.richObjectType) && hasInteractiveView(this.reference.richObjectType)\n\t\t},\n\t\tnoAccess() {\n\t\t\treturn this.reference && !this.reference.accessible\n\t\t},\n\t\tdescriptionStyle() {\n\t\t\tif (this.numberOfLines === 0) {\n\t\t\t\treturn {\n\t\t\t\t\tdisplay: 'none',\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst lineClamp = this.numberOfLines\n\t\t\treturn {\n\t\t\t\tlineClamp,\n\t\t\t\twebkitLineClamp: lineClamp,\n\t\t\t}\n\t\t},\n\t\tnumberOfLines() {\n\t\t\t// no description for width < 450, one line until 550 and so on\n\t\t\tconst lineCountOffsets = [450, 550, 650, Infinity]\n\t\t\treturn lineCountOffsets.findIndex(max => this.width < max)\n\t\t},\n\t\tcompactLink() {\n\t\t\tconst link = this.reference.openGraphObject.link\n\t\t\tif (!link) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\tif (link.startsWith('https://')) {\n\t\t\t\treturn link.substring(8)\n\t\t\t}\n\t\t\tif (link.startsWith('http://')) {\n\t\t\t\treturn link.substring(7)\n\t\t\t}\n\t\t\treturn link\n\t\t},\n\t\troute() {\n\t\t\treturn getRoute(this.$router, this.reference.openGraphObject.link)\n\t\t},\n\t\treferenceWidgetLinkComponent() {\n\t\t\treturn this.route ? RouterLink : 'a'\n\t\t},\n\t\treferenceWidgetLinkProps() {\n\t\t\treturn this.route\n\t\t\t\t? { to: this.route }\n\t\t\t\t: { href: this.reference.openGraphObject.link, target: '_blank' }\n\t\t},\n\t},\n\twatch: {\n\t\tisVisible: {\n\t\t\thandler(val) {\n\t\t\t\tif (!val) {\n\t\t\t\t\tthis.idleTimeout = setTimeout(() => {\n\t\t\t\t\t\t// If the widget is still outside of viewport after timeout, destroy it\n\t\t\t\t\t\tif (!this.isVisible) {\n\t\t\t\t\t\t\tthis.destroyWidget()\n\t\t\t\t\t\t}\n\t\t\t\t\t}, IDLE_TIMEOUT)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (this.idleTimeout) {\n\t\t\t\t\tclearTimeout(this.idleTimeout)\n\t\t\t\t\tthis.idleTimeout = null\n\t\t\t\t}\n\n\t\t\t\tif (!this.rendered) {\n\t\t\t\t\tthis.renderWidget()\n\t\t\t\t}\n\t\t\t},\n\t\t\timmediate: true,\n\t\t},\n\t},\n\tbeforeDestroy() {\n\t\tthis.destroyWidget()\n\t},\n\tmethods: {\n\t\tt,\n\n\t\tenableInteractive() {\n\t\t\tthis.showInteractive = true\n\t\t\tthis.renderWidget()\n\t\t},\n\t\trenderWidget() {\n\t\t\tif (!this.$refs.customWidget) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this?.reference?.richObjectType === 'open-graph') {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.$refs.customWidget.innerHTML = ''\n\n\t\t\t// create a separate element so we can rerender on the ref again\n\t\t\tconst widget = document.createElement('div')\n\t\t\tthis.$refs.customWidget.appendChild(widget)\n\t\t\tthis.$nextTick(() => {\n\t\t\t\t// Waiting for the ref to become available\n\t\t\t\trenderWidget(widget, {\n\t\t\t\t\t...this.reference,\n\t\t\t\t\tinteractive: this.isInteractive,\n\t\t\t\t})\n\t\t\t\tthis.rendered = true\n\t\t\t})\n\t\t},\n\t\tdestroyWidget() {\n\t\t\tif (this.rendered) {\n\t\t\t\tdestroyWidget(this.reference.richObjectType, this.$el)\n\t\t\t\tthis.rendered = false\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\n\n@mixin widget {\n\twidth: 100%;\n\tmargin: auto;\n\tmargin-bottom: calc(var(--default-grid-baseline, 4px) * 3);\n\tmargin-top: calc(var(--default-grid-baseline, 4px) * 3);\n\toverflow: hidden;\n\tborder: 2px solid var(--color-border);\n\tborder-radius: var(--border-radius-large);\n\tbackground-color: transparent;\n\tdisplay: flex;\n}\n\n.widget-custom {\n\t@include widget;\n\n\t&.full-width {\n\t\twidth: var(--widget-full-width, 100%) !important;\n\t\tleft: calc( (var(--widget-full-width, 100%) - 100%) / 2 * -1);\n\t\tposition: relative;\n\t}\n}\n\n.widget-access {\n\t@include widget;\n\tpadding: calc(var(--default-grid-baseline, 4px) * 3);\n}\n\n.widget-default {\n\t@include widget;\n\n\t&--compact {\n\t\tflex-direction: column;\n\n\t\t.widget-default--image {\n\t\t\twidth: 100%;\n\t\t\theight: 150px;\n\t\t}\n\n\t\t.widget-default--details {\n\t\t\twidth: 100%;\n\t\t\tpadding-top: calc(var(--default-grid-baseline, 4px) * 2);\n\t\t\tpadding-bottom: calc(var(--default-grid-baseline, 4px) * 2);\n\t\t}\n\n\t\t.widget-default--description {\n\t\t\tdisplay: none;\n\t\t}\n\n\t}\n\n\t&--image {\n\t\twidth: 40%;\n\t\tbackground-position: center;\n\t\tbackground-size: cover;\n\t\tbackground-repeat: no-repeat;\n\t}\n\n\t&--name {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t\tfont-weight: bold;\n\t}\n\n\t&--details {\n\t\tpadding: calc(var(--default-grid-baseline, 4px) * 3);\n\t\twidth: 60%;\n\n\t\tp {\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t}\n\t}\n\n\t&--description {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\tdisplay: -webkit-box;\n\t\t-webkit-line-clamp: 3;\n\t\tline-clamp: 3;\n\t\t-webkit-box-orient: vertical;\n\t}\n\n\t&--link {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t}\n}\n\n.toggle-interactive {\n\tposition: relative;\n\t.toggle-interactive--button {\n\t\tposition: absolute;\n\t\ttop: 50%;\n\t\tz-index: 10000;\n\t\tleft: 50%;\n\t\ttransform: translateX(-50%) translateY(-50%);\n\t\topacity: 0;\n\t}\n\n\t&:focus-within, &:hover {\n\t\t.toggle-interactive--button {\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n</style>\n","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div ref=\"domElement\" />\n</template>\n\n<script>\nimport { renderCustomPickerElement, isCustomPickerElementRegistered, destroyCustomPickerElement } from './../../../functions/reference/customPickerElements.js'\n\nexport default {\n\tname: 'NcCustomPickerElement',\n\tprops: {\n\t\t/**\n\t\t * The reference provider\n\t\t */\n\t\tprovider: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\temits: [\n\t\t'cancel',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tisRegistered: isCustomPickerElementRegistered(this.provider.id),\n\t\t\trenderResult: null,\n\t\t}\n\t},\n\tmounted() {\n\t\tif (this.isRegistered) {\n\t\t\tthis.renderElement()\n\t\t}\n\t},\n\tbeforeDestroy() {\n\t\tif (this.isRegistered) {\n\t\t\tdestroyCustomPickerElement(this.provider.id, this.$el, this.renderResult)\n\t\t}\n\t},\n\tmethods: {\n\t\trenderElement() {\n\t\t\tif (this.$refs.domElement) {\n\t\t\t\tthis.$refs.domElement.innerHTML = ''\n\t\t\t}\n\n\t\t\tconst renderFunctionResult = renderCustomPickerElement(this.$refs.domElement, { providerId: this.provider.id, accessible: false })\n\t\t\t// this works whether renderCustomPickerElement returns a promise or a value\n\t\t\tPromise.resolve(renderFunctionResult).then(result => {\n\t\t\t\tthis.renderResult = result\n\t\t\t\tif (this.renderResult.object?._isVue && this.renderResult.object?.$on) {\n\t\t\t\t\tthis.renderResult.object.$on('submit', this.onSubmit)\n\t\t\t\t\tthis.renderResult.object.$on('cancel', this.onCancel)\n\t\t\t\t}\n\t\t\t\tthis.renderResult.element.addEventListener('submit', (e) => {\n\t\t\t\t\tthis.onSubmit(e.detail)\n\t\t\t\t})\n\t\t\t\tthis.renderResult.element.addEventListener('cancel', this.onCancel)\n\t\t\t})\n\t\t},\n\t\tonSubmit(value) {\n\t\t\tthis.$emit('submit', value)\n\t\t},\n\t\tonCancel() {\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// nothing yet\n</style>\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { isCustomPickerElementRegistered } from './customPickerElements.js'\n\nimport { t } from '../../l10n.js'\n\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\nimport { generateOcsUrl, imagePath } from '@nextcloud/router'\n\nexport const anyLinkProviderId = 'any-link'\n\nconst anyLinkProvider = {\n\tid: anyLinkProviderId,\n\ttitle: t('Any link'),\n\ticon_url: imagePath('core', 'filetypes/link.svg'),\n}\n\n// only get the provider list once, even if functions of this file are imported multiple times by different apps/components\nif (!window._vue_richtext_reference_providers) {\n\twindow._vue_richtext_reference_providers = loadState('core', 'reference-provider-list', [])\n}\n\n// single timestamps object used by every entity in the page\nif (!window._vue_richtext_reference_provider_timestamps) {\n\twindow._vue_richtext_reference_provider_timestamps = loadState('core', 'reference-provider-timestamps', {})\n}\n\n/**\n * @param {string} providerId The provider ID\n * @return {object} The provider object\n */\nexport function getProvider(providerId) {\n\tif (providerId === anyLinkProviderId) {\n\t\treturn anyLinkProvider\n\t}\n\treturn getProviders().find(p => p.id === providerId)\n}\n\n/**\n * @return {Array} Raw provider list as it was provided by the server\n */\nexport function getProviders() {\n\treturn window._vue_richtext_reference_providers.filter(p => {\n\t\t// avoid providers with no associated search provider and no custom component registered\n\t\tconst keep = (!!p.search_providers_ids && p.search_providers_ids.length > 0) || isCustomPickerElementRegistered(p.id)\n\t\tif (!keep) {\n\t\t\tconsole.debug('[smart picker]', p.id, 'reference provider is discoverable but does not have any related search provider or custom picker component registered')\n\t\t}\n\t\treturn keep\n\t})\n}\n\n/**\n * Helper function to sort a list of providers according to 2 factors:\n * - their \"last used timestamp\"\n * - their \"order\" property (coming from the provider declaration in the server implementation)\n *\n * @param {Array} providerList list of provider objects\n * @return {Array} the sorted provider list\n */\nexport function sortProviders(providerList) {\n\tconst timestamps = window._vue_richtext_reference_provider_timestamps\n\n\treturn providerList.sort((a, b) => {\n\t\treturn a.order === b.order\n\t\t\t? 0\n\t\t\t: a.order > b.order\n\t\t\t\t? 1\n\t\t\t\t: -1\n\t}).sort((a, b) => {\n\t\tconst ta = timestamps[a.id]\n\t\tconst tb = timestamps[b.id]\n\t\treturn ta === tb\n\t\t\t? 0\n\t\t\t: tb === undefined\n\t\t\t\t? -1\n\t\t\t\t: ta === undefined\n\t\t\t\t\t? 1\n\t\t\t\t\t: ta > tb\n\t\t\t\t\t\t? -1\n\t\t\t\t\t\t: 1\n\t})\n}\n\n/**\n * Helper function to search a provider from a search query\n * Result is a sorted list of providers\n *\n * @param {string} query The search query\n * @param {number} limit (optional) max number of results\n * @return {Array} the sorted/filtered provider list\n */\nexport function searchProvider(query, limit = null) {\n\tconst providers = getProviders()\n\tconst escapedQuery = query.replace(/[/\\-\\\\^$*+?.()|[\\]{}]/g, '\\\\$&')\n\tconst regexp = new RegExp(escapedQuery, 'i')\n\tconst sortedProviders = sortProviders(providers)\n\tconst filteredSortedProviders = sortedProviders.filter(p => {\n\t\treturn p.title.match(regexp)\n\t})\n\tconst searchResult = limit\n\t\t? filteredSortedProviders.slice(0, limit)\n\t\t: filteredSortedProviders\n\t// append the 'any link' provider in the full list or when there is no result\n\tif (query === '' || searchResult.length === 0) {\n\t\tsearchResult.push(anyLinkProvider)\n\t}\n\treturn searchResult\n}\n\n/**\n * Update the \"last used timestamp\" on the server side and then locally in the frontend\n *\n * @param {number} providerId The id of the search provider\n */\nexport function touchProvider(providerId) {\n\tconst timestamp = Math.floor(Date.now() / 1000)\n\tconst params = {\n\t\ttimestamp,\n\t}\n\tconst url = generateOcsUrl('references/provider/{providerId}', { providerId })\n\taxios.put(url, params)\n\t\t.then((response) => {\n\t\t\twindow._vue_richtext_reference_provider_timestamps[providerId] = timestamp\n\t\t})\n}\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nlet mytimer = 0\n/**\n *\n * @param {Function} callback The callback to call after the delay\n * @param {number} ms The delay in milli-seconds\n */\nexport function delay(callback, ms) {\n\treturn function() {\n\t\tconst context = this\n\t\tconst args = arguments\n\t\tclearTimeout(mytimer)\n\t\tmytimer = setTimeout(function() {\n\t\t\tcallback.apply(context, args)\n\t\t}, ms || 0)\n\t}\n}\n/**\n *\n * @param {string} str The url\n */\nexport function isUrl(str) {\n\ttry {\n\t\treturn Boolean(new URL(str))\n\t} catch (error) {\n\t\treturn false\n\t}\n}\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : true\"\n :aria-label=\"title\"\n class=\"material-design-icon link-variant-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M10.59,13.41C11,13.8 11,14.44 10.59,14.83C10.2,15.22 9.56,15.22 9.17,14.83C7.22,12.88 7.22,9.71 9.17,7.76V7.76L12.71,4.22C14.66,2.27 17.83,2.27 19.78,4.22C21.73,6.17 21.73,9.34 19.78,11.29L18.29,12.78C18.3,11.96 18.17,11.14 17.89,10.36L18.36,9.88C19.54,8.71 19.54,6.81 18.36,5.64C17.19,4.46 15.29,4.46 14.12,5.64L10.59,9.17C9.41,10.34 9.41,12.24 10.59,13.41M13.41,9.17C13.8,8.78 14.44,8.78 14.83,9.17C16.78,11.12 16.78,14.29 14.83,16.24V16.24L11.29,19.78C9.34,21.73 6.17,21.73 4.22,19.78C2.27,17.83 2.27,14.66 4.22,12.71L5.71,11.22C5.7,12.04 5.83,12.86 6.11,13.65L5.64,14.12C4.46,15.29 4.46,17.19 5.64,18.36C6.81,19.54 8.71,19.54 9.88,18.36L13.41,14.83C14.59,13.66 14.59,11.76 13.41,10.59C13,10.2 13,9.56 13.41,9.17Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"LinkVariantIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"provider-list\">\n\t\t<NcSelect ref=\"provider-select\"\n\t\t\tv-model=\"selectedProvider\"\n\t\t\tclass=\"provider-list--select\"\n\t\t\tinput-id=\"provider-select-input\"\n\t\t\tlabel=\"title\"\n\t\t\t:placeholder=\"multiselectPlaceholder\"\n\t\t\t:options=\"options\"\n\t\t\t:append-to-body=\"false\"\n\t\t\t:clear-search-on-select=\"true\"\n\t\t\t:clear-search-on-blur=\"() => false\"\n\t\t\t:filterable=\"false\"\n\t\t\t@search=\"onSearch\"\n\t\t\t@input=\"onProviderSelected\">\n\t\t\t<template #option=\"option\">\n\t\t\t\t<div v-if=\"option.isLink\" class=\"provider\">\n\t\t\t\t\t<LinkVariantIcon class=\"link-icon\" :size=\"20\" />\n\t\t\t\t\t<span>{{ option.title }}</span>\n\t\t\t\t</div>\n\t\t\t\t<div v-else class=\"provider\">\n\t\t\t\t\t<img class=\"provider-icon\"\n\t\t\t\t\t\t:src=\"option.icon_url\"\n\t\t\t\t\t\t:alt=\"providerIconAlt\">\n\t\t\t\t\t<NcHighlight class=\"option-text\"\n\t\t\t\t\t\t:search=\"query\"\n\t\t\t\t\t\t:text=\"option.title\" />\n\t\t\t\t</div>\n\t\t\t</template>\n\t\t</NcSelect>\n\t\t<NcEmptyContent class=\"provider-list--empty-content\">\n\t\t\t<template #icon>\n\t\t\t\t<LinkVariantIcon />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\t</div>\n</template>\n\n<script>\nimport { searchProvider } from './../../../functions/reference/providerHelper.js'\nimport { isUrl } from './utils.js'\nimport NcEmptyContent from '../../NcEmptyContent/index.js'\nimport NcHighlight from '../../NcHighlight/index.js'\nimport NcSelect from '../../NcSelect/index.js'\nimport { t } from '../../../l10n.js'\n\nimport LinkVariantIcon from 'vue-material-design-icons/LinkVariant.vue'\n\nexport default {\n\tname: 'NcProviderList',\n\tcomponents: {\n\t\tNcSelect,\n\t\tNcHighlight,\n\t\tNcEmptyContent,\n\t\tLinkVariantIcon,\n\t},\n\temits: [\n\t\t'select-provider',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tselectedProvider: null,\n\t\t\tquery: '',\n\t\t\tmultiselectPlaceholder: t('Select provider'),\n\t\t\tproviderIconAlt: t('Provider icon'),\n\t\t}\n\t},\n\tcomputed: {\n\t\toptions() {\n\t\t\tconst result = []\n\t\t\tif (this.query !== '' && isUrl(this.query)) {\n\t\t\t\tresult.push({\n\t\t\t\t\tid: this.query,\n\t\t\t\t\ttitle: this.query,\n\t\t\t\t\tisLink: true,\n\t\t\t\t})\n\t\t\t}\n\t\t\tresult.push(...searchProvider(this.query))\n\t\t\treturn result\n\t\t},\n\t},\n\tmethods: {\n\t\tfocus() {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$refs['provider-select']?.$el?.querySelector('#provider-select-input')?.focus()\n\t\t\t}, 300)\n\t\t},\n\t\tonProviderSelected(p) {\n\t\t\tif (p !== null) {\n\t\t\t\tif (p.isLink) {\n\t\t\t\t\tthis.$emit('submit', p.title)\n\t\t\t\t} else {\n\t\t\t\t\tthis.$emit('select-provider', p)\n\t\t\t\t}\n\t\t\t\tthis.selectedProvider = null\n\t\t\t}\n\t\t},\n\t\tonSearch(query, loading) {\n\t\t\tthis.query = query\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.provider-list {\n\twidth: 100%;\n\tmin-height: 400px;\n\tpadding: 0 16px 16px 16px;\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t&--select {\n\t\twidth: 100%;\n\n\t\t.provider {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\theight: 28px;\n\t\t\toverflow: hidden;\n\n\t\t\t.link-icon {\n\t\t\t\tmargin-right: 8px;\n\t\t\t}\n\n\t\t\t.provider-icon {\n\t\t\t\twidth: 20px;\n\t\t\t\theight: 20px;\n\t\t\t\tobject-fit: contain;\n\t\t\t\tmargin-right: 8px;\n\t\t\t\tfilter: var(--background-invert-if-dark);\n\t\t\t}\n\n\t\t\t.option-text {\n\t\t\t\toverflow: hidden;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\n\t\t}\n\t}\n}\n</style>\n","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"raw-link\">\n\t\t<div class=\"input-wrapper\">\n\t\t\t<NcTextField ref=\"url-input\"\n\t\t\t\t:value.sync=\"inputValue\"\n\t\t\t\t:show-trailing-button=\"inputValue !== ''\"\n\t\t\t\t:label=\"inputPlaceholder\"\n\t\t\t\t@trailing-button-click=\"onClear\"\n\t\t\t\t@update:value=\"onInput\"\n\t\t\t\t@keyup.native.enter=\"onSubmit\">\n\t\t\t\t<NcLoadingIcon v-if=\"loading\" :size=\"16\" />\n\t\t\t\t<LinkVariantIcon v-else :size=\"16\" />\n\t\t\t</NcTextField>\n\t\t</div>\n\t\t<NcReferenceWidget v-if=\"reference !== null\"\n\t\t\tclass=\"reference-widget\"\n\t\t\t:reference=\"reference\" />\n\t\t<NcEmptyContent v-else\n\t\t\tclass=\"raw-link--empty-content\">\n\t\t\t<template #icon>\n\t\t\t\t<img v-if=\"provider.icon_url\"\n\t\t\t\t\tclass=\"provider-icon\"\n\t\t\t\t\t:src=\"provider.icon_url\">\n\t\t\t\t<LinkVariantIcon v-else />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\t</div>\n</template>\n\n<script>\nimport NcReferenceWidget from '../NcReferenceWidget.vue'\nimport { isUrl, delay } from './utils.js'\nimport NcEmptyContent from '../../NcEmptyContent/index.js'\nimport NcLoadingIcon from '../../NcLoadingIcon/index.js'\nimport NcTextField from '../../NcTextField/index.js'\nimport { t } from '../../../l10n.js'\n\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\n\nimport LinkVariantIcon from 'vue-material-design-icons/LinkVariant.vue'\n\nexport default {\n\tname: 'NcRawLinkInput',\n\tcomponents: {\n\t\tLinkVariantIcon,\n\t\tNcEmptyContent,\n\t\tNcLoadingIcon,\n\t\tNcReferenceWidget,\n\t\tNcTextField,\n\t},\n\tprops: {\n\t\t/**\n\t\t * The reference provider\n\t\t */\n\t\tprovider: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\temits: [\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tinputValue: '',\n\t\t\tloading: false,\n\t\t\treference: null,\n\t\t\tabortController: null,\n\t\t\tinputPlaceholder: t('Enter link'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tisLinkValid() {\n\t\t\treturn isUrl(this.inputValue)\n\t\t},\n\t},\n\tmethods: {\n\t\tfocus() {\n\t\t\tthis.$refs['url-input'].$el.getElementsByTagName('input')[0]?.focus()\n\t\t},\n\t\tonSubmit(e) {\n\t\t\tconst value = e.target.value\n\t\t\tif (this.isLinkValid) {\n\t\t\t\tthis.$emit('submit', value)\n\t\t\t}\n\t\t},\n\t\tonClear() {\n\t\t\tthis.inputValue = ''\n\t\t\tthis.reference = null\n\t\t},\n\t\tonInput() {\n\t\t\tthis.reference = null\n\t\t\tif (this.abortController) {\n\t\t\t\tthis.abortController.abort()\n\t\t\t}\n\t\t\tif (this.isLinkValid) {\n\t\t\t\tdelay(() => {\n\t\t\t\t\tthis.updateReference()\n\t\t\t\t}, 500)()\n\t\t\t}\n\t\t},\n\t\tupdateReference() {\n\t\t\tthis.loading = true\n\t\t\tthis.abortController = new AbortController()\n\t\t\taxios.get(generateOcsUrl('references/resolve', 2) + '?reference=' + encodeURIComponent(this.inputValue), {\n\t\t\t\tsignal: this.abortController.signal,\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\tthis.reference = response.data.ocs.data.references[this.inputValue]\n\t\t\t\t})\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tconsole.error(error)\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.loading = false\n\t\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.raw-link {\n\twidth: 100%;\n\tmin-height: 350px;\n\tdisplay: flex;\n\tflex-direction: column;\n\toverflow-y: auto;\n\tpadding: 0 16px 16px 16px;\n\n\t.input-wrapper {\n\t\twidth: 100%;\n\t}\n\n\t.reference-widget {\n\t\tdisplay: flex;\n\t}\n\n\t&--empty-content .provider-icon {\n\t\twidth: 150px;\n\t\theight: 150px;\n\t\tobject-fit: contain;\n\t\tfilter: var(--background-invert-if-dark);\n\t}\n\n\t&--input {\n\t\twidth: 99%;\n\t}\n}\n</style>\n","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"result\">\n\t\t<div v-if=\"entry.icon\"\n\t\t\t:class=\"{ [entry.icon]: true, rounded: entry.rounded }\"\n\t\t\tclass=\"result--icon-class\" />\n\t\t<img v-else\n\t\t\tclass=\"result--image\"\n\t\t\t:class=\"{ rounded: entry.rounded }\"\n\t\t\t:src=\"entry.thumbnailUrl\">\n\t\t<div class=\"result--content\">\n\t\t\t<span class=\"result--content--name\">\n\t\t\t\t<NcHighlight :search=\"query\" :text=\"entry.title\" />\n\t\t\t</span>\n\t\t\t<span class=\"result--content--subline\">\n\t\t\t\t<NcHighlight :search=\"query\" :text=\"entry.subline\" />\n\t\t\t</span>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport NcHighlight from '../../NcHighlight/index.js'\n\nexport default {\n\tname: 'NcSearchResult',\n\tcomponents: {\n\t\tNcHighlight,\n\t},\n\tprops: {\n\t\t/**\n\t\t * Unified search result entry\n\t\t */\n\t\tentry: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\t/**\n\t\t * The query that led to getting this result\n\t\t * Used to highlight the entry text\n\t\t */\n\t\tquery: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.result {\n\tdisplay: flex;\n\talign-items: center;\n\theight: var(--default-clickable-area);\n\toverflow: hidden;\n\n\t&--icon-class,\n\t&--image {\n\t\twidth: 40px;\n\t\tmin-width: 40px;\n\t\theight: 40px;\n\t\tobject-fit: contain;\n\n\t\t&.rounded {\n\t\t\tborder-radius: 50%;\n\t\t}\n\t}\n\n\t&--content {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tpadding-left: 10px;\n\t\toverflow: hidden;\n\n\t\t&--name,\n\t\t&--subline {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n</style>\n","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"smart-picker-search\" :class=\"{ 'with-empty-content': showEmptyContent }\">\n\t\t<NcSelect ref=\"search-select\"\n\t\t\tv-model=\"selectedResult\"\n\t\t\tclass=\"smart-picker-search--select\"\n\t\t\tinput-id=\"search-select-input\"\n\t\t\tlabel=\"name\"\n\t\t\t:placeholder=\"mySearchPlaceholder\"\n\t\t\t:options=\"options\"\n\t\t\t:append-to-body=\"false\"\n\t\t\t:close-on-select=\"false\"\n\t\t\t:clear-search-on-select=\"false\"\n\t\t\t:clear-search-on-blur=\"() => false\"\n\t\t\t:reset-focus-on-options-change=\"false\"\n\t\t\t:filterable=\"false\"\n\t\t\t:autoscroll=\"true\"\n\t\t\t:reset-on-options-change=\"false\"\n\t\t\t:loading=\"searching\"\n\t\t\t@search=\"onSearchInput\"\n\t\t\t@input=\"onSelectResultSelected\">\n\t\t\t<template #option=\"option\">\n\t\t\t\t<div v-if=\"option.isRawLink\" class=\"custom-option\">\n\t\t\t\t\t<LinkVariantIcon class=\"option-simple-icon\" :size=\"20\" />\n\t\t\t\t\t<span class=\"option-text\">\n\t\t\t\t\t\t{{ t('Raw link {options}', { options: option.resourceUrl }) }}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t\t<NcSearchResult v-else-if=\"option.resourceUrl\"\n\t\t\t\t\tclass=\"search-result\"\n\t\t\t\t\t:entry=\"option\"\n\t\t\t\t\t:query=\"searchQuery\" />\n\t\t\t\t<span v-else-if=\"option.isCustomGroupTitle\" class=\"custom-option group-name\">\n\t\t\t\t\t<img v-if=\"provider.icon_url\"\n\t\t\t\t\t\tclass=\"provider-icon group-name-icon\"\n\t\t\t\t\t\t:src=\"provider.icon_url\">\n\t\t\t\t\t<span class=\"option-text\">\n\t\t\t\t\t\t<strong>{{ option.name }}</strong>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t\t<span v-else-if=\"option.isMore\" :class=\"{ 'custom-option': true }\">\n\t\t\t\t\t<span v-if=\"option.isLoading\" class=\"option-simple-icon icon-loading-small\" />\n\t\t\t\t\t<DotsHorizontalIcon v-else class=\"option-simple-icon\" :size=\"20\" />\n\t\t\t\t\t<span class=\"option-text\">\n\t\t\t\t\t\t{{ t('Load more \"{options}\"', { options: option.name }) }}\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t</template>\n\t\t\t<template #no-options>\n\t\t\t\t{{ noOptionsText }}\n\t\t\t</template>\n\t\t</NcSelect>\n\t\t<NcEmptyContent v-if=\"showEmptyContent\"\n\t\t\tclass=\"smart-picker-search--empty-content\">\n\t\t\t<template #icon>\n\t\t\t\t<img v-if=\"provider.icon_url\"\n\t\t\t\t\tclass=\"provider-icon\"\n\t\t\t\t\t:alt=\"providerIconAlt\"\n\t\t\t\t\t:src=\"provider.icon_url\">\n\t\t\t\t<LinkVariantIcon v-else />\n\t\t\t</template>\n\t\t</NcEmptyContent>\n\t</div>\n</template>\n\n<script>\nimport NcSearchResult from './NcSearchResult.vue'\nimport { isUrl, delay } from './utils.js'\nimport NcEmptyContent from '../../NcEmptyContent/index.js'\nimport NcSelect from '../../NcSelect/index.js'\n\nimport { t } from '../../../l10n.js'\n\nimport axios from '@nextcloud/axios'\nimport { generateOcsUrl } from '@nextcloud/router'\n\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\nimport LinkVariantIcon from 'vue-material-design-icons/LinkVariant.vue'\n\nconst LIMIT = 5\n\nexport default {\n\tname: 'NcSearch',\n\tcomponents: {\n\t\tLinkVariantIcon,\n\t\tDotsHorizontalIcon,\n\t\tNcEmptyContent,\n\t\tNcSelect,\n\t\tNcSearchResult,\n\t},\n\tprops: {\n\t\t/**\n\t\t * The selected reference provider\n\t\t */\n\t\tprovider: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tshowEmptyContent: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tsearchPlaceholder: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\temits: [\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tsearchQuery: '',\n\t\t\tselectedResult: null,\n\t\t\tresultsBySearchProvider: {},\n\t\t\tsearching: false,\n\t\t\tsearchingMoreOf: null,\n\t\t\tabortController: null,\n\t\t\tnoOptionsText: t('Start typing to search'),\n\t\t\tproviderIconAlt: t('Provider icon'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tmySearchPlaceholder() {\n\t\t\treturn this.searchPlaceholder || t('Search')\n\t\t},\n\t\tsearchProviderIds() {\n\t\t\treturn this.provider.search_providers_ids\n\t\t},\n\t\toptions() {\n\t\t\tif (this.searchQuery === '') {\n\t\t\t\treturn []\n\t\t\t}\n\n\t\t\tconst options = []\n\t\t\tif (isUrl(this.searchQuery)) {\n\t\t\t\toptions.push(this.rawLinkEntry)\n\t\t\t}\n\t\t\toptions.push(...this.formattedSearchResults)\n\t\t\treturn options\n\t\t},\n\t\trawLinkEntry() {\n\t\t\treturn {\n\t\t\t\tid: 'rawLinkEntry',\n\t\t\t\tresourceUrl: this.searchQuery,\n\t\t\t\tisRawLink: true,\n\t\t\t}\n\t\t},\n\t\tformattedSearchResults() {\n\t\t\tconst results = []\n\t\t\tthis.searchProviderIds.forEach(pid => {\n\t\t\t\tif (this.resultsBySearchProvider[pid].entries.length > 0) {\n\t\t\t\t\t// don't show group name entry if there is only one search provider and one result\n\t\t\t\t\tif (this.searchProviderIds.length > 1 || this.resultsBySearchProvider[pid].entries.length > 1) {\n\t\t\t\t\t\tresults.push({\n\t\t\t\t\t\t\tid: 'groupTitle-' + pid,\n\t\t\t\t\t\t\tname: this.resultsBySearchProvider[pid].name,\n\t\t\t\t\t\t\tisCustomGroupTitle: true,\n\t\t\t\t\t\t\tproviderId: pid,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\tconst providerEntriesWithId = this.resultsBySearchProvider[pid].entries.map((entry, index) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tid: 'provider-' + pid + '-entry-' + index,\n\t\t\t\t\t\t\t...entry,\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\tresults.push(...providerEntriesWithId)\n\t\t\t\t\tif (this.resultsBySearchProvider[pid].isPaginated) {\n\t\t\t\t\t\tresults.push({\n\t\t\t\t\t\t\tid: 'moreOf-' + pid,\n\t\t\t\t\t\t\tname: this.resultsBySearchProvider[pid].name,\n\t\t\t\t\t\t\tisMore: true,\n\t\t\t\t\t\t\tproviderId: pid,\n\t\t\t\t\t\t\tisLoading: this.searchingMoreOf === pid,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn results\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.resetResults()\n\t},\n\tbeforeDestroy() {\n\t\tthis.cancelSearchRequests()\n\t},\n\tmethods: {\n\t\tt,\n\t\tresetResults() {\n\t\t\tconst resultsBySearchProvider = {}\n\t\t\tthis.searchProviderIds.forEach(pid => {\n\t\t\t\tresultsBySearchProvider[pid] = {\n\t\t\t\t\tentries: [],\n\t\t\t\t}\n\t\t\t})\n\t\t\tthis.resultsBySearchProvider = resultsBySearchProvider\n\t\t},\n\t\tfocus() {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$refs['search-select']?.$el?.querySelector('#search-select-input')?.focus()\n\t\t\t}, 300)\n\t\t},\n\t\tcancelSearchRequests() {\n\t\t\tif (this.abortController) {\n\t\t\t\tthis.abortController.abort()\n\t\t\t}\n\t\t},\n\t\tonSearchInput(query, loading) {\n\t\t\tthis.searchQuery = query\n\t\t\tdelay(() => {\n\t\t\t\tthis.updateSearch()\n\t\t\t}, 500)()\n\t\t},\n\t\tonSelectResultSelected(item) {\n\t\t\tif (item !== null) {\n\t\t\t\tif (item.resourceUrl) {\n\t\t\t\t\tthis.cancelSearchRequests()\n\t\t\t\t\tthis.$emit('submit', item.resourceUrl)\n\t\t\t\t} else if (item.isMore) {\n\t\t\t\t\tthis.searchMoreOf(item.providerId).then(() => {\n\t\t\t\t\t\t// allow clicking twice on the same \"more\" item\n\t\t\t\t\t\tthis.selectedResult = null\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tsearchMoreOf(searchProviderId) {\n\t\t\tthis.searchingMoreOf = searchProviderId\n\t\t\tthis.cancelSearchRequests()\n\t\t\treturn this.searchProviders(searchProviderId)\n\t\t},\n\t\tupdateSearch() {\n\t\t\tthis.cancelSearchRequests()\n\t\t\tthis.resetResults()\n\t\t\tif (this.searchQuery === '') {\n\t\t\t\tthis.searching = false\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\treturn this.searchProviders()\n\t\t},\n\t\tsearchProviders(searchProviderId = null) {\n\t\t\tthis.abortController = new AbortController()\n\t\t\tthis.searching = true\n\n\t\t\tconst searchPromises = searchProviderId === null\n\t\t\t\t? [...this.searchProviderIds].map(pid => {\n\t\t\t\t\treturn this.searchOneProvider(pid)\n\t\t\t\t})\n\t\t\t\t: [this.searchOneProvider(searchProviderId, this.resultsBySearchProvider[searchProviderId]?.cursor ?? null)]\n\t\t\t// fake one to have a request error\n\t\t\t// searchPromises.push(this.searchOneProvider('nopid'))\n\n\t\t\treturn Promise.allSettled(searchPromises)\n\t\t\t\t.then((promises) => {\n\t\t\t\t\tconst isOneCanceled = !!promises.find(p => {\n\t\t\t\t\t\treturn p.status === 'rejected' && (p.reason.name === 'CanceledError' || p.reason.code === 'ERR_CANCELED')\n\t\t\t\t\t})\n\t\t\t\t\t// nothing was canceled: not searching\n\t\t\t\t\tif (!isOneCanceled) {\n\t\t\t\t\t\tthis.searching = false\n\t\t\t\t\t\tthis.searchingMoreOf = null\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t},\n\t\tsearchOneProvider(providerId, cursor = null) {\n\t\t\tconst url = cursor === null\n\t\t\t\t? generateOcsUrl('search/providers/{providerId}/search?term={term}&limit={limit}', { providerId, term: this.searchQuery, limit: LIMIT })\n\t\t\t\t: generateOcsUrl('search/providers/{providerId}/search?term={term}&limit={limit}&cursor={cursor}', { providerId, term: this.searchQuery, limit: LIMIT, cursor })\n\t\t\treturn axios.get(url, {\n\t\t\t\tsignal: this.abortController.signal,\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\tconst data = response.data.ocs.data\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].name = data.name\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].cursor = data.cursor\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].isPaginated = data.isPaginated\n\t\t\t\t\tthis.resultsBySearchProvider[providerId].entries.push(...data.entries)\n\t\t\t\t})\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.smart-picker-search {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 0 16px 16px 16px;\n\t&.with-empty-content {\n\t\tmin-height: 400px;\n\t}\n\n\t.provider-icon {\n\t\twidth: 150px;\n\t\theight: 150px;\n\t\tobject-fit: contain;\n\t\tfilter: var(--background-invert-if-dark);\n\t}\n\n\t&--select {\n\t\twidth: 100%;\n\n\t\t.search-result {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t.group-name-icon,\n\t\t.option-simple-icon {\n\t\t\twidth: 20px;\n\t\t\theight: 20px;\n\t\t\tmargin: 0 20px 0 10px;\n\t\t}\n\n\t\t.custom-option {\n\t\t\theight: var(--default-clickable-area);\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\toverflow: hidden;\n\t\t}\n\n\t\t.option-text {\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n}\n</style>\n","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<div class=\"reference-picker\"\n\t\t:style=\"pickerWrapperStyle\"\n\t\ttabindex=\"-1\"\n\t\t@keydown.stop.prevent.esc=\"onEscapePressed\">\n\t\t<NcProviderList v-if=\"mode === MODES.providerList\"\n\t\t\tref=\"provider-list\"\n\t\t\t@select-provider=\"onProviderSelected\"\n\t\t\t@submit=\"submitLink\"\n\t\t\t@cancel=\"cancelProviderSelection\" />\n\t\t<NcRawLinkInput v-else-if=\"mode === MODES.standardLinkInput\"\n\t\t\tref=\"url-input\"\n\t\t\t:provider=\"selectedProvider\"\n\t\t\t@submit=\"submitLink\"\n\t\t\t@cancel=\"cancelRawLinkInput\" />\n\t\t<NcSearch v-else-if=\"mode === MODES.searchInput\"\n\t\t\tref=\"url-input\"\n\t\t\t:provider=\"selectedProvider\"\n\t\t\t@cancel=\"cancelSearch\"\n\t\t\t@submit=\"submitLink\" />\n\t\t<div v-else-if=\"mode === MODES.customElement\"\n\t\t\tclass=\"custom-element-wrapper\">\n\t\t\t<NcCustomPickerElement :provider=\"selectedProvider\"\n\t\t\t\t@submit=\"submitLink\"\n\t\t\t\t@cancel=\"cancelCustomElement\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport NcCustomPickerElement from './NcCustomPickerElement.vue'\nimport NcProviderList from './NcProviderList.vue'\nimport NcRawLinkInput from './NcRawLinkInput.vue'\nimport NcSearch from './NcSearch.vue'\nimport { isCustomPickerElementRegistered } from './../../../functions/reference/customPickerElements.js'\nimport { touchProvider } from './../../../functions/reference/providerHelper.js'\n\nconst MODES = {\n\tproviderList: 1,\n\tstandardLinkInput: 2,\n\tsearchInput: 3,\n\tcustomElement: 4,\n}\nexport default {\n\tname: 'NcReferencePicker',\n\tcomponents: {\n\t\tNcCustomPickerElement,\n\t\tNcProviderList,\n\t\tNcRawLinkInput,\n\t\tNcSearch,\n\t},\n\tprops: {\n\t\t/**\n\t\t * Provider to select on creation\n\t\t * Default: null. Show the provider list\n\t\t */\n\t\tinitialProvider: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => null,\n\t\t},\n\t\t/**\n\t\t * Optional width in pixels\n\t\t * Default: 100%\n\t\t */\n\t\twidth: {\n\t\t\ttype: Number,\n\t\t\tdefault: null,\n\t\t},\n\t\t/**\n\t\t * Focus on the provider list select input on creation\n\t\t * Default: true\n\t\t */\n\t\tfocusOnCreate: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\temits: [\n\t\t'cancel',\n\t\t'cancel-raw-link',\n\t\t'cancel-search',\n\t\t'provider-selected',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tMODES,\n\t\t\tselectedProvider: this.initialProvider,\n\t\t}\n\t},\n\tcomputed: {\n\t\tmode() {\n\t\t\treturn this.selectedProvider === null\n\t\t\t\t? MODES.providerList\n\t\t\t\t: isCustomPickerElementRegistered(this.selectedProvider.id)\n\t\t\t\t\t? MODES.customElement\n\t\t\t\t\t: this.selectedProvider.search_providers_ids\n\t\t\t\t\t\t? MODES.searchInput\n\t\t\t\t\t\t: MODES.standardLinkInput\n\t\t},\n\t\tpickerWrapperStyle() {\n\t\t\treturn {\n\t\t\t\twidth: this.width ? this.width + 'px' : undefined,\n\t\t\t}\n\t\t},\n\t},\n\tmounted() {\n\t\tif (this.focusOnCreate) {\n\t\t\tif (this.initialProvider) {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.$refs['url-input']?.focus()\n\t\t\t\t}, 300)\n\t\t\t} else {\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tthis.$refs['provider-list']?.focus()\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t},\n\tmethods: {\n\t\tonEscapePressed() {\n\t\t\tif (this.selectedProvider !== null) {\n\t\t\t\tthis.deselectProvider()\n\t\t\t} else {\n\t\t\t\tthis.cancelProviderSelection()\n\t\t\t}\n\t\t},\n\t\tonProviderSelected(provider) {\n\t\t\tthis.selectedProvider = provider\n\t\t\tthis.$emit('provider-selected', provider)\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tthis.$refs['url-input']?.focus()\n\t\t\t})\n\t\t},\n\t\tcancelCustomElement() {\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tcancelSearch() {\n\t\t\tthis.$emit('cancel-search', this.selectedProvider?.title)\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tcancelRawLinkInput() {\n\t\t\tthis.$emit('cancel-raw-link', this.selectedProvider?.title)\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tcancelProviderSelection() {\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t\tsubmitLink(link) {\n\t\t\tif (this.selectedProvider !== null) {\n\t\t\t\ttouchProvider(this.selectedProvider.id)\n\t\t\t}\n\t\t\tthis.$emit('submit', link)\n\t\t\tthis.deselectProvider()\n\t\t},\n\t\tdeselectProvider() {\n\t\t\tthis.selectedProvider = null\n\t\t\tthis.$emit('provider-selected', null)\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$refs['provider-list']?.focus()\n\t\t\t}, 300)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.reference-picker {\n\tdisplay: flex;\n\toverflow-y: auto;\n\twidth: 100%;\n\n\t.custom-element-wrapper {\n\t\tdisplay: flex;\n\t\toverflow-y: auto;\n\t\twidth: 100%;\n\t}\n}\n</style>\n","<!--\n - SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<template>\n\t<NcModal v-if=\"show\"\n\t\t:size=\"modalSize\"\n\t\t:can-close=\"false\"\n\t\tclass=\"reference-picker-modal\"\n\t\t@close=\"onCancel\">\n\t\t<div ref=\"modal_content\"\n\t\t\tclass=\"reference-picker-modal--content\">\n\t\t\t<NcButton v-if=\"showBackButton\"\n\t\t\t\t:aria-label=\"backButtonTitle\"\n\t\t\t\t:title=\"backButtonTitle\"\n\t\t\t\tclass=\"back-button\"\n\t\t\t\t@click=\"onBackClicked\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<ArrowLeftIcon />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton :aria-label=\"closeButtonLabel\"\n\t\t\t\t:title=\"closeButtonTitle\"\n\t\t\t\ttype=\"tertiary\"\n\t\t\t\tclass=\"close-button\"\n\t\t\t\t@click=\"onCancel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CloseIcon />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<h2 v-if=\"showModalName\">\n\t\t\t\t{{ modalName }}\n\t\t\t</h2>\n\t\t\t<NcReferencePicker ref=\"referencePicker\"\n\t\t\t\t:initial-provider=\"initialProvider\"\n\t\t\t\t:focus-on-create=\"focusOnCreate\"\n\t\t\t\t@provider-selected=\"onProviderSelect\"\n\t\t\t\t@submit=\"onSubmit\"\n\t\t\t\t@cancel=\"onCancel\" />\n\t\t</div>\n\t</NcModal>\n</template>\n\n<script>\nimport NcReferencePicker from './NcReferencePicker.vue'\nimport { getCustomPickerElementSize, isCustomPickerElementRegistered } from './../../../functions/reference/customPickerElements.js'\nimport NcButton from '../../NcButton/index.js'\nimport NcModal from '../../NcModal/index.js'\nimport { t } from '../../../l10n.js'\n\nimport { emit } from '@nextcloud/event-bus'\n\nimport ArrowLeftIcon from 'vue-material-design-icons/ArrowLeft.vue'\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\n\nexport default {\n\tname: 'NcReferencePickerModal',\n\tcomponents: {\n\t\tNcReferencePicker,\n\t\tNcModal,\n\t\tNcButton,\n\t\tArrowLeftIcon,\n\t\tCloseIcon,\n\t},\n\tprops: {\n\t\t/**\n\t\t * Provider to select on creation\n\t\t * Show the provider list if no initial one is provided\n\t\t */\n\t\tinitialProvider: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => null,\n\t\t},\n\t\t/**\n\t\t * Focus on the input item on create\n\t\t */\n\t\tfocusOnCreate: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\t/**\n\t\t * If true, add the modal content to the Viewer trap elements via the event-bus\n\t\t */\n\t\tisInsideViewer: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\temits: [\n\t\t'cancel',\n\t\t'submit',\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tshow: true,\n\t\t\tselectedProvider: this.initialProvider,\n\t\t\tbackButtonTitle: t('Back to provider selection'),\n\t\t\tcloseButtonTitle: t('Close'),\n\t\t\tcloseButtonLabel: t('Close Smart Picker'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tisProviderSelected() {\n\t\t\treturn this.selectedProvider !== null\n\t\t},\n\t\tshowBackButton() {\n\t\t\treturn this.initialProvider === null && this.isProviderSelected\n\t\t},\n\t\tmodalSize() {\n\t\t\treturn this.isProviderSelected && isCustomPickerElementRegistered(this.selectedProvider.id)\n\t\t\t\t? (getCustomPickerElementSize(this.selectedProvider.id) ?? 'large')\n\t\t\t\t: 'normal'\n\t\t},\n\t\tshowModalName() {\n\t\t\treturn !this.isProviderSelected || !isCustomPickerElementRegistered(this.selectedProvider.id)\n\t\t},\n\t\tmodalName() {\n\t\t\treturn this.isProviderSelected\n\t\t\t\t? this.selectedProvider.title\n\t\t\t\t: t('Smart Picker')\n\t\t},\n\t},\n\tmounted() {\n\t\tif (this.isInsideViewer) {\n\t\t\tconst elem = this.$refs.modal_content\n\t\t\temit('viewer:trapElements:changed', elem)\n\t\t}\n\t},\n\tmethods: {\n\t\tonCancel() {\n\t\t\tthis.show = false\n\t\t\tthis.$emit('cancel')\n\t\t},\n\t\tonSubmit(value) {\n\t\t\tthis.show = false\n\t\t\tthis.$emit('submit', value)\n\t\t},\n\t\tonProviderSelect(provider) {\n\t\t\tthis.selectedProvider = provider\n\t\t\t// provider was deselected and we started with an inital one: just close the modal\n\t\t\tif (provider === null && this.initialProvider !== null) {\n\t\t\t\tthis.onCancel()\n\t\t\t}\n\t\t},\n\t\tonBackClicked() {\n\t\t\tthis.$refs.referencePicker.deselectProvider()\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\">\n// this is to avoid scroll on the container and leave it to the result block\n.reference-picker-modal .modal-container {\n\tdisplay: flex !important;\n}\n</style>\n\n<style lang=\"scss\" scoped>\n.reference-picker-modal--content {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: center;\n\tjustify-content: center;\n\toverflow-y: auto;\n\n\t.close-button,\n\t.back-button {\n\t\tposition: absolute;\n\t\ttop: 4px;\n\t}\n\t.back-button {\n\t\tleft: 4px;\n\t}\n\t.close-button {\n\t\tright: 4px;\n\t}\n\n\t> h2 {\n\t\tdisplay: flex;\n\t\tmargin: 12px 0 20px 0;\n\t\t.icon {\n\t\t\tmargin-right: 8px;\n\t\t}\n\t}\n}\n</style>\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport NcReferencePickerModal from './../../components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue'\nimport { getProvider } from './providerHelper.js'\n\nimport Vue from 'vue'\n\n/**\n * Creates a reference picker modal and return a promise which provides the result\n *\n * @param {string} providerId Optional ID of initial selected provider\n * @param {boolean} isInsideViewer Should be true if this function is called while the Viewer is displayed\n * @return {Promise<unknown>}\n */\nexport async function getLinkWithPicker(providerId = null, isInsideViewer = undefined) {\n\treturn await new Promise((resolve, reject) => {\n\t\tconst modalId = 'referencePickerModal'\n\t\tconst modalElement = document.createElement('div')\n\t\tmodalElement.id = modalId\n\t\tdocument.body.append(modalElement)\n\n\t\tconst initialProvider = providerId === null\n\t\t\t? null\n\t\t\t: (getProvider(providerId) ?? null)\n\n\t\tconst View = Vue.extend(NcReferencePickerModal)\n\t\tconst view = new View({\n\t\t\tpropsData: {\n\t\t\t\tinitialProvider,\n\t\t\t\tisInsideViewer,\n\t\t\t},\n\t\t}).$mount(modalElement)\n\n\t\tview.$on('cancel', () => {\n\t\t\tview.$destroy()\n\t\t\treject(new Error('User cancellation'))\n\t\t})\n\t\tview.$on('submit', (link) => {\n\t\t\tview.$destroy()\n\t\t\tresolve(link)\n\t\t})\n\t})\n}\n"],"names":["_sfc_main","DotsHorizontalIcon","ArrowLeftIcon","CloseIcon"],"mappings":"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","x_google_ignoreList":[4]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ const GenColors = require("./GenColors-Dt-3yZwf.cjs");
3
+ const md5 = require("md5");
4
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
5
+ const md5__default = /* @__PURE__ */ _interopDefault(md5);
6
+ const usernameToColor = function(username) {
7
+ let hash = username.toLowerCase();
8
+ if (hash.match(/^([0-9a-f]{4}-?){8}$/) === null) {
9
+ hash = md5__default.default(hash);
10
+ }
11
+ hash = hash.replace(/[^0-9a-f]/g, "");
12
+ const steps = 6;
13
+ const finalPalette = GenColors.GenColors(steps);
14
+ function hashToInt(hash2, maximum) {
15
+ let finalInt = 0;
16
+ const result = [];
17
+ for (let i = 0; i < hash2.length; i++) {
18
+ result.push(parseInt(hash2.charAt(i), 16) % 16);
19
+ }
20
+ for (const j in result) {
21
+ finalInt += result[j];
22
+ }
23
+ return parseInt(parseInt(finalInt, 10) % maximum, 10);
24
+ }
25
+ return finalPalette[hashToInt(hash, steps * 3)];
26
+ };
27
+ exports.usernameToColor = usernameToColor;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usernameToColor-BzDTLedj.cjs","sources":["../../src/functions/usernameToColor/usernameToColor.js"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { GenColors } from '../../utils/GenColors.js'\n\nimport md5 from 'md5'\n\n/**\n * Generate a color from a username\n * Originally taken from https://github.com/nextcloud/server/blob/master/core/js/placeholder.js\n *\n * @param {string} username Display name or user id to generate from\n * @return {{ r: number, g: number, b: number }} the RGB color\n */\nconst usernameToColor = function(username) {\n\t// Normalize hash\n\tlet hash = username.toLowerCase()\n\n\t// Already a md5 hash?\n\tif (hash.match(/^([0-9a-f]{4}-?){8}$/) === null) {\n\t\thash = md5(hash)\n\t}\n\n\thash = hash.replace(/[^0-9a-f]/g, '')\n\n\tconst steps = 6\n\tconst finalPalette = GenColors(steps)\n\n\t/**\n\t * Convert a string to an integer evenly\n\t *\n\t * @param {string} hash The hash to convert\n\t * @param {number} maximum Largest number allowed\n\t */\n\tfunction hashToInt(hash, maximum) {\n\t\tlet finalInt = 0\n\t\tconst result = []\n\n\t\t// Splitting evenly the string\n\t\tfor (let i = 0; i < hash.length; i++) {\n\t\t\t// chars in md5 goes up to f, hex:16\n\t\t\tresult.push(parseInt(hash.charAt(i), 16) % 16)\n\t\t}\n\n\t\t// Adds up all results\n\t\tfor (const j in result) {\n\t\t\tfinalInt += result[j]\n\t\t}\n\n\t\t// chars in md5 goes up to f, hex:16\n\t\t// make sure we're always using int in our operation\n\t\treturn parseInt(parseInt(finalInt, 10) % maximum, 10)\n\t}\n\treturn finalPalette[hashToInt(hash, steps * 3)]\n}\n\nexport default usernameToColor\n"],"names":["md5","GenColors","hash"],"mappings":";;;;;AAgBK,MAAC,kBAAkB,SAAS,UAAU;AAE1C,MAAI,OAAO,SAAS,YAAa;AAGjC,MAAI,KAAK,MAAM,sBAAsB,MAAM,MAAM;AAChD,WAAOA,aAAG,QAAC,IAAI;AAAA,EACf;AAED,SAAO,KAAK,QAAQ,cAAc,EAAE;AAEpC,QAAM,QAAQ;AACd,QAAM,eAAeC,UAAS,UAAC,KAAK;AAQpC,WAAS,UAAUC,OAAM,SAAS;AACjC,QAAI,WAAW;AACf,UAAM,SAAS,CAAE;AAGjB,aAAS,IAAI,GAAG,IAAIA,MAAK,QAAQ,KAAK;AAErC,aAAO,KAAK,SAASA,MAAK,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE;AAAA,IAC7C;AAGD,eAAW,KAAK,QAAQ;AACvB,kBAAY,OAAO,CAAC;AAAA,IACpB;AAID,WAAO,SAAS,SAAS,UAAU,EAAE,IAAI,SAAS,EAAE;AAAA,EACpD;AACD,SAAO,aAAa,UAAU,MAAM,QAAQ,CAAC,CAAC;AAC/C;;"}
@@ -0,0 +1,26 @@
1
+ import { G as GenColors } from "./GenColors-DtEnxSd9.mjs";
2
+ import md5 from "md5";
3
+ const usernameToColor = function(username) {
4
+ let hash = username.toLowerCase();
5
+ if (hash.match(/^([0-9a-f]{4}-?){8}$/) === null) {
6
+ hash = md5(hash);
7
+ }
8
+ hash = hash.replace(/[^0-9a-f]/g, "");
9
+ const steps = 6;
10
+ const finalPalette = GenColors(steps);
11
+ function hashToInt(hash2, maximum) {
12
+ let finalInt = 0;
13
+ const result = [];
14
+ for (let i = 0; i < hash2.length; i++) {
15
+ result.push(parseInt(hash2.charAt(i), 16) % 16);
16
+ }
17
+ for (const j in result) {
18
+ finalInt += result[j];
19
+ }
20
+ return parseInt(parseInt(finalInt, 10) % maximum, 10);
21
+ }
22
+ return finalPalette[hashToInt(hash, steps * 3)];
23
+ };
24
+ export {
25
+ usernameToColor as u
26
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usernameToColor-CB3rGdYw.mjs","sources":["../../src/functions/usernameToColor/usernameToColor.js"],"sourcesContent":["/**\n * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { GenColors } from '../../utils/GenColors.js'\n\nimport md5 from 'md5'\n\n/**\n * Generate a color from a username\n * Originally taken from https://github.com/nextcloud/server/blob/master/core/js/placeholder.js\n *\n * @param {string} username Display name or user id to generate from\n * @return {{ r: number, g: number, b: number }} the RGB color\n */\nconst usernameToColor = function(username) {\n\t// Normalize hash\n\tlet hash = username.toLowerCase()\n\n\t// Already a md5 hash?\n\tif (hash.match(/^([0-9a-f]{4}-?){8}$/) === null) {\n\t\thash = md5(hash)\n\t}\n\n\thash = hash.replace(/[^0-9a-f]/g, '')\n\n\tconst steps = 6\n\tconst finalPalette = GenColors(steps)\n\n\t/**\n\t * Convert a string to an integer evenly\n\t *\n\t * @param {string} hash The hash to convert\n\t * @param {number} maximum Largest number allowed\n\t */\n\tfunction hashToInt(hash, maximum) {\n\t\tlet finalInt = 0\n\t\tconst result = []\n\n\t\t// Splitting evenly the string\n\t\tfor (let i = 0; i < hash.length; i++) {\n\t\t\t// chars in md5 goes up to f, hex:16\n\t\t\tresult.push(parseInt(hash.charAt(i), 16) % 16)\n\t\t}\n\n\t\t// Adds up all results\n\t\tfor (const j in result) {\n\t\t\tfinalInt += result[j]\n\t\t}\n\n\t\t// chars in md5 goes up to f, hex:16\n\t\t// make sure we're always using int in our operation\n\t\treturn parseInt(parseInt(finalInt, 10) % maximum, 10)\n\t}\n\treturn finalPalette[hashToInt(hash, steps * 3)]\n}\n\nexport default usernameToColor\n"],"names":["hash"],"mappings":";;AAgBK,MAAC,kBAAkB,SAAS,UAAU;AAE1C,MAAI,OAAO,SAAS,YAAa;AAGjC,MAAI,KAAK,MAAM,sBAAsB,MAAM,MAAM;AAChD,WAAO,IAAI,IAAI;AAAA,EACf;AAED,SAAO,KAAK,QAAQ,cAAc,EAAE;AAEpC,QAAM,QAAQ;AACd,QAAM,eAAe,UAAU,KAAK;AAQpC,WAAS,UAAUA,OAAM,SAAS;AACjC,QAAI,WAAW;AACf,UAAM,SAAS,CAAE;AAGjB,aAAS,IAAI,GAAG,IAAIA,MAAK,QAAQ,KAAK;AAErC,aAAO,KAAK,SAASA,MAAK,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE;AAAA,IAC7C;AAGD,eAAW,KAAK,QAAQ;AACvB,kBAAY,OAAO,CAAC;AAAA,IACpB;AAID,WAAO,SAAS,SAAS,UAAU,EAAE,IAAI,SAAS,EAAE;AAAA,EACpD;AACD,SAAO,aAAa,UAAU,MAAM,QAAQ,CAAC,CAAC;AAC/C;"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
3
+ * SPDX-License-Identifier: AGPL-3.0-or-later
4
+ */
5
+ /**
6
+ * Lists all collections
7
+ * @param collectionId Collection ID
8
+ */
9
+ export declare function listCollectionService(collectionId: number): Promise<any>;
10
+ /**
11
+ * Renames a collection
12
+ * @param collectionId Collection ID
13
+ * @param collectionName New collection name
14
+ */
15
+ export declare function renameCollectionService(collectionId: number, collectionName: string): Promise<any>;
16
+ /**
17
+ * Lists all collections for a resource
18
+ * @param resourceType Resource type
19
+ * @param resourceId Resource ID
20
+ */
21
+ export declare function getCollectionsByResourceService(resourceType: string, resourceId: string): Promise<any>;
22
+ /**
23
+ * Creates a collection
24
+ * @param resourceType Resource type
25
+ * @param resourceId Resource ID
26
+ * @param name Collection name
27
+ */
28
+ export declare function createCollectionService(resourceType: string, resourceId: string, name: string): Promise<any>;
29
+ /**
30
+ * Adds a resource to a collection
31
+ * @param collectionId Collection ID
32
+ * @param resourceType Resource type
33
+ * @param resourceId Resource ID
34
+ */
35
+ export declare function addResourceService(collectionId: number, resourceType: string, resourceId: string): Promise<any>;
36
+ /**
37
+ * Removes a resource from a collection
38
+ * @param collectionId Collection ID
39
+ * @param resourceType Resource type
40
+ * @param resourceId Resource ID
41
+ */
42
+ export declare function removeResourceService(collectionId: number, resourceType: string, resourceId: string): Promise<any>;
43
+ /**
44
+ * Searches for collections
45
+ * @param query Search query
46
+ */
47
+ export declare function searchService(query: string): Promise<any>;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
3
+ * SPDX-License-Identifier: AGPL-3.0-or-later
4
+ */
5
+ export declare const useActionText: () => {
6
+ /**
7
+ * The current text from the default slot as $slots is not reactive
8
+ */
9
+ text: import('vue').Ref<string>;
10
+ /**
11
+ * Check if the passed text is considered long (currently > 20 characters)
12
+ */
13
+ isLongText: import('vue').ComputedRef<boolean | "">;
14
+ };
@@ -33,22 +33,22 @@ export declare function useFormatDateTime(timestamp?: MaybeRef<Date | number>, o
33
33
  weekday?: "long" | "short" | "narrow" | undefined;
34
34
  era?: "long" | "short" | "narrow" | undefined;
35
35
  year?: "numeric" | "2-digit" | undefined;
36
- month?: "long" | "short" | "narrow" | "numeric" | "2-digit" | undefined;
36
+ month?: "numeric" | "2-digit" | "long" | "short" | "narrow" | undefined;
37
37
  day?: "numeric" | "2-digit" | undefined;
38
38
  hour?: "numeric" | "2-digit" | undefined;
39
39
  minute?: "numeric" | "2-digit" | undefined;
40
40
  second?: "numeric" | "2-digit" | undefined;
41
- timeZoneName?: "long" | "short" | "shortOffset" | "longOffset" | "shortGeneric" | "longGeneric" | undefined;
41
+ timeZoneName?: "short" | "long" | "shortOffset" | "longOffset" | "shortGeneric" | "longGeneric" | undefined;
42
42
  formatMatcher?: "best fit" | "basic" | undefined;
43
43
  hour12?: boolean | undefined;
44
44
  timeZone?: string | undefined;
45
45
  calendar?: string | undefined;
46
- dayPeriod?: "long" | "short" | "narrow" | undefined;
46
+ dayPeriod?: "narrow" | "short" | "long" | undefined;
47
47
  numberingSystem?: string | undefined;
48
- dateStyle?: "full" | "long" | "short" | "medium" | undefined;
49
- timeStyle?: "full" | "long" | "short" | "medium" | undefined;
48
+ dateStyle?: "full" | "long" | "medium" | "short" | undefined;
49
+ timeStyle?: "full" | "long" | "medium" | "short" | undefined;
50
50
  hourCycle?: "h11" | "h12" | "h23" | "h24" | undefined;
51
- fractionalSecondDigits?: 1 | 3 | 2 | undefined;
51
+ fractionalSecondDigits?: 1 | 2 | 3 | undefined;
52
52
  };
53
53
  ignoreSeconds: boolean;
54
54
  relativeTime: false | "long" | "short" | "narrow";
@@ -1,23 +1,6 @@
1
1
  /**
2
- * @copyright 2022 Christopher Ng <chrng8@gmail.com>
3
- *
4
- * @author Christopher Ng <chrng8@gmail.com>
5
- *
6
- * @license AGPL-3.0-or-later
7
- *
8
- * This program is free software: you can redistribute it and/or modify
9
- * it under the terms of the GNU Affero General Public License as
10
- * published by the Free Software Foundation, either version 3 of the
11
- * License, or (at your option) any later version.
12
- *
13
- * This program is distributed in the hope that it will be useful,
14
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- * GNU Affero General Public License for more details.
17
- *
18
- * You should have received a copy of the GNU Affero General Public License
19
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
20
- *
2
+ * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors
3
+ * SPDX-License-Identifier: AGPL-3.0-or-later
21
4
  */
22
5
  /**
23
6
  * Return true if the DOM event is an accessible mouse or keyboard element activation, false otherwise
@@ -1,23 +1,6 @@
1
1
  /**
2
- * @copyright Copyright (c) 2021 Jonas Meurer <jonas@freesources.org>
3
- *
4
- * @author Jonas Meurer <jonas@freesources.org>
5
- *
6
- * @license AGPL-3.0-or-later
7
- *
8
- * This program is free software: you can redistribute it and/or modify
9
- * it under the terms of the GNU Affero General Public License as
10
- * published by the Free Software Foundation, either version 3 of the
11
- * License, or (at your option) any later version.
12
- *
13
- * This program is distributed in the hope that it will be useful,
14
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- * GNU Affero General Public License for more details.
17
- *
18
- * You should have received a copy of the GNU Affero General Public License
19
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
20
- *
2
+ * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
3
+ * SPDX-License-Identifier: AGPL-3.0-or-later
21
4
  */
22
5
  /**
23
6
  * Skin tones supported by Unicode Emojis (Fitzpatrick scale)
@@ -32,19 +15,32 @@ export declare enum EmojiSkinTone {
32
15
  Dark = 6
33
16
  }
34
17
  /**
35
- * @param {string} query Emoji search string
36
- * @param {number} maxResults Maximum of returned emojis
37
- * @return {Array} list of found emojis
18
+ * Get the list of emojis by search filter or the list of frequently used emojis
19
+ *
20
+ * @param query Emoji search filter string; if no string or empty string is given, the list of frequently used emojis is returned
21
+ * @param maxResults Maximum of returned emojis
22
+ * @return {object[]} list of found emojis in the same format as the emoji-mart-vue-fast's EmojiIndex
23
+ */
24
+ export declare function emojiSearch(query: string, maxResults?: number): object[];
25
+ /**
26
+ * Add emoji to the list of recent emojis.
27
+ * This list can be got from emojiSearch function and it is used in NcEmojiPicker.
28
+ *
29
+ * @param emojiData object with `id` property
30
+ * @param emojiData.id the emoji ID from emoji index
38
31
  */
39
- export declare const emojiSearch: (query: string, maxResults?: number) => any;
40
- export declare const emojiAddRecent: (id: any) => void;
32
+ export declare function emojiAddRecent(emojiData: {
33
+ id: string;
34
+ }): void;
41
35
  /**
42
36
  * Get the current skin tone index used for emojis
37
+ *
43
38
  * @return {EmojiSkinTone} The skin tone
44
39
  */
45
- export declare const getCurrentSkinTone: () => number;
40
+ export declare function getCurrentSkinTone(): EmojiSkinTone;
46
41
  /**
47
42
  * Set the current active skin tone for emojis
48
- * @param {EmojiSkinTone} skinTone Skin tone
43
+ *
44
+ * @param skinTone Skin tone
49
45
  */
50
- export declare const setCurrentSkinTone: (skinTone: EmojiSkinTone) => void;
46
+ export declare function setCurrentSkinTone(skinTone: EmojiSkinTone): void;
@@ -1,22 +1,5 @@
1
1
  /**
2
- * @copyright Copyright (c) 2021 Jonas Meurer <jonas@freesources.org>
3
- *
4
- * @author Jonas Meurer <jonas@freesources.org>
5
- *
6
- * @license AGPL-3.0-or-later
7
- *
8
- * This program is free software: you can redistribute it and/or modify
9
- * it under the terms of the GNU Affero General Public License as
10
- * published by the Free Software Foundation, either version 3 of the
11
- * License, or (at your option) any later version.
12
- *
13
- * This program is distributed in the hope that it will be useful,
14
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- * GNU Affero General Public License for more details.
17
- *
18
- * You should have received a copy of the GNU Affero General Public License
19
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
20
- *
2
+ * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
3
+ * SPDX-License-Identifier: AGPL-3.0-or-later
21
4
  */
22
5
  export * from './emoji';
@@ -1,3 +1,7 @@
1
+ /**
2
+ * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
3
+ * SPDX-License-Identifier: AGPL-3.0-or-later
4
+ */
1
5
  interface WidgetRenderProperties {
2
6
  richObjectType: string;
3
7
  richObject: object;