@nextcloud/vue 8.4.0 → 8.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (648) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/dist/Components/NcActionButton.cjs +85 -23
  3. package/dist/Components/NcActionButton.cjs.map +1 -1
  4. package/dist/Components/NcActionButton.mjs +88 -24
  5. package/dist/Components/NcActionButton.mjs.map +1 -1
  6. package/dist/Components/NcActionButtonGroup.cjs +3 -45
  7. package/dist/Components/NcActionButtonGroup.cjs.map +1 -1
  8. package/dist/Components/NcActionButtonGroup.mjs +2 -48
  9. package/dist/Components/NcActionButtonGroup.mjs.map +1 -1
  10. package/dist/Components/NcActionCaption.cjs +8 -9
  11. package/dist/Components/NcActionCaption.cjs.map +1 -1
  12. package/dist/Components/NcActionCaption.mjs +8 -8
  13. package/dist/Components/NcActionCheckbox.cjs +4 -5
  14. package/dist/Components/NcActionCheckbox.cjs.map +1 -1
  15. package/dist/Components/NcActionCheckbox.mjs +13 -13
  16. package/dist/Components/NcActionInput.cjs +3 -234
  17. package/dist/Components/NcActionInput.cjs.map +1 -1
  18. package/dist/Components/NcActionInput.mjs +2 -242
  19. package/dist/Components/NcActionInput.mjs.map +1 -1
  20. package/dist/Components/NcActionLink.cjs +2 -3
  21. package/dist/Components/NcActionLink.cjs.map +1 -1
  22. package/dist/Components/NcActionLink.mjs +3 -3
  23. package/dist/Components/NcActionRadio.cjs +12 -13
  24. package/dist/Components/NcActionRadio.cjs.map +1 -1
  25. package/dist/Components/NcActionRadio.mjs +11 -11
  26. package/dist/Components/NcActionRouter.cjs +5 -6
  27. package/dist/Components/NcActionRouter.cjs.map +1 -1
  28. package/dist/Components/NcActionRouter.mjs +6 -6
  29. package/dist/Components/NcActionSeparator.cjs +6 -7
  30. package/dist/Components/NcActionSeparator.cjs.map +1 -1
  31. package/dist/Components/NcActionSeparator.mjs +9 -9
  32. package/dist/Components/NcActionText.cjs +7 -8
  33. package/dist/Components/NcActionText.cjs.map +1 -1
  34. package/dist/Components/NcActionText.mjs +10 -10
  35. package/dist/Components/NcActionTextEditable.cjs +4 -5
  36. package/dist/Components/NcActionTextEditable.cjs.map +1 -1
  37. package/dist/Components/NcActionTextEditable.mjs +5 -5
  38. package/dist/Components/NcActions.cjs +3 -483
  39. package/dist/Components/NcActions.cjs.map +1 -1
  40. package/dist/Components/NcActions.mjs +2 -489
  41. package/dist/Components/NcActions.mjs.map +1 -1
  42. package/dist/Components/NcAppContent.cjs +3 -222
  43. package/dist/Components/NcAppContent.cjs.map +1 -1
  44. package/dist/Components/NcAppContent.mjs +2 -230
  45. package/dist/Components/NcAppContent.mjs.map +1 -1
  46. package/dist/Components/NcAppContentDetails.cjs +1 -1
  47. package/dist/Components/NcAppContentDetails.mjs +1 -1
  48. package/dist/Components/NcAppContentList.cjs +1 -1
  49. package/dist/Components/NcAppContentList.mjs +1 -1
  50. package/dist/Components/NcAppNavigation.cjs +3 -101
  51. package/dist/Components/NcAppNavigation.cjs.map +1 -1
  52. package/dist/Components/NcAppNavigation.mjs +2 -106
  53. package/dist/Components/NcAppNavigation.mjs.map +1 -1
  54. package/dist/Components/NcAppNavigationCaption.cjs +3 -44
  55. package/dist/Components/NcAppNavigationCaption.cjs.map +1 -1
  56. package/dist/Components/NcAppNavigationCaption.mjs +2 -45
  57. package/dist/Components/NcAppNavigationCaption.mjs.map +1 -1
  58. package/dist/Components/NcAppNavigationIconBullet.cjs +5 -6
  59. package/dist/Components/NcAppNavigationIconBullet.cjs.map +1 -1
  60. package/dist/Components/NcAppNavigationIconBullet.mjs +8 -8
  61. package/dist/Components/NcAppNavigationItem.cjs +3 -498
  62. package/dist/Components/NcAppNavigationItem.cjs.map +1 -1
  63. package/dist/Components/NcAppNavigationItem.mjs +2 -508
  64. package/dist/Components/NcAppNavigationItem.mjs.map +1 -1
  65. package/dist/Components/NcAppNavigationNew.cjs +14 -15
  66. package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
  67. package/dist/Components/NcAppNavigationNew.mjs +6 -6
  68. package/dist/Components/NcAppNavigationNewItem.cjs +3 -87
  69. package/dist/Components/NcAppNavigationNewItem.cjs.map +1 -1
  70. package/dist/Components/NcAppNavigationNewItem.mjs +2 -89
  71. package/dist/Components/NcAppNavigationNewItem.mjs.map +1 -1
  72. package/dist/Components/NcAppNavigationSettings.cjs +3 -102
  73. package/dist/Components/NcAppNavigationSettings.cjs.map +1 -1
  74. package/dist/Components/NcAppNavigationSettings.mjs +2 -103
  75. package/dist/Components/NcAppNavigationSettings.mjs.map +1 -1
  76. package/dist/Components/NcAppNavigationSpacer.cjs +10 -11
  77. package/dist/Components/NcAppNavigationSpacer.cjs.map +1 -1
  78. package/dist/Components/NcAppNavigationSpacer.mjs +10 -10
  79. package/dist/Components/NcAppNavigationToggle.cjs +1 -1
  80. package/dist/Components/NcAppNavigationToggle.mjs +1 -1
  81. package/dist/Components/NcAppSettingsDialog.cjs +3 -182
  82. package/dist/Components/NcAppSettingsDialog.cjs.map +1 -1
  83. package/dist/Components/NcAppSettingsDialog.mjs +2 -188
  84. package/dist/Components/NcAppSettingsDialog.mjs.map +1 -1
  85. package/dist/Components/NcAppSettingsSection.cjs +7 -11
  86. package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
  87. package/dist/Components/NcAppSettingsSection.mjs +7 -10
  88. package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
  89. package/dist/Components/NcAppSidebar.cjs +3 -552
  90. package/dist/Components/NcAppSidebar.cjs.map +1 -1
  91. package/dist/Components/NcAppSidebar.mjs +2 -567
  92. package/dist/Components/NcAppSidebar.mjs.map +1 -1
  93. package/dist/Components/NcAppSidebarTab.cjs +5 -7
  94. package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
  95. package/dist/Components/NcAppSidebarTab.mjs +3 -4
  96. package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
  97. package/dist/Components/NcAvatar.cjs +2 -2
  98. package/dist/Components/NcAvatar.mjs +1 -1
  99. package/dist/Components/NcBreadcrumb.cjs +3 -176
  100. package/dist/Components/NcBreadcrumb.cjs.map +1 -1
  101. package/dist/Components/NcBreadcrumb.mjs +2 -179
  102. package/dist/Components/NcBreadcrumb.mjs.map +1 -1
  103. package/dist/Components/NcBreadcrumbs.cjs +3 -411
  104. package/dist/Components/NcBreadcrumbs.cjs.map +1 -1
  105. package/dist/Components/NcBreadcrumbs.mjs +2 -420
  106. package/dist/Components/NcBreadcrumbs.mjs.map +1 -1
  107. package/dist/Components/NcButton.cjs +42 -30
  108. package/dist/Components/NcButton.cjs.map +1 -1
  109. package/dist/Components/NcButton.mjs +43 -30
  110. package/dist/Components/NcButton.mjs.map +1 -1
  111. package/dist/Components/NcCheckboxRadioSwitch.cjs +3 -600
  112. package/dist/Components/NcCheckboxRadioSwitch.cjs.map +1 -1
  113. package/dist/Components/NcCheckboxRadioSwitch.mjs +2 -604
  114. package/dist/Components/NcCheckboxRadioSwitch.mjs.map +1 -1
  115. package/dist/Components/NcColorPicker.cjs +3 -158
  116. package/dist/Components/NcColorPicker.cjs.map +1 -1
  117. package/dist/Components/NcColorPicker.mjs +2 -167
  118. package/dist/Components/NcColorPicker.mjs.map +1 -1
  119. package/dist/Components/NcContent.cjs +3 -25
  120. package/dist/Components/NcContent.cjs.map +1 -1
  121. package/dist/Components/NcContent.mjs +2 -25
  122. package/dist/Components/NcContent.mjs.map +1 -1
  123. package/dist/Components/NcCounterBubble.cjs +4 -5
  124. package/dist/Components/NcCounterBubble.cjs.map +1 -1
  125. package/dist/Components/NcCounterBubble.mjs +4 -4
  126. package/dist/Components/NcDashboardWidget.cjs +3 -134
  127. package/dist/Components/NcDashboardWidget.cjs.map +1 -1
  128. package/dist/Components/NcDashboardWidget.mjs +2 -139
  129. package/dist/Components/NcDashboardWidget.mjs.map +1 -1
  130. package/dist/Components/NcDashboardWidgetItem.cjs +3 -138
  131. package/dist/Components/NcDashboardWidgetItem.cjs.map +1 -1
  132. package/dist/Components/NcDashboardWidgetItem.mjs +2 -141
  133. package/dist/Components/NcDashboardWidgetItem.mjs.map +1 -1
  134. package/dist/Components/NcDateTime.cjs +2 -129
  135. package/dist/Components/NcDateTime.cjs.map +1 -1
  136. package/dist/Components/NcDateTime.mjs +2 -131
  137. package/dist/Components/NcDateTime.mjs.map +1 -1
  138. package/dist/Components/NcDateTimePicker.cjs +68 -50
  139. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  140. package/dist/Components/NcDateTimePicker.mjs +72 -53
  141. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  142. package/dist/Components/NcDateTimePickerNative.cjs +8 -9
  143. package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
  144. package/dist/Components/NcDateTimePickerNative.mjs +7 -7
  145. package/dist/Components/NcDialog.cjs +3 -172
  146. package/dist/Components/NcDialog.cjs.map +1 -1
  147. package/dist/Components/NcDialog.mjs +2 -177
  148. package/dist/Components/NcDialog.mjs.map +1 -1
  149. package/dist/Components/NcDialogButton.cjs +2 -68
  150. package/dist/Components/NcDialogButton.cjs.map +1 -1
  151. package/dist/Components/NcDialogButton.mjs +2 -72
  152. package/dist/Components/NcDialogButton.mjs.map +1 -1
  153. package/dist/Components/NcEllipsisedOption.cjs +4 -5
  154. package/dist/Components/NcEllipsisedOption.cjs.map +1 -1
  155. package/dist/Components/NcEllipsisedOption.mjs +14 -14
  156. package/dist/Components/NcEmojiPicker.cjs +3 -176
  157. package/dist/Components/NcEmojiPicker.cjs.map +1 -1
  158. package/dist/Components/NcEmojiPicker.mjs +2 -181
  159. package/dist/Components/NcEmojiPicker.mjs.map +1 -1
  160. package/dist/Components/NcEmptyContent.cjs +14 -16
  161. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  162. package/dist/Components/NcEmptyContent.mjs +8 -9
  163. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  164. package/dist/Components/NcGuestContent.cjs +8 -9
  165. package/dist/Components/NcGuestContent.cjs.map +1 -1
  166. package/dist/Components/NcGuestContent.mjs +7 -7
  167. package/dist/Components/NcHeaderMenu.cjs +3 -169
  168. package/dist/Components/NcHeaderMenu.cjs.map +1 -1
  169. package/dist/Components/NcHeaderMenu.mjs +2 -172
  170. package/dist/Components/NcHeaderMenu.mjs.map +1 -1
  171. package/dist/Components/NcHighlight.cjs +1 -1
  172. package/dist/Components/NcHighlight.mjs +1 -1
  173. package/dist/Components/NcIconSvgWrapper.cjs +3 -59
  174. package/dist/Components/NcIconSvgWrapper.cjs.map +1 -1
  175. package/dist/Components/NcIconSvgWrapper.mjs +2 -61
  176. package/dist/Components/NcIconSvgWrapper.mjs.map +1 -1
  177. package/dist/Components/NcInputField.cjs +10 -10
  178. package/dist/Components/NcInputField.cjs.map +1 -1
  179. package/dist/Components/NcInputField.mjs +10 -9
  180. package/dist/Components/NcInputField.mjs.map +1 -1
  181. package/dist/Components/NcListItem.cjs +3 -242
  182. package/dist/Components/NcListItem.cjs.map +1 -1
  183. package/dist/Components/NcListItem.mjs +2 -246
  184. package/dist/Components/NcListItem.mjs.map +1 -1
  185. package/dist/Components/NcListItemIcon.cjs +3 -160
  186. package/dist/Components/NcListItemIcon.cjs.map +1 -1
  187. package/dist/Components/NcListItemIcon.mjs +2 -162
  188. package/dist/Components/NcListItemIcon.mjs.map +1 -1
  189. package/dist/Components/NcLoadingIcon.cjs +9 -10
  190. package/dist/Components/NcLoadingIcon.cjs.map +1 -1
  191. package/dist/Components/NcLoadingIcon.mjs +10 -10
  192. package/dist/Components/NcModal.cjs +31 -23
  193. package/dist/Components/NcModal.cjs.map +1 -1
  194. package/dist/Components/NcModal.mjs +36 -28
  195. package/dist/Components/NcModal.mjs.map +1 -1
  196. package/dist/Components/NcNoteCard.cjs +8 -9
  197. package/dist/Components/NcNoteCard.cjs.map +1 -1
  198. package/dist/Components/NcNoteCard.mjs +8 -9
  199. package/dist/Components/NcNoteCard.mjs.map +1 -1
  200. package/dist/Components/NcPasswordField.cjs +2 -228
  201. package/dist/Components/NcPasswordField.cjs.map +1 -1
  202. package/dist/Components/NcPasswordField.mjs +2 -236
  203. package/dist/Components/NcPasswordField.mjs.map +1 -1
  204. package/dist/Components/NcPopover.cjs +3 -125
  205. package/dist/Components/NcPopover.cjs.map +1 -1
  206. package/dist/Components/NcPopover.mjs +2 -128
  207. package/dist/Components/NcPopover.mjs.map +1 -1
  208. package/dist/Components/NcProgressBar.cjs +3 -57
  209. package/dist/Components/NcProgressBar.cjs.map +1 -1
  210. package/dist/Components/NcProgressBar.mjs +2 -57
  211. package/dist/Components/NcProgressBar.mjs.map +1 -1
  212. package/dist/Components/NcRelatedResourcesPanel.cjs +3 -203
  213. package/dist/Components/NcRelatedResourcesPanel.cjs.map +1 -1
  214. package/dist/Components/NcRelatedResourcesPanel.mjs +2 -207
  215. package/dist/Components/NcRelatedResourcesPanel.mjs.map +1 -1
  216. package/dist/Components/NcRichContenteditable.cjs +5 -512
  217. package/dist/Components/NcRichContenteditable.cjs.map +1 -1
  218. package/dist/Components/NcRichContenteditable.mjs +5 -523
  219. package/dist/Components/NcRichContenteditable.mjs.map +1 -1
  220. package/dist/Components/NcRichText.cjs +1 -1
  221. package/dist/Components/NcRichText.mjs +3 -3
  222. package/dist/Components/NcSavingIndicatorIcon.cjs +2 -58
  223. package/dist/Components/NcSavingIndicatorIcon.cjs.map +1 -1
  224. package/dist/Components/NcSavingIndicatorIcon.mjs +2 -60
  225. package/dist/Components/NcSavingIndicatorIcon.mjs.map +1 -1
  226. package/dist/Components/NcSelect.cjs +3 -435
  227. package/dist/Components/NcSelect.cjs.map +1 -1
  228. package/dist/Components/NcSelect.mjs +2 -444
  229. package/dist/Components/NcSelect.mjs.map +1 -1
  230. package/dist/Components/NcSelectTags.cjs +2 -260
  231. package/dist/Components/NcSelectTags.cjs.map +1 -1
  232. package/dist/Components/NcSelectTags.mjs +2 -265
  233. package/dist/Components/NcSelectTags.mjs.map +1 -1
  234. package/dist/Components/NcSettingsInputText.cjs +3 -91
  235. package/dist/Components/NcSettingsInputText.cjs.map +1 -1
  236. package/dist/Components/NcSettingsInputText.mjs +2 -93
  237. package/dist/Components/NcSettingsInputText.mjs.map +1 -1
  238. package/dist/Components/NcSettingsSection.cjs +3 -96
  239. package/dist/Components/NcSettingsSection.cjs.map +1 -1
  240. package/dist/Components/NcSettingsSection.mjs +2 -97
  241. package/dist/Components/NcSettingsSection.mjs.map +1 -1
  242. package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
  243. package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
  244. package/dist/Components/NcTextArea.cjs +7 -8
  245. package/dist/Components/NcTextArea.cjs.map +1 -1
  246. package/dist/Components/NcTextArea.mjs +9 -9
  247. package/dist/Components/NcTextArea.mjs.map +1 -1
  248. package/dist/Components/NcTextField.cjs +2 -139
  249. package/dist/Components/NcTextField.cjs.map +1 -1
  250. package/dist/Components/NcTextField.mjs +2 -144
  251. package/dist/Components/NcTextField.mjs.map +1 -1
  252. package/dist/Components/NcTimezonePicker.cjs +2 -7198
  253. package/dist/Components/NcTimezonePicker.cjs.map +1 -1
  254. package/dist/Components/NcTimezonePicker.mjs +2 -7203
  255. package/dist/Components/NcTimezonePicker.mjs.map +1 -1
  256. package/dist/Components/NcUserBubble.cjs +3 -193
  257. package/dist/Components/NcUserBubble.cjs.map +1 -1
  258. package/dist/Components/NcUserBubble.mjs +2 -197
  259. package/dist/Components/NcUserBubble.mjs.map +1 -1
  260. package/dist/Components/NcUserStatusIcon.cjs +3 -0
  261. package/dist/Components/NcUserStatusIcon.cjs.map +1 -0
  262. package/dist/Components/NcUserStatusIcon.mjs +4 -0
  263. package/dist/Components/NcUserStatusIcon.mjs.map +1 -0
  264. package/dist/Components/NcVNodes.cjs +10 -11
  265. package/dist/Components/NcVNodes.cjs.map +1 -1
  266. package/dist/Components/NcVNodes.mjs +11 -12
  267. package/dist/Components/NcVNodes.mjs.map +1 -1
  268. package/dist/Directives/Linkify.cjs +4 -5
  269. package/dist/Directives/Linkify.cjs.map +1 -1
  270. package/dist/Directives/Linkify.mjs +5 -6
  271. package/dist/Directives/Linkify.mjs.map +1 -1
  272. package/dist/Directives/Tooltip.cjs +1 -1
  273. package/dist/Directives/Tooltip.mjs +3 -3
  274. package/dist/Functions/usernameToColor.cjs +2 -38
  275. package/dist/Functions/usernameToColor.cjs.map +1 -1
  276. package/dist/Functions/usernameToColor.mjs +2 -39
  277. package/dist/Functions/usernameToColor.mjs.map +1 -1
  278. package/dist/Mixins/richEditor.cjs +2 -2
  279. package/dist/Mixins/richEditor.mjs +2 -2
  280. package/dist/assets/{index-7868494b.css → NcActionButton-YVkNHN_x.css} +17 -16
  281. package/dist/assets/{index-5fa0ac5a.css → NcActionButtonGroup-oXobVIqQ.css} +14 -0
  282. package/dist/assets/{index-e0e6bab6.css → NcActionCheckbox-6Pvlr1E7.css} +1 -1
  283. package/dist/assets/{index-9020d9ca.css → NcActionInput-4zSvDkWm.css} +67 -67
  284. package/dist/assets/{index-4ba699a1.css → NcActionLink-zdzQgwtH.css} +1 -1
  285. package/dist/assets/{index-542cf50a.css → NcActionRadio-eOr9Sp-D.css} +1 -1
  286. package/dist/assets/{index-7fac55ed.css → NcActionRouter-MFTD6tYI.css} +1 -1
  287. package/dist/assets/{index-00012a4c.css → NcActionText-GJYwsw_U.css} +1 -1
  288. package/dist/assets/{index-93ad846c.css → NcActionTextEditable-JrYuWEDd.css} +1 -1
  289. package/dist/assets/{index-b0bba2fc.css → NcActions-vgT9ak04.css} +16 -11
  290. package/dist/assets/{index-4596132f.css → NcAppContent-SZz3PTd8.css} +0 -1
  291. package/dist/assets/{index-5784183b.css → NcAppNavigation-vjqOL-kR.css} +8 -8
  292. package/dist/assets/{index-fe84a063.css → NcAppNavigationCaption-l5yRGXZx.css} +6 -5
  293. package/dist/assets/{index-d8bc189c.css → NcAppNavigationItem-n-wauJE7.css} +5 -0
  294. package/dist/assets/{index-1a317434.css → NcAppNavigationNewItem-MQBvffq9.css} +5 -0
  295. package/dist/assets/{index-a9999048.css → NcAppSettingsDialog-0eOo3ERv.css} +16 -17
  296. package/dist/assets/{index-3b654875.css → NcAvatar-5H9cqcD1.css} +27 -27
  297. package/dist/assets/{index-c20f9f7e.css → NcBreadcrumb-M3hqCbqS.css} +26 -33
  298. package/dist/assets/{index-f5162bbd.css → NcBreadcrumbs-KBV0Jccv.css} +7 -8
  299. package/dist/assets/{index-f091e784.css → NcButton-4Wj3KJn8.css} +43 -43
  300. package/dist/assets/{index-7f77b8ae.css → NcCheckboxRadioSwitch-mgKotCbU.css} +52 -47
  301. package/dist/assets/{index-13720a46.css → NcColorPicker-CNX9fj56.css} +24 -24
  302. package/dist/assets/{index-a9e4fe04.css → NcContent-LWR23l9i.css} +42 -4
  303. package/dist/assets/{index-a7fc7815.css → NcDateTimePicker-amYL2HzW.css} +20 -20
  304. package/dist/assets/{index-86454928.css → NcDialog-DN-rY-55.css} +30 -19
  305. package/dist/assets/{index-2a8e4ca1.css → NcEmojiPicker-lBXbC6Jd.css} +36 -26
  306. package/dist/assets/{index-aacb7cf8.css → NcHeaderMenu-06vdn4tC.css} +17 -24
  307. package/dist/assets/NcIconSvgWrapper-arqrq5Bj.css +44 -0
  308. package/dist/assets/{index-2a1ec06b.css → NcInputField-L2Lld_iG.css} +41 -40
  309. package/dist/assets/{index-a3c23731.css → NcModal-UZh031V1.css} +64 -64
  310. package/dist/assets/{index-61b63a8f.css → NcProgressBar-w4-G5gQR.css} +19 -9
  311. package/dist/assets/{index-ab715d82.css → NcRelatedResourcesPanel-m3uf_nvH.css} +4 -4
  312. package/dist/assets/{index-dab51681.css → NcRichContenteditable-j9edXOEH.css} +26 -25
  313. package/dist/assets/{index-f9bfa317.css → NcSelect-GsLmwj9w.css} +13 -2
  314. package/dist/assets/{index-76a58945.css → NcSettingsSection-PEWm0eeL.css} +13 -13
  315. package/dist/assets/{index-97305c1f.css → NcTextArea-4rVwq6GK.css} +24 -23
  316. package/dist/assets/{index-c221fe05.css → NcUserBubble-jjzI5imn.css} +9 -9
  317. package/dist/assets/{index-57b305d3.css → NcUserStatusIcon-62u43_6P.css} +7 -10
  318. package/dist/assets/{referencePickerModal-3a127978.css → referencePickerModal-VxSowpb5.css} +84 -57
  319. package/dist/chunks/{AlertCircleOutline-7085c10f.cjs → AlertCircleOutline-VgVvRWpm.cjs} +1 -1
  320. package/dist/chunks/{AlertCircleOutline-7085c10f.cjs.map → AlertCircleOutline-VgVvRWpm.cjs.map} +1 -1
  321. package/dist/chunks/{AlertCircleOutline-b73838e0.mjs → AlertCircleOutline-lwSRucNO.mjs} +1 -1
  322. package/dist/chunks/{AlertCircleOutline-b73838e0.mjs.map → AlertCircleOutline-lwSRucNO.mjs.map} +1 -1
  323. package/dist/chunks/{ArrowLeft-2f9b9323.cjs → ArrowLeft-3KC2k3tR.cjs} +1 -1
  324. package/dist/chunks/{ArrowLeft-2f9b9323.cjs.map → ArrowLeft-3KC2k3tR.cjs.map} +1 -1
  325. package/dist/chunks/{ArrowLeft-3779ba88.mjs → ArrowLeft-buaCjhfr.mjs} +1 -1
  326. package/dist/chunks/{ArrowLeft-3779ba88.mjs.map → ArrowLeft-buaCjhfr.mjs.map} +1 -1
  327. package/dist/chunks/{ArrowRight-74a9fcb2.mjs → ArrowRight-4p6gv-9o.mjs} +1 -1
  328. package/dist/chunks/{ArrowRight-74a9fcb2.mjs.map → ArrowRight-4p6gv-9o.mjs.map} +1 -1
  329. package/dist/chunks/{ArrowRight-7315f6c1.cjs → ArrowRight-uEMed4kl.cjs} +1 -1
  330. package/dist/chunks/{ArrowRight-7315f6c1.cjs.map → ArrowRight-uEMed4kl.cjs.map} +1 -1
  331. package/dist/chunks/{Check-be8cd6af.cjs → Check-5uKO4aXx.cjs} +1 -1
  332. package/dist/chunks/{Check-be8cd6af.cjs.map → Check-5uKO4aXx.cjs.map} +1 -1
  333. package/dist/chunks/{Check-2ea0a88a.mjs → Check-FObi_cEO.mjs} +1 -1
  334. package/dist/chunks/{Check-2ea0a88a.mjs.map → Check-FObi_cEO.mjs.map} +1 -1
  335. package/dist/chunks/{ChevronDown-a72d365d.mjs → ChevronDown-TbRvziNU.mjs} +1 -1
  336. package/dist/chunks/{ChevronDown-a72d365d.mjs.map → ChevronDown-TbRvziNU.mjs.map} +1 -1
  337. package/dist/chunks/{ChevronDown-dc32e51d.cjs → ChevronDown-rdCNNu7u.cjs} +1 -1
  338. package/dist/chunks/{ChevronDown-dc32e51d.cjs.map → ChevronDown-rdCNNu7u.cjs.map} +1 -1
  339. package/dist/chunks/{ChevronRight-1a6a6cf2.mjs → ChevronRight-XOmSMmxA.mjs} +1 -1
  340. package/dist/chunks/{ChevronRight-1a6a6cf2.mjs.map → ChevronRight-XOmSMmxA.mjs.map} +1 -1
  341. package/dist/chunks/{ChevronRight-a4c1e0d3.cjs → ChevronRight-bp7fT1r7.cjs} +1 -1
  342. package/dist/chunks/{ChevronRight-a4c1e0d3.cjs.map → ChevronRight-bp7fT1r7.cjs.map} +1 -1
  343. package/dist/chunks/{Close-271f72e2.mjs → Close-5Hzp7J3v.mjs} +1 -1
  344. package/dist/chunks/{Close-271f72e2.mjs.map → Close-5Hzp7J3v.mjs.map} +1 -1
  345. package/dist/chunks/{Close-98cb6f12.cjs → Close-QFLrdRdG.cjs} +1 -1
  346. package/dist/chunks/{Close-98cb6f12.cjs.map → Close-QFLrdRdG.cjs.map} +1 -1
  347. package/dist/chunks/{DotsHorizontal-0ee7d901.mjs → DotsHorizontal-NssXDZGM.mjs} +1 -1
  348. package/dist/chunks/{DotsHorizontal-0ee7d901.mjs.map → DotsHorizontal-NssXDZGM.mjs.map} +1 -1
  349. package/dist/chunks/{DotsHorizontal-ac96129a.cjs → DotsHorizontal-dlN1WvqM.cjs} +1 -1
  350. package/dist/chunks/{DotsHorizontal-ac96129a.cjs.map → DotsHorizontal-dlN1WvqM.cjs.map} +1 -1
  351. package/dist/chunks/{GenColors-7495e6f6.cjs → GenColors-6ePwbl4k.cjs} +23 -18
  352. package/dist/chunks/GenColors-6ePwbl4k.cjs.map +1 -0
  353. package/dist/chunks/{GenColors-5c054042.mjs → GenColors-OwQiytMp.mjs} +16 -11
  354. package/dist/chunks/GenColors-OwQiytMp.mjs.map +1 -0
  355. package/dist/chunks/{GenRandomId-c214d235.cjs.map → GenRandomId-ULxaMkkr.cjs.map} +1 -1
  356. package/dist/chunks/{GenRandomId-cb9ccebe.mjs.map → GenRandomId-VodkdWbp.mjs.map} +1 -1
  357. package/dist/chunks/{Linkify-39f20c9a.mjs.map → Linkify-V7PfCeZ8.mjs.map} +1 -1
  358. package/dist/chunks/{Linkify-40cdd635.cjs.map → Linkify-f3s3nAe_.cjs.map} +1 -1
  359. package/dist/chunks/NcActionButtonGroup-qXVHIy0a.mjs +50 -0
  360. package/dist/chunks/NcActionButtonGroup-qXVHIy0a.mjs.map +1 -0
  361. package/dist/chunks/NcActionButtonGroup-wvQESxxh.cjs +45 -0
  362. package/dist/chunks/NcActionButtonGroup-wvQESxxh.cjs.map +1 -0
  363. package/dist/chunks/NcActionInput-2mvb7ZnC.cjs +234 -0
  364. package/dist/chunks/NcActionInput-2mvb7ZnC.cjs.map +1 -0
  365. package/dist/chunks/NcActionInput-Vdsm4Jt5.mjs +244 -0
  366. package/dist/chunks/NcActionInput-Vdsm4Jt5.mjs.map +1 -0
  367. package/dist/chunks/NcActions-4ml5sv6P.cjs +498 -0
  368. package/dist/chunks/NcActions-4ml5sv6P.cjs.map +1 -0
  369. package/dist/chunks/NcActions-5K-qjttC.mjs +506 -0
  370. package/dist/chunks/NcActions-5K-qjttC.mjs.map +1 -0
  371. package/dist/chunks/NcAppContent-agTfSSHS.mjs +231 -0
  372. package/dist/chunks/NcAppContent-agTfSSHS.mjs.map +1 -0
  373. package/dist/chunks/NcAppContent-kSymH_mo.cjs +221 -0
  374. package/dist/chunks/NcAppContent-kSymH_mo.cjs.map +1 -0
  375. package/dist/chunks/NcAppNavigation-biQcPFmk.mjs +122 -0
  376. package/dist/chunks/NcAppNavigation-biQcPFmk.mjs.map +1 -0
  377. package/dist/chunks/NcAppNavigation-rSC0k8c6.cjs +113 -0
  378. package/dist/chunks/NcAppNavigation-rSC0k8c6.cjs.map +1 -0
  379. package/dist/chunks/NcAppNavigationCaption-E3tdVsYJ.mjs +47 -0
  380. package/dist/chunks/NcAppNavigationCaption-E3tdVsYJ.mjs.map +1 -0
  381. package/dist/chunks/NcAppNavigationCaption-Mugp6fsR.cjs +43 -0
  382. package/dist/chunks/NcAppNavigationCaption-Mugp6fsR.cjs.map +1 -0
  383. package/dist/chunks/NcAppNavigationItem-CzK_gg7C.mjs +508 -0
  384. package/dist/chunks/NcAppNavigationItem-CzK_gg7C.mjs.map +1 -0
  385. package/dist/chunks/NcAppNavigationItem-r0MUwPP7.cjs +496 -0
  386. package/dist/chunks/NcAppNavigationItem-r0MUwPP7.cjs.map +1 -0
  387. package/dist/chunks/NcAppNavigationNewItem-IYhRBzud.cjs +86 -0
  388. package/dist/chunks/NcAppNavigationNewItem-IYhRBzud.cjs.map +1 -0
  389. package/dist/chunks/NcAppNavigationNewItem-X4Ac8vym.mjs +91 -0
  390. package/dist/chunks/NcAppNavigationNewItem-X4Ac8vym.mjs.map +1 -0
  391. package/dist/chunks/NcAppNavigationSettings-0hLCj-s5.mjs +105 -0
  392. package/dist/chunks/NcAppNavigationSettings-0hLCj-s5.mjs.map +1 -0
  393. package/dist/chunks/NcAppNavigationSettings-tvlinWey.cjs +102 -0
  394. package/dist/chunks/NcAppNavigationSettings-tvlinWey.cjs.map +1 -0
  395. package/dist/chunks/{NcAppNavigationToggle-0bc638a8.mjs → NcAppNavigationToggle-RXyDbzmn.mjs} +16 -17
  396. package/dist/chunks/{NcAppNavigationToggle-0bc638a8.mjs.map → NcAppNavigationToggle-RXyDbzmn.mjs.map} +1 -1
  397. package/dist/chunks/NcAppNavigationToggle-ZTz_EO18.cjs +109 -0
  398. package/dist/chunks/{NcAppNavigationToggle-6d192bea.cjs.map → NcAppNavigationToggle-ZTz_EO18.cjs.map} +1 -1
  399. package/dist/chunks/NcAppSettingsDialog-2tyARsR0.cjs +176 -0
  400. package/dist/chunks/NcAppSettingsDialog-2tyARsR0.cjs.map +1 -0
  401. package/dist/chunks/NcAppSettingsDialog-8HAKz-0l.mjs +184 -0
  402. package/dist/chunks/NcAppSettingsDialog-8HAKz-0l.mjs.map +1 -0
  403. package/dist/chunks/NcAppSidebar-PMmg9vsl.cjs +547 -0
  404. package/dist/chunks/NcAppSidebar-PMmg9vsl.cjs.map +1 -0
  405. package/dist/chunks/NcAppSidebar-qaRnOe4Y.mjs +565 -0
  406. package/dist/chunks/NcAppSidebar-qaRnOe4Y.mjs.map +1 -0
  407. package/dist/chunks/{index-309426ff.mjs → NcAvatar-5DJP61Ka.mjs} +73 -145
  408. package/dist/chunks/NcAvatar-5DJP61Ka.mjs.map +1 -0
  409. package/dist/chunks/{index-693e993c.cjs → NcAvatar-YQujzmop.cjs} +56 -128
  410. package/dist/chunks/NcAvatar-YQujzmop.cjs.map +1 -0
  411. package/dist/chunks/NcBreadcrumb-3Ez2uWmp.cjs +172 -0
  412. package/dist/chunks/NcBreadcrumb-3Ez2uWmp.cjs.map +1 -0
  413. package/dist/chunks/NcBreadcrumb-C2oZ_vji.mjs +179 -0
  414. package/dist/chunks/NcBreadcrumb-C2oZ_vji.mjs.map +1 -0
  415. package/dist/chunks/NcBreadcrumbs-H8ec0ouN.cjs +407 -0
  416. package/dist/chunks/NcBreadcrumbs-H8ec0ouN.cjs.map +1 -0
  417. package/dist/chunks/NcBreadcrumbs-tq1eD4Hk.mjs +418 -0
  418. package/dist/chunks/NcBreadcrumbs-tq1eD4Hk.mjs.map +1 -0
  419. package/dist/chunks/NcCheckboxRadioSwitch-BiREcGAk.mjs +607 -0
  420. package/dist/chunks/NcCheckboxRadioSwitch-BiREcGAk.mjs.map +1 -0
  421. package/dist/chunks/NcCheckboxRadioSwitch-xEweFZs1.cjs +603 -0
  422. package/dist/chunks/NcCheckboxRadioSwitch-xEweFZs1.cjs.map +1 -0
  423. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-MzKjkB0t.mjs +3 -0
  424. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-MzKjkB0t.mjs.map +1 -0
  425. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-hGgZcPUX.cjs +3 -0
  426. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-hGgZcPUX.cjs.map +1 -0
  427. package/dist/chunks/NcColorPicker-2IJNZMe-.cjs +161 -0
  428. package/dist/chunks/NcColorPicker-2IJNZMe-.cjs.map +1 -0
  429. package/dist/chunks/NcColorPicker-H0rZhQxw.mjs +172 -0
  430. package/dist/chunks/NcColorPicker-H0rZhQxw.mjs.map +1 -0
  431. package/dist/chunks/NcContent-ZgOMyq2k.cjs +123 -0
  432. package/dist/chunks/NcContent-ZgOMyq2k.cjs.map +1 -0
  433. package/dist/chunks/NcContent-lWYIO3gy.mjs +131 -0
  434. package/dist/chunks/NcContent-lWYIO3gy.mjs.map +1 -0
  435. package/dist/chunks/NcDashboardWidget-hQn58Jv6.mjs +141 -0
  436. package/dist/chunks/NcDashboardWidget-hQn58Jv6.mjs.map +1 -0
  437. package/dist/chunks/NcDashboardWidget-j44iStpo.cjs +134 -0
  438. package/dist/chunks/NcDashboardWidget-j44iStpo.cjs.map +1 -0
  439. package/dist/chunks/NcDashboardWidgetItem-Yp4ii3At.mjs +143 -0
  440. package/dist/chunks/NcDashboardWidgetItem-Yp4ii3At.mjs.map +1 -0
  441. package/dist/chunks/NcDashboardWidgetItem-f4Y_DBsU.cjs +137 -0
  442. package/dist/chunks/NcDashboardWidgetItem-f4Y_DBsU.cjs.map +1 -0
  443. package/dist/chunks/NcDateTime-1ZGz6Hwu.cjs +142 -0
  444. package/dist/chunks/NcDateTime-1ZGz6Hwu.cjs.map +1 -0
  445. package/dist/chunks/NcDateTime-sBcbqRB6.mjs +146 -0
  446. package/dist/chunks/NcDateTime-sBcbqRB6.mjs.map +1 -0
  447. package/dist/chunks/NcDialog-1Nrs9x8z.mjs +214 -0
  448. package/dist/chunks/NcDialog-1Nrs9x8z.mjs.map +1 -0
  449. package/dist/chunks/NcDialog-k6iHgTGm.cjs +206 -0
  450. package/dist/chunks/NcDialog-k6iHgTGm.cjs.map +1 -0
  451. package/dist/chunks/NcDialogButton-37xKCh_l.cjs +68 -0
  452. package/dist/chunks/NcDialogButton-37xKCh_l.cjs.map +1 -0
  453. package/dist/chunks/NcDialogButton-O4JZ53Dj.mjs +73 -0
  454. package/dist/chunks/NcDialogButton-O4JZ53Dj.mjs.map +1 -0
  455. package/dist/chunks/NcEmojiPicker--8moif3g.mjs +249 -0
  456. package/dist/chunks/NcEmojiPicker--8moif3g.mjs.map +1 -0
  457. package/dist/chunks/NcEmojiPicker-gGgrlLAJ.cjs +238 -0
  458. package/dist/chunks/NcEmojiPicker-gGgrlLAJ.cjs.map +1 -0
  459. package/dist/chunks/NcHeaderMenu-5dnFFhRA.cjs +183 -0
  460. package/dist/chunks/NcHeaderMenu-5dnFFhRA.cjs.map +1 -0
  461. package/dist/chunks/NcHeaderMenu-ePmuT5Kz.mjs +190 -0
  462. package/dist/chunks/NcHeaderMenu-ePmuT5Kz.mjs.map +1 -0
  463. package/dist/chunks/NcIconSvgWrapper-P-GkSjTH.mjs +85 -0
  464. package/dist/chunks/NcIconSvgWrapper-P-GkSjTH.mjs.map +1 -0
  465. package/dist/chunks/NcIconSvgWrapper-_lgitSfS.cjs +80 -0
  466. package/dist/chunks/NcIconSvgWrapper-_lgitSfS.cjs.map +1 -0
  467. package/dist/chunks/{NcInputConfirmCancel-a08c5cb4.mjs → NcInputConfirmCancel-HrSwS4LK.mjs} +12 -12
  468. package/dist/chunks/{NcInputConfirmCancel-a08c5cb4.mjs.map → NcInputConfirmCancel-HrSwS4LK.mjs.map} +1 -1
  469. package/dist/chunks/NcInputConfirmCancel-q4IYDSKH.cjs +91 -0
  470. package/dist/chunks/{NcInputConfirmCancel-b99898db.cjs.map → NcInputConfirmCancel-q4IYDSKH.cjs.map} +1 -1
  471. package/dist/chunks/NcListItem-_P2bxfeP.mjs +248 -0
  472. package/dist/chunks/NcListItem-_P2bxfeP.mjs.map +1 -0
  473. package/dist/chunks/NcListItem-wsOnBEF3.cjs +242 -0
  474. package/dist/chunks/NcListItem-wsOnBEF3.cjs.map +1 -0
  475. package/dist/chunks/NcListItemIcon-65Rgi-AZ.cjs +160 -0
  476. package/dist/chunks/NcListItemIcon-65Rgi-AZ.cjs.map +1 -0
  477. package/dist/chunks/NcListItemIcon-IXrbZUKU.mjs +164 -0
  478. package/dist/chunks/NcListItemIcon-IXrbZUKU.mjs.map +1 -0
  479. package/dist/chunks/NcPasswordField-XvXblBeQ.cjs +229 -0
  480. package/dist/chunks/NcPasswordField-XvXblBeQ.cjs.map +1 -0
  481. package/dist/chunks/NcPasswordField-kJ1PZotd.mjs +238 -0
  482. package/dist/chunks/NcPasswordField-kJ1PZotd.mjs.map +1 -0
  483. package/dist/chunks/NcPopover--SjyNre9.cjs +211 -0
  484. package/dist/chunks/NcPopover--SjyNre9.cjs.map +1 -0
  485. package/dist/chunks/NcPopover-yyItaFC6.mjs +218 -0
  486. package/dist/chunks/NcPopover-yyItaFC6.mjs.map +1 -0
  487. package/dist/chunks/NcProgressBar-hQCFE5H3.mjs +99 -0
  488. package/dist/chunks/NcProgressBar-hQCFE5H3.mjs.map +1 -0
  489. package/dist/chunks/NcProgressBar-yrdD1jxU.cjs +95 -0
  490. package/dist/chunks/NcProgressBar-yrdD1jxU.cjs.map +1 -0
  491. package/dist/chunks/NcRelatedResourcesPanel-1nj1tk0J.mjs +205 -0
  492. package/dist/chunks/NcRelatedResourcesPanel-1nj1tk0J.mjs.map +1 -0
  493. package/dist/chunks/NcRelatedResourcesPanel-KxXrRko3.cjs +199 -0
  494. package/dist/chunks/NcRelatedResourcesPanel-KxXrRko3.cjs.map +1 -0
  495. package/dist/chunks/NcRichContenteditable-A0FFbptl.cjs +504 -0
  496. package/dist/chunks/NcRichContenteditable-A0FFbptl.cjs.map +1 -0
  497. package/dist/chunks/NcRichContenteditable-VzFXqSYH.mjs +515 -0
  498. package/dist/chunks/NcRichContenteditable-VzFXqSYH.mjs.map +1 -0
  499. package/dist/chunks/{NcRichText-f729896c.cjs → NcRichText-N44WJqzt.cjs} +112 -71
  500. package/dist/chunks/NcRichText-N44WJqzt.cjs.map +1 -0
  501. package/dist/chunks/{NcRichText-e4bf7767.mjs → NcRichText-YSUTWw6M.mjs} +125 -81
  502. package/dist/chunks/NcRichText-YSUTWw6M.mjs.map +1 -0
  503. package/dist/chunks/NcSavingIndicatorIcon-IqoMFcDK.mjs +62 -0
  504. package/dist/chunks/NcSavingIndicatorIcon-IqoMFcDK.mjs.map +1 -0
  505. package/dist/chunks/NcSavingIndicatorIcon-wcQ0mBIL.cjs +59 -0
  506. package/dist/chunks/NcSavingIndicatorIcon-wcQ0mBIL.cjs.map +1 -0
  507. package/dist/chunks/NcSelect-H-xyiCqP.cjs +462 -0
  508. package/dist/chunks/NcSelect-H-xyiCqP.cjs.map +1 -0
  509. package/dist/chunks/NcSelect-roYZ16y8.mjs +474 -0
  510. package/dist/chunks/NcSelect-roYZ16y8.mjs.map +1 -0
  511. package/dist/chunks/NcSelectTags-3BfQQNLj.mjs +267 -0
  512. package/dist/chunks/NcSelectTags-3BfQQNLj.mjs.map +1 -0
  513. package/dist/chunks/NcSelectTags-iuvfaq_W.cjs +261 -0
  514. package/dist/chunks/NcSelectTags-iuvfaq_W.cjs.map +1 -0
  515. package/dist/chunks/NcSettingsInputText-JHuxEb64.cjs +91 -0
  516. package/dist/chunks/NcSettingsInputText-JHuxEb64.cjs.map +1 -0
  517. package/dist/chunks/NcSettingsInputText-RH5qyxcD.mjs +95 -0
  518. package/dist/chunks/NcSettingsInputText-RH5qyxcD.mjs.map +1 -0
  519. package/dist/chunks/NcSettingsSection-dsoWc5to.cjs +95 -0
  520. package/dist/chunks/NcSettingsSection-dsoWc5to.cjs.map +1 -0
  521. package/dist/chunks/NcSettingsSection-u3WizmVu.mjs +98 -0
  522. package/dist/chunks/NcSettingsSection-u3WizmVu.mjs.map +1 -0
  523. package/dist/chunks/{NcSettingsSelectGroup-ecc8bc5a.mjs → NcSettingsSelectGroup-l7ImtXiI.mjs} +5 -5
  524. package/dist/chunks/{NcSettingsSelectGroup-ecc8bc5a.mjs.map → NcSettingsSelectGroup-l7ImtXiI.mjs.map} +1 -1
  525. package/dist/chunks/{NcSettingsSelectGroup-b065ffc8.cjs → NcSettingsSelectGroup-obOOSE0Z.cjs} +9 -9
  526. package/dist/chunks/{NcSettingsSelectGroup-b065ffc8.cjs.map → NcSettingsSelectGroup-obOOSE0Z.cjs.map} +1 -1
  527. package/dist/chunks/NcTextField-5nK-T1Xg.cjs +140 -0
  528. package/dist/chunks/NcTextField-5nK-T1Xg.cjs.map +1 -0
  529. package/dist/chunks/NcTextField-JlIIeRJa.mjs +146 -0
  530. package/dist/chunks/NcTextField-JlIIeRJa.mjs.map +1 -0
  531. package/dist/chunks/NcTimezonePicker-1NMfD5lj.cjs +7195 -0
  532. package/dist/chunks/NcTimezonePicker-1NMfD5lj.cjs.map +1 -0
  533. package/dist/chunks/NcTimezonePicker-GDJZ0IwA.mjs +7201 -0
  534. package/dist/chunks/NcTimezonePicker-GDJZ0IwA.mjs.map +1 -0
  535. package/dist/chunks/NcUserBubble-ADV-rrgN.cjs +191 -0
  536. package/dist/chunks/NcUserBubble-ADV-rrgN.cjs.map +1 -0
  537. package/dist/chunks/NcUserBubble-HoPxl8_o.mjs +197 -0
  538. package/dist/chunks/NcUserBubble-HoPxl8_o.mjs.map +1 -0
  539. package/dist/chunks/NcUserStatusIcon-WSxqK-Ix.cjs +166 -0
  540. package/dist/chunks/NcUserStatusIcon-WSxqK-Ix.cjs.map +1 -0
  541. package/dist/chunks/NcUserStatusIcon-dgPMbNYQ.mjs +174 -0
  542. package/dist/chunks/NcUserStatusIcon-dgPMbNYQ.mjs.map +1 -0
  543. package/dist/chunks/{ScopeComponent-b039a43c.mjs → ScopeComponent-8lJfv9VF.mjs} +4 -4
  544. package/dist/chunks/{ScopeComponent-b039a43c.mjs.map → ScopeComponent-8lJfv9VF.mjs.map} +1 -1
  545. package/dist/chunks/{ScopeComponent-06c558d3.cjs → ScopeComponent-d_TBKnQk.cjs} +4 -4
  546. package/dist/chunks/{ScopeComponent-06c558d3.cjs.map → ScopeComponent-d_TBKnQk.cjs.map} +1 -1
  547. package/dist/chunks/_l10n-RVZyA63y.cjs +64 -0
  548. package/dist/chunks/_l10n-RVZyA63y.cjs.map +1 -0
  549. package/dist/chunks/_l10n-gZppkly8.mjs +66 -0
  550. package/dist/chunks/_l10n-gZppkly8.mjs.map +1 -0
  551. package/dist/chunks/_plugin-vue2_normalizer-DCfUPqga.cjs.map +1 -0
  552. package/dist/chunks/_plugin-vue2_normalizer-u6G_3nkj.mjs.map +1 -0
  553. package/dist/chunks/{actionGlobal-9e29e11b.cjs → actionGlobal-_f-PhW84.cjs} +3 -7
  554. package/dist/chunks/actionGlobal-_f-PhW84.cjs.map +1 -0
  555. package/dist/chunks/{actionGlobal-8c1c28c9.mjs → actionGlobal-ejpd0zqm.mjs} +3 -7
  556. package/dist/chunks/actionGlobal-ejpd0zqm.mjs.map +1 -0
  557. package/dist/chunks/{actionText-123f26b0.mjs → actionText-AoAs4kqP.mjs} +6 -2
  558. package/dist/chunks/{actionText-e450809c.cjs.map → actionText-AoAs4kqP.mjs.map} +1 -1
  559. package/dist/chunks/{actionText-e450809c.cjs → actionText-pGrMQtZ3.cjs} +6 -2
  560. package/dist/chunks/{actionText-123f26b0.mjs.map → actionText-pGrMQtZ3.cjs.map} +1 -1
  561. package/dist/chunks/emoji-mJIuLpNR.cjs +58 -0
  562. package/dist/chunks/emoji-mJIuLpNR.cjs.map +1 -0
  563. package/dist/chunks/emoji-tllD0Rvt.mjs +61 -0
  564. package/dist/chunks/emoji-tllD0Rvt.mjs.map +1 -0
  565. package/dist/chunks/{focusTrap-5d0f71d4.mjs.map → focusTrap-Py2bQ9-r.mjs.map} +1 -1
  566. package/dist/chunks/{focusTrap-14985831.cjs.map → focusTrap-n3H52LOw.cjs.map} +1 -1
  567. package/dist/chunks/{index-20a9ace9.mjs → index-2phCrsSH.mjs} +1 -1
  568. package/dist/chunks/{index-20a9ace9.mjs.map → index-2phCrsSH.mjs.map} +1 -1
  569. package/dist/chunks/{index-4398f925.cjs → index-AX_b-FPF.cjs} +2 -1
  570. package/dist/chunks/{index-4398f925.cjs.map → index-AX_b-FPF.cjs.map} +1 -1
  571. package/dist/chunks/{index-e894376a.cjs → index-FO4BaGaF.cjs} +1 -1
  572. package/dist/chunks/{index-e894376a.cjs.map → index-FO4BaGaF.cjs.map} +1 -1
  573. package/dist/chunks/{index-5f2a5f57.mjs → index-KrMGGc7j.mjs} +3 -2
  574. package/dist/chunks/{index-5f2a5f57.mjs.map → index-KrMGGc7j.mjs.map} +1 -1
  575. package/dist/chunks/{logger-3612e664.mjs.map → logger-3m1eQsSo.mjs.map} +1 -1
  576. package/dist/chunks/{logger-4998b668.cjs.map → logger-G6OKp5ly.cjs.map} +1 -1
  577. package/dist/chunks/{referencePickerModal-12fa2ad0.cjs → referencePickerModal-byTgSeys.cjs} +152 -170
  578. package/dist/chunks/{referencePickerModal-12fa2ad0.cjs.map → referencePickerModal-byTgSeys.cjs.map} +1 -1
  579. package/dist/chunks/{referencePickerModal-12935fb3.mjs → referencePickerModal-tEVbhwha.mjs} +171 -189
  580. package/dist/chunks/{referencePickerModal-12935fb3.mjs.map → referencePickerModal-tEVbhwha.mjs.map} +1 -1
  581. package/dist/chunks/usernameToColor-LY-6e04n.mjs +41 -0
  582. package/dist/chunks/usernameToColor-LY-6e04n.mjs.map +1 -0
  583. package/dist/chunks/usernameToColor-ty7b2Xom.cjs +39 -0
  584. package/dist/chunks/usernameToColor-ty7b2Xom.cjs.map +1 -0
  585. package/dist/functions/emoji/emoji.d.ts +50 -0
  586. package/dist/{Functions/emoji.mjs → functions/emoji/index.d.ts} +1 -16
  587. package/dist/index.cjs +163 -157
  588. package/dist/index.cjs.map +1 -1
  589. package/dist/index.mjs +157 -149
  590. package/dist/index.mjs.map +1 -1
  591. package/dist/utils/UserStatus.d.ts +1 -3
  592. package/package.json +6 -4
  593. package/dist/Functions/emoji.cjs +0 -36
  594. package/dist/Functions/emoji.cjs.map +0 -1
  595. package/dist/Functions/emoji.mjs.map +0 -1
  596. package/dist/chunks/GenColors-5c054042.mjs.map +0 -1
  597. package/dist/chunks/GenColors-7495e6f6.cjs.map +0 -1
  598. package/dist/chunks/NcAppNavigationToggle-6d192bea.cjs +0 -110
  599. package/dist/chunks/NcInputConfirmCancel-b99898db.cjs +0 -91
  600. package/dist/chunks/NcRichText-e4bf7767.mjs.map +0 -1
  601. package/dist/chunks/NcRichText-f729896c.cjs.map +0 -1
  602. package/dist/chunks/_l10n-72c5e29e.cjs +0 -62
  603. package/dist/chunks/_l10n-72c5e29e.cjs.map +0 -1
  604. package/dist/chunks/_l10n-f5af5269.mjs +0 -64
  605. package/dist/chunks/_l10n-f5af5269.mjs.map +0 -1
  606. package/dist/chunks/_plugin-vue2_normalizer-71e2aa87.mjs.map +0 -1
  607. package/dist/chunks/_plugin-vue2_normalizer-7f9efb60.cjs.map +0 -1
  608. package/dist/chunks/actionGlobal-8c1c28c9.mjs.map +0 -1
  609. package/dist/chunks/actionGlobal-9e29e11b.cjs.map +0 -1
  610. package/dist/chunks/index-309426ff.mjs.map +0 -1
  611. package/dist/chunks/index-693e993c.cjs.map +0 -1
  612. /package/dist/assets/{index-418d4e87.css → NcActionCaption-afJqyJO6.css} +0 -0
  613. /package/dist/assets/{index-018895f7.css → NcActionSeparator-l98xWbiL.css} +0 -0
  614. /package/dist/assets/{index-fc61f2d8.css → NcAppNavigationIconBullet-Nf3ARMLv.css} +0 -0
  615. /package/dist/assets/{index-0ac09203.css → NcAppNavigationNew-joyd78FM.css} +0 -0
  616. /package/dist/assets/{index-f78bd735.css → NcAppNavigationSettings-Jx_6RpSn.css} +0 -0
  617. /package/dist/assets/{index-76dd9f11.css → NcAppNavigationSpacer-MfL8GeCN.css} +0 -0
  618. /package/dist/assets/{NcAppNavigationToggle-48c375e8.css → NcAppNavigationToggle-upUgYNtL.css} +0 -0
  619. /package/dist/assets/{index-1f25a3c0.css → NcAppSettingsSection-ahfdhix_.css} +0 -0
  620. /package/dist/assets/{index-2d5cf6b2.css → NcAppSidebar-iU8Zp4Qk.css} +0 -0
  621. /package/dist/assets/{index-77a548be.css → NcAppSidebarTab-Phau6edJ.css} +0 -0
  622. /package/dist/assets/{index-17673ea1.css → NcCounterBubble-rgkmqN46.css} +0 -0
  623. /package/dist/assets/{index-6416f636.css → NcDashboardWidget-01deRW9Z.css} +0 -0
  624. /package/dist/assets/{index-e7eadba7.css → NcDashboardWidgetItem-S7fELANA.css} +0 -0
  625. /package/dist/assets/{index-8b327013.css → NcDateTimePickerNative-2pQS5L0H.css} +0 -0
  626. /package/dist/assets/{index-a2b51bce.css → NcEllipsisedOption-eoI10kvc.css} +0 -0
  627. /package/dist/assets/{index-c239a2fc.css → NcEmptyContent-pSz7F6Oe.css} +0 -0
  628. /package/dist/assets/{index-8aa4712e.css → NcGuestContent-mGGTzI2_.css} +0 -0
  629. /package/dist/assets/{NcInputConfirmCancel-45d1d76b.css → NcInputConfirmCancel-ks8z8dIn.css} +0 -0
  630. /package/dist/assets/{index-f24e102f.css → NcListItem-xcW2PRrk.css} +0 -0
  631. /package/dist/assets/{index-6f721577.css → NcListItemIcon-PQ2s6ZqX.css} +0 -0
  632. /package/dist/assets/{index-b8f13a1f.css → NcLoadingIcon-hZn7TJM8.css} +0 -0
  633. /package/dist/assets/{NcMentionBubble-6e887c5f.css → NcMentionBubble-2OXF_uEJ.css} +0 -0
  634. /package/dist/assets/{index-400b48a6.css → NcNoteCard-OTfZqVvP.css} +0 -0
  635. /package/dist/assets/{index-4ebacc78.css → NcPopover-MK4GcuPY.css} +0 -0
  636. /package/dist/assets/{index-6c47e88a.css → NcSettingsInputText-MPi6a3Yy.css} +0 -0
  637. /package/dist/assets/{NcSettingsSelectGroup-a29e2156.css → NcSettingsSelectGroup-_Jpb8yE3.css} +0 -0
  638. /package/dist/assets/{index-d211cae8.css → Tooltip-wOLIuz0Q.css} +0 -0
  639. /package/dist/chunks/{GenRandomId-c214d235.cjs → GenRandomId-ULxaMkkr.cjs} +0 -0
  640. /package/dist/chunks/{GenRandomId-cb9ccebe.mjs → GenRandomId-VodkdWbp.mjs} +0 -0
  641. /package/dist/chunks/{Linkify-39f20c9a.mjs → Linkify-V7PfCeZ8.mjs} +0 -0
  642. /package/dist/chunks/{Linkify-40cdd635.cjs → Linkify-f3s3nAe_.cjs} +0 -0
  643. /package/dist/chunks/{_plugin-vue2_normalizer-7f9efb60.cjs → _plugin-vue2_normalizer-DCfUPqga.cjs} +0 -0
  644. /package/dist/chunks/{_plugin-vue2_normalizer-71e2aa87.mjs → _plugin-vue2_normalizer-u6G_3nkj.mjs} +0 -0
  645. /package/dist/chunks/{focusTrap-5d0f71d4.mjs → focusTrap-Py2bQ9-r.mjs} +0 -0
  646. /package/dist/chunks/{focusTrap-14985831.cjs → focusTrap-n3H52LOw.cjs} +0 -0
  647. /package/dist/chunks/{logger-3612e664.mjs → logger-3m1eQsSo.mjs} +0 -0
  648. /package/dist/chunks/{logger-4998b668.cjs → logger-G6OKp5ly.cjs} +0 -0
@@ -0,0 +1,248 @@
1
+ import "../assets/NcListItem-xcW2PRrk.css";
2
+ import { N as l } from "./NcActions-5K-qjttC.mjs";
3
+ import r from "../Components/NcCounterBubble.mjs";
4
+ import c from "../Components/NcVNodes.mjs";
5
+ import { r as u, h as d, a as h } from "./_l10n-gZppkly8.mjs";
6
+ import { n as p } from "./_plugin-vue2_normalizer-u6G_3nkj.mjs";
7
+ u(d);
8
+ const f = {
9
+ name: "NcListItem",
10
+ components: {
11
+ NcActions: l,
12
+ NcCounterBubble: r,
13
+ NcVNodes: c
14
+ },
15
+ props: {
16
+ /**
17
+ * The details text displayed in the upper right part of the component
18
+ */
19
+ details: {
20
+ type: String,
21
+ default: ""
22
+ },
23
+ /**
24
+ * Name (first line of text)
25
+ */
26
+ name: {
27
+ type: String,
28
+ required: !0
29
+ },
30
+ /**
31
+ * Pass in `true` if you want the matching behavior to
32
+ * be non-inclusive: https://router.vuejs.org/api/#exact
33
+ */
34
+ exact: {
35
+ type: Boolean,
36
+ default: !1
37
+ },
38
+ /**
39
+ * The route for the router link.
40
+ */
41
+ to: {
42
+ type: [String, Object],
43
+ default: null
44
+ },
45
+ /**
46
+ * The value for the external link
47
+ */
48
+ href: {
49
+ type: String,
50
+ default: "#"
51
+ },
52
+ target: {
53
+ type: String,
54
+ default: ""
55
+ },
56
+ /**
57
+ * Id for the `<a>` element
58
+ */
59
+ anchorId: {
60
+ type: String,
61
+ default: ""
62
+ },
63
+ /**
64
+ * Make subname bold
65
+ */
66
+ bold: {
67
+ type: Boolean,
68
+ default: !1
69
+ },
70
+ /**
71
+ * Show the NcListItem in compact design
72
+ */
73
+ compact: {
74
+ type: Boolean,
75
+ default: !1
76
+ },
77
+ /**
78
+ * Toggle the active state of the component
79
+ */
80
+ active: {
81
+ type: Boolean,
82
+ default: !1
83
+ },
84
+ /**
85
+ * Aria label for the wrapper element
86
+ */
87
+ linkAriaLabel: {
88
+ type: String,
89
+ default: ""
90
+ },
91
+ /**
92
+ * Aria label for the actions toggle
93
+ */
94
+ actionsAriaLabel: {
95
+ type: String,
96
+ default: ""
97
+ },
98
+ /**
99
+ * If different from 0 this component will display the
100
+ * NcCounterBubble component
101
+ */
102
+ counterNumber: {
103
+ type: [Number, String],
104
+ default: 0
105
+ },
106
+ /**
107
+ * Outlined or highlighted state of the counter
108
+ */
109
+ counterType: {
110
+ type: String,
111
+ default: "",
112
+ validator(a) {
113
+ return ["highlighted", "outlined", ""].indexOf(a) !== -1;
114
+ }
115
+ },
116
+ /**
117
+ * To be used only when the elements in the actions menu are very important
118
+ */
119
+ forceDisplayActions: {
120
+ type: Boolean,
121
+ default: !1
122
+ }
123
+ },
124
+ emits: [
125
+ "click",
126
+ "update:menuOpen"
127
+ ],
128
+ data() {
129
+ return {
130
+ hovered: !1,
131
+ focused: !1,
132
+ hasActions: !1,
133
+ hasSubname: !1,
134
+ displayActionsOnHoverFocus: !1,
135
+ menuOpen: !1,
136
+ hasIndicator: !1
137
+ };
138
+ },
139
+ computed: {
140
+ hasDetails() {
141
+ return this.details !== "";
142
+ },
143
+ oneLine() {
144
+ return !this.hasSubname && !this.showDetails;
145
+ },
146
+ showAdditionalElements() {
147
+ return !this.displayActionsOnHoverFocus || this.forceDisplayActions;
148
+ },
149
+ showDetails() {
150
+ return this.hasDetails && (!this.displayActionsOnHoverFocus || this.forceDisplayActions);
151
+ },
152
+ computedActionsAriaLabel() {
153
+ return this.actionsAriaLabel || h('Actions for item with name "{name}"', { name: this.name });
154
+ }
155
+ },
156
+ watch: {
157
+ menuOpen(a) {
158
+ !a && !this.hovered && (this.displayActionsOnHoverFocus = !1);
159
+ }
160
+ },
161
+ mounted() {
162
+ this.checkSlots();
163
+ },
164
+ updated() {
165
+ this.checkSlots();
166
+ },
167
+ methods: {
168
+ /**
169
+ * Handle link click
170
+ *
171
+ * @param {PointerEvent} event - Native click event
172
+ * @param {Function} [navigate] - VueRouter link's navigate if any
173
+ * @param {string} [routerLinkHref] - VueRouter link's href
174
+ */
175
+ onClick(a, t, e) {
176
+ this.$emit("click", a), !(a.metaKey || a.altKey || a.ctrlKey || a.shiftKey) && e && (t?.(a), a.preventDefault());
177
+ },
178
+ handleMouseover() {
179
+ this.showActions(), this.hovered = !0;
180
+ },
181
+ showActions() {
182
+ this.hasActions && (this.displayActionsOnHoverFocus = !0), this.hovered = !1;
183
+ },
184
+ hideActions() {
185
+ this.displayActionsOnHoverFocus = !1;
186
+ },
187
+ /**
188
+ * Show actions upon focus
189
+ */
190
+ handleFocus() {
191
+ this.focused = !0, this.showActions();
192
+ },
193
+ handleBlur() {
194
+ this.focused = !1;
195
+ },
196
+ /**
197
+ * Hide the actions on mouseleave unless the menu is open
198
+ */
199
+ handleMouseleave() {
200
+ this.menuOpen || (this.displayActionsOnHoverFocus = !1), this.hovered = !1;
201
+ },
202
+ /**
203
+ * This method checks if the root element of the component is focused and
204
+ * if that's the case it focuses the actions button if available
205
+ *
206
+ * @param {Event} e the keydown event
207
+ */
208
+ handleTab(a) {
209
+ this.focused && this.hasActions ? (a.preventDefault(), this.$refs.actions.$refs.menuButton.$el.focus(), this.focused = !1) : this.displayActionsOnHoverFocus = !1;
210
+ },
211
+ handleActionsUpdateOpen(a) {
212
+ this.menuOpen = a, this.$emit("update:menuOpen", a);
213
+ },
214
+ // Check if subname and actions slots are populated
215
+ checkSlots() {
216
+ this.hasActions !== !!this.$slots.actions && (this.hasActions = !!this.$slots.actions), this.hasSubname !== !!this.$slots.subname && (this.hasSubname = !!this.$slots.subname), this.hasIndicator !== !!this.$slots.indicator && (this.hasIndicator = !!this.$slots.indicator);
217
+ }
218
+ }
219
+ };
220
+ var m = function() {
221
+ var t = this, e = t._self._c;
222
+ return e(t.to ? "router-link" : "NcVNodes", { tag: "component", attrs: { custom: t.to ? !0 : null, to: t.to, exact: t.to ? t.exact : null }, scopedSlots: t._u([{ key: "default", fn: function({ href: n, navigate: o, isActive: i }) {
223
+ return [e("li", { staticClass: "list-item__wrapper", class: { "list-item__wrapper--active": i || t.active } }, [e("a", { ref: "list-item", staticClass: "list-item", attrs: { id: t.anchorId, href: n || t.href, target: t.target || (t.href === "#" ? void 0 : "_blank"), rel: t.href === "#" ? void 0 : "noopener noreferrer", "aria-label": t.linkAriaLabel }, on: { mouseover: t.handleMouseover, mouseleave: t.handleMouseleave, focus: t.handleFocus, blur: t.handleBlur, keydown: [function(s) {
224
+ return !s.type.indexOf("key") && t._k(s.keyCode, "tab", 9, s.key, "Tab") || s.ctrlKey || s.shiftKey || s.altKey || s.metaKey ? null : t.handleTab.apply(null, arguments);
225
+ }, function(s) {
226
+ return !s.type.indexOf("key") && t._k(s.keyCode, "esc", 27, s.key, ["Esc", "Escape"]) ? null : t.hideActions.apply(null, arguments);
227
+ }], click: function(s) {
228
+ return t.onClick(s, o, n);
229
+ } } }, [e("div", { staticClass: "list-item-content__wrapper", class: { "list-item-content__wrapper--compact": t.compact } }, [t._t("icon"), e("div", { staticClass: "list-item-content" }, [e("div", { staticClass: "list-item-content__main", class: { "list-item-content__main--oneline": t.oneLine } }, [e("div", { staticClass: "line-one" }, [e("span", { staticClass: "line-one__name" }, [t._v(" " + t._s(t.name) + " ")]), t.showDetails ? e("span", { staticClass: "line-one__details" }, [t._v(" " + t._s(t.details) + " ")]) : t._e()]), e("div", { staticClass: "line-two", class: { "line-two--bold": t.bold } }, [t.hasSubname ? e("span", { staticClass: "line-two__subname" }, [t._t("subname")], 2) : t._e(), t.counterNumber != 0 || t.hasIndicator ? e("span", { directives: [{ name: "show", rawName: "v-show", value: t.showAdditionalElements, expression: "showAdditionalElements" }], staticClass: "line-two__additional_elements" }, [t.counterNumber != 0 ? e("NcCounterBubble", { staticClass: "line-two__counter", attrs: { active: i || t.active, type: t.counterType } }, [t._v(" " + t._s(t.counterNumber) + " ")]) : t._e(), t.hasIndicator ? e("span", { staticClass: "line-two__indicator" }, [t._t("indicator")], 2) : t._e()], 1) : t._e()])]), t.forceDisplayActions ? t._e() : e("div", { directives: [{ name: "show", rawName: "v-show", value: t.displayActionsOnHoverFocus, expression: "displayActionsOnHoverFocus" }], staticClass: "list-item-content__actions", on: { click: function(s) {
230
+ s.preventDefault(), s.stopPropagation();
231
+ } } }, [e("NcActions", { ref: "actions", attrs: { primary: i || t.active, "aria-label": t.computedActionsAriaLabel }, on: { "update:open": t.handleActionsUpdateOpen } }, [t._t("actions")], 2)], 1)]), t.forceDisplayActions ? e("div", { staticClass: "list-item-content__actions", on: { click: function(s) {
232
+ s.preventDefault(), s.stopPropagation();
233
+ } } }, [e("NcActions", { ref: "actions", attrs: { primary: i || t.active, "aria-label": t.computedActionsAriaLabel }, on: { "update:open": t.handleActionsUpdateOpen } }, [t._t("actions")], 2)], 1) : t._e()], 2), t.$slots.extra ? e("div", { staticClass: "list-item__extra" }, [t._t("extra")], 2) : t._e()])])];
234
+ } }], null, !0) });
235
+ }, _ = [], y = /* @__PURE__ */ p(
236
+ f,
237
+ m,
238
+ _,
239
+ !1,
240
+ null,
241
+ "57c41e90",
242
+ null,
243
+ null
244
+ );
245
+ const O = y.exports;
246
+ export {
247
+ O as N
248
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NcListItem-_P2bxfeP.mjs","sources":["../../src/components/NcListItem/NcListItem.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2021 Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n<docs>\n\n### Default Usage\n\n```vue\n<template>\n\t<ul>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with highlighted counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"highlighted\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with outlined counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"outlined\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with normal counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with highlighted counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"highlighted\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with outlined counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"outlined\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with normal counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element'\"\n\t\t\t:bold=\"false\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#0082c9\"/>\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element'\"\n\t\t\t:bold=\"false\"\n\t\t\t:details=\"'1h'\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#0082c9\"/>\n\t\t\t</template>\n\t\t</NcListItem>\n\t</ul>\n</template>\n\n<script>\n\timport CheckboxBlankCircle from 'vue-material-design-icons/CheckboxBlankCircle'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tCheckboxBlankCircle,\n\t\t}\n\t}\n</script>\n\n```\n\n### NcListItem compact mode\n```\n<ul style=\"width: 350px;\">\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:counter-number=\"1\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with subname\n\t\t</template>\n\t\t<template #actions>\n\t\t\t<NcActionButton>\n\t\t\t\tButton one\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton>\n\t\t\t\tButton two\n\t\t\t</NcActionButton>\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:counter-number=\"3\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with subname\n\t\t</template>\n\t\t<template #actions>\n\t\t\t<NcActionButton>\n\t\t\t\tButton one\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton>\n\t\t\t\tButton two\n\t\t\t</NcActionButton>\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:compact=\"true\"\n\t\t:counter-number=\"4\"\n\t\thref=\"https://nextcloud.com\">\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with an external link\n\t\t</template>\n\t</NcListItem>\n</ul>\n```\n</docs>\n\n<template>\n\t<!-- This wrapper can be either a router link or a `<li>` -->\n\t<component :is=\"to ? 'router-link' : 'NcVNodes'\"\n\t\tv-slot=\"{ href: routerLinkHref, navigate, isActive }\"\n\t\t:custom=\"to ? true : null\"\n\t\t:to=\"to\"\n\t\t:exact=\"to ? exact : null\">\n\t\t<li class=\"list-item__wrapper\"\n\t\t\t:class=\"{ 'list-item__wrapper--active' : isActive || active }\">\n\t\t\t<a :id=\"anchorId\"\n\t\t\t\tref=\"list-item\"\n\t\t\t\t:href=\"routerLinkHref || href\"\n\t\t\t\t:target=\"target || (href === '#' ? undefined : '_blank')\"\n\t\t\t\t:rel=\"href === '#' ? undefined : 'noopener noreferrer'\"\n\t\t\t\tclass=\"list-item\"\n\t\t\t\t:aria-label=\"linkAriaLabel\"\n\t\t\t\t@mouseover=\"handleMouseover\"\n\t\t\t\t@mouseleave=\"handleMouseleave\"\n\t\t\t\t@focus=\"handleFocus\"\n\t\t\t\t@blur=\"handleBlur\"\n\t\t\t\t@keydown.tab.exact=\"handleTab\"\n\t\t\t\t@click=\"onClick($event, navigate, routerLinkHref)\"\n\t\t\t\t@keydown.esc=\"hideActions\">\n\n\t\t\t\t<div class=\"list-item-content__wrapper\"\n\t\t\t\t\t:class=\"{ 'list-item-content__wrapper--compact': compact }\">\n\t\t\t\t\t<!-- @slot This slot is used for the NcAvatar or icon -->\n\t\t\t\t\t<slot name=\"icon\" />\n\n\t\t\t\t\t<!-- Main content -->\n\t\t\t\t\t<div class=\"list-item-content\">\n\t\t\t\t\t\t<div class=\"list-item-content__main\"\n\t\t\t\t\t\t\t:class=\"{ 'list-item-content__main--oneline': oneLine }\">\n\n\t\t\t\t\t\t\t<!-- First line, name and details -->\n\t\t\t\t\t\t\t<div class=\"line-one\">\n\t\t\t\t\t\t\t\t<span class=\"line-one__name\">\n\t\t\t\t\t\t\t\t\t{{ name }}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<span v-if=\"showDetails\"\n\t\t\t\t\t\t\t\t\tclass=\"line-one__details\">\n\t\t\t\t\t\t\t\t\t{{ details }}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<!-- Second line, subname and counter -->\n\t\t\t\t\t\t\t<div class=\"line-two\"\n\t\t\t\t\t\t\t\t:class=\"{'line-two--bold': bold}\">\n\t\t\t\t\t\t\t\t<span v-if=\"hasSubname\" class=\"line-two__subname\">\n\t\t\t\t\t\t\t\t\t<!-- @slot Slot for the second line of the component -->\n\t\t\t\t\t\t\t\t\t<slot name=\"subname\" />\n\t\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\t<!-- Counter and indicator -->\n\t\t\t\t\t\t\t\t<span v-if=\"counterNumber != 0 || hasIndicator\"\n\t\t\t\t\t\t\t\t\tv-show=\"showAdditionalElements\"\n\t\t\t\t\t\t\t\t\tclass=\"line-two__additional_elements\">\n\t\t\t\t\t\t\t\t\t<NcCounterBubble v-if=\"counterNumber != 0\"\n\t\t\t\t\t\t\t\t\t\t:active=\"isActive || active\"\n\t\t\t\t\t\t\t\t\t\tclass=\"line-two__counter\"\n\t\t\t\t\t\t\t\t\t\t:type=\"counterType\">\n\t\t\t\t\t\t\t\t\t\t{{ counterNumber }}\n\t\t\t\t\t\t\t\t\t</NcCounterBubble>\n\n\t\t\t\t\t\t\t\t\t<span v-if=\"hasIndicator\" class=\"line-two__indicator\">\n\t\t\t\t\t\t\t\t\t\t<!-- @slot This slot is used for some indicator in form of icon -->\n\t\t\t\t\t\t\t\t\t\t<slot name=\"indicator\" />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<!-- Actions -->\n\t\t\t\t\t\t<div v-if=\"!forceDisplayActions\"\n\t\t\t\t\t\t\tv-show=\"displayActionsOnHoverFocus\"\n\t\t\t\t\t\t\tclass=\"list-item-content__actions\"\n\t\t\t\t\t\t\t@click.prevent.stop=\"\">\n\t\t\t\t\t\t\t<NcActions ref=\"actions\"\n\t\t\t\t\t\t\t\t:primary=\"isActive || active\"\n\t\t\t\t\t\t\t\t:aria-label=\"computedActionsAriaLabel\"\n\t\t\t\t\t\t\t\t@update:open=\"handleActionsUpdateOpen\">\n\t\t\t\t\t\t\t\t<!-- @slot Provide the actions for the right side quick menu -->\n\t\t\t\t\t\t\t\t<slot name=\"actions\" />\n\t\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<!-- Actions -->\n\t\t\t\t\t<div v-if=\"forceDisplayActions\"\n\t\t\t\t\t\tclass=\"list-item-content__actions\"\n\t\t\t\t\t\t@click.prevent.stop=\"\">\n\t\t\t\t\t\t<NcActions ref=\"actions\"\n\t\t\t\t\t\t\t:primary=\"isActive || active\"\n\t\t\t\t\t\t\t:aria-label=\"computedActionsAriaLabel\"\n\t\t\t\t\t\t\t@update:open=\"handleActionsUpdateOpen\">\n\t\t\t\t\t\t\t<!-- @slot Provide the actions for the right side quick menu -->\n\t\t\t\t\t\t\t<slot name=\"actions\" />\n\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- @slot Extra elements below the item -->\n\t\t\t\t<div v-if=\"$slots.extra\" class=\"list-item__extra\">\n\t\t\t\t\t<slot name=\"extra\" />\n\t\t\t\t</div>\n\t\t\t</a>\n\t\t</li>\n\t</component>\n</template>\n\n<script>\nimport NcActions from '../NcActions/index.js'\nimport NcCounterBubble from '../NcCounterBubble/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { t } from '../../l10n.js'\n\nexport default {\n\tname: 'NcListItem',\n\n\tcomponents: {\n\t\tNcActions,\n\t\tNcCounterBubble,\n\t\tNcVNodes,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * The details text displayed in the upper right part of the component\n\t\t */\n\t\tdetails: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Name (first line of text)\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * Pass in `true` if you want the matching behavior to\n\t\t * be non-inclusive: https://router.vuejs.org/api/#exact\n\t\t */\n\t\texact: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The route for the router link.\n\t\t */\n\t\tto: {\n\t\t\ttype: [String, Object],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value for the external link\n\t\t */\n\t\thref: {\n\t\t\ttype: String,\n\t\t\tdefault: '#',\n\t\t},\n\n\t\ttarget: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Id for the `<a>` element\n\t\t */\n\t\tanchorId: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Make subname bold\n\t\t */\n\t\tbold: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Show the NcListItem in compact design\n\t\t */\n\t\tcompact: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggle the active state of the component\n\t\t */\n\t\tactive: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the wrapper element\n\t\t */\n\t\tlinkAriaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the actions toggle\n\t\t */\n\t\tactionsAriaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * If different from 0 this component will display the\n\t\t * NcCounterBubble component\n\t\t */\n\t\t counterNumber: {\n\t\t\t type: [Number, String],\n\t\t\t default: 0,\n\t\t },\n\n\t\t/**\n\t\t * Outlined or highlighted state of the counter\n\t\t */\n\t\tcounterType: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['highlighted', 'outlined', ''].indexOf(value) !== -1\n\t\t\t},\n\t\t},\n\n\t\t/**\n\t\t * To be used only when the elements in the actions menu are very important\n\t\t */\n\t\tforceDisplayActions: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t\t'update:menuOpen',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\thovered: false,\n\t\t\tfocused: false,\n\t\t\thasActions: false,\n\t\t\thasSubname: false,\n\t\t\tdisplayActionsOnHoverFocus: false,\n\t\t\tmenuOpen: false,\n\t\t\thasIndicator: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\n\t\thasDetails() {\n\t\t\treturn this.details !== ''\n\t\t},\n\n\t\toneLine() {\n\t\t\treturn !this.hasSubname && !this.showDetails\n\t\t},\n\n\t\tshowAdditionalElements() {\n\t\t\treturn !this.displayActionsOnHoverFocus || this.forceDisplayActions\n\t\t},\n\n\t\tshowDetails() {\n\t\t\treturn this.hasDetails && (!this.displayActionsOnHoverFocus || this.forceDisplayActions)\n\t\t},\n\n\t\tcomputedActionsAriaLabel() {\n\t\t\treturn this.actionsAriaLabel || t('Actions for item with name \"{name}\"', { name: this.name })\n\t\t},\n\t},\n\n\twatch: {\n\n\t\tmenuOpen(newValue) {\n\t\t\t// A click outside both the menu and the root element hides the actions again\n\t\t\tif (!newValue && !this.hovered) {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.checkSlots()\n\t},\n\n\tupdated() {\n\t\tthis.checkSlots()\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Handle link click\n\t\t *\n\t\t * @param {PointerEvent} event - Native click event\n\t\t * @param {Function} [navigate] - VueRouter link's navigate if any\n\t\t * @param {string} [routerLinkHref] - VueRouter link's href\n\t\t */\n\t\tonClick(event, navigate, routerLinkHref) {\n\t\t\t// Always forward native event\n\t\t\tthis.$emit('click', event)\n\t\t\t// Do not navigate with control keys - it is opening in a new tab\n\t\t\tif (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// Prevent default link behaviour if it's a router-link and navigate manually\n\t\t\tif (routerLinkHref) {\n\t\t\t\tnavigate?.(event)\n\t\t\t\tevent.preventDefault()\n\t\t\t}\n\t\t},\n\n\t\thandleMouseover() {\n\t\t\tthis.showActions()\n\t\t\tthis.hovered = true\n\t\t},\n\n\t\tshowActions() {\n\t\t\tif (this.hasActions) {\n\t\t\t\tthis.displayActionsOnHoverFocus = true\n\t\t\t}\n\t\t\tthis.hovered = false\n\t\t},\n\n\t\thideActions() {\n\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t},\n\n\t\t/**\n\t\t * Show actions upon focus\n\t\t */\n\t\thandleFocus() {\n\t\t\tthis.focused = true\n\t\t\tthis.showActions()\n\t\t},\n\n\t\thandleBlur() {\n\t\t\tthis.focused = false\n\t\t},\n\n\t\t/**\n\t\t * Hide the actions on mouseleave unless the menu is open\n\t\t */\n\t\thandleMouseleave() {\n\t\t\tif (!this.menuOpen) {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t\tthis.hovered = false\n\t\t},\n\n\t\t/**\n\t\t * This method checks if the root element of the component is focused and\n\t\t * if that's the case it focuses the actions button if available\n\t\t *\n\t\t * @param {Event} e the keydown event\n\t\t */\n\t\thandleTab(e) {\n\t\t\tif (this.focused && this.hasActions) {\n\t\t\t\te.preventDefault()\n\t\t\t\tthis.$refs.actions.$refs.menuButton.$el.focus()\n\t\t\t\tthis.focused = false\n\t\t\t} else {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t},\n\n\t\thandleActionsUpdateOpen(e) {\n\t\t\tthis.menuOpen = e\n\t\t\tthis.$emit('update:menuOpen', e)\n\t\t},\n\n\t\t// Check if subname and actions slots are populated\n\t\tcheckSlots() {\n\t\t\tif (this.hasActions !== !!this.$slots.actions) {\n\t\t\t\tthis.hasActions = !!this.$slots.actions\n\t\t\t}\n\t\t\tif (this.hasSubname !== !!this.$slots.subname) {\n\t\t\t\tthis.hasSubname = !!this.$slots.subname\n\t\t\t}\n\t\t\tif (this.hasIndicator !== !!this.$slots.indicator) {\n\t\t\t\tthis.hasIndicator = !!this.$slots.indicator\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.list-item__wrapper {\n\tposition: relative;\n\twidth: 100%;\n\n\t&--active,\n\t&:active,\n\t&.active {\n\t\t.list-item {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t&:active,\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:focus-visible {\n\t\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t\t}\n\t\t}\n\n\t\t.line-one__name, .line-one__details {\n\t\t\tcolor: var(--color-primary-element-text) !important;\n\t\t}\n\n\t\t.line-two__subname {\n\t\t\tcolor: var(--color-primary-element-text) !important;\n\t\t}\n\t}\n}\n\n// NcListItem\n.list-item {\n\tbox-sizing: border-box;\n\tdisplay: block;\n\tposition: relative;\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\tpadding: 8px 10px;\n\t// Fix for border-radius being too large for 3-line entries like in Mail\n\t// 44px avatar size / 2 + 8px padding, and 2px for better visual quality\n\tborder-radius: 32px;\n\tmargin: 2px 0;\n\twidth: 100%;\n\tcursor: pointer;\n\ttransition: background-color var(--animation-quick) ease-in-out;\n\tlist-style: none;\n\t&:active,\n\t&:hover,\n\t&:focus,\n\t&:focus-visible {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n\n\t&-content__wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 48px;\n\n\t\t&--compact {\n\t\t\theight: 36px;\n\n\t\t\t.line-one, .line-two {\n\t\t\t\tmargin-top: -4px;\n\t\t\t\tmargin-bottom: -4px;\n\t\t\t}\n\t\t}\n\t}\n\n\t&-content {\n\t\tdisplay: flex;\n\t\tflex: 1 1 auto;\n\t\tjustify-content: space-between;\n\t\tpadding-left: 8px;\n\n\t\t&__main {\n\t\t\tflex: 1 1 auto;\n\t\t\twidth: 0;\n\t\t\tmargin: auto 0;\n\n\t\t\t&--oneline {\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t\t&__actions {\n\t\t\tflex: 0 0 auto;\n\t\t\talign-self: center;\n\t\t\tjustify-content: center;\n\t\t\tmargin-left: 4px;\n\t\t}\n\t}\n\n\t&__extra {\n\t\tmargin-top: 4px;\n\t}\n}\n\n.line-one {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\twhite-space: nowrap;\n\tmargin: 0 auto 0 0;\n\toverflow: hidden;\n\n\t&__name {\n\t\toverflow: hidden;\n\t\tflex-grow: 1;\n\t\tcursor: pointer;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-main-text);\n\t\tfont-weight: bold;\n\t}\n\n\t&__details {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin: 0 8px;\n\t\tfont-weight: normal;\n\t}\n}\n\n.line-two {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tjustify-content: space-between;\n\twhite-space: nowrap;\n\t&--bold {\n\t\tfont-weight: bold;\n\t}\n\n\t&__subname {\n\t\toverflow: hidden;\n\t\tflex-grow: 1;\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t&__additional_elements {\n\t\tmargin: 2px 4px 0 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t&__indicator {\n\t\tmargin: 0 5px;\n\t}\n}\n\n</style>\n"],"names":["_sfc_main","NcActions","NcCounterBubble","NcVNodes","value","t","newValue","event","navigate","routerLinkHref","e"],"mappings":";;;;;;;AAqaA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,WAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,UAAAC;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,IAAA;AAAA,MACA,MAAA,CAAA,QAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,IAEA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,eAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,eAAA;AAAA,MACA,MAAA,CAAA,QAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAAC,GAAA;AACA,eAAA,CAAA,eAAA,YAAA,EAAA,EAAA,QAAAA,CAAA,MAAA;AAAA,MACA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,qBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AACA,WAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,MACA,YAAA;AAAA,MACA,4BAAA;AAAA,MACA,UAAA;AAAA,MACA,cAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA,IAEA,aAAA;AACA,aAAA,KAAA,YAAA;AAAA,IACA;AAAA,IAEA,UAAA;AACA,aAAA,CAAA,KAAA,cAAA,CAAA,KAAA;AAAA,IACA;AAAA,IAEA,yBAAA;AACA,aAAA,CAAA,KAAA,8BAAA,KAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,aAAA,KAAA,eAAA,CAAA,KAAA,8BAAA,KAAA;AAAA,IACA;AAAA,IAEA,2BAAA;AACA,aAAA,KAAA,oBAAAC,EAAA,uCAAA,EAAA,MAAA,KAAA,KAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IAEA,SAAAC,GAAA;AAEA,MAAA,CAAAA,KAAA,CAAA,KAAA,YACA,KAAA,6BAAA;AAAA,IAEA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,WAAA;AAAA,EACA;AAAA,EAEA,UAAA;AACA,SAAA,WAAA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,QAAAC,GAAAC,GAAAC,GAAA;AAIA,MAFA,KAAA,MAAA,SAAAF,CAAA,GAEA,EAAAA,EAAA,WAAAA,EAAA,UAAAA,EAAA,WAAAA,EAAA,aAIAE,MACAD,IAAAD,CAAA,GACAA,EAAA,eAAA;AAAA,IAEA;AAAA,IAEA,kBAAA;AACA,WAAA,YAAA,GACA,KAAA,UAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,MAAA,KAAA,eACA,KAAA,6BAAA,KAEA,KAAA,UAAA;AAAA,IACA;AAAA,IAEA,cAAA;AACA,WAAA,6BAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,cAAA;AACA,WAAA,UAAA,IACA,KAAA,YAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,WAAA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,MAAA,KAAA,aACA,KAAA,6BAAA,KAEA,KAAA,UAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,UAAAG,GAAA;AACA,MAAA,KAAA,WAAA,KAAA,cACAA,EAAA,eAAA,GACA,KAAA,MAAA,QAAA,MAAA,WAAA,IAAA,MAAA,GACA,KAAA,UAAA,MAEA,KAAA,6BAAA;AAAA,IAEA;AAAA,IAEA,wBAAAA,GAAA;AACA,WAAA,WAAAA,GACA,KAAA,MAAA,mBAAAA,CAAA;AAAA,IACA;AAAA;AAAA,IAGA,aAAA;AACA,MAAA,KAAA,eAAA,CAAA,CAAA,KAAA,OAAA,YACA,KAAA,aAAA,CAAA,CAAA,KAAA,OAAA,UAEA,KAAA,eAAA,CAAA,CAAA,KAAA,OAAA,YACA,KAAA,aAAA,CAAA,CAAA,KAAA,OAAA,UAEA,KAAA,iBAAA,CAAA,CAAA,KAAA,OAAA,cACA,KAAA,eAAA,CAAA,CAAA,KAAA,OAAA;AAAA,IAEA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,242 @@
1
+ var y = require("../assets/NcListItem-xcW2PRrk.css");
2
+ const c = require("./NcActions-4ml5sv6P.cjs"), r = require("../Components/NcCounterBubble.cjs"), u = require("../Components/NcVNodes.cjs"), n = require("./_l10n-RVZyA63y.cjs"), d = require("./_plugin-vue2_normalizer-DCfUPqga.cjs");
3
+ n.register(n.t5);
4
+ const h = {
5
+ name: "NcListItem",
6
+ components: {
7
+ NcActions: c.NcActions,
8
+ NcCounterBubble: r,
9
+ NcVNodes: u
10
+ },
11
+ props: {
12
+ /**
13
+ * The details text displayed in the upper right part of the component
14
+ */
15
+ details: {
16
+ type: String,
17
+ default: ""
18
+ },
19
+ /**
20
+ * Name (first line of text)
21
+ */
22
+ name: {
23
+ type: String,
24
+ required: !0
25
+ },
26
+ /**
27
+ * Pass in `true` if you want the matching behavior to
28
+ * be non-inclusive: https://router.vuejs.org/api/#exact
29
+ */
30
+ exact: {
31
+ type: Boolean,
32
+ default: !1
33
+ },
34
+ /**
35
+ * The route for the router link.
36
+ */
37
+ to: {
38
+ type: [String, Object],
39
+ default: null
40
+ },
41
+ /**
42
+ * The value for the external link
43
+ */
44
+ href: {
45
+ type: String,
46
+ default: "#"
47
+ },
48
+ target: {
49
+ type: String,
50
+ default: ""
51
+ },
52
+ /**
53
+ * Id for the `<a>` element
54
+ */
55
+ anchorId: {
56
+ type: String,
57
+ default: ""
58
+ },
59
+ /**
60
+ * Make subname bold
61
+ */
62
+ bold: {
63
+ type: Boolean,
64
+ default: !1
65
+ },
66
+ /**
67
+ * Show the NcListItem in compact design
68
+ */
69
+ compact: {
70
+ type: Boolean,
71
+ default: !1
72
+ },
73
+ /**
74
+ * Toggle the active state of the component
75
+ */
76
+ active: {
77
+ type: Boolean,
78
+ default: !1
79
+ },
80
+ /**
81
+ * Aria label for the wrapper element
82
+ */
83
+ linkAriaLabel: {
84
+ type: String,
85
+ default: ""
86
+ },
87
+ /**
88
+ * Aria label for the actions toggle
89
+ */
90
+ actionsAriaLabel: {
91
+ type: String,
92
+ default: ""
93
+ },
94
+ /**
95
+ * If different from 0 this component will display the
96
+ * NcCounterBubble component
97
+ */
98
+ counterNumber: {
99
+ type: [Number, String],
100
+ default: 0
101
+ },
102
+ /**
103
+ * Outlined or highlighted state of the counter
104
+ */
105
+ counterType: {
106
+ type: String,
107
+ default: "",
108
+ validator(i) {
109
+ return ["highlighted", "outlined", ""].indexOf(i) !== -1;
110
+ }
111
+ },
112
+ /**
113
+ * To be used only when the elements in the actions menu are very important
114
+ */
115
+ forceDisplayActions: {
116
+ type: Boolean,
117
+ default: !1
118
+ }
119
+ },
120
+ emits: [
121
+ "click",
122
+ "update:menuOpen"
123
+ ],
124
+ data() {
125
+ return {
126
+ hovered: !1,
127
+ focused: !1,
128
+ hasActions: !1,
129
+ hasSubname: !1,
130
+ displayActionsOnHoverFocus: !1,
131
+ menuOpen: !1,
132
+ hasIndicator: !1
133
+ };
134
+ },
135
+ computed: {
136
+ hasDetails() {
137
+ return this.details !== "";
138
+ },
139
+ oneLine() {
140
+ return !this.hasSubname && !this.showDetails;
141
+ },
142
+ showAdditionalElements() {
143
+ return !this.displayActionsOnHoverFocus || this.forceDisplayActions;
144
+ },
145
+ showDetails() {
146
+ return this.hasDetails && (!this.displayActionsOnHoverFocus || this.forceDisplayActions);
147
+ },
148
+ computedActionsAriaLabel() {
149
+ return this.actionsAriaLabel || n.t('Actions for item with name "{name}"', { name: this.name });
150
+ }
151
+ },
152
+ watch: {
153
+ menuOpen(i) {
154
+ !i && !this.hovered && (this.displayActionsOnHoverFocus = !1);
155
+ }
156
+ },
157
+ mounted() {
158
+ this.checkSlots();
159
+ },
160
+ updated() {
161
+ this.checkSlots();
162
+ },
163
+ methods: {
164
+ /**
165
+ * Handle link click
166
+ *
167
+ * @param {PointerEvent} event - Native click event
168
+ * @param {Function} [navigate] - VueRouter link's navigate if any
169
+ * @param {string} [routerLinkHref] - VueRouter link's href
170
+ */
171
+ onClick(i, t, e) {
172
+ this.$emit("click", i), !(i.metaKey || i.altKey || i.ctrlKey || i.shiftKey) && e && (t?.(i), i.preventDefault());
173
+ },
174
+ handleMouseover() {
175
+ this.showActions(), this.hovered = !0;
176
+ },
177
+ showActions() {
178
+ this.hasActions && (this.displayActionsOnHoverFocus = !0), this.hovered = !1;
179
+ },
180
+ hideActions() {
181
+ this.displayActionsOnHoverFocus = !1;
182
+ },
183
+ /**
184
+ * Show actions upon focus
185
+ */
186
+ handleFocus() {
187
+ this.focused = !0, this.showActions();
188
+ },
189
+ handleBlur() {
190
+ this.focused = !1;
191
+ },
192
+ /**
193
+ * Hide the actions on mouseleave unless the menu is open
194
+ */
195
+ handleMouseleave() {
196
+ this.menuOpen || (this.displayActionsOnHoverFocus = !1), this.hovered = !1;
197
+ },
198
+ /**
199
+ * This method checks if the root element of the component is focused and
200
+ * if that's the case it focuses the actions button if available
201
+ *
202
+ * @param {Event} e the keydown event
203
+ */
204
+ handleTab(i) {
205
+ this.focused && this.hasActions ? (i.preventDefault(), this.$refs.actions.$refs.menuButton.$el.focus(), this.focused = !1) : this.displayActionsOnHoverFocus = !1;
206
+ },
207
+ handleActionsUpdateOpen(i) {
208
+ this.menuOpen = i, this.$emit("update:menuOpen", i);
209
+ },
210
+ // Check if subname and actions slots are populated
211
+ checkSlots() {
212
+ this.hasActions !== !!this.$slots.actions && (this.hasActions = !!this.$slots.actions), this.hasSubname !== !!this.$slots.subname && (this.hasSubname = !!this.$slots.subname), this.hasIndicator !== !!this.$slots.indicator && (this.hasIndicator = !!this.$slots.indicator);
213
+ }
214
+ }
215
+ };
216
+ var p = function() {
217
+ var t = this, e = t._self._c;
218
+ return e(t.to ? "router-link" : "NcVNodes", { tag: "component", attrs: { custom: t.to ? !0 : null, to: t.to, exact: t.to ? t.exact : null }, scopedSlots: t._u([{ key: "default", fn: function({ href: o, navigate: l, isActive: a }) {
219
+ return [e("li", { staticClass: "list-item__wrapper", class: { "list-item__wrapper--active": a || t.active } }, [e("a", { ref: "list-item", staticClass: "list-item", attrs: { id: t.anchorId, href: o || t.href, target: t.target || (t.href === "#" ? void 0 : "_blank"), rel: t.href === "#" ? void 0 : "noopener noreferrer", "aria-label": t.linkAriaLabel }, on: { mouseover: t.handleMouseover, mouseleave: t.handleMouseleave, focus: t.handleFocus, blur: t.handleBlur, keydown: [function(s) {
220
+ return !s.type.indexOf("key") && t._k(s.keyCode, "tab", 9, s.key, "Tab") || s.ctrlKey || s.shiftKey || s.altKey || s.metaKey ? null : t.handleTab.apply(null, arguments);
221
+ }, function(s) {
222
+ return !s.type.indexOf("key") && t._k(s.keyCode, "esc", 27, s.key, ["Esc", "Escape"]) ? null : t.hideActions.apply(null, arguments);
223
+ }], click: function(s) {
224
+ return t.onClick(s, l, o);
225
+ } } }, [e("div", { staticClass: "list-item-content__wrapper", class: { "list-item-content__wrapper--compact": t.compact } }, [t._t("icon"), e("div", { staticClass: "list-item-content" }, [e("div", { staticClass: "list-item-content__main", class: { "list-item-content__main--oneline": t.oneLine } }, [e("div", { staticClass: "line-one" }, [e("span", { staticClass: "line-one__name" }, [t._v(" " + t._s(t.name) + " ")]), t.showDetails ? e("span", { staticClass: "line-one__details" }, [t._v(" " + t._s(t.details) + " ")]) : t._e()]), e("div", { staticClass: "line-two", class: { "line-two--bold": t.bold } }, [t.hasSubname ? e("span", { staticClass: "line-two__subname" }, [t._t("subname")], 2) : t._e(), t.counterNumber != 0 || t.hasIndicator ? e("span", { directives: [{ name: "show", rawName: "v-show", value: t.showAdditionalElements, expression: "showAdditionalElements" }], staticClass: "line-two__additional_elements" }, [t.counterNumber != 0 ? e("NcCounterBubble", { staticClass: "line-two__counter", attrs: { active: a || t.active, type: t.counterType } }, [t._v(" " + t._s(t.counterNumber) + " ")]) : t._e(), t.hasIndicator ? e("span", { staticClass: "line-two__indicator" }, [t._t("indicator")], 2) : t._e()], 1) : t._e()])]), t.forceDisplayActions ? t._e() : e("div", { directives: [{ name: "show", rawName: "v-show", value: t.displayActionsOnHoverFocus, expression: "displayActionsOnHoverFocus" }], staticClass: "list-item-content__actions", on: { click: function(s) {
226
+ s.preventDefault(), s.stopPropagation();
227
+ } } }, [e("NcActions", { ref: "actions", attrs: { primary: a || t.active, "aria-label": t.computedActionsAriaLabel }, on: { "update:open": t.handleActionsUpdateOpen } }, [t._t("actions")], 2)], 1)]), t.forceDisplayActions ? e("div", { staticClass: "list-item-content__actions", on: { click: function(s) {
228
+ s.preventDefault(), s.stopPropagation();
229
+ } } }, [e("NcActions", { ref: "actions", attrs: { primary: a || t.active, "aria-label": t.computedActionsAriaLabel }, on: { "update:open": t.handleActionsUpdateOpen } }, [t._t("actions")], 2)], 1) : t._e()], 2), t.$slots.extra ? e("div", { staticClass: "list-item__extra" }, [t._t("extra")], 2) : t._e()])])];
230
+ } }], null, !0) });
231
+ }, f = [], m = /* @__PURE__ */ d.normalizeComponent(
232
+ h,
233
+ p,
234
+ f,
235
+ !1,
236
+ null,
237
+ "57c41e90",
238
+ null,
239
+ null
240
+ );
241
+ const _ = m.exports;
242
+ exports.NcListItem = _;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NcListItem-wsOnBEF3.cjs","sources":["../../src/components/NcListItem/NcListItem.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2021 Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n-->\n<docs>\n\n### Default Usage\n\n```vue\n<template>\n\t<ul>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with highlighted counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"highlighted\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with outlined counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"outlined\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'This is an active element with normal counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:active=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#fff\" />\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with highlighted counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"highlighted\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with outlined counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\"\n\t\t\tcounterType=\"outlined\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element with normal counter'\"\n\t\t\t:bold=\"false\"\n\t\t\t:force-display-actions=\"true\"\n\t\t\t:details=\"'1h'\"\n\t\t\t:counter-number=\"44\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element'\"\n\t\t\t:bold=\"false\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#0082c9\"/>\n\t\t\t</template>\n\t\t\t<template #actions>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton one\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton two\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\tButton three\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\t\t</NcListItem>\n\t\t<NcListItem\n\t\t\t:name=\"'Name of the element'\"\n\t\t\t:bold=\"false\"\n\t\t\t:details=\"'1h'\">\n\t\t\t<template #icon>\n\t\t\t\t<NcAvatar :size=\"44\" user=\"janedoe\" display-name=\"Jane Doe\" />\n\t\t\t</template>\n\t\t\t<template #subname>\n\t\t\t\tIn this slot you can put both text and other components such as icons\n\t\t\t</template>\n\t\t\t<template #indicator>\n\t\t\t\t<!-- Color dot -->\n\t\t\t\t<CheckboxBlankCircle :size=\"16\" fill-color=\"#0082c9\"/>\n\t\t\t</template>\n\t\t</NcListItem>\n\t</ul>\n</template>\n\n<script>\n\timport CheckboxBlankCircle from 'vue-material-design-icons/CheckboxBlankCircle'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tCheckboxBlankCircle,\n\t\t}\n\t}\n</script>\n\n```\n\n### NcListItem compact mode\n```\n<ul style=\"width: 350px;\">\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:counter-number=\"1\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with subname\n\t\t</template>\n\t\t<template #actions>\n\t\t\t<NcActionButton>\n\t\t\t\tButton one\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton>\n\t\t\t\tButton two\n\t\t\t</NcActionButton>\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:counter-number=\"3\"\n\t\t:compact=\"true\" >\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with subname\n\t\t</template>\n\t\t<template #actions>\n\t\t\t<NcActionButton>\n\t\t\t\tButton one\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton>\n\t\t\t\tButton two\n\t\t\t</NcActionButton>\n\t\t</template>\n\t</NcListItem>\n\t<NcListItem\n\t\t:name=\"'Name of the element'\"\n\t\t:compact=\"true\"\n\t\t:counter-number=\"4\"\n\t\thref=\"https://nextcloud.com\">\n\t\t<template #icon>\n\t\t\t<div class=\"icon-edit\" />\n\t\t</template>\n\t\t<template #subname>\n\t\t\tThis one is with an external link\n\t\t</template>\n\t</NcListItem>\n</ul>\n```\n</docs>\n\n<template>\n\t<!-- This wrapper can be either a router link or a `<li>` -->\n\t<component :is=\"to ? 'router-link' : 'NcVNodes'\"\n\t\tv-slot=\"{ href: routerLinkHref, navigate, isActive }\"\n\t\t:custom=\"to ? true : null\"\n\t\t:to=\"to\"\n\t\t:exact=\"to ? exact : null\">\n\t\t<li class=\"list-item__wrapper\"\n\t\t\t:class=\"{ 'list-item__wrapper--active' : isActive || active }\">\n\t\t\t<a :id=\"anchorId\"\n\t\t\t\tref=\"list-item\"\n\t\t\t\t:href=\"routerLinkHref || href\"\n\t\t\t\t:target=\"target || (href === '#' ? undefined : '_blank')\"\n\t\t\t\t:rel=\"href === '#' ? undefined : 'noopener noreferrer'\"\n\t\t\t\tclass=\"list-item\"\n\t\t\t\t:aria-label=\"linkAriaLabel\"\n\t\t\t\t@mouseover=\"handleMouseover\"\n\t\t\t\t@mouseleave=\"handleMouseleave\"\n\t\t\t\t@focus=\"handleFocus\"\n\t\t\t\t@blur=\"handleBlur\"\n\t\t\t\t@keydown.tab.exact=\"handleTab\"\n\t\t\t\t@click=\"onClick($event, navigate, routerLinkHref)\"\n\t\t\t\t@keydown.esc=\"hideActions\">\n\n\t\t\t\t<div class=\"list-item-content__wrapper\"\n\t\t\t\t\t:class=\"{ 'list-item-content__wrapper--compact': compact }\">\n\t\t\t\t\t<!-- @slot This slot is used for the NcAvatar or icon -->\n\t\t\t\t\t<slot name=\"icon\" />\n\n\t\t\t\t\t<!-- Main content -->\n\t\t\t\t\t<div class=\"list-item-content\">\n\t\t\t\t\t\t<div class=\"list-item-content__main\"\n\t\t\t\t\t\t\t:class=\"{ 'list-item-content__main--oneline': oneLine }\">\n\n\t\t\t\t\t\t\t<!-- First line, name and details -->\n\t\t\t\t\t\t\t<div class=\"line-one\">\n\t\t\t\t\t\t\t\t<span class=\"line-one__name\">\n\t\t\t\t\t\t\t\t\t{{ name }}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<span v-if=\"showDetails\"\n\t\t\t\t\t\t\t\t\tclass=\"line-one__details\">\n\t\t\t\t\t\t\t\t\t{{ details }}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<!-- Second line, subname and counter -->\n\t\t\t\t\t\t\t<div class=\"line-two\"\n\t\t\t\t\t\t\t\t:class=\"{'line-two--bold': bold}\">\n\t\t\t\t\t\t\t\t<span v-if=\"hasSubname\" class=\"line-two__subname\">\n\t\t\t\t\t\t\t\t\t<!-- @slot Slot for the second line of the component -->\n\t\t\t\t\t\t\t\t\t<slot name=\"subname\" />\n\t\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\t<!-- Counter and indicator -->\n\t\t\t\t\t\t\t\t<span v-if=\"counterNumber != 0 || hasIndicator\"\n\t\t\t\t\t\t\t\t\tv-show=\"showAdditionalElements\"\n\t\t\t\t\t\t\t\t\tclass=\"line-two__additional_elements\">\n\t\t\t\t\t\t\t\t\t<NcCounterBubble v-if=\"counterNumber != 0\"\n\t\t\t\t\t\t\t\t\t\t:active=\"isActive || active\"\n\t\t\t\t\t\t\t\t\t\tclass=\"line-two__counter\"\n\t\t\t\t\t\t\t\t\t\t:type=\"counterType\">\n\t\t\t\t\t\t\t\t\t\t{{ counterNumber }}\n\t\t\t\t\t\t\t\t\t</NcCounterBubble>\n\n\t\t\t\t\t\t\t\t\t<span v-if=\"hasIndicator\" class=\"line-two__indicator\">\n\t\t\t\t\t\t\t\t\t\t<!-- @slot This slot is used for some indicator in form of icon -->\n\t\t\t\t\t\t\t\t\t\t<slot name=\"indicator\" />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<!-- Actions -->\n\t\t\t\t\t\t<div v-if=\"!forceDisplayActions\"\n\t\t\t\t\t\t\tv-show=\"displayActionsOnHoverFocus\"\n\t\t\t\t\t\t\tclass=\"list-item-content__actions\"\n\t\t\t\t\t\t\t@click.prevent.stop=\"\">\n\t\t\t\t\t\t\t<NcActions ref=\"actions\"\n\t\t\t\t\t\t\t\t:primary=\"isActive || active\"\n\t\t\t\t\t\t\t\t:aria-label=\"computedActionsAriaLabel\"\n\t\t\t\t\t\t\t\t@update:open=\"handleActionsUpdateOpen\">\n\t\t\t\t\t\t\t\t<!-- @slot Provide the actions for the right side quick menu -->\n\t\t\t\t\t\t\t\t<slot name=\"actions\" />\n\t\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<!-- Actions -->\n\t\t\t\t\t<div v-if=\"forceDisplayActions\"\n\t\t\t\t\t\tclass=\"list-item-content__actions\"\n\t\t\t\t\t\t@click.prevent.stop=\"\">\n\t\t\t\t\t\t<NcActions ref=\"actions\"\n\t\t\t\t\t\t\t:primary=\"isActive || active\"\n\t\t\t\t\t\t\t:aria-label=\"computedActionsAriaLabel\"\n\t\t\t\t\t\t\t@update:open=\"handleActionsUpdateOpen\">\n\t\t\t\t\t\t\t<!-- @slot Provide the actions for the right side quick menu -->\n\t\t\t\t\t\t\t<slot name=\"actions\" />\n\t\t\t\t\t\t</NcActions>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<!-- @slot Extra elements below the item -->\n\t\t\t\t<div v-if=\"$slots.extra\" class=\"list-item__extra\">\n\t\t\t\t\t<slot name=\"extra\" />\n\t\t\t\t</div>\n\t\t\t</a>\n\t\t</li>\n\t</component>\n</template>\n\n<script>\nimport NcActions from '../NcActions/index.js'\nimport NcCounterBubble from '../NcCounterBubble/index.js'\nimport NcVNodes from '../NcVNodes/index.js'\nimport { t } from '../../l10n.js'\n\nexport default {\n\tname: 'NcListItem',\n\n\tcomponents: {\n\t\tNcActions,\n\t\tNcCounterBubble,\n\t\tNcVNodes,\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * The details text displayed in the upper right part of the component\n\t\t */\n\t\tdetails: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Name (first line of text)\n\t\t */\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\n\t\t/**\n\t\t * Pass in `true` if you want the matching behavior to\n\t\t * be non-inclusive: https://router.vuejs.org/api/#exact\n\t\t */\n\t\texact: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The route for the router link.\n\t\t */\n\t\tto: {\n\t\t\ttype: [String, Object],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value for the external link\n\t\t */\n\t\thref: {\n\t\t\ttype: String,\n\t\t\tdefault: '#',\n\t\t},\n\n\t\ttarget: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Id for the `<a>` element\n\t\t */\n\t\tanchorId: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Make subname bold\n\t\t */\n\t\tbold: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Show the NcListItem in compact design\n\t\t */\n\t\tcompact: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Toggle the active state of the component\n\t\t */\n\t\tactive: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the wrapper element\n\t\t */\n\t\tlinkAriaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the actions toggle\n\t\t */\n\t\tactionsAriaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * If different from 0 this component will display the\n\t\t * NcCounterBubble component\n\t\t */\n\t\t counterNumber: {\n\t\t\t type: [Number, String],\n\t\t\t default: 0,\n\t\t },\n\n\t\t/**\n\t\t * Outlined or highlighted state of the counter\n\t\t */\n\t\tcounterType: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['highlighted', 'outlined', ''].indexOf(value) !== -1\n\t\t\t},\n\t\t},\n\n\t\t/**\n\t\t * To be used only when the elements in the actions menu are very important\n\t\t */\n\t\tforceDisplayActions: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t\t'update:menuOpen',\n\t],\n\n\tdata() {\n\t\treturn {\n\t\t\thovered: false,\n\t\t\tfocused: false,\n\t\t\thasActions: false,\n\t\t\thasSubname: false,\n\t\t\tdisplayActionsOnHoverFocus: false,\n\t\t\tmenuOpen: false,\n\t\t\thasIndicator: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\n\t\thasDetails() {\n\t\t\treturn this.details !== ''\n\t\t},\n\n\t\toneLine() {\n\t\t\treturn !this.hasSubname && !this.showDetails\n\t\t},\n\n\t\tshowAdditionalElements() {\n\t\t\treturn !this.displayActionsOnHoverFocus || this.forceDisplayActions\n\t\t},\n\n\t\tshowDetails() {\n\t\t\treturn this.hasDetails && (!this.displayActionsOnHoverFocus || this.forceDisplayActions)\n\t\t},\n\n\t\tcomputedActionsAriaLabel() {\n\t\t\treturn this.actionsAriaLabel || t('Actions for item with name \"{name}\"', { name: this.name })\n\t\t},\n\t},\n\n\twatch: {\n\n\t\tmenuOpen(newValue) {\n\t\t\t// A click outside both the menu and the root element hides the actions again\n\t\t\tif (!newValue && !this.hovered) {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.checkSlots()\n\t},\n\n\tupdated() {\n\t\tthis.checkSlots()\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Handle link click\n\t\t *\n\t\t * @param {PointerEvent} event - Native click event\n\t\t * @param {Function} [navigate] - VueRouter link's navigate if any\n\t\t * @param {string} [routerLinkHref] - VueRouter link's href\n\t\t */\n\t\tonClick(event, navigate, routerLinkHref) {\n\t\t\t// Always forward native event\n\t\t\tthis.$emit('click', event)\n\t\t\t// Do not navigate with control keys - it is opening in a new tab\n\t\t\tif (event.metaKey || event.altKey || event.ctrlKey || event.shiftKey) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// Prevent default link behaviour if it's a router-link and navigate manually\n\t\t\tif (routerLinkHref) {\n\t\t\t\tnavigate?.(event)\n\t\t\t\tevent.preventDefault()\n\t\t\t}\n\t\t},\n\n\t\thandleMouseover() {\n\t\t\tthis.showActions()\n\t\t\tthis.hovered = true\n\t\t},\n\n\t\tshowActions() {\n\t\t\tif (this.hasActions) {\n\t\t\t\tthis.displayActionsOnHoverFocus = true\n\t\t\t}\n\t\t\tthis.hovered = false\n\t\t},\n\n\t\thideActions() {\n\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t},\n\n\t\t/**\n\t\t * Show actions upon focus\n\t\t */\n\t\thandleFocus() {\n\t\t\tthis.focused = true\n\t\t\tthis.showActions()\n\t\t},\n\n\t\thandleBlur() {\n\t\t\tthis.focused = false\n\t\t},\n\n\t\t/**\n\t\t * Hide the actions on mouseleave unless the menu is open\n\t\t */\n\t\thandleMouseleave() {\n\t\t\tif (!this.menuOpen) {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t\tthis.hovered = false\n\t\t},\n\n\t\t/**\n\t\t * This method checks if the root element of the component is focused and\n\t\t * if that's the case it focuses the actions button if available\n\t\t *\n\t\t * @param {Event} e the keydown event\n\t\t */\n\t\thandleTab(e) {\n\t\t\tif (this.focused && this.hasActions) {\n\t\t\t\te.preventDefault()\n\t\t\t\tthis.$refs.actions.$refs.menuButton.$el.focus()\n\t\t\t\tthis.focused = false\n\t\t\t} else {\n\t\t\t\tthis.displayActionsOnHoverFocus = false\n\t\t\t}\n\t\t},\n\n\t\thandleActionsUpdateOpen(e) {\n\t\t\tthis.menuOpen = e\n\t\t\tthis.$emit('update:menuOpen', e)\n\t\t},\n\n\t\t// Check if subname and actions slots are populated\n\t\tcheckSlots() {\n\t\t\tif (this.hasActions !== !!this.$slots.actions) {\n\t\t\t\tthis.hasActions = !!this.$slots.actions\n\t\t\t}\n\t\t\tif (this.hasSubname !== !!this.$slots.subname) {\n\t\t\t\tthis.hasSubname = !!this.$slots.subname\n\t\t\t}\n\t\t\tif (this.hasIndicator !== !!this.$slots.indicator) {\n\t\t\t\tthis.hasIndicator = !!this.$slots.indicator\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.list-item__wrapper {\n\tposition: relative;\n\twidth: 100%;\n\n\t&--active,\n\t&:active,\n\t&.active {\n\t\t.list-item {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t&:active,\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:focus-visible {\n\t\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t\t}\n\t\t}\n\n\t\t.line-one__name, .line-one__details {\n\t\t\tcolor: var(--color-primary-element-text) !important;\n\t\t}\n\n\t\t.line-two__subname {\n\t\t\tcolor: var(--color-primary-element-text) !important;\n\t\t}\n\t}\n}\n\n// NcListItem\n.list-item {\n\tbox-sizing: border-box;\n\tdisplay: block;\n\tposition: relative;\n\tflex: 0 0 auto;\n\tjustify-content: flex-start;\n\tpadding: 8px 10px;\n\t// Fix for border-radius being too large for 3-line entries like in Mail\n\t// 44px avatar size / 2 + 8px padding, and 2px for better visual quality\n\tborder-radius: 32px;\n\tmargin: 2px 0;\n\twidth: 100%;\n\tcursor: pointer;\n\ttransition: background-color var(--animation-quick) ease-in-out;\n\tlist-style: none;\n\t&:active,\n\t&:hover,\n\t&:focus,\n\t&:focus-visible {\n\t\tbackground-color: var(--color-background-hover);\n\t}\n\n\t&-content__wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\theight: 48px;\n\n\t\t&--compact {\n\t\t\theight: 36px;\n\n\t\t\t.line-one, .line-two {\n\t\t\t\tmargin-top: -4px;\n\t\t\t\tmargin-bottom: -4px;\n\t\t\t}\n\t\t}\n\t}\n\n\t&-content {\n\t\tdisplay: flex;\n\t\tflex: 1 1 auto;\n\t\tjustify-content: space-between;\n\t\tpadding-left: 8px;\n\n\t\t&__main {\n\t\t\tflex: 1 1 auto;\n\t\t\twidth: 0;\n\t\t\tmargin: auto 0;\n\n\t\t\t&--oneline {\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t}\n\n\t\t&__actions {\n\t\t\tflex: 0 0 auto;\n\t\t\talign-self: center;\n\t\t\tjustify-content: center;\n\t\t\tmargin-left: 4px;\n\t\t}\n\t}\n\n\t&__extra {\n\t\tmargin-top: 4px;\n\t}\n}\n\n.line-one {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\twhite-space: nowrap;\n\tmargin: 0 auto 0 0;\n\toverflow: hidden;\n\n\t&__name {\n\t\toverflow: hidden;\n\t\tflex-grow: 1;\n\t\tcursor: pointer;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-main-text);\n\t\tfont-weight: bold;\n\t}\n\n\t&__details {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tmargin: 0 8px;\n\t\tfont-weight: normal;\n\t}\n}\n\n.line-two {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tjustify-content: space-between;\n\twhite-space: nowrap;\n\t&--bold {\n\t\tfont-weight: bold;\n\t}\n\n\t&__subname {\n\t\toverflow: hidden;\n\t\tflex-grow: 1;\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\t&__additional_elements {\n\t\tmargin: 2px 4px 0 4px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t&__indicator {\n\t\tmargin: 0 5px;\n\t}\n}\n\n</style>\n"],"names":["_sfc_main","NcActions","Components_NcCounterBubble","Components_NcVNodes","value","_l10n","newValue","event","navigate","routerLinkHref","e"],"mappings":"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"}