@nextcloud/vue 8.11.2 → 8.12.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 (789) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/dist/Components/NcActionButton.cjs +68 -31
  3. package/dist/Components/NcActionButton.cjs.map +1 -1
  4. package/dist/Components/NcActionButton.mjs +68 -35
  5. package/dist/Components/NcActionButton.mjs.map +1 -1
  6. package/dist/Components/NcActionButtonGroup.cjs +2 -2
  7. package/dist/Components/NcActionButtonGroup.mjs +2 -2
  8. package/dist/Components/NcActionCaption.cjs +17 -14
  9. package/dist/Components/NcActionCaption.cjs.map +1 -1
  10. package/dist/Components/NcActionCaption.mjs +17 -15
  11. package/dist/Components/NcActionCaption.mjs.map +1 -1
  12. package/dist/Components/NcActionCheckbox.cjs +42 -24
  13. package/dist/Components/NcActionCheckbox.cjs.map +1 -1
  14. package/dist/Components/NcActionCheckbox.mjs +42 -27
  15. package/dist/Components/NcActionCheckbox.mjs.map +1 -1
  16. package/dist/Components/NcActionInput.cjs +2 -2
  17. package/dist/Components/NcActionInput.mjs +2 -2
  18. package/dist/Components/NcActionLink.cjs +29 -23
  19. package/dist/Components/NcActionLink.cjs.map +1 -1
  20. package/dist/Components/NcActionLink.mjs +29 -25
  21. package/dist/Components/NcActionLink.mjs.map +1 -1
  22. package/dist/Components/NcActionRadio.cjs +38 -25
  23. package/dist/Components/NcActionRadio.cjs.map +1 -1
  24. package/dist/Components/NcActionRadio.mjs +38 -28
  25. package/dist/Components/NcActionRadio.mjs.map +1 -1
  26. package/dist/Components/NcActionRouter.cjs +24 -20
  27. package/dist/Components/NcActionRouter.cjs.map +1 -1
  28. package/dist/Components/NcActionRouter.mjs +24 -22
  29. package/dist/Components/NcActionRouter.mjs.map +1 -1
  30. package/dist/Components/NcActionSeparator.cjs +15 -12
  31. package/dist/Components/NcActionSeparator.cjs.map +1 -1
  32. package/dist/Components/NcActionSeparator.mjs +15 -13
  33. package/dist/Components/NcActionSeparator.mjs.map +1 -1
  34. package/dist/Components/NcActionText.cjs +20 -16
  35. package/dist/Components/NcActionText.cjs.map +1 -1
  36. package/dist/Components/NcActionText.mjs +20 -18
  37. package/dist/Components/NcActionText.mjs.map +1 -1
  38. package/dist/Components/NcActionTextEditable.cjs +40 -29
  39. package/dist/Components/NcActionTextEditable.cjs.map +1 -1
  40. package/dist/Components/NcActionTextEditable.mjs +40 -33
  41. package/dist/Components/NcActionTextEditable.mjs.map +1 -1
  42. package/dist/Components/NcActions.cjs +2 -2
  43. package/dist/Components/NcActions.mjs +2 -2
  44. package/dist/Components/NcAppContent.cjs +2 -2
  45. package/dist/Components/NcAppContent.mjs +2 -2
  46. package/dist/Components/NcAppContentDetails.cjs +14 -11
  47. package/dist/Components/NcAppContentDetails.cjs.map +1 -1
  48. package/dist/Components/NcAppContentDetails.mjs +14 -12
  49. package/dist/Components/NcAppContentDetails.mjs.map +1 -1
  50. package/dist/Components/NcAppContentList.cjs +16 -13
  51. package/dist/Components/NcAppContentList.cjs.map +1 -1
  52. package/dist/Components/NcAppContentList.mjs +16 -14
  53. package/dist/Components/NcAppContentList.mjs.map +1 -1
  54. package/dist/Components/NcAppNavigation.cjs +2 -2
  55. package/dist/Components/NcAppNavigation.mjs +2 -2
  56. package/dist/Components/NcAppNavigationCaption.cjs +2 -2
  57. package/dist/Components/NcAppNavigationCaption.mjs +2 -2
  58. package/dist/Components/NcAppNavigationIconBullet.cjs +24 -18
  59. package/dist/Components/NcAppNavigationIconBullet.cjs.map +1 -1
  60. package/dist/Components/NcAppNavigationIconBullet.mjs +24 -19
  61. package/dist/Components/NcAppNavigationIconBullet.mjs.map +1 -1
  62. package/dist/Components/NcAppNavigationItem.cjs +2 -2
  63. package/dist/Components/NcAppNavigationItem.mjs +2 -2
  64. package/dist/Components/NcAppNavigationList.cjs +15 -12
  65. package/dist/Components/NcAppNavigationList.cjs.map +1 -1
  66. package/dist/Components/NcAppNavigationList.mjs +15 -13
  67. package/dist/Components/NcAppNavigationList.mjs.map +1 -1
  68. package/dist/Components/NcAppNavigationNew.cjs +27 -23
  69. package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
  70. package/dist/Components/NcAppNavigationNew.mjs +27 -25
  71. package/dist/Components/NcAppNavigationNew.mjs.map +1 -1
  72. package/dist/Components/NcAppNavigationNewItem.cjs +2 -2
  73. package/dist/Components/NcAppNavigationNewItem.mjs +2 -2
  74. package/dist/Components/NcAppNavigationSettings.cjs +2 -2
  75. package/dist/Components/NcAppNavigationSettings.mjs +2 -2
  76. package/dist/Components/NcAppNavigationSpacer.cjs +15 -12
  77. package/dist/Components/NcAppNavigationSpacer.cjs.map +1 -1
  78. package/dist/Components/NcAppNavigationSpacer.mjs +15 -13
  79. package/dist/Components/NcAppNavigationSpacer.mjs.map +1 -1
  80. package/dist/Components/NcAppNavigationToggle.cjs +4 -4
  81. package/dist/Components/NcAppNavigationToggle.mjs +3 -3
  82. package/dist/Components/NcAppSettingsDialog.cjs +2 -2
  83. package/dist/Components/NcAppSettingsDialog.mjs +2 -2
  84. package/dist/Components/NcAppSettingsSection.cjs +29 -24
  85. package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
  86. package/dist/Components/NcAppSettingsSection.mjs +29 -25
  87. package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
  88. package/dist/Components/NcAppSidebar.cjs +2 -2
  89. package/dist/Components/NcAppSidebar.mjs +2 -2
  90. package/dist/Components/NcAppSidebarTab.cjs +24 -18
  91. package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
  92. package/dist/Components/NcAppSidebarTab.mjs +24 -19
  93. package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
  94. package/dist/Components/NcAvatar.cjs +2 -2
  95. package/dist/Components/NcAvatar.mjs +2 -2
  96. package/dist/Components/NcBreadcrumb.cjs +2 -2
  97. package/dist/Components/NcBreadcrumb.mjs +2 -2
  98. package/dist/Components/NcBreadcrumbs.cjs +2 -2
  99. package/dist/Components/NcBreadcrumbs.mjs +2 -2
  100. package/dist/Components/NcButton.cjs +80 -59
  101. package/dist/Components/NcButton.cjs.map +1 -1
  102. package/dist/Components/NcButton.mjs +80 -60
  103. package/dist/Components/NcButton.mjs.map +1 -1
  104. package/dist/Components/NcCheckboxRadioSwitch.cjs +2 -2
  105. package/dist/Components/NcCheckboxRadioSwitch.mjs +2 -2
  106. package/dist/Components/NcColorPicker.cjs +2 -2
  107. package/dist/Components/NcColorPicker.mjs +2 -2
  108. package/dist/Components/NcContent.cjs +2 -2
  109. package/dist/Components/NcContent.mjs +2 -2
  110. package/dist/Components/NcCounterBubble.cjs +18 -15
  111. package/dist/Components/NcCounterBubble.cjs.map +1 -1
  112. package/dist/Components/NcCounterBubble.mjs +18 -16
  113. package/dist/Components/NcCounterBubble.mjs.map +1 -1
  114. package/dist/Components/NcDashboardWidget.cjs +2 -2
  115. package/dist/Components/NcDashboardWidget.mjs +2 -2
  116. package/dist/Components/NcDashboardWidgetItem.cjs +2 -2
  117. package/dist/Components/NcDashboardWidgetItem.mjs +2 -2
  118. package/dist/Components/NcDateTime.cjs +2 -2
  119. package/dist/Components/NcDateTime.mjs +2 -2
  120. package/dist/Components/NcDateTimePicker.cjs +142 -101
  121. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  122. package/dist/Components/NcDateTimePicker.mjs +140 -108
  123. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  124. package/dist/Components/NcDateTimePickerNative.cjs +72 -52
  125. package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
  126. package/dist/Components/NcDateTimePickerNative.mjs +72 -54
  127. package/dist/Components/NcDateTimePickerNative.mjs.map +1 -1
  128. package/dist/Components/NcDialog.cjs +2 -2
  129. package/dist/Components/NcDialog.mjs +2 -2
  130. package/dist/Components/NcDialogButton.cjs +2 -2
  131. package/dist/Components/NcDialogButton.mjs +2 -2
  132. package/dist/Components/NcEllipsisedOption.cjs +35 -20
  133. package/dist/Components/NcEllipsisedOption.cjs.map +1 -1
  134. package/dist/Components/NcEllipsisedOption.mjs +35 -22
  135. package/dist/Components/NcEllipsisedOption.mjs.map +1 -1
  136. package/dist/Components/NcEmojiPicker.cjs +2 -2
  137. package/dist/Components/NcEmojiPicker.mjs +2 -2
  138. package/dist/Components/NcEmptyContent.cjs +22 -19
  139. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  140. package/dist/Components/NcEmptyContent.mjs +22 -20
  141. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  142. package/dist/Components/NcGuestContent.cjs +15 -12
  143. package/dist/Components/NcGuestContent.cjs.map +1 -1
  144. package/dist/Components/NcGuestContent.mjs +15 -13
  145. package/dist/Components/NcGuestContent.mjs.map +1 -1
  146. package/dist/Components/NcHeaderMenu.cjs +2 -2
  147. package/dist/Components/NcHeaderMenu.mjs +2 -2
  148. package/dist/Components/NcHighlight.cjs +2 -2
  149. package/dist/Components/NcHighlight.mjs +2 -2
  150. package/dist/Components/NcIconSvgWrapper.cjs +2 -2
  151. package/dist/Components/NcIconSvgWrapper.mjs +2 -2
  152. package/dist/Components/NcInputField.cjs +68 -52
  153. package/dist/Components/NcInputField.cjs.map +1 -1
  154. package/dist/Components/NcInputField.mjs +68 -57
  155. package/dist/Components/NcInputField.mjs.map +1 -1
  156. package/dist/Components/NcListItem.cjs +2 -2
  157. package/dist/Components/NcListItem.mjs +2 -2
  158. package/dist/Components/NcListItemIcon.cjs +2 -2
  159. package/dist/Components/NcListItemIcon.mjs +2 -2
  160. package/dist/Components/NcLoadingIcon.cjs +24 -16
  161. package/dist/Components/NcLoadingIcon.cjs.map +1 -1
  162. package/dist/Components/NcLoadingIcon.mjs +24 -17
  163. package/dist/Components/NcLoadingIcon.mjs.map +1 -1
  164. package/dist/Components/NcModal.cjs +257 -146
  165. package/dist/Components/NcModal.cjs.map +1 -1
  166. package/dist/Components/NcModal.mjs +257 -156
  167. package/dist/Components/NcModal.mjs.map +1 -1
  168. package/dist/Components/NcNoteCard.cjs +80 -65
  169. package/dist/Components/NcNoteCard.cjs.map +1 -1
  170. package/dist/Components/NcNoteCard.mjs +80 -66
  171. package/dist/Components/NcNoteCard.mjs.map +1 -1
  172. package/dist/Components/NcPasswordField.cjs +2 -2
  173. package/dist/Components/NcPasswordField.mjs +2 -2
  174. package/dist/Components/NcPopover.cjs +2 -2
  175. package/dist/Components/NcPopover.mjs +2 -2
  176. package/dist/Components/NcProgressBar.cjs +2 -2
  177. package/dist/Components/NcProgressBar.mjs +2 -2
  178. package/dist/Components/NcRelatedResourcesPanel.cjs +2 -2
  179. package/dist/Components/NcRelatedResourcesPanel.mjs +2 -2
  180. package/dist/Components/NcRichContenteditable.cjs +6 -5
  181. package/dist/Components/NcRichContenteditable.cjs.map +1 -1
  182. package/dist/Components/NcRichContenteditable.mjs +5 -5
  183. package/dist/Components/NcRichText.cjs +24 -22
  184. package/dist/Components/NcRichText.cjs.map +1 -1
  185. package/dist/Components/NcRichText.mjs +24 -24
  186. package/dist/Components/NcSavingIndicatorIcon.cjs +2 -2
  187. package/dist/Components/NcSavingIndicatorIcon.mjs +2 -2
  188. package/dist/Components/NcSelect.cjs +2 -2
  189. package/dist/Components/NcSelect.mjs +2 -2
  190. package/dist/Components/NcSelectTags.cjs +2 -2
  191. package/dist/Components/NcSelectTags.mjs +2 -2
  192. package/dist/Components/NcSettingsInputText.cjs +2 -2
  193. package/dist/Components/NcSettingsInputText.mjs +2 -2
  194. package/dist/Components/NcSettingsSection.cjs +2 -2
  195. package/dist/Components/NcSettingsSection.mjs +2 -2
  196. package/dist/Components/NcSettingsSelectGroup.cjs +4 -4
  197. package/dist/Components/NcSettingsSelectGroup.mjs +3 -3
  198. package/dist/Components/NcTextArea.cjs +51 -36
  199. package/dist/Components/NcTextArea.cjs.map +1 -1
  200. package/dist/Components/NcTextArea.mjs +51 -40
  201. package/dist/Components/NcTextArea.mjs.map +1 -1
  202. package/dist/Components/NcTextField.cjs +2 -2
  203. package/dist/Components/NcTextField.mjs +2 -2
  204. package/dist/Components/NcTimezonePicker.cjs +2 -2
  205. package/dist/Components/NcTimezonePicker.mjs +2 -2
  206. package/dist/Components/NcUserBubble.cjs +2 -2
  207. package/dist/Components/NcUserBubble.mjs +2 -2
  208. package/dist/Components/NcUserStatusIcon.cjs +2 -2
  209. package/dist/Components/NcUserStatusIcon.mjs +2 -2
  210. package/dist/Components/NcVNodes.cjs +15 -12
  211. package/dist/Components/NcVNodes.cjs.map +1 -1
  212. package/dist/Components/NcVNodes.mjs +15 -13
  213. package/dist/Components/NcVNodes.mjs.map +1 -1
  214. package/dist/Composables/useIsFullscreen.cjs +9 -8
  215. package/dist/Composables/useIsFullscreen.cjs.map +1 -1
  216. package/dist/Composables/useIsFullscreen.mjs +9 -8
  217. package/dist/Composables/useIsFullscreen.mjs.map +1 -1
  218. package/dist/Composables/useIsMobile.cjs +19 -14
  219. package/dist/Composables/useIsMobile.cjs.map +1 -1
  220. package/dist/Composables/useIsMobile.mjs +19 -14
  221. package/dist/Composables/useIsMobile.mjs.map +1 -1
  222. package/dist/Directives/Focus.cjs +6 -6
  223. package/dist/Directives/Focus.cjs.map +1 -1
  224. package/dist/Directives/Focus.mjs +5 -5
  225. package/dist/Directives/Focus.mjs.map +1 -1
  226. package/dist/Directives/Linkify.cjs +9 -6
  227. package/dist/Directives/Linkify.cjs.map +1 -1
  228. package/dist/Directives/Linkify.mjs +8 -6
  229. package/dist/Directives/Linkify.mjs.map +1 -1
  230. package/dist/Directives/Tooltip.cjs +11 -11
  231. package/dist/Directives/Tooltip.cjs.map +1 -1
  232. package/dist/Directives/Tooltip.mjs +9 -9
  233. package/dist/Directives/Tooltip.mjs.map +1 -1
  234. package/dist/Functions/a11y.cjs +33 -0
  235. package/dist/Functions/a11y.cjs.map +1 -0
  236. package/dist/Functions/a11y.mjs +33 -0
  237. package/dist/Functions/a11y.mjs.map +1 -0
  238. package/dist/Functions/emoji.cjs +8 -0
  239. package/dist/Functions/emoji.cjs.map +1 -0
  240. package/dist/Functions/emoji.mjs +8 -0
  241. package/dist/Functions/emoji.mjs.map +1 -0
  242. package/dist/Functions/reference.cjs +16 -15
  243. package/dist/Functions/reference.cjs.map +1 -1
  244. package/dist/Functions/reference.mjs +16 -16
  245. package/dist/Functions/registerReference.cjs +11 -11
  246. package/dist/Functions/registerReference.mjs +10 -10
  247. package/dist/Functions/usernameToColor.cjs +2 -2
  248. package/dist/Functions/usernameToColor.mjs +2 -2
  249. package/dist/Mixins/clickOutsideOptions.cjs +4 -3
  250. package/dist/Mixins/clickOutsideOptions.cjs.map +1 -1
  251. package/dist/Mixins/clickOutsideOptions.mjs +4 -3
  252. package/dist/Mixins/clickOutsideOptions.mjs.map +1 -1
  253. package/dist/Mixins/isFullscreen.cjs +4 -4
  254. package/dist/Mixins/isFullscreen.cjs.map +1 -1
  255. package/dist/Mixins/isFullscreen.mjs +4 -4
  256. package/dist/Mixins/isFullscreen.mjs.map +1 -1
  257. package/dist/Mixins/isMobile.cjs +4 -4
  258. package/dist/Mixins/isMobile.cjs.map +1 -1
  259. package/dist/Mixins/isMobile.mjs +4 -4
  260. package/dist/Mixins/isMobile.mjs.map +1 -1
  261. package/dist/Mixins/richEditor.cjs +6 -6
  262. package/dist/Mixins/richEditor.mjs +5 -5
  263. package/dist/assets/{NcActionButton-Cs5kVVAD.css → NcActionButton-D08gPtwM.css} +27 -22
  264. package/dist/assets/{NcActionButtonGroup-ChehtUip.css → NcActionButtonGroup-CvloX35s.css} +5 -4
  265. package/dist/assets/{NcActionCaption-Bp8mrIk7.css → NcActionCaption-sfcjBZnu.css} +4 -2
  266. package/dist/assets/{NcActionCheckbox-Do--WvUT.css → NcActionCheckbox-DTlI7y7p.css} +13 -9
  267. package/dist/assets/{NcActionInput-8F2WF3yH.css → NcActionInput-B8l22cnm.css} +44 -16
  268. package/dist/assets/{NcActionLink-DN3NCDC0.css → NcActionLink-ufhOZDI9.css} +19 -16
  269. package/dist/assets/{NcActionRadio-B46v1Kn4.css → NcActionRadio-syUIsm9B.css} +13 -9
  270. package/dist/assets/{NcActionRouter-wVMPq1gi.css → NcActionRouter-BbTCI4sn.css} +12 -10
  271. package/dist/assets/{NcActionSeparator-CX3zFZuI.css → NcActionSeparator-CB59y4di.css} +4 -1
  272. package/dist/assets/{NcActionText-YljCzD9Q.css → NcActionText-Ceh88fy8.css} +12 -10
  273. package/dist/assets/{NcActionTextEditable-mti5YQN1.css → NcActionTextEditable-BoxziChR.css} +52 -24
  274. package/dist/assets/{NcActions-CiiQkX9v.css → NcActions-N_Y6Nzew.css} +40 -13
  275. package/dist/assets/{NcAppContent-aWiDWWeq.css → NcAppContent-C08OMmgh.css} +42 -17
  276. package/dist/assets/{NcAppNavigation-wkQJnaLW.css → NcAppNavigation-DlFgsfe2.css} +44 -11
  277. package/dist/assets/{NcAppNavigationCaption-jV1y8HQ1.css → NcAppNavigationCaption-DnApJ5OW.css} +13 -9
  278. package/dist/assets/{NcAppNavigationIconBullet-1_cBEwu8.css → NcAppNavigationIconBullet-B8q3pUL5.css} +5 -2
  279. package/dist/assets/{NcAppNavigationItem-hYyNqvah.css → NcAppNavigationItem-OJEHVyVk.css} +70 -48
  280. package/dist/assets/{NcAppNavigationList-CUnaMQQD.css → NcAppNavigationList-DnIxrbVX.css} +4 -1
  281. package/dist/assets/{NcAppNavigationNew-COjJ3vwU.css → NcAppNavigationNew-BPZ1O8Xm.css} +6 -1
  282. package/dist/assets/{NcAppNavigationNewItem-C574fgtB.css → NcAppNavigationNewItem-DF3nldsK.css} +26 -28
  283. package/dist/assets/{NcAppNavigationSettings-nH_pGlKc.css → NcAppNavigationSettings-BCkvRAy8.css} +11 -6
  284. package/dist/assets/{NcAppNavigationSpacer-C5p-33VT.css → NcAppNavigationSpacer-Cb4q1zb5.css} +4 -2
  285. package/dist/assets/{NcAppNavigationToggle-De8wq0JA.css → NcAppNavigationToggle-0yhQ9xse.css} +4 -1
  286. package/dist/assets/{NcAppSettingsDialog-DR46jcRG.css → NcAppSettingsDialog-CajWZJNV.css} +7 -5
  287. package/dist/assets/{NcAppSettingsSection-BqF92GLH.css → NcAppSettingsSection-BDvzWKkd.css} +5 -2
  288. package/dist/assets/{NcAppSidebar-DlVjDHcd.css → NcAppSidebar-DixS4RLm.css} +149 -53
  289. package/dist/assets/{NcAppSidebarTab-XLBsrGqg.css → NcAppSidebarTab-CBFET-hQ.css} +5 -2
  290. package/dist/assets/{NcAvatar-BozWHt1s.css → NcAvatar-C2EFGp-3.css} +30 -31
  291. package/dist/assets/{NcBreadcrumb-eyloXKCC.css → NcBreadcrumb-AES5eSWo.css} +8 -6
  292. package/dist/assets/{NcBreadcrumbs-E-TglkuV.css → NcBreadcrumbs-tYrp1DVs.css} +5 -3
  293. package/dist/assets/{NcButton-DhaPcomf.css → NcButton-DZS360ia.css} +56 -56
  294. package/dist/assets/{NcCheckboxRadioSwitch-CaAqi0Jt.css → NcCheckboxRadioSwitch-DArK1Q95.css} +76 -53
  295. package/dist/assets/{NcColorPicker-CNboc7FY.css → NcColorPicker-CzKZjMxY.css} +38 -33
  296. package/dist/assets/{NcContent-tZHbeX2L.css → NcContent-Cuv2HvFH.css} +29 -3
  297. package/dist/assets/{NcCounterBubble-CuCSao3j.css → NcCounterBubble-CWi_P1Tb.css} +6 -3
  298. package/dist/assets/{NcDashboardWidget-DTV15Fb1.css → NcDashboardWidget-CGOA8X60.css} +7 -3
  299. package/dist/assets/{NcDashboardWidgetItem-4v77FH89.css → NcDashboardWidgetItem-BevETFRF.css} +18 -3
  300. package/dist/assets/{NcDateTimePicker-q_BLnhHU.css → NcDateTimePicker-3FfsWOh0.css} +144 -163
  301. package/dist/assets/{NcDateTimePickerNative-DnLJu29_.css → NcDateTimePickerNative-CV_VuzvQ.css} +7 -4
  302. package/dist/assets/{NcDialog-DEKSpcnR.css → NcDialog-DFMxsFp5.css} +53 -20
  303. package/dist/assets/{NcEllipsisedOption-B6gjXSS9.css → NcEllipsisedOption-ClDzkIX6.css} +7 -6
  304. package/dist/assets/{NcEmojiPicker-B-4WNYcx.css → NcEmojiPicker-XL3oUsqE.css} +79 -50
  305. package/dist/assets/{NcEmptyContent-ClLPsXo5.css → NcEmptyContent-BY1-Gge4.css} +16 -12
  306. package/dist/assets/{NcGuestContent-CYYZPMjb.css → NcGuestContent-CeRLfUEi.css} +28 -1
  307. package/dist/assets/{NcHeaderMenu-BKufmJd0.css → NcHeaderMenu-N5y8yFGd.css} +7 -7
  308. package/dist/assets/{NcIconSvgWrapper-oui2KPBT.css → NcIconSvgWrapper-DF9sBD2g.css} +12 -9
  309. package/dist/assets/{NcInputConfirmCancel-CSzzPx0i.css → NcInputConfirmCancel-UcHrm0al.css} +7 -5
  310. package/dist/assets/{NcInputField-vYuV3-IY.css → NcInputField-CXoTqF9T.css} +16 -33
  311. package/dist/assets/{NcListItem-BIFTbr17.css → NcListItem-DMYcn1cc.css} +11 -21
  312. package/dist/assets/{NcListItemIcon-9Dazpmpd.css → NcListItemIcon-CuPMgXoB.css} +17 -19
  313. package/dist/assets/{NcLoadingIcon-CFmftMkz.css → NcLoadingIcon-gxK0ujO0.css} +5 -2
  314. package/dist/assets/{NcMentionBubble-7PQ8wEko.css → NcMentionBubble-DmzU72Mw.css} +5 -2
  315. package/dist/assets/{NcModal-CwgrmxSg.css → NcModal-Cof88czY.css} +42 -38
  316. package/dist/assets/{NcNoteCard-B_Q1mnCM.css → NcNoteCard-e7-Bxio8.css} +10 -6
  317. package/dist/assets/{NcPopover-wrgZy49g.css → NcPopover-BwI1hPzy.css} +4 -1
  318. package/dist/assets/{NcProgressBar-DDj4bmBB.css → NcProgressBar-D5VftcJm.css} +4 -1
  319. package/dist/assets/{NcRelatedResourcesPanel-D6K7OQFJ.css → NcRelatedResourcesPanel-BrXxbjgR.css} +60 -8
  320. package/dist/assets/{NcRichContenteditable-BQ2-fqnd.css → NcRichContenteditable-C-eZyVQM.css} +60 -22
  321. package/dist/assets/NcRichText-Cdp_2wEm.css +240 -0
  322. package/dist/assets/{NcSelect-4aBmXHhA.css → NcSelect-Fmyu7qyl.css} +34 -13
  323. package/dist/assets/{NcSettingsInputText-w-LprdjK.css → NcSettingsInputText-CU65Coab.css} +4 -1
  324. package/dist/assets/{NcSettingsSection-8RabR54v.css → NcSettingsSection-TX28tYCG.css} +16 -14
  325. package/dist/assets/{NcSettingsSelectGroup-D8mlvzIT.css → NcSettingsSelectGroup-CPauLI-o.css} +4 -1
  326. package/dist/assets/{NcTextArea-DitXCroY.css → NcTextArea-XCi8a16Y.css} +13 -28
  327. package/dist/assets/{NcUserBubble-COPMjmKa.css → NcUserBubble-D5ieZC-f.css} +7 -4
  328. package/dist/assets/{NcUserStatusIcon-Dra7jf_o.css → NcUserStatusIcon-BcLArDqV.css} +4 -1
  329. package/dist/assets/{Tooltip-DA4si7PR.css → Tooltip-jHgt4m-W.css} +19 -3
  330. package/dist/assets/referencePickerModal-BaGbKZky.css +539 -0
  331. package/dist/chunks/AlertCircleOutline-BzttElgq.mjs +39 -0
  332. package/dist/chunks/{AlertCircleOutline-DHFN4OkX.cjs.map → AlertCircleOutline-BzttElgq.mjs.map} +1 -1
  333. package/dist/chunks/AlertCircleOutline-Cb0gAiDw.cjs +38 -0
  334. package/dist/chunks/{AlertCircleOutline-U_bhL30C.mjs.map → AlertCircleOutline-Cb0gAiDw.cjs.map} +1 -1
  335. package/dist/chunks/ArrowLeft-B9iGweTd.mjs +39 -0
  336. package/dist/chunks/{ArrowLeft-CjNnGIlF.cjs.map → ArrowLeft-B9iGweTd.mjs.map} +1 -1
  337. package/dist/chunks/ArrowLeft-BhNmMdMz.cjs +38 -0
  338. package/dist/chunks/{ArrowLeft-kklNBL9z.mjs.map → ArrowLeft-BhNmMdMz.cjs.map} +1 -1
  339. package/dist/chunks/ArrowRight-Clf455e1.mjs +39 -0
  340. package/dist/chunks/{ArrowRight-CxzzJJQ6.cjs.map → ArrowRight-Clf455e1.mjs.map} +1 -1
  341. package/dist/chunks/ArrowRight-DaYrccVG.cjs +38 -0
  342. package/dist/chunks/{ArrowRight-C3BxTDjF.mjs.map → ArrowRight-DaYrccVG.cjs.map} +1 -1
  343. package/dist/chunks/Check-DZc7keoa.cjs +38 -0
  344. package/dist/chunks/{Check-CVn5nytg.cjs.map → Check-DZc7keoa.cjs.map} +1 -1
  345. package/dist/chunks/Check-PawIlCwa.mjs +39 -0
  346. package/dist/chunks/{Check-CRLmJNGG.mjs.map → Check-PawIlCwa.mjs.map} +1 -1
  347. package/dist/chunks/ChevronDown-CF9m1o8_.cjs +38 -0
  348. package/dist/chunks/{ChevronDown-DQPox_nl.cjs.map → ChevronDown-CF9m1o8_.cjs.map} +1 -1
  349. package/dist/chunks/ChevronDown-PedEroXo.mjs +39 -0
  350. package/dist/chunks/{ChevronDown-HHJdUMN4.mjs.map → ChevronDown-PedEroXo.mjs.map} +1 -1
  351. package/dist/chunks/ChevronRight-BNa7yMja.mjs +39 -0
  352. package/dist/chunks/{ChevronRight-BAJhNawb.cjs.map → ChevronRight-BNa7yMja.mjs.map} +1 -1
  353. package/dist/chunks/ChevronRight-DVw6mR11.cjs +38 -0
  354. package/dist/chunks/{ChevronRight-DL3e8bjj.mjs.map → ChevronRight-DVw6mR11.cjs.map} +1 -1
  355. package/dist/chunks/ChevronUp-CTOKWYlC.cjs +38 -0
  356. package/dist/chunks/{ChevronUp-kmHRpe7H.cjs.map → ChevronUp-CTOKWYlC.cjs.map} +1 -1
  357. package/dist/chunks/ChevronUp-DGLTg_nO.mjs +39 -0
  358. package/dist/chunks/{ChevronUp-B6TIgl1a.mjs.map → ChevronUp-DGLTg_nO.mjs.map} +1 -1
  359. package/dist/chunks/Close-1V1F2F-M.mjs +39 -0
  360. package/dist/chunks/{Close-DBfrdXMw.cjs.map → Close-1V1F2F-M.mjs.map} +1 -1
  361. package/dist/chunks/Close-C2VrgKj3.cjs +38 -0
  362. package/dist/chunks/{Close-BtO5TPBO.mjs.map → Close-C2VrgKj3.cjs.map} +1 -1
  363. package/dist/chunks/DotsHorizontal-C0STD_HU.mjs +39 -0
  364. package/dist/chunks/{DotsHorizontal-B8kTqpHe.cjs.map → DotsHorizontal-C0STD_HU.mjs.map} +1 -1
  365. package/dist/chunks/DotsHorizontal-Cjw3-45t.cjs +38 -0
  366. package/dist/chunks/{DotsHorizontal-DfVgEXgz.mjs.map → DotsHorizontal-Cjw3-45t.cjs.map} +1 -1
  367. package/dist/chunks/GenColors-CAUl-IDP.cjs +160 -0
  368. package/dist/chunks/{GenColors-Dceu3ds2.mjs.map → GenColors-CAUl-IDP.cjs.map} +1 -1
  369. package/dist/chunks/{GenColors-Dceu3ds2.mjs → GenColors-DcjtQMk3.mjs} +69 -50
  370. package/dist/chunks/{GenColors-hkqGpnOK.cjs.map → GenColors-DcjtQMk3.mjs.map} +1 -1
  371. package/dist/chunks/{GenRandomId-BW3iYFf9.mjs → GenRandomId-CXkjMlAT.mjs} +4 -2
  372. package/dist/chunks/{GenRandomId-BW3iYFf9.mjs.map → GenRandomId-CXkjMlAT.mjs.map} +1 -1
  373. package/dist/chunks/{GenRandomId-B2O1GMbH.cjs → GenRandomId-kBCcgMJd.cjs} +4 -2
  374. package/dist/chunks/{GenRandomId-B2O1GMbH.cjs.map → GenRandomId-kBCcgMJd.cjs.map} +1 -1
  375. package/dist/chunks/{Linkify-BaDLLFxP.mjs → Linkify-BBPJHBma.mjs} +12 -10
  376. package/dist/chunks/{Linkify-Dola0NBa.cjs.map → Linkify-BBPJHBma.mjs.map} +1 -1
  377. package/dist/chunks/{Linkify-Dola0NBa.cjs → Linkify-CIO279AG.cjs} +14 -10
  378. package/dist/chunks/{Linkify-BaDLLFxP.mjs.map → Linkify-CIO279AG.cjs.map} +1 -1
  379. package/dist/chunks/NcActionButtonGroup-D650-6zv.mjs +53 -0
  380. package/dist/chunks/{NcActionButtonGroup-DU1taycQ.mjs.map → NcActionButtonGroup-D650-6zv.mjs.map} +1 -1
  381. package/dist/chunks/NcActionButtonGroup-D7hycpXY.cjs +52 -0
  382. package/dist/chunks/{NcActionButtonGroup-B1XhnIBl.cjs.map → NcActionButtonGroup-D7hycpXY.cjs.map} +1 -1
  383. package/dist/chunks/NcActionInput-BqG7gSLn.mjs +254 -0
  384. package/dist/chunks/{NcActionInput-53RB9uQe.mjs.map → NcActionInput-BqG7gSLn.mjs.map} +1 -1
  385. package/dist/chunks/NcActionInput-CHucaM0V.cjs +253 -0
  386. package/dist/chunks/{NcActionInput-N2wrvq5K.cjs.map → NcActionInput-CHucaM0V.cjs.map} +1 -1
  387. package/dist/chunks/NcActions-CocYka0Y.mjs +845 -0
  388. package/dist/chunks/NcActions-CocYka0Y.mjs.map +1 -0
  389. package/dist/chunks/NcActions-JX6wbAVA.cjs +846 -0
  390. package/dist/chunks/NcActions-JX6wbAVA.cjs.map +1 -0
  391. package/dist/chunks/NcAppContent-CkO1Y93z.cjs +303 -0
  392. package/dist/chunks/{NcAppContent-BDhK1rUf.mjs.map → NcAppContent-CkO1Y93z.cjs.map} +1 -1
  393. package/dist/chunks/NcAppContent-wlhVbyg0.mjs +304 -0
  394. package/dist/chunks/{NcAppContent-Be1m1O_W.cjs.map → NcAppContent-wlhVbyg0.mjs.map} +1 -1
  395. package/dist/chunks/NcAppNavigation-BKiDVBw7.mjs +142 -0
  396. package/dist/chunks/{NcAppNavigation-DKUnWfen.cjs.map → NcAppNavigation-BKiDVBw7.mjs.map} +1 -1
  397. package/dist/chunks/NcAppNavigation-Du3J8BTm.cjs +143 -0
  398. package/dist/chunks/{NcAppNavigation-CElLRpH-.mjs.map → NcAppNavigation-Du3J8BTm.cjs.map} +1 -1
  399. package/dist/chunks/NcAppNavigationCaption-BoN0P7tD.cjs +78 -0
  400. package/dist/chunks/NcAppNavigationCaption-BoN0P7tD.cjs.map +1 -0
  401. package/dist/chunks/NcAppNavigationCaption-CKTQZ_u_.mjs +79 -0
  402. package/dist/chunks/NcAppNavigationCaption-CKTQZ_u_.mjs.map +1 -0
  403. package/dist/chunks/NcAppNavigationItem-D_lh17am.cjs +521 -0
  404. package/dist/chunks/NcAppNavigationItem-D_lh17am.cjs.map +1 -0
  405. package/dist/chunks/NcAppNavigationItem-qe8jnLow.mjs +522 -0
  406. package/dist/chunks/NcAppNavigationItem-qe8jnLow.mjs.map +1 -0
  407. package/dist/chunks/NcAppNavigationNewItem-B107Beoc.mjs +98 -0
  408. package/dist/chunks/{NcAppNavigationNewItem-CN3vYnc_.mjs.map → NcAppNavigationNewItem-B107Beoc.mjs.map} +1 -1
  409. package/dist/chunks/NcAppNavigationNewItem-DyxVXE5t.cjs +97 -0
  410. package/dist/chunks/{NcAppNavigationNewItem-5B4-U2NI.cjs.map → NcAppNavigationNewItem-DyxVXE5t.cjs.map} +1 -1
  411. package/dist/chunks/NcAppNavigationSettings-CmP_tXFm.cjs +110 -0
  412. package/dist/chunks/{NcAppNavigationSettings-LmpAoM-x.mjs.map → NcAppNavigationSettings-CmP_tXFm.cjs.map} +1 -1
  413. package/dist/chunks/NcAppNavigationSettings-DZ1-Sbdz.mjs +111 -0
  414. package/dist/chunks/{NcAppNavigationSettings-Cnr4jYzW.cjs.map → NcAppNavigationSettings-DZ1-Sbdz.mjs.map} +1 -1
  415. package/dist/chunks/NcAppNavigationToggle-hmEUqxbP.cjs +129 -0
  416. package/dist/chunks/{NcAppNavigationToggle-D0oeWL17.mjs.map → NcAppNavigationToggle-hmEUqxbP.cjs.map} +1 -1
  417. package/dist/chunks/NcAppNavigationToggle-zCGgvNDT.mjs +130 -0
  418. package/dist/chunks/{NcAppNavigationToggle-B5XmO21v.cjs.map → NcAppNavigationToggle-zCGgvNDT.mjs.map} +1 -1
  419. package/dist/chunks/NcAppSettingsDialog-D9cNYQ8b.mjs +230 -0
  420. package/dist/chunks/{NcAppSettingsDialog-BLOgrVCz.mjs.map → NcAppSettingsDialog-D9cNYQ8b.mjs.map} +1 -1
  421. package/dist/chunks/NcAppSettingsDialog-YqNhco1P.cjs +232 -0
  422. package/dist/chunks/{NcAppSettingsDialog-B6crPJ6a.cjs.map → NcAppSettingsDialog-YqNhco1P.cjs.map} +1 -1
  423. package/dist/chunks/NcAppSidebar-CQWODfsy.mjs +792 -0
  424. package/dist/chunks/NcAppSidebar-CQWODfsy.mjs.map +1 -0
  425. package/dist/chunks/NcAppSidebar-J15zHyfq.cjs +791 -0
  426. package/dist/chunks/NcAppSidebar-J15zHyfq.cjs.map +1 -0
  427. package/dist/chunks/NcAvatar-CX3OX2C4.mjs +594 -0
  428. package/dist/chunks/NcAvatar-CX3OX2C4.mjs.map +1 -0
  429. package/dist/chunks/NcAvatar-CYzikYku.cjs +595 -0
  430. package/dist/chunks/NcAvatar-CYzikYku.cjs.map +1 -0
  431. package/dist/chunks/NcBreadcrumb-DytGDsr8.mjs +206 -0
  432. package/dist/chunks/{NcBreadcrumb-BxCf2hEA.mjs.map → NcBreadcrumb-DytGDsr8.mjs.map} +1 -1
  433. package/dist/chunks/NcBreadcrumb-jMJw2OQJ.cjs +205 -0
  434. package/dist/chunks/{NcBreadcrumb-BRpLGeLr.cjs.map → NcBreadcrumb-jMJw2OQJ.cjs.map} +1 -1
  435. package/dist/chunks/NcBreadcrumbs-BqFPBZ-h.mjs +525 -0
  436. package/dist/chunks/{NcBreadcrumbs-BmK-6Q-n.mjs.map → NcBreadcrumbs-BqFPBZ-h.mjs.map} +1 -1
  437. package/dist/chunks/NcBreadcrumbs-CzObAKB-.cjs +527 -0
  438. package/dist/chunks/{NcBreadcrumbs-BKPXzHC1.cjs.map → NcBreadcrumbs-CzObAKB-.cjs.map} +1 -1
  439. package/dist/chunks/NcCheckboxRadioSwitch-CIHl8lnP.cjs +685 -0
  440. package/dist/chunks/NcCheckboxRadioSwitch-CIHl8lnP.cjs.map +1 -0
  441. package/dist/chunks/NcCheckboxRadioSwitch-CpupDtee.mjs +686 -0
  442. package/dist/chunks/NcCheckboxRadioSwitch-CpupDtee.mjs.map +1 -0
  443. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-CAFQAKcK.mjs +3 -0
  444. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-CAFQAKcK.mjs.map +1 -0
  445. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-D2wGnjg7.cjs +4 -0
  446. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_6d6e6a47_lang-D2wGnjg7.cjs.map +1 -0
  447. package/dist/chunks/NcColorPicker-BEs2B-HB.mjs +191 -0
  448. package/dist/chunks/NcColorPicker-BEs2B-HB.mjs.map +1 -0
  449. package/dist/chunks/NcColorPicker-KrvDMhej.cjs +190 -0
  450. package/dist/chunks/NcColorPicker-KrvDMhej.cjs.map +1 -0
  451. package/dist/chunks/NcContent-CcrNrpVC.mjs +104 -0
  452. package/dist/chunks/{NcContent-BPA0KfuT.mjs.map → NcContent-CcrNrpVC.mjs.map} +1 -1
  453. package/dist/chunks/NcContent-DChC6Khv.cjs +103 -0
  454. package/dist/chunks/{NcContent-DbFAEdX_.cjs.map → NcContent-DChC6Khv.cjs.map} +1 -1
  455. package/dist/chunks/NcDashboardWidget-BvNtltPU.cjs +147 -0
  456. package/dist/chunks/{NcDashboardWidget-2-nW7dII.mjs.map → NcDashboardWidget-BvNtltPU.cjs.map} +1 -1
  457. package/dist/chunks/NcDashboardWidget-Da715DSB.mjs +148 -0
  458. package/dist/chunks/{NcDashboardWidget-auMQiAFt.cjs.map → NcDashboardWidget-Da715DSB.mjs.map} +1 -1
  459. package/dist/chunks/NcDashboardWidgetItem-BkJTg3kj.mjs +151 -0
  460. package/dist/chunks/{NcDashboardWidgetItem-D2yoF9Oo.mjs.map → NcDashboardWidgetItem-BkJTg3kj.mjs.map} +1 -1
  461. package/dist/chunks/NcDashboardWidgetItem-CKv_fb-1.cjs +150 -0
  462. package/dist/chunks/{NcDashboardWidgetItem-xqVAP32n.cjs.map → NcDashboardWidgetItem-CKv_fb-1.cjs.map} +1 -1
  463. package/dist/chunks/NcDateTime-CpJDGhl7.mjs +181 -0
  464. package/dist/chunks/NcDateTime-CpJDGhl7.mjs.map +1 -0
  465. package/dist/chunks/NcDateTime-Cy5Bp0d2.cjs +180 -0
  466. package/dist/chunks/NcDateTime-Cy5Bp0d2.cjs.map +1 -0
  467. package/dist/chunks/NcDialog-B3ZaXnpn.mjs +235 -0
  468. package/dist/chunks/{NcDialog-C_1rhUHk.mjs.map → NcDialog-B3ZaXnpn.mjs.map} +1 -1
  469. package/dist/chunks/NcDialog-C7KRNdTc.cjs +234 -0
  470. package/dist/chunks/{NcDialog-Ciz0hlFn.cjs.map → NcDialog-C7KRNdTc.cjs.map} +1 -1
  471. package/dist/chunks/NcDialogButton-BV3Kf9U7.mjs +79 -0
  472. package/dist/chunks/{NcDialogButton-DQFoaN7q.mjs.map → NcDialogButton-BV3Kf9U7.mjs.map} +1 -1
  473. package/dist/chunks/NcDialogButton-CLWLvwpm.cjs +78 -0
  474. package/dist/chunks/{NcDialogButton-D7ibBxsQ.cjs.map → NcDialogButton-CLWLvwpm.cjs.map} +1 -1
  475. package/dist/chunks/NcEmojiPicker-LFuZ15M5.cjs +285 -0
  476. package/dist/chunks/{NcEmojiPicker-S2pfwxlK.cjs.map → NcEmojiPicker-LFuZ15M5.cjs.map} +1 -1
  477. package/dist/chunks/NcEmojiPicker-SqbRSwu2.mjs +284 -0
  478. package/dist/chunks/{NcEmojiPicker-Cie30NYK.mjs.map → NcEmojiPicker-SqbRSwu2.mjs.map} +1 -1
  479. package/dist/chunks/NcHeaderMenu-2n5GDt37.mjs +226 -0
  480. package/dist/chunks/{NcHeaderMenu-DOGXti7v.mjs.map → NcHeaderMenu-2n5GDt37.mjs.map} +1 -1
  481. package/dist/chunks/NcHeaderMenu-830tFszI.cjs +225 -0
  482. package/dist/chunks/{NcHeaderMenu-58OTmM-5.cjs.map → NcHeaderMenu-830tFszI.cjs.map} +1 -1
  483. package/dist/chunks/NcIconSvgWrapper-KWEbPRC9.mjs +101 -0
  484. package/dist/chunks/{NcIconSvgWrapper-kIn1eQyv.cjs.map → NcIconSvgWrapper-KWEbPRC9.mjs.map} +1 -1
  485. package/dist/chunks/NcIconSvgWrapper-O61kZVNp.cjs +103 -0
  486. package/dist/chunks/{NcIconSvgWrapper-BTdzvQGV.mjs.map → NcIconSvgWrapper-O61kZVNp.cjs.map} +1 -1
  487. package/dist/chunks/NcInputConfirmCancel-CJ7nPGEd.cjs +112 -0
  488. package/dist/chunks/{NcInputConfirmCancel-DVmY85-V.cjs.map → NcInputConfirmCancel-CJ7nPGEd.cjs.map} +1 -1
  489. package/dist/chunks/NcInputConfirmCancel-XXXgXoSw.mjs +113 -0
  490. package/dist/chunks/{NcInputConfirmCancel-Nn_JgG9d.mjs.map → NcInputConfirmCancel-XXXgXoSw.mjs.map} +1 -1
  491. package/dist/chunks/NcListItem-CxpC4EKk.cjs +275 -0
  492. package/dist/chunks/{NcListItem-BopkGRDs.mjs.map → NcListItem-CxpC4EKk.cjs.map} +1 -1
  493. package/dist/chunks/NcListItem-DrTIia88.mjs +276 -0
  494. package/dist/chunks/{NcListItem-B_MPLJ_8.cjs.map → NcListItem-DrTIia88.mjs.map} +1 -1
  495. package/dist/chunks/NcListItemIcon-44A7fm62.cjs +175 -0
  496. package/dist/chunks/NcListItemIcon-44A7fm62.cjs.map +1 -0
  497. package/dist/chunks/NcListItemIcon-CTTJYWzN.mjs +176 -0
  498. package/dist/chunks/NcListItemIcon-CTTJYWzN.mjs.map +1 -0
  499. package/dist/chunks/NcPasswordField-DN-kdAfl.cjs +256 -0
  500. package/dist/chunks/{NcPasswordField-BgSp7dK4.mjs.map → NcPasswordField-DN-kdAfl.cjs.map} +1 -1
  501. package/dist/chunks/NcPasswordField-Z6BCKScy.mjs +254 -0
  502. package/dist/chunks/{NcPasswordField-BooDzf0Z.cjs.map → NcPasswordField-Z6BCKScy.mjs.map} +1 -1
  503. package/dist/chunks/NcPopover-BS1bBSkg.cjs +268 -0
  504. package/dist/chunks/{NcPopover--V3R3EKV.mjs.map → NcPopover-BS1bBSkg.cjs.map} +1 -1
  505. package/dist/chunks/NcPopover-foxJPAfG.mjs +267 -0
  506. package/dist/chunks/{NcPopover-h-t7Dnjk.cjs.map → NcPopover-foxJPAfG.mjs.map} +1 -1
  507. package/dist/chunks/NcProgressBar-BafFcKiu.mjs +117 -0
  508. package/dist/chunks/{NcProgressBar-BYk5hfPI.cjs.map → NcProgressBar-BafFcKiu.mjs.map} +1 -1
  509. package/dist/chunks/NcProgressBar-mFqoqB4L.cjs +116 -0
  510. package/dist/chunks/{NcProgressBar-DDAeXyp8.mjs.map → NcProgressBar-mFqoqB4L.cjs.map} +1 -1
  511. package/dist/chunks/NcRelatedResourcesPanel-D3QlWSNc.mjs +438 -0
  512. package/dist/chunks/{NcRelatedResourcesPanel-DaiuNCYU.cjs.map → NcRelatedResourcesPanel-D3QlWSNc.mjs.map} +1 -1
  513. package/dist/chunks/NcRelatedResourcesPanel-Dcm2wvfd.cjs +439 -0
  514. package/dist/chunks/{NcRelatedResourcesPanel-Ch1b_Gl3.mjs.map → NcRelatedResourcesPanel-Dcm2wvfd.cjs.map} +1 -1
  515. package/dist/chunks/NcRichContenteditable-BB-qsHEm.mjs +797 -0
  516. package/dist/chunks/{NcRichContenteditable-CEqdmoem.mjs.map → NcRichContenteditable-BB-qsHEm.mjs.map} +1 -1
  517. package/dist/chunks/NcRichContenteditable-DljQv8gw.cjs +800 -0
  518. package/dist/chunks/{NcRichContenteditable-BF3BkdqM.cjs.map → NcRichContenteditable-DljQv8gw.cjs.map} +1 -1
  519. package/dist/chunks/NcRichText-BDVKgmY5.cjs +419 -0
  520. package/dist/chunks/{NcRichText-DCkExl5g.cjs.map → NcRichText-BDVKgmY5.cjs.map} +1 -1
  521. package/dist/chunks/NcRichText-BT4VjvXi.mjs +412 -0
  522. package/dist/chunks/{NcRichText-CUKFkHQg.mjs.map → NcRichText-BT4VjvXi.mjs.map} +1 -1
  523. package/dist/chunks/NcSavingIndicatorIcon-Bhy7wcoT.mjs +65 -0
  524. package/dist/chunks/{NcSavingIndicatorIcon-Bf0SEmgS.mjs.map → NcSavingIndicatorIcon-Bhy7wcoT.mjs.map} +1 -1
  525. package/dist/chunks/NcSavingIndicatorIcon-BzKAIkhk.cjs +64 -0
  526. package/dist/chunks/{NcSavingIndicatorIcon-BTvUkUn-.cjs.map → NcSavingIndicatorIcon-BzKAIkhk.cjs.map} +1 -1
  527. package/dist/chunks/{NcSelect-Bo71Yd6L.mjs → NcSelect-CNm4fmR6.mjs} +159 -121
  528. package/dist/chunks/{NcSelect-Bn3oTHtq.cjs.map → NcSelect-CNm4fmR6.mjs.map} +1 -1
  529. package/dist/chunks/{NcSelect-Bn3oTHtq.cjs → NcSelect-DckQCxxX.cjs} +161 -111
  530. package/dist/chunks/{NcSelect-Bo71Yd6L.mjs.map → NcSelect-DckQCxxX.cjs.map} +1 -1
  531. package/dist/chunks/NcSelectTags-CnkBJ3vP.cjs +303 -0
  532. package/dist/chunks/{NcSelectTags-CgYWiDjX.cjs.map → NcSelectTags-CnkBJ3vP.cjs.map} +1 -1
  533. package/dist/chunks/NcSelectTags-nCqLANFH.mjs +302 -0
  534. package/dist/chunks/{NcSelectTags-9aCrLRT0.mjs.map → NcSelectTags-nCqLANFH.mjs.map} +1 -1
  535. package/dist/chunks/NcSettingsInputText-D-S5LBmN.mjs +102 -0
  536. package/dist/chunks/{NcSettingsInputText-JboV8u2l.mjs.map → NcSettingsInputText-D-S5LBmN.mjs.map} +1 -1
  537. package/dist/chunks/NcSettingsInputText-Dd3wEwGy.cjs +101 -0
  538. package/dist/chunks/{NcSettingsInputText-1i2TqdMB.cjs.map → NcSettingsInputText-Dd3wEwGy.cjs.map} +1 -1
  539. package/dist/chunks/NcSettingsSection-B0-LmypW.mjs +112 -0
  540. package/dist/chunks/NcSettingsSection-B0-LmypW.mjs.map +1 -0
  541. package/dist/chunks/NcSettingsSection-ayl3nvdL.cjs +111 -0
  542. package/dist/chunks/NcSettingsSection-ayl3nvdL.cjs.map +1 -0
  543. package/dist/chunks/NcSettingsSelectGroup-C51Km4wj.mjs +211 -0
  544. package/dist/chunks/{NcSettingsSelectGroup-DUzmbtZx.mjs.map → NcSettingsSelectGroup-C51Km4wj.mjs.map} +1 -1
  545. package/dist/chunks/NcSettingsSelectGroup-Dc7oy0Jg.cjs +213 -0
  546. package/dist/chunks/{NcSettingsSelectGroup-CgUJmyF7.cjs.map → NcSettingsSelectGroup-Dc7oy0Jg.cjs.map} +1 -1
  547. package/dist/chunks/NcTextField-BmOKGaQ4.cjs +150 -0
  548. package/dist/chunks/{NcTextField-B5cUYgRy.cjs.map → NcTextField-BmOKGaQ4.cjs.map} +1 -1
  549. package/dist/chunks/NcTextField-BmaDUUfq.mjs +151 -0
  550. package/dist/chunks/{NcTextField-D_eUEl2B.mjs.map → NcTextField-BmaDUUfq.mjs.map} +1 -1
  551. package/dist/chunks/{NcTimezonePicker-CH1lkCMF.mjs → NcTimezonePicker-BSgT2QA5.mjs} +814 -551
  552. package/dist/chunks/{NcTimezonePicker-CH1lkCMF.mjs.map → NcTimezonePicker-BSgT2QA5.mjs.map} +1 -1
  553. package/dist/chunks/{NcTimezonePicker-BF5TeadZ.cjs → NcTimezonePicker-iD8mrVb_.cjs} +814 -546
  554. package/dist/chunks/{NcTimezonePicker-BF5TeadZ.cjs.map → NcTimezonePicker-iD8mrVb_.cjs.map} +1 -1
  555. package/dist/chunks/NcUserBubble-BJp-ZBGW.mjs +211 -0
  556. package/dist/chunks/{NcUserBubble-BadEJRgs.cjs.map → NcUserBubble-BJp-ZBGW.mjs.map} +1 -1
  557. package/dist/chunks/NcUserBubble-BsQJPVXD.cjs +212 -0
  558. package/dist/chunks/{NcUserBubble-C0HbPO9p.mjs.map → NcUserBubble-BsQJPVXD.cjs.map} +1 -1
  559. package/dist/chunks/NcUserStatusIcon-Ba9ajMhK.cjs +170 -0
  560. package/dist/chunks/{NcUserStatusIcon-HOUdT_MR.mjs.map → NcUserStatusIcon-Ba9ajMhK.cjs.map} +1 -1
  561. package/dist/chunks/NcUserStatusIcon-BkO1ZAdq.mjs +168 -0
  562. package/dist/chunks/{NcUserStatusIcon-B69NZ9Hw.cjs.map → NcUserStatusIcon-BkO1ZAdq.mjs.map} +1 -1
  563. package/dist/chunks/{ScopeComponent-IO407Bzb.cjs → ScopeComponent-BpyBuaF3.cjs} +9 -4
  564. package/dist/chunks/{ScopeComponent-IO407Bzb.cjs.map → ScopeComponent-BpyBuaF3.cjs.map} +1 -1
  565. package/dist/chunks/{ScopeComponent-Dz4pyD77.mjs → ScopeComponent-Dy6ublmy.mjs} +9 -4
  566. package/dist/chunks/{ScopeComponent-Dz4pyD77.mjs.map → ScopeComponent-Dy6ublmy.mjs.map} +1 -1
  567. package/dist/chunks/_l10n-BYPqjHzt.cjs +121 -0
  568. package/dist/chunks/_l10n-BYPqjHzt.cjs.map +1 -0
  569. package/dist/chunks/_l10n-hRR5zBTZ.mjs +122 -0
  570. package/dist/chunks/_l10n-hRR5zBTZ.mjs.map +1 -0
  571. package/dist/chunks/_plugin-vue2_normalizer-D637Qkok.mjs +59 -0
  572. package/dist/chunks/_plugin-vue2_normalizer-D637Qkok.mjs.map +1 -0
  573. package/dist/chunks/_plugin-vue2_normalizer-DbFIE4_M.cjs +58 -0
  574. package/dist/chunks/_plugin-vue2_normalizer-DbFIE4_M.cjs.map +1 -0
  575. package/dist/chunks/{actionGlobal-DL1VaQzF.cjs → actionGlobal-BfK-CImU.cjs} +2 -2
  576. package/dist/chunks/{actionGlobal-D49NL940.mjs.map → actionGlobal-BfK-CImU.cjs.map} +1 -1
  577. package/dist/chunks/{actionGlobal-D49NL940.mjs → actionGlobal-DV5ZiuS0.mjs} +2 -2
  578. package/dist/chunks/{actionGlobal-DL1VaQzF.cjs.map → actionGlobal-DV5ZiuS0.mjs.map} +1 -1
  579. package/dist/chunks/{actionText-jLsEBszD.mjs → actionText-BaGktsVf.mjs} +21 -17
  580. package/dist/chunks/{actionText-jLsEBszD.mjs.map → actionText-BaGktsVf.mjs.map} +1 -1
  581. package/dist/chunks/{actionText-iWNpvZuI.cjs → actionText-BnA6RS9I.cjs} +21 -17
  582. package/dist/chunks/{actionText-iWNpvZuI.cjs.map → actionText-BnA6RS9I.cjs.map} +1 -1
  583. package/dist/chunks/autolink-Bgjz08wN.cjs +125 -0
  584. package/dist/chunks/autolink-Bgjz08wN.cjs.map +1 -0
  585. package/dist/chunks/autolink-DA7VzS8Y.mjs +126 -0
  586. package/dist/chunks/autolink-DA7VzS8Y.mjs.map +1 -0
  587. package/dist/chunks/emoji-CWr00EYY.cjs +87 -0
  588. package/dist/chunks/emoji-CWr00EYY.cjs.map +1 -0
  589. package/dist/chunks/emoji-CbOkKZx5.mjs +86 -0
  590. package/dist/chunks/emoji-CbOkKZx5.mjs.map +1 -0
  591. package/dist/chunks/{focusTrap-xauhLvvr.cjs → focusTrap-Dsmd28wG.cjs} +4 -3
  592. package/dist/chunks/{focusTrap-Be9GEB5C.mjs.map → focusTrap-Dsmd28wG.cjs.map} +1 -1
  593. package/dist/chunks/{focusTrap-Be9GEB5C.mjs → focusTrap-hWDNhn4t.mjs} +4 -3
  594. package/dist/chunks/{focusTrap-xauhLvvr.cjs.map → focusTrap-hWDNhn4t.mjs.map} +1 -1
  595. package/dist/chunks/{getAvatarUrl-BHpn8LgJ.mjs → getAvatarUrl-BBvqBOJD.mjs} +7 -7
  596. package/dist/chunks/{getAvatarUrl-BHpn8LgJ.mjs.map → getAvatarUrl-BBvqBOJD.mjs.map} +1 -1
  597. package/dist/chunks/{getAvatarUrl-CjIpoO6I.cjs → getAvatarUrl-C40xfr4C.cjs} +7 -7
  598. package/dist/chunks/{getAvatarUrl-CjIpoO6I.cjs.map → getAvatarUrl-C40xfr4C.cjs.map} +1 -1
  599. package/dist/chunks/index-BRQQ9NaL.mjs +198 -0
  600. package/dist/chunks/{index-uiNhPYvS.mjs.map → index-BRQQ9NaL.mjs.map} +1 -1
  601. package/dist/chunks/index-BwyQ2N-M.mjs +119 -0
  602. package/dist/chunks/index-BwyQ2N-M.mjs.map +1 -0
  603. package/dist/chunks/index-D0euettC.cjs +201 -0
  604. package/dist/chunks/{index-CMnR5Pf6.cjs.map → index-D0euettC.cjs.map} +1 -1
  605. package/dist/chunks/index-DYccGIvD.mjs +197 -0
  606. package/dist/chunks/{index-CnpswYi6.mjs.map → index-DYccGIvD.mjs.map} +1 -1
  607. package/dist/chunks/index-Dl-SBuhJ.cjs +196 -0
  608. package/dist/chunks/{index-Cke9rKBg.cjs.map → index-Dl-SBuhJ.cjs.map} +1 -1
  609. package/dist/chunks/index-Dsgv-f-l.cjs +118 -0
  610. package/dist/chunks/index-Dsgv-f-l.cjs.map +1 -0
  611. package/dist/chunks/{logger-D9RRY4er.cjs → logger-BcZGm6Un.cjs} +3 -3
  612. package/dist/chunks/{logger-C7qcfVW8.mjs.map → logger-BcZGm6Un.cjs.map} +1 -1
  613. package/dist/chunks/{logger-C7qcfVW8.mjs → logger-C7ZZ6zFQ.mjs} +3 -3
  614. package/dist/chunks/{logger-D9RRY4er.cjs.map → logger-C7ZZ6zFQ.mjs.map} +1 -1
  615. package/dist/chunks/referencePickerModal-CFPdv-m1.mjs +3469 -0
  616. package/dist/chunks/referencePickerModal-CFPdv-m1.mjs.map +1 -0
  617. package/dist/chunks/referencePickerModal-m0FcnvxK.cjs +3471 -0
  618. package/dist/chunks/referencePickerModal-m0FcnvxK.cjs.map +1 -0
  619. package/dist/chunks/{usernameToColor-BHkzj1tb.mjs → usernameToColor-CLlyFMmy.mjs} +22 -16
  620. package/dist/chunks/{usernameToColor-BHkzj1tb.mjs.map → usernameToColor-CLlyFMmy.mjs.map} +1 -1
  621. package/dist/chunks/usernameToColor-cfXKb46d.cjs +48 -0
  622. package/dist/chunks/{usernameToColor-DA36rR48.cjs.map → usernameToColor-cfXKb46d.cjs.map} +1 -1
  623. package/dist/composables/useFormatDateTime.d.ts +57 -0
  624. package/dist/index.cjs +284 -224
  625. package/dist/index.cjs.map +1 -1
  626. package/dist/index.mjs +287 -306
  627. package/dist/index.mjs.map +1 -1
  628. package/dist/plugin.d.ts +2 -1
  629. package/package.json +8 -8
  630. package/dist/assets/NcRichText-DNXuHl34.css +0 -229
  631. package/dist/assets/referencePickerModal-DWB2ghBg.css +0 -336
  632. package/dist/chunks/AlertCircleOutline-DHFN4OkX.cjs +0 -35
  633. package/dist/chunks/AlertCircleOutline-U_bhL30C.mjs +0 -37
  634. package/dist/chunks/ArrowLeft-CjNnGIlF.cjs +0 -35
  635. package/dist/chunks/ArrowLeft-kklNBL9z.mjs +0 -37
  636. package/dist/chunks/ArrowRight-C3BxTDjF.mjs +0 -37
  637. package/dist/chunks/ArrowRight-CxzzJJQ6.cjs +0 -35
  638. package/dist/chunks/Check-CRLmJNGG.mjs +0 -37
  639. package/dist/chunks/Check-CVn5nytg.cjs +0 -35
  640. package/dist/chunks/ChevronDown-DQPox_nl.cjs +0 -35
  641. package/dist/chunks/ChevronDown-HHJdUMN4.mjs +0 -37
  642. package/dist/chunks/ChevronRight-BAJhNawb.cjs +0 -35
  643. package/dist/chunks/ChevronRight-DL3e8bjj.mjs +0 -37
  644. package/dist/chunks/ChevronUp-B6TIgl1a.mjs +0 -37
  645. package/dist/chunks/ChevronUp-kmHRpe7H.cjs +0 -35
  646. package/dist/chunks/Close-BtO5TPBO.mjs +0 -37
  647. package/dist/chunks/Close-DBfrdXMw.cjs +0 -35
  648. package/dist/chunks/DotsHorizontal-B8kTqpHe.cjs +0 -35
  649. package/dist/chunks/DotsHorizontal-DfVgEXgz.mjs +0 -37
  650. package/dist/chunks/GenColors-hkqGpnOK.cjs +0 -141
  651. package/dist/chunks/NcActionButtonGroup-B1XhnIBl.cjs +0 -46
  652. package/dist/chunks/NcActionButtonGroup-DU1taycQ.mjs +0 -50
  653. package/dist/chunks/NcActionInput-53RB9uQe.mjs +0 -244
  654. package/dist/chunks/NcActionInput-N2wrvq5K.cjs +0 -235
  655. package/dist/chunks/NcActions-BtvXtZF4.cjs +0 -688
  656. package/dist/chunks/NcActions-BtvXtZF4.cjs.map +0 -1
  657. package/dist/chunks/NcActions-DiFslXqv.mjs +0 -696
  658. package/dist/chunks/NcActions-DiFslXqv.mjs.map +0 -1
  659. package/dist/chunks/NcAppContent-BDhK1rUf.mjs +0 -265
  660. package/dist/chunks/NcAppContent-Be1m1O_W.cjs +0 -256
  661. package/dist/chunks/NcAppNavigation-CElLRpH-.mjs +0 -124
  662. package/dist/chunks/NcAppNavigation-DKUnWfen.cjs +0 -115
  663. package/dist/chunks/NcAppNavigationCaption-Cdcv-0jj.cjs +0 -58
  664. package/dist/chunks/NcAppNavigationCaption-Cdcv-0jj.cjs.map +0 -1
  665. package/dist/chunks/NcAppNavigationCaption-DI7SIPdI.mjs +0 -61
  666. package/dist/chunks/NcAppNavigationCaption-DI7SIPdI.mjs.map +0 -1
  667. package/dist/chunks/NcAppNavigationItem-7xN_CMHW.cjs +0 -463
  668. package/dist/chunks/NcAppNavigationItem-7xN_CMHW.cjs.map +0 -1
  669. package/dist/chunks/NcAppNavigationItem-Djfc0DPY.mjs +0 -475
  670. package/dist/chunks/NcAppNavigationItem-Djfc0DPY.mjs.map +0 -1
  671. package/dist/chunks/NcAppNavigationNewItem-5B4-U2NI.cjs +0 -87
  672. package/dist/chunks/NcAppNavigationNewItem-CN3vYnc_.mjs +0 -91
  673. package/dist/chunks/NcAppNavigationSettings-Cnr4jYzW.cjs +0 -104
  674. package/dist/chunks/NcAppNavigationSettings-LmpAoM-x.mjs +0 -106
  675. package/dist/chunks/NcAppNavigationToggle-B5XmO21v.cjs +0 -119
  676. package/dist/chunks/NcAppNavigationToggle-D0oeWL17.mjs +0 -122
  677. package/dist/chunks/NcAppSettingsDialog-B6crPJ6a.cjs +0 -184
  678. package/dist/chunks/NcAppSettingsDialog-BLOgrVCz.mjs +0 -191
  679. package/dist/chunks/NcAppSidebar-CqER6-dl.mjs +0 -606
  680. package/dist/chunks/NcAppSidebar-CqER6-dl.mjs.map +0 -1
  681. package/dist/chunks/NcAppSidebar-qC5-u1p0.cjs +0 -588
  682. package/dist/chunks/NcAppSidebar-qC5-u1p0.cjs.map +0 -1
  683. package/dist/chunks/NcAvatar-BBhoG-za.mjs +0 -486
  684. package/dist/chunks/NcAvatar-BBhoG-za.mjs.map +0 -1
  685. package/dist/chunks/NcAvatar-BuqOk4mX.cjs +0 -467
  686. package/dist/chunks/NcAvatar-BuqOk4mX.cjs.map +0 -1
  687. package/dist/chunks/NcBreadcrumb-BRpLGeLr.cjs +0 -180
  688. package/dist/chunks/NcBreadcrumb-BxCf2hEA.mjs +0 -186
  689. package/dist/chunks/NcBreadcrumbs-BKPXzHC1.cjs +0 -412
  690. package/dist/chunks/NcBreadcrumbs-BmK-6Q-n.mjs +0 -422
  691. package/dist/chunks/NcCheckboxRadioSwitch-B9w3Znu7.cjs +0 -603
  692. package/dist/chunks/NcCheckboxRadioSwitch-B9w3Znu7.cjs.map +0 -1
  693. package/dist/chunks/NcCheckboxRadioSwitch-BOl1O2zi.mjs +0 -607
  694. package/dist/chunks/NcCheckboxRadioSwitch-BOl1O2zi.mjs.map +0 -1
  695. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-CCwH-BzH.mjs +0 -3
  696. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-CCwH-BzH.mjs.map +0 -1
  697. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-DAxGPyzS.cjs +0 -4
  698. package/dist/chunks/NcCheckboxRadioSwitch.vue_vue_type_style_index_0_scoped_2603be83_lang-DAxGPyzS.cjs.map +0 -1
  699. package/dist/chunks/NcColorPicker-CeoImUTC.mjs +0 -178
  700. package/dist/chunks/NcColorPicker-CeoImUTC.mjs.map +0 -1
  701. package/dist/chunks/NcColorPicker-DOcxlY35.cjs +0 -168
  702. package/dist/chunks/NcColorPicker-DOcxlY35.cjs.map +0 -1
  703. package/dist/chunks/NcContent-BPA0KfuT.mjs +0 -87
  704. package/dist/chunks/NcContent-DbFAEdX_.cjs +0 -80
  705. package/dist/chunks/NcDashboardWidget-2-nW7dII.mjs +0 -141
  706. package/dist/chunks/NcDashboardWidget-auMQiAFt.cjs +0 -135
  707. package/dist/chunks/NcDashboardWidgetItem-D2yoF9Oo.mjs +0 -143
  708. package/dist/chunks/NcDashboardWidgetItem-xqVAP32n.cjs +0 -138
  709. package/dist/chunks/NcDateTime-CeOdKcvC.mjs +0 -146
  710. package/dist/chunks/NcDateTime-CeOdKcvC.mjs.map +0 -1
  711. package/dist/chunks/NcDateTime-DneyKibb.cjs +0 -142
  712. package/dist/chunks/NcDateTime-DneyKibb.cjs.map +0 -1
  713. package/dist/chunks/NcDialog-C_1rhUHk.mjs +0 -214
  714. package/dist/chunks/NcDialog-Ciz0hlFn.cjs +0 -207
  715. package/dist/chunks/NcDialogButton-D7ibBxsQ.cjs +0 -69
  716. package/dist/chunks/NcDialogButton-DQFoaN7q.mjs +0 -74
  717. package/dist/chunks/NcEmojiPicker-Cie30NYK.mjs +0 -251
  718. package/dist/chunks/NcEmojiPicker-S2pfwxlK.cjs +0 -241
  719. package/dist/chunks/NcHeaderMenu-58OTmM-5.cjs +0 -187
  720. package/dist/chunks/NcHeaderMenu-DOGXti7v.mjs +0 -193
  721. package/dist/chunks/NcIconSvgWrapper-BTdzvQGV.mjs +0 -93
  722. package/dist/chunks/NcIconSvgWrapper-kIn1eQyv.cjs +0 -89
  723. package/dist/chunks/NcInputConfirmCancel-DVmY85-V.cjs +0 -92
  724. package/dist/chunks/NcInputConfirmCancel-Nn_JgG9d.mjs +0 -97
  725. package/dist/chunks/NcListItem-B_MPLJ_8.cjs +0 -233
  726. package/dist/chunks/NcListItem-BopkGRDs.mjs +0 -238
  727. package/dist/chunks/NcListItemIcon-CI23iFQz.mjs +0 -166
  728. package/dist/chunks/NcListItemIcon-CI23iFQz.mjs.map +0 -1
  729. package/dist/chunks/NcListItemIcon-Dwgi2cPr.cjs +0 -163
  730. package/dist/chunks/NcListItemIcon-Dwgi2cPr.cjs.map +0 -1
  731. package/dist/chunks/NcPasswordField-BgSp7dK4.mjs +0 -238
  732. package/dist/chunks/NcPasswordField-BooDzf0Z.cjs +0 -229
  733. package/dist/chunks/NcPopover--V3R3EKV.mjs +0 -239
  734. package/dist/chunks/NcPopover-h-t7Dnjk.cjs +0 -233
  735. package/dist/chunks/NcProgressBar-BYk5hfPI.cjs +0 -96
  736. package/dist/chunks/NcProgressBar-DDAeXyp8.mjs +0 -99
  737. package/dist/chunks/NcRelatedResourcesPanel-Ch1b_Gl3.mjs +0 -381
  738. package/dist/chunks/NcRelatedResourcesPanel-DaiuNCYU.cjs +0 -371
  739. package/dist/chunks/NcRichContenteditable-BF3BkdqM.cjs +0 -640
  740. package/dist/chunks/NcRichContenteditable-CEqdmoem.mjs +0 -649
  741. package/dist/chunks/NcRichText-CUKFkHQg.mjs +0 -355
  742. package/dist/chunks/NcRichText-DCkExl5g.cjs +0 -339
  743. package/dist/chunks/NcSavingIndicatorIcon-BTvUkUn-.cjs +0 -59
  744. package/dist/chunks/NcSavingIndicatorIcon-Bf0SEmgS.mjs +0 -62
  745. package/dist/chunks/NcSelectTags-9aCrLRT0.mjs +0 -258
  746. package/dist/chunks/NcSelectTags-CgYWiDjX.cjs +0 -252
  747. package/dist/chunks/NcSettingsInputText-1i2TqdMB.cjs +0 -92
  748. package/dist/chunks/NcSettingsInputText-JboV8u2l.mjs +0 -95
  749. package/dist/chunks/NcSettingsSection-CNMpCD3o.cjs +0 -96
  750. package/dist/chunks/NcSettingsSection-CNMpCD3o.cjs.map +0 -1
  751. package/dist/chunks/NcSettingsSection-Lgwm3w2e.mjs +0 -98
  752. package/dist/chunks/NcSettingsSection-Lgwm3w2e.mjs.map +0 -1
  753. package/dist/chunks/NcSettingsSelectGroup-CgUJmyF7.cjs +0 -185
  754. package/dist/chunks/NcSettingsSelectGroup-DUzmbtZx.mjs +0 -192
  755. package/dist/chunks/NcTextField-B5cUYgRy.cjs +0 -140
  756. package/dist/chunks/NcTextField-D_eUEl2B.mjs +0 -146
  757. package/dist/chunks/NcUserBubble-BadEJRgs.cjs +0 -193
  758. package/dist/chunks/NcUserBubble-C0HbPO9p.mjs +0 -198
  759. package/dist/chunks/NcUserStatusIcon-B69NZ9Hw.cjs +0 -150
  760. package/dist/chunks/NcUserStatusIcon-HOUdT_MR.mjs +0 -157
  761. package/dist/chunks/_l10n-B8iumFKB.cjs +0 -66
  762. package/dist/chunks/_l10n-B8iumFKB.cjs.map +0 -1
  763. package/dist/chunks/_l10n-BaNxGGXy.mjs +0 -68
  764. package/dist/chunks/_l10n-BaNxGGXy.mjs.map +0 -1
  765. package/dist/chunks/_plugin-vue2_normalizer-Bj5bLKV4.mjs +0 -32
  766. package/dist/chunks/_plugin-vue2_normalizer-Bj5bLKV4.mjs.map +0 -1
  767. package/dist/chunks/_plugin-vue2_normalizer-GXKvuwrq.cjs +0 -31
  768. package/dist/chunks/_plugin-vue2_normalizer-GXKvuwrq.cjs.map +0 -1
  769. package/dist/chunks/autolink-DNGB8YSW.mjs +0 -86
  770. package/dist/chunks/autolink-DNGB8YSW.mjs.map +0 -1
  771. package/dist/chunks/autolink-MMzlO_Ai.cjs +0 -82
  772. package/dist/chunks/autolink-MMzlO_Ai.cjs.map +0 -1
  773. package/dist/chunks/emoji-DEH9dtOa.cjs +0 -59
  774. package/dist/chunks/emoji-DEH9dtOa.cjs.map +0 -1
  775. package/dist/chunks/emoji-k4gWHxrE.mjs +0 -62
  776. package/dist/chunks/emoji-k4gWHxrE.mjs.map +0 -1
  777. package/dist/chunks/index-Bh9FEWbr.cjs +0 -87
  778. package/dist/chunks/index-Bh9FEWbr.cjs.map +0 -1
  779. package/dist/chunks/index-CMnR5Pf6.cjs +0 -157
  780. package/dist/chunks/index-CU14QsCg.mjs +0 -88
  781. package/dist/chunks/index-CU14QsCg.mjs.map +0 -1
  782. package/dist/chunks/index-Cke9rKBg.cjs +0 -148
  783. package/dist/chunks/index-CnpswYi6.mjs +0 -149
  784. package/dist/chunks/index-uiNhPYvS.mjs +0 -163
  785. package/dist/chunks/referencePickerModal-AvSHyw1b.mjs +0 -2428
  786. package/dist/chunks/referencePickerModal-AvSHyw1b.mjs.map +0 -1
  787. package/dist/chunks/referencePickerModal-B_Su3XpN.cjs +0 -2408
  788. package/dist/chunks/referencePickerModal-B_Su3XpN.cjs.map +0 -1
  789. package/dist/chunks/usernameToColor-DA36rR48.cjs +0 -39
package/CHANGELOG.md CHANGED
@@ -2,6 +2,54 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [v8.12.0](https://github.com/nextcloud-libraries/nextcloud-vue/tree/v8.12.0) (2024-05-13)
6
+ [Full Changelog](https://github.com/nextcloud-libraries/nextcloud-vue/compare/v8.11.2...v8.12.0)
7
+
8
+ ### 🚀 Enhancements
9
+ * feat(NcAppNavigationCaption): Allow to set heading level [\#5567](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5567) \([susnux](https://github.com/susnux)\)
10
+ * feat(NcAppNavigationCaption): Add `heading-id` prop to allow setting the ID on the caption itself [\#5565](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5565) \([susnux](https://github.com/susnux)\)
11
+
12
+ ### 🐛 Fixed bugs
13
+ * fix(NcReferenceWidget): use requestAnimationFrame in observers [\#5561](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5561) \([max-nextcloud](https://github.com/max-nextcloud)\)
14
+ * fix(NcAppNavigationCaption): Fix margin [\#5576](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5576) \([Pytal](https://github.com/Pytal)\)
15
+ * fix(NcReferenceWidget): useElementSize [\#5587](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5587) \([max-nextcloud](https://github.com/max-nextcloud)\)
16
+ * fix(docs): Add missing file extensions to vue-material-design-icons imports [\#5581](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5581) \([susnux](https://github.com/susnux)\)
17
+ * feat(NcAppSidebar): Allow to set `open` state to prevent focus trap issues on mobile [\#5584](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5584) \([susnux](https://github.com/susnux)\)
18
+ * feat(mobile): restore hiding the appnavigation on mobile [\#5603](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5603) \([szaimen](https://github.com/szaimen)\)
19
+ * fix(NcSettingSection): Update design and enforce `limitWidth` option [\#5514](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5514) \([marcoambrosini](https://github.com/marcoambrosini)\)
20
+ * Adjusted in [\#5604](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5604)
21
+
22
+ ### Other Changes
23
+ * Updates for project Nextcloud vue library [\#5562](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5562) \([transifex-integration](https://github.com/transifex-integration)\)
24
+ * fix: update timezone data and automate future updates [\#5572](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5572) \([st3iny](https://github.com/st3iny)\)
25
+ * Updates for project Nextcloud vue library [\#5578](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5578) \([transifex-integration](https://github.com/transifex-integration)\)
26
+ * fix(NcIconSvgWrapper): Fix icon size variable being undefined [\#5597](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5597) \([susnux](https://github.com/susnux)\)
27
+ * feat(NcAppSidebar): add CSS variables for toggle button offset [\#5599](https://github.com/nextcloud-libraries/nextcloud-vue/pull/5599) \([ShGKme](https://github.com/ShGKme)\)
28
+
29
+
30
+ ## [v8.11.3](https://github.com/nextcloud-libraries/nextcloud-vue/tree/v8.11.3) (2024-05-07)
31
+ [Full Changelog](https://github.com/nextcloud-libraries/nextcloud-vue/compare/v8.11.2...v8.11.3)
32
+
33
+ ## What's Changed
34
+ ### 🐛 Fixed bugs
35
+ * fix(NcReferenceWidget): do not try to render widget when there is no widget by @ShGKme in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5485
36
+ * fix(NcDialog): Actions should not overflow the action container by @susnux in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5495
37
+ * fix(NcColorPicker): Allow to submit selected color in simple-view by @susnux in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5499
38
+ * fix(autolink): correctly handle relative links without webroot by @ShGKme in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5487
39
+ * fix(NcDateTime): When relative time is disabled return a string and not the reference to it by @susnux in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5493
40
+ * fix(NcCheckboxRadioSwitch): Pass attrs to `input` if available by @susnux in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5507
41
+ * fix(NcCheckboxRadioSwitch): Add background color for button style by @susnux in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5509
42
+ * fix(NcDateTime): Respect language by @Pytal in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5501
43
+ * fix(NcRichText): adjust display so long texts in checkboxes can be shown correctly by @DorraJaouad in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5527
44
+ * style(NcSelect): restrict max-height to prevent overflow by component by @Antreesy in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5551
45
+ * build(vite): iterate over .ts files in all directories by @Antreesy in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5553
46
+ * fix(emoji): index emoji data once for search functions by @Antreesy in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5554
47
+ ### Other Changes
48
+ * chore(widgets): remove unneeded nullish coalescing by @ShGKme in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5484
49
+ * Updates for project Nextcloud vue library by @transifex-integration in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5494
50
+ * Updates for project Nextcloud vue library by @transifex-integration in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5510
51
+ * Updates for project Nextcloud vue library by @transifex-integration in https://github.com/nextcloud-libraries/nextcloud-vue/pull/5533
52
+
5
53
  ## [v8.11.2](https://github.com/nextcloud-libraries/nextcloud-vue/tree/v8.11.2) (2024-04-10)
6
54
  [Full Changelog](https://github.com/nextcloud-libraries/nextcloud-vue/compare/v8.11.1...v8.11.2)
7
55
 
@@ -1,16 +1,20 @@
1
- require('../assets/NcActionButton-Cs5kVVAD.css');
1
+ require('../assets/NcActionButton-D08gPtwM.css');
2
2
  "use strict";
3
- const n = require("../chunks/Check-CVn5nytg.cjs"), s = require("../chunks/ChevronRight-BAJhNawb.cjs"), a = require("../chunks/actionText-iWNpvZuI.cjs"), o = require("../chunks/_plugin-vue2_normalizer-GXKvuwrq.cjs"), l = {
3
+ const Check = require("../chunks/Check-DZc7keoa.cjs");
4
+ const ChevronRight = require("../chunks/ChevronRight-DVw6mR11.cjs");
5
+ const actionText = require("../chunks/actionText-BnA6RS9I.cjs");
6
+ const _pluginVue2_normalizer = require("../chunks/_plugin-vue2_normalizer-DbFIE4_M.cjs");
7
+ const _sfc_main = {
4
8
  name: "NcActionButton",
5
9
  components: {
6
- CheckIcon: n.Check,
7
- ChevronRightIcon: s.ChevronRight
10
+ CheckIcon: Check.Check,
11
+ ChevronRightIcon: ChevronRight.ChevronRight
8
12
  },
9
- mixins: [a.ActionTextMixin],
13
+ mixins: [actionText.ActionTextMixin],
10
14
  inject: {
11
15
  isInSemanticMenu: {
12
16
  from: "NcActions:isSemanticMenu",
13
- default: !1
17
+ default: false
14
18
  }
15
19
  },
16
20
  props: {
@@ -28,7 +32,7 @@ const n = require("../chunks/Check-CVn5nytg.cjs"), s = require("../chunks/Chevro
28
32
  */
29
33
  disabled: {
30
34
  type: Boolean,
31
- default: !1
35
+ default: false
32
36
  },
33
37
  /**
34
38
  * If this is a menu, a chevron icon will
@@ -36,7 +40,7 @@ const n = require("../chunks/Check-CVn5nytg.cjs"), s = require("../chunks/Chevro
36
40
  */
37
41
  isMenu: {
38
42
  type: Boolean,
39
- default: !1
43
+ default: false
40
44
  },
41
45
  /**
42
46
  * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.
@@ -46,7 +50,7 @@ const n = require("../chunks/Check-CVn5nytg.cjs"), s = require("../chunks/Chevro
46
50
  type: {
47
51
  type: String,
48
52
  default: "button",
49
- validator: (e) => ["button", "checkbox", "radio", "reset", "submit"].includes(e)
53
+ validator: (behavior) => ["button", "checkbox", "radio", "reset", "submit"].includes(behavior)
50
54
  },
51
55
  /**
52
56
  * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).
@@ -85,20 +89,38 @@ const n = require("../chunks/Check-CVn5nytg.cjs"), s = require("../chunks/Chevro
85
89
  * The current "checked" or "pressed" state for the model behavior
86
90
  */
87
91
  isChecked() {
88
- return this.type === "radio" && typeof this.modelValue != "boolean" ? this.modelValue === this.value : this.modelValue;
92
+ if (this.type === "radio" && typeof this.modelValue !== "boolean") {
93
+ return this.modelValue === this.value;
94
+ }
95
+ return this.modelValue;
89
96
  },
90
97
  /**
91
98
  * The native HTML type to set on the button
92
99
  */
93
100
  nativeType() {
94
- return this.type === "submit" || this.type === "reset" ? this.type : "button";
101
+ if (this.type === "submit" || this.type === "reset") {
102
+ return this.type;
103
+ }
104
+ return "button";
95
105
  },
96
106
  /**
97
107
  * HTML attributes to bind to the <button>
98
108
  */
99
109
  buttonAttributes() {
100
- const e = {};
101
- return this.isInSemanticMenu ? (e.role = "menuitem", this.type === "radio" ? (e.role = "menuitemradio", e["aria-checked"] = this.isChecked ? "true" : "false") : (this.type === "checkbox" || this.nativeType === "button" && this.modelValue !== null) && (e.role = "menuitemcheckbox", e["aria-checked"] = this.modelValue === null ? "mixed" : this.modelValue ? "true" : "false")) : this.modelValue !== null && this.nativeType === "button" && (e["aria-pressed"] = this.modelValue ? "true" : "false"), e;
110
+ const attributes = {};
111
+ if (this.isInSemanticMenu) {
112
+ attributes.role = "menuitem";
113
+ if (this.type === "radio") {
114
+ attributes.role = "menuitemradio";
115
+ attributes["aria-checked"] = this.isChecked ? "true" : "false";
116
+ } else if (this.type === "checkbox" || this.nativeType === "button" && this.modelValue !== null) {
117
+ attributes.role = "menuitemcheckbox";
118
+ attributes["aria-checked"] = this.modelValue === null ? "mixed" : this.modelValue ? "true" : "false";
119
+ }
120
+ } else if (this.modelValue !== null && this.nativeType === "button") {
121
+ attributes["aria-pressed"] = this.modelValue ? "true" : "false";
122
+ }
123
+ return attributes;
102
124
  }
103
125
  },
104
126
  methods: {
@@ -106,28 +128,43 @@ const n = require("../chunks/Check-CVn5nytg.cjs"), s = require("../chunks/Chevro
106
128
  * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed
107
129
  * @param {MouseEvent} event The click event
108
130
  */
109
- handleClick(e) {
110
- this.onClick(e), (this.modelValue !== null || this.type !== "button") && (this.type === "radio" ? typeof this.modelValue != "boolean" ? this.isChecked || this.$emit("update:modelValue", this.value) : this.$emit("update:modelValue", !this.isChecked) : this.$emit("update:modelValue", !this.isChecked));
131
+ handleClick(event) {
132
+ this.onClick(event);
133
+ if (this.modelValue !== null || this.type !== "button") {
134
+ if (this.type === "radio") {
135
+ if (typeof this.modelValue !== "boolean") {
136
+ if (!this.isChecked) {
137
+ this.$emit("update:modelValue", this.value);
138
+ }
139
+ } else {
140
+ this.$emit("update:modelValue", !this.isChecked);
141
+ }
142
+ } else {
143
+ this.$emit("update:modelValue", !this.isChecked);
144
+ }
145
+ }
111
146
  }
112
147
  }
113
148
  };
114
- var u = function() {
115
- var t = this, i = t._self._c;
116
- return i("li", { staticClass: "action", class: { "action--disabled": t.disabled }, attrs: { role: t.isInSemanticMenu && "presentation" } }, [i("button", t._b({ class: ["action-button button-vue", {
117
- "action-button--active": t.isChecked,
118
- focusable: t.isFocusable
119
- }], attrs: { "aria-label": t.ariaLabel, disabled: t.disabled, title: t.title, type: t.nativeType }, on: { click: t.handleClick } }, "button", t.buttonAttributes, !1), [t._t("icon", function() {
120
- return [i("span", { staticClass: "action-button__icon", class: [t.isIconUrl ? "action-button__icon--url" : t.icon], style: { backgroundImage: t.isIconUrl ? "url(".concat(t.icon, ")") : null }, attrs: { "aria-hidden": "true" } })];
121
- }), t.name ? i("span", { staticClass: "action-button__longtext-wrapper" }, [i("strong", { staticClass: "action-button__name" }, [t._v(" " + t._s(t.name) + " ")]), i("br"), i("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } })]) : t.isLongText ? i("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } }) : i("span", { staticClass: "action-button__text" }, [t._v(t._s(t.text))]), t.isMenu ? i("ChevronRightIcon", { staticClass: "action-button__menu-icon", attrs: { size: 20 } }) : t.isChecked === !0 ? i("CheckIcon", { staticClass: "action-button__pressed-icon", attrs: { size: 20 } }) : t.isChecked === !1 ? i("span", { staticClass: "action-button__pressed-icon material-design-icon" }) : t._e(), t._e()], 2)]);
122
- }, c = [], r = /* @__PURE__ */ o.normalizeComponent(
123
- l,
124
- u,
125
- c,
126
- !1,
149
+ var _sfc_render = function render() {
150
+ var _vm = this, _c = _vm._self._c;
151
+ return _c("li", { staticClass: "action", class: { "action--disabled": _vm.disabled }, attrs: { "role": _vm.isInSemanticMenu && "presentation" } }, [_c("button", _vm._b({ class: ["action-button button-vue", {
152
+ "action-button--active": _vm.isChecked,
153
+ focusable: _vm.isFocusable
154
+ }], attrs: { "aria-label": _vm.ariaLabel, "disabled": _vm.disabled, "title": _vm.title, "type": _vm.nativeType }, on: { "click": _vm.handleClick } }, "button", _vm.buttonAttributes, false), [_vm._t("icon", function() {
155
+ return [_c("span", { staticClass: "action-button__icon", class: [_vm.isIconUrl ? "action-button__icon--url" : _vm.icon], style: { backgroundImage: _vm.isIconUrl ? "url(".concat(_vm.icon, ")") : null }, attrs: { "aria-hidden": "true" } })];
156
+ }), _vm.name ? _c("span", { staticClass: "action-button__longtext-wrapper" }, [_c("strong", { staticClass: "action-button__name" }, [_vm._v(" " + _vm._s(_vm.name) + " ")]), _c("br"), _c("span", { staticClass: "action-button__longtext", domProps: { "textContent": _vm._s(_vm.text) } })]) : _vm.isLongText ? _c("span", { staticClass: "action-button__longtext", domProps: { "textContent": _vm._s(_vm.text) } }) : _c("span", { staticClass: "action-button__text" }, [_vm._v(_vm._s(_vm.text))]), _vm.isMenu ? _c("ChevronRightIcon", { staticClass: "action-button__menu-icon", attrs: { "size": 20 } }) : _vm.isChecked === true ? _c("CheckIcon", { staticClass: "action-button__pressed-icon", attrs: { "size": 20 } }) : _vm.isChecked === false ? _c("span", { staticClass: "action-button__pressed-icon material-design-icon" }) : _vm._e(), _vm._e()], 2)]);
157
+ };
158
+ var _sfc_staticRenderFns = [];
159
+ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
160
+ _sfc_main,
161
+ _sfc_render,
162
+ _sfc_staticRenderFns,
163
+ false,
127
164
  null,
128
- "51d9ee64",
165
+ "41f6d0c4",
129
166
  null,
130
167
  null
131
168
  );
132
- const d = r.exports;
133
- module.exports = d;
169
+ const NcActionButton = __component__.exports;
170
+ module.exports = NcActionButton;
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButton.cjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\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>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n\n### With different model behavior\nBy default the button will act like a normal button, but it is also possible to change the behavior to a toggle button, checkbox button or radio button.\n\nFor example to have the button act like a toggle button just set the `modelValue` property to the toggle state:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t}\n\t},\n}\n</script>\n```\n\nAnother example would be using it with checkbox semantics, to enable or disable features.\nThis also allows tri-state behavior (`true`, `false`, `null`) in which case `aria-checked` will be either `true`, `false` or `mixed`.\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"handRaised\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise hand\n\t\t</NcActionButton>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t\thandRaised: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nIt is also possible to use the button with radio semantics, this is only possible in menus and not for inline actions!\n\nWith a string `modelValue`, checked state is determined by the `value` property and updates `modelValue` with the new `value` string.\n\nWith a boolean `modelValue`, checked state is determined by `modelValue` and updates to `true` on check.\n\nNote: unlike native radio buttons, `NcActionButton` are not grouped by name, so you need to connect them by bind correct `modelValue``.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"cash\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Cash :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay with cash\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"card\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CreditCard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay by card\n\t\t\t</NcActionButton>\n\t\t\t<NcActionSeparator />\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isLeft\" @update:modelValue=\"setAlign('Left', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tLeft\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isCenter\" @update:modelValue=\"setAlign('Center', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCenter\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isRight\" @update:modelValue=\"setAlign('Right', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tRight\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t\t<p>payment = \"{{ payment }}\"</p>\n\t\t<p>align.isLeft = {{ align.isLeft }}</p>\n\t\t<p>align.isCenter = {{ align.isCenter }}</p>\n\t\t<p>align.isRight = {{ align.isRight }}</p>\n\t</div>\n</template>\n<script>\nimport Cash from 'vue-material-design-icons/Cash.vue'\nimport CreditCard from 'vue-material-design-icons/CreditCard.vue'\nimport FormatAlignLeft from 'vue-material-design-icons/FormatAlignLeft.vue'\nimport FormatAlignCenter from 'vue-material-design-icons/FormatAlignCenter.vue'\nimport FormatAlignRight from 'vue-material-design-icons/FormatAlignRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tCash,\n\t\tCreditCard,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpayment: 'card',\n\t\t\talign: {\n\t\t\t\tisLeft: false,\n\t\t\t\tisCenter: true,\n\t\t\t\tisRight: false,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\tsetAlign(direction, value) {\n\t\t\tthis.align.isLeft = false\n\t\t\tthis.align.isCenter = false\n\t\t\tthis.align.isRight = false\n\t\t\tthis.align[`is${direction}`] = value\n\t\t},\n\t}\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<button :aria-label=\"ariaLabel\"\n\t\t\t:class=\"['action-button button-vue', {\n\t\t\t\t'action-button--active': isChecked,\n\t\t\t\tfocusable: isFocusable,\n\t\t\t}]\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:title=\"title\"\n\t\t\t:type=\"nativeType\"\n\t\t\tv-bind=\"buttonAttributes\"\n\t\t\t@click=\"handleClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<CheckIcon v-else-if=\"isChecked === true\" :size=\"20\" class=\"action-button__pressed-icon\" />\n\t\t\t<span v-else-if=\"isChecked === false\" class=\"action-button__pressed-icon material-design-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tCheckIcon,\n\t\tChevronRightIcon,\n\t},\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: 'NcActions:isSemanticMenu',\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\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 * disabled state of the action button\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 * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n\t\t * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n\t\t * This extends the native HTML button type attribute.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'button',\n\t\t\tvalidator: (behavior) => ['button', 'checkbox', 'radio', 'reset', 'submit'].includes(behavior),\n\t\t},\n\n\t\t/**\n\t\t * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n\t\t * For checkbox and toggle button behavior - boolean value.\n\t\t * For radio button behavior - could be a boolean checked or a string with the value of the button.\n\t\t * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n\t\t *\n\t\t * **This is not availabe for `type='submit'` or `type='reset'`**\n\t\t *\n\t\t * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n\t\t * For `type='radio'` `null` is equal to `false`\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [Boolean, String],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value used for the `modelValue` when this component is used with radio behavior\n\t\t * Similar to the `value` attribute of `<input type=\"radio\">`\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * The current \"checked\" or \"pressed\" state for the model behavior\n\t\t */\n\t\tisChecked() {\n\t\t\tif (this.type === 'radio' && typeof this.modelValue !== 'boolean') {\n\t\t\t\treturn this.modelValue === this.value\n\t\t\t}\n\t\t\treturn this.modelValue\n\t\t},\n\n\t\t/**\n\t\t * The native HTML type to set on the button\n\t\t */\n\t\tnativeType() {\n\t\t\tif (this.type === 'submit' || this.type === 'reset') {\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn 'button'\n\t\t},\n\n\t\t/**\n\t\t * HTML attributes to bind to the <button>\n\t\t */\n\t\tbuttonAttributes() {\n\t\t\tconst attributes = {}\n\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\t// By default it needs to be a menu item in semantic menus\n\t\t\t\tattributes.role = 'menuitem'\n\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tattributes.role = 'menuitemradio'\n\t\t\t\t\tattributes['aria-checked'] = this.isChecked ? 'true' : 'false'\n\t\t\t\t} else if (this.type === 'checkbox' || (this.nativeType === 'button' && this.modelValue !== null)) {\n\t\t\t\t\t// either if checkbox behavior was set or the model value is not unset\n\t\t\t\t\tattributes.role = 'menuitemcheckbox'\n\t\t\t\t\tattributes['aria-checked'] = this.modelValue === null ? 'mixed' : (this.modelValue ? 'true' : 'false')\n\t\t\t\t}\n\t\t\t} else if (this.modelValue !== null && this.nativeType === 'button') {\n\t\t\t\t// In case this has a modelValue it is considered a toggle button, so we need to set the aria-pressed\n\t\t\t\tattributes['aria-pressed'] = this.modelValue ? 'true' : 'false'\n\t\t\t}\n\n\t\t\treturn attributes\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n\t\t * @param {MouseEvent} event The click event\n\t\t */\n\t\thandleClick(event) {\n\t\t\tthis.onClick(event)\n\t\t\t// If modelValue or type is set (so modelValue might be null for tri-state) we need to update it\n\t\t\tif (this.modelValue !== null || this.type !== 'button') {\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tif (typeof this.modelValue !== 'boolean') {\n\t\t\t\t\t\t// String-value radios behavior is similar to native - click on checked radio does nothing\n\t\t\t\t\t\tif (!this.isChecked) {\n\t\t\t\t\t\t\tthis.$emit('update:modelValue', this.value)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Boolean radio allows to uncheck\n\t\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Checkbox toggles value\n\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button__pressed-icon {\n\tmargin-left: auto;\n\tmargin-right: -$icon-margin;\n}\n</style>\n"],"names":["_sfc_main","CheckIcon","ChevronRightIcon","ActionTextMixin","behavior","attributes","event"],"mappings":";wNAyYAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,WAAAC,EAAA;AAAA,IACA,kBAAAC,EAAA;AAAA,EACA;AAAA,EACA,QAAA,CAAAC,EAAAA,eAAA;AAAA,EAEA,QAAA;AAAA,IACA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;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,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAAC,MAAA,CAAA,UAAA,YAAA,SAAA,SAAA,QAAA,EAAA,SAAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,YAAA;AAAA,MACA,MAAA,CAAA,SAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AACA,aAAA,KAAA,SAAA,WAAA,OAAA,KAAA,cAAA,YACA,KAAA,eAAA,KAAA,QAEA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AACA,aAAA,KAAA,SAAA,YAAA,KAAA,SAAA,UACA,KAAA,OAEA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,YAAAC,IAAA,CAAA;AAEA,aAAA,KAAA,oBAEAA,EAAA,OAAA,YAEA,KAAA,SAAA,WACAA,EAAA,OAAA,iBACAA,EAAA,cAAA,IAAA,KAAA,YAAA,SAAA,YACA,KAAA,SAAA,cAAA,KAAA,eAAA,YAAA,KAAA,eAAA,UAEAA,EAAA,OAAA,oBACAA,EAAA,cAAA,IAAA,KAAA,eAAA,OAAA,UAAA,KAAA,aAAA,SAAA,YAEA,KAAA,eAAA,QAAA,KAAA,eAAA,aAEAA,EAAA,cAAA,IAAA,KAAA,aAAA,SAAA,UAGAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAAC,GAAA;AACA,WAAA,QAAAA,CAAA,IAEA,KAAA,eAAA,QAAA,KAAA,SAAA,cACA,KAAA,SAAA,UACA,OAAA,KAAA,cAAA,YAEA,KAAA,aACA,KAAA,MAAA,qBAAA,KAAA,KAAA,IAIA,KAAA,MAAA,qBAAA,CAAA,KAAA,SAAA,IAIA,KAAA,MAAA,qBAAA,CAAA,KAAA,SAAA;AAAA,IAGA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcActionButton.cjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\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>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n\n### With different model behavior\nBy default the button will act like a normal button, but it is also possible to change the behavior to a toggle button, checkbox button or radio button.\n\nFor example to have the button act like a toggle button just set the `modelValue` property to the toggle state:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t}\n\t},\n}\n</script>\n```\n\nAnother example would be using it with checkbox semantics, to enable or disable features.\nThis also allows tri-state behavior (`true`, `false`, `null`) in which case `aria-checked` will be either `true`, `false` or `mixed`.\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"handRaised\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise hand\n\t\t</NcActionButton>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t\thandRaised: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nIt is also possible to use the button with radio semantics, this is only possible in menus and not for inline actions!\n\nWith a string `modelValue`, checked state is determined by the `value` property and updates `modelValue` with the new `value` string.\n\nWith a boolean `modelValue`, checked state is determined by `modelValue` and updates to `true` on check.\n\nNote: unlike native radio buttons, `NcActionButton` are not grouped by name, so you need to connect them by bind correct `modelValue``.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"cash\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Cash :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay with cash\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"card\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CreditCard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay by card\n\t\t\t</NcActionButton>\n\t\t\t<NcActionSeparator />\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isLeft\" @update:modelValue=\"setAlign('Left', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tLeft\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isCenter\" @update:modelValue=\"setAlign('Center', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCenter\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isRight\" @update:modelValue=\"setAlign('Right', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tRight\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t\t<p>payment = \"{{ payment }}\"</p>\n\t\t<p>align.isLeft = {{ align.isLeft }}</p>\n\t\t<p>align.isCenter = {{ align.isCenter }}</p>\n\t\t<p>align.isRight = {{ align.isRight }}</p>\n\t</div>\n</template>\n<script>\nimport Cash from 'vue-material-design-icons/Cash.vue'\nimport CreditCard from 'vue-material-design-icons/CreditCard.vue'\nimport FormatAlignLeft from 'vue-material-design-icons/FormatAlignLeft.vue'\nimport FormatAlignCenter from 'vue-material-design-icons/FormatAlignCenter.vue'\nimport FormatAlignRight from 'vue-material-design-icons/FormatAlignRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tCash,\n\t\tCreditCard,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpayment: 'card',\n\t\t\talign: {\n\t\t\t\tisLeft: false,\n\t\t\t\tisCenter: true,\n\t\t\t\tisRight: false,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\tsetAlign(direction, value) {\n\t\t\tthis.align.isLeft = false\n\t\t\tthis.align.isCenter = false\n\t\t\tthis.align.isRight = false\n\t\t\tthis.align[`is${direction}`] = value\n\t\t},\n\t}\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<button :aria-label=\"ariaLabel\"\n\t\t\t:class=\"['action-button button-vue', {\n\t\t\t\t'action-button--active': isChecked,\n\t\t\t\tfocusable: isFocusable,\n\t\t\t}]\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:title=\"title\"\n\t\t\t:type=\"nativeType\"\n\t\t\tv-bind=\"buttonAttributes\"\n\t\t\t@click=\"handleClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<CheckIcon v-else-if=\"isChecked === true\" :size=\"20\" class=\"action-button__pressed-icon\" />\n\t\t\t<span v-else-if=\"isChecked === false\" class=\"action-button__pressed-icon material-design-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tCheckIcon,\n\t\tChevronRightIcon,\n\t},\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: 'NcActions:isSemanticMenu',\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\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 * disabled state of the action button\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 * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n\t\t * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n\t\t * This extends the native HTML button type attribute.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'button',\n\t\t\tvalidator: (behavior) => ['button', 'checkbox', 'radio', 'reset', 'submit'].includes(behavior),\n\t\t},\n\n\t\t/**\n\t\t * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n\t\t * For checkbox and toggle button behavior - boolean value.\n\t\t * For radio button behavior - could be a boolean checked or a string with the value of the button.\n\t\t * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n\t\t *\n\t\t * **This is not availabe for `type='submit'` or `type='reset'`**\n\t\t *\n\t\t * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n\t\t * For `type='radio'` `null` is equal to `false`\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [Boolean, String],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value used for the `modelValue` when this component is used with radio behavior\n\t\t * Similar to the `value` attribute of `<input type=\"radio\">`\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * The current \"checked\" or \"pressed\" state for the model behavior\n\t\t */\n\t\tisChecked() {\n\t\t\tif (this.type === 'radio' && typeof this.modelValue !== 'boolean') {\n\t\t\t\treturn this.modelValue === this.value\n\t\t\t}\n\t\t\treturn this.modelValue\n\t\t},\n\n\t\t/**\n\t\t * The native HTML type to set on the button\n\t\t */\n\t\tnativeType() {\n\t\t\tif (this.type === 'submit' || this.type === 'reset') {\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn 'button'\n\t\t},\n\n\t\t/**\n\t\t * HTML attributes to bind to the <button>\n\t\t */\n\t\tbuttonAttributes() {\n\t\t\tconst attributes = {}\n\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\t// By default it needs to be a menu item in semantic menus\n\t\t\t\tattributes.role = 'menuitem'\n\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tattributes.role = 'menuitemradio'\n\t\t\t\t\tattributes['aria-checked'] = this.isChecked ? 'true' : 'false'\n\t\t\t\t} else if (this.type === 'checkbox' || (this.nativeType === 'button' && this.modelValue !== null)) {\n\t\t\t\t\t// either if checkbox behavior was set or the model value is not unset\n\t\t\t\t\tattributes.role = 'menuitemcheckbox'\n\t\t\t\t\tattributes['aria-checked'] = this.modelValue === null ? 'mixed' : (this.modelValue ? 'true' : 'false')\n\t\t\t\t}\n\t\t\t} else if (this.modelValue !== null && this.nativeType === 'button') {\n\t\t\t\t// In case this has a modelValue it is considered a toggle button, so we need to set the aria-pressed\n\t\t\t\tattributes['aria-pressed'] = this.modelValue ? 'true' : 'false'\n\t\t\t}\n\n\t\t\treturn attributes\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n\t\t * @param {MouseEvent} event The click event\n\t\t */\n\t\thandleClick(event) {\n\t\t\tthis.onClick(event)\n\t\t\t// If modelValue or type is set (so modelValue might be null for tri-state) we need to update it\n\t\t\tif (this.modelValue !== null || this.type !== 'button') {\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tif (typeof this.modelValue !== 'boolean') {\n\t\t\t\t\t\t// String-value radios behavior is similar to native - click on checked radio does nothing\n\t\t\t\t\t\tif (!this.isChecked) {\n\t\t\t\t\t\t\tthis.$emit('update:modelValue', this.value)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Boolean radio allows to uncheck\n\t\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Checkbox toggles value\n\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button__pressed-icon {\n\tmargin-left: auto;\n\tmargin-right: -$icon-margin;\n}\n</style>\n"],"names":["CheckIcon","ChevronRightIcon","ActionTextMixin"],"mappings":";;;;;AAyYA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,WAAAA,MAAA;AAAA,IACA,kBAAAC,aAAA;AAAA,EACA;AAAA,EACA,QAAA,CAAAC,WAAAA,eAAA;AAAA,EAEA,QAAA;AAAA,IACA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;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,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,aAAA,CAAA,UAAA,YAAA,SAAA,SAAA,QAAA,EAAA,SAAA,QAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,YAAA;AAAA,MACA,MAAA,CAAA,SAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AACA,UAAA,KAAA,SAAA,WAAA,OAAA,KAAA,eAAA,WAAA;AACA,eAAA,KAAA,eAAA,KAAA;AAAA,MACA;AACA,aAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AACA,UAAA,KAAA,SAAA,YAAA,KAAA,SAAA,SAAA;AACA,eAAA,KAAA;AAAA,MACA;AACA,aAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,YAAA,aAAA,CAAA;AAEA,UAAA,KAAA,kBAAA;AAEA,mBAAA,OAAA;AAEA,YAAA,KAAA,SAAA,SAAA;AACA,qBAAA,OAAA;AACA,qBAAA,cAAA,IAAA,KAAA,YAAA,SAAA;AAAA,QACA,WAAA,KAAA,SAAA,cAAA,KAAA,eAAA,YAAA,KAAA,eAAA,MAAA;AAEA,qBAAA,OAAA;AACA,qBAAA,cAAA,IAAA,KAAA,eAAA,OAAA,UAAA,KAAA,aAAA,SAAA;AAAA,QACA;AAAA,MACA,WAAA,KAAA,eAAA,QAAA,KAAA,eAAA,UAAA;AAEA,mBAAA,cAAA,IAAA,KAAA,aAAA,SAAA;AAAA,MACA;AAEA,aAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA,OAAA;AACA,WAAA,QAAA,KAAA;AAEA,UAAA,KAAA,eAAA,QAAA,KAAA,SAAA,UAAA;AACA,YAAA,KAAA,SAAA,SAAA;AACA,cAAA,OAAA,KAAA,eAAA,WAAA;AAEA,gBAAA,CAAA,KAAA,WAAA;AACA,mBAAA,MAAA,qBAAA,KAAA,KAAA;AAAA,YACA;AAAA,UACA,OAAA;AAEA,iBAAA,MAAA,qBAAA,CAAA,KAAA,SAAA;AAAA,UACA;AAAA,QACA,OAAA;AAEA,eAAA,MAAA,qBAAA,CAAA,KAAA,SAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,19 +1,19 @@
1
- import '../assets/NcActionButton-Cs5kVVAD.css';
2
- import { C as s } from "../chunks/Check-CRLmJNGG.mjs";
3
- import { C as n } from "../chunks/ChevronRight-DL3e8bjj.mjs";
4
- import { A as a } from "../chunks/actionText-jLsEBszD.mjs";
5
- import { n as o } from "../chunks/_plugin-vue2_normalizer-Bj5bLKV4.mjs";
6
- const l = {
1
+ import '../assets/NcActionButton-D08gPtwM.css';
2
+ import { C as Check } from "../chunks/Check-PawIlCwa.mjs";
3
+ import { C as ChevronRight } from "../chunks/ChevronRight-BNa7yMja.mjs";
4
+ import { A as ActionTextMixin } from "../chunks/actionText-BaGktsVf.mjs";
5
+ import { n as normalizeComponent } from "../chunks/_plugin-vue2_normalizer-D637Qkok.mjs";
6
+ const _sfc_main = {
7
7
  name: "NcActionButton",
8
8
  components: {
9
- CheckIcon: s,
10
- ChevronRightIcon: n
9
+ CheckIcon: Check,
10
+ ChevronRightIcon: ChevronRight
11
11
  },
12
- mixins: [a],
12
+ mixins: [ActionTextMixin],
13
13
  inject: {
14
14
  isInSemanticMenu: {
15
15
  from: "NcActions:isSemanticMenu",
16
- default: !1
16
+ default: false
17
17
  }
18
18
  },
19
19
  props: {
@@ -31,7 +31,7 @@ const l = {
31
31
  */
32
32
  disabled: {
33
33
  type: Boolean,
34
- default: !1
34
+ default: false
35
35
  },
36
36
  /**
37
37
  * If this is a menu, a chevron icon will
@@ -39,7 +39,7 @@ const l = {
39
39
  */
40
40
  isMenu: {
41
41
  type: Boolean,
42
- default: !1
42
+ default: false
43
43
  },
44
44
  /**
45
45
  * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.
@@ -49,7 +49,7 @@ const l = {
49
49
  type: {
50
50
  type: String,
51
51
  default: "button",
52
- validator: (e) => ["button", "checkbox", "radio", "reset", "submit"].includes(e)
52
+ validator: (behavior) => ["button", "checkbox", "radio", "reset", "submit"].includes(behavior)
53
53
  },
54
54
  /**
55
55
  * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).
@@ -88,20 +88,38 @@ const l = {
88
88
  * The current "checked" or "pressed" state for the model behavior
89
89
  */
90
90
  isChecked() {
91
- return this.type === "radio" && typeof this.modelValue != "boolean" ? this.modelValue === this.value : this.modelValue;
91
+ if (this.type === "radio" && typeof this.modelValue !== "boolean") {
92
+ return this.modelValue === this.value;
93
+ }
94
+ return this.modelValue;
92
95
  },
93
96
  /**
94
97
  * The native HTML type to set on the button
95
98
  */
96
99
  nativeType() {
97
- return this.type === "submit" || this.type === "reset" ? this.type : "button";
100
+ if (this.type === "submit" || this.type === "reset") {
101
+ return this.type;
102
+ }
103
+ return "button";
98
104
  },
99
105
  /**
100
106
  * HTML attributes to bind to the <button>
101
107
  */
102
108
  buttonAttributes() {
103
- const e = {};
104
- return this.isInSemanticMenu ? (e.role = "menuitem", this.type === "radio" ? (e.role = "menuitemradio", e["aria-checked"] = this.isChecked ? "true" : "false") : (this.type === "checkbox" || this.nativeType === "button" && this.modelValue !== null) && (e.role = "menuitemcheckbox", e["aria-checked"] = this.modelValue === null ? "mixed" : this.modelValue ? "true" : "false")) : this.modelValue !== null && this.nativeType === "button" && (e["aria-pressed"] = this.modelValue ? "true" : "false"), e;
109
+ const attributes = {};
110
+ if (this.isInSemanticMenu) {
111
+ attributes.role = "menuitem";
112
+ if (this.type === "radio") {
113
+ attributes.role = "menuitemradio";
114
+ attributes["aria-checked"] = this.isChecked ? "true" : "false";
115
+ } else if (this.type === "checkbox" || this.nativeType === "button" && this.modelValue !== null) {
116
+ attributes.role = "menuitemcheckbox";
117
+ attributes["aria-checked"] = this.modelValue === null ? "mixed" : this.modelValue ? "true" : "false";
118
+ }
119
+ } else if (this.modelValue !== null && this.nativeType === "button") {
120
+ attributes["aria-pressed"] = this.modelValue ? "true" : "false";
121
+ }
122
+ return attributes;
105
123
  }
106
124
  },
107
125
  methods: {
@@ -109,30 +127,45 @@ const l = {
109
127
  * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed
110
128
  * @param {MouseEvent} event The click event
111
129
  */
112
- handleClick(e) {
113
- this.onClick(e), (this.modelValue !== null || this.type !== "button") && (this.type === "radio" ? typeof this.modelValue != "boolean" ? this.isChecked || this.$emit("update:modelValue", this.value) : this.$emit("update:modelValue", !this.isChecked) : this.$emit("update:modelValue", !this.isChecked));
130
+ handleClick(event) {
131
+ this.onClick(event);
132
+ if (this.modelValue !== null || this.type !== "button") {
133
+ if (this.type === "radio") {
134
+ if (typeof this.modelValue !== "boolean") {
135
+ if (!this.isChecked) {
136
+ this.$emit("update:modelValue", this.value);
137
+ }
138
+ } else {
139
+ this.$emit("update:modelValue", !this.isChecked);
140
+ }
141
+ } else {
142
+ this.$emit("update:modelValue", !this.isChecked);
143
+ }
144
+ }
114
145
  }
115
146
  }
116
147
  };
117
- var u = function() {
118
- var t = this, i = t._self._c;
119
- return i("li", { staticClass: "action", class: { "action--disabled": t.disabled }, attrs: { role: t.isInSemanticMenu && "presentation" } }, [i("button", t._b({ class: ["action-button button-vue", {
120
- "action-button--active": t.isChecked,
121
- focusable: t.isFocusable
122
- }], attrs: { "aria-label": t.ariaLabel, disabled: t.disabled, title: t.title, type: t.nativeType }, on: { click: t.handleClick } }, "button", t.buttonAttributes, !1), [t._t("icon", function() {
123
- return [i("span", { staticClass: "action-button__icon", class: [t.isIconUrl ? "action-button__icon--url" : t.icon], style: { backgroundImage: t.isIconUrl ? "url(".concat(t.icon, ")") : null }, attrs: { "aria-hidden": "true" } })];
124
- }), t.name ? i("span", { staticClass: "action-button__longtext-wrapper" }, [i("strong", { staticClass: "action-button__name" }, [t._v(" " + t._s(t.name) + " ")]), i("br"), i("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } })]) : t.isLongText ? i("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } }) : i("span", { staticClass: "action-button__text" }, [t._v(t._s(t.text))]), t.isMenu ? i("ChevronRightIcon", { staticClass: "action-button__menu-icon", attrs: { size: 20 } }) : t.isChecked === !0 ? i("CheckIcon", { staticClass: "action-button__pressed-icon", attrs: { size: 20 } }) : t.isChecked === !1 ? i("span", { staticClass: "action-button__pressed-icon material-design-icon" }) : t._e(), t._e()], 2)]);
125
- }, c = [], r = /* @__PURE__ */ o(
126
- l,
127
- u,
128
- c,
129
- !1,
148
+ var _sfc_render = function render() {
149
+ var _vm = this, _c = _vm._self._c;
150
+ return _c("li", { staticClass: "action", class: { "action--disabled": _vm.disabled }, attrs: { "role": _vm.isInSemanticMenu && "presentation" } }, [_c("button", _vm._b({ class: ["action-button button-vue", {
151
+ "action-button--active": _vm.isChecked,
152
+ focusable: _vm.isFocusable
153
+ }], attrs: { "aria-label": _vm.ariaLabel, "disabled": _vm.disabled, "title": _vm.title, "type": _vm.nativeType }, on: { "click": _vm.handleClick } }, "button", _vm.buttonAttributes, false), [_vm._t("icon", function() {
154
+ return [_c("span", { staticClass: "action-button__icon", class: [_vm.isIconUrl ? "action-button__icon--url" : _vm.icon], style: { backgroundImage: _vm.isIconUrl ? "url(".concat(_vm.icon, ")") : null }, attrs: { "aria-hidden": "true" } })];
155
+ }), _vm.name ? _c("span", { staticClass: "action-button__longtext-wrapper" }, [_c("strong", { staticClass: "action-button__name" }, [_vm._v(" " + _vm._s(_vm.name) + " ")]), _c("br"), _c("span", { staticClass: "action-button__longtext", domProps: { "textContent": _vm._s(_vm.text) } })]) : _vm.isLongText ? _c("span", { staticClass: "action-button__longtext", domProps: { "textContent": _vm._s(_vm.text) } }) : _c("span", { staticClass: "action-button__text" }, [_vm._v(_vm._s(_vm.text))]), _vm.isMenu ? _c("ChevronRightIcon", { staticClass: "action-button__menu-icon", attrs: { "size": 20 } }) : _vm.isChecked === true ? _c("CheckIcon", { staticClass: "action-button__pressed-icon", attrs: { "size": 20 } }) : _vm.isChecked === false ? _c("span", { staticClass: "action-button__pressed-icon material-design-icon" }) : _vm._e(), _vm._e()], 2)]);
156
+ };
157
+ var _sfc_staticRenderFns = [];
158
+ var __component__ = /* @__PURE__ */ normalizeComponent(
159
+ _sfc_main,
160
+ _sfc_render,
161
+ _sfc_staticRenderFns,
162
+ false,
130
163
  null,
131
- "51d9ee64",
164
+ "41f6d0c4",
132
165
  null,
133
166
  null
134
167
  );
135
- const b = r.exports;
168
+ const NcActionButton = __component__.exports;
136
169
  export {
137
- b as default
170
+ NcActionButton as default
138
171
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButton.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\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>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n\n### With different model behavior\nBy default the button will act like a normal button, but it is also possible to change the behavior to a toggle button, checkbox button or radio button.\n\nFor example to have the button act like a toggle button just set the `modelValue` property to the toggle state:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t}\n\t},\n}\n</script>\n```\n\nAnother example would be using it with checkbox semantics, to enable or disable features.\nThis also allows tri-state behavior (`true`, `false`, `null`) in which case `aria-checked` will be either `true`, `false` or `mixed`.\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"handRaised\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise hand\n\t\t</NcActionButton>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t\thandRaised: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nIt is also possible to use the button with radio semantics, this is only possible in menus and not for inline actions!\n\nWith a string `modelValue`, checked state is determined by the `value` property and updates `modelValue` with the new `value` string.\n\nWith a boolean `modelValue`, checked state is determined by `modelValue` and updates to `true` on check.\n\nNote: unlike native radio buttons, `NcActionButton` are not grouped by name, so you need to connect them by bind correct `modelValue``.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"cash\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Cash :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay with cash\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"card\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CreditCard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay by card\n\t\t\t</NcActionButton>\n\t\t\t<NcActionSeparator />\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isLeft\" @update:modelValue=\"setAlign('Left', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tLeft\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isCenter\" @update:modelValue=\"setAlign('Center', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCenter\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isRight\" @update:modelValue=\"setAlign('Right', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tRight\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t\t<p>payment = \"{{ payment }}\"</p>\n\t\t<p>align.isLeft = {{ align.isLeft }}</p>\n\t\t<p>align.isCenter = {{ align.isCenter }}</p>\n\t\t<p>align.isRight = {{ align.isRight }}</p>\n\t</div>\n</template>\n<script>\nimport Cash from 'vue-material-design-icons/Cash.vue'\nimport CreditCard from 'vue-material-design-icons/CreditCard.vue'\nimport FormatAlignLeft from 'vue-material-design-icons/FormatAlignLeft.vue'\nimport FormatAlignCenter from 'vue-material-design-icons/FormatAlignCenter.vue'\nimport FormatAlignRight from 'vue-material-design-icons/FormatAlignRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tCash,\n\t\tCreditCard,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpayment: 'card',\n\t\t\talign: {\n\t\t\t\tisLeft: false,\n\t\t\t\tisCenter: true,\n\t\t\t\tisRight: false,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\tsetAlign(direction, value) {\n\t\t\tthis.align.isLeft = false\n\t\t\tthis.align.isCenter = false\n\t\t\tthis.align.isRight = false\n\t\t\tthis.align[`is${direction}`] = value\n\t\t},\n\t}\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<button :aria-label=\"ariaLabel\"\n\t\t\t:class=\"['action-button button-vue', {\n\t\t\t\t'action-button--active': isChecked,\n\t\t\t\tfocusable: isFocusable,\n\t\t\t}]\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:title=\"title\"\n\t\t\t:type=\"nativeType\"\n\t\t\tv-bind=\"buttonAttributes\"\n\t\t\t@click=\"handleClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<CheckIcon v-else-if=\"isChecked === true\" :size=\"20\" class=\"action-button__pressed-icon\" />\n\t\t\t<span v-else-if=\"isChecked === false\" class=\"action-button__pressed-icon material-design-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tCheckIcon,\n\t\tChevronRightIcon,\n\t},\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: 'NcActions:isSemanticMenu',\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\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 * disabled state of the action button\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 * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n\t\t * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n\t\t * This extends the native HTML button type attribute.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'button',\n\t\t\tvalidator: (behavior) => ['button', 'checkbox', 'radio', 'reset', 'submit'].includes(behavior),\n\t\t},\n\n\t\t/**\n\t\t * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n\t\t * For checkbox and toggle button behavior - boolean value.\n\t\t * For radio button behavior - could be a boolean checked or a string with the value of the button.\n\t\t * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n\t\t *\n\t\t * **This is not availabe for `type='submit'` or `type='reset'`**\n\t\t *\n\t\t * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n\t\t * For `type='radio'` `null` is equal to `false`\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [Boolean, String],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value used for the `modelValue` when this component is used with radio behavior\n\t\t * Similar to the `value` attribute of `<input type=\"radio\">`\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * The current \"checked\" or \"pressed\" state for the model behavior\n\t\t */\n\t\tisChecked() {\n\t\t\tif (this.type === 'radio' && typeof this.modelValue !== 'boolean') {\n\t\t\t\treturn this.modelValue === this.value\n\t\t\t}\n\t\t\treturn this.modelValue\n\t\t},\n\n\t\t/**\n\t\t * The native HTML type to set on the button\n\t\t */\n\t\tnativeType() {\n\t\t\tif (this.type === 'submit' || this.type === 'reset') {\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn 'button'\n\t\t},\n\n\t\t/**\n\t\t * HTML attributes to bind to the <button>\n\t\t */\n\t\tbuttonAttributes() {\n\t\t\tconst attributes = {}\n\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\t// By default it needs to be a menu item in semantic menus\n\t\t\t\tattributes.role = 'menuitem'\n\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tattributes.role = 'menuitemradio'\n\t\t\t\t\tattributes['aria-checked'] = this.isChecked ? 'true' : 'false'\n\t\t\t\t} else if (this.type === 'checkbox' || (this.nativeType === 'button' && this.modelValue !== null)) {\n\t\t\t\t\t// either if checkbox behavior was set or the model value is not unset\n\t\t\t\t\tattributes.role = 'menuitemcheckbox'\n\t\t\t\t\tattributes['aria-checked'] = this.modelValue === null ? 'mixed' : (this.modelValue ? 'true' : 'false')\n\t\t\t\t}\n\t\t\t} else if (this.modelValue !== null && this.nativeType === 'button') {\n\t\t\t\t// In case this has a modelValue it is considered a toggle button, so we need to set the aria-pressed\n\t\t\t\tattributes['aria-pressed'] = this.modelValue ? 'true' : 'false'\n\t\t\t}\n\n\t\t\treturn attributes\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n\t\t * @param {MouseEvent} event The click event\n\t\t */\n\t\thandleClick(event) {\n\t\t\tthis.onClick(event)\n\t\t\t// If modelValue or type is set (so modelValue might be null for tri-state) we need to update it\n\t\t\tif (this.modelValue !== null || this.type !== 'button') {\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tif (typeof this.modelValue !== 'boolean') {\n\t\t\t\t\t\t// String-value radios behavior is similar to native - click on checked radio does nothing\n\t\t\t\t\t\tif (!this.isChecked) {\n\t\t\t\t\t\t\tthis.$emit('update:modelValue', this.value)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Boolean radio allows to uncheck\n\t\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Checkbox toggles value\n\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button__pressed-icon {\n\tmargin-left: auto;\n\tmargin-right: -$icon-margin;\n}\n</style>\n"],"names":["_sfc_main","CheckIcon","ChevronRightIcon","ActionTextMixin","behavior","attributes","event"],"mappings":";;;;AAyYA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,WAAAC;AAAAA,IACA,kBAAAC;AAAAA,EACA;AAAA,EACA,QAAA,CAAAC,CAAA;AAAA,EAEA,QAAA;AAAA,IACA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;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,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAAC,MAAA,CAAA,UAAA,YAAA,SAAA,SAAA,QAAA,EAAA,SAAAA,CAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,YAAA;AAAA,MACA,MAAA,CAAA,SAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AACA,aAAA,KAAA,SAAA,WAAA,OAAA,KAAA,cAAA,YACA,KAAA,eAAA,KAAA,QAEA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AACA,aAAA,KAAA,SAAA,YAAA,KAAA,SAAA,UACA,KAAA,OAEA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,YAAAC,IAAA,CAAA;AAEA,aAAA,KAAA,oBAEAA,EAAA,OAAA,YAEA,KAAA,SAAA,WACAA,EAAA,OAAA,iBACAA,EAAA,cAAA,IAAA,KAAA,YAAA,SAAA,YACA,KAAA,SAAA,cAAA,KAAA,eAAA,YAAA,KAAA,eAAA,UAEAA,EAAA,OAAA,oBACAA,EAAA,cAAA,IAAA,KAAA,eAAA,OAAA,UAAA,KAAA,aAAA,SAAA,YAEA,KAAA,eAAA,QAAA,KAAA,eAAA,aAEAA,EAAA,cAAA,IAAA,KAAA,aAAA,SAAA,UAGAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAAC,GAAA;AACA,WAAA,QAAAA,CAAA,IAEA,KAAA,eAAA,QAAA,KAAA,SAAA,cACA,KAAA,SAAA,UACA,OAAA,KAAA,cAAA,YAEA,KAAA,aACA,KAAA,MAAA,qBAAA,KAAA,KAAA,IAIA,KAAA,MAAA,qBAAA,CAAA,KAAA,SAAA,IAIA,KAAA,MAAA,qBAAA,CAAA,KAAA,SAAA;AAAA,IAGA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcActionButton.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\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>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete.vue'\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n\n### With different model behavior\nBy default the button will act like a normal button, but it is also possible to change the behavior to a toggle button, checkbox button or radio button.\n\nFor example to have the button act like a toggle button just set the `modelValue` property to the toggle state:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t}\n\t},\n}\n</script>\n```\n\nAnother example would be using it with checkbox semantics, to enable or disable features.\nThis also allows tri-state behavior (`true`, `false`, `null`) in which case `aria-checked` will be either `true`, `false` or `mixed`.\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton :model-value.sync=\"handRaised\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise hand\n\t\t</NcActionButton>\n\t\t<NcActionButton :model-value.sync=\"fullscreen\" type=\"checkbox\">\n\t\t\t<template #icon>\n\t\t\t\t<Fullscreen :size=\"20\" />\n\t\t\t</template>\n\t\t\tFullscreen\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft.vue'\nimport Fullscreen from 'vue-material-design-icons/Fullscreen.vue'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tFullscreen,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tfullscreen: true,\n\t\t\thandRaised: false,\n\t\t}\n\t},\n}\n</script>\n```\n\nIt is also possible to use the button with radio semantics, this is only possible in menus and not for inline actions!\n\nWith a string `modelValue`, checked state is determined by the `value` property and updates `modelValue` with the new `value` string.\n\nWith a boolean `modelValue`, checked state is determined by `modelValue` and updates to `true` on check.\n\nNote: unlike native radio buttons, `NcActionButton` are not grouped by name, so you need to connect them by bind correct `modelValue``.\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"cash\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Cash :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay with cash\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :model-value.sync=\"payment\" type=\"radio\" value=\"card\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CreditCard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tPay by card\n\t\t\t</NcActionButton>\n\t\t\t<NcActionSeparator />\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isLeft\" @update:modelValue=\"setAlign('Left', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tLeft\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isCenter\" @update:modelValue=\"setAlign('Center', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCenter\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton type=\"radio\" :model-value=\"align.isRight\" @update:modelValue=\"setAlign('Right', $event)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tRight\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t\t<p>payment = \"{{ payment }}\"</p>\n\t\t<p>align.isLeft = {{ align.isLeft }}</p>\n\t\t<p>align.isCenter = {{ align.isCenter }}</p>\n\t\t<p>align.isRight = {{ align.isRight }}</p>\n\t</div>\n</template>\n<script>\nimport Cash from 'vue-material-design-icons/Cash.vue'\nimport CreditCard from 'vue-material-design-icons/CreditCard.vue'\nimport FormatAlignLeft from 'vue-material-design-icons/FormatAlignLeft.vue'\nimport FormatAlignCenter from 'vue-material-design-icons/FormatAlignCenter.vue'\nimport FormatAlignRight from 'vue-material-design-icons/FormatAlignRight.vue'\n\nexport default {\n\tcomponents: {\n\t\tCash,\n\t\tCreditCard,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tpayment: 'card',\n\t\t\talign: {\n\t\t\t\tisLeft: false,\n\t\t\t\tisCenter: true,\n\t\t\t\tisRight: false,\n\t\t\t},\n\t\t}\n\t},\n\tmethods: {\n\t\tsetAlign(direction, value) {\n\t\t\tthis.align.isLeft = false\n\t\t\tthis.align.isCenter = false\n\t\t\tthis.align.isRight = false\n\t\t\tthis.align[`is${direction}`] = value\n\t\t},\n\t}\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<button :aria-label=\"ariaLabel\"\n\t\t\t:class=\"['action-button button-vue', {\n\t\t\t\t'action-button--active': isChecked,\n\t\t\t\tfocusable: isFocusable,\n\t\t\t}]\"\n\t\t\t:disabled=\"disabled\"\n\t\t\t:title=\"title\"\n\t\t\t:type=\"nativeType\"\n\t\t\tv-bind=\"buttonAttributes\"\n\t\t\t@click=\"handleClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu\" :size=\"20\" class=\"action-button__menu-icon\" />\n\t\t\t<CheckIcon v-else-if=\"isChecked === true\" :size=\"20\" class=\"action-button__pressed-icon\" />\n\t\t\t<span v-else-if=\"isChecked === false\" class=\"action-button__pressed-icon material-design-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tCheckIcon,\n\t\tChevronRightIcon,\n\t},\n\tmixins: [ActionTextMixin],\n\n\tinject: {\n\t\tisInSemanticMenu: {\n\t\t\tfrom: 'NcActions:isSemanticMenu',\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tprops: {\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 * disabled state of the action button\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 * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * The button's behavior, by default the button acts like a normal button with optional toggle button behavior if `modelValue` is `true` or `false`.\n\t\t * But you can also set to checkbox button behavior with tri-state or radio button like behavior.\n\t\t * This extends the native HTML button type attribute.\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tdefault: 'button',\n\t\t\tvalidator: (behavior) => ['button', 'checkbox', 'radio', 'reset', 'submit'].includes(behavior),\n\t\t},\n\n\t\t/**\n\t\t * The buttons state if `type` is 'checkbox' or 'radio' (meaning if it is pressed / selected).\n\t\t * For checkbox and toggle button behavior - boolean value.\n\t\t * For radio button behavior - could be a boolean checked or a string with the value of the button.\n\t\t * Note: Unlike native radio buttons, NcActionButton are not grouped by name, so you need to connect them by bind correct modelValue.\n\t\t *\n\t\t * **This is not availabe for `type='submit'` or `type='reset'`**\n\t\t *\n\t\t * If using `type='checkbox'` a `model-value` of `true` means checked, `false` means unchecked and `null` means indeterminate (tri-state)\n\t\t * For `type='radio'` `null` is equal to `false`\n\t\t */\n\t\tmodelValue: {\n\t\t\ttype: [Boolean, String],\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * The value used for the `modelValue` when this component is used with radio behavior\n\t\t * Similar to the `value` attribute of `<input type=\"radio\">`\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\t/**\n\t\t * The current \"checked\" or \"pressed\" state for the model behavior\n\t\t */\n\t\tisChecked() {\n\t\t\tif (this.type === 'radio' && typeof this.modelValue !== 'boolean') {\n\t\t\t\treturn this.modelValue === this.value\n\t\t\t}\n\t\t\treturn this.modelValue\n\t\t},\n\n\t\t/**\n\t\t * The native HTML type to set on the button\n\t\t */\n\t\tnativeType() {\n\t\t\tif (this.type === 'submit' || this.type === 'reset') {\n\t\t\t\treturn this.type\n\t\t\t}\n\t\t\treturn 'button'\n\t\t},\n\n\t\t/**\n\t\t * HTML attributes to bind to the <button>\n\t\t */\n\t\tbuttonAttributes() {\n\t\t\tconst attributes = {}\n\n\t\t\tif (this.isInSemanticMenu) {\n\t\t\t\t// By default it needs to be a menu item in semantic menus\n\t\t\t\tattributes.role = 'menuitem'\n\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tattributes.role = 'menuitemradio'\n\t\t\t\t\tattributes['aria-checked'] = this.isChecked ? 'true' : 'false'\n\t\t\t\t} else if (this.type === 'checkbox' || (this.nativeType === 'button' && this.modelValue !== null)) {\n\t\t\t\t\t// either if checkbox behavior was set or the model value is not unset\n\t\t\t\t\tattributes.role = 'menuitemcheckbox'\n\t\t\t\t\tattributes['aria-checked'] = this.modelValue === null ? 'mixed' : (this.modelValue ? 'true' : 'false')\n\t\t\t\t}\n\t\t\t} else if (this.modelValue !== null && this.nativeType === 'button') {\n\t\t\t\t// In case this has a modelValue it is considered a toggle button, so we need to set the aria-pressed\n\t\t\t\tattributes['aria-pressed'] = this.modelValue ? 'true' : 'false'\n\t\t\t}\n\n\t\t\treturn attributes\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Forward click event, let mixin handle the close-after-click and emit new modelValue if needed\n\t\t * @param {MouseEvent} event The click event\n\t\t */\n\t\thandleClick(event) {\n\t\t\tthis.onClick(event)\n\t\t\t// If modelValue or type is set (so modelValue might be null for tri-state) we need to update it\n\t\t\tif (this.modelValue !== null || this.type !== 'button') {\n\t\t\t\tif (this.type === 'radio') {\n\t\t\t\t\tif (typeof this.modelValue !== 'boolean') {\n\t\t\t\t\t\t// String-value radios behavior is similar to native - click on checked radio does nothing\n\t\t\t\t\t\tif (!this.isChecked) {\n\t\t\t\t\t\t\tthis.$emit('update:modelValue', this.value)\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Boolean radio allows to uncheck\n\t\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Checkbox toggles value\n\t\t\t\t\tthis.$emit('update:modelValue', !this.isChecked)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button__pressed-icon {\n\tmargin-left: auto;\n\tmargin-right: -$icon-margin;\n}\n</style>\n"],"names":["CheckIcon","ChevronRightIcon"],"mappings":";;;;AAyYA,MAAA,YAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,WAAAA;AAAAA,IACA,kBAAAC;AAAAA,EACA;AAAA,EACA,QAAA,CAAA,eAAA;AAAA,EAEA,QAAA;AAAA,IACA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAA;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,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,MACA,WAAA,CAAA,aAAA,CAAA,UAAA,YAAA,SAAA,SAAA,QAAA,EAAA,SAAA,QAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,YAAA;AAAA,MACA,MAAA,CAAA,SAAA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AACA,UAAA,KAAA,SAAA,WAAA,OAAA,KAAA,eAAA,WAAA;AACA,eAAA,KAAA,eAAA,KAAA;AAAA,MACA;AACA,aAAA,KAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,aAAA;AACA,UAAA,KAAA,SAAA,YAAA,KAAA,SAAA,SAAA;AACA,eAAA,KAAA;AAAA,MACA;AACA,aAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,mBAAA;AACA,YAAA,aAAA,CAAA;AAEA,UAAA,KAAA,kBAAA;AAEA,mBAAA,OAAA;AAEA,YAAA,KAAA,SAAA,SAAA;AACA,qBAAA,OAAA;AACA,qBAAA,cAAA,IAAA,KAAA,YAAA,SAAA;AAAA,QACA,WAAA,KAAA,SAAA,cAAA,KAAA,eAAA,YAAA,KAAA,eAAA,MAAA;AAEA,qBAAA,OAAA;AACA,qBAAA,cAAA,IAAA,KAAA,eAAA,OAAA,UAAA,KAAA,aAAA,SAAA;AAAA,QACA;AAAA,MACA,WAAA,KAAA,eAAA,QAAA,KAAA,eAAA,UAAA;AAEA,mBAAA,cAAA,IAAA,KAAA,aAAA,SAAA;AAAA,MACA;AAEA,aAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA,OAAA;AACA,WAAA,QAAA,KAAA;AAEA,UAAA,KAAA,eAAA,QAAA,KAAA,SAAA,UAAA;AACA,YAAA,KAAA,SAAA,SAAA;AACA,cAAA,OAAA,KAAA,eAAA,WAAA;AAEA,gBAAA,CAAA,KAAA,WAAA;AACA,mBAAA,MAAA,qBAAA,KAAA,KAAA;AAAA,YACA;AAAA,UACA,OAAA;AAEA,iBAAA,MAAA,qBAAA,CAAA,KAAA,SAAA;AAAA,UACA;AAAA,QACA,OAAA;AAEA,eAAA,MAAA,qBAAA,CAAA,KAAA,SAAA;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
- const t = require("../chunks/NcActionButtonGroup-B1XhnIBl.cjs");
3
- module.exports = t.NcActionButtonGroup;
2
+ const NcActionButtonGroup = require("../chunks/NcActionButtonGroup-D7hycpXY.cjs");
3
+ module.exports = NcActionButtonGroup.NcActionButtonGroup;