@nextcloud/vue 8.33.0 → 8.34.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 (461) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +2 -2
  3. package/dist/Components/NcActionButton.cjs +1 -1
  4. package/dist/Components/NcActionButton.mjs +1 -1
  5. package/dist/Components/NcActionButtonGroup.cjs +1 -1
  6. package/dist/Components/NcActionButtonGroup.mjs +1 -1
  7. package/dist/Components/NcActionInput.cjs +1 -1
  8. package/dist/Components/NcActionInput.mjs +1 -1
  9. package/dist/Components/NcActionTextEditable.cjs +1 -1
  10. package/dist/Components/NcActionTextEditable.mjs +1 -1
  11. package/dist/Components/NcActions.cjs +1 -1
  12. package/dist/Components/NcActions.mjs +1 -1
  13. package/dist/Components/NcAppContent.cjs +1 -1
  14. package/dist/Components/NcAppContent.mjs +1 -1
  15. package/dist/Components/NcAppNavigation.cjs +1 -1
  16. package/dist/Components/NcAppNavigation.mjs +1 -1
  17. package/dist/Components/NcAppNavigationCaption.cjs +1 -1
  18. package/dist/Components/NcAppNavigationCaption.mjs +1 -1
  19. package/dist/Components/NcAppNavigationItem.cjs +1 -1
  20. package/dist/Components/NcAppNavigationItem.mjs +1 -1
  21. package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
  22. package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
  23. package/dist/Components/NcAppNavigationSearch.cjs +1 -1
  24. package/dist/Components/NcAppNavigationSearch.mjs +1 -1
  25. package/dist/Components/NcAppNavigationSettings.cjs +1 -1
  26. package/dist/Components/NcAppNavigationSettings.mjs +1 -1
  27. package/dist/Components/NcAppNavigationToggle.cjs +1 -1
  28. package/dist/Components/NcAppNavigationToggle.mjs +1 -1
  29. package/dist/Components/NcAppSettingsDialog.cjs +1 -1
  30. package/dist/Components/NcAppSettingsDialog.mjs +1 -1
  31. package/dist/Components/NcAppSettingsSection.cjs +1 -1
  32. package/dist/Components/NcAppSettingsSection.mjs +1 -1
  33. package/dist/Components/NcAppSettingsSectionShortcuts.cjs +2 -2
  34. package/dist/Components/NcAppSettingsSectionShortcuts.mjs +1 -1
  35. package/dist/Components/NcAppSettingsShortcutsSection.cjs +4 -0
  36. package/dist/Components/NcAppSettingsShortcutsSection.cjs.map +1 -0
  37. package/dist/Components/NcAppSettingsShortcutsSection.mjs +5 -0
  38. package/dist/Components/NcAppSettingsShortcutsSection.mjs.map +1 -0
  39. package/dist/Components/NcAppSidebar.cjs +1 -1
  40. package/dist/Components/NcAppSidebar.mjs +1 -1
  41. package/dist/Components/NcAssistantButton.cjs +1 -1
  42. package/dist/Components/NcAssistantButton.mjs +1 -1
  43. package/dist/Components/NcAssistantIcon.cjs +1 -1
  44. package/dist/Components/NcAssistantIcon.mjs +1 -1
  45. package/dist/Components/NcAvatar.cjs +1 -1
  46. package/dist/Components/NcAvatar.mjs +1 -1
  47. package/dist/Components/NcBreadcrumb.cjs +1 -1
  48. package/dist/Components/NcBreadcrumb.mjs +1 -1
  49. package/dist/Components/NcBreadcrumbs.cjs +1 -1
  50. package/dist/Components/NcBreadcrumbs.mjs +1 -1
  51. package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
  52. package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
  53. package/dist/Components/NcChip.cjs +4 -4
  54. package/dist/Components/NcChip.mjs +4 -4
  55. package/dist/Components/NcCollectionList.cjs +1 -1
  56. package/dist/Components/NcCollectionList.mjs +1 -1
  57. package/dist/Components/NcColorPicker.cjs +1 -1
  58. package/dist/Components/NcColorPicker.mjs +1 -1
  59. package/dist/Components/NcContent.cjs +1 -1
  60. package/dist/Components/NcContent.mjs +1 -1
  61. package/dist/Components/NcDashboardWidget.cjs +1 -1
  62. package/dist/Components/NcDashboardWidget.mjs +1 -1
  63. package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
  64. package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
  65. package/dist/Components/NcDateTimePicker.cjs +5 -5
  66. package/dist/Components/NcDateTimePicker.mjs +5 -5
  67. package/dist/Components/NcDateTimePickerNative.cjs +1 -1
  68. package/dist/Components/NcDateTimePickerNative.mjs +1 -1
  69. package/dist/Components/NcDialog.cjs +1 -1
  70. package/dist/Components/NcDialog.mjs +1 -1
  71. package/dist/Components/NcDialogButton.cjs +1 -1
  72. package/dist/Components/NcDialogButton.mjs +1 -1
  73. package/dist/Components/NcEmojiPicker.cjs +1 -1
  74. package/dist/Components/NcEmojiPicker.mjs +1 -1
  75. package/dist/Components/NcFormBox.cjs +4 -0
  76. package/dist/Components/NcFormBox.cjs.map +1 -0
  77. package/dist/Components/NcFormBox.mjs +5 -0
  78. package/dist/Components/NcFormBox.mjs.map +1 -0
  79. package/dist/Components/NcFormBoxButton.cjs +4 -0
  80. package/dist/Components/NcFormBoxButton.cjs.map +1 -0
  81. package/dist/Components/NcFormBoxButton.mjs +5 -0
  82. package/dist/Components/NcFormBoxButton.mjs.map +1 -0
  83. package/dist/Components/NcFormBoxCopyButton.cjs +4 -0
  84. package/dist/Components/NcFormBoxCopyButton.cjs.map +1 -0
  85. package/dist/Components/NcFormBoxCopyButton.mjs +5 -0
  86. package/dist/Components/NcFormBoxCopyButton.mjs.map +1 -0
  87. package/dist/Components/NcFormBoxSwitch.cjs +4 -0
  88. package/dist/Components/NcFormBoxSwitch.cjs.map +1 -0
  89. package/dist/Components/NcFormBoxSwitch.mjs +5 -0
  90. package/dist/Components/NcFormBoxSwitch.mjs.map +1 -0
  91. package/dist/Components/NcFormGroup.cjs +4 -0
  92. package/dist/Components/NcFormGroup.cjs.map +1 -0
  93. package/dist/Components/NcFormGroup.mjs +5 -0
  94. package/dist/Components/NcFormGroup.mjs.map +1 -0
  95. package/dist/Components/NcHotkey.cjs +1 -1
  96. package/dist/Components/NcHotkey.mjs +1 -1
  97. package/dist/Components/NcHotkeyList.cjs +1 -1
  98. package/dist/Components/NcHotkeyList.mjs +1 -1
  99. package/dist/Components/NcKbd.cjs +1 -1
  100. package/dist/Components/NcKbd.mjs +1 -1
  101. package/dist/Components/NcListItem.cjs +1 -1
  102. package/dist/Components/NcListItem.mjs +1 -1
  103. package/dist/Components/NcListItemIcon.cjs +1 -1
  104. package/dist/Components/NcListItemIcon.mjs +1 -1
  105. package/dist/Components/NcModal.cjs +5 -5
  106. package/dist/Components/NcModal.mjs +5 -5
  107. package/dist/Components/NcPasswordField.cjs +1 -1
  108. package/dist/Components/NcPasswordField.mjs +1 -1
  109. package/dist/Components/NcRadioGroup.cjs +1 -1
  110. package/dist/Components/NcRadioGroup.mjs +1 -1
  111. package/dist/Components/NcRadioGroupButton.cjs +1 -1
  112. package/dist/Components/NcRadioGroupButton.mjs +1 -1
  113. package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
  114. package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
  115. package/dist/Components/NcRichContenteditable.cjs +1 -1
  116. package/dist/Components/NcRichContenteditable.mjs +1 -1
  117. package/dist/Components/NcRichText.cjs +2 -2
  118. package/dist/Components/NcRichText.mjs +3 -3
  119. package/dist/Components/NcSelect.cjs +1 -1
  120. package/dist/Components/NcSelect.mjs +1 -1
  121. package/dist/Components/NcSelectTags.cjs +1 -1
  122. package/dist/Components/NcSelectTags.mjs +1 -1
  123. package/dist/Components/NcSelectUsers.cjs +1 -1
  124. package/dist/Components/NcSelectUsers.mjs +1 -1
  125. package/dist/Components/NcSettingsInputText.cjs +1 -1
  126. package/dist/Components/NcSettingsInputText.mjs +1 -1
  127. package/dist/Components/NcSettingsSection.cjs +1 -1
  128. package/dist/Components/NcSettingsSection.mjs +1 -1
  129. package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
  130. package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
  131. package/dist/Components/NcTextField.cjs +1 -1
  132. package/dist/Components/NcTextField.mjs +1 -1
  133. package/dist/Components/NcTimezonePicker.cjs +1 -1
  134. package/dist/Components/NcTimezonePicker.mjs +1 -1
  135. package/dist/Components/NcUserBubble.cjs +1 -1
  136. package/dist/Components/NcUserBubble.mjs +1 -1
  137. package/dist/Components/NcUserStatusIcon.cjs +1 -1
  138. package/dist/Components/NcUserStatusIcon.mjs +1 -1
  139. package/dist/Composables/useFormatDateTime.cjs +1 -1
  140. package/dist/Composables/useFormatDateTime.mjs +1 -1
  141. package/dist/Functions/reference.cjs +1 -1
  142. package/dist/Functions/reference.mjs +1 -1
  143. package/dist/Functions/usernameToColor.cjs +1 -1
  144. package/dist/Functions/usernameToColor.mjs +1 -1
  145. package/dist/assets/{NcActions-B4-9qwLn.css → NcActions-Dfs69WGA.css} +11 -11
  146. package/dist/assets/{NcAppSettingsDialog-2axspyf-.css → NcAppSettingsDialog-TJ3aaiJI.css} +10 -10
  147. package/dist/assets/NcAppSettingsSection-Yg4NYCih.css +46 -0
  148. package/dist/assets/{NcDateTimePicker-BmMuUpwr.css → NcDateTimePicker-uS5WikmF.css} +8 -8
  149. package/dist/assets/NcFormBox-D-kcijXp.css +54 -0
  150. package/dist/assets/{NcAppSettingsSection-CLSVNQzv.css → NcFormBoxButton-C6EvdLK4.css} +13 -11
  151. package/dist/assets/NcFormBoxItem-j2nGdOvd.css +88 -0
  152. package/dist/assets/NcFormBoxSwitch-BmyNQCbA.css +37 -0
  153. package/dist/assets/NcFormGroup-BrD0Scm7.css +43 -0
  154. package/dist/assets/{NcHotkey-QklVKSyr.css → NcHotkey-4yi1Hobg.css} +10 -9
  155. package/dist/assets/NcHotkeyList-gAZN0WIu.css +8 -0
  156. package/dist/assets/{NcListItem-rxOwDYE-.css → NcListItem-Czbi1F0Q.css} +44 -44
  157. package/dist/assets/NcRadioGroup-1zpSX8V5.css +21 -0
  158. package/dist/assets/{NcRadioGroupButton-qxDfssOp.css → NcRadioGroupButton-DRZ1_-yY.css} +11 -19
  159. package/dist/assets/{NcRichContenteditable-CO5ziuZO.css → NcRichContenteditable-BjQ4qHUO.css} +11 -11
  160. package/dist/assets/{NcRichText-BpXupu1n.css → NcRichText-Cr-HXxVi.css} +92 -86
  161. package/dist/chunks/{NcActionButton-DSq_luox.cjs → NcActionButton-BWM7FD0z.cjs} +2 -2
  162. package/dist/chunks/{NcActionButton-DSq_luox.cjs.map → NcActionButton-BWM7FD0z.cjs.map} +1 -1
  163. package/dist/chunks/{NcActionButton-CD1Z-o2Y.mjs → NcActionButton-DykQxmXJ.mjs} +2 -2
  164. package/dist/chunks/{NcActionButton-CD1Z-o2Y.mjs.map → NcActionButton-DykQxmXJ.mjs.map} +1 -1
  165. package/dist/chunks/{NcActionButtonGroup-DKVCsZhH.cjs → NcActionButtonGroup-Bqp4vRGy.cjs} +2 -2
  166. package/dist/chunks/{NcActionButtonGroup-DKVCsZhH.cjs.map → NcActionButtonGroup-Bqp4vRGy.cjs.map} +1 -1
  167. package/dist/chunks/{NcActionButtonGroup-Bd-SOAHU.mjs → NcActionButtonGroup-Uol_nwut.mjs} +2 -2
  168. package/dist/chunks/{NcActionButtonGroup-Bd-SOAHU.mjs.map → NcActionButtonGroup-Uol_nwut.mjs.map} +1 -1
  169. package/dist/chunks/{NcActionInput-BMUreHhp.cjs → NcActionInput-BZGP5m4T.cjs} +5 -5
  170. package/dist/chunks/{NcActionInput-BMUreHhp.cjs.map → NcActionInput-BZGP5m4T.cjs.map} +1 -1
  171. package/dist/chunks/{NcActionInput-D4MLI-0P.mjs → NcActionInput-pjhToEAw.mjs} +5 -5
  172. package/dist/chunks/{NcActionInput-D4MLI-0P.mjs.map → NcActionInput-pjhToEAw.mjs.map} +1 -1
  173. package/dist/chunks/{NcActionTextEditable-5mNFl7Jm.mjs → NcActionTextEditable-Bnt0-S7Y.mjs} +2 -2
  174. package/dist/chunks/{NcActionTextEditable-5mNFl7Jm.mjs.map → NcActionTextEditable-Bnt0-S7Y.mjs.map} +1 -1
  175. package/dist/chunks/{NcActionTextEditable-C8B1qqqe.cjs → NcActionTextEditable-JAg35gIb.cjs} +2 -2
  176. package/dist/chunks/{NcActionTextEditable-C8B1qqqe.cjs.map → NcActionTextEditable-JAg35gIb.cjs.map} +1 -1
  177. package/dist/chunks/{NcActions-BvFVkIzX.mjs → NcActions-CpdT2y6O.mjs} +29 -31
  178. package/dist/chunks/NcActions-CpdT2y6O.mjs.map +1 -0
  179. package/dist/chunks/{NcActions-CF9VxHHD.cjs → NcActions-ykoV9rRj.cjs} +28 -30
  180. package/dist/chunks/NcActions-ykoV9rRj.cjs.map +1 -0
  181. package/dist/chunks/{NcAppContent-C7hwN-sU.mjs → NcAppContent-CABHzKrx.mjs} +3 -3
  182. package/dist/chunks/{NcAppContent-C7hwN-sU.mjs.map → NcAppContent-CABHzKrx.mjs.map} +1 -1
  183. package/dist/chunks/{NcAppContent-BSyhjn2J.cjs → NcAppContent-D2h4xrfv.cjs} +3 -3
  184. package/dist/chunks/{NcAppContent-BSyhjn2J.cjs.map → NcAppContent-D2h4xrfv.cjs.map} +1 -1
  185. package/dist/chunks/{NcAppNavigation-B2cKVKBH.mjs → NcAppNavigation-BKgpMjQN.mjs} +2 -2
  186. package/dist/chunks/{NcAppNavigation-B2cKVKBH.mjs.map → NcAppNavigation-BKgpMjQN.mjs.map} +1 -1
  187. package/dist/chunks/{NcAppNavigation-DApCpI_F.cjs → NcAppNavigation-D_pDitZ1.cjs} +2 -2
  188. package/dist/chunks/{NcAppNavigation-DApCpI_F.cjs.map → NcAppNavigation-D_pDitZ1.cjs.map} +1 -1
  189. package/dist/chunks/{NcAppNavigationCaption-BOHmVyQb.cjs → NcAppNavigationCaption-CO99po3G.cjs} +2 -2
  190. package/dist/chunks/{NcAppNavigationCaption-BOHmVyQb.cjs.map → NcAppNavigationCaption-CO99po3G.cjs.map} +1 -1
  191. package/dist/chunks/{NcAppNavigationCaption-bTauZtcw.mjs → NcAppNavigationCaption-CcWZR8rN.mjs} +2 -2
  192. package/dist/chunks/{NcAppNavigationCaption-bTauZtcw.mjs.map → NcAppNavigationCaption-CcWZR8rN.mjs.map} +1 -1
  193. package/dist/chunks/{NcAppNavigationItem-geCwhCsd.mjs → NcAppNavigationItem-BYWvtSRw.mjs} +6 -6
  194. package/dist/chunks/{NcAppNavigationItem-geCwhCsd.mjs.map → NcAppNavigationItem-BYWvtSRw.mjs.map} +1 -1
  195. package/dist/chunks/{NcAppNavigationItem-DbtR6u7Y.cjs → NcAppNavigationItem-Ca9CAehR.cjs} +6 -6
  196. package/dist/chunks/{NcAppNavigationItem-DbtR6u7Y.cjs.map → NcAppNavigationItem-Ca9CAehR.cjs.map} +1 -1
  197. package/dist/chunks/{NcAppNavigationNewItem-Dqnwa8Gl.cjs → NcAppNavigationNewItem-CwhxGiXO.cjs} +2 -2
  198. package/dist/chunks/{NcAppNavigationNewItem-Dqnwa8Gl.cjs.map → NcAppNavigationNewItem-CwhxGiXO.cjs.map} +1 -1
  199. package/dist/chunks/{NcAppNavigationNewItem-Yy56yPrn.mjs → NcAppNavigationNewItem-DUNLtTs8.mjs} +2 -2
  200. package/dist/chunks/{NcAppNavigationNewItem-Yy56yPrn.mjs.map → NcAppNavigationNewItem-DUNLtTs8.mjs.map} +1 -1
  201. package/dist/chunks/{NcAppNavigationSearch-pMlFjm9w.cjs → NcAppNavigationSearch-BC3LfUdL.cjs} +3 -3
  202. package/dist/chunks/{NcAppNavigationSearch-pMlFjm9w.cjs.map → NcAppNavigationSearch-BC3LfUdL.cjs.map} +1 -1
  203. package/dist/chunks/{NcAppNavigationSearch-WfL4IPD8.mjs → NcAppNavigationSearch-Ci8jz_C2.mjs} +3 -3
  204. package/dist/chunks/{NcAppNavigationSearch-WfL4IPD8.mjs.map → NcAppNavigationSearch-Ci8jz_C2.mjs.map} +1 -1
  205. package/dist/chunks/{NcAppNavigationSettings-BhK7vlfP.mjs → NcAppNavigationSettings-B29zrNPr.mjs} +4 -4
  206. package/dist/chunks/{NcAppNavigationSettings-BhK7vlfP.mjs.map → NcAppNavigationSettings-B29zrNPr.mjs.map} +1 -1
  207. package/dist/chunks/{NcAppNavigationSettings-C6qjJ3hF.cjs → NcAppNavigationSettings-Dt15jIbU.cjs} +4 -4
  208. package/dist/chunks/{NcAppNavigationSettings-C6qjJ3hF.cjs.map → NcAppNavigationSettings-Dt15jIbU.cjs.map} +1 -1
  209. package/dist/chunks/{NcAppNavigationToggle-8lSuagjd.cjs → NcAppNavigationToggle-Bk99wJ65.cjs} +2 -2
  210. package/dist/chunks/{NcAppNavigationToggle-8lSuagjd.cjs.map → NcAppNavigationToggle-Bk99wJ65.cjs.map} +1 -1
  211. package/dist/chunks/{NcAppNavigationToggle-DlnxjlcH.mjs → NcAppNavigationToggle-DtNWDe9v.mjs} +2 -2
  212. package/dist/chunks/{NcAppNavigationToggle-DlnxjlcH.mjs.map → NcAppNavigationToggle-DtNWDe9v.mjs.map} +1 -1
  213. package/dist/chunks/{NcAppSettingsDialog--RlMIfbo.cjs → NcAppSettingsDialog-C1mtjsnj.cjs} +9 -7
  214. package/dist/chunks/NcAppSettingsDialog-C1mtjsnj.cjs.map +1 -0
  215. package/dist/chunks/{NcAppSettingsDialog-8YaW7ud3.mjs → NcAppSettingsDialog-CF-oMoP_.mjs} +10 -8
  216. package/dist/chunks/NcAppSettingsDialog-CF-oMoP_.mjs.map +1 -0
  217. package/dist/chunks/{NcAppSettingsSection-DVrBPuLD.mjs → NcAppSettingsSection-Cq1VIzMR.mjs} +9 -7
  218. package/dist/chunks/NcAppSettingsSection-Cq1VIzMR.mjs.map +1 -0
  219. package/dist/chunks/{NcAppSettingsSection-OPWPqi2Y.cjs → NcAppSettingsSection-Q5PB51ht.cjs} +8 -6
  220. package/dist/chunks/NcAppSettingsSection-Q5PB51ht.cjs.map +1 -0
  221. package/dist/chunks/{NcAppSettingsSectionShortcuts-CdP-4ktS.mjs → NcAppSettingsShortcutsSection-C089rPL6.mjs} +7 -7
  222. package/dist/chunks/NcAppSettingsShortcutsSection-C089rPL6.mjs.map +1 -0
  223. package/dist/chunks/{NcAppSettingsSectionShortcuts-CBYgfYGz.cjs → NcAppSettingsShortcutsSection-DG3FQlb5.cjs} +7 -7
  224. package/dist/chunks/NcAppSettingsShortcutsSection-DG3FQlb5.cjs.map +1 -0
  225. package/dist/chunks/{NcAppSidebar-f7tuofzM.mjs → NcAppSidebar-D5IUeKjd.mjs} +4 -4
  226. package/dist/chunks/{NcAppSidebar-f7tuofzM.mjs.map → NcAppSidebar-D5IUeKjd.mjs.map} +1 -1
  227. package/dist/chunks/{NcAppSidebar-DLb6ALHL.cjs → NcAppSidebar-DwLrcwGi.cjs} +4 -4
  228. package/dist/chunks/{NcAppSidebar-DLb6ALHL.cjs.map → NcAppSidebar-DwLrcwGi.cjs.map} +1 -1
  229. package/dist/chunks/{NcAssistantButton-BMzPE7WA.cjs → NcAssistantButton-DrYpawyR.cjs} +3 -3
  230. package/dist/chunks/{NcAssistantButton-BMzPE7WA.cjs.map → NcAssistantButton-DrYpawyR.cjs.map} +1 -1
  231. package/dist/chunks/{NcAssistantButton-enexPvoC.mjs → NcAssistantButton-lRXTGAwe.mjs} +3 -3
  232. package/dist/chunks/{NcAssistantButton-enexPvoC.mjs.map → NcAssistantButton-lRXTGAwe.mjs.map} +1 -1
  233. package/dist/chunks/{NcAssistantIcon-XwQFzBgA.mjs → NcAssistantIcon-B9L1Ih5x.mjs} +2 -2
  234. package/dist/chunks/{NcAssistantIcon-XwQFzBgA.mjs.map → NcAssistantIcon-B9L1Ih5x.mjs.map} +1 -1
  235. package/dist/chunks/{NcAssistantIcon-DfVd2zWt.cjs → NcAssistantIcon-jHDGZ_Bd.cjs} +2 -2
  236. package/dist/chunks/{NcAssistantIcon-DfVd2zWt.cjs.map → NcAssistantIcon-jHDGZ_Bd.cjs.map} +1 -1
  237. package/dist/chunks/{NcAvatar-BwioPrbY.cjs → NcAvatar-BXRgjNXy.cjs} +5 -5
  238. package/dist/chunks/{NcAvatar-BwioPrbY.cjs.map → NcAvatar-BXRgjNXy.cjs.map} +1 -1
  239. package/dist/chunks/{NcAvatar-DwUmx6Fg.mjs → NcAvatar-D5nljVEA.mjs} +5 -5
  240. package/dist/chunks/{NcAvatar-DwUmx6Fg.mjs.map → NcAvatar-D5nljVEA.mjs.map} +1 -1
  241. package/dist/chunks/{NcBreadcrumb-ljdZbX7p.mjs → NcBreadcrumb-BC6tmZfd.mjs} +2 -2
  242. package/dist/chunks/{NcBreadcrumb-ljdZbX7p.mjs.map → NcBreadcrumb-BC6tmZfd.mjs.map} +1 -1
  243. package/dist/chunks/{NcBreadcrumb-B-zWjBNp.cjs → NcBreadcrumb-DCq7akG2.cjs} +2 -2
  244. package/dist/chunks/{NcBreadcrumb-B-zWjBNp.cjs.map → NcBreadcrumb-DCq7akG2.cjs.map} +1 -1
  245. package/dist/chunks/{NcBreadcrumbs-B6tPEu9b.cjs → NcBreadcrumbs-7dWiGWqj.cjs} +4 -4
  246. package/dist/chunks/{NcBreadcrumbs-B6tPEu9b.cjs.map → NcBreadcrumbs-7dWiGWqj.cjs.map} +1 -1
  247. package/dist/chunks/{NcBreadcrumbs-D2DtX3XC.mjs → NcBreadcrumbs-BPfsSByZ.mjs} +4 -4
  248. package/dist/chunks/{NcBreadcrumbs-D2DtX3XC.mjs.map → NcBreadcrumbs-BPfsSByZ.mjs.map} +1 -1
  249. package/dist/chunks/{NcCheckboxRadioSwitch-wSD3hWxs.cjs → NcCheckboxRadioSwitch-CC2UI0kG.cjs} +2 -2
  250. package/dist/chunks/{NcCheckboxRadioSwitch-wSD3hWxs.cjs.map → NcCheckboxRadioSwitch-CC2UI0kG.cjs.map} +1 -1
  251. package/dist/chunks/{NcCheckboxRadioSwitch-NPJuwzqS.mjs → NcCheckboxRadioSwitch-DAPHFb0L.mjs} +2 -2
  252. package/dist/chunks/{NcCheckboxRadioSwitch-NPJuwzqS.mjs.map → NcCheckboxRadioSwitch-DAPHFb0L.mjs.map} +1 -1
  253. package/dist/chunks/{NcCollectionList-D85QdobI.mjs → NcCollectionList-B9weMM0Q.mjs} +7 -7
  254. package/dist/chunks/{NcCollectionList-D85QdobI.mjs.map → NcCollectionList-B9weMM0Q.mjs.map} +1 -1
  255. package/dist/chunks/{NcCollectionList-Br6V_EiM.cjs → NcCollectionList-DSugNziH.cjs} +7 -7
  256. package/dist/chunks/{NcCollectionList-Br6V_EiM.cjs.map → NcCollectionList-DSugNziH.cjs.map} +1 -1
  257. package/dist/chunks/{NcColorPicker-Dg3d5_aQ.cjs → NcColorPicker-Chrtrp3i.cjs} +4 -4
  258. package/dist/chunks/{NcColorPicker-Dg3d5_aQ.cjs.map → NcColorPicker-Chrtrp3i.cjs.map} +1 -1
  259. package/dist/chunks/{NcColorPicker-BoS26yac.mjs → NcColorPicker-DVkGUHxL.mjs} +4 -4
  260. package/dist/chunks/{NcColorPicker-BoS26yac.mjs.map → NcColorPicker-DVkGUHxL.mjs.map} +1 -1
  261. package/dist/chunks/{NcContent-D8OFKv52.mjs → NcContent-BPmE93Mq.mjs} +3 -3
  262. package/dist/chunks/{NcContent-D8OFKv52.mjs.map → NcContent-BPmE93Mq.mjs.map} +1 -1
  263. package/dist/chunks/{NcContent-BbPae-OV.cjs → NcContent-UoMpCfT3.cjs} +3 -3
  264. package/dist/chunks/{NcContent-BbPae-OV.cjs.map → NcContent-UoMpCfT3.cjs.map} +1 -1
  265. package/dist/chunks/{NcDashboardWidget-SSlGHcII.mjs → NcDashboardWidget-DpzjksBk.mjs} +5 -5
  266. package/dist/chunks/{NcDashboardWidget-SSlGHcII.mjs.map → NcDashboardWidget-DpzjksBk.mjs.map} +1 -1
  267. package/dist/chunks/{NcDashboardWidget-mEPmvuR0.cjs → NcDashboardWidget-k5_NmYYZ.cjs} +5 -5
  268. package/dist/chunks/{NcDashboardWidget-mEPmvuR0.cjs.map → NcDashboardWidget-k5_NmYYZ.cjs.map} +1 -1
  269. package/dist/chunks/{NcDashboardWidgetItem-C7AmqxH4.cjs → NcDashboardWidgetItem-CeA1eF60.cjs} +4 -4
  270. package/dist/chunks/{NcDashboardWidgetItem-C7AmqxH4.cjs.map → NcDashboardWidgetItem-CeA1eF60.cjs.map} +1 -1
  271. package/dist/chunks/{NcDashboardWidgetItem-BqlNJI6a.mjs → NcDashboardWidgetItem-DZ13sBtT.mjs} +4 -4
  272. package/dist/chunks/{NcDashboardWidgetItem-BqlNJI6a.mjs.map → NcDashboardWidgetItem-DZ13sBtT.mjs.map} +1 -1
  273. package/dist/chunks/{NcDialog-Bg0hY6TP.mjs → NcDialog-DDuqQeT-.mjs} +2 -2
  274. package/dist/chunks/{NcDialog-Bg0hY6TP.mjs.map → NcDialog-DDuqQeT-.mjs.map} +1 -1
  275. package/dist/chunks/{NcDialog-D020rlVy.cjs → NcDialog-DUTlKw4_.cjs} +2 -2
  276. package/dist/chunks/{NcDialog-D020rlVy.cjs.map → NcDialog-DUTlKw4_.cjs.map} +1 -1
  277. package/dist/chunks/{NcDialogButton-8JhFaC5X.cjs → NcDialogButton-DyWjiA1e.cjs} +3 -3
  278. package/dist/chunks/{NcDialogButton-8JhFaC5X.cjs.map → NcDialogButton-DyWjiA1e.cjs.map} +1 -1
  279. package/dist/chunks/{NcDialogButton-DSrC6lFd.mjs → NcDialogButton-P7Ryycqk.mjs} +3 -3
  280. package/dist/chunks/{NcDialogButton-DSrC6lFd.mjs.map → NcDialogButton-P7Ryycqk.mjs.map} +1 -1
  281. package/dist/chunks/{NcEmojiPicker-CAphjgaf.mjs → NcEmojiPicker-CpU37Ozq.mjs} +6 -6
  282. package/dist/chunks/{NcEmojiPicker-CAphjgaf.mjs.map → NcEmojiPicker-CpU37Ozq.mjs.map} +1 -1
  283. package/dist/chunks/{NcEmojiPicker-DwXhWYHY.cjs → NcEmojiPicker-D8d4iUUn.cjs} +6 -6
  284. package/dist/chunks/{NcEmojiPicker-DwXhWYHY.cjs.map → NcEmojiPicker-D8d4iUUn.cjs.map} +1 -1
  285. package/dist/chunks/NcFormBox-DL435pbV.mjs +56 -0
  286. package/dist/chunks/NcFormBox-DL435pbV.mjs.map +1 -0
  287. package/dist/chunks/NcFormBox-_JqkU_xn.cjs +55 -0
  288. package/dist/chunks/NcFormBox-_JqkU_xn.cjs.map +1 -0
  289. package/dist/chunks/NcFormBoxButton-D-s5mL0c.cjs +137 -0
  290. package/dist/chunks/NcFormBoxButton-D-s5mL0c.cjs.map +1 -0
  291. package/dist/chunks/NcFormBoxButton-DN0-J4yN.mjs +138 -0
  292. package/dist/chunks/NcFormBoxButton-DN0-J4yN.mjs.map +1 -0
  293. package/dist/chunks/NcFormBoxCopyButton-CTHelPkb.cjs +76 -0
  294. package/dist/chunks/NcFormBoxCopyButton-CTHelPkb.cjs.map +1 -0
  295. package/dist/chunks/NcFormBoxCopyButton-Dwrfiovz.mjs +77 -0
  296. package/dist/chunks/NcFormBoxCopyButton-Dwrfiovz.mjs.map +1 -0
  297. package/dist/chunks/NcFormBoxItem-CtrbGjnv.cjs +86 -0
  298. package/dist/chunks/NcFormBoxItem-CtrbGjnv.cjs.map +1 -0
  299. package/dist/chunks/NcFormBoxItem-DPBm3ZbJ.mjs +87 -0
  300. package/dist/chunks/NcFormBoxItem-DPBm3ZbJ.mjs.map +1 -0
  301. package/dist/chunks/NcFormBoxSwitch-CM3WaFkA.cjs +96 -0
  302. package/dist/chunks/NcFormBoxSwitch-CM3WaFkA.cjs.map +1 -0
  303. package/dist/chunks/NcFormBoxSwitch-aOCNeI-K.mjs +97 -0
  304. package/dist/chunks/NcFormBoxSwitch-aOCNeI-K.mjs.map +1 -0
  305. package/dist/chunks/NcFormGroup-BfsPo9aC.mjs +69 -0
  306. package/dist/chunks/NcFormGroup-BfsPo9aC.mjs.map +1 -0
  307. package/dist/chunks/NcFormGroup-CBMl_9_J.cjs +68 -0
  308. package/dist/chunks/NcFormGroup-CBMl_9_J.cjs.map +1 -0
  309. package/dist/chunks/{NcHotkey-CUPH5u09.cjs → NcHotkey-BMemJWSu.cjs} +7 -7
  310. package/dist/chunks/{NcHotkey-CUPH5u09.cjs.map → NcHotkey-BMemJWSu.cjs.map} +1 -1
  311. package/dist/chunks/{NcHotkey-BVMf1V89.mjs → NcHotkey-CzuMmIU9.mjs} +7 -7
  312. package/dist/chunks/{NcHotkey-BVMf1V89.mjs.map → NcHotkey-CzuMmIU9.mjs.map} +1 -1
  313. package/dist/chunks/{NcHotkeyList-jfSroQAQ.mjs → NcHotkeyList-Bm25Odp7.mjs} +5 -5
  314. package/dist/chunks/NcHotkeyList-Bm25Odp7.mjs.map +1 -0
  315. package/dist/chunks/{NcHotkeyList-CUjp1-hr.cjs → NcHotkeyList-DAJkKYNu.cjs} +5 -5
  316. package/dist/chunks/NcHotkeyList-DAJkKYNu.cjs.map +1 -0
  317. package/dist/chunks/{NcInputConfirmCancel-XPlRewAN.mjs → NcInputConfirmCancel-CtdWwDCo.mjs} +2 -2
  318. package/dist/chunks/{NcInputConfirmCancel-XPlRewAN.mjs.map → NcInputConfirmCancel-CtdWwDCo.mjs.map} +1 -1
  319. package/dist/chunks/{NcInputConfirmCancel-Bk_FQ5aA.cjs → NcInputConfirmCancel-vqVq5qKL.cjs} +2 -2
  320. package/dist/chunks/{NcInputConfirmCancel-Bk_FQ5aA.cjs.map → NcInputConfirmCancel-vqVq5qKL.cjs.map} +1 -1
  321. package/dist/chunks/{NcKbd-BdW5UbhW.mjs → NcKbd-CfVfr9CW.mjs} +2 -2
  322. package/dist/chunks/{NcKbd-BdW5UbhW.mjs.map → NcKbd-CfVfr9CW.mjs.map} +1 -1
  323. package/dist/chunks/{NcKbd-CVBh8nyU.cjs → NcKbd-ewuqi-PO.cjs} +2 -2
  324. package/dist/chunks/{NcKbd-CVBh8nyU.cjs.map → NcKbd-ewuqi-PO.cjs.map} +1 -1
  325. package/dist/chunks/{NcListItem-YVemqwZ_.mjs → NcListItem-BommrKRB.mjs} +6 -6
  326. package/dist/chunks/{NcListItem-D3HiK7ra.cjs.map → NcListItem-BommrKRB.mjs.map} +1 -1
  327. package/dist/chunks/{NcListItem-D3HiK7ra.cjs → NcListItem-DaRnEXN5.cjs} +6 -6
  328. package/dist/chunks/{NcListItem-YVemqwZ_.mjs.map → NcListItem-DaRnEXN5.cjs.map} +1 -1
  329. package/dist/chunks/{NcListItemIcon-DL1VwHvL.cjs → NcListItemIcon-2L14AYM5.cjs} +2 -2
  330. package/dist/chunks/{NcListItemIcon-DL1VwHvL.cjs.map → NcListItemIcon-2L14AYM5.cjs.map} +1 -1
  331. package/dist/chunks/{NcListItemIcon-BKwmcXnO.mjs → NcListItemIcon-DT7XMp5c.mjs} +2 -2
  332. package/dist/chunks/{NcListItemIcon-BKwmcXnO.mjs.map → NcListItemIcon-DT7XMp5c.mjs.map} +1 -1
  333. package/dist/chunks/{NcPasswordField-CujpFQHq.mjs → NcPasswordField-B91RnUSh.mjs} +3 -3
  334. package/dist/chunks/{NcPasswordField-CujpFQHq.mjs.map → NcPasswordField-B91RnUSh.mjs.map} +1 -1
  335. package/dist/chunks/{NcPasswordField-BeEYmL5N.cjs → NcPasswordField-BO0hL-T4.cjs} +3 -3
  336. package/dist/chunks/{NcPasswordField-BeEYmL5N.cjs.map → NcPasswordField-BO0hL-T4.cjs.map} +1 -1
  337. package/dist/chunks/{NcRadioGroup-VKZJ0Vnh.mjs → NcRadioGroup-D0rC63G8.mjs} +10 -19
  338. package/dist/chunks/NcRadioGroup-D0rC63G8.mjs.map +1 -0
  339. package/dist/chunks/{NcRadioGroup-BZ-humrK.cjs → NcRadioGroup-D59En1O3.cjs} +10 -19
  340. package/dist/chunks/NcRadioGroup-D59En1O3.cjs.map +1 -0
  341. package/dist/chunks/{NcRadioGroupButton-CD4tkF_s.mjs → NcRadioGroupButton-3Pu4Iqdf.mjs} +11 -9
  342. package/dist/chunks/NcRadioGroupButton-3Pu4Iqdf.mjs.map +1 -0
  343. package/dist/chunks/{NcRadioGroupButton-DrqgN-8C.cjs → NcRadioGroupButton-DoOf7cE1.cjs} +11 -9
  344. package/dist/chunks/NcRadioGroupButton-DoOf7cE1.cjs.map +1 -0
  345. package/dist/chunks/{NcRelatedResourcesPanel-CO6jajKF.cjs → NcRelatedResourcesPanel-CpXbcI3f.cjs} +4 -4
  346. package/dist/chunks/{NcRelatedResourcesPanel-CO6jajKF.cjs.map → NcRelatedResourcesPanel-CpXbcI3f.cjs.map} +1 -1
  347. package/dist/chunks/{NcRelatedResourcesPanel-BTyqVb_E.mjs → NcRelatedResourcesPanel-D9-wo_xr.mjs} +4 -4
  348. package/dist/chunks/{NcRelatedResourcesPanel-BTyqVb_E.mjs.map → NcRelatedResourcesPanel-D9-wo_xr.mjs.map} +1 -1
  349. package/dist/chunks/{NcRichContenteditable-BivvoSO5.mjs → NcRichContenteditable-BQNR-AeA.mjs} +13 -10
  350. package/dist/chunks/{NcRichContenteditable-BivvoSO5.mjs.map → NcRichContenteditable-BQNR-AeA.mjs.map} +1 -1
  351. package/dist/chunks/{NcRichContenteditable-BjxmdpS0.cjs → NcRichContenteditable-DsWbC4ZK.cjs} +13 -10
  352. package/dist/chunks/{NcRichContenteditable-BjxmdpS0.cjs.map → NcRichContenteditable-DsWbC4ZK.cjs.map} +1 -1
  353. package/dist/chunks/{NcRichText-Dy5By94Y.mjs → NcRichText-BfK6Ybyf.mjs} +8 -5
  354. package/dist/chunks/{NcRichText-Dy5By94Y.mjs.map → NcRichText-BfK6Ybyf.mjs.map} +1 -1
  355. package/dist/chunks/{NcRichText-DoQg3Lha.cjs → NcRichText-CSFIswpI.cjs} +8 -5
  356. package/dist/chunks/{NcRichText-DoQg3Lha.cjs.map → NcRichText-CSFIswpI.cjs.map} +1 -1
  357. package/dist/chunks/{NcSelect-Bw8EG_xU.cjs → NcSelect-CgLK3i8n.cjs} +4 -4
  358. package/dist/chunks/{NcSelect-Bw8EG_xU.cjs.map → NcSelect-CgLK3i8n.cjs.map} +1 -1
  359. package/dist/chunks/{NcSelect-QVd6uJPA.mjs → NcSelect-DTniMiUS.mjs} +4 -4
  360. package/dist/chunks/{NcSelect-QVd6uJPA.mjs.map → NcSelect-DTniMiUS.mjs.map} +1 -1
  361. package/dist/chunks/{NcSelectTags-D-22teKJ.mjs → NcSelectTags-CktuFsK3.mjs} +3 -3
  362. package/dist/chunks/{NcSelectTags-D-22teKJ.mjs.map → NcSelectTags-CktuFsK3.mjs.map} +1 -1
  363. package/dist/chunks/{NcSelectTags-aGwTgIM-.cjs → NcSelectTags-DRotL4u-.cjs} +3 -3
  364. package/dist/chunks/{NcSelectTags-aGwTgIM-.cjs.map → NcSelectTags-DRotL4u-.cjs.map} +1 -1
  365. package/dist/chunks/{NcSelectUsers-DR6-q1aK.mjs → NcSelectUsers-RyUVUaWQ.mjs} +5 -5
  366. package/dist/chunks/{NcSelectUsers-DR6-q1aK.mjs.map → NcSelectUsers-RyUVUaWQ.mjs.map} +1 -1
  367. package/dist/chunks/{NcSelectUsers-Qhrizan5.cjs → NcSelectUsers-Vy7qpE1b.cjs} +5 -5
  368. package/dist/chunks/{NcSelectUsers-Qhrizan5.cjs.map → NcSelectUsers-Vy7qpE1b.cjs.map} +1 -1
  369. package/dist/chunks/{NcSettingsInputText-O8870Grr.cjs → NcSettingsInputText-DJ1lsJ-4.cjs} +3 -3
  370. package/dist/chunks/{NcSettingsInputText-O8870Grr.cjs.map → NcSettingsInputText-DJ1lsJ-4.cjs.map} +1 -1
  371. package/dist/chunks/{NcSettingsInputText-Q8DDr-Yj.mjs → NcSettingsInputText-Dtr4Rn2b.mjs} +3 -3
  372. package/dist/chunks/{NcSettingsInputText-Q8DDr-Yj.mjs.map → NcSettingsInputText-Dtr4Rn2b.mjs.map} +1 -1
  373. package/dist/chunks/{NcSettingsSection-VxcVEF8L.mjs → NcSettingsSection-BniKad1K.mjs} +3 -3
  374. package/dist/chunks/{NcSettingsSection-VxcVEF8L.mjs.map → NcSettingsSection-BniKad1K.mjs.map} +1 -1
  375. package/dist/chunks/{NcSettingsSection-DKpzo7eI.cjs → NcSettingsSection-DGoocV82.cjs} +3 -3
  376. package/dist/chunks/{NcSettingsSection-DKpzo7eI.cjs.map → NcSettingsSection-DGoocV82.cjs.map} +1 -1
  377. package/dist/chunks/{NcSettingsSelectGroup-CZ0EjeJb.mjs → NcSettingsSelectGroup-D4_09H0F.mjs} +4 -4
  378. package/dist/chunks/{NcSettingsSelectGroup-CZ0EjeJb.mjs.map → NcSettingsSelectGroup-D4_09H0F.mjs.map} +1 -1
  379. package/dist/chunks/{NcSettingsSelectGroup-BQWwtSEb.cjs → NcSettingsSelectGroup-DRp_BpNb.cjs} +4 -4
  380. package/dist/chunks/{NcSettingsSelectGroup-BQWwtSEb.cjs.map → NcSettingsSelectGroup-DRp_BpNb.cjs.map} +1 -1
  381. package/dist/chunks/{NcTextField-CVfixgfj.mjs → NcTextField-CfZknuqx.mjs} +4 -4
  382. package/dist/chunks/{NcTextField-CVfixgfj.mjs.map → NcTextField-CfZknuqx.mjs.map} +1 -1
  383. package/dist/chunks/{NcTextField-52Fnd27A.cjs → NcTextField-YOwuZ0wq.cjs} +4 -4
  384. package/dist/chunks/{NcTextField-52Fnd27A.cjs.map → NcTextField-YOwuZ0wq.cjs.map} +1 -1
  385. package/dist/chunks/{NcTimezonePicker-CtFsF-jG.cjs → NcTimezonePicker-CuJzNsPZ.cjs} +5 -5
  386. package/dist/chunks/{NcTimezonePicker-CtFsF-jG.cjs.map → NcTimezonePicker-CuJzNsPZ.cjs.map} +1 -1
  387. package/dist/chunks/{NcTimezonePicker-BInLNCSt.mjs → NcTimezonePicker-DgoDpdHS.mjs} +5 -5
  388. package/dist/chunks/{NcTimezonePicker-BInLNCSt.mjs.map → NcTimezonePicker-DgoDpdHS.mjs.map} +1 -1
  389. package/dist/chunks/{NcUserBubble-ByvVV8jh.cjs → NcUserBubble-DwJgtybL.cjs} +2 -2
  390. package/dist/chunks/{NcUserBubble-ByvVV8jh.cjs.map → NcUserBubble-DwJgtybL.cjs.map} +1 -1
  391. package/dist/chunks/{NcUserBubble-sIUM-Rru.mjs → NcUserBubble-VLY4hn5K.mjs} +2 -2
  392. package/dist/chunks/{NcUserBubble-sIUM-Rru.mjs.map → NcUserBubble-VLY4hn5K.mjs.map} +1 -1
  393. package/dist/chunks/{NcUserStatusIcon-DZI9jlXE.mjs → NcUserStatusIcon-D_kxQky5.mjs} +3 -3
  394. package/dist/chunks/{NcUserStatusIcon-DZI9jlXE.mjs.map → NcUserStatusIcon-D_kxQky5.mjs.map} +1 -1
  395. package/dist/chunks/{NcUserStatusIcon-CYsrjxDh.cjs → NcUserStatusIcon-DaYZfl2J.cjs} +3 -3
  396. package/dist/chunks/{NcUserStatusIcon-CYsrjxDh.cjs.map → NcUserStatusIcon-DaYZfl2J.cjs.map} +1 -1
  397. package/dist/chunks/{ScopeComponent-CNZ_b7IG.mjs → ScopeComponent-B4ZR5mwH.mjs} +2 -2
  398. package/dist/chunks/{ScopeComponent-CNZ_b7IG.mjs.map → ScopeComponent-B4ZR5mwH.mjs.map} +1 -1
  399. package/dist/chunks/{ScopeComponent-BCznIxFT.cjs → ScopeComponent-B59v3zbZ.cjs} +2 -2
  400. package/dist/chunks/{ScopeComponent-BCznIxFT.cjs.map → ScopeComponent-B59v3zbZ.cjs.map} +1 -1
  401. package/dist/chunks/{_l10n-eOBJ3Dwl.cjs → _l10n-B4clLGwo.cjs} +34 -34
  402. package/dist/chunks/{_l10n-eOBJ3Dwl.cjs.map → _l10n-B4clLGwo.cjs.map} +1 -1
  403. package/dist/chunks/{_l10n-BWisB7-O.mjs → _l10n-BmKQgz1z.mjs} +61 -61
  404. package/dist/chunks/_l10n-BmKQgz1z.mjs.map +1 -0
  405. package/dist/chunks/{colors-D3xlq-id.mjs → colors-BwQwSDJi.mjs} +2 -2
  406. package/dist/chunks/{colors-D3xlq-id.mjs.map → colors-BwQwSDJi.mjs.map} +1 -1
  407. package/dist/chunks/{colors-BsDQ1Yz3.cjs → colors-FtmuYvMf.cjs} +2 -2
  408. package/dist/chunks/{colors-BsDQ1Yz3.cjs.map → colors-FtmuYvMf.cjs.map} +1 -1
  409. package/dist/chunks/{mdi-Nhb6SBw8.cjs → mdi-CVXTs58m.cjs} +11 -1
  410. package/dist/chunks/{mdi-CKSXwCsV.mjs.map → mdi-CVXTs58m.cjs.map} +1 -1
  411. package/dist/chunks/{mdi-CKSXwCsV.mjs → mdi-C_j0YT8c.mjs} +18 -8
  412. package/dist/chunks/{mdi-Nhb6SBw8.cjs.map → mdi-C_j0YT8c.mjs.map} +1 -1
  413. package/dist/chunks/{referencePickerModal-Cl3fIc9s.mjs → referencePickerModal-CHpUHrDL.mjs} +9 -9
  414. package/dist/chunks/{referencePickerModal-Cl3fIc9s.mjs.map → referencePickerModal-CHpUHrDL.mjs.map} +1 -1
  415. package/dist/chunks/{referencePickerModal-Dz1h1EHq.cjs → referencePickerModal-CJNn-fvp.cjs} +9 -9
  416. package/dist/chunks/{referencePickerModal-Dz1h1EHq.cjs.map → referencePickerModal-CJNn-fvp.cjs.map} +1 -1
  417. package/dist/chunks/{useAppSettingsDialog-CPqmms-u.cjs → useAppSettingsDialog-BfnyikIV.cjs} +3 -1
  418. package/dist/chunks/useAppSettingsDialog-BfnyikIV.cjs.map +1 -0
  419. package/dist/chunks/{useAppSettingsDialog-Dn48dw1k.mjs → useAppSettingsDialog-DbtEkXa4.mjs} +4 -2
  420. package/dist/chunks/useAppSettingsDialog-DbtEkXa4.mjs.map +1 -0
  421. package/dist/chunks/useNcFormBox-DA9iwXWY.mjs +13 -0
  422. package/dist/chunks/useNcFormBox-DA9iwXWY.mjs.map +1 -0
  423. package/dist/chunks/useNcFormBox-DQeOEuQp.cjs +12 -0
  424. package/dist/chunks/useNcFormBox-DQeOEuQp.cjs.map +1 -0
  425. package/dist/components/NcAppSettingsDialog/useAppSettingsDialog.d.ts +2 -1
  426. package/dist/components/NcAppSettingsSectionShortcuts/index.d.ts +8 -1
  427. package/dist/components/NcAppSettingsShortcutsSection/index.d.ts +5 -0
  428. package/dist/components/NcFormBox/index.d.ts +1 -0
  429. package/dist/components/NcFormBox/useNcFormBox.d.ts +19 -0
  430. package/dist/components/NcFormBoxButton/index.d.ts +5 -0
  431. package/dist/components/NcFormBoxCopyButton/index.d.ts +5 -0
  432. package/dist/components/NcFormBoxCopyButton/useCopy.d.ts +10 -0
  433. package/dist/components/NcFormBoxSwitch/index.d.ts +5 -0
  434. package/dist/components/NcFormGroup/index.d.ts +5 -0
  435. package/dist/composables/useButtonLink.d.ts +71 -0
  436. package/dist/index.cjs +70 -53
  437. package/dist/index.cjs.map +1 -1
  438. package/dist/index.mjs +71 -54
  439. package/dist/index.mjs.map +1 -1
  440. package/dist/utils/VueTypes.d.ts +7 -0
  441. package/package.json +10 -10
  442. package/dist/assets/NcHotkeyList-B42a0d8Z.css +0 -9
  443. package/dist/assets/NcRadioGroup-CNgjqqiP.css +0 -49
  444. package/dist/chunks/NcActions-BvFVkIzX.mjs.map +0 -1
  445. package/dist/chunks/NcActions-CF9VxHHD.cjs.map +0 -1
  446. package/dist/chunks/NcAppSettingsDialog--RlMIfbo.cjs.map +0 -1
  447. package/dist/chunks/NcAppSettingsDialog-8YaW7ud3.mjs.map +0 -1
  448. package/dist/chunks/NcAppSettingsSection-DVrBPuLD.mjs.map +0 -1
  449. package/dist/chunks/NcAppSettingsSection-OPWPqi2Y.cjs.map +0 -1
  450. package/dist/chunks/NcAppSettingsSectionShortcuts-CBYgfYGz.cjs.map +0 -1
  451. package/dist/chunks/NcAppSettingsSectionShortcuts-CdP-4ktS.mjs.map +0 -1
  452. package/dist/chunks/NcHotkeyList-CUjp1-hr.cjs.map +0 -1
  453. package/dist/chunks/NcHotkeyList-jfSroQAQ.mjs.map +0 -1
  454. package/dist/chunks/NcRadioGroup-BZ-humrK.cjs.map +0 -1
  455. package/dist/chunks/NcRadioGroup-VKZJ0Vnh.mjs.map +0 -1
  456. package/dist/chunks/NcRadioGroupButton-CD4tkF_s.mjs.map +0 -1
  457. package/dist/chunks/NcRadioGroupButton-DrqgN-8C.cjs.map +0 -1
  458. package/dist/chunks/_l10n-BWisB7-O.mjs.map +0 -1
  459. package/dist/chunks/useAppSettingsDialog-CPqmms-u.cjs.map +0 -1
  460. package/dist/chunks/useAppSettingsDialog-Dn48dw1k.mjs.map +0 -1
  461. /package/dist/assets/{NcAppSettingsSectionShortcuts-BuI-s4kd.css → NcAppSettingsShortcutsSection-BuI-s4kd.css} +0 -0
@@ -31,7 +31,7 @@
31
31
  /*
32
32
  * Ensure proper alignment of the vue material icons
33
33
  */
34
- .material-design-icon[data-v-99d60ecb] {
34
+ .material-design-icon[data-v-ec7a0a24] {
35
35
  display: flex;
36
36
  align-self: center;
37
37
  justify-self: center;
@@ -51,198 +51,204 @@
51
51
  * and reworked to use with Nextcloud dark and light theme
52
52
  */
53
53
  /* Plain text styles */
54
- .rich-text--wrapper[data-v-99d60ecb] {
54
+ .rich-text--wrapper[data-v-ec7a0a24] {
55
55
  overflow-wrap: break-word;
56
56
  line-height: 1.5;
57
57
  }
58
- .rich-text--wrapper .rich-text--fallback[data-v-99d60ecb], .rich-text--wrapper .rich-text-component[data-v-99d60ecb] {
58
+ .rich-text--wrapper .rich-text--fallback[data-v-ec7a0a24], .rich-text--wrapper .rich-text-component[data-v-ec7a0a24] {
59
59
  display: inline;
60
60
  }
61
- .rich-text--wrapper .rich-text--external-link[data-v-99d60ecb] {
61
+ .rich-text--wrapper .rich-text--external-link[data-v-ec7a0a24] {
62
62
  text-decoration: underline;
63
63
  }
64
- .rich-text--wrapper .rich-text--external-link[data-v-99d60ecb]:after {
64
+ .rich-text--wrapper .rich-text--external-link[data-v-ec7a0a24]:after {
65
65
  content: " ↗";
66
66
  }
67
67
 
68
68
  /* Markdown styles */
69
- .rich-text--wrapper-markdown[data-v-99d60ecb] {
69
+ .rich-text--wrapper-markdown[data-v-ec7a0a24] {
70
70
  tab-size: 4;
71
71
  }
72
- .rich-text--wrapper-markdown div > *[data-v-99d60ecb]:first-child,
73
- .rich-text--wrapper-markdown blockquote > *[data-v-99d60ecb]:first-child {
72
+ .rich-text--wrapper-markdown div > *[data-v-ec7a0a24]:first-child,
73
+ .rich-text--wrapper-markdown blockquote > *[data-v-ec7a0a24]:first-child {
74
74
  margin-top: 0 !important;
75
75
  }
76
- .rich-text--wrapper-markdown div > *[data-v-99d60ecb]:last-child,
77
- .rich-text--wrapper-markdown blockquote > *[data-v-99d60ecb]:last-child {
76
+ .rich-text--wrapper-markdown div > *[data-v-ec7a0a24]:last-child,
77
+ .rich-text--wrapper-markdown blockquote > *[data-v-ec7a0a24]:last-child {
78
78
  margin-block-end: 0 !important;
79
79
  }
80
- .rich-text--wrapper-markdown blockquote[data-v-99d60ecb] {
80
+ .rich-text--wrapper-markdown blockquote[data-v-ec7a0a24] {
81
81
  padding-inline-start: 13px;
82
82
  border-inline-start: 2px solid var(--color-border-dark);
83
83
  color: var(--color-text-lighter);
84
84
  }
85
- .rich-text--wrapper-markdown h1[data-v-99d60ecb], .rich-text--wrapper-markdown h2[data-v-99d60ecb], .rich-text--wrapper-markdown h3[data-v-99d60ecb], .rich-text--wrapper-markdown h4[data-v-99d60ecb], .rich-text--wrapper-markdown h5[data-v-99d60ecb], .rich-text--wrapper-markdown h6[data-v-99d60ecb], .rich-text--wrapper-markdown p[data-v-99d60ecb], .rich-text--wrapper-markdown ul[data-v-99d60ecb], .rich-text--wrapper-markdown ol[data-v-99d60ecb], .rich-text--wrapper-markdown blockquote[data-v-99d60ecb], .rich-text--wrapper-markdown pre[data-v-99d60ecb] {
85
+ .rich-text--wrapper-markdown h1[data-v-ec7a0a24], .rich-text--wrapper-markdown h2[data-v-ec7a0a24], .rich-text--wrapper-markdown h3[data-v-ec7a0a24], .rich-text--wrapper-markdown h4[data-v-ec7a0a24], .rich-text--wrapper-markdown h5[data-v-ec7a0a24], .rich-text--wrapper-markdown h6[data-v-ec7a0a24], .rich-text--wrapper-markdown p[data-v-ec7a0a24], .rich-text--wrapper-markdown ul[data-v-ec7a0a24], .rich-text--wrapper-markdown ol[data-v-ec7a0a24], .rich-text--wrapper-markdown blockquote[data-v-ec7a0a24], .rich-text--wrapper-markdown pre[data-v-ec7a0a24] {
86
86
  margin-top: 0;
87
87
  margin-block-end: 1em;
88
88
  }
89
- .rich-text--wrapper-markdown h1[data-v-99d60ecb], .rich-text--wrapper-markdown h2[data-v-99d60ecb], .rich-text--wrapper-markdown h3[data-v-99d60ecb], .rich-text--wrapper-markdown h4[data-v-99d60ecb], .rich-text--wrapper-markdown h5[data-v-99d60ecb], .rich-text--wrapper-markdown h6[data-v-99d60ecb] {
89
+ .rich-text--wrapper-markdown h1[data-v-ec7a0a24], .rich-text--wrapper-markdown h2[data-v-ec7a0a24], .rich-text--wrapper-markdown h3[data-v-ec7a0a24], .rich-text--wrapper-markdown h4[data-v-ec7a0a24], .rich-text--wrapper-markdown h5[data-v-ec7a0a24], .rich-text--wrapper-markdown h6[data-v-ec7a0a24] {
90
90
  font-weight: bold;
91
91
  }
92
- .rich-text--wrapper-markdown h1[data-v-99d60ecb] {
93
- font-size: 30px;
92
+ .rich-text--wrapper-markdown h4[data-v-ec7a0a24] {
93
+ font-size: 20px;
94
94
  }
95
- .rich-text--wrapper-markdown ul[data-v-99d60ecb], .rich-text--wrapper-markdown ol[data-v-99d60ecb] {
95
+ .rich-text--wrapper-markdown h5[data-v-ec7a0a24] {
96
+ font-size: 18px;
97
+ }
98
+ .rich-text--wrapper-markdown h6[data-v-ec7a0a24] {
99
+ font-size: 15px;
100
+ }
101
+ .rich-text--wrapper-markdown ul[data-v-ec7a0a24], .rich-text--wrapper-markdown ol[data-v-ec7a0a24] {
96
102
  padding-inline-start: 4ch;
97
103
  }
98
- .rich-text--wrapper-markdown ul[data-v-99d60ecb] {
104
+ .rich-text--wrapper-markdown ul[data-v-ec7a0a24] {
99
105
  list-style-type: disc;
100
106
  }
101
- .rich-text--wrapper-markdown[data-v-99d60ecb] {
107
+ .rich-text--wrapper-markdown[data-v-ec7a0a24] {
102
108
  /* Flavored Markdown styles */
103
109
  }
104
- .rich-text--wrapper-markdown ul.contains-task-list[data-v-99d60ecb] {
110
+ .rich-text--wrapper-markdown ul.contains-task-list[data-v-ec7a0a24] {
105
111
  list-style-type: none;
106
112
  padding: 0;
107
113
  }
108
- .rich-text--wrapper-markdown li.task-list-item > ul[data-v-99d60ecb],
109
- .rich-text--wrapper-markdown li.task-list-item > ol[data-v-99d60ecb],
110
- .rich-text--wrapper-markdown li.task-list-item > li[data-v-99d60ecb],
111
- .rich-text--wrapper-markdown li.task-list-item > blockquote[data-v-99d60ecb],
112
- .rich-text--wrapper-markdown li.task-list-item > pre[data-v-99d60ecb] {
114
+ .rich-text--wrapper-markdown li.task-list-item > ul[data-v-ec7a0a24],
115
+ .rich-text--wrapper-markdown li.task-list-item > ol[data-v-ec7a0a24],
116
+ .rich-text--wrapper-markdown li.task-list-item > li[data-v-ec7a0a24],
117
+ .rich-text--wrapper-markdown li.task-list-item > blockquote[data-v-ec7a0a24],
118
+ .rich-text--wrapper-markdown li.task-list-item > pre[data-v-ec7a0a24] {
113
119
  margin-inline-start: 15px;
114
120
  margin-block-end: 0;
115
121
  }
116
- .rich-text--wrapper-markdown pre[data-v-99d60ecb] {
122
+ .rich-text--wrapper-markdown pre[data-v-ec7a0a24] {
117
123
  direction: ltr;
118
124
  }
119
- .rich-text--wrapper-markdown table[data-v-99d60ecb] {
125
+ .rich-text--wrapper-markdown table[data-v-ec7a0a24] {
120
126
  border-collapse: collapse;
121
127
  border: 2px solid var(--color-border-maxcontrast);
122
128
  }
123
- .rich-text--wrapper-markdown table th[data-v-99d60ecb],
124
- .rich-text--wrapper-markdown table td[data-v-99d60ecb] {
129
+ .rich-text--wrapper-markdown table th[data-v-ec7a0a24],
130
+ .rich-text--wrapper-markdown table td[data-v-ec7a0a24] {
125
131
  padding: var(--default-grid-baseline);
126
132
  border: 1px solid var(--color-border-maxcontrast);
127
133
  }
128
- .rich-text--wrapper-markdown table th[data-v-99d60ecb]:first-child,
129
- .rich-text--wrapper-markdown table td[data-v-99d60ecb]:first-child {
134
+ .rich-text--wrapper-markdown table th[data-v-ec7a0a24]:first-child,
135
+ .rich-text--wrapper-markdown table td[data-v-ec7a0a24]:first-child {
130
136
  border-inline-start: 0;
131
137
  }
132
- .rich-text--wrapper-markdown table th[data-v-99d60ecb]:last-child,
133
- .rich-text--wrapper-markdown table td[data-v-99d60ecb]:last-child {
138
+ .rich-text--wrapper-markdown table th[data-v-ec7a0a24]:last-child,
139
+ .rich-text--wrapper-markdown table td[data-v-ec7a0a24]:last-child {
134
140
  border-inline-end: 0;
135
141
  }
136
- .rich-text--wrapper-markdown table tr:first-child th[data-v-99d60ecb] {
142
+ .rich-text--wrapper-markdown table tr:first-child th[data-v-ec7a0a24] {
137
143
  border-top: 0;
138
144
  }
139
- .rich-text--wrapper-markdown table tr:last-child td[data-v-99d60ecb] {
145
+ .rich-text--wrapper-markdown table tr:last-child td[data-v-ec7a0a24] {
140
146
  border-block-end: 0;
141
147
  }
142
148
 
143
149
  /* Highlight code syntax in code blocks */
144
150
  /* stylelint-disable-next-line no-duplicate-selectors */
145
- .rich-text--wrapper-markdown pre[data-v-99d60ecb]:has(.hljs) {
151
+ .rich-text--wrapper-markdown pre[data-v-ec7a0a24]:has(.hljs) {
146
152
  color: var(--hljs-color);
147
153
  background: var(--hljs-background-color);
148
154
  }
149
- .rich-text--wrapper-markdown .hljs-doctag[data-v-99d60ecb],
150
- .rich-text--wrapper-markdown .hljs-keyword[data-v-99d60ecb],
151
- .rich-text--wrapper-markdown .hljs-meta .hljs-keyword[data-v-99d60ecb],
152
- .rich-text--wrapper-markdown .hljs-template-tag[data-v-99d60ecb],
153
- .rich-text--wrapper-markdown .hljs-template-variable[data-v-99d60ecb],
154
- .rich-text--wrapper-markdown .hljs-type[data-v-99d60ecb],
155
- .rich-text--wrapper-markdown .hljs-variable.language_[data-v-99d60ecb] {
155
+ .rich-text--wrapper-markdown .hljs-doctag[data-v-ec7a0a24],
156
+ .rich-text--wrapper-markdown .hljs-keyword[data-v-ec7a0a24],
157
+ .rich-text--wrapper-markdown .hljs-meta .hljs-keyword[data-v-ec7a0a24],
158
+ .rich-text--wrapper-markdown .hljs-template-tag[data-v-ec7a0a24],
159
+ .rich-text--wrapper-markdown .hljs-template-variable[data-v-ec7a0a24],
160
+ .rich-text--wrapper-markdown .hljs-type[data-v-ec7a0a24],
161
+ .rich-text--wrapper-markdown .hljs-variable.language_[data-v-ec7a0a24] {
156
162
  /* prettylights-syntax-keyword */
157
163
  color: var(--hljs-syntax-keyword-color);
158
164
  }
159
- .rich-text--wrapper-markdown .hljs-title[data-v-99d60ecb],
160
- .rich-text--wrapper-markdown .hljs-title.class_[data-v-99d60ecb],
161
- .rich-text--wrapper-markdown .hljs-title.class_.inherited__[data-v-99d60ecb],
162
- .rich-text--wrapper-markdown .hljs-title.function_[data-v-99d60ecb] {
165
+ .rich-text--wrapper-markdown .hljs-title[data-v-ec7a0a24],
166
+ .rich-text--wrapper-markdown .hljs-title.class_[data-v-ec7a0a24],
167
+ .rich-text--wrapper-markdown .hljs-title.class_.inherited__[data-v-ec7a0a24],
168
+ .rich-text--wrapper-markdown .hljs-title.function_[data-v-ec7a0a24] {
163
169
  /* prettylights-syntax-entity */
164
170
  color: var(--hljs-syntax-entity-color);
165
171
  }
166
- .rich-text--wrapper-markdown .hljs-attr[data-v-99d60ecb],
167
- .rich-text--wrapper-markdown .hljs-attribute[data-v-99d60ecb],
168
- .rich-text--wrapper-markdown .hljs-literal[data-v-99d60ecb],
169
- .rich-text--wrapper-markdown .hljs-meta[data-v-99d60ecb],
170
- .rich-text--wrapper-markdown .hljs-number[data-v-99d60ecb],
171
- .rich-text--wrapper-markdown .hljs-operator[data-v-99d60ecb],
172
- .rich-text--wrapper-markdown .hljs-variable[data-v-99d60ecb],
173
- .rich-text--wrapper-markdown .hljs-selector-attr[data-v-99d60ecb],
174
- .rich-text--wrapper-markdown .hljs-selector-class[data-v-99d60ecb],
175
- .rich-text--wrapper-markdown .hljs-selector-id[data-v-99d60ecb] {
172
+ .rich-text--wrapper-markdown .hljs-attr[data-v-ec7a0a24],
173
+ .rich-text--wrapper-markdown .hljs-attribute[data-v-ec7a0a24],
174
+ .rich-text--wrapper-markdown .hljs-literal[data-v-ec7a0a24],
175
+ .rich-text--wrapper-markdown .hljs-meta[data-v-ec7a0a24],
176
+ .rich-text--wrapper-markdown .hljs-number[data-v-ec7a0a24],
177
+ .rich-text--wrapper-markdown .hljs-operator[data-v-ec7a0a24],
178
+ .rich-text--wrapper-markdown .hljs-variable[data-v-ec7a0a24],
179
+ .rich-text--wrapper-markdown .hljs-selector-attr[data-v-ec7a0a24],
180
+ .rich-text--wrapper-markdown .hljs-selector-class[data-v-ec7a0a24],
181
+ .rich-text--wrapper-markdown .hljs-selector-id[data-v-ec7a0a24] {
176
182
  /* prettylights-syntax-constant */
177
183
  color: var(--hljs-syntax-constant-color);
178
184
  }
179
- .rich-text--wrapper-markdown .hljs-regexp[data-v-99d60ecb],
180
- .rich-text--wrapper-markdown .hljs-string[data-v-99d60ecb],
181
- .rich-text--wrapper-markdown .hljs-meta .hljs-string[data-v-99d60ecb] {
185
+ .rich-text--wrapper-markdown .hljs-regexp[data-v-ec7a0a24],
186
+ .rich-text--wrapper-markdown .hljs-string[data-v-ec7a0a24],
187
+ .rich-text--wrapper-markdown .hljs-meta .hljs-string[data-v-ec7a0a24] {
182
188
  /* prettylights-syntax-string */
183
189
  color: var(--hljs-syntax-string-color);
184
190
  }
185
- .rich-text--wrapper-markdown .hljs-built_in[data-v-99d60ecb],
186
- .rich-text--wrapper-markdown .hljs-symbol[data-v-99d60ecb] {
191
+ .rich-text--wrapper-markdown .hljs-built_in[data-v-ec7a0a24],
192
+ .rich-text--wrapper-markdown .hljs-symbol[data-v-ec7a0a24] {
187
193
  /* prettylights-syntax-variable */
188
194
  color: var(--hljs-syntax-variable-color);
189
195
  }
190
- .rich-text--wrapper-markdown .hljs-comment[data-v-99d60ecb],
191
- .rich-text--wrapper-markdown .hljs-code[data-v-99d60ecb],
192
- .rich-text--wrapper-markdown .hljs-formula[data-v-99d60ecb] {
196
+ .rich-text--wrapper-markdown .hljs-comment[data-v-ec7a0a24],
197
+ .rich-text--wrapper-markdown .hljs-code[data-v-ec7a0a24],
198
+ .rich-text--wrapper-markdown .hljs-formula[data-v-ec7a0a24] {
193
199
  /* prettylights-syntax-comment */
194
200
  color: var(--hljs-syntax-comment-color);
195
201
  }
196
- .rich-text--wrapper-markdown .hljs-name[data-v-99d60ecb],
197
- .rich-text--wrapper-markdown .hljs-quote[data-v-99d60ecb],
198
- .rich-text--wrapper-markdown .hljs-selector-tag[data-v-99d60ecb],
199
- .rich-text--wrapper-markdown .hljs-selector-pseudo[data-v-99d60ecb] {
202
+ .rich-text--wrapper-markdown .hljs-name[data-v-ec7a0a24],
203
+ .rich-text--wrapper-markdown .hljs-quote[data-v-ec7a0a24],
204
+ .rich-text--wrapper-markdown .hljs-selector-tag[data-v-ec7a0a24],
205
+ .rich-text--wrapper-markdown .hljs-selector-pseudo[data-v-ec7a0a24] {
200
206
  /* prettylights-syntax-entity-tag */
201
207
  color: var(--hljs-syntax-entity-tag-color);
202
208
  }
203
- .rich-text--wrapper-markdown .hljs-subst[data-v-99d60ecb] {
209
+ .rich-text--wrapper-markdown .hljs-subst[data-v-ec7a0a24] {
204
210
  /* prettylights-syntax-storage-modifier-import */
205
211
  color: var(--hljs-syntax-storage-modifier-import-color);
206
212
  }
207
- .rich-text--wrapper-markdown .hljs-section[data-v-99d60ecb] {
213
+ .rich-text--wrapper-markdown .hljs-section[data-v-ec7a0a24] {
208
214
  /* prettylights-syntax-markup-heading */
209
215
  color: var(--hljs-syntax-markup-heading-color);
210
216
  font-weight: bold;
211
217
  }
212
- .rich-text--wrapper-markdown .hljs-bullet[data-v-99d60ecb] {
218
+ .rich-text--wrapper-markdown .hljs-bullet[data-v-ec7a0a24] {
213
219
  /* prettylights-syntax-markup-list */
214
220
  color: var(--hljs-syntax-markup-list-color);
215
221
  }
216
- .rich-text--wrapper-markdown .hljs-emphasis[data-v-99d60ecb] {
222
+ .rich-text--wrapper-markdown .hljs-emphasis[data-v-ec7a0a24] {
217
223
  /* prettylights-syntax-markup-italic */
218
224
  color: var(--hljs-syntax-markup-italic-color);
219
225
  font-style: italic;
220
226
  }
221
- .rich-text--wrapper-markdown .hljs-strong[data-v-99d60ecb] {
227
+ .rich-text--wrapper-markdown .hljs-strong[data-v-ec7a0a24] {
222
228
  /* prettylights-syntax-markup-bold */
223
229
  color: var(--hljs-syntax-markup-bold-color);
224
230
  font-weight: bold;
225
231
  }
226
- .rich-text--wrapper-markdown .hljs-addition[data-v-99d60ecb] {
232
+ .rich-text--wrapper-markdown .hljs-addition[data-v-ec7a0a24] {
227
233
  /* prettylights-syntax-markup-inserted */
228
234
  color: var(--hljs-syntax-markup-inserted-color);
229
235
  background-color: var(--hljs-syntax-markup-inserted-background-color);
230
236
  }
231
- .rich-text--wrapper-markdown .hljs-deletion[data-v-99d60ecb] {
237
+ .rich-text--wrapper-markdown .hljs-deletion[data-v-ec7a0a24] {
232
238
  /* prettylights-syntax-markup-deleted */
233
239
  color: var(--hljs-syntax-markup-deleted-color);
234
240
  background-color: var(--hljs-syntax-markup-deleted-background-color);
235
241
  }
236
- .rich-text--wrapper-markdown .hljs-char.escape_[data-v-99d60ecb],
237
- .rich-text--wrapper-markdown .hljs-link[data-v-99d60ecb],
238
- .rich-text--wrapper-markdown .hljs-params[data-v-99d60ecb],
239
- .rich-text--wrapper-markdown .hljs-property[data-v-99d60ecb],
240
- .rich-text--wrapper-markdown .hljs-punctuation[data-v-99d60ecb],
241
- .rich-text--wrapper-markdown .hljs-tag[data-v-99d60ecb] {
242
+ .rich-text--wrapper-markdown .hljs-char.escape_[data-v-ec7a0a24],
243
+ .rich-text--wrapper-markdown .hljs-link[data-v-ec7a0a24],
244
+ .rich-text--wrapper-markdown .hljs-params[data-v-ec7a0a24],
245
+ .rich-text--wrapper-markdown .hljs-property[data-v-ec7a0a24],
246
+ .rich-text--wrapper-markdown .hljs-punctuation[data-v-ec7a0a24],
247
+ .rich-text--wrapper-markdown .hljs-tag[data-v-ec7a0a24] {
242
248
  /* purposely ignored */
243
249
  }
244
250
  @media (prefers-color-scheme: light) {
245
- .rich-text--wrapper-markdown[data-v-99d60ecb] {
251
+ .rich-text--wrapper-markdown[data-v-ec7a0a24] {
246
252
  --hljs-color: var(--color-main-text, #24292e);
247
253
  --hljs-background-color: var(--color-background-dark, #ffffff);
248
254
  --hljs-syntax-keyword-color: #d73a49;
@@ -262,7 +268,7 @@
262
268
  --hljs-syntax-markup-deleted-color: #b31d28;
263
269
  --hljs-syntax-markup-deleted-background-color: #ffeef0;
264
270
  }
265
- [data-theme-dark] .rich-text--wrapper-markdown[data-v-99d60ecb] {
271
+ [data-theme-dark] .rich-text--wrapper-markdown[data-v-ec7a0a24] {
266
272
  --hljs-color: var(--color-main-text, #c9d1d9);
267
273
  --hljs-background-color: var(--color-background-dark, #0d1117);
268
274
  --hljs-syntax-keyword-color: #ff7b72;
@@ -284,7 +290,7 @@
284
290
  }
285
291
  }
286
292
  @media (prefers-color-scheme: dark) {
287
- .rich-text--wrapper-markdown[data-v-99d60ecb] {
293
+ .rich-text--wrapper-markdown[data-v-ec7a0a24] {
288
294
  --hljs-color: var(--color-main-text, #c9d1d9);
289
295
  --hljs-background-color: var(--color-background-dark, #0d1117);
290
296
  --hljs-syntax-keyword-color: #ff7b72;
@@ -304,7 +310,7 @@
304
310
  --hljs-syntax-markup-deleted-color: #ffdcd7;
305
311
  --hljs-syntax-markup-deleted-background-color: #67060c;
306
312
  }
307
- [data-theme-light] .rich-text--wrapper-markdown[data-v-99d60ecb] {
313
+ [data-theme-light] .rich-text--wrapper-markdown[data-v-ec7a0a24] {
308
314
  --hljs-color: var(--color-main-text, #24292e);
309
315
  --hljs-background-color: var(--color-background-dark, #ffffff);
310
316
  --hljs-syntax-keyword-color: #d73a49;
@@ -325,6 +331,6 @@
325
331
  --hljs-syntax-markup-deleted-background-color: #ffeef0;
326
332
  }
327
333
  }
328
- a[data-v-99d60ecb]:not(.rich-text--component) {
334
+ a[data-v-ec7a0a24]:not(.rich-text--component) {
329
335
  text-decoration: underline;
330
336
  }
@@ -1,6 +1,6 @@
1
1
  require('../assets/NcActionButton-CG4V9b5b.css');
2
2
  "use strict";
3
- const mdi = require("./mdi-Nhb6SBw8.cjs");
3
+ const mdi = require("./mdi-CVXTs58m.cjs");
4
4
  const NcIconSvgWrapper = require("./NcIconSvgWrapper-D-aKMbf3.cjs");
5
5
  const actionText = require("./actionText-D2-z0ud3.cjs");
6
6
  const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
@@ -180,4 +180,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
180
180
  );
181
181
  const NcActionButton = __component__.exports;
182
182
  exports.NcActionButton = NcActionButton;
183
- //# sourceMappingURL=NcActionButton-DSq_luox.cjs.map
183
+ //# sourceMappingURL=NcActionButton-BWM7FD0z.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButton-DSq_luox.cjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\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` prop.\n\nFor the same purpose, but in a more compact way, `description` prop can be used.\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\t<NcActionButton description=\"Subline description for the button\" @click=\"showMessage('Edit')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tEdit\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 Pencil from 'vue-material-design-icons/Pencil.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\tPencil,\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\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\tclass=\"action-button button-vue\"\n\t\t\t:class=\"{\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\n\t\t\t\t\t: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 class=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong\n\t\t\t\t\tv-if=\"name\"\n\t\t\t\t\tclass=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\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\n\t\t\t\t\tv-if=\"isLongText\"\n\t\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\t\tv-text=\"text\" />\n\t\t\t\t<!-- default text display -->\n\t\t\t\t<span\n\t\t\t\t\tv-else\n\t\t\t\t\tclass=\"action-button__text\">\n\t\t\t\t\t{{ text }}\n\t\t\t\t</span>\n\t\t\t\t<span\n\t\t\t\t\tv-if=\"description\"\n\t\t\t\t\tclass=\"action-button__description\"\n\t\t\t\t\tv-text=\"description\" />\n\t\t\t</span>\n\n\t\t\t<!-- right(in LTR) or left(in RTL) arrow icon when there is a sub-menu -->\n\t\t\t<NcIconSvgWrapper\n\t\t\t\tv-if=\"isMenu\"\n\t\t\t\tclass=\"action-button__menu-icon\"\n\t\t\t\tdirectional\n\t\t\t\t:path=\"mdiChevronRight\" />\n\t\t\t<NcIconSvgWrapper v-else-if=\"isChecked\" :path=\"mdiCheck\" class=\"action-button__pressed-icon\" />\n\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 { mdiCheck, mdiChevronRight } from '@mdi/js'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.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\tNcIconSvgWrapper,\n\t},\n\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\t// eslint-disable-next-line vue/no-boolean-default\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\n\t\t/**\n\t\t * Small underlying text content of the entry\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tmdiCheck,\n\t\t\tmdiChevronRight,\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 *\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@use '../../assets/action.scss' as *;\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button {\n\t&__pressed-icon {\n\t\tmargin-inline: auto calc($icon-margin * -1);\n\t}\n\n\t* {\n\t\tcursor: pointer;\n\t}\n}\n</style>\n"],"names":["NcIconSvgWrapper","ActionTextMixin","mdiCheck","mdiChevronRight"],"mappings":"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"}
1
+ {"version":3,"file":"NcActionButton-BWM7FD0z.cjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\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` prop.\n\nFor the same purpose, but in a more compact way, `description` prop can be used.\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\t<NcActionButton description=\"Subline description for the button\" @click=\"showMessage('Edit')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tEdit\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 Pencil from 'vue-material-design-icons/Pencil.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\tPencil,\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\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\tclass=\"action-button button-vue\"\n\t\t\t:class=\"{\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\n\t\t\t\t\t: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 class=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong\n\t\t\t\t\tv-if=\"name\"\n\t\t\t\t\tclass=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\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\n\t\t\t\t\tv-if=\"isLongText\"\n\t\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\t\tv-text=\"text\" />\n\t\t\t\t<!-- default text display -->\n\t\t\t\t<span\n\t\t\t\t\tv-else\n\t\t\t\t\tclass=\"action-button__text\">\n\t\t\t\t\t{{ text }}\n\t\t\t\t</span>\n\t\t\t\t<span\n\t\t\t\t\tv-if=\"description\"\n\t\t\t\t\tclass=\"action-button__description\"\n\t\t\t\t\tv-text=\"description\" />\n\t\t\t</span>\n\n\t\t\t<!-- right(in LTR) or left(in RTL) arrow icon when there is a sub-menu -->\n\t\t\t<NcIconSvgWrapper\n\t\t\t\tv-if=\"isMenu\"\n\t\t\t\tclass=\"action-button__menu-icon\"\n\t\t\t\tdirectional\n\t\t\t\t:path=\"mdiChevronRight\" />\n\t\t\t<NcIconSvgWrapper v-else-if=\"isChecked\" :path=\"mdiCheck\" class=\"action-button__pressed-icon\" />\n\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 { mdiCheck, mdiChevronRight } from '@mdi/js'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.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\tNcIconSvgWrapper,\n\t},\n\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\t// eslint-disable-next-line vue/no-boolean-default\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\n\t\t/**\n\t\t * Small underlying text content of the entry\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tmdiCheck,\n\t\t\tmdiChevronRight,\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 *\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@use '../../assets/action.scss' as *;\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button {\n\t&__pressed-icon {\n\t\tmargin-inline: auto calc($icon-margin * -1);\n\t}\n\n\t* {\n\t\tcursor: pointer;\n\t}\n}\n</style>\n"],"names":["NcIconSvgWrapper","ActionTextMixin","mdiCheck","mdiChevronRight"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import '../assets/NcActionButton-CG4V9b5b.css';
2
- import { m as mdiChevronRight, a as mdiCheck } from "./mdi-CKSXwCsV.mjs";
2
+ import { m as mdiChevronRight, a as mdiCheck } from "./mdi-C_j0YT8c.mjs";
3
3
  import { N as NcIconSvgWrapper } from "./NcIconSvgWrapper-BreCg8pX.mjs";
4
4
  import { A as ActionTextMixin } from "./actionText-BMig9Egt.mjs";
5
5
  import { n as normalizeComponent } from "./_plugin-vue2_normalizer-DU4iP6Vu.mjs";
@@ -181,4 +181,4 @@ const NcActionButton = __component__.exports;
181
181
  export {
182
182
  NcActionButton as N
183
183
  };
184
- //# sourceMappingURL=NcActionButton-CD1Z-o2Y.mjs.map
184
+ //# sourceMappingURL=NcActionButton-DykQxmXJ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButton-CD1Z-o2Y.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\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` prop.\n\nFor the same purpose, but in a more compact way, `description` prop can be used.\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\t<NcActionButton description=\"Subline description for the button\" @click=\"showMessage('Edit')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tEdit\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 Pencil from 'vue-material-design-icons/Pencil.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\tPencil,\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\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\tclass=\"action-button button-vue\"\n\t\t\t:class=\"{\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\n\t\t\t\t\t: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 class=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong\n\t\t\t\t\tv-if=\"name\"\n\t\t\t\t\tclass=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\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\n\t\t\t\t\tv-if=\"isLongText\"\n\t\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\t\tv-text=\"text\" />\n\t\t\t\t<!-- default text display -->\n\t\t\t\t<span\n\t\t\t\t\tv-else\n\t\t\t\t\tclass=\"action-button__text\">\n\t\t\t\t\t{{ text }}\n\t\t\t\t</span>\n\t\t\t\t<span\n\t\t\t\t\tv-if=\"description\"\n\t\t\t\t\tclass=\"action-button__description\"\n\t\t\t\t\tv-text=\"description\" />\n\t\t\t</span>\n\n\t\t\t<!-- right(in LTR) or left(in RTL) arrow icon when there is a sub-menu -->\n\t\t\t<NcIconSvgWrapper\n\t\t\t\tv-if=\"isMenu\"\n\t\t\t\tclass=\"action-button__menu-icon\"\n\t\t\t\tdirectional\n\t\t\t\t:path=\"mdiChevronRight\" />\n\t\t\t<NcIconSvgWrapper v-else-if=\"isChecked\" :path=\"mdiCheck\" class=\"action-button__pressed-icon\" />\n\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 { mdiCheck, mdiChevronRight } from '@mdi/js'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.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\tNcIconSvgWrapper,\n\t},\n\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\t// eslint-disable-next-line vue/no-boolean-default\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\n\t\t/**\n\t\t * Small underlying text content of the entry\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tmdiCheck,\n\t\t\tmdiChevronRight,\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 *\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@use '../../assets/action.scss' as *;\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button {\n\t&__pressed-icon {\n\t\tmargin-inline: auto calc($icon-margin * -1);\n\t}\n\n\t* {\n\t\tcursor: pointer;\n\t}\n}\n</style>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NcActionButton-DykQxmXJ.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\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` prop.\n\nFor the same purpose, but in a more compact way, `description` prop can be used.\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\t<NcActionButton description=\"Subline description for the button\" @click=\"showMessage('Edit')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tEdit\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 Pencil from 'vue-material-design-icons/Pencil.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\tPencil,\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\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\tclass=\"action-button button-vue\"\n\t\t\t:class=\"{\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\n\t\t\t\t\t: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 class=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong\n\t\t\t\t\tv-if=\"name\"\n\t\t\t\t\tclass=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\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\n\t\t\t\t\tv-if=\"isLongText\"\n\t\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\t\tv-text=\"text\" />\n\t\t\t\t<!-- default text display -->\n\t\t\t\t<span\n\t\t\t\t\tv-else\n\t\t\t\t\tclass=\"action-button__text\">\n\t\t\t\t\t{{ text }}\n\t\t\t\t</span>\n\t\t\t\t<span\n\t\t\t\t\tv-if=\"description\"\n\t\t\t\t\tclass=\"action-button__description\"\n\t\t\t\t\tv-text=\"description\" />\n\t\t\t</span>\n\n\t\t\t<!-- right(in LTR) or left(in RTL) arrow icon when there is a sub-menu -->\n\t\t\t<NcIconSvgWrapper\n\t\t\t\tv-if=\"isMenu\"\n\t\t\t\tclass=\"action-button__menu-icon\"\n\t\t\t\tdirectional\n\t\t\t\t:path=\"mdiChevronRight\" />\n\t\t\t<NcIconSvgWrapper v-else-if=\"isChecked\" :path=\"mdiCheck\" class=\"action-button__pressed-icon\" />\n\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 { mdiCheck, mdiChevronRight } from '@mdi/js'\nimport NcIconSvgWrapper from '../NcIconSvgWrapper/NcIconSvgWrapper.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\tNcIconSvgWrapper,\n\t},\n\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\t// eslint-disable-next-line vue/no-boolean-default\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\n\t\t/**\n\t\t * Small underlying text content of the entry\n\t\t */\n\t\tdescription: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tmdiCheck,\n\t\t\tmdiChevronRight,\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 *\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@use '../../assets/action.scss' as *;\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n\n.action-button {\n\t&__pressed-icon {\n\t\tmargin-inline: auto calc($icon-margin * -1);\n\t}\n\n\t* {\n\t\tcursor: pointer;\n\t}\n}\n</style>\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  require('../assets/NcActionButtonGroup-CRXLyFpx.css');
2
2
  "use strict";
3
3
  const Vue = require("vue");
4
- const _l10n = require("./_l10n-eOBJ3Dwl.cjs");
4
+ const _l10n = require("./_l10n-B4clLGwo.cjs");
5
5
  const GenRandomId = require("./GenRandomId-D7iOvpZS.cjs");
6
6
  const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
7
7
  _l10n.register();
@@ -48,4 +48,4 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
48
48
  );
49
49
  const NcActionButtonGroup = __component__.exports;
50
50
  exports.NcActionButtonGroup = NcActionButtonGroup;
51
- //# sourceMappingURL=NcActionButtonGroup-DKVCsZhH.cjs.map
51
+ //# sourceMappingURL=NcActionButtonGroup-Bqp4vRGy.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButtonGroup-DKVCsZhH.cjs","sources":["../../src/components/NcActionButtonGroup/NcActionButtonGroup.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots,\nto group buttons as one visual action, like for text alignment.\nThis should be used sparingly for accessibility.\n\n```vue\n<template>\n\t<div style=\"display: flex; align-items: center;\">\n\t\t<NcActions>\n\t\t\t<NcActionButtonGroup name=\"Text alignment\">\n\t\t\t\t<NcActionButton aria-label=\"Align left\"\n\t\t\t\t\t:model-value.sync=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"l\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton aria-label=\"Align center\"\n\t\t\t\t\t:model-value.sync=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"c\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignCenter :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton aria-label=\"Align right\"\n\t\t\t\t\t:model-value.sync=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"r\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActionButtonGroup>\n\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t@click=\"showMessage('Some other action')\">\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\tSome other action\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</div>\n</template>\n<script>\nimport AlignLeft from 'vue-material-design-icons/AlignHorizontalLeft'\nimport AlignRight from 'vue-material-design-icons/AlignHorizontalRight'\nimport AlignCenter from 'vue-material-design-icons/AlignHorizontalCenter'\nimport Plus from 'vue-material-design-icons/Plus'\n\nexport default {\n\tcomponents: {\n\t\tAlignLeft,\n\t\tAlignRight,\n\t\tAlignCenter,\n\t\tPlus,\n\t},\n\tdata() {\n\t\treturn { alignment: 'l' }\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"nc-button-group-base\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<div v-if=\"name\" :id=\"labelId\">\n\t\t\t{{ name }}\n\t\t</div>\n\t\t<ul class=\"nc-button-group-content\" role=\"group\" :aria-labelledby=\"name ? labelId : undefined\">\n\t\t\t<slot />\n\t\t</ul>\n\t</li>\n</template>\n\n<script>\nimport { defineComponent } from 'vue'\nimport { t } from '../../l10n.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\n/**\n * A wrapper for allowing inlining NcAction components within the action menu\n */\nexport default defineComponent({\n\tname: 'NcActionButtonGroup',\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 * Optional text shown below the button group\n\t\t */\n\t\tname: {\n\t\t\trequired: false,\n\t\t\tdefault: undefined,\n\t\t\ttype: String,\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tlabelId: `nc-action-button-group-${GenRandomId()}`,\n\t\t}\n\t},\n\n\tmethods: {\n\t\tt,\n\t},\n})\n</script>\n\n<style lang=\"scss\" scoped>\n.nc-button-group-base {\n\t>div {\n\t\ttext-align: center;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\tul.nc-button-group-content {\n\t\tdisplay: flex;\n\t\tgap: 4px; // required for the focus-visible outline\n\t\tjustify-content: space-between;\n\n\t\t:deep(li) {\n\t\t\tflex: 1 1;\n\t\t}\n\n\t\t:deep(.action-button) {\n\t\t\t// Fix action buttons beeing shifted to the left (right padding)\n\t\t\tpadding: 0 !important;\n\t\t\twidth: 100%;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\n\t\t\t&.action-button--active {\n\t\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t\tborder-radius: var(--border-radius-large);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\n\t\t\t\t&:hover, &:focus, &:focus-within {\n\t\t\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.action-button__pressed-icon {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n"],"names":["defineComponent","GenRandomId","t"],"mappings":";;;;;;AA+FA,MAAA,YAAAA,IAAAA,gBAAA;AAAA,EACA,MAAA;AAAA,EAEA,QAAA;AAAA,IACA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA;AACA,WAAA;AAAA,MACA,SAAA,0BAAAC,YAAAA,YAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,GAAAC,MAAAA;AAAAA,EACA;AACA,CAAA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcActionButtonGroup-Bqp4vRGy.cjs","sources":["../../src/components/NcActionButtonGroup/NcActionButtonGroup.vue"],"sourcesContent":["<!--\n - SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<docs>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots,\nto group buttons as one visual action, like for text alignment.\nThis should be used sparingly for accessibility.\n\n```vue\n<template>\n\t<div style=\"display: flex; align-items: center;\">\n\t\t<NcActions>\n\t\t\t<NcActionButtonGroup name=\"Text alignment\">\n\t\t\t\t<NcActionButton aria-label=\"Align left\"\n\t\t\t\t\t:model-value.sync=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"l\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignLeft :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton aria-label=\"Align center\"\n\t\t\t\t\t:model-value.sync=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"c\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignCenter :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton aria-label=\"Align right\"\n\t\t\t\t\t:model-value.sync=\"alignment\"\n\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\tvalue=\"r\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlignRight :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActionButtonGroup>\n\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t@click=\"showMessage('Some other action')\">\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\tSome other action\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</div>\n</template>\n<script>\nimport AlignLeft from 'vue-material-design-icons/AlignHorizontalLeft'\nimport AlignRight from 'vue-material-design-icons/AlignHorizontalRight'\nimport AlignCenter from 'vue-material-design-icons/AlignHorizontalCenter'\nimport Plus from 'vue-material-design-icons/Plus'\n\nexport default {\n\tcomponents: {\n\t\tAlignLeft,\n\t\tAlignRight,\n\t\tAlignCenter,\n\t\tPlus,\n\t},\n\tdata() {\n\t\treturn { alignment: 'l' }\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"nc-button-group-base\" :role=\"isInSemanticMenu && 'presentation'\">\n\t\t<div v-if=\"name\" :id=\"labelId\">\n\t\t\t{{ name }}\n\t\t</div>\n\t\t<ul class=\"nc-button-group-content\" role=\"group\" :aria-labelledby=\"name ? labelId : undefined\">\n\t\t\t<slot />\n\t\t</ul>\n\t</li>\n</template>\n\n<script>\nimport { defineComponent } from 'vue'\nimport { t } from '../../l10n.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\n/**\n * A wrapper for allowing inlining NcAction components within the action menu\n */\nexport default defineComponent({\n\tname: 'NcActionButtonGroup',\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 * Optional text shown below the button group\n\t\t */\n\t\tname: {\n\t\t\trequired: false,\n\t\t\tdefault: undefined,\n\t\t\ttype: String,\n\t\t},\n\t},\n\n\tsetup() {\n\t\treturn {\n\t\t\tlabelId: `nc-action-button-group-${GenRandomId()}`,\n\t\t}\n\t},\n\n\tmethods: {\n\t\tt,\n\t},\n})\n</script>\n\n<style lang=\"scss\" scoped>\n.nc-button-group-base {\n\t>div {\n\t\ttext-align: center;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n\n\tul.nc-button-group-content {\n\t\tdisplay: flex;\n\t\tgap: 4px; // required for the focus-visible outline\n\t\tjustify-content: space-between;\n\n\t\t:deep(li) {\n\t\t\tflex: 1 1;\n\t\t}\n\n\t\t:deep(.action-button) {\n\t\t\t// Fix action buttons beeing shifted to the left (right padding)\n\t\t\tpadding: 0 !important;\n\t\t\twidth: 100%;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\n\t\t\t&.action-button--active {\n\t\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t\tborder-radius: var(--border-radius-large);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\n\t\t\t\t&:hover, &:focus, &:focus-within {\n\t\t\t\t\tbackground-color: var(--color-primary-element-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.action-button__pressed-icon {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n"],"names":["defineComponent","GenRandomId","t"],"mappings":";;;;;;AA+FA,MAAA,YAAAA,IAAAA,gBAAA;AAAA,EACA,MAAA;AAAA,EAEA,QAAA;AAAA,IACA,kBAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,MACA,MAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,QAAA;AACA,WAAA;AAAA,MACA,SAAA,0BAAAC,YAAAA,YAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,GAAAC,MAAAA;AAAAA,EACA;AACA,CAAA;;;;;;;;;;;;;;;;;"}