@nextcloud/vue 8.4.0 → 9.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (968) hide show
  1. package/CHANGELOG.md +139 -0
  2. package/dist/Components/NcActionButton.cjs +3 -68
  3. package/dist/Components/NcActionButton.cjs.map +1 -1
  4. package/dist/Components/NcActionButton.mjs +2 -70
  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 +3 -35
  11. package/dist/Components/NcActionCaption.cjs.map +1 -1
  12. package/dist/Components/NcActionCaption.mjs +2 -35
  13. package/dist/Components/NcActionCaption.mjs.map +1 -1
  14. package/dist/Components/NcActionCheckbox.cjs +3 -93
  15. package/dist/Components/NcActionCheckbox.cjs.map +1 -1
  16. package/dist/Components/NcActionCheckbox.mjs +2 -95
  17. package/dist/Components/NcActionCheckbox.mjs.map +1 -1
  18. package/dist/Components/NcActionInput.cjs +3 -234
  19. package/dist/Components/NcActionInput.cjs.map +1 -1
  20. package/dist/Components/NcActionInput.mjs +2 -242
  21. package/dist/Components/NcActionInput.mjs.map +1 -1
  22. package/dist/Components/NcActionLink.cjs +3 -77
  23. package/dist/Components/NcActionLink.cjs.map +1 -1
  24. package/dist/Components/NcActionLink.mjs +2 -78
  25. package/dist/Components/NcActionLink.mjs.map +1 -1
  26. package/dist/Components/NcActionRadio.cjs +3 -100
  27. package/dist/Components/NcActionRadio.cjs.map +1 -1
  28. package/dist/Components/NcActionRadio.mjs +2 -102
  29. package/dist/Components/NcActionRadio.mjs.map +1 -1
  30. package/dist/Components/NcActionRouter.cjs +3 -48
  31. package/dist/Components/NcActionRouter.cjs.map +1 -1
  32. package/dist/Components/NcActionRouter.mjs +2 -49
  33. package/dist/Components/NcActionRouter.mjs.map +1 -1
  34. package/dist/Components/NcActionSeparator.cjs +3 -20
  35. package/dist/Components/NcActionSeparator.cjs.map +1 -1
  36. package/dist/Components/NcActionSeparator.mjs +2 -20
  37. package/dist/Components/NcActionSeparator.mjs.map +1 -1
  38. package/dist/Components/NcActionText.cjs +3 -29
  39. package/dist/Components/NcActionText.cjs.map +1 -1
  40. package/dist/Components/NcActionText.mjs +2 -30
  41. package/dist/Components/NcActionText.mjs.map +1 -1
  42. package/dist/Components/NcActionTextEditable.cjs +3 -81
  43. package/dist/Components/NcActionTextEditable.cjs.map +1 -1
  44. package/dist/Components/NcActionTextEditable.mjs +2 -84
  45. package/dist/Components/NcActionTextEditable.mjs.map +1 -1
  46. package/dist/Components/NcActions.cjs +3 -483
  47. package/dist/Components/NcActions.cjs.map +1 -1
  48. package/dist/Components/NcActions.mjs +2 -489
  49. package/dist/Components/NcActions.mjs.map +1 -1
  50. package/dist/Components/NcAppContent.cjs +3 -222
  51. package/dist/Components/NcAppContent.cjs.map +1 -1
  52. package/dist/Components/NcAppContent.mjs +2 -230
  53. package/dist/Components/NcAppContent.mjs.map +1 -1
  54. package/dist/Components/NcAppContentDetails.cjs +2 -18
  55. package/dist/Components/NcAppContentDetails.cjs.map +1 -1
  56. package/dist/Components/NcAppContentDetails.mjs +2 -19
  57. package/dist/Components/NcAppContentDetails.mjs.map +1 -1
  58. package/dist/Components/NcAppContentList.cjs +2 -28
  59. package/dist/Components/NcAppContentList.cjs.map +1 -1
  60. package/dist/Components/NcAppContentList.mjs +2 -29
  61. package/dist/Components/NcAppContentList.mjs.map +1 -1
  62. package/dist/Components/NcAppNavigation.cjs +3 -101
  63. package/dist/Components/NcAppNavigation.cjs.map +1 -1
  64. package/dist/Components/NcAppNavigation.mjs +2 -106
  65. package/dist/Components/NcAppNavigation.mjs.map +1 -1
  66. package/dist/Components/NcAppNavigationCaption.cjs +3 -44
  67. package/dist/Components/NcAppNavigationCaption.cjs.map +1 -1
  68. package/dist/Components/NcAppNavigationCaption.mjs +2 -45
  69. package/dist/Components/NcAppNavigationCaption.mjs.map +1 -1
  70. package/dist/Components/NcAppNavigationIconBullet.cjs +3 -40
  71. package/dist/Components/NcAppNavigationIconBullet.cjs.map +1 -1
  72. package/dist/Components/NcAppNavigationIconBullet.mjs +2 -40
  73. package/dist/Components/NcAppNavigationIconBullet.mjs.map +1 -1
  74. package/dist/Components/NcAppNavigationItem.cjs +3 -498
  75. package/dist/Components/NcAppNavigationItem.cjs.map +1 -1
  76. package/dist/Components/NcAppNavigationItem.mjs +2 -508
  77. package/dist/Components/NcAppNavigationItem.mjs.map +1 -1
  78. package/dist/Components/NcAppNavigationNew.cjs +3 -50
  79. package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
  80. package/dist/Components/NcAppNavigationNew.mjs +2 -51
  81. package/dist/Components/NcAppNavigationNew.mjs.map +1 -1
  82. package/dist/Components/NcAppNavigationNewItem.cjs +3 -87
  83. package/dist/Components/NcAppNavigationNewItem.cjs.map +1 -1
  84. package/dist/Components/NcAppNavigationNewItem.mjs +2 -89
  85. package/dist/Components/NcAppNavigationNewItem.mjs.map +1 -1
  86. package/dist/Components/NcAppNavigationSettings.cjs +3 -102
  87. package/dist/Components/NcAppNavigationSettings.cjs.map +1 -1
  88. package/dist/Components/NcAppNavigationSettings.mjs +2 -103
  89. package/dist/Components/NcAppNavigationSettings.mjs.map +1 -1
  90. package/dist/Components/NcAppNavigationSpacer.cjs +3 -20
  91. package/dist/Components/NcAppNavigationSpacer.cjs.map +1 -1
  92. package/dist/Components/NcAppNavigationSpacer.mjs +2 -20
  93. package/dist/Components/NcAppNavigationSpacer.mjs.map +1 -1
  94. package/dist/Components/NcAppNavigationToggle.cjs +1 -1
  95. package/dist/Components/NcAppNavigationToggle.mjs +1 -1
  96. package/dist/Components/NcAppSettingsDialog.cjs +3 -182
  97. package/dist/Components/NcAppSettingsDialog.cjs.map +1 -1
  98. package/dist/Components/NcAppSettingsDialog.mjs +2 -188
  99. package/dist/Components/NcAppSettingsDialog.mjs.map +1 -1
  100. package/dist/Components/NcAppSettingsSection.cjs +3 -58
  101. package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
  102. package/dist/Components/NcAppSettingsSection.mjs +2 -58
  103. package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
  104. package/dist/Components/NcAppSidebar.cjs +3 -552
  105. package/dist/Components/NcAppSidebar.cjs.map +1 -1
  106. package/dist/Components/NcAppSidebar.mjs +2 -567
  107. package/dist/Components/NcAppSidebar.mjs.map +1 -1
  108. package/dist/Components/NcAppSidebarTab.cjs +3 -83
  109. package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
  110. package/dist/Components/NcAppSidebarTab.mjs +2 -83
  111. package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
  112. package/dist/Components/NcAvatar.cjs +2 -2
  113. package/dist/Components/NcAvatar.mjs +1 -1
  114. package/dist/Components/NcBreadcrumb.cjs +3 -176
  115. package/dist/Components/NcBreadcrumb.cjs.map +1 -1
  116. package/dist/Components/NcBreadcrumb.mjs +2 -179
  117. package/dist/Components/NcBreadcrumb.mjs.map +1 -1
  118. package/dist/Components/NcBreadcrumbs.cjs +3 -411
  119. package/dist/Components/NcBreadcrumbs.cjs.map +1 -1
  120. package/dist/Components/NcBreadcrumbs.mjs +2 -420
  121. package/dist/Components/NcBreadcrumbs.mjs.map +1 -1
  122. package/dist/Components/NcButton.cjs +3 -228
  123. package/dist/Components/NcButton.cjs.map +1 -1
  124. package/dist/Components/NcButton.mjs +2 -228
  125. package/dist/Components/NcButton.mjs.map +1 -1
  126. package/dist/Components/NcCheckboxRadioSwitch.cjs +3 -600
  127. package/dist/Components/NcCheckboxRadioSwitch.cjs.map +1 -1
  128. package/dist/Components/NcCheckboxRadioSwitch.mjs +2 -604
  129. package/dist/Components/NcCheckboxRadioSwitch.mjs.map +1 -1
  130. package/dist/Components/NcColorPicker.cjs +3 -158
  131. package/dist/Components/NcColorPicker.cjs.map +1 -1
  132. package/dist/Components/NcColorPicker.mjs +2 -167
  133. package/dist/Components/NcColorPicker.mjs.map +1 -1
  134. package/dist/Components/NcContent.cjs +3 -25
  135. package/dist/Components/NcContent.cjs.map +1 -1
  136. package/dist/Components/NcContent.mjs +2 -25
  137. package/dist/Components/NcContent.mjs.map +1 -1
  138. package/dist/Components/NcCounterBubble.cjs +3 -47
  139. package/dist/Components/NcCounterBubble.cjs.map +1 -1
  140. package/dist/Components/NcCounterBubble.mjs +2 -47
  141. package/dist/Components/NcCounterBubble.mjs.map +1 -1
  142. package/dist/Components/NcDashboardWidget.cjs +3 -134
  143. package/dist/Components/NcDashboardWidget.cjs.map +1 -1
  144. package/dist/Components/NcDashboardWidget.mjs +2 -139
  145. package/dist/Components/NcDashboardWidget.mjs.map +1 -1
  146. package/dist/Components/NcDashboardWidgetItem.cjs +3 -138
  147. package/dist/Components/NcDashboardWidgetItem.cjs.map +1 -1
  148. package/dist/Components/NcDashboardWidgetItem.mjs +2 -141
  149. package/dist/Components/NcDashboardWidgetItem.mjs.map +1 -1
  150. package/dist/Components/NcDateTime.cjs +2 -129
  151. package/dist/Components/NcDateTime.cjs.map +1 -1
  152. package/dist/Components/NcDateTime.mjs +2 -131
  153. package/dist/Components/NcDateTime.mjs.map +1 -1
  154. package/dist/Components/NcDateTimePicker.cjs +3 -283
  155. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  156. package/dist/Components/NcDateTimePicker.mjs +2 -289
  157. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  158. package/dist/Components/NcDateTimePickerNative.cjs +3 -199
  159. package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
  160. package/dist/Components/NcDateTimePickerNative.mjs +2 -200
  161. package/dist/Components/NcDateTimePickerNative.mjs.map +1 -1
  162. package/dist/Components/NcDialog.cjs +3 -172
  163. package/dist/Components/NcDialog.cjs.map +1 -1
  164. package/dist/Components/NcDialog.mjs +2 -177
  165. package/dist/Components/NcDialog.mjs.map +1 -1
  166. package/dist/Components/NcDialogButton.cjs +2 -68
  167. package/dist/Components/NcDialogButton.cjs.map +1 -1
  168. package/dist/Components/NcDialogButton.mjs +2 -72
  169. package/dist/Components/NcDialogButton.mjs.map +1 -1
  170. package/dist/Components/NcEllipsisedOption.cjs +3 -74
  171. package/dist/Components/NcEllipsisedOption.cjs.map +1 -1
  172. package/dist/Components/NcEllipsisedOption.mjs +2 -75
  173. package/dist/Components/NcEllipsisedOption.mjs.map +1 -1
  174. package/dist/Components/NcEmojiPicker.cjs +3 -176
  175. package/dist/Components/NcEmojiPicker.cjs.map +1 -1
  176. package/dist/Components/NcEmojiPicker.mjs +2 -181
  177. package/dist/Components/NcEmojiPicker.mjs.map +1 -1
  178. package/dist/Components/NcEmptyContent.cjs +3 -54
  179. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  180. package/dist/Components/NcEmptyContent.mjs +2 -54
  181. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  182. package/dist/Components/NcGuestContent.cjs +3 -26
  183. package/dist/Components/NcGuestContent.cjs.map +1 -1
  184. package/dist/Components/NcGuestContent.mjs +2 -26
  185. package/dist/Components/NcGuestContent.mjs.map +1 -1
  186. package/dist/Components/NcHeaderMenu.cjs +3 -169
  187. package/dist/Components/NcHeaderMenu.cjs.map +1 -1
  188. package/dist/Components/NcHeaderMenu.mjs +2 -172
  189. package/dist/Components/NcHeaderMenu.mjs.map +1 -1
  190. package/dist/Components/NcHighlight.cjs +2 -2
  191. package/dist/Components/NcHighlight.mjs +1 -1
  192. package/dist/Components/NcIconSvgWrapper.cjs +3 -59
  193. package/dist/Components/NcIconSvgWrapper.cjs.map +1 -1
  194. package/dist/Components/NcIconSvgWrapper.mjs +2 -61
  195. package/dist/Components/NcIconSvgWrapper.mjs.map +1 -1
  196. package/dist/Components/NcInputField.cjs +3 -221
  197. package/dist/Components/NcInputField.cjs.map +1 -1
  198. package/dist/Components/NcInputField.mjs +2 -225
  199. package/dist/Components/NcInputField.mjs.map +1 -1
  200. package/dist/Components/NcListItem.cjs +3 -242
  201. package/dist/Components/NcListItem.cjs.map +1 -1
  202. package/dist/Components/NcListItem.mjs +2 -246
  203. package/dist/Components/NcListItem.mjs.map +1 -1
  204. package/dist/Components/NcListItemIcon.cjs +3 -160
  205. package/dist/Components/NcListItemIcon.cjs.map +1 -1
  206. package/dist/Components/NcListItemIcon.mjs +2 -162
  207. package/dist/Components/NcListItemIcon.mjs.map +1 -1
  208. package/dist/Components/NcLoadingIcon.cjs +3 -54
  209. package/dist/Components/NcLoadingIcon.cjs.map +1 -1
  210. package/dist/Components/NcLoadingIcon.mjs +2 -54
  211. package/dist/Components/NcLoadingIcon.mjs.map +1 -1
  212. package/dist/Components/NcModal.cjs +327 -143
  213. package/dist/Components/NcModal.cjs.map +1 -1
  214. package/dist/Components/NcModal.mjs +338 -153
  215. package/dist/Components/NcModal.mjs.map +1 -1
  216. package/dist/Components/NcNoteCard.cjs +3 -199
  217. package/dist/Components/NcNoteCard.cjs.map +1 -1
  218. package/dist/Components/NcNoteCard.mjs +2 -200
  219. package/dist/Components/NcNoteCard.mjs.map +1 -1
  220. package/dist/Components/NcPasswordField.cjs +2 -228
  221. package/dist/Components/NcPasswordField.cjs.map +1 -1
  222. package/dist/Components/NcPasswordField.mjs +2 -236
  223. package/dist/Components/NcPasswordField.mjs.map +1 -1
  224. package/dist/Components/NcPopover.cjs +3 -125
  225. package/dist/Components/NcPopover.cjs.map +1 -1
  226. package/dist/Components/NcPopover.mjs +2 -128
  227. package/dist/Components/NcPopover.mjs.map +1 -1
  228. package/dist/Components/NcProgressBar.cjs +3 -57
  229. package/dist/Components/NcProgressBar.cjs.map +1 -1
  230. package/dist/Components/NcProgressBar.mjs +2 -57
  231. package/dist/Components/NcProgressBar.mjs.map +1 -1
  232. package/dist/Components/NcRelatedResourcesPanel.cjs +3 -203
  233. package/dist/Components/NcRelatedResourcesPanel.cjs.map +1 -1
  234. package/dist/Components/NcRelatedResourcesPanel.mjs +2 -207
  235. package/dist/Components/NcRelatedResourcesPanel.mjs.map +1 -1
  236. package/dist/Components/NcRichContenteditable.cjs +5 -512
  237. package/dist/Components/NcRichContenteditable.cjs.map +1 -1
  238. package/dist/Components/NcRichContenteditable.mjs +5 -523
  239. package/dist/Components/NcRichContenteditable.mjs.map +1 -1
  240. package/dist/Components/NcRichText.cjs +1 -1
  241. package/dist/Components/NcRichText.mjs +3 -3
  242. package/dist/Components/NcSavingIndicatorIcon.cjs +2 -58
  243. package/dist/Components/NcSavingIndicatorIcon.cjs.map +1 -1
  244. package/dist/Components/NcSavingIndicatorIcon.mjs +2 -60
  245. package/dist/Components/NcSavingIndicatorIcon.mjs.map +1 -1
  246. package/dist/Components/NcSelect.cjs +3 -435
  247. package/dist/Components/NcSelect.cjs.map +1 -1
  248. package/dist/Components/NcSelect.mjs +2 -444
  249. package/dist/Components/NcSelect.mjs.map +1 -1
  250. package/dist/Components/NcSelectTags.cjs +2 -260
  251. package/dist/Components/NcSelectTags.cjs.map +1 -1
  252. package/dist/Components/NcSelectTags.mjs +2 -265
  253. package/dist/Components/NcSelectTags.mjs.map +1 -1
  254. package/dist/Components/NcSettingsInputText.cjs +3 -91
  255. package/dist/Components/NcSettingsInputText.cjs.map +1 -1
  256. package/dist/Components/NcSettingsInputText.mjs +2 -93
  257. package/dist/Components/NcSettingsInputText.mjs.map +1 -1
  258. package/dist/Components/NcSettingsSection.cjs +3 -96
  259. package/dist/Components/NcSettingsSection.cjs.map +1 -1
  260. package/dist/Components/NcSettingsSection.mjs +2 -97
  261. package/dist/Components/NcSettingsSection.mjs.map +1 -1
  262. package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
  263. package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
  264. package/dist/Components/NcTextArea.cjs +3 -167
  265. package/dist/Components/NcTextArea.cjs.map +1 -1
  266. package/dist/Components/NcTextArea.mjs +1 -169
  267. package/dist/Components/NcTextArea.mjs.map +1 -1
  268. package/dist/Components/NcTextField.cjs +2 -139
  269. package/dist/Components/NcTextField.cjs.map +1 -1
  270. package/dist/Components/NcTextField.mjs +2 -144
  271. package/dist/Components/NcTextField.mjs.map +1 -1
  272. package/dist/Components/NcTimezonePicker.cjs +2 -7198
  273. package/dist/Components/NcTimezonePicker.cjs.map +1 -1
  274. package/dist/Components/NcTimezonePicker.mjs +2 -7203
  275. package/dist/Components/NcTimezonePicker.mjs.map +1 -1
  276. package/dist/Components/NcUserBubble.cjs +3 -193
  277. package/dist/Components/NcUserBubble.cjs.map +1 -1
  278. package/dist/Components/NcUserBubble.mjs +2 -197
  279. package/dist/Components/NcUserBubble.mjs.map +1 -1
  280. package/dist/Components/NcUserStatusIcon.cjs +3 -0
  281. package/dist/Components/NcUserStatusIcon.cjs.map +1 -0
  282. package/dist/Components/NcUserStatusIcon.mjs +4 -0
  283. package/dist/Components/NcUserStatusIcon.mjs.map +1 -0
  284. package/dist/Components/NcVNodes.cjs +5 -18
  285. package/dist/Components/NcVNodes.cjs.map +1 -1
  286. package/dist/Components/NcVNodes.mjs +5 -19
  287. package/dist/Components/NcVNodes.mjs.map +1 -1
  288. package/dist/Composables/useIsFullscreen.cjs +5 -7
  289. package/dist/Composables/useIsFullscreen.cjs.map +1 -1
  290. package/dist/Composables/useIsFullscreen.mjs +6 -8
  291. package/dist/Composables/useIsFullscreen.mjs.map +1 -1
  292. package/dist/Directives/Focus.cjs +1 -1
  293. package/dist/Directives/Focus.cjs.map +1 -1
  294. package/dist/Directives/Focus.mjs +1 -1
  295. package/dist/Directives/Focus.mjs.map +1 -1
  296. package/dist/Directives/Linkify.cjs +4 -5
  297. package/dist/Directives/Linkify.cjs.map +1 -1
  298. package/dist/Directives/Linkify.mjs +5 -6
  299. package/dist/Directives/Linkify.mjs.map +1 -1
  300. package/dist/Directives/Tooltip.cjs +1 -1
  301. package/dist/Directives/Tooltip.mjs +3 -3
  302. package/dist/Functions/a11y.cjs +25 -0
  303. package/dist/Functions/a11y.cjs.map +1 -0
  304. package/dist/Functions/a11y.mjs +25 -0
  305. package/dist/Functions/a11y.mjs.map +1 -0
  306. package/dist/Functions/emoji.cjs +6 -34
  307. package/dist/Functions/emoji.cjs.map +1 -1
  308. package/dist/Functions/emoji.mjs +5 -34
  309. package/dist/Functions/emoji.mjs.map +1 -1
  310. package/dist/Functions/usernameToColor.cjs +2 -38
  311. package/dist/Functions/usernameToColor.cjs.map +1 -1
  312. package/dist/Functions/usernameToColor.mjs +2 -39
  313. package/dist/Functions/usernameToColor.mjs.map +1 -1
  314. package/dist/Mixins/richEditor.cjs +2 -2
  315. package/dist/Mixins/richEditor.mjs +2 -2
  316. package/dist/assets/{index-7868494b.css → NcActionButton-p7spK21h.css} +17 -16
  317. package/dist/assets/{index-5fa0ac5a.css → NcActionButtonGroup-oXobVIqQ.css} +14 -0
  318. package/dist/assets/{index-e0e6bab6.css → NcActionCheckbox-T379T-FC.css} +12 -12
  319. package/dist/assets/{index-9020d9ca.css → NcActionInput-MGVmREKR.css} +67 -67
  320. package/dist/assets/{index-4ba699a1.css → NcActionLink-zdzQgwtH.css} +1 -1
  321. package/dist/assets/{index-542cf50a.css → NcActionRadio-UC-7SDBI.css} +12 -12
  322. package/dist/assets/{index-7fac55ed.css → NcActionRouter-g0zV3dVT.css} +16 -16
  323. package/dist/assets/{index-00012a4c.css → NcActionText-GJYwsw_U.css} +1 -1
  324. package/dist/assets/{index-93ad846c.css → NcActionTextEditable-DE_5Sc0w.css} +69 -69
  325. package/dist/assets/{index-b0bba2fc.css → NcActions-cEMOhd0g.css} +16 -11
  326. package/dist/assets/{index-4596132f.css → NcAppContent--D5zvLsb.css} +22 -23
  327. package/dist/assets/{index-5784183b.css → NcAppNavigation-9xEM_GAn.css} +8 -8
  328. package/dist/assets/{index-fe84a063.css → NcAppNavigationCaption-0s4Wxc88.css} +6 -5
  329. package/dist/assets/{index-d8bc189c.css → NcAppNavigationItem-V2jQd3bm.css} +45 -40
  330. package/dist/assets/{index-0ac09203.css → NcAppNavigationNew-PtSC3Wy5.css} +3 -3
  331. package/dist/assets/{index-1a317434.css → NcAppNavigationNewItem-MQBvffq9.css} +5 -0
  332. package/dist/assets/{index-f78bd735.css → NcAppNavigationSettings-Q_od5CcP.css} +13 -13
  333. package/dist/assets/{NcAppNavigationToggle-48c375e8.css → NcAppNavigationToggle-egZffUzR.css} +3 -3
  334. package/dist/assets/{index-a9999048.css → NcAppSettingsDialog-F29bz2Yx.css} +11 -11
  335. package/dist/assets/{index-1f25a3c0.css → NcAppSettingsSection-Gh575p0x.css} +3 -3
  336. package/dist/assets/{index-2d5cf6b2.css → NcAppSidebar-QQPSZPo9.css} +58 -58
  337. package/dist/assets/{index-77a548be.css → NcAppSidebarTab-goNfHK4d.css} +4 -4
  338. package/dist/assets/{index-3b654875.css → NcAvatar-qgACiUer.css} +27 -27
  339. package/dist/assets/{index-c20f9f7e.css → NcBreadcrumb-ZsIS1jDx.css} +26 -33
  340. package/dist/assets/{index-f5162bbd.css → NcBreadcrumbs-liWjT068.css} +7 -8
  341. package/dist/assets/{index-f091e784.css → NcButton-fqTN6SJK.css} +43 -43
  342. package/dist/assets/{index-7f77b8ae.css → NcCheckboxRadioSwitch-P71iLdgD.css} +50 -47
  343. package/dist/assets/{index-13720a46.css → NcColorPicker-88MDZrB0.css} +24 -24
  344. package/dist/assets/{index-a9e4fe04.css → NcContent-ZG2BJ837.css} +42 -6
  345. package/dist/assets/{index-6416f636.css → NcDashboardWidget-7x3QrWFu.css} +13 -13
  346. package/dist/assets/{index-a7fc7815.css → NcDateTimePicker-SsDztIsS.css} +57 -34
  347. package/dist/assets/{index-8b327013.css → NcDateTimePickerNative-QBosiBWA.css} +7 -7
  348. package/dist/assets/{index-86454928.css → NcDialog-9-cx1V0y.css} +13 -13
  349. package/dist/assets/{index-2a8e4ca1.css → NcEmojiPicker-KRMyqbWg.css} +37 -26
  350. package/dist/assets/{index-c239a2fc.css → NcEmptyContent-b8eqBVE_.css} +9 -9
  351. package/dist/assets/{index-8aa4712e.css → NcGuestContent-FRQFLxlW.css} +2 -2
  352. package/dist/assets/{index-aacb7cf8.css → NcHeaderMenu-j8h_puZT.css} +16 -23
  353. package/dist/assets/NcIconSvgWrapper-0OJxiD3Q.css +44 -0
  354. package/dist/assets/{NcInputConfirmCancel-45d1d76b.css → NcInputConfirmCancel-_GF_RjYc.css} +7 -7
  355. package/dist/assets/{index-2a1ec06b.css → NcInputField-42mSa1zm.css} +40 -40
  356. package/dist/assets/{index-f24e102f.css → NcListItem--i7b67QY.css} +48 -48
  357. package/dist/assets/{index-6f721577.css → NcListItemIcon-mlEQ7oK0.css} +16 -16
  358. package/dist/assets/{index-a3c23731.css → NcModal-DzsqMWSJ.css} +66 -63
  359. package/dist/assets/{index-61b63a8f.css → NcProgressBar-w4-G5gQR.css} +19 -9
  360. package/dist/assets/{index-ab715d82.css → NcRelatedResourcesPanel-i1-7CClp.css} +11 -11
  361. package/dist/assets/{index-dab51681.css → NcRichContenteditable-nUZdQSMZ.css} +25 -25
  362. package/dist/assets/{index-f9bfa317.css → NcSelect-GsLmwj9w.css} +13 -2
  363. package/dist/assets/{index-6c47e88a.css → NcSettingsInputText-JpZtS9DS.css} +5 -5
  364. package/dist/assets/{index-76a58945.css → NcSettingsSection-PEWm0eeL.css} +13 -13
  365. package/dist/assets/{NcSettingsSelectGroup-a29e2156.css → NcSettingsSelectGroup-51HMKLZQ.css} +2 -2
  366. package/dist/assets/{index-97305c1f.css → NcTextArea-6akBm4Ks.css} +23 -23
  367. package/dist/assets/{index-c221fe05.css → NcUserBubble-t1uOyYCF.css} +9 -9
  368. package/dist/assets/{index-57b305d3.css → NcUserStatusIcon-AXLspcOQ.css} +7 -10
  369. package/dist/assets/{referencePickerModal-3a127978.css → referencePickerModal-G-NTZHL1.css} +130 -103
  370. package/dist/chunks/AlertCircleOutline-Q4EgxGNm.mjs +44 -0
  371. package/dist/chunks/AlertCircleOutline-Q4EgxGNm.mjs.map +1 -0
  372. package/dist/chunks/AlertCircleOutline-aU4Cu4IM.cjs +41 -0
  373. package/dist/chunks/AlertCircleOutline-aU4Cu4IM.cjs.map +1 -0
  374. package/dist/chunks/ArrowLeft-4DZMGcXE.cjs +41 -0
  375. package/dist/chunks/ArrowLeft-4DZMGcXE.cjs.map +1 -0
  376. package/dist/chunks/ArrowLeft-LlLrrfss.mjs +44 -0
  377. package/dist/chunks/ArrowLeft-LlLrrfss.mjs.map +1 -0
  378. package/dist/chunks/ArrowRight-Fk_qtqpW.mjs +44 -0
  379. package/dist/chunks/ArrowRight-Fk_qtqpW.mjs.map +1 -0
  380. package/dist/chunks/ArrowRight-mI4Fw0h2.cjs +41 -0
  381. package/dist/chunks/ArrowRight-mI4Fw0h2.cjs.map +1 -0
  382. package/dist/chunks/Check-SlTPuUzR.cjs +41 -0
  383. package/dist/chunks/Check-SlTPuUzR.cjs.map +1 -0
  384. package/dist/chunks/Check-hentWFPd.mjs +44 -0
  385. package/dist/chunks/Check-hentWFPd.mjs.map +1 -0
  386. package/dist/chunks/ChevronDown-7w1_NWAd.cjs +41 -0
  387. package/dist/chunks/ChevronDown-7w1_NWAd.cjs.map +1 -0
  388. package/dist/chunks/ChevronDown-hP8YKVnf.mjs +44 -0
  389. package/dist/chunks/ChevronDown-hP8YKVnf.mjs.map +1 -0
  390. package/dist/chunks/ChevronRight-iDcqZ2Ih.cjs +41 -0
  391. package/dist/chunks/ChevronRight-iDcqZ2Ih.cjs.map +1 -0
  392. package/dist/chunks/ChevronRight-xEIO1OE7.mjs +44 -0
  393. package/dist/chunks/ChevronRight-xEIO1OE7.mjs.map +1 -0
  394. package/dist/chunks/Close-2nENZfbn.cjs +41 -0
  395. package/dist/chunks/Close-2nENZfbn.cjs.map +1 -0
  396. package/dist/chunks/Close-4lZze_oD.mjs +44 -0
  397. package/dist/chunks/Close-4lZze_oD.mjs.map +1 -0
  398. package/dist/chunks/DotsHorizontal-2GCivGee.mjs +44 -0
  399. package/dist/chunks/DotsHorizontal-2GCivGee.mjs.map +1 -0
  400. package/dist/chunks/DotsHorizontal-Ehuu1q0g.cjs +41 -0
  401. package/dist/chunks/DotsHorizontal-Ehuu1q0g.cjs.map +1 -0
  402. package/dist/chunks/{GenColors-5c054042.mjs → GenColors-avBT67Zu.mjs} +16 -11
  403. package/dist/chunks/GenColors-avBT67Zu.mjs.map +1 -0
  404. package/dist/chunks/{GenColors-7495e6f6.cjs → GenColors-ojnUsIA8.cjs} +23 -18
  405. package/dist/chunks/GenColors-ojnUsIA8.cjs.map +1 -0
  406. package/dist/chunks/{GenRandomId-c214d235.cjs.map → GenRandomId-ULxaMkkr.cjs.map} +1 -1
  407. package/dist/chunks/{GenRandomId-cb9ccebe.mjs.map → GenRandomId-VodkdWbp.mjs.map} +1 -1
  408. package/dist/chunks/{Linkify-39f20c9a.mjs.map → Linkify-V7PfCeZ8.mjs.map} +1 -1
  409. package/dist/chunks/{Linkify-40cdd635.cjs.map → Linkify-f3s3nAe_.cjs.map} +1 -1
  410. package/dist/chunks/NcActionButton-G4OSfyii.cjs +171 -0
  411. package/dist/chunks/NcActionButton-G4OSfyii.cjs.map +1 -0
  412. package/dist/chunks/NcActionButton-TAhaLmwa.mjs +178 -0
  413. package/dist/chunks/NcActionButton-TAhaLmwa.mjs.map +1 -0
  414. package/dist/chunks/NcActionButtonGroup-0hif9Dcf.mjs +55 -0
  415. package/dist/chunks/NcActionButtonGroup-0hif9Dcf.mjs.map +1 -0
  416. package/dist/chunks/NcActionButtonGroup-jTRjqpYM.cjs +50 -0
  417. package/dist/chunks/NcActionButtonGroup-jTRjqpYM.cjs.map +1 -0
  418. package/dist/chunks/NcActionCaption-SIz5c1sE.cjs +27 -0
  419. package/dist/chunks/NcActionCaption-SIz5c1sE.cjs.map +1 -0
  420. package/dist/chunks/NcActionCaption-vguA2tEL.mjs +31 -0
  421. package/dist/chunks/NcActionCaption-vguA2tEL.mjs.map +1 -0
  422. package/dist/chunks/NcActionCheckbox-PWAridhc.mjs +113 -0
  423. package/dist/chunks/NcActionCheckbox-PWAridhc.mjs.map +1 -0
  424. package/dist/chunks/NcActionCheckbox-Z4Wc9828.cjs +107 -0
  425. package/dist/chunks/NcActionCheckbox-Z4Wc9828.cjs.map +1 -0
  426. package/dist/chunks/NcActionInput-7-f1OPr6.mjs +346 -0
  427. package/dist/chunks/NcActionInput-7-f1OPr6.mjs.map +1 -0
  428. package/dist/chunks/NcActionInput-GuwDt73G.cjs +335 -0
  429. package/dist/chunks/NcActionInput-GuwDt73G.cjs.map +1 -0
  430. package/dist/chunks/NcActionLink-QLFtD_iF.cjs +106 -0
  431. package/dist/chunks/NcActionLink-QLFtD_iF.cjs.map +1 -0
  432. package/dist/chunks/NcActionLink-YllmwOrF.mjs +111 -0
  433. package/dist/chunks/NcActionLink-YllmwOrF.mjs.map +1 -0
  434. package/dist/chunks/NcActionRadio-1U50276u.cjs +115 -0
  435. package/dist/chunks/NcActionRadio-1U50276u.cjs.map +1 -0
  436. package/dist/chunks/NcActionRadio-DSBghCIA.mjs +121 -0
  437. package/dist/chunks/NcActionRadio-DSBghCIA.mjs.map +1 -0
  438. package/dist/chunks/NcActionRouter-Vg-BSvq7.cjs +70 -0
  439. package/dist/chunks/NcActionRouter-Vg-BSvq7.cjs.map +1 -0
  440. package/dist/chunks/NcActionRouter-vBYCxyc1.mjs +75 -0
  441. package/dist/chunks/NcActionRouter-vBYCxyc1.mjs.map +1 -0
  442. package/dist/chunks/NcActionSeparator-0-kc3NRC.mjs +16 -0
  443. package/dist/chunks/NcActionSeparator-0-kc3NRC.mjs.map +1 -0
  444. package/dist/chunks/NcActionSeparator-craHv8oO.cjs +12 -0
  445. package/dist/chunks/NcActionSeparator-craHv8oO.cjs.map +1 -0
  446. package/dist/chunks/NcActionText-aWTbDRVH.cjs +52 -0
  447. package/dist/chunks/NcActionText-aWTbDRVH.cjs.map +1 -0
  448. package/dist/chunks/NcActionText-p3Ew3r1G.mjs +57 -0
  449. package/dist/chunks/NcActionText-p3Ew3r1G.mjs.map +1 -0
  450. package/dist/chunks/NcActionTextEditable-PAn8Dpv4.mjs +121 -0
  451. package/dist/chunks/NcActionTextEditable-PAn8Dpv4.mjs.map +1 -0
  452. package/dist/chunks/NcActionTextEditable-RUh3BjpU.cjs +114 -0
  453. package/dist/chunks/NcActionTextEditable-RUh3BjpU.cjs.map +1 -0
  454. package/dist/chunks/NcActions-6Yv0De7D.mjs +451 -0
  455. package/dist/chunks/NcActions-6Yv0De7D.mjs.map +1 -0
  456. package/dist/chunks/NcActions-VJy75Dj8.cjs +443 -0
  457. package/dist/chunks/NcActions-VJy75Dj8.cjs.map +1 -0
  458. package/dist/chunks/NcAppContent-khCUrgDu.cjs +264 -0
  459. package/dist/chunks/NcAppContent-khCUrgDu.cjs.map +1 -0
  460. package/dist/chunks/NcAppContent-rV1EGzGY.mjs +275 -0
  461. package/dist/chunks/NcAppContent-rV1EGzGY.mjs.map +1 -0
  462. package/dist/chunks/NcAppContentDetails-BhbsNp93.cjs +11 -0
  463. package/dist/chunks/NcAppContentDetails-BhbsNp93.cjs.map +1 -0
  464. package/dist/chunks/NcAppContentDetails-bD9j5H59.mjs +14 -0
  465. package/dist/chunks/NcAppContentDetails-bD9j5H59.mjs.map +1 -0
  466. package/dist/chunks/NcAppContentList-_kO9F-p0.mjs +26 -0
  467. package/dist/chunks/NcAppContentList-_kO9F-p0.mjs.map +1 -0
  468. package/dist/chunks/NcAppContentList-blRtleBI.cjs +23 -0
  469. package/dist/chunks/NcAppContentList-blRtleBI.cjs.map +1 -0
  470. package/dist/chunks/NcAppNavigation-qnc3o3YP.cjs +125 -0
  471. package/dist/chunks/NcAppNavigation-qnc3o3YP.cjs.map +1 -0
  472. package/dist/chunks/NcAppNavigation-wvBM1j2_.mjs +134 -0
  473. package/dist/chunks/NcAppNavigation-wvBM1j2_.mjs.map +1 -0
  474. package/dist/chunks/NcAppNavigationCaption-6SpoIhcW.cjs +42 -0
  475. package/dist/chunks/NcAppNavigationCaption-6SpoIhcW.cjs.map +1 -0
  476. package/dist/chunks/NcAppNavigationCaption-wnBg9gYq.mjs +47 -0
  477. package/dist/chunks/NcAppNavigationCaption-wnBg9gYq.mjs.map +1 -0
  478. package/dist/chunks/NcAppNavigationIconBullet-GLCjMfFF.cjs +36 -0
  479. package/dist/chunks/NcAppNavigationIconBullet-GLCjMfFF.cjs.map +1 -0
  480. package/dist/chunks/NcAppNavigationIconBullet-OqquWWY6.mjs +40 -0
  481. package/dist/chunks/NcAppNavigationIconBullet-OqquWWY6.mjs.map +1 -0
  482. package/dist/chunks/NcAppNavigationItem-6kzsp9I8.cjs +595 -0
  483. package/dist/chunks/NcAppNavigationItem-6kzsp9I8.cjs.map +1 -0
  484. package/dist/chunks/NcAppNavigationItem-VR6oSt2q.mjs +608 -0
  485. package/dist/chunks/NcAppNavigationItem-VR6oSt2q.mjs.map +1 -0
  486. package/dist/chunks/NcAppNavigationNew-AamR4VD3.mjs +56 -0
  487. package/dist/chunks/NcAppNavigationNew-AamR4VD3.mjs.map +1 -0
  488. package/dist/chunks/NcAppNavigationNew-ae4GCKxx.cjs +51 -0
  489. package/dist/chunks/NcAppNavigationNew-ae4GCKxx.cjs.map +1 -0
  490. package/dist/chunks/NcAppNavigationNewItem-sZ0DdaXr.cjs +106 -0
  491. package/dist/chunks/NcAppNavigationNewItem-sZ0DdaXr.cjs.map +1 -0
  492. package/dist/chunks/NcAppNavigationNewItem-tSH06MX2.mjs +112 -0
  493. package/dist/chunks/NcAppNavigationNewItem-tSH06MX2.mjs.map +1 -0
  494. package/dist/chunks/NcAppNavigationSettings-giVx2sHN.mjs +131 -0
  495. package/dist/chunks/NcAppNavigationSettings-giVx2sHN.mjs.map +1 -0
  496. package/dist/chunks/NcAppNavigationSettings-mYqB3vRb.cjs +128 -0
  497. package/dist/chunks/NcAppNavigationSettings-mYqB3vRb.cjs.map +1 -0
  498. package/dist/chunks/NcAppNavigationSpacer-FIQIP65d.cjs +9 -0
  499. package/dist/chunks/NcAppNavigationSpacer-FIQIP65d.cjs.map +1 -0
  500. package/dist/chunks/NcAppNavigationSpacer-gzdnlvnT.mjs +13 -0
  501. package/dist/chunks/NcAppNavigationSpacer-gzdnlvnT.mjs.map +1 -0
  502. package/dist/chunks/NcAppNavigationToggle-DBCPaseG.mjs +136 -0
  503. package/dist/chunks/{NcAppNavigationToggle-6d192bea.cjs.map → NcAppNavigationToggle-DBCPaseG.mjs.map} +1 -1
  504. package/dist/chunks/NcAppNavigationToggle-cRUPsHZH.cjs +131 -0
  505. package/dist/chunks/{NcAppNavigationToggle-0bc638a8.mjs.map → NcAppNavigationToggle-cRUPsHZH.cjs.map} +1 -1
  506. package/dist/chunks/NcAppSettingsDialog-90cJBaTf.mjs +212 -0
  507. package/dist/chunks/NcAppSettingsDialog-90cJBaTf.mjs.map +1 -0
  508. package/dist/chunks/NcAppSettingsDialog-WvDTWMwC.cjs +204 -0
  509. package/dist/chunks/NcAppSettingsDialog-WvDTWMwC.cjs.map +1 -0
  510. package/dist/chunks/NcAppSettingsSection-WcupJObJ.mjs +55 -0
  511. package/dist/chunks/NcAppSettingsSection-WcupJObJ.mjs.map +1 -0
  512. package/dist/chunks/NcAppSettingsSection-wLClE1lO.cjs +51 -0
  513. package/dist/chunks/NcAppSettingsSection-wLClE1lO.cjs.map +1 -0
  514. package/dist/chunks/NcAppSidebar-19vWkj82.cjs +706 -0
  515. package/dist/chunks/NcAppSidebar-19vWkj82.cjs.map +1 -0
  516. package/dist/chunks/NcAppSidebar-yjd-HiUO.mjs +725 -0
  517. package/dist/chunks/NcAppSidebar-yjd-HiUO.mjs.map +1 -0
  518. package/dist/chunks/NcAppSidebarTab--7BkDK9T.mjs +87 -0
  519. package/dist/chunks/NcAppSidebarTab--7BkDK9T.mjs.map +1 -0
  520. package/dist/chunks/NcAppSidebarTab-BeWt8Sdt.cjs +83 -0
  521. package/dist/chunks/NcAppSidebarTab-BeWt8Sdt.cjs.map +1 -0
  522. package/dist/chunks/NcAvatar-1MXwkOA2.cjs +516 -0
  523. package/dist/chunks/NcAvatar-1MXwkOA2.cjs.map +1 -0
  524. package/dist/chunks/NcAvatar-paLjF9Tc.mjs +532 -0
  525. package/dist/chunks/NcAvatar-paLjF9Tc.mjs.map +1 -0
  526. package/dist/chunks/NcBreadcrumb-X45pwcLq.cjs +208 -0
  527. package/dist/chunks/NcBreadcrumb-X45pwcLq.cjs.map +1 -0
  528. package/dist/chunks/NcBreadcrumb-gB_hnDG_.mjs +216 -0
  529. package/dist/chunks/NcBreadcrumb-gB_hnDG_.mjs.map +1 -0
  530. package/dist/chunks/NcBreadcrumbs-N7-Jj_ry.mjs +377 -0
  531. package/dist/chunks/NcBreadcrumbs-N7-Jj_ry.mjs.map +1 -0
  532. package/dist/chunks/NcBreadcrumbs-Y8LRE6xz.cjs +365 -0
  533. package/dist/chunks/NcBreadcrumbs-Y8LRE6xz.cjs.map +1 -0
  534. package/dist/chunks/NcButton-Uxh-oARg.cjs +245 -0
  535. package/dist/chunks/NcButton-Uxh-oARg.cjs.map +1 -0
  536. package/dist/chunks/NcButton-nCkJxwsi.mjs +248 -0
  537. package/dist/chunks/NcButton-nCkJxwsi.mjs.map +1 -0
  538. package/dist/chunks/NcCheckboxRadioSwitch-Hi5ocuhB.cjs +696 -0
  539. package/dist/chunks/NcCheckboxRadioSwitch-Hi5ocuhB.cjs.map +1 -0
  540. package/dist/chunks/NcCheckboxRadioSwitch-RgFq8ZUL.mjs +701 -0
  541. package/dist/chunks/NcCheckboxRadioSwitch-RgFq8ZUL.mjs.map +1 -0
  542. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-RYt-H2PA.cjs +3 -0
  543. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-RYt-H2PA.cjs.map +1 -0
  544. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-kB-352LR.mjs +3 -0
  545. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_c3135eb8_lang-kB-352LR.mjs.map +1 -0
  546. package/dist/chunks/NcColorPicker-hS0KYrLP.mjs +247 -0
  547. package/dist/chunks/NcColorPicker-hS0KYrLP.mjs.map +1 -0
  548. package/dist/chunks/NcColorPicker-rE3Dd7s7.cjs +235 -0
  549. package/dist/chunks/NcColorPicker-rE3Dd7s7.cjs.map +1 -0
  550. package/dist/chunks/NcContent-CUWR0V-w.mjs +156 -0
  551. package/dist/chunks/NcContent-CUWR0V-w.mjs.map +1 -0
  552. package/dist/chunks/NcContent-fGj1oSM5.cjs +148 -0
  553. package/dist/chunks/NcContent-fGj1oSM5.cjs.map +1 -0
  554. package/dist/chunks/NcCounterBubble-0pCAxQl7.cjs +40 -0
  555. package/dist/chunks/NcCounterBubble-0pCAxQl7.cjs.map +1 -0
  556. package/dist/chunks/NcCounterBubble-w6SmwTWu.mjs +44 -0
  557. package/dist/chunks/NcCounterBubble-w6SmwTWu.mjs.map +1 -0
  558. package/dist/chunks/NcDashboardWidget-DC4_9Yv_.mjs +169 -0
  559. package/dist/chunks/NcDashboardWidget-DC4_9Yv_.mjs.map +1 -0
  560. package/dist/chunks/NcDashboardWidget-fnhMGIb6.cjs +161 -0
  561. package/dist/chunks/NcDashboardWidget-fnhMGIb6.cjs.map +1 -0
  562. package/dist/chunks/NcDashboardWidgetItem-0jGJ_5Nx.cjs +177 -0
  563. package/dist/chunks/NcDashboardWidgetItem-0jGJ_5Nx.cjs.map +1 -0
  564. package/dist/chunks/NcDashboardWidgetItem-TD0N9xlv.mjs +184 -0
  565. package/dist/chunks/NcDashboardWidgetItem-TD0N9xlv.mjs.map +1 -0
  566. package/dist/chunks/NcDateTime-EnQV6T52.mjs +140 -0
  567. package/dist/chunks/NcDateTime-EnQV6T52.mjs.map +1 -0
  568. package/dist/chunks/NcDateTime-m_WZoAvd.cjs +136 -0
  569. package/dist/chunks/NcDateTime-m_WZoAvd.cjs.map +1 -0
  570. package/dist/chunks/NcDateTimePicker-4edYzlVf.cjs +326 -0
  571. package/dist/chunks/NcDateTimePicker-4edYzlVf.cjs.map +1 -0
  572. package/dist/chunks/NcDateTimePicker-GHt3kJ7B.mjs +336 -0
  573. package/dist/chunks/NcDateTimePicker-GHt3kJ7B.mjs.map +1 -0
  574. package/dist/chunks/NcDateTimePickerNative-m30hv5MT.cjs +176 -0
  575. package/dist/chunks/NcDateTimePickerNative-m30hv5MT.cjs.map +1 -0
  576. package/dist/chunks/NcDateTimePickerNative-nDQjZSiZ.mjs +181 -0
  577. package/dist/chunks/NcDateTimePickerNative-nDQjZSiZ.mjs.map +1 -0
  578. package/dist/chunks/NcDialog-eZWcoYL9.mjs +243 -0
  579. package/dist/chunks/NcDialog-eZWcoYL9.mjs.map +1 -0
  580. package/dist/chunks/NcDialog-qsI2VY8S.cjs +235 -0
  581. package/dist/chunks/NcDialog-qsI2VY8S.cjs.map +1 -0
  582. package/dist/chunks/NcDialogButton-Dou0EAc_.cjs +72 -0
  583. package/dist/chunks/NcDialogButton-Dou0EAc_.cjs.map +1 -0
  584. package/dist/chunks/NcDialogButton-R-zAILHz.mjs +77 -0
  585. package/dist/chunks/NcDialogButton-R-zAILHz.mjs.map +1 -0
  586. package/dist/chunks/NcEllipsisedOption-FGgPyI_T.mjs +86 -0
  587. package/dist/chunks/NcEllipsisedOption-FGgPyI_T.mjs.map +1 -0
  588. package/dist/chunks/NcEllipsisedOption-eFqGdcUE.cjs +81 -0
  589. package/dist/chunks/NcEllipsisedOption-eFqGdcUE.cjs.map +1 -0
  590. package/dist/chunks/NcEmojiPicker-84m02Stk.mjs +336 -0
  591. package/dist/chunks/NcEmojiPicker-84m02Stk.mjs.map +1 -0
  592. package/dist/chunks/NcEmojiPicker-hxiKGEHb.cjs +323 -0
  593. package/dist/chunks/NcEmojiPicker-hxiKGEHb.cjs.map +1 -0
  594. package/dist/chunks/NcEmptyContent-Dvt4jhjb.mjs +62 -0
  595. package/dist/chunks/NcEmptyContent-Dvt4jhjb.mjs.map +1 -0
  596. package/dist/chunks/NcEmptyContent-M3ClqFZe.cjs +58 -0
  597. package/dist/chunks/NcEmptyContent-M3ClqFZe.cjs.map +1 -0
  598. package/dist/chunks/NcGuestContent-8HpHaN1K.mjs +21 -0
  599. package/dist/chunks/NcGuestContent-8HpHaN1K.mjs.map +1 -0
  600. package/dist/chunks/NcGuestContent-vbt8h0nE.cjs +17 -0
  601. package/dist/chunks/NcGuestContent-vbt8h0nE.cjs.map +1 -0
  602. package/dist/chunks/NcHeaderMenu-Eo6rZDeL.cjs +216 -0
  603. package/dist/chunks/NcHeaderMenu-Eo6rZDeL.cjs.map +1 -0
  604. package/dist/chunks/NcHeaderMenu-yJJ4FWin.mjs +223 -0
  605. package/dist/chunks/NcHeaderMenu-yJJ4FWin.mjs.map +1 -0
  606. package/dist/chunks/{index-e894376a.cjs → NcHighlight-cBMxLCnf.cjs} +33 -45
  607. package/dist/chunks/NcHighlight-cBMxLCnf.cjs.map +1 -0
  608. package/dist/chunks/{index-20a9ace9.mjs → NcHighlight-kWLldgWB.mjs} +32 -44
  609. package/dist/chunks/NcHighlight-kWLldgWB.mjs.map +1 -0
  610. package/dist/chunks/NcIconSvgWrapper-gQnsseD2.mjs +82 -0
  611. package/dist/chunks/NcIconSvgWrapper-gQnsseD2.mjs.map +1 -0
  612. package/dist/chunks/NcIconSvgWrapper-rDMSblV4.cjs +77 -0
  613. package/dist/chunks/NcIconSvgWrapper-rDMSblV4.cjs.map +1 -0
  614. package/dist/chunks/NcInputConfirmCancel-3c-uWUuw.cjs +105 -0
  615. package/dist/chunks/{NcInputConfirmCancel-b99898db.cjs.map → NcInputConfirmCancel-3c-uWUuw.cjs.map} +1 -1
  616. package/dist/chunks/NcInputConfirmCancel-cDJ5_L-Z.mjs +112 -0
  617. package/dist/chunks/{NcInputConfirmCancel-a08c5cb4.mjs.map → NcInputConfirmCancel-cDJ5_L-Z.mjs.map} +1 -1
  618. package/dist/chunks/NcInputField-9PAE2ONE.mjs +291 -0
  619. package/dist/chunks/NcInputField-9PAE2ONE.mjs.map +1 -0
  620. package/dist/chunks/NcInputField-dP-QARJo.cjs +283 -0
  621. package/dist/chunks/NcInputField-dP-QARJo.cjs.map +1 -0
  622. package/dist/chunks/NcListItem-gdczIybY.mjs +344 -0
  623. package/dist/chunks/NcListItem-gdczIybY.mjs.map +1 -0
  624. package/dist/chunks/NcListItem-iWTR4IZZ.cjs +337 -0
  625. package/dist/chunks/NcListItem-iWTR4IZZ.cjs.map +1 -0
  626. package/dist/chunks/NcListItemIcon-FeNwaJy4.cjs +188 -0
  627. package/dist/chunks/NcListItemIcon-FeNwaJy4.cjs.map +1 -0
  628. package/dist/chunks/NcListItemIcon-XsKTtITp.mjs +192 -0
  629. package/dist/chunks/NcListItemIcon-XsKTtITp.mjs.map +1 -0
  630. package/dist/chunks/NcLoadingIcon-DnhhU7Z8.mjs +68 -0
  631. package/dist/chunks/NcLoadingIcon-DnhhU7Z8.mjs.map +1 -0
  632. package/dist/chunks/NcLoadingIcon-Fwid-wWE.cjs +64 -0
  633. package/dist/chunks/NcLoadingIcon-Fwid-wWE.cjs.map +1 -0
  634. package/dist/chunks/NcNoteCard-IAgTi5HW.cjs +224 -0
  635. package/dist/chunks/NcNoteCard-IAgTi5HW.cjs.map +1 -0
  636. package/dist/chunks/NcNoteCard-joOYqjyF.mjs +228 -0
  637. package/dist/chunks/NcNoteCard-joOYqjyF.mjs.map +1 -0
  638. package/dist/chunks/NcPasswordField-8NI5u7lk.mjs +265 -0
  639. package/dist/chunks/NcPasswordField-8NI5u7lk.mjs.map +1 -0
  640. package/dist/chunks/NcPasswordField-QA6kIMu2.cjs +255 -0
  641. package/dist/chunks/NcPasswordField-QA6kIMu2.cjs.map +1 -0
  642. package/dist/chunks/NcPopover-HwP68PjO.mjs +224 -0
  643. package/dist/chunks/NcPopover-HwP68PjO.mjs.map +1 -0
  644. package/dist/chunks/NcPopover-sVfBFdPh.cjs +217 -0
  645. package/dist/chunks/NcPopover-sVfBFdPh.cjs.map +1 -0
  646. package/dist/chunks/NcProgressBar-3p3Phbcw.cjs +123 -0
  647. package/dist/chunks/NcProgressBar-3p3Phbcw.cjs.map +1 -0
  648. package/dist/chunks/NcProgressBar-KvtCwl-0.mjs +127 -0
  649. package/dist/chunks/NcProgressBar-KvtCwl-0.mjs.map +1 -0
  650. package/dist/chunks/NcRelatedResourcesPanel--UoHihRf.mjs +216 -0
  651. package/dist/chunks/NcRelatedResourcesPanel--UoHihRf.mjs.map +1 -0
  652. package/dist/chunks/NcRelatedResourcesPanel-oTY2g2gt.cjs +209 -0
  653. package/dist/chunks/NcRelatedResourcesPanel-oTY2g2gt.cjs.map +1 -0
  654. package/dist/chunks/NcRichContenteditable-0x4AmYZf.cjs +528 -0
  655. package/dist/chunks/NcRichContenteditable-0x4AmYZf.cjs.map +1 -0
  656. package/dist/chunks/NcRichContenteditable-rSquEMs2.mjs +540 -0
  657. package/dist/chunks/NcRichContenteditable-rSquEMs2.mjs.map +1 -0
  658. package/dist/chunks/NcRichText-S8FLpGCe.cjs +319 -0
  659. package/dist/chunks/NcRichText-S8FLpGCe.cjs.map +1 -0
  660. package/dist/chunks/NcRichText-_MNRVaQB.mjs +336 -0
  661. package/dist/chunks/NcRichText-_MNRVaQB.mjs.map +1 -0
  662. package/dist/chunks/NcSavingIndicatorIcon-IpOVvSwW.cjs +71 -0
  663. package/dist/chunks/NcSavingIndicatorIcon-IpOVvSwW.cjs.map +1 -0
  664. package/dist/chunks/NcSavingIndicatorIcon-QRgqeOd3.mjs +74 -0
  665. package/dist/chunks/NcSavingIndicatorIcon-QRgqeOd3.mjs.map +1 -0
  666. package/dist/chunks/NcSelect-9cM-OGdn.cjs +498 -0
  667. package/dist/chunks/NcSelect-9cM-OGdn.cjs.map +1 -0
  668. package/dist/chunks/NcSelect-w_Gt1U72.mjs +510 -0
  669. package/dist/chunks/NcSelect-w_Gt1U72.mjs.map +1 -0
  670. package/dist/chunks/NcSelectTags-6F9oTRUw.mjs +272 -0
  671. package/dist/chunks/NcSelectTags-6F9oTRUw.mjs.map +1 -0
  672. package/dist/chunks/NcSelectTags-vm5Fx2H5.cjs +265 -0
  673. package/dist/chunks/NcSelectTags-vm5Fx2H5.cjs.map +1 -0
  674. package/dist/chunks/NcSettingsInputText-KTYvd9zc.mjs +113 -0
  675. package/dist/chunks/NcSettingsInputText-KTYvd9zc.mjs.map +1 -0
  676. package/dist/chunks/NcSettingsInputText-wY_R_c6S.cjs +108 -0
  677. package/dist/chunks/NcSettingsInputText-wY_R_c6S.cjs.map +1 -0
  678. package/dist/chunks/NcSettingsSection-2TP0NQPH.cjs +114 -0
  679. package/dist/chunks/NcSettingsSection-2TP0NQPH.cjs.map +1 -0
  680. package/dist/chunks/NcSettingsSection-dEPaFL2w.mjs +118 -0
  681. package/dist/chunks/NcSettingsSection-dEPaFL2w.mjs.map +1 -0
  682. package/dist/chunks/{NcSettingsSelectGroup-ecc8bc5a.mjs → NcSettingsSelectGroup-JfvkEnNr.mjs} +75 -59
  683. package/dist/chunks/NcSettingsSelectGroup-JfvkEnNr.mjs.map +1 -0
  684. package/dist/chunks/NcSettingsSelectGroup-p8cgn6pv.cjs +199 -0
  685. package/dist/chunks/NcSettingsSelectGroup-p8cgn6pv.cjs.map +1 -0
  686. package/dist/chunks/NcTextArea-dRgNOiSU.mjs +203 -0
  687. package/dist/chunks/NcTextArea-dRgNOiSU.mjs.map +1 -0
  688. package/dist/chunks/NcTextArea-hNPj4rEs.cjs +196 -0
  689. package/dist/chunks/NcTextArea-hNPj4rEs.cjs.map +1 -0
  690. package/dist/chunks/NcTextField-avDV7Ry_.mjs +165 -0
  691. package/dist/chunks/NcTextField-avDV7Ry_.mjs.map +1 -0
  692. package/dist/chunks/NcTextField-bz_keSKF.cjs +158 -0
  693. package/dist/chunks/NcTextField-bz_keSKF.cjs.map +1 -0
  694. package/dist/chunks/NcTimezonePicker-YNWJXRnl.cjs +7202 -0
  695. package/dist/chunks/NcTimezonePicker-YNWJXRnl.cjs.map +1 -0
  696. package/dist/chunks/NcTimezonePicker-wLjOcbbU.mjs +7209 -0
  697. package/dist/chunks/NcTimezonePicker-wLjOcbbU.mjs.map +1 -0
  698. package/dist/chunks/NcUserBubble-epl-RDQa.cjs +198 -0
  699. package/dist/chunks/NcUserBubble-epl-RDQa.cjs.map +1 -0
  700. package/dist/chunks/NcUserBubble-fA1TQtnx.mjs +204 -0
  701. package/dist/chunks/NcUserBubble-fA1TQtnx.mjs.map +1 -0
  702. package/dist/chunks/NcUserStatusIcon--z2VUZIt.mjs +171 -0
  703. package/dist/chunks/NcUserStatusIcon--z2VUZIt.mjs.map +1 -0
  704. package/dist/chunks/NcUserStatusIcon-swCHU0tl.cjs +163 -0
  705. package/dist/chunks/NcUserStatusIcon-swCHU0tl.cjs.map +1 -0
  706. package/dist/chunks/{ScopeComponent-06c558d3.cjs → ScopeComponent-4ppIHwI4.cjs} +3 -5
  707. package/dist/chunks/{ScopeComponent-06c558d3.cjs.map → ScopeComponent-4ppIHwI4.cjs.map} +1 -1
  708. package/dist/chunks/{ScopeComponent-b039a43c.mjs → ScopeComponent-KbEZrKGJ.mjs} +4 -6
  709. package/dist/chunks/{ScopeComponent-b039a43c.mjs.map → ScopeComponent-KbEZrKGJ.mjs.map} +1 -1
  710. package/dist/chunks/_l10n-JmazR_zZ.mjs +66 -0
  711. package/dist/chunks/_l10n-JmazR_zZ.mjs.map +1 -0
  712. package/dist/chunks/_l10n-wK0o0jNS.cjs +64 -0
  713. package/dist/chunks/_l10n-wK0o0jNS.cjs.map +1 -0
  714. package/dist/chunks/_plugin-vue_export-helper-hUChTQA_.mjs +9 -0
  715. package/dist/chunks/_plugin-vue_export-helper-hUChTQA_.mjs.map +1 -0
  716. package/dist/chunks/_plugin-vue_export-helper-xG2iG1wl.cjs +8 -0
  717. package/dist/chunks/_plugin-vue_export-helper-xG2iG1wl.cjs.map +1 -0
  718. package/dist/chunks/{actionGlobal-8c1c28c9.mjs → actionGlobal-1onxXJwM.mjs} +3 -7
  719. package/dist/chunks/actionGlobal-1onxXJwM.mjs.map +1 -0
  720. package/dist/chunks/{actionGlobal-9e29e11b.cjs → actionGlobal-kyAHPMcH.cjs} +3 -7
  721. package/dist/chunks/actionGlobal-kyAHPMcH.cjs.map +1 -0
  722. package/dist/chunks/{actionText-123f26b0.mjs → actionText-IqPIFk1D.mjs} +6 -2
  723. package/dist/chunks/{actionText-e450809c.cjs.map → actionText-IqPIFk1D.mjs.map} +1 -1
  724. package/dist/chunks/{actionText-e450809c.cjs → actionText-WQ07UNmt.cjs} +6 -2
  725. package/dist/chunks/{actionText-123f26b0.mjs.map → actionText-WQ07UNmt.cjs.map} +1 -1
  726. package/dist/chunks/emoji-mJIuLpNR.cjs +58 -0
  727. package/dist/chunks/emoji-mJIuLpNR.cjs.map +1 -0
  728. package/dist/chunks/emoji-tllD0Rvt.mjs +61 -0
  729. package/dist/chunks/emoji-tllD0Rvt.mjs.map +1 -0
  730. package/dist/chunks/{focusTrap-5d0f71d4.mjs.map → focusTrap-Py2bQ9-r.mjs.map} +1 -1
  731. package/dist/chunks/{focusTrap-14985831.cjs.map → focusTrap-n3H52LOw.cjs.map} +1 -1
  732. package/dist/chunks/index-NP8hZQhr.cjs +161 -0
  733. package/dist/chunks/index-NP8hZQhr.cjs.map +1 -0
  734. package/dist/chunks/{index-5f2a5f57.mjs → index-hX7KRzaJ.mjs} +53 -41
  735. package/dist/chunks/index-hX7KRzaJ.mjs.map +1 -0
  736. package/dist/chunks/{logger-3612e664.mjs.map → logger-3m1eQsSo.mjs.map} +1 -1
  737. package/dist/chunks/{logger-4998b668.cjs.map → logger-G6OKp5ly.cjs.map} +1 -1
  738. package/dist/chunks/referencePickerModal-9sd4Ftja.mjs +1114 -0
  739. package/dist/chunks/referencePickerModal-9sd4Ftja.mjs.map +1 -0
  740. package/dist/chunks/referencePickerModal-gCkuVbeM.cjs +1096 -0
  741. package/dist/chunks/referencePickerModal-gCkuVbeM.cjs.map +1 -0
  742. package/dist/chunks/usernameToColor--FE9Dq8h.cjs +39 -0
  743. package/dist/chunks/usernameToColor--FE9Dq8h.cjs.map +1 -0
  744. package/dist/chunks/usernameToColor-t95If_mB.mjs +41 -0
  745. package/dist/chunks/usernameToColor-t95If_mB.mjs.map +1 -0
  746. package/dist/cypress/component/NcButton.cy.d.ts +1 -0
  747. package/dist/cypress/component/NcSelect.cy.d.ts +1 -0
  748. package/dist/cypress/component/modal.cy.d.ts +1 -0
  749. package/dist/cypress/component/richtext.cy.d.ts +1 -0
  750. package/dist/cypress/support/commands.d.ts +1 -0
  751. package/dist/cypress/support/component.d.ts +8 -0
  752. package/dist/cypress/visual/AppNavigationItem.cy.d.ts +1 -0
  753. package/dist/cypress.config.d.ts +3 -0
  754. package/dist/index.cjs +176 -195
  755. package/dist/index.cjs.map +1 -1
  756. package/dist/index.mjs +196 -214
  757. package/dist/index.mjs.map +1 -1
  758. package/dist/src/components/NcActionButton/NcActionButton.vue.d.ts +202 -0
  759. package/dist/src/components/NcActionButtonGroup/NcActionButtonGroup.vue.d.ts +26 -0
  760. package/dist/src/components/NcActionCaption/NcActionCaption.vue.d.ts +18 -0
  761. package/dist/src/components/NcActionCheckbox/NcActionCheckbox.vue.d.ts +99 -0
  762. package/dist/src/components/NcActionInput/NcActionInput.vue.d.ts +261 -0
  763. package/dist/src/components/NcActionLink/NcActionLink.vue.d.ts +2 -0
  764. package/dist/src/components/NcActionRadio/NcActionRadio.vue.d.ts +115 -0
  765. package/dist/src/components/NcActionRouter/NcActionRouter.vue.d.ts +68 -0
  766. package/dist/src/components/NcActionSeparator/NcActionSeparator.vue.d.ts +2 -0
  767. package/dist/src/components/NcActionText/NcActionText.vue.d.ts +48 -0
  768. package/dist/src/components/NcActionTextEditable/NcActionTextEditable.vue.d.ts +113 -0
  769. package/dist/src/components/NcActions/NcActions.vue.d.ts +321 -0
  770. package/dist/src/components/NcAppContent/NcAppContent.vue.d.ts +162 -0
  771. package/dist/src/components/NcAppContent/NcAppDetailsToggle.vue.d.ts +6 -0
  772. package/dist/src/components/NcAppContentDetails/NcAppContentDetails.vue.d.ts +2 -0
  773. package/dist/src/components/NcAppContentList/NcAppContentList.vue.d.ts +23 -0
  774. package/dist/src/components/NcAppNavigation/NcAppNavigation.vue.d.ts +55 -0
  775. package/dist/src/components/NcAppNavigationCaption/NcAppNavigationCaption.vue.d.ts +20 -0
  776. package/dist/src/components/NcAppNavigationIconBullet/NcAppNavigationIconBullet.vue.d.ts +20 -0
  777. package/dist/src/components/NcAppNavigationItem/NcAppNavigationIconCollapsible.vue.d.ts +20 -0
  778. package/dist/src/components/NcAppNavigationItem/NcAppNavigationItem.vue.d.ts +413 -0
  779. package/dist/src/components/NcAppNavigationItem/NcInputConfirmCancel.vue.d.ts +54 -0
  780. package/dist/src/components/NcAppNavigationNew/NcAppNavigationNew.vue.d.ts +48 -0
  781. package/dist/src/components/NcAppNavigationNewItem/NcAppNavigationNewItem.vue.d.ts +92 -0
  782. package/dist/src/components/NcAppNavigationSettings/NcAppNavigationSettings.vue.d.ts +37 -0
  783. package/dist/src/components/NcAppNavigationSpacer/NcAppNavigationSpacer.vue.d.ts +2 -0
  784. package/dist/src/components/NcAppNavigationToggle/NcAppNavigationToggle.vue.d.ts +18 -0
  785. package/dist/src/components/NcAppSettingsSection/NcAppSettingsSection.vue.d.ts +24 -0
  786. package/dist/src/components/NcAppSidebar/NcAppSidebar.vue.d.ts +287 -0
  787. package/dist/src/components/NcAppSidebar/NcAppSidebarTabs.vue.d.ts +91 -0
  788. package/dist/src/components/NcAppSidebarTab/NcAppSidebarTab.vue.d.ts +75 -0
  789. package/dist/src/components/NcAvatar/NcAvatar.vue.d.ts +348 -0
  790. package/dist/src/components/NcBreadcrumb/NcBreadcrumb.vue.d.ts +197 -0
  791. package/dist/src/components/NcBreadcrumbs/NcBreadcrumbs.vue.d.ts +145 -0
  792. package/dist/src/components/NcButton/NcButton.vue.d.ts +236 -0
  793. package/dist/src/components/NcButton/index.d.ts +22 -0
  794. package/dist/src/components/NcCheckboxRadioSwitch/NcCheckboxContent.vue.d.ts +6 -0
  795. package/dist/src/components/NcCheckboxRadioSwitch/NcCheckboxRadioSwitch.vue.d.ts +2 -0
  796. package/dist/src/components/NcColorPicker/NcColorPicker.vue.d.ts +2 -0
  797. package/dist/src/components/NcContent/NcContent.vue.d.ts +23 -0
  798. package/dist/src/components/NcCounterBubble/NcCounterBubble.vue.d.ts +41 -0
  799. package/dist/src/components/NcDashboardWidget/NcDashboardWidget.vue.d.ts +142 -0
  800. package/dist/src/components/NcDashboardWidgetItem/NcDashboardWidgetItem.vue.d.ts +170 -0
  801. package/dist/src/components/NcDateTime/NcDateTime.vue.d.ts +2 -0
  802. package/dist/src/components/NcDateTimePicker/NcDateTimePicker.vue.d.ts +2 -0
  803. package/dist/src/components/NcDateTimePickerNative/NcDateTimePickerNative.vue.d.ts +2 -0
  804. package/dist/src/components/NcDialog/NcDialog.vue.d.ts +2 -0
  805. package/dist/src/components/NcDialogButton/NcDialogButton.vue.d.ts +2 -0
  806. package/dist/src/components/NcEllipsisedOption/NcEllipsisedOption.vue.d.ts +48 -0
  807. package/dist/src/components/NcEmojiPicker/NcEmojiPicker.vue.d.ts +184 -0
  808. package/dist/src/components/NcEmptyContent/NcEmptyContent.vue.d.ts +39 -0
  809. package/dist/src/components/NcGuestContent/NcGuestContent.vue.d.ts +2 -0
  810. package/dist/src/components/NcHeaderMenu/NcHeaderMenu.vue.d.ts +147 -0
  811. package/dist/src/components/NcHighlight/NcHighlight.vue.d.ts +65 -0
  812. package/dist/src/components/NcIconSvgWrapper/NcIconSvgWrapper.vue.d.ts +83 -0
  813. package/dist/src/components/NcInputField/NcInputField.vue.d.ts +278 -0
  814. package/dist/src/components/NcListItem/NcListItem.vue.d.ts +259 -0
  815. package/dist/src/components/NcListItemIcon/NcListItemIcon.vue.d.ts +207 -0
  816. package/dist/src/components/NcLoadingIcon/NcLoadingIcon.vue.d.ts +58 -0
  817. package/dist/src/components/NcModal/NcModal.vue.d.ts +2 -0
  818. package/dist/src/components/NcNoteCard/NcNoteCard.vue.d.ts +44 -0
  819. package/dist/src/components/NcPopover/NcPopover.vue.d.ts +2 -0
  820. package/dist/src/components/NcPopover/NcPopoverTriggerProvider.vue.d.ts +25 -0
  821. package/dist/src/components/NcProgressBar/NcProgressBar.vue.d.ts +2 -0
  822. package/dist/src/components/NcRelatedResourcesPanel/NcRelatedResourcesPanel.vue.d.ts +140 -0
  823. package/dist/src/components/NcRelatedResourcesPanel/NcResource.vue.d.ts +32 -0
  824. package/dist/src/components/NcRichContenteditable/NcAutoCompleteResult.vue.d.ts +69 -0
  825. package/dist/src/components/NcRichContenteditable/NcMentionBubble.vue.d.ts +2 -0
  826. package/dist/src/components/NcRichContenteditable/NcRichContenteditable.vue.d.ts +342 -0
  827. package/dist/src/components/NcRichText/NcReferenceList.vue.d.ts +63 -0
  828. package/dist/src/components/NcRichText/NcReferencePicker/NcCustomPickerElement.vue.d.ts +28 -0
  829. package/dist/src/components/NcRichText/NcReferencePicker/NcProviderList.vue.d.ts +16 -0
  830. package/dist/src/components/NcRichText/NcReferencePicker/NcRawLinkInput.vue.d.ts +34 -0
  831. package/dist/src/components/NcRichText/NcReferencePicker/NcReferencePicker.vue.d.ts +84 -0
  832. package/dist/src/components/NcRichText/NcReferencePicker/NcReferencePickerModal.vue.d.ts +72 -0
  833. package/dist/src/components/NcRichText/NcReferencePicker/NcSearch.vue.d.ts +69 -0
  834. package/dist/src/components/NcRichText/NcReferencePicker/NcSearchResult.vue.d.ts +34 -0
  835. package/dist/src/components/NcRichText/NcReferenceWidget.vue.d.ts +29 -0
  836. package/dist/src/components/NcRichText/NcRichText.vue.d.ts +140 -0
  837. package/dist/src/components/NcSavingIndicatorIcon/NcSavingIndicatorIcon.vue.d.ts +73 -0
  838. package/dist/src/components/NcSelect/NcSelect.vue.d.ts +14 -0
  839. package/dist/src/components/NcSelectTags/NcSelectTags.vue.d.ts +23 -0
  840. package/dist/src/components/NcSettingsInputText/NcSettingsInputText.vue.d.ts +97 -0
  841. package/dist/src/components/NcSettingsSection/NcSettingsSection.vue.d.ts +57 -0
  842. package/dist/src/components/NcSettingsSelectGroup/NcSettingsSelectGroup.vue.d.ts +144 -0
  843. package/dist/src/components/NcTextArea/NcTextArea.vue.d.ts +205 -0
  844. package/dist/src/components/NcTextField/NcTextField.vue.d.ts +20 -0
  845. package/dist/src/components/NcTimezonePicker/NcTimezonePicker.vue.d.ts +78 -0
  846. package/dist/src/components/NcUserBubble/NcUserBubble.vue.d.ts +180 -0
  847. package/dist/src/components/NcUserBubble/NcUserBubbleDiv.vue.d.ts +2 -0
  848. package/dist/src/components/NcUserStatusIcon/NcUserStatusIcon.vue.d.ts +2 -0
  849. package/dist/src/components/NcVNodes/NcVNodes.vue.d.ts +20 -0
  850. package/dist/src/components/index.d.ts +91 -0
  851. package/dist/src/directives/index.d.ts +24 -0
  852. package/dist/src/functions/emoji/emoji.d.ts +50 -0
  853. package/dist/src/functions/emoji/index.d.ts +22 -0
  854. package/dist/src/index.d.ts +27 -0
  855. package/dist/src/plugin.d.ts +16 -0
  856. package/dist/{utils → src/utils}/UserStatus.d.ts +1 -3
  857. package/dist/src/utils/isSlotPopulated.d.ts +29 -0
  858. package/dist/tests/unit/components/NcActions/NcActionButton.spec.d.ts +22 -0
  859. package/dist/tests/unit/components/NcActions/NcActions.spec.d.ts +23 -0
  860. package/dist/tests/unit/components/NcAppSettingsDialog/NcAppSettingsDialog.spec.d.ts +22 -0
  861. package/dist/tests/unit/components/NcAvatar/NcAvatar.spec.d.ts +22 -0
  862. package/dist/tests/unit/components/NcInputField/NcInputField.spec.d.ts +1 -0
  863. package/dist/tests/unit/components/NcListItemIcon/list-item-icon.spec.d.ts +22 -0
  864. package/dist/tests/unit/components/NcRichContenteditable/NcRichContenteditable.spec.d.ts +1 -0
  865. package/dist/tests/unit/plugin.spec.d.ts +22 -0
  866. package/dist/tests/unit/testing-utils.d.ts +6 -0
  867. package/dist/tests/unit/utils/isSlotPopulated.spec.d.ts +1 -0
  868. package/dist/vite.config.d.ts +3 -0
  869. package/dist/vitest.config.d.ts +3 -0
  870. package/package.json +37 -40
  871. package/dist/Mixins/isFullscreen.cjs +0 -35
  872. package/dist/Mixins/isFullscreen.cjs.map +0 -1
  873. package/dist/Mixins/isFullscreen.mjs +0 -36
  874. package/dist/Mixins/isFullscreen.mjs.map +0 -1
  875. package/dist/Mixins/isMobile.cjs +0 -35
  876. package/dist/Mixins/isMobile.cjs.map +0 -1
  877. package/dist/Mixins/isMobile.mjs +0 -36
  878. package/dist/Mixins/isMobile.mjs.map +0 -1
  879. package/dist/chunks/AlertCircleOutline-7085c10f.cjs +0 -35
  880. package/dist/chunks/AlertCircleOutline-7085c10f.cjs.map +0 -1
  881. package/dist/chunks/AlertCircleOutline-b73838e0.mjs +0 -37
  882. package/dist/chunks/AlertCircleOutline-b73838e0.mjs.map +0 -1
  883. package/dist/chunks/ArrowLeft-2f9b9323.cjs +0 -35
  884. package/dist/chunks/ArrowLeft-2f9b9323.cjs.map +0 -1
  885. package/dist/chunks/ArrowLeft-3779ba88.mjs +0 -37
  886. package/dist/chunks/ArrowLeft-3779ba88.mjs.map +0 -1
  887. package/dist/chunks/ArrowRight-7315f6c1.cjs +0 -35
  888. package/dist/chunks/ArrowRight-7315f6c1.cjs.map +0 -1
  889. package/dist/chunks/ArrowRight-74a9fcb2.mjs +0 -37
  890. package/dist/chunks/ArrowRight-74a9fcb2.mjs.map +0 -1
  891. package/dist/chunks/Check-2ea0a88a.mjs +0 -37
  892. package/dist/chunks/Check-2ea0a88a.mjs.map +0 -1
  893. package/dist/chunks/Check-be8cd6af.cjs +0 -35
  894. package/dist/chunks/Check-be8cd6af.cjs.map +0 -1
  895. package/dist/chunks/ChevronDown-a72d365d.mjs +0 -37
  896. package/dist/chunks/ChevronDown-a72d365d.mjs.map +0 -1
  897. package/dist/chunks/ChevronDown-dc32e51d.cjs +0 -35
  898. package/dist/chunks/ChevronDown-dc32e51d.cjs.map +0 -1
  899. package/dist/chunks/ChevronRight-1a6a6cf2.mjs +0 -37
  900. package/dist/chunks/ChevronRight-1a6a6cf2.mjs.map +0 -1
  901. package/dist/chunks/ChevronRight-a4c1e0d3.cjs +0 -35
  902. package/dist/chunks/ChevronRight-a4c1e0d3.cjs.map +0 -1
  903. package/dist/chunks/Close-271f72e2.mjs +0 -37
  904. package/dist/chunks/Close-271f72e2.mjs.map +0 -1
  905. package/dist/chunks/Close-98cb6f12.cjs +0 -35
  906. package/dist/chunks/Close-98cb6f12.cjs.map +0 -1
  907. package/dist/chunks/DotsHorizontal-0ee7d901.mjs +0 -37
  908. package/dist/chunks/DotsHorizontal-0ee7d901.mjs.map +0 -1
  909. package/dist/chunks/DotsHorizontal-ac96129a.cjs +0 -35
  910. package/dist/chunks/DotsHorizontal-ac96129a.cjs.map +0 -1
  911. package/dist/chunks/GenColors-5c054042.mjs.map +0 -1
  912. package/dist/chunks/GenColors-7495e6f6.cjs.map +0 -1
  913. package/dist/chunks/NcAppNavigationToggle-0bc638a8.mjs +0 -114
  914. package/dist/chunks/NcAppNavigationToggle-6d192bea.cjs +0 -110
  915. package/dist/chunks/NcInputConfirmCancel-a08c5cb4.mjs +0 -97
  916. package/dist/chunks/NcInputConfirmCancel-b99898db.cjs +0 -91
  917. package/dist/chunks/NcRichText-e4bf7767.mjs +0 -302
  918. package/dist/chunks/NcRichText-e4bf7767.mjs.map +0 -1
  919. package/dist/chunks/NcRichText-f729896c.cjs +0 -289
  920. package/dist/chunks/NcRichText-f729896c.cjs.map +0 -1
  921. package/dist/chunks/NcSettingsSelectGroup-b065ffc8.cjs +0 -184
  922. package/dist/chunks/NcSettingsSelectGroup-b065ffc8.cjs.map +0 -1
  923. package/dist/chunks/NcSettingsSelectGroup-ecc8bc5a.mjs.map +0 -1
  924. package/dist/chunks/_l10n-72c5e29e.cjs +0 -62
  925. package/dist/chunks/_l10n-72c5e29e.cjs.map +0 -1
  926. package/dist/chunks/_l10n-f5af5269.mjs +0 -64
  927. package/dist/chunks/_l10n-f5af5269.mjs.map +0 -1
  928. package/dist/chunks/_plugin-vue2_normalizer-71e2aa87.mjs +0 -32
  929. package/dist/chunks/_plugin-vue2_normalizer-71e2aa87.mjs.map +0 -1
  930. package/dist/chunks/_plugin-vue2_normalizer-7f9efb60.cjs +0 -31
  931. package/dist/chunks/_plugin-vue2_normalizer-7f9efb60.cjs.map +0 -1
  932. package/dist/chunks/actionGlobal-8c1c28c9.mjs.map +0 -1
  933. package/dist/chunks/actionGlobal-9e29e11b.cjs.map +0 -1
  934. package/dist/chunks/index-20a9ace9.mjs.map +0 -1
  935. package/dist/chunks/index-309426ff.mjs +0 -538
  936. package/dist/chunks/index-309426ff.mjs.map +0 -1
  937. package/dist/chunks/index-4398f925.cjs +0 -149
  938. package/dist/chunks/index-4398f925.cjs.map +0 -1
  939. package/dist/chunks/index-5f2a5f57.mjs.map +0 -1
  940. package/dist/chunks/index-693e993c.cjs +0 -524
  941. package/dist/chunks/index-693e993c.cjs.map +0 -1
  942. package/dist/chunks/index-e894376a.cjs.map +0 -1
  943. package/dist/chunks/referencePickerModal-12935fb3.mjs +0 -915
  944. package/dist/chunks/referencePickerModal-12935fb3.mjs.map +0 -1
  945. package/dist/chunks/referencePickerModal-12fa2ad0.cjs +0 -897
  946. package/dist/chunks/referencePickerModal-12fa2ad0.cjs.map +0 -1
  947. package/dist/plugin.d.ts +0 -17
  948. /package/dist/assets/{index-418d4e87.css → NcActionCaption-afJqyJO6.css} +0 -0
  949. /package/dist/assets/{index-018895f7.css → NcActionSeparator-l98xWbiL.css} +0 -0
  950. /package/dist/assets/{index-fc61f2d8.css → NcAppNavigationIconBullet-Nf3ARMLv.css} +0 -0
  951. /package/dist/assets/{index-76dd9f11.css → NcAppNavigationSpacer-MfL8GeCN.css} +0 -0
  952. /package/dist/assets/{index-17673ea1.css → NcCounterBubble-rgkmqN46.css} +0 -0
  953. /package/dist/assets/{index-e7eadba7.css → NcDashboardWidgetItem-S7fELANA.css} +0 -0
  954. /package/dist/assets/{index-a2b51bce.css → NcEllipsisedOption-eoI10kvc.css} +0 -0
  955. /package/dist/assets/{index-b8f13a1f.css → NcLoadingIcon-hZn7TJM8.css} +0 -0
  956. /package/dist/assets/{NcMentionBubble-6e887c5f.css → NcMentionBubble-2OXF_uEJ.css} +0 -0
  957. /package/dist/assets/{index-400b48a6.css → NcNoteCard-OTfZqVvP.css} +0 -0
  958. /package/dist/assets/{index-4ebacc78.css → NcPopover-MK4GcuPY.css} +0 -0
  959. /package/dist/assets/{index-d211cae8.css → Tooltip-wOLIuz0Q.css} +0 -0
  960. /package/dist/chunks/{GenRandomId-c214d235.cjs → GenRandomId-ULxaMkkr.cjs} +0 -0
  961. /package/dist/chunks/{GenRandomId-cb9ccebe.mjs → GenRandomId-VodkdWbp.mjs} +0 -0
  962. /package/dist/chunks/{Linkify-39f20c9a.mjs → Linkify-V7PfCeZ8.mjs} +0 -0
  963. /package/dist/chunks/{Linkify-40cdd635.cjs → Linkify-f3s3nAe_.cjs} +0 -0
  964. /package/dist/chunks/{focusTrap-5d0f71d4.mjs → focusTrap-Py2bQ9-r.mjs} +0 -0
  965. /package/dist/chunks/{focusTrap-14985831.cjs → focusTrap-n3H52LOw.cjs} +0 -0
  966. /package/dist/chunks/{logger-3612e664.mjs → logger-3m1eQsSo.mjs} +0 -0
  967. /package/dist/chunks/{logger-4998b668.cjs → logger-G6OKp5ly.cjs} +0 -0
  968. /package/dist/{functions → src/functions}/a11y/index.d.ts +0 -0
@@ -1,228 +1,3 @@
1
- var _ = require("../assets/index-f091e784.css");
2
- const h = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
- const p = {
4
- name: "NcButton",
5
- props: {
6
- /**
7
- * Set the text and icon alignment
8
- *
9
- * @default 'center'
10
- */
11
- alignment: {
12
- type: String,
13
- default: "center",
14
- validator: (t) => ["start", "start-reverse", "center", "center-reverse", "end", "end-reverse"].includes(t)
15
- },
16
- /**
17
- * Toggles the disabled state of the button on and off.
18
- */
19
- disabled: {
20
- type: Boolean,
21
- default: !1
22
- },
23
- /**
24
- * Specifies the button type
25
- * Accepted values: primary, secondary, tertiary, tertiary-no-background, tertiary-on-primary, error, warning, success. If left empty,
26
- * the default button style will be applied.
27
- */
28
- type: {
29
- type: String,
30
- validator(t) {
31
- return ["primary", "secondary", "tertiary", "tertiary-no-background", "tertiary-on-primary", "error", "warning", "success"].indexOf(t) !== -1;
32
- },
33
- default: "secondary"
34
- },
35
- /**
36
- * Specifies the button native type
37
- * Accepted values: submit, reset, button. If left empty,
38
- * the default "button" type will be used.
39
- */
40
- nativeType: {
41
- type: String,
42
- validator(t) {
43
- return ["submit", "reset", "button"].indexOf(t) !== -1;
44
- },
45
- default: "button"
46
- },
47
- /**
48
- * Specifies whether the button should span all the available width.
49
- * By default, buttons span the whole width of the container.
50
- */
51
- wide: {
52
- type: Boolean,
53
- default: !1
54
- },
55
- /**
56
- * Always try to provide an aria-label to your button. Make it more
57
- * specific than the button's name by provide some more context. E.g. if
58
- * the name of the button is "send" in the Mail app, the aria label could
59
- * be "Send email".
60
- */
61
- ariaLabel: {
62
- type: String,
63
- default: null
64
- },
65
- /**
66
- * Providing the href attribute turns the button component into an `a`
67
- * element.
68
- */
69
- href: {
70
- type: String,
71
- default: null
72
- },
73
- /**
74
- * Providing the download attribute with href downloads file when clicking.
75
- */
76
- download: {
77
- type: String,
78
- default: null
79
- },
80
- /**
81
- * Providing the to attribute turns the button component into a `router-link`
82
- * element. Takes precedence over the href attribute.
83
- */
84
- to: {
85
- type: [String, Object],
86
- default: null
87
- },
88
- /**
89
- * Pass in `true` if you want the matching behaviour of `router-link` to
90
- * be non-inclusive: https://router.vuejs.org/api/#exact
91
- */
92
- exact: {
93
- type: Boolean,
94
- default: !1
95
- },
96
- /**
97
- * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.
98
- * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,
99
- * otherwise root element will inherit incorrect aria-hidden.
100
- */
101
- ariaHidden: {
102
- type: Boolean,
103
- default: null
104
- },
105
- /**
106
- * The pressed state of the button if it has a checked state
107
- * This will add the `aria-pressed` attribute and for the button to have the primary style in checked state.
108
- */
109
- pressed: {
110
- type: Boolean,
111
- default: null
112
- }
113
- },
114
- emits: ["update:pressed", "click"],
115
- computed: {
116
- /**
117
- * The real type to be used for the button, enforces `primary` for pressed state and, if stateful button, any other type for not pressed state
118
- * Otherwise the type property is used.
119
- */
120
- realType() {
121
- return this.pressed ? "primary" : this.pressed === !1 && this.type === "primary" ? "secondary" : this.type;
122
- },
123
- /**
124
- * The flexbox alignment of the button content
125
- */
126
- flexAlignment() {
127
- return this.alignment.split("-")[0];
128
- },
129
- /**
130
- * If the button content should be reversed (icon on the end)
131
- */
132
- isReverseAligned() {
133
- return this.alignment.includes("-");
134
- }
135
- },
136
- /**
137
- * The render function to display the component
138
- *
139
- * @param {Function} h The function to create VNodes
140
- * @return {object|undefined} The created VNode
141
- */
142
- render(t) {
143
- var i, l, o;
144
- const e = !!this.$slots.default, s = (i = this.$slots) == null ? void 0 : i.icon;
145
- !e && !this.ariaLabel && console.warn(
146
- "You need to fill either the text or the ariaLabel props in the button component.",
147
- {
148
- text: (o = (l = this.$slots.default) == null ? void 0 : l[0]) == null ? void 0 : o.text,
149
- ariaLabel: this.ariaLabel
150
- },
151
- this
152
- );
153
- const r = ({ navigate: n, isActive: u, isExactActive: d } = {}) => t(
154
- this.to || !this.href ? "button" : "a",
155
- {
156
- class: [
157
- "button-vue",
158
- {
159
- "button-vue--icon-only": s && !e,
160
- "button-vue--text-only": e && !s,
161
- "button-vue--icon-and-text": s && e,
162
- [`button-vue--vue-${this.realType}`]: this.realType,
163
- "button-vue--wide": this.wide,
164
- [`button-vue--${this.flexAlignment}`]: this.flexAlignment !== "center",
165
- "button-vue--reverse": this.isReverseAligned,
166
- active: u,
167
- "router-link-exact-active": d
168
- }
169
- ],
170
- attrs: {
171
- "aria-label": this.ariaLabel,
172
- "aria-pressed": this.pressed,
173
- disabled: this.disabled,
174
- type: this.href ? null : this.nativeType,
175
- role: this.href ? "button" : null,
176
- href: !this.to && this.href ? this.href : null,
177
- target: !this.to && this.href ? "_self" : null,
178
- rel: !this.to && this.href ? "nofollow noreferrer noopener" : null,
179
- download: !this.to && this.href && this.download ? this.download : null,
180
- ...this.$attrs
181
- },
182
- on: {
183
- ...this.$listeners,
184
- click: (a) => {
185
- typeof this.pressed == "boolean" && this.$emit("update:pressed", !this.pressed), this.$emit("click", a), n == null || n(a);
186
- }
187
- }
188
- },
189
- [
190
- t("span", { class: "button-vue__wrapper" }, [
191
- s ? t(
192
- "span",
193
- {
194
- class: "button-vue__icon",
195
- attrs: {
196
- "aria-hidden": "true"
197
- }
198
- },
199
- [this.$slots.icon]
200
- ) : null,
201
- e ? t("span", { class: "button-vue__text" }, [this.$slots.default]) : null
202
- ])
203
- ]
204
- );
205
- return this.to ? t("router-link", {
206
- props: {
207
- custom: !0,
208
- to: this.to,
209
- exact: this.exact
210
- },
211
- scopedSlots: {
212
- default: r
213
- }
214
- }) : r();
215
- }
216
- }, c = null, f = null;
217
- var y = /* @__PURE__ */ h.normalizeComponent(
218
- p,
219
- c,
220
- f,
221
- !1,
222
- null,
223
- "8f4e0666",
224
- null,
225
- null
226
- );
227
- const b = y.exports;
228
- module.exports = b;
1
+ "use strict";
2
+ const t = require("../chunks/NcButton-Uxh-oARg.cjs");
3
+ module.exports = t.NcButton;
@@ -1 +1 @@
1
- {"version":3,"file":"NcButton.cjs","sources":["../../src/components/NcButton/NcButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2020 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 -->\n\n<docs>\n\n### General description\nGeneral purpose button component. See props for different options.\n[Use material design icons only for icons](https://www.npmjs.com/package/vue-material-design-icons) and remember to set their size to 20.\n\n### Usage\n### Custom icon slot\nTo be used with `vue-material-design-icons` only. For icon classes use the `default-icon` slot.\nIt can be used with one or multiple actions.\n```\n<template>\n<div class=\"wrapper\">\n\t<!-- Style selector -->\n\t<div class=\"grid\">\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"style\" value=\"text\" name=\"style\" type=\"radio\">Text only</NcCheckboxRadioSwitch>\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"style\" value=\"icon\" name=\"style\" type=\"radio\">Icon only</NcCheckboxRadioSwitch>\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"style\" value=\"icontext\" name=\"style\" type=\"radio\">Icon and text</NcCheckboxRadioSwitch>\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"disabled\" type=\"checkbox\">Disabled</NcCheckboxRadioSwitch>\n\t\t<!--<NcCheckboxRadioSwitch :checked.sync=\"readonly\" type=\"checkbox\">Read-only</NcCheckboxRadioSwitch>-->\n\t</div>\n\n\t<h5>Standard buttons</h5>\n\t<div class=\"grid\">\n\t\t<p>Tertiary, no background</p>\n\t\t<p>Tertiary</p>\n\t\t<p>Secondary</p>\n\t\t<p>Primary</p>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"tertiary-no-background\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"tertiary\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"primary\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t</div>\n\n\t<!-- Wide button -->\n\t<h5>Wide button</h5>\n\t<NcButton\n\t\t:disabled=\"disabled\"\n\t\t:readonly=\"readonly\"\n\t\t:wide=\"true\"\n\t\ttext=\"Example text\">\n\t\t<template #icon>\n\t\t\t<Video\n\t\t\t\t:size=\"20\" />\n\t\t</template>\n\t\tExample text\n\t</NcButton>\n\n\t<!-- Special buttons -->\n\t<h5>Special buttons</h5>\n\t<div class=\"grid\">\n\t\t<p>Success</p>\n\t\t<p>Warning</p>\n\t\t<p>Error</p>\n\t\t<p> - </p>\n\t\t<NcButton\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"success\">\n\t\t\t<template #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\tExample text\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"warning\">\n\t\t\t<template #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\tExample text\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"error\">\n\t\t\t<template #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\tExample text\n\t\t</NcButton>\n\t\t<p> - </p>\n\t</div>\n</div>\n\n</template>\n<script>\nimport Video from 'vue-material-design-icons/Video'\n\nexport default {\n\tcomponents: {\n\t\tVideo,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\ttoggled: false,\n\t\t\tdisabled: false,\n\t\t\treadonly: false,\n\t\t\tstyle: 'icontext',\n\t\t}\n\t}\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.wrapper {\n\tpadding: 0 12px;\n}\n\n.grid {\n\tdisplay: grid;\n\tgrid-template-columns: 1fr 1fr 1fr 1fr;\n\tgrid-template-rows: repeat(auto-fill, auto);\n\tposition: relative;\n\tmargin: 12px 0;\n}\n\nh5 {\n\tfont-weight: bold;\n\tmargin: 40px 0 20px 0;\n}\n\np {\n\ttext-align: center;\n\tmargin: 4px 0 12px 0;\n\tcolor: var(--color-text-maxcontrast)\n}\n\nbutton {\n\tmargin: auto;\n}\n</style>\n```\n\n### Alignment\nSometimes it is required to change the icon alignment on the button, like for switching between pages as in following example:\n\n```vue\n<template>\n\t<div style=\"display: flex; flex-direction: column; gap: 12px;\">\n\t\t<NcButton aria-label=\"center (default)\" type=\"secondary\" wide>\n\t\t\t<template #icon>\n\t\t\t\t<IconLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tcenter (default)\n\t\t</NcButton>\n\t\t<NcButton alignment=\"center-reverse\" aria-label=\"center-reverse\" type=\"secondary\" wide>\n\t\t\t<template #icon>\n\t\t\t\t<IconRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tcenter-reverse\n\t\t</NcButton>\n\t\t<div style=\"display: flex; gap: 12px;\">\n\t\t\t<div style=\"display: flex; flex-direction: column; gap: 12px; flex: 1\">\n\t\t\t\t<NcButton alignment=\"start\" aria-label=\"start\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tstart\n\t\t\t\t</NcButton>\n\t\t\t\t<NcButton alignment=\"start-reverse\" aria-label=\"start-reverse\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tstart-reverse\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t\t<div style=\"display: flex; flex-direction: column; gap: 12px; flex: 1\">\n\t\t\t\t<NcButton alignment=\"end\" aria-label=\"end\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tend\n\t\t\t\t</NcButton>\n\t\t\t\t<NcButton alignment=\"end-reverse\" aria-label=\"end-reverse\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tend-reverse\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n<script>\nimport IconLeft from 'vue-material-design-icons/ArrowLeft.vue'\nimport IconRight from 'vue-material-design-icons/ArrowRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tIconLeft,\n\t\tIconRight,\n\t},\n}\n</script>\n```\n\n### Pressed state\nIt is possible to make the button stateful by adding a pressed state, e.g. if you like to create a favorite button.\nThe button will have the required `aria` attribute for accessibility and visual style (`primary` when pressed, and the configured type otherwise).\n\n```vue\n<template>\n\t<div>\n\t\t<div style=\"display: flex; gap: 12px;\">\n\t\t\t<NcButton :pressed.sync=\"isFavorite\" :aria-label=\"ariaLabel\" type=\"tertiary-no-background\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconStar v-if=\"isFavorite\" :size=\"20\" />\n\t\t\t\t\t<IconStarOutline v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton :pressed.sync=\"isFavorite\" :aria-label=\"ariaLabel\" type=\"tertiary\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconStar v-if=\"isFavorite\" :size=\"20\" />\n\t\t\t\t\t<IconStarOutline v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton :pressed.sync=\"isFavorite\" :aria-label=\"ariaLabel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconStar v-if=\"isFavorite\" :size=\"20\" />\n\t\t\t\t\t<IconStarOutline v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t</div>\n\t\t<div>\n\t\t\tIt is {{ isFavorite ? 'a' : 'not a' }} favorite.\n\t\t</div>\n\t</div>\n</template>\n<script>\nimport IconStar from 'vue-material-design-icons/Star.vue'\nimport IconStarOutline from 'vue-material-design-icons/StarOutline.vue'\n\nexport default {\n\tcomponents: {\n\t\tIconStar,\n\t\tIconStarOutline,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tisFavorite: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tariaLabel() {\n\t\t\treturn this.isFavorite ? 'Remove as favorite' : 'Add as favorite'\n\t\t},\n\t},\n\tmethods: {\n\t\ttoggleFavorite() {\n\t\t\tthis.isFavorite = !this.isFavorite\n\t\t},\n\t},\n}\n</script>\n```\n\n### Usage example: Sorting table columns\nThe standard way to implement sortable table column headers should be like this:\n\n```vue\n<template>\n\t<table>\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th :aria-sorted=\"sortedName\" class=\"row-name\">\n\t\t\t\t\t<NcButton alignment=\"start-reverse\"\n\t\t\t\t\t\t:wide=\"true\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t@click=\"sortName\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconDown v-if=\"sortedName === 'ascending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t\t<IconUp v-else-if=\"sortedName === 'descending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<span class=\"table-header\">Name</span>\n\t\t\t\t\t</NcButton>\n\t\t\t\t</th>\n\t\t\t\t<th :aria-sorted=\"sortedSize\" class=\"row-size\">\n\t\t\t\t\t<NcButton alignment=\"end\"\n\t\t\t\t\t\t:wide=\"true\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t@click=\"sortSize\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconDown v-if=\"sortedSize === 'ascending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t\t<IconUp v-else-if=\"sortedSize === 'descending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<span class=\"table-header\">Size</span>\n\t\t\t\t\t</NcButton>\n\t\t\t\t</th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td class=\"row-name\">Lorem ipsum</td>\n\t\t\t\t<td class=\"row-size\">8 MiB</td>\n\t\t\t</tr>\n\t\t</tbody>\n\t</table>\n</template>\n<script>\nimport IconUp from 'vue-material-design-icons/MenuUp.vue'\nimport IconDown from 'vue-material-design-icons/MenuDown.vue'\n\nexport default {\n\tcomponents: {\n\t\tIconUp,\n\t\tIconDown,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsortedName: null,\n\t\t\tsortedSize: null,\n\t\t}\n\t},\n\tmethods: {\n\t\tsortName() {\n\t\t\tif (this.sortedName === 'ascending') {\n\t\t\t\tthis.sortedName = 'descending'\n\t\t\t} else if (this.sortedName === 'descending') {\n\t\t\t\tthis.sortedName = null\n\t\t\t} else {\n\t\t\t\tthis.sortedName = 'ascending'\n\t\t\t}\n\t\t},\n\t\tsortSize() {\n\t\t\tif (this.sortedSize === 'ascending') {\n\t\t\t\tthis.sortedSize = 'descending'\n\t\t\t} else if (this.sortedSize === 'descending') {\n\t\t\t\tthis.sortedSize = null\n\t\t\t} else {\n\t\t\t\tthis.sortedSize = 'ascending'\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n<style>\ntable {\n\ttable-layout: fixed;\n\twidth: 300px;\n}\n\ntd.row-name {\n\tpadding-inline-start: 16px;\n}\n\ntd.row-size {\n\ttext-align: right;\n\tpadding-inline-end: 16px;\n}\n\n.table-header {\n\tfont-weight: normal;\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.sort-icon {\n\tcolor: var(--color-text-maxcontrast);\n\tposition: relative;\n\tinset-inline: -10px;\n}\n\n.row-size .sort-icon {\n\tinset-inline: 10px;\n}\n</style>\n```\n\n</docs>\n\n<script>\n\nexport default {\n\tname: 'NcButton',\n\n\tprops: {\n\t\t/**\n\t\t * Set the text and icon alignment\n\t\t *\n\t\t * @default 'center'\n\t\t */\n\t\talignment: {\n\t\t\ttype: String,\n\t\t\tdefault: 'center',\n\t\t\tvalidator: (alignment) => ['start', 'start-reverse', 'center', 'center-reverse', 'end', 'end-reverse'].includes(alignment),\n\t\t},\n\n\t\t/**\n\t\t * Toggles the disabled state of the button on and off.\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies the button type\n\t\t * Accepted values: primary, secondary, tertiary, tertiary-no-background, tertiary-on-primary, error, warning, success. If left empty,\n\t\t * the default button style will be applied.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['primary', 'secondary', 'tertiary', 'tertiary-no-background', 'tertiary-on-primary', 'error', 'warning', 'success'].indexOf(value) !== -1\n\t\t\t},\n\t\t\tdefault: 'secondary',\n\t\t},\n\n\t\t/**\n\t\t * Specifies the button native type\n\t\t * Accepted values: submit, reset, button. If left empty,\n\t\t * the default \"button\" type will be used.\n\t\t */\n\t\tnativeType: {\n\t\t\ttype: String,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['submit', 'reset', 'button'].indexOf(value) !== -1\n\t\t\t},\n\t\t\tdefault: 'button',\n\t\t},\n\n\t\t/**\n\t\t * Specifies whether the button should span all the available width.\n\t\t * By default, buttons span the whole width of the container.\n\t\t */\n\t\twide: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Always try to provide an aria-label to your button. Make it more\n\t\t * specific than the button's name by provide some more context. E.g. if\n\t\t * the name of the button is \"send\" in the Mail app, the aria label could\n\t\t * be \"Send email\".\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Providing the href attribute turns the button component into an `a`\n\t\t * element.\n\t\t */\n\t\thref: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Providing the download attribute with href downloads file when clicking.\n\t\t */\n\t\tdownload: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Providing the to attribute turns the button component into a `router-link`\n\t\t * element. Takes precedence over the href attribute.\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 * Pass in `true` if you want the matching behaviour of `router-link` 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\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The pressed state of the button if it has a checked state\n\t\t * This will add the `aria-pressed` attribute and for the button to have the primary style in checked state.\n\t\t */\n\t\tpressed: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: ['update:pressed', 'click'],\n\n\tcomputed: {\n\t\t/**\n\t\t * The real type to be used for the button, enforces `primary` for pressed state and, if stateful button, any other type for not pressed state\n\t\t * Otherwise the type property is used.\n\t\t */\n\t\trealType() {\n\t\t\t// Force *primary* when pressed\n\t\t\tif (this.pressed) {\n\t\t\t\treturn 'primary'\n\t\t\t}\n\t\t\t// If not pressed but button is configured as stateful button then the type must not be primary\n\t\t\tif (this.pressed === false && this.type === 'primary') {\n\t\t\t\treturn 'secondary'\n\t\t\t}\n\t\t\treturn this.type\n\t\t},\n\n\t\t/**\n\t\t * The flexbox alignment of the button content\n\t\t */\n\t\tflexAlignment() {\n\t\t\treturn this.alignment.split('-')[0]\n\t\t},\n\n\t\t/**\n\t\t * If the button content should be reversed (icon on the end)\n\t\t */\n\t\tisReverseAligned() {\n\t\t\treturn this.alignment.includes('-')\n\t\t},\n\t},\n\n\t/**\n\t * The render function to display the component\n\t *\n\t * @param {Function} h The function to create VNodes\n\t * @return {object|undefined} The created VNode\n\t */\n\trender(h) {\n\t\tconst hasText = !!this.$slots.default\n\t\tconst hasIcon = this.$slots?.icon\n\n\t\t/**\n\t\t * Always fill either the text prop or the ariaLabel one.\n\t\t */\n\t\tif (!hasText && !this.ariaLabel) {\n\t\t\tconsole.warn('You need to fill either the text or the ariaLabel props in the button component.', {\n\t\t\t\ttext: this.$slots.default?.[0]?.text,\n\t\t\t\tariaLabel: this.ariaLabel,\n\t\t\t},\n\t\t\tthis)\n\t\t}\n\n\t\tconst renderButton = ({ navigate, isActive, isExactActive } = {}) => h((this.to || !this.href) ? 'button' : 'a',\n\t\t\t{\n\t\t\t\tclass: [\n\t\t\t\t\t'button-vue',\n\t\t\t\t\t{\n\t\t\t\t\t\t'button-vue--icon-only': hasIcon && !hasText,\n\t\t\t\t\t\t'button-vue--text-only': hasText && !hasIcon,\n\t\t\t\t\t\t'button-vue--icon-and-text': hasIcon && hasText,\n\t\t\t\t\t\t[`button-vue--vue-${this.realType}`]: this.realType,\n\t\t\t\t\t\t'button-vue--wide': this.wide,\n\t\t\t\t\t\t[`button-vue--${this.flexAlignment}`]: this.flexAlignment !== 'center',\n\t\t\t\t\t\t'button-vue--reverse': this.isReverseAligned,\n\t\t\t\t\t\tactive: isActive,\n\t\t\t\t\t\t'router-link-exact-active': isExactActive,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tattrs: {\n\t\t\t\t\t'aria-label': this.ariaLabel,\n\t\t\t\t\t'aria-pressed': this.pressed,\n\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\ttype: this.href ? null : this.nativeType,\n\t\t\t\t\trole: this.href ? 'button' : null,\n\t\t\t\t\thref: (!this.to && this.href) ? this.href : null,\n\t\t\t\t\ttarget: (!this.to && this.href) ? '_self' : null,\n\t\t\t\t\trel: (!this.to && this.href) ? 'nofollow noreferrer noopener' : null,\n\t\t\t\t\tdownload: (!this.to && this.href && this.download) ? this.download : null,\n\t\t\t\t\t...this.$attrs,\n\t\t\t\t},\n\t\t\t\ton: {\n\t\t\t\t\t...this.$listeners,\n\t\t\t\t\tclick: ($event) => {\n\t\t\t\t\t\t// Update pressed prop on click if it is set\n\t\t\t\t\t\tif (typeof this.pressed === 'boolean') {\n\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t * Update the current pressed state of the button (if the `pressed` property was configured)\n\t\t\t\t\t\t\t *\n\t\t\t\t\t\t\t * @property {boolean} newValue The new `pressed`-state\n\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\tthis.$emit('update:pressed', !this.pressed)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// We have to both navigate and emit the click event\n\t\t\t\t\t\tthis.$emit('click', $event)\n\t\t\t\t\t\tnavigate?.($event)\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t[\n\t\t\t\th('span', { class: 'button-vue__wrapper' }, [\n\t\t\t\t\thasIcon\n\t\t\t\t\t\t? h('span', {\n\t\t\t\t\t\t\tclass: 'button-vue__icon',\n\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\t'aria-hidden': 'true',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t[this.$slots.icon],\n\t\t\t\t\t\t)\n\t\t\t\t\t\t: null,\n\t\t\t\t\thasText ? h('span', { class: 'button-vue__text' }, [this.$slots.default]) : null,\n\t\t\t\t]),\n\t\t\t],\n\t\t)\n\n\t\t// If we have a router-link, we wrap the button in it\n\t\tif (this.to) {\n\t\t\treturn h('router-link', {\n\t\t\t\tprops: {\n\t\t\t\t\tcustom: true,\n\t\t\t\t\tto: this.to,\n\t\t\t\t\texact: this.exact,\n\t\t\t\t},\n\t\t\t\tscopedSlots: {\n\t\t\t\t\tdefault: renderButton,\n\t\t\t\t},\n\t\t\t})\n\t\t}\n\t\t// Otherwise we simply return the button\n\t\treturn renderButton()\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&--end &__wrapper {\n\t\tjustify-content: end;\n\t}\n\t&--start &__wrapper {\n\t\tjustify-content: start;\n\t}\n\t&--reverse &__wrapper {\n\t\tflex-direction: row-reverse;\n\t}\n\n\t&--reverse#{&}--icon-and-text {\n\t\tpadding-inline: calc(var(--default-grid-baseline) * 4) var(--default-grid-baseline);\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding-block: 0;\n\t\tpadding-inline: var(--default-grid-baseline) calc(var(--default-grid-baseline) * 4);\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\tbox-shadow: 0 0 0 4px var(--color-main-background) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n</style>\n"],"names":["_sfc_main","alignment","value","h","hasText","hasIcon","_a","_c","_b","renderButton","navigate","isActive","isExactActive","$event"],"mappings":"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"}
1
+ {"version":3,"file":"NcButton.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,230 +1,4 @@
1
- import "../assets/index-f091e784.css";
2
- import { n as h } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
3
- const p = {
4
- name: "NcButton",
5
- props: {
6
- /**
7
- * Set the text and icon alignment
8
- *
9
- * @default 'center'
10
- */
11
- alignment: {
12
- type: String,
13
- default: "center",
14
- validator: (t) => ["start", "start-reverse", "center", "center-reverse", "end", "end-reverse"].includes(t)
15
- },
16
- /**
17
- * Toggles the disabled state of the button on and off.
18
- */
19
- disabled: {
20
- type: Boolean,
21
- default: !1
22
- },
23
- /**
24
- * Specifies the button type
25
- * Accepted values: primary, secondary, tertiary, tertiary-no-background, tertiary-on-primary, error, warning, success. If left empty,
26
- * the default button style will be applied.
27
- */
28
- type: {
29
- type: String,
30
- validator(t) {
31
- return ["primary", "secondary", "tertiary", "tertiary-no-background", "tertiary-on-primary", "error", "warning", "success"].indexOf(t) !== -1;
32
- },
33
- default: "secondary"
34
- },
35
- /**
36
- * Specifies the button native type
37
- * Accepted values: submit, reset, button. If left empty,
38
- * the default "button" type will be used.
39
- */
40
- nativeType: {
41
- type: String,
42
- validator(t) {
43
- return ["submit", "reset", "button"].indexOf(t) !== -1;
44
- },
45
- default: "button"
46
- },
47
- /**
48
- * Specifies whether the button should span all the available width.
49
- * By default, buttons span the whole width of the container.
50
- */
51
- wide: {
52
- type: Boolean,
53
- default: !1
54
- },
55
- /**
56
- * Always try to provide an aria-label to your button. Make it more
57
- * specific than the button's name by provide some more context. E.g. if
58
- * the name of the button is "send" in the Mail app, the aria label could
59
- * be "Send email".
60
- */
61
- ariaLabel: {
62
- type: String,
63
- default: null
64
- },
65
- /**
66
- * Providing the href attribute turns the button component into an `a`
67
- * element.
68
- */
69
- href: {
70
- type: String,
71
- default: null
72
- },
73
- /**
74
- * Providing the download attribute with href downloads file when clicking.
75
- */
76
- download: {
77
- type: String,
78
- default: null
79
- },
80
- /**
81
- * Providing the to attribute turns the button component into a `router-link`
82
- * element. Takes precedence over the href attribute.
83
- */
84
- to: {
85
- type: [String, Object],
86
- default: null
87
- },
88
- /**
89
- * Pass in `true` if you want the matching behaviour of `router-link` to
90
- * be non-inclusive: https://router.vuejs.org/api/#exact
91
- */
92
- exact: {
93
- type: Boolean,
94
- default: !1
95
- },
96
- /**
97
- * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.
98
- * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,
99
- * otherwise root element will inherit incorrect aria-hidden.
100
- */
101
- ariaHidden: {
102
- type: Boolean,
103
- default: null
104
- },
105
- /**
106
- * The pressed state of the button if it has a checked state
107
- * This will add the `aria-pressed` attribute and for the button to have the primary style in checked state.
108
- */
109
- pressed: {
110
- type: Boolean,
111
- default: null
112
- }
113
- },
114
- emits: ["update:pressed", "click"],
115
- computed: {
116
- /**
117
- * The real type to be used for the button, enforces `primary` for pressed state and, if stateful button, any other type for not pressed state
118
- * Otherwise the type property is used.
119
- */
120
- realType() {
121
- return this.pressed ? "primary" : this.pressed === !1 && this.type === "primary" ? "secondary" : this.type;
122
- },
123
- /**
124
- * The flexbox alignment of the button content
125
- */
126
- flexAlignment() {
127
- return this.alignment.split("-")[0];
128
- },
129
- /**
130
- * If the button content should be reversed (icon on the end)
131
- */
132
- isReverseAligned() {
133
- return this.alignment.includes("-");
134
- }
135
- },
136
- /**
137
- * The render function to display the component
138
- *
139
- * @param {Function} h The function to create VNodes
140
- * @return {object|undefined} The created VNode
141
- */
142
- render(t) {
143
- var l, i, o;
144
- const e = !!this.$slots.default, s = (l = this.$slots) == null ? void 0 : l.icon;
145
- !e && !this.ariaLabel && console.warn(
146
- "You need to fill either the text or the ariaLabel props in the button component.",
147
- {
148
- text: (o = (i = this.$slots.default) == null ? void 0 : i[0]) == null ? void 0 : o.text,
149
- ariaLabel: this.ariaLabel
150
- },
151
- this
152
- );
153
- const r = ({ navigate: n, isActive: u, isExactActive: d } = {}) => t(
154
- this.to || !this.href ? "button" : "a",
155
- {
156
- class: [
157
- "button-vue",
158
- {
159
- "button-vue--icon-only": s && !e,
160
- "button-vue--text-only": e && !s,
161
- "button-vue--icon-and-text": s && e,
162
- [`button-vue--vue-${this.realType}`]: this.realType,
163
- "button-vue--wide": this.wide,
164
- [`button-vue--${this.flexAlignment}`]: this.flexAlignment !== "center",
165
- "button-vue--reverse": this.isReverseAligned,
166
- active: u,
167
- "router-link-exact-active": d
168
- }
169
- ],
170
- attrs: {
171
- "aria-label": this.ariaLabel,
172
- "aria-pressed": this.pressed,
173
- disabled: this.disabled,
174
- type: this.href ? null : this.nativeType,
175
- role: this.href ? "button" : null,
176
- href: !this.to && this.href ? this.href : null,
177
- target: !this.to && this.href ? "_self" : null,
178
- rel: !this.to && this.href ? "nofollow noreferrer noopener" : null,
179
- download: !this.to && this.href && this.download ? this.download : null,
180
- ...this.$attrs
181
- },
182
- on: {
183
- ...this.$listeners,
184
- click: (a) => {
185
- typeof this.pressed == "boolean" && this.$emit("update:pressed", !this.pressed), this.$emit("click", a), n == null || n(a);
186
- }
187
- }
188
- },
189
- [
190
- t("span", { class: "button-vue__wrapper" }, [
191
- s ? t(
192
- "span",
193
- {
194
- class: "button-vue__icon",
195
- attrs: {
196
- "aria-hidden": "true"
197
- }
198
- },
199
- [this.$slots.icon]
200
- ) : null,
201
- e ? t("span", { class: "button-vue__text" }, [this.$slots.default]) : null
202
- ])
203
- ]
204
- );
205
- return this.to ? t("router-link", {
206
- props: {
207
- custom: !0,
208
- to: this.to,
209
- exact: this.exact
210
- },
211
- scopedSlots: {
212
- default: r
213
- }
214
- }) : r();
215
- }
216
- }, c = null, f = null;
217
- var y = /* @__PURE__ */ h(
218
- p,
219
- c,
220
- f,
221
- !1,
222
- null,
223
- "8f4e0666",
224
- null,
225
- null
226
- );
227
- const m = y.exports;
1
+ import { N as f } from "../chunks/NcButton-nCkJxwsi.mjs";
228
2
  export {
229
- m as default
3
+ f as default
230
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NcButton.mjs","sources":["../../src/components/NcButton/NcButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2020 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 -->\n\n<docs>\n\n### General description\nGeneral purpose button component. See props for different options.\n[Use material design icons only for icons](https://www.npmjs.com/package/vue-material-design-icons) and remember to set their size to 20.\n\n### Usage\n### Custom icon slot\nTo be used with `vue-material-design-icons` only. For icon classes use the `default-icon` slot.\nIt can be used with one or multiple actions.\n```\n<template>\n<div class=\"wrapper\">\n\t<!-- Style selector -->\n\t<div class=\"grid\">\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"style\" value=\"text\" name=\"style\" type=\"radio\">Text only</NcCheckboxRadioSwitch>\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"style\" value=\"icon\" name=\"style\" type=\"radio\">Icon only</NcCheckboxRadioSwitch>\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"style\" value=\"icontext\" name=\"style\" type=\"radio\">Icon and text</NcCheckboxRadioSwitch>\n\t\t<NcCheckboxRadioSwitch :checked.sync=\"disabled\" type=\"checkbox\">Disabled</NcCheckboxRadioSwitch>\n\t\t<!--<NcCheckboxRadioSwitch :checked.sync=\"readonly\" type=\"checkbox\">Read-only</NcCheckboxRadioSwitch>-->\n\t</div>\n\n\t<h5>Standard buttons</h5>\n\t<div class=\"grid\">\n\t\t<p>Tertiary, no background</p>\n\t\t<p>Tertiary</p>\n\t\t<p>Secondary</p>\n\t\t<p>Primary</p>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"tertiary-no-background\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"tertiary\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\taria-label=\"Example text\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"primary\">\n\t\t\t<template v-if=\"style.indexOf('icon') !== -1\" #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\t<template v-if=\"style.indexOf('text') !== -1\">Example text</template>\n\t\t</NcButton>\n\t</div>\n\n\t<!-- Wide button -->\n\t<h5>Wide button</h5>\n\t<NcButton\n\t\t:disabled=\"disabled\"\n\t\t:readonly=\"readonly\"\n\t\t:wide=\"true\"\n\t\ttext=\"Example text\">\n\t\t<template #icon>\n\t\t\t<Video\n\t\t\t\t:size=\"20\" />\n\t\t</template>\n\t\tExample text\n\t</NcButton>\n\n\t<!-- Special buttons -->\n\t<h5>Special buttons</h5>\n\t<div class=\"grid\">\n\t\t<p>Success</p>\n\t\t<p>Warning</p>\n\t\t<p>Error</p>\n\t\t<p> - </p>\n\t\t<NcButton\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"success\">\n\t\t\t<template #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\tExample text\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"warning\">\n\t\t\t<template #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\tExample text\n\t\t</NcButton>\n\t\t<NcButton\n\t\t\t:disabled=\"disabled\"\n\t\t\t:readonly=\"readonly\"\n\t\t\ttype=\"error\">\n\t\t\t<template #icon>\n\t\t\t\t<Video\n\t\t\t\t\t:size=\"20\" />\n\t\t\t</template>\n\t\t\tExample text\n\t\t</NcButton>\n\t\t<p> - </p>\n\t</div>\n</div>\n\n</template>\n<script>\nimport Video from 'vue-material-design-icons/Video'\n\nexport default {\n\tcomponents: {\n\t\tVideo,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\ttoggled: false,\n\t\t\tdisabled: false,\n\t\t\treadonly: false,\n\t\t\tstyle: 'icontext',\n\t\t}\n\t}\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.wrapper {\n\tpadding: 0 12px;\n}\n\n.grid {\n\tdisplay: grid;\n\tgrid-template-columns: 1fr 1fr 1fr 1fr;\n\tgrid-template-rows: repeat(auto-fill, auto);\n\tposition: relative;\n\tmargin: 12px 0;\n}\n\nh5 {\n\tfont-weight: bold;\n\tmargin: 40px 0 20px 0;\n}\n\np {\n\ttext-align: center;\n\tmargin: 4px 0 12px 0;\n\tcolor: var(--color-text-maxcontrast)\n}\n\nbutton {\n\tmargin: auto;\n}\n</style>\n```\n\n### Alignment\nSometimes it is required to change the icon alignment on the button, like for switching between pages as in following example:\n\n```vue\n<template>\n\t<div style=\"display: flex; flex-direction: column; gap: 12px;\">\n\t\t<NcButton aria-label=\"center (default)\" type=\"secondary\" wide>\n\t\t\t<template #icon>\n\t\t\t\t<IconLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tcenter (default)\n\t\t</NcButton>\n\t\t<NcButton alignment=\"center-reverse\" aria-label=\"center-reverse\" type=\"secondary\" wide>\n\t\t\t<template #icon>\n\t\t\t\t<IconRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tcenter-reverse\n\t\t</NcButton>\n\t\t<div style=\"display: flex; gap: 12px;\">\n\t\t\t<div style=\"display: flex; flex-direction: column; gap: 12px; flex: 1\">\n\t\t\t\t<NcButton alignment=\"start\" aria-label=\"start\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tstart\n\t\t\t\t</NcButton>\n\t\t\t\t<NcButton alignment=\"start-reverse\" aria-label=\"start-reverse\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tstart-reverse\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t\t<div style=\"display: flex; flex-direction: column; gap: 12px; flex: 1\">\n\t\t\t\t<NcButton alignment=\"end\" aria-label=\"end\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tend\n\t\t\t\t</NcButton>\n\t\t\t\t<NcButton alignment=\"end-reverse\" aria-label=\"end-reverse\" type=\"secondary\" wide>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tend-reverse\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n<script>\nimport IconLeft from 'vue-material-design-icons/ArrowLeft.vue'\nimport IconRight from 'vue-material-design-icons/ArrowRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tIconLeft,\n\t\tIconRight,\n\t},\n}\n</script>\n```\n\n### Pressed state\nIt is possible to make the button stateful by adding a pressed state, e.g. if you like to create a favorite button.\nThe button will have the required `aria` attribute for accessibility and visual style (`primary` when pressed, and the configured type otherwise).\n\n```vue\n<template>\n\t<div>\n\t\t<div style=\"display: flex; gap: 12px;\">\n\t\t\t<NcButton :pressed.sync=\"isFavorite\" :aria-label=\"ariaLabel\" type=\"tertiary-no-background\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconStar v-if=\"isFavorite\" :size=\"20\" />\n\t\t\t\t\t<IconStarOutline v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton :pressed.sync=\"isFavorite\" :aria-label=\"ariaLabel\" type=\"tertiary\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconStar v-if=\"isFavorite\" :size=\"20\" />\n\t\t\t\t\t<IconStarOutline v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t\t<NcButton :pressed.sync=\"isFavorite\" :aria-label=\"ariaLabel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconStar v-if=\"isFavorite\" :size=\"20\" />\n\t\t\t\t\t<IconStarOutline v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcButton>\n\t\t</div>\n\t\t<div>\n\t\t\tIt is {{ isFavorite ? 'a' : 'not a' }} favorite.\n\t\t</div>\n\t</div>\n</template>\n<script>\nimport IconStar from 'vue-material-design-icons/Star.vue'\nimport IconStarOutline from 'vue-material-design-icons/StarOutline.vue'\n\nexport default {\n\tcomponents: {\n\t\tIconStar,\n\t\tIconStarOutline,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tisFavorite: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tariaLabel() {\n\t\t\treturn this.isFavorite ? 'Remove as favorite' : 'Add as favorite'\n\t\t},\n\t},\n\tmethods: {\n\t\ttoggleFavorite() {\n\t\t\tthis.isFavorite = !this.isFavorite\n\t\t},\n\t},\n}\n</script>\n```\n\n### Usage example: Sorting table columns\nThe standard way to implement sortable table column headers should be like this:\n\n```vue\n<template>\n\t<table>\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th :aria-sorted=\"sortedName\" class=\"row-name\">\n\t\t\t\t\t<NcButton alignment=\"start-reverse\"\n\t\t\t\t\t\t:wide=\"true\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t@click=\"sortName\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconDown v-if=\"sortedName === 'ascending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t\t<IconUp v-else-if=\"sortedName === 'descending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<span class=\"table-header\">Name</span>\n\t\t\t\t\t</NcButton>\n\t\t\t\t</th>\n\t\t\t\t<th :aria-sorted=\"sortedSize\" class=\"row-size\">\n\t\t\t\t\t<NcButton alignment=\"end\"\n\t\t\t\t\t\t:wide=\"true\"\n\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t@click=\"sortSize\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<IconDown v-if=\"sortedSize === 'ascending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t\t<IconUp v-else-if=\"sortedSize === 'descending'\" class=\"sort-icon\" :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<span class=\"table-header\">Size</span>\n\t\t\t\t\t</NcButton>\n\t\t\t\t</th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr>\n\t\t\t\t<td class=\"row-name\">Lorem ipsum</td>\n\t\t\t\t<td class=\"row-size\">8 MiB</td>\n\t\t\t</tr>\n\t\t</tbody>\n\t</table>\n</template>\n<script>\nimport IconUp from 'vue-material-design-icons/MenuUp.vue'\nimport IconDown from 'vue-material-design-icons/MenuDown.vue'\n\nexport default {\n\tcomponents: {\n\t\tIconUp,\n\t\tIconDown,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tsortedName: null,\n\t\t\tsortedSize: null,\n\t\t}\n\t},\n\tmethods: {\n\t\tsortName() {\n\t\t\tif (this.sortedName === 'ascending') {\n\t\t\t\tthis.sortedName = 'descending'\n\t\t\t} else if (this.sortedName === 'descending') {\n\t\t\t\tthis.sortedName = null\n\t\t\t} else {\n\t\t\t\tthis.sortedName = 'ascending'\n\t\t\t}\n\t\t},\n\t\tsortSize() {\n\t\t\tif (this.sortedSize === 'ascending') {\n\t\t\t\tthis.sortedSize = 'descending'\n\t\t\t} else if (this.sortedSize === 'descending') {\n\t\t\t\tthis.sortedSize = null\n\t\t\t} else {\n\t\t\t\tthis.sortedSize = 'ascending'\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n<style>\ntable {\n\ttable-layout: fixed;\n\twidth: 300px;\n}\n\ntd.row-name {\n\tpadding-inline-start: 16px;\n}\n\ntd.row-size {\n\ttext-align: right;\n\tpadding-inline-end: 16px;\n}\n\n.table-header {\n\tfont-weight: normal;\n\tcolor: var(--color-text-maxcontrast);\n}\n\n.sort-icon {\n\tcolor: var(--color-text-maxcontrast);\n\tposition: relative;\n\tinset-inline: -10px;\n}\n\n.row-size .sort-icon {\n\tinset-inline: 10px;\n}\n</style>\n```\n\n</docs>\n\n<script>\n\nexport default {\n\tname: 'NcButton',\n\n\tprops: {\n\t\t/**\n\t\t * Set the text and icon alignment\n\t\t *\n\t\t * @default 'center'\n\t\t */\n\t\talignment: {\n\t\t\ttype: String,\n\t\t\tdefault: 'center',\n\t\t\tvalidator: (alignment) => ['start', 'start-reverse', 'center', 'center-reverse', 'end', 'end-reverse'].includes(alignment),\n\t\t},\n\n\t\t/**\n\t\t * Toggles the disabled state of the button on and off.\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies the button type\n\t\t * Accepted values: primary, secondary, tertiary, tertiary-no-background, tertiary-on-primary, error, warning, success. If left empty,\n\t\t * the default button style will be applied.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['primary', 'secondary', 'tertiary', 'tertiary-no-background', 'tertiary-on-primary', 'error', 'warning', 'success'].indexOf(value) !== -1\n\t\t\t},\n\t\t\tdefault: 'secondary',\n\t\t},\n\n\t\t/**\n\t\t * Specifies the button native type\n\t\t * Accepted values: submit, reset, button. If left empty,\n\t\t * the default \"button\" type will be used.\n\t\t */\n\t\tnativeType: {\n\t\t\ttype: String,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['submit', 'reset', 'button'].indexOf(value) !== -1\n\t\t\t},\n\t\t\tdefault: 'button',\n\t\t},\n\n\t\t/**\n\t\t * Specifies whether the button should span all the available width.\n\t\t * By default, buttons span the whole width of the container.\n\t\t */\n\t\twide: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Always try to provide an aria-label to your button. Make it more\n\t\t * specific than the button's name by provide some more context. E.g. if\n\t\t * the name of the button is \"send\" in the Mail app, the aria label could\n\t\t * be \"Send email\".\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Providing the href attribute turns the button component into an `a`\n\t\t * element.\n\t\t */\n\t\thref: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Providing the download attribute with href downloads file when clicking.\n\t\t */\n\t\tdownload: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Providing the to attribute turns the button component into a `router-link`\n\t\t * element. Takes precedence over the href attribute.\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 * Pass in `true` if you want the matching behaviour of `router-link` 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\t\t/**\n\t\t * @deprecated To be removed in @nextcloud/vue 9. Migration guide: remove ariaHidden prop from NcAction* components.\n\t\t * @todo Add a check in @nextcloud/vue 9 that this prop is not provided,\n\t\t * otherwise root element will inherit incorrect aria-hidden.\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The pressed state of the button if it has a checked state\n\t\t * This will add the `aria-pressed` attribute and for the button to have the primary style in checked state.\n\t\t */\n\t\tpressed: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: ['update:pressed', 'click'],\n\n\tcomputed: {\n\t\t/**\n\t\t * The real type to be used for the button, enforces `primary` for pressed state and, if stateful button, any other type for not pressed state\n\t\t * Otherwise the type property is used.\n\t\t */\n\t\trealType() {\n\t\t\t// Force *primary* when pressed\n\t\t\tif (this.pressed) {\n\t\t\t\treturn 'primary'\n\t\t\t}\n\t\t\t// If not pressed but button is configured as stateful button then the type must not be primary\n\t\t\tif (this.pressed === false && this.type === 'primary') {\n\t\t\t\treturn 'secondary'\n\t\t\t}\n\t\t\treturn this.type\n\t\t},\n\n\t\t/**\n\t\t * The flexbox alignment of the button content\n\t\t */\n\t\tflexAlignment() {\n\t\t\treturn this.alignment.split('-')[0]\n\t\t},\n\n\t\t/**\n\t\t * If the button content should be reversed (icon on the end)\n\t\t */\n\t\tisReverseAligned() {\n\t\t\treturn this.alignment.includes('-')\n\t\t},\n\t},\n\n\t/**\n\t * The render function to display the component\n\t *\n\t * @param {Function} h The function to create VNodes\n\t * @return {object|undefined} The created VNode\n\t */\n\trender(h) {\n\t\tconst hasText = !!this.$slots.default\n\t\tconst hasIcon = this.$slots?.icon\n\n\t\t/**\n\t\t * Always fill either the text prop or the ariaLabel one.\n\t\t */\n\t\tif (!hasText && !this.ariaLabel) {\n\t\t\tconsole.warn('You need to fill either the text or the ariaLabel props in the button component.', {\n\t\t\t\ttext: this.$slots.default?.[0]?.text,\n\t\t\t\tariaLabel: this.ariaLabel,\n\t\t\t},\n\t\t\tthis)\n\t\t}\n\n\t\tconst renderButton = ({ navigate, isActive, isExactActive } = {}) => h((this.to || !this.href) ? 'button' : 'a',\n\t\t\t{\n\t\t\t\tclass: [\n\t\t\t\t\t'button-vue',\n\t\t\t\t\t{\n\t\t\t\t\t\t'button-vue--icon-only': hasIcon && !hasText,\n\t\t\t\t\t\t'button-vue--text-only': hasText && !hasIcon,\n\t\t\t\t\t\t'button-vue--icon-and-text': hasIcon && hasText,\n\t\t\t\t\t\t[`button-vue--vue-${this.realType}`]: this.realType,\n\t\t\t\t\t\t'button-vue--wide': this.wide,\n\t\t\t\t\t\t[`button-vue--${this.flexAlignment}`]: this.flexAlignment !== 'center',\n\t\t\t\t\t\t'button-vue--reverse': this.isReverseAligned,\n\t\t\t\t\t\tactive: isActive,\n\t\t\t\t\t\t'router-link-exact-active': isExactActive,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tattrs: {\n\t\t\t\t\t'aria-label': this.ariaLabel,\n\t\t\t\t\t'aria-pressed': this.pressed,\n\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\ttype: this.href ? null : this.nativeType,\n\t\t\t\t\trole: this.href ? 'button' : null,\n\t\t\t\t\thref: (!this.to && this.href) ? this.href : null,\n\t\t\t\t\ttarget: (!this.to && this.href) ? '_self' : null,\n\t\t\t\t\trel: (!this.to && this.href) ? 'nofollow noreferrer noopener' : null,\n\t\t\t\t\tdownload: (!this.to && this.href && this.download) ? this.download : null,\n\t\t\t\t\t...this.$attrs,\n\t\t\t\t},\n\t\t\t\ton: {\n\t\t\t\t\t...this.$listeners,\n\t\t\t\t\tclick: ($event) => {\n\t\t\t\t\t\t// Update pressed prop on click if it is set\n\t\t\t\t\t\tif (typeof this.pressed === 'boolean') {\n\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t * Update the current pressed state of the button (if the `pressed` property was configured)\n\t\t\t\t\t\t\t *\n\t\t\t\t\t\t\t * @property {boolean} newValue The new `pressed`-state\n\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\tthis.$emit('update:pressed', !this.pressed)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// We have to both navigate and emit the click event\n\t\t\t\t\t\tthis.$emit('click', $event)\n\t\t\t\t\t\tnavigate?.($event)\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t[\n\t\t\t\th('span', { class: 'button-vue__wrapper' }, [\n\t\t\t\t\thasIcon\n\t\t\t\t\t\t? h('span', {\n\t\t\t\t\t\t\tclass: 'button-vue__icon',\n\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\t'aria-hidden': 'true',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t[this.$slots.icon],\n\t\t\t\t\t\t)\n\t\t\t\t\t\t: null,\n\t\t\t\t\thasText ? h('span', { class: 'button-vue__text' }, [this.$slots.default]) : null,\n\t\t\t\t]),\n\t\t\t],\n\t\t)\n\n\t\t// If we have a router-link, we wrap the button in it\n\t\tif (this.to) {\n\t\t\treturn h('router-link', {\n\t\t\t\tprops: {\n\t\t\t\t\tcustom: true,\n\t\t\t\t\tto: this.to,\n\t\t\t\t\texact: this.exact,\n\t\t\t\t},\n\t\t\t\tscopedSlots: {\n\t\t\t\t\tdefault: renderButton,\n\t\t\t\t},\n\t\t\t})\n\t\t}\n\t\t// Otherwise we simply return the button\n\t\treturn renderButton()\n\t},\n}\n\n</script>\n\n<style lang=\"scss\" scoped>\n\n.button-vue {\n\tposition: relative;\n\twidth: fit-content;\n\toverflow: hidden;\n\tborder: 0;\n\tpadding: 0;\n\tfont-size: var(--default-font-size);\n\tfont-weight: bold;\n\tmin-height: $clickable-area;\n\tmin-width: $clickable-area;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t// Cursor pointer on element and all children\n\tcursor: pointer;\n\t& *,\n\tspan {\n\t\tcursor: pointer;\n\t}\n\tborder-radius: math.div($clickable-area, 2);\n\ttransition-property: color, border-color, background-color;\n\ttransition-duration: 0.1s;\n\ttransition-timing-function: linear;\n\n\t// No outline feedback for focus. Handled with a toggled class in js (see data)\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t\t& * {\n\t\t\tcursor: default;\n\t\t}\n\t\topacity: $opacity_disabled;\n\t\t// Gives a wash out effect\n\t\tfilter: saturate($opacity_normal);\n\t}\n\n\t// Default button type\n\tcolor: var(--color-primary-element-light-text);\n\tbackground-color: var(--color-primary-element-light);\n\t&:hover:not(:disabled) {\n\t\tbackground-color: var(--color-primary-element-light-hover);\n\t}\n\n\t// Back to the default color for this button when active\n\t// TODO: add ripple effect\n\t&:active {\n\t\tbackground-color: var(--color-primary-element-light);\n\t}\n\n\t&__wrapper {\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t}\n\n\t&--end &__wrapper {\n\t\tjustify-content: end;\n\t}\n\t&--start &__wrapper {\n\t\tjustify-content: start;\n\t}\n\t&--reverse &__wrapper {\n\t\tflex-direction: row-reverse;\n\t}\n\n\t&--reverse#{&}--icon-and-text {\n\t\tpadding-inline: calc(var(--default-grid-baseline) * 4) var(--default-grid-baseline);\n\t}\n\n\t&__icon {\n\t\theight: $clickable-area;\n\t\twidth: $clickable-area;\n\t\tmin-height: $clickable-area;\n\t\tmin-width: $clickable-area;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n\n\t&__text {\n\t\tfont-weight: bold;\n\t\tmargin-bottom: 1px;\n\t\tpadding: 2px 0;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t// Icon-only button\n\t&--icon-only {\n\t\twidth: $clickable-area !important;\n\t}\n\n\t// Text-only button\n\t&--text-only {\n\t\tpadding: 0 12px;\n\t\t& .button-vue__text {\n\t\t\tmargin-left: 4px;\n\t\t\tmargin-right: 4px;\n\t\t}\n\t}\n\n\t// Icon and text button\n\t&--icon-and-text {\n\t\tpadding-block: 0;\n\t\tpadding-inline: var(--default-grid-baseline) calc(var(--default-grid-baseline) * 4);\n\t}\n\n\t// Wide button spans the whole width of the container\n\t&--wide {\n\t\twidth: 100%;\n\t}\n\n\t&:focus-visible {\n\t\toutline: 2px solid var(--color-main-text) !important;\n\t\tbox-shadow: 0 0 0 4px var(--color-main-background) !important;\n\t\t&.button-vue--vue-tertiary-on-primary {\n\t\t\toutline: 2px solid var(--color-primary-element-text);\n\t\t\tborder-radius: var(--border-radius);\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Button types\n\n\t// Primary\n\t&--vue-primary {\n\t\tbackground-color: var(--color-primary-element);\n\t\tcolor: var(--color-primary-element-text);\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t}\n\t}\n\n\t// Secondary\n\t&--vue-secondary {\n\t\tcolor: var(--color-primary-element-light-text);\n\t\tbackground-color: var(--color-primary-element-light);\n\t\t&:hover:not(:disabled) {\n\t\t\tcolor: var(--color-primary-element-light-text);\n\t\t\tbackground-color: var(--color-primary-element-light-hover);\n\t\t}\n\t}\n\n\t// Tertiary\n\t&--vue-tertiary {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n\n\t// Tertiary, no background\n\t&--vue-tertiary-no-background {\n\t\tcolor: var(--color-main-text);\n\t\tbackground-color: transparent;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Tertiary on primary color (like the header)\n\t&--vue-tertiary-on-primary {\n\t\tcolor: var(--color-primary-element-text);\n\t\tbackground-color: transparent;\n\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: transparent;\n\t\t}\n\t}\n\n\t// Success\n\t&--vue-success {\n\t\tbackground-color: var(--color-success);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-success-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// : add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-success);\n\t\t}\n\t}\n\n\t// Warning\n\t&--vue-warning {\n\t\tbackground-color: var(--color-warning);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-warning-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-warning);\n\t\t}\n\t}\n\n\t// Error\n\t&--vue-error {\n\t\tbackground-color: var(--color-error);\n\t\tcolor: white;\n\t\t&:hover:not(:disabled) {\n\t\t\tbackground-color: var(--color-error-hover);\n\t\t}\n\t\t// Back to the default color for this button when active\n\t\t// TODO: add ripple effect\n\t\t&:active {\n\t\t\tbackground-color: var(--color-error);\n\t\t}\n\t}\n}\n\n</style>\n"],"names":["_sfc_main","alignment","value","h","hasText","hasIcon","_a","_c","_b","renderButton","navigate","isActive","isExactActive","$event"],"mappings":";;AAqbA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAAC,MAAA,CAAA,SAAA,iBAAA,UAAA,kBAAA,OAAA,aAAA,EAAA,SAAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAAC,GAAA;AACA,eAAA,CAAA,WAAA,aAAA,YAAA,0BAAA,uBAAA,SAAA,WAAA,SAAA,EAAA,QAAAA,CAAA,MAAA;AAAA,MACA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAAA,GAAA;AACA,eAAA,CAAA,UAAA,SAAA,QAAA,EAAA,QAAAA,CAAA,MAAA;AAAA,MACA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,MAAA;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;AAAA,IAMA,IAAA;AAAA,MACA,MAAA,CAAA,QAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA,CAAA,kBAAA,OAAA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,WAAA;AAEA,aAAA,KAAA,UACA,YAGA,KAAA,YAAA,MAAA,KAAA,SAAA,YACA,cAEA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,gBAAA;AACA,aAAA,KAAA,UAAA,MAAA,GAAA,EAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,aAAA,KAAA,UAAA,SAAA,GAAA;AAAA,IACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAAC,GAAA;;AACA,UAAAC,IAAA,CAAA,CAAA,KAAA,OAAA,SACAC,KAAAC,IAAA,KAAA,WAAA,gBAAAA,EAAA;AAKA,IAAA,CAAAF,KAAA,CAAA,KAAA,aACA,QAAA;AAAA,MAAA;AAAA,MAAA;AAAA,QACA,OAAAG,KAAAC,IAAA,KAAA,OAAA,YAAA,gBAAAA,EAAA,OAAA,gBAAAD,EAAA;AAAA,QACA,WAAA,KAAA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAGA,UAAAE,IAAA,CAAA,EAAA,UAAAC,GAAA,UAAAC,GAAA,eAAAC,EAAA,IAAA,CAAA,MAAAT;AAAA,MAAA,KAAA,MAAA,CAAA,KAAA,OAAA,WAAA;AAAA,MACA;AAAA,QACA,OAAA;AAAA,UACA;AAAA,UACA;AAAA,YACA,yBAAAE,KAAA,CAAAD;AAAA,YACA,yBAAAA,KAAA,CAAAC;AAAA,YACA,6BAAAA,KAAAD;AAAA,YACA,CAAA,mBAAA,KAAA,QAAA,EAAA,GAAA,KAAA;AAAA,YACA,oBAAA,KAAA;AAAA,YACA,CAAA,eAAA,KAAA,aAAA,EAAA,GAAA,KAAA,kBAAA;AAAA,YACA,uBAAA,KAAA;AAAA,YACA,QAAAO;AAAA,YACA,4BAAAC;AAAA,UACA;AAAA,QACA;AAAA,QACA,OAAA;AAAA,UACA,cAAA,KAAA;AAAA,UACA,gBAAA,KAAA;AAAA,UACA,UAAA,KAAA;AAAA,UACA,MAAA,KAAA,OAAA,OAAA,KAAA;AAAA,UACA,MAAA,KAAA,OAAA,WAAA;AAAA,UACA,MAAA,CAAA,KAAA,MAAA,KAAA,OAAA,KAAA,OAAA;AAAA,UACA,QAAA,CAAA,KAAA,MAAA,KAAA,OAAA,UAAA;AAAA,UACA,KAAA,CAAA,KAAA,MAAA,KAAA,OAAA,iCAAA;AAAA,UACA,UAAA,CAAA,KAAA,MAAA,KAAA,QAAA,KAAA,WAAA,KAAA,WAAA;AAAA,UACA,GAAA,KAAA;AAAA,QACA;AAAA,QACA,IAAA;AAAA,UACA,GAAA,KAAA;AAAA,UACA,OAAA,CAAAC,MAAA;AAEA,YAAA,OAAA,KAAA,WAAA,aAMA,KAAA,MAAA,kBAAA,CAAA,KAAA,OAAA,GAGA,KAAA,MAAA,SAAAA,CAAA,GACAH,KAAA,QAAAA,EAAAG;AAAA,UACA;AAAA,QACA;AAAA,MACA;AAAA,MACA;AAAA,QACAV,EAAA,QAAA,EAAA,OAAA,sBAAA,GAAA;AAAA,UACAE,IACAF;AAAA,YAAA;AAAA,YAAA;AAAA,cACA,OAAA;AAAA,cACA,OAAA;AAAA,gBACA,eAAA;AAAA,cACA;AAAA,YACA;AAAA,YACA,CAAA,KAAA,OAAA,IAAA;AAAA,UACA,IACA;AAAA,UACAC,IAAAD,EAAA,QAAA,EAAA,OAAA,mBAAA,GAAA,CAAA,KAAA,OAAA,OAAA,CAAA,IAAA;AAAA,QACA,CAAA;AAAA,MACA;AAAA,IACA;AAGA,WAAA,KAAA,KACAA,EAAA,eAAA;AAAA,MACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,IAAA,KAAA;AAAA,QACA,OAAA,KAAA;AAAA,MACA;AAAA,MACA,aAAA;AAAA,QACA,SAAAM;AAAA,MACA;AAAA,IACA,CAAA,IAGAA,EAAA;AAAA,EACA;AACA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcButton.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}