@nextcloud/vue 8.32.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 (691) hide show
  1. package/CHANGELOG.md +53 -1
  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/NcActionCheckbox.cjs +1 -1
  8. package/dist/Components/NcActionCheckbox.mjs +1 -1
  9. package/dist/Components/NcActionInput.cjs +1 -1
  10. package/dist/Components/NcActionInput.mjs +1 -1
  11. package/dist/Components/NcActionLink.cjs +5 -5
  12. package/dist/Components/NcActionLink.cjs.map +1 -1
  13. package/dist/Components/NcActionLink.mjs +5 -5
  14. package/dist/Components/NcActionLink.mjs.map +1 -1
  15. package/dist/Components/NcActionRadio.cjs +1 -1
  16. package/dist/Components/NcActionRadio.mjs +1 -1
  17. package/dist/Components/NcActionRouter.cjs +4 -4
  18. package/dist/Components/NcActionRouter.cjs.map +1 -1
  19. package/dist/Components/NcActionRouter.mjs +4 -4
  20. package/dist/Components/NcActionRouter.mjs.map +1 -1
  21. package/dist/Components/NcActionText.cjs +4 -4
  22. package/dist/Components/NcActionText.cjs.map +1 -1
  23. package/dist/Components/NcActionText.mjs +4 -4
  24. package/dist/Components/NcActionText.mjs.map +1 -1
  25. package/dist/Components/NcActionTextEditable.cjs +1 -1
  26. package/dist/Components/NcActionTextEditable.mjs +1 -1
  27. package/dist/Components/NcActions.cjs +1 -1
  28. package/dist/Components/NcActions.mjs +1 -1
  29. package/dist/Components/NcAppContent.cjs +1 -1
  30. package/dist/Components/NcAppContent.mjs +1 -1
  31. package/dist/Components/NcAppNavigation.cjs +1 -1
  32. package/dist/Components/NcAppNavigation.mjs +1 -1
  33. package/dist/Components/NcAppNavigationCaption.cjs +1 -1
  34. package/dist/Components/NcAppNavigationCaption.mjs +1 -1
  35. package/dist/Components/NcAppNavigationItem.cjs +1 -1
  36. package/dist/Components/NcAppNavigationItem.mjs +1 -1
  37. package/dist/Components/NcAppNavigationNew.cjs +1 -1
  38. package/dist/Components/NcAppNavigationNew.mjs +1 -1
  39. package/dist/Components/NcAppNavigationNewItem.cjs +1 -1
  40. package/dist/Components/NcAppNavigationNewItem.mjs +1 -1
  41. package/dist/Components/NcAppNavigationSearch.cjs +1 -1
  42. package/dist/Components/NcAppNavigationSearch.mjs +1 -1
  43. package/dist/Components/NcAppNavigationSettings.cjs +1 -1
  44. package/dist/Components/NcAppNavigationSettings.mjs +1 -1
  45. package/dist/Components/NcAppNavigationToggle.cjs +1 -1
  46. package/dist/Components/NcAppNavigationToggle.mjs +1 -1
  47. package/dist/Components/NcAppSettingsDialog.cjs +1 -1
  48. package/dist/Components/NcAppSettingsDialog.mjs +1 -1
  49. package/dist/Components/NcAppSettingsSection.cjs +1 -1
  50. package/dist/Components/NcAppSettingsSection.mjs +1 -1
  51. package/dist/Components/NcAppSettingsSectionShortcuts.cjs +4 -0
  52. package/dist/Components/NcAppSettingsSectionShortcuts.cjs.map +1 -0
  53. package/dist/Components/NcAppSettingsSectionShortcuts.mjs +5 -0
  54. package/dist/Components/NcAppSettingsSectionShortcuts.mjs.map +1 -0
  55. package/dist/Components/NcAppSettingsShortcutsSection.cjs +4 -0
  56. package/dist/Components/NcAppSettingsShortcutsSection.cjs.map +1 -0
  57. package/dist/Components/NcAppSettingsShortcutsSection.mjs +5 -0
  58. package/dist/Components/NcAppSettingsShortcutsSection.mjs.map +1 -0
  59. package/dist/Components/NcAppSidebar.cjs +1 -1
  60. package/dist/Components/NcAppSidebar.mjs +1 -1
  61. package/dist/Components/NcAppSidebarTab.cjs +2 -3
  62. package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
  63. package/dist/Components/NcAppSidebarTab.mjs +2 -3
  64. package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
  65. package/dist/Components/NcAssistantButton.cjs +1 -1
  66. package/dist/Components/NcAssistantButton.mjs +1 -1
  67. package/dist/Components/NcAssistantIcon.cjs +1 -1
  68. package/dist/Components/NcAssistantIcon.mjs +1 -1
  69. package/dist/Components/NcAvatar.cjs +1 -1
  70. package/dist/Components/NcAvatar.mjs +1 -1
  71. package/dist/Components/NcBreadcrumb.cjs +1 -1
  72. package/dist/Components/NcBreadcrumb.mjs +1 -1
  73. package/dist/Components/NcBreadcrumbs.cjs +1 -1
  74. package/dist/Components/NcBreadcrumbs.mjs +1 -1
  75. package/dist/Components/NcButton.cjs +1 -1
  76. package/dist/Components/NcButton.mjs +1 -1
  77. package/dist/Components/NcCheckboxRadioSwitch.cjs +1 -1
  78. package/dist/Components/NcCheckboxRadioSwitch.mjs +1 -1
  79. package/dist/Components/NcChip.cjs +12 -18
  80. package/dist/Components/NcChip.cjs.map +1 -1
  81. package/dist/Components/NcChip.mjs +12 -18
  82. package/dist/Components/NcChip.mjs.map +1 -1
  83. package/dist/Components/NcCollectionList.cjs +1 -1
  84. package/dist/Components/NcCollectionList.mjs +1 -1
  85. package/dist/Components/NcColorPicker.cjs +1 -1
  86. package/dist/Components/NcColorPicker.mjs +1 -1
  87. package/dist/Components/NcContent.cjs +1 -1
  88. package/dist/Components/NcContent.mjs +1 -1
  89. package/dist/Components/NcCounterBubble.cjs +1 -1
  90. package/dist/Components/NcCounterBubble.mjs +1 -1
  91. package/dist/Components/NcDashboardWidget.cjs +1 -1
  92. package/dist/Components/NcDashboardWidget.mjs +1 -1
  93. package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
  94. package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
  95. package/dist/Components/NcDateTimePicker.cjs +17 -30
  96. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  97. package/dist/Components/NcDateTimePicker.mjs +17 -30
  98. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  99. package/dist/Components/NcDateTimePickerNative.cjs +14 -32
  100. package/dist/Components/NcDateTimePickerNative.cjs.map +1 -1
  101. package/dist/Components/NcDateTimePickerNative.mjs +14 -32
  102. package/dist/Components/NcDateTimePickerNative.mjs.map +1 -1
  103. package/dist/Components/NcDialog.cjs +1 -1
  104. package/dist/Components/NcDialog.mjs +1 -1
  105. package/dist/Components/NcDialogButton.cjs +1 -1
  106. package/dist/Components/NcDialogButton.mjs +1 -1
  107. package/dist/Components/NcEllipsisedOption.cjs +1 -1
  108. package/dist/Components/NcEllipsisedOption.mjs +1 -1
  109. package/dist/Components/NcEmojiPicker.cjs +1 -1
  110. package/dist/Components/NcEmojiPicker.mjs +1 -1
  111. package/dist/Components/NcEmptyContent.cjs +14 -9
  112. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  113. package/dist/Components/NcEmptyContent.mjs +14 -9
  114. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  115. package/dist/Components/NcFormBox.cjs +4 -0
  116. package/dist/Components/NcFormBox.cjs.map +1 -0
  117. package/dist/Components/NcFormBox.mjs +5 -0
  118. package/dist/Components/NcFormBox.mjs.map +1 -0
  119. package/dist/Components/NcFormBoxButton.cjs +4 -0
  120. package/dist/Components/NcFormBoxButton.cjs.map +1 -0
  121. package/dist/Components/NcFormBoxButton.mjs +5 -0
  122. package/dist/Components/NcFormBoxButton.mjs.map +1 -0
  123. package/dist/Components/NcFormBoxCopyButton.cjs +4 -0
  124. package/dist/Components/NcFormBoxCopyButton.cjs.map +1 -0
  125. package/dist/Components/NcFormBoxCopyButton.mjs +5 -0
  126. package/dist/Components/NcFormBoxCopyButton.mjs.map +1 -0
  127. package/dist/Components/NcFormBoxSwitch.cjs +4 -0
  128. package/dist/Components/NcFormBoxSwitch.cjs.map +1 -0
  129. package/dist/Components/NcFormBoxSwitch.mjs +5 -0
  130. package/dist/Components/NcFormBoxSwitch.mjs.map +1 -0
  131. package/dist/Components/NcFormGroup.cjs +4 -0
  132. package/dist/Components/NcFormGroup.cjs.map +1 -0
  133. package/dist/Components/NcFormGroup.mjs +5 -0
  134. package/dist/Components/NcFormGroup.mjs.map +1 -0
  135. package/dist/Components/NcHeaderButton.cjs +1 -1
  136. package/dist/Components/NcHeaderButton.mjs +1 -1
  137. package/dist/Components/NcHeaderMenu.cjs +1 -1
  138. package/dist/Components/NcHeaderMenu.mjs +1 -1
  139. package/dist/Components/NcHighlight.cjs +1 -1
  140. package/dist/Components/NcHighlight.mjs +1 -1
  141. package/dist/Components/NcHotkey.cjs +4 -0
  142. package/dist/Components/NcHotkey.cjs.map +1 -0
  143. package/dist/Components/NcHotkey.mjs +5 -0
  144. package/dist/Components/NcHotkey.mjs.map +1 -0
  145. package/dist/Components/NcHotkeyList.cjs +4 -0
  146. package/dist/Components/NcHotkeyList.cjs.map +1 -0
  147. package/dist/Components/NcHotkeyList.mjs +5 -0
  148. package/dist/Components/NcHotkeyList.mjs.map +1 -0
  149. package/dist/Components/NcIconSvgWrapper.cjs +1 -1
  150. package/dist/Components/NcIconSvgWrapper.mjs +1 -1
  151. package/dist/Components/NcInputField.cjs +1 -1
  152. package/dist/Components/NcInputField.mjs +1 -1
  153. package/dist/Components/NcKbd.cjs +2 -63
  154. package/dist/Components/NcKbd.cjs.map +1 -1
  155. package/dist/Components/NcKbd.mjs +2 -63
  156. package/dist/Components/NcKbd.mjs.map +1 -1
  157. package/dist/Components/NcListItem.cjs +1 -1
  158. package/dist/Components/NcListItem.mjs +1 -1
  159. package/dist/Components/NcListItemIcon.cjs +1 -1
  160. package/dist/Components/NcListItemIcon.mjs +1 -1
  161. package/dist/Components/NcModal.cjs +13 -14
  162. package/dist/Components/NcModal.cjs.map +1 -1
  163. package/dist/Components/NcModal.mjs +13 -14
  164. package/dist/Components/NcModal.mjs.map +1 -1
  165. package/dist/Components/NcNoteCard.cjs +2 -2
  166. package/dist/Components/NcNoteCard.mjs +2 -2
  167. package/dist/Components/NcPasswordField.cjs +1 -1
  168. package/dist/Components/NcPasswordField.mjs +1 -1
  169. package/dist/Components/NcPopover.cjs +1 -1
  170. package/dist/Components/NcPopover.mjs +1 -1
  171. package/dist/Components/NcProgressBar.cjs +1 -1
  172. package/dist/Components/NcProgressBar.mjs +1 -1
  173. package/dist/Components/NcRadioGroup.cjs +1 -1
  174. package/dist/Components/NcRadioGroup.mjs +1 -1
  175. package/dist/Components/NcRadioGroupButton.cjs +1 -1
  176. package/dist/Components/NcRadioGroupButton.mjs +1 -1
  177. package/dist/Components/NcRelatedResourcesPanel.cjs +1 -1
  178. package/dist/Components/NcRelatedResourcesPanel.mjs +1 -1
  179. package/dist/Components/NcRichContenteditable.cjs +2 -2
  180. package/dist/Components/NcRichContenteditable.mjs +2 -2
  181. package/dist/Components/NcRichText.cjs +3 -3
  182. package/dist/Components/NcRichText.mjs +4 -4
  183. package/dist/Components/NcSelect.cjs +1 -1
  184. package/dist/Components/NcSelect.mjs +1 -1
  185. package/dist/Components/NcSelectTags.cjs +1 -1
  186. package/dist/Components/NcSelectTags.mjs +1 -1
  187. package/dist/Components/NcSelectUsers.cjs +1 -1
  188. package/dist/Components/NcSelectUsers.mjs +1 -1
  189. package/dist/Components/NcSettingsInputText.cjs +1 -1
  190. package/dist/Components/NcSettingsInputText.mjs +1 -1
  191. package/dist/Components/NcSettingsSection.cjs +1 -1
  192. package/dist/Components/NcSettingsSection.mjs +1 -1
  193. package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
  194. package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
  195. package/dist/Components/NcTextArea.cjs +1 -1
  196. package/dist/Components/NcTextArea.mjs +1 -1
  197. package/dist/Components/NcTextField.cjs +1 -1
  198. package/dist/Components/NcTextField.mjs +1 -1
  199. package/dist/Components/NcThemeProvider.cjs +1 -1
  200. package/dist/Components/NcThemeProvider.mjs +1 -1
  201. package/dist/Components/NcTimezonePicker.cjs +1 -1
  202. package/dist/Components/NcTimezonePicker.mjs +1 -1
  203. package/dist/Components/NcUserBubble.cjs +1 -1
  204. package/dist/Components/NcUserBubble.mjs +1 -1
  205. package/dist/Components/NcUserStatusIcon.cjs +1 -1
  206. package/dist/Components/NcUserStatusIcon.mjs +1 -1
  207. package/dist/Components/NcVNodes.cjs +1 -2
  208. package/dist/Components/NcVNodes.cjs.map +1 -1
  209. package/dist/Components/NcVNodes.mjs +1 -2
  210. package/dist/Components/NcVNodes.mjs.map +1 -1
  211. package/dist/Composables/useFormatDateTime.cjs +12 -27
  212. package/dist/Composables/useFormatDateTime.cjs.map +1 -1
  213. package/dist/Composables/useFormatDateTime.mjs +12 -27
  214. package/dist/Composables/useFormatDateTime.mjs.map +1 -1
  215. package/dist/Composables/useHotKey.cjs +1 -2
  216. package/dist/Composables/useHotKey.cjs.map +1 -1
  217. package/dist/Composables/useHotKey.mjs +1 -2
  218. package/dist/Composables/useHotKey.mjs.map +1 -1
  219. package/dist/Composables/useIsDarkTheme.cjs +2 -5
  220. package/dist/Composables/useIsDarkTheme.cjs.map +1 -1
  221. package/dist/Composables/useIsDarkTheme.mjs +2 -5
  222. package/dist/Composables/useIsDarkTheme.mjs.map +1 -1
  223. package/dist/Directives/Linkify.cjs +1 -2
  224. package/dist/Directives/Linkify.cjs.map +1 -1
  225. package/dist/Directives/Linkify.mjs +1 -2
  226. package/dist/Directives/Linkify.mjs.map +1 -1
  227. package/dist/Functions/contactsMenu.cjs +2 -3
  228. package/dist/Functions/contactsMenu.cjs.map +1 -1
  229. package/dist/Functions/contactsMenu.mjs +2 -3
  230. package/dist/Functions/contactsMenu.mjs.map +1 -1
  231. package/dist/Functions/dialog.cjs +5 -20
  232. package/dist/Functions/dialog.cjs.map +1 -1
  233. package/dist/Functions/dialog.mjs +5 -20
  234. package/dist/Functions/dialog.mjs.map +1 -1
  235. package/dist/Functions/emoji.cjs +1 -1
  236. package/dist/Functions/emoji.mjs +1 -1
  237. package/dist/Functions/reference.cjs +2 -2
  238. package/dist/Functions/reference.mjs +2 -2
  239. package/dist/Functions/registerReference.cjs +1 -1
  240. package/dist/Functions/registerReference.mjs +1 -1
  241. package/dist/Functions/usernameToColor.cjs +1 -1
  242. package/dist/Functions/usernameToColor.mjs +1 -1
  243. package/dist/Mixins/richEditor.cjs +1 -1
  244. package/dist/Mixins/richEditor.mjs +1 -1
  245. package/dist/assets/{NcActionButton-DwJihiLc.css → NcActionButton-CG4V9b5b.css} +18 -18
  246. package/dist/assets/{NcActionCheckbox-DvdNISIs.css → NcActionCheckbox-C8I_k6NA.css} +12 -12
  247. package/dist/assets/{NcActionInput-DsGwr3wt.css → NcActionInput-BvPYSqDP.css} +65 -65
  248. package/dist/assets/{NcActionLink-7Wp6P-Nk.css → NcActionLink-BtpJIbvI.css} +13 -13
  249. package/dist/assets/{NcActionRadio-CLsR2Ore.css → NcActionRadio-CLIRNp3t.css} +12 -12
  250. package/dist/assets/{NcActionRouter-ByijfQtF.css → NcActionRouter-Bpv5Ywxq.css} +16 -16
  251. package/dist/assets/{NcActionText-CR_yvwWo.css → NcActionText-IMOkntPi.css} +18 -18
  252. package/dist/assets/{NcActionTextEditable-CCWTiT5c.css → NcActionTextEditable-BCmDMuUg.css} +65 -65
  253. package/dist/assets/{NcActions-B4-9qwLn.css → NcActions-Dfs69WGA.css} +11 -11
  254. package/dist/assets/{NcAppContent-BpjG38I8.css → NcAppContent-Ri_iNfn5.css} +4 -4
  255. package/dist/assets/{NcAppNavigationItem-UaB3qdsS.css → NcAppNavigationItem-DSL2nLRf.css} +36 -36
  256. package/dist/assets/{NcAppNavigationNewItem-Cjbn5XkO.css → NcAppNavigationNewItem-CYSjj3pD.css} +38 -38
  257. package/dist/assets/NcAppNavigationSettings-2Wh1E3Hq.css +53 -0
  258. package/dist/assets/{NcAppSettingsDialog-DH3DIIwL.css → NcAppSettingsDialog-TJ3aaiJI.css} +10 -10
  259. package/dist/assets/NcAppSettingsSection-Yg4NYCih.css +46 -0
  260. package/dist/assets/{NcAppSettingsSection-Dq0eTGEp.css → NcAppSettingsShortcutsSection-BuI-s4kd.css} +8 -11
  261. package/dist/assets/{NcChip-Cc17FJEC.css → NcChip-ByvuZS2-.css} +23 -11
  262. package/dist/assets/{NcDateTimePicker-C6sMtYzL.css → NcDateTimePicker-uS5WikmF.css} +22 -22
  263. package/dist/assets/{NcEmptyContent-xdTcF0yQ.css → NcEmptyContent-CUFc_Dds.css} +9 -9
  264. package/dist/assets/NcFormBox-D-kcijXp.css +54 -0
  265. package/dist/assets/NcFormBoxButton-C6EvdLK4.css +32 -0
  266. package/dist/assets/NcFormBoxItem-j2nGdOvd.css +88 -0
  267. package/dist/assets/NcFormBoxSwitch-BmyNQCbA.css +37 -0
  268. package/dist/assets/NcFormGroup-BrD0Scm7.css +43 -0
  269. package/dist/assets/{NcHeaderButton-CeT-dsLr.css → NcHeaderButton-DI-1Gsph.css} +9 -9
  270. package/dist/assets/{NcHeaderMenu-BXb9npZp.css → NcHeaderMenu-BkpmEa3M.css} +13 -13
  271. package/dist/assets/NcHotkey-4yi1Hobg.css +45 -0
  272. package/dist/assets/NcHotkeyList-gAZN0WIu.css +8 -0
  273. package/dist/assets/{NcInputField-BI3vWgSo.css → NcInputField-CtUAgq1i.css} +42 -42
  274. package/dist/assets/{NcListItem-rxOwDYE-.css → NcListItem-Czbi1F0Q.css} +44 -44
  275. package/dist/assets/NcRadioGroup-1zpSX8V5.css +21 -0
  276. package/dist/assets/{NcRadioGroupButton-6mf16D0h.css → NcRadioGroupButton-DRZ1_-yY.css} +11 -19
  277. package/dist/assets/{NcRichContenteditable-Ds_cptgr.css → NcRichContenteditable-BjQ4qHUO.css} +12 -12
  278. package/dist/assets/{NcRichText-CVy4zTPr.css → NcRichText-Cr-HXxVi.css} +93 -88
  279. package/dist/chunks/{NcActionButton-lJ0IA3IS.cjs → NcActionButton-BWM7FD0z.cjs} +7 -7
  280. package/dist/chunks/{NcActionButton-lJ0IA3IS.cjs.map → NcActionButton-BWM7FD0z.cjs.map} +1 -1
  281. package/dist/chunks/{NcActionButton-CZsSFAT4.mjs → NcActionButton-DykQxmXJ.mjs} +7 -7
  282. package/dist/chunks/{NcActionButton-CZsSFAT4.mjs.map → NcActionButton-DykQxmXJ.mjs.map} +1 -1
  283. package/dist/chunks/{NcActionButtonGroup-CQZL14Nz.cjs → NcActionButtonGroup-Bqp4vRGy.cjs} +3 -3
  284. package/dist/chunks/{NcActionButtonGroup-CQZL14Nz.cjs.map → NcActionButtonGroup-Bqp4vRGy.cjs.map} +1 -1
  285. package/dist/chunks/{NcActionButtonGroup-CIvAeDpU.mjs → NcActionButtonGroup-Uol_nwut.mjs} +3 -3
  286. package/dist/chunks/{NcActionButtonGroup-CIvAeDpU.mjs.map → NcActionButtonGroup-Uol_nwut.mjs.map} +1 -1
  287. package/dist/chunks/{NcActionCheckbox-BAuN4ZMC.mjs → NcActionCheckbox-D9aQuEYw.mjs} +4 -4
  288. package/dist/chunks/{NcActionCheckbox-BAuN4ZMC.mjs.map → NcActionCheckbox-D9aQuEYw.mjs.map} +1 -1
  289. package/dist/chunks/{NcActionCheckbox-BvMmq0jL.cjs → NcActionCheckbox-ixZtnZR4.cjs} +4 -4
  290. package/dist/chunks/{NcActionCheckbox-BvMmq0jL.cjs.map → NcActionCheckbox-ixZtnZR4.cjs.map} +1 -1
  291. package/dist/chunks/{NcActionInput-DfjLV0Gg.cjs → NcActionInput-BZGP5m4T.cjs} +10 -10
  292. package/dist/chunks/{NcActionInput-DfjLV0Gg.cjs.map → NcActionInput-BZGP5m4T.cjs.map} +1 -1
  293. package/dist/chunks/{NcActionInput-CfznemNH.mjs → NcActionInput-pjhToEAw.mjs} +10 -10
  294. package/dist/chunks/{NcActionInput-CfznemNH.mjs.map → NcActionInput-pjhToEAw.mjs.map} +1 -1
  295. package/dist/chunks/{NcActionRadio-Bg5VuF7I.mjs → NcActionRadio-BmVR-lhZ.mjs} +4 -4
  296. package/dist/chunks/{NcActionRadio-CBh6AlC4.cjs.map → NcActionRadio-BmVR-lhZ.mjs.map} +1 -1
  297. package/dist/chunks/{NcActionRadio-CBh6AlC4.cjs → NcActionRadio-DPF0_wH9.cjs} +4 -4
  298. package/dist/chunks/{NcActionRadio-Bg5VuF7I.mjs.map → NcActionRadio-DPF0_wH9.cjs.map} +1 -1
  299. package/dist/chunks/{NcActionTextEditable-CSP4OjpU.mjs → NcActionTextEditable-Bnt0-S7Y.mjs} +8 -8
  300. package/dist/chunks/{NcActionTextEditable-CSP4OjpU.mjs.map → NcActionTextEditable-Bnt0-S7Y.mjs.map} +1 -1
  301. package/dist/chunks/{NcActionTextEditable-BhucWrOO.cjs → NcActionTextEditable-JAg35gIb.cjs} +8 -8
  302. package/dist/chunks/NcActionTextEditable-JAg35gIb.cjs.map +1 -0
  303. package/dist/chunks/{NcActions-A918mfXE.mjs → NcActions-CpdT2y6O.mjs} +91 -111
  304. package/dist/chunks/NcActions-CpdT2y6O.mjs.map +1 -0
  305. package/dist/chunks/{NcActions-D3N_As6c.cjs → NcActions-ykoV9rRj.cjs} +90 -110
  306. package/dist/chunks/NcActions-ykoV9rRj.cjs.map +1 -0
  307. package/dist/chunks/{NcAppContent-DFlcxER-.mjs → NcAppContent-CABHzKrx.mjs} +24 -25
  308. package/dist/chunks/NcAppContent-CABHzKrx.mjs.map +1 -0
  309. package/dist/chunks/{NcAppContent-CCyPMvUa.cjs → NcAppContent-D2h4xrfv.cjs} +24 -25
  310. package/dist/chunks/NcAppContent-D2h4xrfv.cjs.map +1 -0
  311. package/dist/chunks/{NcAppNavigation-CLF6-i2t.mjs → NcAppNavigation-BKgpMjQN.mjs} +4 -5
  312. package/dist/chunks/{NcAppNavigation-CLF6-i2t.mjs.map → NcAppNavigation-BKgpMjQN.mjs.map} +1 -1
  313. package/dist/chunks/{NcAppNavigation-CCHYn0D6.cjs → NcAppNavigation-D_pDitZ1.cjs} +4 -5
  314. package/dist/chunks/{NcAppNavigation-CCHYn0D6.cjs.map → NcAppNavigation-D_pDitZ1.cjs.map} +1 -1
  315. package/dist/chunks/{NcAppNavigationCaption-DhW300oH.cjs → NcAppNavigationCaption-CO99po3G.cjs} +3 -3
  316. package/dist/chunks/{NcAppNavigationCaption-DhW300oH.cjs.map → NcAppNavigationCaption-CO99po3G.cjs.map} +1 -1
  317. package/dist/chunks/{NcAppNavigationCaption-CsG8P-1P.mjs → NcAppNavigationCaption-CcWZR8rN.mjs} +3 -3
  318. package/dist/chunks/{NcAppNavigationCaption-CsG8P-1P.mjs.map → NcAppNavigationCaption-CcWZR8rN.mjs.map} +1 -1
  319. package/dist/chunks/{NcAppNavigationItem-CwuKVEUN.mjs → NcAppNavigationItem-BYWvtSRw.mjs} +10 -10
  320. package/dist/chunks/{NcAppNavigationItem-HZVy5JEa.cjs.map → NcAppNavigationItem-BYWvtSRw.mjs.map} +1 -1
  321. package/dist/chunks/{NcAppNavigationItem-HZVy5JEa.cjs → NcAppNavigationItem-Ca9CAehR.cjs} +10 -10
  322. package/dist/chunks/{NcAppNavigationItem-CwuKVEUN.mjs.map → NcAppNavigationItem-Ca9CAehR.cjs.map} +1 -1
  323. package/dist/chunks/{NcAppNavigationNew-DbqusDUV.mjs → NcAppNavigationNew-BHzvRlVc.mjs} +2 -2
  324. package/dist/chunks/{NcAppNavigationNew-DbqusDUV.mjs.map → NcAppNavigationNew-BHzvRlVc.mjs.map} +1 -1
  325. package/dist/chunks/{NcAppNavigationNew-T56pahiu.cjs → NcAppNavigationNew-BYvFykgl.cjs} +2 -2
  326. package/dist/chunks/{NcAppNavigationNew-T56pahiu.cjs.map → NcAppNavigationNew-BYvFykgl.cjs.map} +1 -1
  327. package/dist/chunks/{NcAppNavigationNewItem-DMRZwa_y.cjs → NcAppNavigationNewItem-CwhxGiXO.cjs} +4 -4
  328. package/dist/chunks/{NcAppNavigationNewItem-DMRZwa_y.cjs.map → NcAppNavigationNewItem-CwhxGiXO.cjs.map} +1 -1
  329. package/dist/chunks/{NcAppNavigationNewItem-BsnZWCLW.mjs → NcAppNavigationNewItem-DUNLtTs8.mjs} +4 -4
  330. package/dist/chunks/{NcAppNavigationNewItem-BsnZWCLW.mjs.map → NcAppNavigationNewItem-DUNLtTs8.mjs.map} +1 -1
  331. package/dist/chunks/{NcAppNavigationSearch-BlG1xMok.cjs → NcAppNavigationSearch-BC3LfUdL.cjs} +6 -10
  332. package/dist/chunks/{NcAppNavigationSearch-BlG1xMok.cjs.map → NcAppNavigationSearch-BC3LfUdL.cjs.map} +1 -1
  333. package/dist/chunks/{NcAppNavigationSearch-DCMN2cWp.mjs → NcAppNavigationSearch-Ci8jz_C2.mjs} +6 -10
  334. package/dist/chunks/{NcAppNavigationSearch-DCMN2cWp.mjs.map → NcAppNavigationSearch-Ci8jz_C2.mjs.map} +1 -1
  335. package/dist/chunks/{NcAppNavigationSettings-n8OaxTbE.mjs → NcAppNavigationSettings-B29zrNPr.mjs} +18 -12
  336. package/dist/chunks/NcAppNavigationSettings-B29zrNPr.mjs.map +1 -0
  337. package/dist/chunks/{NcAppNavigationSettings-DlIDzhxh.cjs → NcAppNavigationSettings-Dt15jIbU.cjs} +18 -12
  338. package/dist/chunks/NcAppNavigationSettings-Dt15jIbU.cjs.map +1 -0
  339. package/dist/chunks/{NcAppNavigationToggle-Cn1UvxNP.cjs → NcAppNavigationToggle-Bk99wJ65.cjs} +13 -14
  340. package/dist/chunks/{NcAppNavigationToggle-Cn1UvxNP.cjs.map → NcAppNavigationToggle-Bk99wJ65.cjs.map} +1 -1
  341. package/dist/chunks/{NcAppNavigationToggle-ClYKr8Zn.mjs → NcAppNavigationToggle-DtNWDe9v.mjs} +13 -14
  342. package/dist/chunks/{NcAppNavigationToggle-ClYKr8Zn.mjs.map → NcAppNavigationToggle-DtNWDe9v.mjs.map} +1 -1
  343. package/dist/chunks/{NcAppSettingsDialog-R6Y-tl6d.cjs → NcAppSettingsDialog-C1mtjsnj.cjs} +30 -30
  344. package/dist/chunks/NcAppSettingsDialog-C1mtjsnj.cjs.map +1 -0
  345. package/dist/chunks/{NcAppSettingsDialog-Cpjr8Tca.mjs → NcAppSettingsDialog-CF-oMoP_.mjs} +32 -32
  346. package/dist/chunks/NcAppSettingsDialog-CF-oMoP_.mjs.map +1 -0
  347. package/dist/chunks/NcAppSettingsSection-Cq1VIzMR.mjs +55 -0
  348. package/dist/chunks/NcAppSettingsSection-Cq1VIzMR.mjs.map +1 -0
  349. package/dist/chunks/NcAppSettingsSection-Q5PB51ht.cjs +54 -0
  350. package/dist/chunks/NcAppSettingsSection-Q5PB51ht.cjs.map +1 -0
  351. package/dist/chunks/NcAppSettingsShortcutsSection-C089rPL6.mjs +43 -0
  352. package/dist/chunks/NcAppSettingsShortcutsSection-C089rPL6.mjs.map +1 -0
  353. package/dist/chunks/NcAppSettingsShortcutsSection-DG3FQlb5.cjs +42 -0
  354. package/dist/chunks/NcAppSettingsShortcutsSection-DG3FQlb5.cjs.map +1 -0
  355. package/dist/chunks/{NcAppSidebar-CVcOP4bk.mjs → NcAppSidebar-D5IUeKjd.mjs} +15 -18
  356. package/dist/chunks/{NcAppSidebar-CVcOP4bk.mjs.map → NcAppSidebar-D5IUeKjd.mjs.map} +1 -1
  357. package/dist/chunks/{NcAppSidebar-Ddt82bsA.cjs → NcAppSidebar-DwLrcwGi.cjs} +15 -18
  358. package/dist/chunks/{NcAppSidebar-Ddt82bsA.cjs.map → NcAppSidebar-DwLrcwGi.cjs.map} +1 -1
  359. package/dist/chunks/{NcAssistantButton-WQvWhoAr.cjs → NcAssistantButton-DrYpawyR.cjs} +5 -5
  360. package/dist/chunks/{NcAssistantButton-WQvWhoAr.cjs.map → NcAssistantButton-DrYpawyR.cjs.map} +1 -1
  361. package/dist/chunks/{NcAssistantButton-lDdWOemf.mjs → NcAssistantButton-lRXTGAwe.mjs} +5 -5
  362. package/dist/chunks/{NcAssistantButton-lDdWOemf.mjs.map → NcAssistantButton-lRXTGAwe.mjs.map} +1 -1
  363. package/dist/chunks/{NcAssistantIcon-BTjYuSQ9.mjs → NcAssistantIcon-B9L1Ih5x.mjs} +5 -5
  364. package/dist/chunks/{NcAssistantIcon-BTjYuSQ9.mjs.map → NcAssistantIcon-B9L1Ih5x.mjs.map} +1 -1
  365. package/dist/chunks/{NcAssistantIcon-RDQ8YhZE.cjs → NcAssistantIcon-jHDGZ_Bd.cjs} +5 -5
  366. package/dist/chunks/{NcAssistantIcon-RDQ8YhZE.cjs.map → NcAssistantIcon-jHDGZ_Bd.cjs.map} +1 -1
  367. package/dist/chunks/{NcAvatar-D_0Aw88L.cjs → NcAvatar-BXRgjNXy.cjs} +23 -25
  368. package/dist/chunks/{NcAvatar-D_0Aw88L.cjs.map → NcAvatar-BXRgjNXy.cjs.map} +1 -1
  369. package/dist/chunks/{NcAvatar-Cupl4prm.mjs → NcAvatar-D5nljVEA.mjs} +23 -25
  370. package/dist/chunks/{NcAvatar-Cupl4prm.mjs.map → NcAvatar-D5nljVEA.mjs.map} +1 -1
  371. package/dist/chunks/{NcBreadcrumb-VJGW992x.mjs → NcBreadcrumb-BC6tmZfd.mjs} +6 -22
  372. package/dist/chunks/{NcBreadcrumb-VJGW992x.mjs.map → NcBreadcrumb-BC6tmZfd.mjs.map} +1 -1
  373. package/dist/chunks/{NcBreadcrumb-FbePEaGS.cjs → NcBreadcrumb-DCq7akG2.cjs} +6 -22
  374. package/dist/chunks/{NcBreadcrumb-FbePEaGS.cjs.map → NcBreadcrumb-DCq7akG2.cjs.map} +1 -1
  375. package/dist/chunks/{NcBreadcrumbs-CrNBCyUa.cjs → NcBreadcrumbs-7dWiGWqj.cjs} +29 -47
  376. package/dist/chunks/{NcBreadcrumbs-DJSAcn8x.mjs.map → NcBreadcrumbs-7dWiGWqj.cjs.map} +1 -1
  377. package/dist/chunks/{NcBreadcrumbs-DJSAcn8x.mjs → NcBreadcrumbs-BPfsSByZ.mjs} +29 -47
  378. package/dist/chunks/{NcBreadcrumbs-CrNBCyUa.cjs.map → NcBreadcrumbs-BPfsSByZ.mjs.map} +1 -1
  379. package/dist/chunks/{NcButton-DK7bNZIL.cjs → NcButton-CJBZrdiL.cjs} +18 -33
  380. package/dist/chunks/{NcButton-D3CaJu1f.mjs.map → NcButton-CJBZrdiL.cjs.map} +1 -1
  381. package/dist/chunks/{NcButton-D3CaJu1f.mjs → NcButton-DUZTtFhr.mjs} +18 -33
  382. package/dist/chunks/{NcButton-DK7bNZIL.cjs.map → NcButton-DUZTtFhr.mjs.map} +1 -1
  383. package/dist/chunks/{NcCheckboxRadioSwitch-CDFUoj2J.cjs → NcCheckboxRadioSwitch-CC2UI0kG.cjs} +8 -8
  384. package/dist/chunks/{NcCheckboxRadioSwitch-CDFUoj2J.cjs.map → NcCheckboxRadioSwitch-CC2UI0kG.cjs.map} +1 -1
  385. package/dist/chunks/{NcCheckboxRadioSwitch-ezquUuPz.mjs → NcCheckboxRadioSwitch-DAPHFb0L.mjs} +8 -8
  386. package/dist/chunks/{NcCheckboxRadioSwitch-ezquUuPz.mjs.map → NcCheckboxRadioSwitch-DAPHFb0L.mjs.map} +1 -1
  387. package/dist/chunks/{NcCollectionList-w-7M5HGN.mjs → NcCollectionList-B9weMM0Q.mjs} +8 -9
  388. package/dist/chunks/{NcCollectionList-w-7M5HGN.mjs.map → NcCollectionList-B9weMM0Q.mjs.map} +1 -1
  389. package/dist/chunks/{NcCollectionList-zAI6Ysc0.cjs → NcCollectionList-DSugNziH.cjs} +8 -9
  390. package/dist/chunks/{NcCollectionList-zAI6Ysc0.cjs.map → NcCollectionList-DSugNziH.cjs.map} +1 -1
  391. package/dist/chunks/{NcColorPicker-F-UP8OaJ.cjs → NcColorPicker-Chrtrp3i.cjs} +16 -36
  392. package/dist/chunks/{NcColorPicker-F-UP8OaJ.cjs.map → NcColorPicker-Chrtrp3i.cjs.map} +1 -1
  393. package/dist/chunks/{NcColorPicker-DpLU-oKM.mjs → NcColorPicker-DVkGUHxL.mjs} +16 -36
  394. package/dist/chunks/{NcColorPicker-DpLU-oKM.mjs.map → NcColorPicker-DVkGUHxL.mjs.map} +1 -1
  395. package/dist/chunks/{NcContent-C0_AA_wt.mjs → NcContent-BPmE93Mq.mjs} +6 -6
  396. package/dist/chunks/{NcContent-C0_AA_wt.mjs.map → NcContent-BPmE93Mq.mjs.map} +1 -1
  397. package/dist/chunks/{NcContent-DITvuNbF.cjs → NcContent-UoMpCfT3.cjs} +6 -6
  398. package/dist/chunks/{NcContent-DITvuNbF.cjs.map → NcContent-UoMpCfT3.cjs.map} +1 -1
  399. package/dist/chunks/{NcCounterBubble-B_H3NCef.cjs → NcCounterBubble-hyvazclA.cjs} +4 -6
  400. package/dist/chunks/{NcCounterBubble-B_H3NCef.cjs.map → NcCounterBubble-hyvazclA.cjs.map} +1 -1
  401. package/dist/chunks/{NcCounterBubble-BKPpoBiy.mjs → NcCounterBubble-oxV8oMlX.mjs} +4 -6
  402. package/dist/chunks/{NcCounterBubble-BKPpoBiy.mjs.map → NcCounterBubble-oxV8oMlX.mjs.map} +1 -1
  403. package/dist/chunks/{NcDashboardWidget-CEL-DhKX.mjs → NcDashboardWidget-DpzjksBk.mjs} +5 -5
  404. package/dist/chunks/{NcDashboardWidget-CEL-DhKX.mjs.map → NcDashboardWidget-DpzjksBk.mjs.map} +1 -1
  405. package/dist/chunks/{NcDashboardWidget--n1nzfhg.cjs → NcDashboardWidget-k5_NmYYZ.cjs} +5 -5
  406. package/dist/chunks/{NcDashboardWidget--n1nzfhg.cjs.map → NcDashboardWidget-k5_NmYYZ.cjs.map} +1 -1
  407. package/dist/chunks/{NcDashboardWidgetItem-loanO02A.cjs → NcDashboardWidgetItem-CeA1eF60.cjs} +4 -4
  408. package/dist/chunks/{NcDashboardWidgetItem-loanO02A.cjs.map → NcDashboardWidgetItem-CeA1eF60.cjs.map} +1 -1
  409. package/dist/chunks/{NcDashboardWidgetItem-DeQtScn8.mjs → NcDashboardWidgetItem-DZ13sBtT.mjs} +4 -4
  410. package/dist/chunks/{NcDashboardWidgetItem-DeQtScn8.mjs.map → NcDashboardWidgetItem-DZ13sBtT.mjs.map} +1 -1
  411. package/dist/chunks/{NcDialog-BM_wTqUn.mjs → NcDialog-DDuqQeT-.mjs} +3 -3
  412. package/dist/chunks/{NcDialog-BM_wTqUn.mjs.map → NcDialog-DDuqQeT-.mjs.map} +1 -1
  413. package/dist/chunks/{NcDialog-CG2sufkb.cjs → NcDialog-DUTlKw4_.cjs} +3 -3
  414. package/dist/chunks/{NcDialog-CG2sufkb.cjs.map → NcDialog-DUTlKw4_.cjs.map} +1 -1
  415. package/dist/chunks/{NcDialogButton-DkfxsIhv.cjs → NcDialogButton-DyWjiA1e.cjs} +6 -7
  416. package/dist/chunks/{NcDialogButton-DkfxsIhv.cjs.map → NcDialogButton-DyWjiA1e.cjs.map} +1 -1
  417. package/dist/chunks/{NcDialogButton-Cr0wVMne.mjs → NcDialogButton-P7Ryycqk.mjs} +6 -7
  418. package/dist/chunks/{NcDialogButton-Cr0wVMne.mjs.map → NcDialogButton-P7Ryycqk.mjs.map} +1 -1
  419. package/dist/chunks/{NcEmojiPicker-BV_iVlIv.mjs → NcEmojiPicker-CpU37Ozq.mjs} +12 -13
  420. package/dist/chunks/{NcEmojiPicker-BV_iVlIv.mjs.map → NcEmojiPicker-CpU37Ozq.mjs.map} +1 -1
  421. package/dist/chunks/{NcEmojiPicker-fgsuVz7X.cjs → NcEmojiPicker-D8d4iUUn.cjs} +12 -13
  422. package/dist/chunks/{NcEmojiPicker-fgsuVz7X.cjs.map → NcEmojiPicker-D8d4iUUn.cjs.map} +1 -1
  423. package/dist/chunks/NcFormBox-DL435pbV.mjs +56 -0
  424. package/dist/chunks/NcFormBox-DL435pbV.mjs.map +1 -0
  425. package/dist/chunks/NcFormBox-_JqkU_xn.cjs +55 -0
  426. package/dist/chunks/NcFormBox-_JqkU_xn.cjs.map +1 -0
  427. package/dist/chunks/NcFormBoxButton-D-s5mL0c.cjs +137 -0
  428. package/dist/chunks/NcFormBoxButton-D-s5mL0c.cjs.map +1 -0
  429. package/dist/chunks/NcFormBoxButton-DN0-J4yN.mjs +138 -0
  430. package/dist/chunks/NcFormBoxButton-DN0-J4yN.mjs.map +1 -0
  431. package/dist/chunks/NcFormBoxCopyButton-CTHelPkb.cjs +76 -0
  432. package/dist/chunks/NcFormBoxCopyButton-CTHelPkb.cjs.map +1 -0
  433. package/dist/chunks/NcFormBoxCopyButton-Dwrfiovz.mjs +77 -0
  434. package/dist/chunks/NcFormBoxCopyButton-Dwrfiovz.mjs.map +1 -0
  435. package/dist/chunks/NcFormBoxItem-CtrbGjnv.cjs +86 -0
  436. package/dist/chunks/NcFormBoxItem-CtrbGjnv.cjs.map +1 -0
  437. package/dist/chunks/NcFormBoxItem-DPBm3ZbJ.mjs +87 -0
  438. package/dist/chunks/NcFormBoxItem-DPBm3ZbJ.mjs.map +1 -0
  439. package/dist/chunks/NcFormBoxSwitch-CM3WaFkA.cjs +96 -0
  440. package/dist/chunks/NcFormBoxSwitch-CM3WaFkA.cjs.map +1 -0
  441. package/dist/chunks/NcFormBoxSwitch-aOCNeI-K.mjs +97 -0
  442. package/dist/chunks/NcFormBoxSwitch-aOCNeI-K.mjs.map +1 -0
  443. package/dist/chunks/NcFormGroup-BfsPo9aC.mjs +69 -0
  444. package/dist/chunks/NcFormGroup-BfsPo9aC.mjs.map +1 -0
  445. package/dist/chunks/NcFormGroup-CBMl_9_J.cjs +68 -0
  446. package/dist/chunks/NcFormGroup-CBMl_9_J.cjs.map +1 -0
  447. package/dist/chunks/{NcHeaderButton-CNQVz4QP.cjs → NcHeaderButton-6kuTEKbj.cjs} +4 -4
  448. package/dist/chunks/{NcHeaderButton-CNQVz4QP.cjs.map → NcHeaderButton-6kuTEKbj.cjs.map} +1 -1
  449. package/dist/chunks/{NcHeaderButton-TJML067P.mjs → NcHeaderButton-TgPjfPtk.mjs} +4 -4
  450. package/dist/chunks/{NcHeaderButton-TJML067P.mjs.map → NcHeaderButton-TgPjfPtk.mjs.map} +1 -1
  451. package/dist/chunks/{NcHeaderMenu-BzyFhg55.cjs → NcHeaderMenu-CwjH_j0c.cjs} +10 -12
  452. package/dist/chunks/{NcHeaderMenu-D5ddiKnF.mjs.map → NcHeaderMenu-CwjH_j0c.cjs.map} +1 -1
  453. package/dist/chunks/{NcHeaderMenu-D5ddiKnF.mjs → NcHeaderMenu-Hk8OTuma.mjs} +10 -12
  454. package/dist/chunks/{NcHeaderMenu-BzyFhg55.cjs.map → NcHeaderMenu-Hk8OTuma.mjs.map} +1 -1
  455. package/dist/chunks/NcHotkey-BMemJWSu.cjs +59 -0
  456. package/dist/chunks/NcHotkey-BMemJWSu.cjs.map +1 -0
  457. package/dist/chunks/NcHotkey-CzuMmIU9.mjs +60 -0
  458. package/dist/chunks/NcHotkey-CzuMmIU9.mjs.map +1 -0
  459. package/dist/chunks/NcHotkeyList-Bm25Odp7.mjs +48 -0
  460. package/dist/chunks/NcHotkeyList-Bm25Odp7.mjs.map +1 -0
  461. package/dist/chunks/NcHotkeyList-DAJkKYNu.cjs +47 -0
  462. package/dist/chunks/NcHotkeyList-DAJkKYNu.cjs.map +1 -0
  463. package/dist/chunks/{NcIconSvgWrapper-BCVwmZN2.mjs → NcIconSvgWrapper-BreCg8pX.mjs} +2 -2
  464. package/dist/chunks/{NcIconSvgWrapper-BCVwmZN2.mjs.map → NcIconSvgWrapper-BreCg8pX.mjs.map} +1 -1
  465. package/dist/chunks/{NcIconSvgWrapper-DoVPfeNg.cjs → NcIconSvgWrapper-D-aKMbf3.cjs} +2 -2
  466. package/dist/chunks/{NcIconSvgWrapper-DoVPfeNg.cjs.map → NcIconSvgWrapper-D-aKMbf3.cjs.map} +1 -1
  467. package/dist/chunks/{NcInputConfirmCancel-C8WnMK2V.mjs → NcInputConfirmCancel-CtdWwDCo.mjs} +3 -3
  468. package/dist/chunks/{NcInputConfirmCancel-C8WnMK2V.mjs.map → NcInputConfirmCancel-CtdWwDCo.mjs.map} +1 -1
  469. package/dist/chunks/{NcInputConfirmCancel-DVVTaxWi.cjs → NcInputConfirmCancel-vqVq5qKL.cjs} +3 -3
  470. package/dist/chunks/{NcInputConfirmCancel-DVVTaxWi.cjs.map → NcInputConfirmCancel-vqVq5qKL.cjs.map} +1 -1
  471. package/dist/chunks/{NcInputField-LBv3nCrt.cjs → NcInputField-DAllLk3X.cjs} +12 -16
  472. package/dist/chunks/NcInputField-DAllLk3X.cjs.map +1 -0
  473. package/dist/chunks/{NcInputField-1ujONIvp.mjs → NcInputField-DUtDY_1I.mjs} +12 -16
  474. package/dist/chunks/NcInputField-DUtDY_1I.mjs.map +1 -0
  475. package/dist/chunks/NcKbd-CfVfr9CW.mjs +66 -0
  476. package/dist/chunks/NcKbd-CfVfr9CW.mjs.map +1 -0
  477. package/dist/chunks/NcKbd-ewuqi-PO.cjs +65 -0
  478. package/dist/chunks/NcKbd-ewuqi-PO.cjs.map +1 -0
  479. package/dist/chunks/{NcListItem-DNMfT12A.mjs → NcListItem-BommrKRB.mjs} +10 -12
  480. package/dist/chunks/{NcListItem-DNMfT12A.mjs.map → NcListItem-BommrKRB.mjs.map} +1 -1
  481. package/dist/chunks/{NcListItem-DFEvD1TA.cjs → NcListItem-DaRnEXN5.cjs} +10 -12
  482. package/dist/chunks/{NcListItem-DFEvD1TA.cjs.map → NcListItem-DaRnEXN5.cjs.map} +1 -1
  483. package/dist/chunks/{NcListItemIcon-OzD38-2R.cjs → NcListItemIcon-2L14AYM5.cjs} +5 -6
  484. package/dist/chunks/{NcListItemIcon-OzD38-2R.cjs.map → NcListItemIcon-2L14AYM5.cjs.map} +1 -1
  485. package/dist/chunks/{NcListItemIcon-PNp6Wael.mjs → NcListItemIcon-DT7XMp5c.mjs} +5 -6
  486. package/dist/chunks/{NcListItemIcon-PNp6Wael.mjs.map → NcListItemIcon-DT7XMp5c.mjs.map} +1 -1
  487. package/dist/chunks/{NcPasswordField-D2iDTTpp.mjs → NcPasswordField-B91RnUSh.mjs} +17 -30
  488. package/dist/chunks/{NcPasswordField-D2iDTTpp.mjs.map → NcPasswordField-B91RnUSh.mjs.map} +1 -1
  489. package/dist/chunks/{NcPasswordField-lqTDeja4.cjs → NcPasswordField-BO0hL-T4.cjs} +17 -30
  490. package/dist/chunks/{NcPasswordField-lqTDeja4.cjs.map → NcPasswordField-BO0hL-T4.cjs.map} +1 -1
  491. package/dist/chunks/{NcPopover-DrXnNOgM.cjs → NcPopover-BgUZkmjk.cjs} +8 -12
  492. package/dist/chunks/{NcPopover-nzbq2IjT.mjs.map → NcPopover-BgUZkmjk.cjs.map} +1 -1
  493. package/dist/chunks/{NcPopover-nzbq2IjT.mjs → NcPopover-gxcAqoEb.mjs} +8 -12
  494. package/dist/chunks/{NcPopover-DrXnNOgM.cjs.map → NcPopover-gxcAqoEb.mjs.map} +1 -1
  495. package/dist/chunks/{NcProgressBar-BwnuvxiZ.mjs → NcProgressBar-D7zYeXBH.mjs} +2 -2
  496. package/dist/chunks/{NcProgressBar-BwnuvxiZ.mjs.map → NcProgressBar-D7zYeXBH.mjs.map} +1 -1
  497. package/dist/chunks/{NcProgressBar-D10gQgAY.cjs → NcProgressBar-DvxA9bq5.cjs} +2 -2
  498. package/dist/chunks/{NcProgressBar-D10gQgAY.cjs.map → NcProgressBar-DvxA9bq5.cjs.map} +1 -1
  499. package/dist/chunks/NcRadioGroup-D0rC63G8.mjs +74 -0
  500. package/dist/chunks/NcRadioGroup-D0rC63G8.mjs.map +1 -0
  501. package/dist/chunks/NcRadioGroup-D59En1O3.cjs +75 -0
  502. package/dist/chunks/NcRadioGroup-D59En1O3.cjs.map +1 -0
  503. package/dist/chunks/NcRadioGroupButton-3Pu4Iqdf.mjs +65 -0
  504. package/dist/chunks/NcRadioGroupButton-3Pu4Iqdf.mjs.map +1 -0
  505. package/dist/chunks/{NcRadioGroupButton-CDf_01-t.cjs → NcRadioGroupButton-DoOf7cE1.cjs} +13 -11
  506. package/dist/chunks/NcRadioGroupButton-DoOf7cE1.cjs.map +1 -0
  507. package/dist/chunks/{NcRelatedResourcesPanel-bfv-6W_Z.cjs → NcRelatedResourcesPanel-CpXbcI3f.cjs} +35 -44
  508. package/dist/chunks/{NcRelatedResourcesPanel-bfv-6W_Z.cjs.map → NcRelatedResourcesPanel-CpXbcI3f.cjs.map} +1 -1
  509. package/dist/chunks/{NcRelatedResourcesPanel-Q6jZk-Pm.mjs → NcRelatedResourcesPanel-D9-wo_xr.mjs} +35 -44
  510. package/dist/chunks/{NcRelatedResourcesPanel-Q6jZk-Pm.mjs.map → NcRelatedResourcesPanel-D9-wo_xr.mjs.map} +1 -1
  511. package/dist/chunks/{NcRichContenteditable-8_poOeSx.mjs → NcRichContenteditable-BQNR-AeA.mjs} +35 -54
  512. package/dist/chunks/{NcRichContenteditable-CtLNSs0S.cjs.map → NcRichContenteditable-BQNR-AeA.mjs.map} +1 -1
  513. package/dist/chunks/{NcRichContenteditable-CtLNSs0S.cjs → NcRichContenteditable-DsWbC4ZK.cjs} +35 -54
  514. package/dist/chunks/{NcRichContenteditable-8_poOeSx.mjs.map → NcRichContenteditable-DsWbC4ZK.cjs.map} +1 -1
  515. package/dist/chunks/{NcRichText-Dnx5x9WS.mjs → NcRichText-BfK6Ybyf.mjs} +123 -113
  516. package/dist/chunks/{NcRichText-CEsiozf5.cjs.map → NcRichText-BfK6Ybyf.mjs.map} +1 -1
  517. package/dist/chunks/{NcRichText-CEsiozf5.cjs → NcRichText-CSFIswpI.cjs} +123 -111
  518. package/dist/chunks/{NcRichText-Dnx5x9WS.mjs.map → NcRichText-CSFIswpI.cjs.map} +1 -1
  519. package/dist/chunks/{NcSelect-bo6wla87.cjs → NcSelect-CgLK3i8n.cjs} +25 -42
  520. package/dist/chunks/{NcSelect-bo6wla87.cjs.map → NcSelect-CgLK3i8n.cjs.map} +1 -1
  521. package/dist/chunks/{NcSelect-TjZw7TJ_.mjs → NcSelect-DTniMiUS.mjs} +25 -42
  522. package/dist/chunks/{NcSelect-TjZw7TJ_.mjs.map → NcSelect-DTniMiUS.mjs.map} +1 -1
  523. package/dist/chunks/{NcSelectTags-CytnLDOw.mjs → NcSelectTags-CktuFsK3.mjs} +28 -49
  524. package/dist/chunks/{NcSelectTags-D2OSaAfO.cjs.map → NcSelectTags-CktuFsK3.mjs.map} +1 -1
  525. package/dist/chunks/{NcSelectTags-D2OSaAfO.cjs → NcSelectTags-DRotL4u-.cjs} +28 -49
  526. package/dist/chunks/{NcSelectTags-CytnLDOw.mjs.map → NcSelectTags-DRotL4u-.cjs.map} +1 -1
  527. package/dist/chunks/{NcSelectUsers-Bm0877Tm.mjs → NcSelectUsers-RyUVUaWQ.mjs} +7 -8
  528. package/dist/chunks/{NcSelectUsers-Bm0877Tm.mjs.map → NcSelectUsers-RyUVUaWQ.mjs.map} +1 -1
  529. package/dist/chunks/{NcSelectUsers-wcRyExkC.cjs → NcSelectUsers-Vy7qpE1b.cjs} +7 -8
  530. package/dist/chunks/{NcSelectUsers-wcRyExkC.cjs.map → NcSelectUsers-Vy7qpE1b.cjs.map} +1 -1
  531. package/dist/chunks/{NcSettingsInputText-DaFMiOS6.cjs → NcSettingsInputText-DJ1lsJ-4.cjs} +4 -4
  532. package/dist/chunks/{NcSettingsInputText-DaFMiOS6.cjs.map → NcSettingsInputText-DJ1lsJ-4.cjs.map} +1 -1
  533. package/dist/chunks/{NcSettingsInputText-DPAtsY2T.mjs → NcSettingsInputText-Dtr4Rn2b.mjs} +4 -4
  534. package/dist/chunks/{NcSettingsInputText-DPAtsY2T.mjs.map → NcSettingsInputText-Dtr4Rn2b.mjs.map} +1 -1
  535. package/dist/chunks/{NcSettingsSection-CX5q924g.mjs → NcSettingsSection-BniKad1K.mjs} +4 -5
  536. package/dist/chunks/{NcSettingsSection-CX5q924g.mjs.map → NcSettingsSection-BniKad1K.mjs.map} +1 -1
  537. package/dist/chunks/{NcSettingsSection-r4NOxKIz.cjs → NcSettingsSection-DGoocV82.cjs} +4 -5
  538. package/dist/chunks/{NcSettingsSection-r4NOxKIz.cjs.map → NcSettingsSection-DGoocV82.cjs.map} +1 -1
  539. package/dist/chunks/{NcSettingsSelectGroup-CR4XLrgs.mjs → NcSettingsSelectGroup-D4_09H0F.mjs} +10 -26
  540. package/dist/chunks/{NcSettingsSelectGroup-CR4XLrgs.mjs.map → NcSettingsSelectGroup-D4_09H0F.mjs.map} +1 -1
  541. package/dist/chunks/{NcSettingsSelectGroup-DYYAPkgp.cjs → NcSettingsSelectGroup-DRp_BpNb.cjs} +10 -26
  542. package/dist/chunks/{NcSettingsSelectGroup-DYYAPkgp.cjs.map → NcSettingsSelectGroup-DRp_BpNb.cjs.map} +1 -1
  543. package/dist/chunks/{NcTextArea-If_ygOSv.mjs → NcTextArea-DHmD6-6s.mjs} +5 -5
  544. package/dist/chunks/{NcTextArea-If_ygOSv.mjs.map → NcTextArea-DHmD6-6s.mjs.map} +1 -1
  545. package/dist/chunks/{NcTextArea-iDhGI-Ko.cjs → NcTextArea-DkVtHTpD.cjs} +5 -5
  546. package/dist/chunks/{NcTextArea-iDhGI-Ko.cjs.map → NcTextArea-DkVtHTpD.cjs.map} +1 -1
  547. package/dist/chunks/{NcTextField-BE9R1pLt.mjs → NcTextField-CfZknuqx.mjs} +18 -32
  548. package/dist/chunks/{NcTextField-BE9R1pLt.mjs.map → NcTextField-CfZknuqx.mjs.map} +1 -1
  549. package/dist/chunks/{NcTextField-OPiMgNR7.cjs → NcTextField-YOwuZ0wq.cjs} +18 -32
  550. package/dist/chunks/{NcTextField-OPiMgNR7.cjs.map → NcTextField-YOwuZ0wq.cjs.map} +1 -1
  551. package/dist/chunks/{NcThemeProvider-E_S5rhIQ.mjs → NcThemeProvider-25ResoIv.mjs} +2 -2
  552. package/dist/chunks/{NcThemeProvider-E_S5rhIQ.mjs.map → NcThemeProvider-25ResoIv.mjs.map} +1 -1
  553. package/dist/chunks/{NcThemeProvider-DbNRSwkX.cjs → NcThemeProvider-BqGPTeWg.cjs} +2 -2
  554. package/dist/chunks/{NcThemeProvider-DbNRSwkX.cjs.map → NcThemeProvider-BqGPTeWg.cjs.map} +1 -1
  555. package/dist/chunks/{NcTimezonePicker-DPpWz5fa.cjs → NcTimezonePicker-CuJzNsPZ.cjs} +7 -7
  556. package/dist/chunks/{NcTimezonePicker-DPpWz5fa.cjs.map → NcTimezonePicker-CuJzNsPZ.cjs.map} +1 -1
  557. package/dist/chunks/{NcTimezonePicker-D4y736xC.mjs → NcTimezonePicker-DgoDpdHS.mjs} +7 -7
  558. package/dist/chunks/{NcTimezonePicker-D4y736xC.mjs.map → NcTimezonePicker-DgoDpdHS.mjs.map} +1 -1
  559. package/dist/chunks/{NcUserBubble-Bb9WBP1S.cjs → NcUserBubble-DwJgtybL.cjs} +6 -7
  560. package/dist/chunks/{NcUserBubble-Bb9WBP1S.cjs.map → NcUserBubble-DwJgtybL.cjs.map} +1 -1
  561. package/dist/chunks/{NcUserBubble-8Mts76ii.mjs → NcUserBubble-VLY4hn5K.mjs} +6 -7
  562. package/dist/chunks/{NcUserBubble-8Mts76ii.mjs.map → NcUserBubble-VLY4hn5K.mjs.map} +1 -1
  563. package/dist/chunks/{NcUserStatusIcon-BWxo_etm.mjs → NcUserStatusIcon-D_kxQky5.mjs} +9 -12
  564. package/dist/chunks/{NcUserStatusIcon-BWxo_etm.mjs.map → NcUserStatusIcon-D_kxQky5.mjs.map} +1 -1
  565. package/dist/chunks/{NcUserStatusIcon-DV2H-KfR.cjs → NcUserStatusIcon-DaYZfl2J.cjs} +9 -12
  566. package/dist/chunks/{NcUserStatusIcon-DV2H-KfR.cjs.map → NcUserStatusIcon-DaYZfl2J.cjs.map} +1 -1
  567. package/dist/chunks/{ScopeComponent-DsONbC6w.mjs → ScopeComponent-B4ZR5mwH.mjs} +2 -2
  568. package/dist/chunks/{ScopeComponent-DsONbC6w.mjs.map → ScopeComponent-B4ZR5mwH.mjs.map} +1 -1
  569. package/dist/chunks/{ScopeComponent-CDX-s-IV.cjs → ScopeComponent-B59v3zbZ.cjs} +2 -2
  570. package/dist/chunks/{ScopeComponent-CDX-s-IV.cjs.map → ScopeComponent-B59v3zbZ.cjs.map} +1 -1
  571. package/dist/chunks/{_l10n-9b4TMo5Q.cjs → _l10n-B4clLGwo.cjs} +32 -32
  572. package/dist/chunks/{_l10n-9b4TMo5Q.cjs.map → _l10n-B4clLGwo.cjs.map} +1 -1
  573. package/dist/chunks/{_l10n-DSLCwJSN.mjs → _l10n-BmKQgz1z.mjs} +59 -59
  574. package/dist/chunks/_l10n-BmKQgz1z.mjs.map +1 -0
  575. package/dist/chunks/{actionText-ZM1k96ts.mjs → actionText-BMig9Egt.mjs} +2 -2
  576. package/dist/chunks/{actionText-ZM1k96ts.mjs.map → actionText-BMig9Egt.mjs.map} +1 -1
  577. package/dist/chunks/{actionText-D_3-6fCH.cjs → actionText-D2-z0ud3.cjs} +2 -2
  578. package/dist/chunks/{actionText-D_3-6fCH.cjs.map → actionText-D2-z0ud3.cjs.map} +1 -1
  579. package/dist/chunks/{colors-BMiIMYXK.mjs → colors-BwQwSDJi.mjs} +4 -4
  580. package/dist/chunks/{colors-BMiIMYXK.mjs.map → colors-BwQwSDJi.mjs.map} +1 -1
  581. package/dist/chunks/{colors-DcbJ13is.cjs → colors-FtmuYvMf.cjs} +4 -4
  582. package/dist/chunks/{colors-DcbJ13is.cjs.map → colors-FtmuYvMf.cjs.map} +1 -1
  583. package/dist/chunks/createElementId-DhjFt1I9.mjs +8 -0
  584. package/dist/chunks/{createElementId-5skgwxOP.mjs.map → createElementId-DhjFt1I9.mjs.map} +1 -1
  585. package/dist/chunks/createElementId-lalylSCf.cjs +7 -0
  586. package/dist/chunks/{createElementId-DaJhnLzq.cjs.map → createElementId-lalylSCf.cjs.map} +1 -1
  587. package/dist/chunks/{customPickerElements-BPROmh4T.mjs → customPickerElements-DLFtgReB.mjs} +21 -43
  588. package/dist/chunks/{customPickerElements-BPROmh4T.mjs.map → customPickerElements-DLFtgReB.mjs.map} +1 -1
  589. package/dist/chunks/{customPickerElements-DBEOrbce.cjs → customPickerElements-GyIIOHiQ.cjs} +21 -43
  590. package/dist/chunks/{customPickerElements-DBEOrbce.cjs.map → customPickerElements-GyIIOHiQ.cjs.map} +1 -1
  591. package/dist/chunks/{emoji-V6ytyzoR.mjs → emoji-BY_D0V5K.mjs} +3 -4
  592. package/dist/chunks/{emoji-V6ytyzoR.mjs.map → emoji-BY_D0V5K.mjs.map} +1 -1
  593. package/dist/chunks/{emoji-BCCCB3t3.cjs → emoji-VgSjNTd5.cjs} +3 -4
  594. package/dist/chunks/{emoji-BCCCB3t3.cjs.map → emoji-VgSjNTd5.cjs.map} +1 -1
  595. package/dist/chunks/{focusTrap-DhhUL4JZ.cjs → focusTrap-DUTqW_IG.cjs} +2 -3
  596. package/dist/chunks/{focusTrap-BibOtksr.mjs.map → focusTrap-DUTqW_IG.cjs.map} +1 -1
  597. package/dist/chunks/{focusTrap-BibOtksr.mjs → focusTrap-HJQ4pqHV.mjs} +2 -3
  598. package/dist/chunks/{focusTrap-DhhUL4JZ.cjs.map → focusTrap-HJQ4pqHV.mjs.map} +1 -1
  599. package/dist/chunks/getAvatarUrl-Du9Y3cPO.cjs +14 -0
  600. package/dist/chunks/{getAvatarUrl-DwWyuiUZ.cjs.map → getAvatarUrl-Du9Y3cPO.cjs.map} +1 -1
  601. package/dist/chunks/getAvatarUrl-IhLacDEr.mjs +15 -0
  602. package/dist/chunks/{getAvatarUrl-C8Q41hfR.mjs.map → getAvatarUrl-IhLacDEr.mjs.map} +1 -1
  603. package/dist/chunks/{index-D_jGr37E.cjs → index-CgkN1xho.cjs} +9 -9
  604. package/dist/chunks/{index-D_jGr37E.cjs.map → index-CgkN1xho.cjs.map} +1 -1
  605. package/dist/chunks/{index-JArK0Dbx.mjs → index-CxTT94_h.mjs} +4 -22
  606. package/dist/chunks/{index-JArK0Dbx.mjs.map → index-CxTT94_h.mjs.map} +1 -1
  607. package/dist/chunks/{index-CmwBGDjr.cjs → index-Dr9k4hIP.cjs} +4 -22
  608. package/dist/chunks/{index-CmwBGDjr.cjs.map → index-Dr9k4hIP.cjs.map} +1 -1
  609. package/dist/chunks/{index-BsEMR4S4.mjs → index-TmAR7I2T.mjs} +9 -9
  610. package/dist/chunks/{index-BsEMR4S4.mjs.map → index-TmAR7I2T.mjs.map} +1 -1
  611. package/dist/chunks/legacy-KBXhWdRy.cjs +5 -0
  612. package/dist/chunks/{legacy-NU_qxPFK.mjs.map → legacy-KBXhWdRy.cjs.map} +1 -1
  613. package/dist/chunks/legacy-MK4GvP26.mjs +6 -0
  614. package/dist/chunks/{legacy-DUgfmdiS.cjs.map → legacy-MK4GvP26.mjs.map} +1 -1
  615. package/dist/chunks/{mdi-Nhb6SBw8.cjs → mdi-CVXTs58m.cjs} +11 -1
  616. package/dist/chunks/{mdi-CKSXwCsV.mjs.map → mdi-CVXTs58m.cjs.map} +1 -1
  617. package/dist/chunks/{mdi-CKSXwCsV.mjs → mdi-C_j0YT8c.mjs} +18 -8
  618. package/dist/chunks/{mdi-Nhb6SBw8.cjs.map → mdi-C_j0YT8c.mjs.map} +1 -1
  619. package/dist/chunks/{referencePickerModal-DpJUQ5fq.mjs → referencePickerModal-CHpUHrDL.mjs} +36 -67
  620. package/dist/chunks/{referencePickerModal-DpJUQ5fq.mjs.map → referencePickerModal-CHpUHrDL.mjs.map} +1 -1
  621. package/dist/chunks/{referencePickerModal-CusxgEsK.cjs → referencePickerModal-CJNn-fvp.cjs} +36 -67
  622. package/dist/chunks/{referencePickerModal-CusxgEsK.cjs.map → referencePickerModal-CJNn-fvp.cjs.map} +1 -1
  623. package/dist/chunks/{useAppSettingsDialog-CPqmms-u.cjs → useAppSettingsDialog-BfnyikIV.cjs} +3 -1
  624. package/dist/chunks/useAppSettingsDialog-BfnyikIV.cjs.map +1 -0
  625. package/dist/chunks/{useAppSettingsDialog-Dn48dw1k.mjs → useAppSettingsDialog-DbtEkXa4.mjs} +4 -2
  626. package/dist/chunks/useAppSettingsDialog-DbtEkXa4.mjs.map +1 -0
  627. package/dist/chunks/{useModelMigration-HPf30klj.cjs → useModelMigration-D5zhrNXr.cjs} +2 -2
  628. package/dist/chunks/{useModelMigration-HPf30klj.cjs.map → useModelMigration-D5zhrNXr.cjs.map} +1 -1
  629. package/dist/chunks/{useModelMigration-DBUi8saj.mjs → useModelMigration-EhAWvqDD.mjs} +2 -2
  630. package/dist/chunks/{useModelMigration-DBUi8saj.mjs.map → useModelMigration-EhAWvqDD.mjs.map} +1 -1
  631. package/dist/chunks/useNcFormBox-DA9iwXWY.mjs +13 -0
  632. package/dist/chunks/useNcFormBox-DA9iwXWY.mjs.map +1 -0
  633. package/dist/chunks/useNcFormBox-DQeOEuQp.cjs +12 -0
  634. package/dist/chunks/useNcFormBox-DQeOEuQp.cjs.map +1 -0
  635. package/dist/chunks/{useTrapStackControl-2gEo3rvr.mjs → useTrapStackControl-BnLfCgGU.mjs} +2 -2
  636. package/dist/chunks/{useTrapStackControl-2gEo3rvr.mjs.map → useTrapStackControl-BnLfCgGU.mjs.map} +1 -1
  637. package/dist/chunks/{useTrapStackControl-dthvITlQ.cjs → useTrapStackControl-XYABY64G.cjs} +2 -2
  638. package/dist/chunks/{useTrapStackControl-dthvITlQ.cjs.map → useTrapStackControl-XYABY64G.cjs.map} +1 -1
  639. package/dist/components/NcAppSettingsDialog/useAppSettingsDialog.d.ts +5 -3
  640. package/dist/components/NcAppSettingsSection/index.d.ts +5 -0
  641. package/dist/components/NcAppSettingsSectionShortcuts/index.d.ts +8 -0
  642. package/dist/components/NcAppSettingsShortcutsSection/index.d.ts +5 -0
  643. package/dist/components/NcFormBox/index.d.ts +1 -0
  644. package/dist/components/NcFormBox/useNcFormBox.d.ts +19 -0
  645. package/dist/components/NcFormBoxButton/index.d.ts +5 -0
  646. package/dist/components/NcFormBoxCopyButton/index.d.ts +5 -0
  647. package/dist/components/NcFormBoxCopyButton/useCopy.d.ts +10 -0
  648. package/dist/components/NcFormBoxSwitch/index.d.ts +5 -0
  649. package/dist/components/NcFormGroup/index.d.ts +5 -0
  650. package/dist/components/NcHotkey/index.d.ts +1 -0
  651. package/dist/components/NcHotkeyList/index.d.ts +1 -0
  652. package/dist/composables/useButtonLink.d.ts +71 -0
  653. package/dist/index.cjs +91 -65
  654. package/dist/index.cjs.map +1 -1
  655. package/dist/index.mjs +93 -67
  656. package/dist/index.mjs.map +1 -1
  657. package/dist/utils/VueTypes.d.ts +7 -0
  658. package/package.json +18 -19
  659. package/dist/assets/NcAppNavigationSettings-1YRzh-xl.css +0 -74
  660. package/dist/assets/NcRadioGroup-CNgjqqiP.css +0 -49
  661. package/dist/chunks/NcActionTextEditable-BhucWrOO.cjs.map +0 -1
  662. package/dist/chunks/NcActions-A918mfXE.mjs.map +0 -1
  663. package/dist/chunks/NcActions-D3N_As6c.cjs.map +0 -1
  664. package/dist/chunks/NcAppContent-CCyPMvUa.cjs.map +0 -1
  665. package/dist/chunks/NcAppContent-DFlcxER-.mjs.map +0 -1
  666. package/dist/chunks/NcAppNavigationSettings-DlIDzhxh.cjs.map +0 -1
  667. package/dist/chunks/NcAppNavigationSettings-n8OaxTbE.mjs.map +0 -1
  668. package/dist/chunks/NcAppSettingsDialog-Cpjr8Tca.mjs.map +0 -1
  669. package/dist/chunks/NcAppSettingsDialog-R6Y-tl6d.cjs.map +0 -1
  670. package/dist/chunks/NcAppSettingsSection-BNVlt4g0.mjs +0 -88
  671. package/dist/chunks/NcAppSettingsSection-BNVlt4g0.mjs.map +0 -1
  672. package/dist/chunks/NcAppSettingsSection-CTqViPnP.cjs +0 -87
  673. package/dist/chunks/NcAppSettingsSection-CTqViPnP.cjs.map +0 -1
  674. package/dist/chunks/NcInputField-1ujONIvp.mjs.map +0 -1
  675. package/dist/chunks/NcInputField-LBv3nCrt.cjs.map +0 -1
  676. package/dist/chunks/NcRadioGroup-DsnIVQZJ.cjs +0 -102
  677. package/dist/chunks/NcRadioGroup-DsnIVQZJ.cjs.map +0 -1
  678. package/dist/chunks/NcRadioGroup-sZaH_3Y0.mjs +0 -101
  679. package/dist/chunks/NcRadioGroup-sZaH_3Y0.mjs.map +0 -1
  680. package/dist/chunks/NcRadioGroupButton-B6m10k9G.mjs +0 -63
  681. package/dist/chunks/NcRadioGroupButton-B6m10k9G.mjs.map +0 -1
  682. package/dist/chunks/NcRadioGroupButton-CDf_01-t.cjs.map +0 -1
  683. package/dist/chunks/_l10n-DSLCwJSN.mjs.map +0 -1
  684. package/dist/chunks/createElementId-5skgwxOP.mjs +0 -9
  685. package/dist/chunks/createElementId-DaJhnLzq.cjs +0 -8
  686. package/dist/chunks/getAvatarUrl-C8Q41hfR.mjs +0 -16
  687. package/dist/chunks/getAvatarUrl-DwWyuiUZ.cjs +0 -15
  688. package/dist/chunks/legacy-DUgfmdiS.cjs +0 -6
  689. package/dist/chunks/legacy-NU_qxPFK.mjs +0 -7
  690. package/dist/chunks/useAppSettingsDialog-CPqmms-u.cjs.map +0 -1
  691. package/dist/chunks/useAppSettingsDialog-Dn48dw1k.mjs.map +0 -1
@@ -1,32 +1,12 @@
1
- require('../assets/NcActions-B4-9qwLn.css');
1
+ require('../assets/NcActions-Dfs69WGA.css');
2
2
  "use strict";
3
- var __defProp = Object.defineProperty;
4
- var __defProps = Object.defineProperties;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
- var __spreadValues = (a, b) => {
11
- for (var prop in b || (b = {}))
12
- if (__hasOwnProp.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- if (__getOwnPropSymbols)
15
- for (var prop of __getOwnPropSymbols(b)) {
16
- if (__propIsEnum.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- }
19
- return a;
20
- };
21
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
- const core = require("@vueuse/core");
23
3
  const Vue = require("vue");
24
4
  const _pluginVue2_normalizer = require("./_plugin-vue2_normalizer-V0q-tHlQ.cjs");
25
- const useTrapStackControl = require("./useTrapStackControl-dthvITlQ.cjs");
26
- const _l10n = require("./_l10n-9b4TMo5Q.cjs");
5
+ const useTrapStackControl = require("./useTrapStackControl-XYABY64G.cjs");
6
+ const _l10n = require("./_l10n-B4clLGwo.cjs");
27
7
  const GenRandomId = require("./GenRandomId-D7iOvpZS.cjs");
28
- const NcButton = require("./NcButton-DK7bNZIL.cjs");
29
- const NcPopover = require("./NcPopover-DrXnNOgM.cjs");
8
+ const NcButton = require("./NcButton-CJBZrdiL.cjs");
9
+ const NcPopover = require("./NcPopover-BgUZkmjk.cjs");
30
10
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
31
11
  const Vue__default = /* @__PURE__ */ _interopDefault(Vue);
32
12
  const _sfc_main$1 = {
@@ -215,10 +195,7 @@ const _sfc_main = {
215
195
  */
216
196
  boundariesElement: {
217
197
  type: Element,
218
- default: () => {
219
- var _a;
220
- return (_a = document.querySelector("#content-vue")) != null ? _a : document.querySelector("body");
221
- }
198
+ default: () => document.querySelector("#content-vue") ?? document.querySelector("body")
222
199
  },
223
200
  /**
224
201
  * Selector for the actions' popover container
@@ -268,32 +245,10 @@ const _sfc_main = {
268
245
  "opened",
269
246
  "update:open"
270
247
  ],
271
- setup(props) {
272
- const randomId = "menu-".concat(GenRandomId.GenRandomId());
273
- const triggerRandomId = "trigger-".concat(randomId);
274
- const triggerButton = Vue.ref();
275
- const { top, bottom } = core.useElementBounding(triggerButton);
276
- const { top: boundaryTop, bottom: boundaryBottom } = core.useElementBounding(Vue.toRef(props, "boundariesElement"));
277
- const { height: windowHeight } = core.useWindowSize();
278
- const maxMenuHeight = Vue.computed(() => Math.max(
279
- // Either expand to the top
280
- Math.min(
281
- // max height is the top position of the trigger minus the header height minus the wedge and the padding
282
- top.value - 84,
283
- // and also limited to the space in the boundary
284
- top.value - boundaryTop.value
285
- ),
286
- // or expand to the bottom
287
- Math.min(
288
- // the max height is the window height minus current position of the trigger minus the wedge and padding
289
- windowHeight.value - bottom.value - 34,
290
- // and limit to the available space in the boundary
291
- boundaryBottom.value - bottom.value
292
- )
293
- ));
248
+ setup() {
249
+ const randomId = `menu-${GenRandomId.GenRandomId()}`;
250
+ const triggerRandomId = `trigger-${randomId}`;
294
251
  return {
295
- triggerButton,
296
- maxMenuHeight,
297
252
  randomId,
298
253
  triggerRandomId
299
254
  };
@@ -310,8 +265,7 @@ const _sfc_main = {
310
265
  },
311
266
  computed: {
312
267
  triggerButtonVariant() {
313
- var _a;
314
- return ((_a = this.type) != null ? _a : this.variant) || (this.primary ? "primary" : this.menuName ? "secondary" : "tertiary");
268
+ return (this.type ?? this.variant) || (this.primary ? "primary" : this.menuName ? "secondary" : "tertiary");
315
269
  },
316
270
  /**
317
271
  * A11y roles and keyboard navigation configuration depending on the semantic type
@@ -417,8 +371,7 @@ const _sfc_main = {
417
371
  * @return {string} the name of the action component
418
372
  */
419
373
  getActionName(action) {
420
- var _a, _b, _c, _d, _e;
421
- return (_e = (_c = (_b = (_a = action == null ? void 0 : action.componentOptions) == null ? void 0 : _a.Ctor) == null ? void 0 : _b.extendOptions) == null ? void 0 : _c.name) != null ? _e : (_d = action == null ? void 0 : action.componentOptions) == null ? void 0 : _d.tag;
374
+ return action?.componentOptions?.Ctor?.extendOptions?.name ?? action?.componentOptions?.tag;
422
375
  },
423
376
  /**
424
377
  * Do we have exactly one Action and
@@ -438,7 +391,7 @@ const _sfc_main = {
438
391
  isIconUrl(url) {
439
392
  try {
440
393
  return !!new URL(url, url.startsWith("/") ? window.location.origin : void 0);
441
- } catch (e) {
394
+ } catch {
442
395
  return false;
443
396
  }
444
397
  },
@@ -452,18 +405,17 @@ const _sfc_main = {
452
405
  this.$emit("open");
453
406
  },
454
407
  async closeMenu(returnFocus = true) {
455
- var _a, _b;
456
408
  if (!this.opened) {
457
409
  return;
458
410
  }
459
411
  await this.$nextTick();
460
412
  this.opened = false;
461
- (_a = this.$refs.popover) == null ? void 0 : _a.clearFocusTrap({ returnFocus });
413
+ this.$refs.popover?.clearFocusTrap({ returnFocus });
462
414
  this.$emit("update:open", false);
463
415
  this.$emit("close");
464
416
  this.focusIndex = 0;
465
417
  if (returnFocus) {
466
- (_b = this.$refs.triggerButton) == null ? void 0 : _b.$el.focus();
418
+ this.$refs.triggerButton?.$el.focus();
467
419
  }
468
420
  },
469
421
  onClosed() {
@@ -485,12 +437,13 @@ const _sfc_main = {
485
437
  resizePopover() {
486
438
  const inner = this.$refs.menu.closest(".v-popper__inner");
487
439
  const height = this.$refs.menu.clientHeight;
488
- if (height > this.maxMenuHeight) {
440
+ const maxMenuHeight = this.getMaxMenuHeight();
441
+ if (height > maxMenuHeight) {
489
442
  let currentHeight = 0;
490
443
  let actionHeight = 0;
491
444
  for (const action of this.$refs.menuList.children) {
492
- if (currentHeight + action.clientHeight / 2 > this.maxMenuHeight) {
493
- inner.style.height = "".concat(currentHeight - actionHeight / 2, "px");
445
+ if (currentHeight + action.clientHeight / 2 > maxMenuHeight) {
446
+ inner.style.height = `${currentHeight - actionHeight / 2}px`;
494
447
  break;
495
448
  }
496
449
  actionHeight = action.clientHeight;
@@ -500,6 +453,26 @@ const _sfc_main = {
500
453
  inner.style.height = "fit-content";
501
454
  }
502
455
  },
456
+ getMaxMenuHeight() {
457
+ const { top, bottom } = this.$refs.triggerButton?.$el.getBoundingClientRect() ?? { top: 0, bottom: 0 };
458
+ const { top: boundaryTop, bottom: boundaryBottom } = this.boundariesElement?.getBoundingClientRect() ?? { top: 0, bottom: window.innerHeight };
459
+ return Math.max(
460
+ // Either expand to the top
461
+ Math.min(
462
+ // max height is the top position of the trigger minus the header height minus the wedge and the padding
463
+ top - 84,
464
+ // and also limited to the space in the boundary
465
+ top - boundaryTop
466
+ ),
467
+ // or expand to the bottom
468
+ Math.min(
469
+ // the max height is the window height minus current position of the trigger minus the wedge and padding
470
+ window.innerHeight - bottom - 34,
471
+ // and limit to the available space in the boundary
472
+ boundaryBottom - bottom
473
+ )
474
+ );
475
+ },
503
476
  // MENU KEYS & FOCUS MANAGEMENT
504
477
  /**
505
478
  * @return {HTMLElement|null}
@@ -691,19 +664,18 @@ const _sfc_main = {
691
664
  }
692
665
  }
693
666
  const renderInlineAction = (action) => {
694
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E;
695
- const iconProp = (_b = (_a = action == null ? void 0 : action.componentOptions) == null ? void 0 : _a.propsData) == null ? void 0 : _b.icon;
696
- const icon = (_f = (_e = (_d = (_c = action == null ? void 0 : action.data) == null ? void 0 : _c.scopedSlots) == null ? void 0 : _d.icon()) == null ? void 0 : _e[0]) != null ? _f : this.isIconUrl(iconProp) ? h("img", { class: "action-item__menutoggle__icon", attrs: { src: iconProp, alt: "" } }) : h("span", { class: ["icon", iconProp] });
697
- const attrs = ((_g = action == null ? void 0 : action.data) == null ? void 0 : _g.attrs) || {};
698
- const clickListener = (_i = (_h = action == null ? void 0 : action.componentOptions) == null ? void 0 : _h.listeners) == null ? void 0 : _i.click;
699
- const text = (_n = (_m = (_l = (_k = (_j = action == null ? void 0 : action.componentOptions) == null ? void 0 : _j.children) == null ? void 0 : _k[0]) == null ? void 0 : _l.text) == null ? void 0 : _m.trim) == null ? void 0 : _n.call(_m);
700
- const ariaLabel = ((_p = (_o = action == null ? void 0 : action.componentOptions) == null ? void 0 : _o.propsData) == null ? void 0 : _p.ariaLabel) || text;
667
+ const iconProp = action?.componentOptions?.propsData?.icon;
668
+ const icon = action?.data?.scopedSlots?.icon()?.[0] ?? (this.isIconUrl(iconProp) ? h("img", { class: "action-item__menutoggle__icon", attrs: { src: iconProp, alt: "" } }) : h("span", { class: ["icon", iconProp] }));
669
+ const attrs = action?.data?.attrs || {};
670
+ const clickListener = action?.componentOptions?.listeners?.click;
671
+ const text = action?.componentOptions?.children?.[0]?.text?.trim?.();
672
+ const ariaLabel = action?.componentOptions?.propsData?.ariaLabel || text;
701
673
  const buttonText = this.forceName ? text : "";
702
- let title = (_r = (_q = action == null ? void 0 : action.componentOptions) == null ? void 0 : _q.propsData) == null ? void 0 : _r.title;
674
+ let title = action?.componentOptions?.propsData?.title;
703
675
  if (!(this.forceName || title)) {
704
676
  title = text;
705
677
  }
706
- const propsToForward = __spreadValues({}, (_t = (_s = action == null ? void 0 : action.componentOptions) == null ? void 0 : _s.propsData) != null ? _t : {});
678
+ const propsToForward = { ...action?.componentOptions?.propsData ?? {} };
707
679
  const nativeType = ["submit", "reset"].includes(propsToForward.type) ? propsToForward.modelValue : "button";
708
680
  delete propsToForward.modelValue;
709
681
  delete propsToForward.type;
@@ -712,34 +684,39 @@ const _sfc_main = {
712
684
  {
713
685
  class: [
714
686
  "action-item action-item--single",
715
- (_u = action == null ? void 0 : action.data) == null ? void 0 : _u.staticClass,
716
- (_v = action == null ? void 0 : action.data) == null ? void 0 : _v.class
687
+ action?.data?.staticClass,
688
+ action?.data?.class
717
689
  ],
718
- attrs: __spreadProps(__spreadValues({}, attrs), {
690
+ attrs: {
691
+ ...attrs,
719
692
  "aria-label": ariaLabel,
720
693
  title
721
- }),
722
- ref: (_w = action == null ? void 0 : action.data) == null ? void 0 : _w.ref,
723
- props: __spreadProps(__spreadValues({}, propsToForward), {
724
- disabled: this.disabled || ((_y = (_x = action == null ? void 0 : action.componentOptions) == null ? void 0 : _x.propsData) == null ? void 0 : _y.disabled),
725
- pressed: (_A = (_z = action == null ? void 0 : action.componentOptions) == null ? void 0 : _z.propsData) == null ? void 0 : _A.modelValue,
694
+ },
695
+ ref: action?.data?.ref,
696
+ props: {
697
+ ...propsToForward,
698
+ disabled: this.disabled || action?.componentOptions?.propsData?.disabled,
699
+ pressed: action?.componentOptions?.propsData?.modelValue,
726
700
  type: nativeType,
727
701
  // If it has a menuName, we use a secondary button
728
- variant: ((_B = this.type) != null ? _B : this.variant) || (buttonText ? "secondary" : "tertiary")
729
- }),
730
- on: __spreadValues({
702
+ variant: (this.type ?? this.variant) || (buttonText ? "secondary" : "tertiary")
703
+ },
704
+ on: {
731
705
  focus: this.onFocus,
732
706
  blur: this.onBlur,
733
707
  // forward any pressed state from NcButton just like NcActionButton does
734
- "update:pressed": (_E = (_D = (_C = action == null ? void 0 : action.componentOptions) == null ? void 0 : _C.listeners) == null ? void 0 : _D["update:modelValue"]) != null ? _E : () => {
735
- }
736
- }, !!clickListener && {
737
- click: (event) => {
738
- if (clickListener) {
739
- clickListener(event);
708
+ "update:pressed": action?.componentOptions?.listeners?.["update:modelValue"] ?? (() => {
709
+ }),
710
+ // If we have a click listener,
711
+ // we bind it to execute on click and forward the click event
712
+ ...!!clickListener && {
713
+ click: (event) => {
714
+ if (clickListener) {
715
+ clickListener(event);
716
+ }
740
717
  }
741
718
  }
742
- })
719
+ }
743
720
  },
744
721
  [
745
722
  h("template", { slot: "icon" }, [icon]),
@@ -748,8 +725,7 @@ const _sfc_main = {
748
725
  );
749
726
  };
750
727
  const renderActionsPopover = (actions2) => {
751
- var _a;
752
- const triggerIcon = ((_a = this.$slots.icon) == null ? void 0 : _a[0]) || (this.defaultIcon ? h("span", { class: ["icon", this.defaultIcon] }) : h(DotsHorizontalIcon, {
728
+ const triggerIcon = this.$slots.icon?.[0] || (this.defaultIcon ? h("span", { class: ["icon", this.defaultIcon] }) : h(DotsHorizontalIcon, {
753
729
  props: {
754
730
  size: 20
755
731
  }
@@ -773,14 +749,15 @@ const _sfc_main = {
773
749
  // For some reason the popover component
774
750
  // does not react to props given under the 'props' key,
775
751
  // so we use both 'attrs' and 'props'
776
- attrs: __spreadValues({
752
+ attrs: {
777
753
  delay: 0,
778
754
  handleResize: true,
779
755
  shown: this.opened,
780
756
  placement: this.placement,
781
757
  boundary: this.boundariesElement,
782
- container: this.container
783
- }, this.manualOpen && { triggers: [] }),
758
+ container: this.container,
759
+ ...this.manualOpen && { triggers: [] }
760
+ },
784
761
  on: {
785
762
  show: this.openMenu,
786
763
  "after-show": this.onOpened,
@@ -797,10 +774,11 @@ const _sfc_main = {
797
774
  },
798
775
  slot: "trigger",
799
776
  ref: "triggerButton",
800
- attrs: __spreadValues({
777
+ attrs: {
801
778
  id: this.triggerRandomId,
802
- "aria-label": this.menuName ? null : this.ariaLabel
803
- }, this.config.triggerA11yAttr),
779
+ "aria-label": this.menuName ? null : this.ariaLabel,
780
+ ...this.config.triggerA11yAttr
781
+ },
804
782
  on: {
805
783
  focus: this.onFocus,
806
784
  blur: this.onBlur,
@@ -815,18 +793,20 @@ const _sfc_main = {
815
793
  class: {
816
794
  open: this.opened
817
795
  },
818
- attrs: __spreadValues({
819
- tabindex: "-1"
820
- }, this.config.popoverContainerA11yAttrs),
796
+ attrs: {
797
+ tabindex: "-1",
798
+ ...this.config.popoverContainerA11yAttrs
799
+ },
821
800
  on: {
822
801
  keydown: this.onKeydown
823
802
  },
824
803
  ref: "menu"
825
804
  }, [
826
805
  h("ul", {
827
- attrs: __spreadValues({
828
- tabindex: "-1"
829
- }, this.config.popoverUlA11yAttrs),
806
+ attrs: {
807
+ tabindex: "-1",
808
+ ...this.config.popoverUlA11yAttrs
809
+ },
830
810
  ref: "menuList"
831
811
  }, [
832
812
  actions2
@@ -853,7 +833,7 @@ const _sfc_main = {
853
833
  {
854
834
  class: [
855
835
  "action-items",
856
- "action-item--".concat(this.triggerButtonVariant)
836
+ `action-item--${this.triggerButtonVariant}`
857
837
  ]
858
838
  },
859
839
  [
@@ -882,7 +862,7 @@ const _sfc_main = {
882
862
  {
883
863
  class: [
884
864
  "action-item action-item--default-popover",
885
- "action-item--".concat(this.triggerButtonVariant),
865
+ `action-item--${this.triggerButtonVariant}`,
886
866
  {
887
867
  "action-item--open": this.opened
888
868
  }
@@ -902,9 +882,9 @@ var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.normalizeComponent(
902
882
  _sfc_staticRenderFns,
903
883
  false,
904
884
  null,
905
- "ddba453b"
885
+ "c816308a"
906
886
  );
907
887
  const NcActions = __component__.exports;
908
888
  exports.DotsHorizontalIcon = DotsHorizontalIcon;
909
889
  exports.NcActions = NcActions;
910
- //# sourceMappingURL=NcActions-D3N_As6c.cjs.map
890
+ //# sourceMappingURL=NcActions-ykoV9rRj.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NcActions-ykoV9rRj.cjs","sources":["../../node_modules/vue-material-design-icons/DotsHorizontal.vue","../../src/components/NcActions/NcActions.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon dots-horizontal-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"DotsHorizontalIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","<!--\n - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n-->\n\n<!-- Accessibility guidelines:\nhttps://www.w3.org/TR/wai-aria-practices/examples/menu-button/menu-button-actions.html -->\n\n<docs>\n### Single action\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton @click=\"actionDelete\">\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t},\n\tmethods: {\n\t\tactionDelete() {\n\t\t\talert('Delete')\n\t\t},\n\t},\n}\n</script>\n```\n\n### Multiple actions\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton @click=\"showMessage('Edit')\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tEdit\n\t\t</NcActionButton>\n\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t\t<NcActionLink href=\"https://nextcloud.com\">\n\t\t\t<template #icon>\n\t\t\t\t<OpenInNew :size=\"20\" />\n\t\t\t</template>\n\t\t\tLink\n\t\t</NcActionLink>\n\t</NcActions>\n</template>\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport OpenInNew from 'vue-material-design-icons/OpenInNew.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tOpenInNew,\n\t\tPencil,\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n\n### Multiple actions with 2 items inline\n\n```vue\n<template>\n\t<NcActions :inline=\"2\">\n\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t<template #icon>\n\t\t\t\t<Plus :size=\"20\" />\n\t\t\t</template>\n\t\t\tAdd\n\t\t</NcActionButton>\n\t\t<NcActionButton @click=\"showMessage('Edit')\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tEdit\n\t\t</NcActionButton>\n\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t\t<NcActionLink href=\"https://nextcloud.com\">\n\t\t\t<template #icon>\n\t\t\t\t<OpenInNew :size=\"20\" />\n\t\t\t</template>\n\t\t\tLink\n\t\t</NcActionLink>\n\t</NcActions>\n</template>\n<script>\nimport Plus from 'vue-material-design-icons/Plus.vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport OpenInNew from 'vue-material-design-icons/OpenInNew.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tOpenInNew,\n\t\tPencil,\n\t\tPlus,\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n\n### Multiple actions with 2 items inline AND forced names\n\n```vue\n<template>\n\t<NcActions :force-name=\"true\" :inline=\"2\">\n\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t<template #icon>\n\t\t\t\t<Plus :size=\"20\" />\n\t\t\t</template>\n\t\t\tAdd\n\t\t</NcActionButton>\n\t\t<NcActionButton @click=\"showMessage('Edit')\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tEdit\n\t\t</NcActionButton>\n\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t\t<NcActionLink href=\"https://nextcloud.com\">\n\t\t\t<template #icon>\n\t\t\t\t<OpenInNew :size=\"20\" />\n\t\t\t</template>\n\t\t\tLink\n\t\t</NcActionLink>\n\t</NcActions>\n</template>\n<script>\nimport Plus from 'vue-material-design-icons/Plus.vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport OpenInNew from 'vue-material-design-icons/OpenInNew.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tOpenInNew,\n\t\tPencil,\n\t\tPlus,\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n\n### Multiple actions with custom icon\n\n```vue\n<template>\n\t<NcActions>\n\t\t<template #icon>\n\t\t\t<Pencil :size=\"20\" />\n\t\t</template>\n\t\t<NcActionButton @click=\"showMessage('Edit')\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tEdit\n\t\t</NcActionButton>\n\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t\t<NcActionLink href=\"https://nextcloud.com\">\n\t\t\t<template #icon>\n\t\t\t\t<OpenInNew :size=\"20\" />\n\t\t\t</template>\n\t\t\tLink\n\t\t</NcActionLink>\n\t</NcActions>\n</template>\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport OpenInNew from 'vue-material-design-icons/OpenInNew.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tOpenInNew,\n\t\tPencil,\n\t},\n\tmethods: {\n\t\tshowMessage(msg) {\n\t\t\talert(msg)\n\t\t},\n\t},\n}\n</script>\n```\n\n### With menu name\n\n```vue\n<template>\n\t<NcActions menu-name=\"Object management\">\n\t\t<template #icon>\n\t\t\t<Pencil :size=\"20\" />\n\t\t</template>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tRename\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tValidate\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Download :size=\"20\" />\n\t\t\t</template>\n\t\t\tDownload\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Download from 'vue-material-design-icons/Download.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nexport default {\n\tcomponents: {\n\t\tArrowRight,\n\t\tDelete,\n\t\tDownload,\n\t\tPencil,\n\t},\n}\n</script>\n```\n\n### Various icons styles\n```vue\n<template>\n\t<NcActions :primary=\"true\">\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tEdit\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tPencil,\n\t},\n}\n</script>\n```\n\n```vue\n<template>\n\t<NcActions :primary=\"true\" menu-name=\"Object management\">\n\t\t<template #icon>\n\t\t\t<Plus :size=\"20\" />\n\t\t</template>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t\tRename\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tValidate\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Download :size=\"20\" />\n\t\t\t</template>\n\t\t\tDownload\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Download from 'vue-material-design-icons/Download.vue'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\nimport Plus from 'vue-material-design-icons/Plus.vue'\n\nexport default {\n\tcomponents: {\n\t\tArrowRight,\n\t\tDelete,\n\t\tDownload,\n\t\tPencil,\n\t\tPlus,\n\t},\n}\n</script>\n```\n\n### Custom icon slot\nTo be used with `vue-material-design-icons` only. For icon classes use the `default-icon` slot.\nIt can be used with one or multiple actions.\n```vue\n<template>\n\t<div style=\"display: flex;align-items: center;\">\n\t\t<NcButton @click=\"toggled = !toggled\">Toggle multiple action</NcButton>\n\t\t<NcActions>\n\t\t\t<template #icon>\n\t\t\t\t<DotsHorizontalCircleOutline :size=\"20\" />\n\t\t\t</template>\n\t\t\t<NcActionButton>\n\t\t\t\t<template #icon>\n\t\t\t\t\t<MicrophoneOff :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tMute\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton v-if=\"toggled\">\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</NcActions>\n\t</div>\n</template>\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport DotsHorizontalCircleOutline from 'vue-material-design-icons/DotsHorizontalCircleOutline.vue'\nimport MicrophoneOff from 'vue-material-design-icons/MicrophoneOff.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tDotsHorizontalCircleOutline,\n\t\tMicrophoneOff,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\ttoggled: false\n\t\t}\n\t}\n}\n</script>\n```\n\n### Custom icon slot in child elements\n```vue\n<template>\n\t<NcActions :primary=\"true\">\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Magnify :size=\"20\" />\n\t\t\t</template>\n\t\t\tSearch\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<Delete :size=\"20\" />\n\t\t\t</template>\n\t\t\tDelete\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Magnify from 'vue-material-design-icons/Magnify.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tMagnify,\n\t},\n}\n</script>\n```\n\n### Design variants\n\n```vue\n<template>\n\t<div>\n\t\t<NcActions :variant=\"current\">\n\t\t\t<template #icon>\n\t\t\t\t<SelectColor :size=\"20\" />\n\t\t\t</template>\n\n\t\t\t<NcActionButton v-if=\"current\" close-after-click @click=\"define()\">\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\tRemove\n\t\t\t</NcActionButton>\n\n\t\t\t<NcActionButton v-for=\"row in variants\" close-after-click @click=\"define(row)\" :key=\"`type-icon--${row}`\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckboxMarkedCircleOutline v-if=\"row === current\" :size=\"20\" />\n\t\t\t\t\t<SelectColor v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ row }}\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\n\t\t<NcActions :variant=\"current\" menu-name=\"Choose a variant\">\n\t\t\t<NcActionButton v-if=\"current\" close-after-click @click=\"define()\">\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\tRemove\n\t\t\t</NcActionButton>\n\n\t\t\t<NcActionButton v-for=\"row in variants\" close-after-click @click=\"define(row)\" :key=\"`type-text--${row}`\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckboxMarkedCircleOutline v-if=\"row === current\" :size=\"20\" />\n\t\t\t\t\t<SelectColor v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ row }}\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\n\t\t<NcActions :variant=\"current\" menu-name=\"Choose a variant\">\n\t\t\t<template #icon>\n\t\t\t\t<SelectColor :size=\"20\" />\n\t\t\t</template>\n\n\t\t\t<NcActionButton v-if=\"current\" close-after-click @click=\"define()\">\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\tRemove\n\t\t\t</NcActionButton>\n\n\t\t\t<NcActionButton v-for=\"row in variants\" close-after-click @click=\"define(row)\" :key=\"`type-icon-text--${row}`\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckboxMarkedCircleOutline v-if=\"row === current\" :size=\"20\" />\n\t\t\t\t\t<SelectColor v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ row }}\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</div>\n</template>\n\n<script>\nimport Delete from 'vue-material-design-icons/Delete.vue'\nimport Palette from 'vue-material-design-icons/Palette.vue'\nimport SelectColor from 'vue-material-design-icons/SelectColor.vue'\nimport CheckboxMarkedCircleOutline from 'vue-material-design-icons/CheckboxMarkedCircleOutline.vue'\n\nexport default {\n\tcomponents: {\n\t\tDelete,\n\t\tPalette,\n\t\tSelectColor,\n\t\tCheckboxMarkedCircleOutline,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tcurrent: 'primary',\n\t\t\tvariants: [\n\t\t\t\t'primary',\n\t\t\t\t'secondary',\n\t\t\t\t'tertiary',\n\t\t\t\t'error',\n\t\t\t\t'warning',\n\t\t\t\t'success'\n\t\t\t]\n\t\t}\n\t},\n\tmethods: {\n\t\tdefine(row = undefined) {\n\t\t\tthis.current = row\n\t\t}\n\t}\n}\n</script>\n```\n\n### Use cases\n\n```vue\n<template>\n\t<div>\n\t\t<h2>Application menu</h2>\n\t\t<p>Has buttons, button groups, links and router links, separators, texts. May have checkboxes and radio buttons. Separator can be used to make groups of radio buttons as well.</p>\n\t\t<p><kbd>Arrows</kbd> are used to navigate between items, <kbd>Tab</kbd> is used to navigate to the next UI element on the page.</p>\n\t\t<p>\n\t\t\t<NcActions aria-label=\"Email menu\" variant=\"tertiary\">\n\t\t\t\t<NcActionButtonGroup>\n\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<StarOutline :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\tFavorite\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<EmailUnread :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\tUnread\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Bookmark :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\tImportant\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActionButtonGroup>\n\t\t\t\t<NcActionText>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<ClockOutlineIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ new Date().toLocaleDateString('en-US') }}\n\t\t\t\t</NcActionText>\n\t\t\t\t<NcActionSeparator />\n\t\t\t\t<NcActionButton>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<AlertOctagonIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tMark as spam\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionCheckbox :checked.sync=\"selected\">\n\t\t\t\t\tSelect\n\t\t\t\t</NcActionCheckbox>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<OpenInNewIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tMove thread\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionLink href=\"#\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<DownloadIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tDownload message\n\t\t\t\t</NcActionLink>\n\t\t\t</NcActions>\n\t\t</p>\n\t\t<p>\n\t\t\t<NcActions aria-label=\"Text settings\" variant=\"tertiary\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<FormatTitle :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t<NcActionButtonGroup name=\"Alignment\">\n\t\t\t\t\t<NcActionButton aria-label=\"Left\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<FormatAlignLeft :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton aria-label=\"Center\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<FormatAlignCenter :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<NcActionButton aria-label=\"Right\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<FormatAlignRight :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActionButtonGroup>\n\t\t\t\t<NcActionSeparator />\n\t\t\t\t<NcActionCheckbox :checked.sync=\"checked.bold\" value=\"bold\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<FormatBold :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tBold\n\t\t\t\t</NcActionCheckbox>\n\t\t\t\t<NcActionCheckbox :checked.sync=\"checked.italic\" value=\"italic\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<FormatItalic :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tItalic\n\t\t\t\t</NcActionCheckbox>\n\t\t\t\t<NcActionCheckbox :checked.sync=\"checked.underline\" value=\"underline\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<FormatUnderline :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tUnderline\n\t\t\t\t</NcActionCheckbox>\n\t\t\t\t<NcActionSeparator />\n\t\t\t\t<NcActionRadio name=\"color\" :checked.sync=\"color.black\" value=\"Black\">Black</NcActionRadio>\n\t\t\t\t<NcActionRadio name=\"color\" :checked.sync=\"color.blue\" value=\"Blue\">Blue</NcActionRadio>\n\t\t\t\t<NcActionRadio name=\"color\" :checked.sync=\"color.red\" value=\"Red\">Red</NcActionRadio>\n\t\t\t\t<NcActionRadio name=\"color\" :checked.sync=\"color.green\" value=\"Green\">Green</NcActionRadio>\n\t\t\t</NcActions>\n\t\t</p>\n\n\t\t<h2>Navigation</h2>\n\t\t<p>Has links or router links. May use text elements, captions and separators.</p>\n\t\t<p>Uses classic <kbd>Tab</kbd> navigation.</p>\n\t\t<p>\n\t\t\t<NcActions aria-label=\"Applications navigation\" :inline=\"2\" variant=\"tertiary\">\n\t\t\t\t<NcActionLink href=\"/apps/dashboard\" icon=\"icon-category-dashboard-white\">\n\t\t\t\t\tDashboard\n\t\t\t\t</NcActionLink>\n\t\t\t\t<NcActionLink href=\"/apps/files\" icon=\"icon-files-white\">\n\t\t\t\t\tFiles\n\t\t\t\t</NcActionLink>\n\t\t\t\t<NcActionLink href=\"/apps/spreed\" icon=\"icon-talk-white\">\n\t\t\t\t\tTalk\n\t\t\t\t</NcActionLink>\n\t\t\t\t<NcActionLink href=\"/apps/contacts\" icon=\"icon-contacts-white\">\n\t\t\t\t\tContacts\n\t\t\t\t</NcActionLink>\n\t\t\t\t<NcActionLink href=\"/apps/circles\" icon=\"icon-circles-white\">\n\t\t\t\t\tCircles\n\t\t\t\t</NcActionLink>\n\t\t\t</NcActions>\n\t\t</p>\n\n\t\t<h2>Dialog</h2>\n\t\t<p>Includes data input elements, forms.</p>\n\t\t<p>Uses <kbd>Tab</kbd> navigation with a focus trap.</p>\n\t\t<p>\n\t\t\t<NcActions aria-label=\"Group management\">\n\t\t\t\t<NcActionInput trailing-button-label=\"Submit\" label=\"Rename group\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionInput>\n\t\t\t\t<NcActionButton>\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tRemove group\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActions>\n\t\t</p>\n\n\t\t<h2>Tooltip</h2>\n\t\t<p>Has only text and no interactive elements.</p>\n\t\t<p>\n\t\t\t<NcActions aria-label=\"Contact\" :inline=\"1\">\n\t\t\t\t<NcActionLink aria-label=\"View profile\" href=\"/u/alice\" icon=\"icon-user-white\">\n\t\t\t\t\tView profile\n\t\t\t\t</NcActionLink>\n\t\t\t\t<NcActionText icon=\"icon-timezone-white\">\n\t\t\t\t\tLocal time: 10:12\n\t\t\t\t</NcActionText>\n\t\t\t</NcActions>\n\t\t</p>\n\t</div>\n</template>\n\n<script>\n// Common icons\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\nimport Delete from 'vue-material-design-icons/Delete.vue'\n\n// Email icons\nimport StarOutline from 'vue-material-design-icons/StarOutline.vue'\nimport EmailUnread from 'vue-material-design-icons/Email.vue'\nimport Bookmark from 'vue-material-design-icons/Bookmark.vue'\nimport ClockOutlineIcon from 'vue-material-design-icons/ClockOutline.vue'\nimport AlertOctagonIcon from 'vue-material-design-icons/AlertOctagon.vue'\nimport CheckIcon from 'vue-material-design-icons/Check.vue'\nimport OpenInNewIcon from 'vue-material-design-icons/OpenInNew.vue'\nimport DownloadIcon from 'vue-material-design-icons/Download.vue'\n\n// Formatting icons\nimport FormatTitle from 'vue-material-design-icons/FormatTitle.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'\nimport FormatBold from 'vue-material-design-icons/FormatBold.vue'\nimport FormatItalic from 'vue-material-design-icons/FormatItalic.vue'\nimport FormatUnderline from 'vue-material-design-icons/FormatUnderline.vue'\n\nexport default {\n\tcomponents: {\n\t\t// Common icons\n\t\tPencil,\n\t\tDelete,\n\n\t\t// Email icons\n\t\tStarOutline,\n\t\tEmailUnread,\n\t\tBookmark,\n\t\tClockOutlineIcon,\n\t\tAlertOctagonIcon,\n\t\tCheckIcon,\n\t\tOpenInNewIcon,\n\t\tDownloadIcon,\n\n\t\t// Formatting icons\n\t\tFormatTitle,\n\t\tFormatAlignLeft,\n\t\tFormatAlignCenter,\n\t\tFormatAlignRight,\n\t\tFormatBold,\n\t\tFormatItalic,\n\t\tFormatUnderline,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tselected: false,\n\t\t\t// Formatting\n\t\t\tchecked: {\n\t\t\t\tbold: true,\n\t\t\t\titalic: false,\n\t\t\t\tunderline: false,\n\t\t\t},\n\t\t\tcolor: {\n\t\t\t\tblack: true,\n\t\t\t\tblue: false,\n\t\t\t\tred: false,\n\t\t\t\tgreen: false,\n\t\t\t},\n\t\t}\n\t},\n}\n</script>\n\n<style scoped>\np {\n\tmargin: 1rem 0;\n}\n</style>\n```\n\n## NcActions children limitations\n\n`<NcActions>` is supposed to be used with direct `<NcAction*>` children.\nAlthough it works when actions are not direct children but wrapped in custom components, it has limitations:\n- No `inline` prop property, including a single action display;\n- Accessibility issues, including changed keyboard behavior (see below);\n- Invalid HTML.\n\n```\n<template>\n\t<table class=\"actions-limitations-table\">\n\t\t<tr>\n\t\t\t<th style=\"width: 50%\">Non-direct children</th>\n\t\t\t<th style=\"width: 50%\">Direct NcAction* children</th>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<th colspan=\"2\">This single button is supposed to be rendered as inline action but it is rendered as a menu:</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td>\n\t\t\t\t<NcActions>\n\t\t\t\t\t<MyUserActionButton />\n\t\t\t\t</NcActions>\n\t\t\t</td>\n\t\t\t<td>\n\t\t\t\t<NcActions>\n\t\t\t\t\t<NcActionButton>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Account :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\tButton\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<th colspan=\"2\">This NcActions is supposed to have 2 inline buttons but it has none:</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td>\n\t\t\t\t<NcActions :inline=\"2\">\n\t\t\t\t\t<MyUserActionButton v-for=\"i in 4\" />\n\t\t\t\t</NcActions>\n\t\t\t</td>\n\t\t\t<td>\n\t\t\t\t<NcActions :inline=\"2\">\n\t\t\t\t\t<NcActionButton v-for=\"i in 4\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Account :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\tButton\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<th colspan=\"2\">This NcActions is supposed to have a11y role menu and keyboard navigation but it acts like a dialog:</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td>\n\t\t\t\t<NcActions>\n\t\t\t\t\t<MyActionsList />\n\t\t\t\t</NcActions>\n\t\t\t</td>\n\t\t\t<td>\n\t\t\t\t<NcActions>\n\t\t\t\t\t<NcActionButton v-for=\"i in 4\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Account :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\tButton\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t</td>\n\t\t</tr>\n\t</table>\n</template>\n\n<script>\nimport Account from 'vue-material-design-icons/Account.vue'\n\nexport default {\n\tcomponents: {\n\t\tAccount,\n\n\t\tMyUserActionButton: {\n\t\t\tname: 'MyUserActionButton',\n\t\t\tcomponents: { Account },\n\t\t\trender: (h) => h('NcActionButton', ['Button', h('Account', { props: { size: 20 }, slot: 'icon' })]),\n\t\t},\n\n\t\tMyActionsList: {\n\t\t\tname: 'MyActionsList',\n\t\t\tcomponents: { Account },\n\t\t\trender: (h) => h('div', [\n\t\t\t\th('NcActionButton', ['Button', h('Account', { props: { size: 20 }, slot: 'icon' })]),\n\t\t\t\th('NcActionButton', ['Button', h('Account', { props: { size: 20 }, slot: 'icon' })]),\n\t\t\t\th('NcActionButton', ['Button', h('Account', { props: { size: 20 }, slot: 'icon' })]),\n\t\t\t\th('NcActionButton', ['Button', h('Account', { props: { size: 20 }, slot: 'icon' })]),\n\t\t\t]),\n\t\t}\n\t}\n}\n</script>\n\n<style>\n.actions-limitations-table {\n\tborder-collapse: collapse;\n\twidth: 100%;\n\tth,\n\ttd {\n\t\tborder: 1px solid var(--color-border);\n\t\tpadding: var(--default-grid-baseline);\n\t\tmax-width: 50%;\n\t}\n\n\tth {\n\t\ttext-align: center;\n\t\ttext-wrap: wrap;\n\t}\n}\n</style>\n```\n\n#### Manually providing semantic menu information\nDue to limitations of Vue, when using a custom wrapper for action components, you have to provide the semantic menu type yourself.\nThis is used for keyboard navigation and accessibility.\nIn this example a `NcActionInput` component is used within a custom wrapper, so `NcActions` is not able to detect the semantic menu type of 'dialog' automatically,\nmeaning it must be provided manually:\n\n```vue\n<template>\n\t<NcActions menu-semantic-type=\"dialog\">\n\t\t<MyWrapper />\n\t</NcActions>\n</template>\n<script>\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\n\nexport default {\n\tcomponents: {\n\t\tMyWrapper: {\n\t\t\ttemplate: `\n<NcActionInput trailing-button-label=\"Submit\" label=\"Rename group\">\n\t<template #icon>\n\t\t<Pencil :size=\"20\" />\n\t</template>\n</NcActionInput>`,\n\t\t},\n\t\tcomponents: {\n\t\t\tPencil,\n\t\t},\n\t},\n}\n</script>\n```\n\n</docs>\n\n<script>\nimport Vue, { computed } from 'vue'\nimport IconDotsHorizontal from 'vue-material-design-icons/DotsHorizontal.vue'\nimport { useTrapStackControl } from '../../composables/useTrapStackControl.ts'\nimport { t } from '../../l10n.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\nimport NcButton from '../NcButton/index.js'\nimport NcPopover from '../NcPopover/index.js'\n\nconst focusableSelector = '.focusable'\n\n/**\n * The Actions component can be used to display one ore more actions.\n * If only a single action is provided, it will be rendered as an inline icon.\n * For more, a menu indicator will be shown and a popover menu containing the\n * actions will be opened on click.\n *\n * @since 0.10.0\n */\nexport default {\n\tname: 'NcActions',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcPopover,\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\t/**\n\t\t\t * NcActions can be used as:\n\t\t\t * - Application menu (has menu role)\n\t\t\t * - Expanded block (has no specific role, should be used an element with expanded role)\n\t\t\t * - Popover with plain text or text inputs (has no specific role)\n\t\t\t * Depending on the usage (used items), the menu and its items should have different roles for a11y.\n\t\t\t * Provide the role for NcAction* components in the NcActions content.\n\t\t\t *\n\t\t\t * @type {import('vue').ComputedRef<boolean>}\n\t\t\t */\n\t\t\t'NcActions:isSemanticMenu': computed(() => this.actionsMenuSemanticType === 'menu'),\n\t\t}\n\t},\n\n\tprops: {\n\t\t/**\n\t\t * Specify the open state of the popover menu\n\t\t */\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * This disables the internal open management,\n\t\t * so the actions menu only respects the `open` prop.\n\t\t * This is e.g. necessary for the NcAvatar component\n\t\t * to only open the actions menu after loading it's entries has finished.\n\t\t */\n\t\tmanualOpen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Force the actions to display in a three dot menu\n\t\t */\n\t\tforceMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Force the name to show for single actions\n\t\t */\n\t\tforceName: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specify the menu name\n\t\t */\n\t\tmenuName: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * NcActions can be used as:\n\t\t *\n\t\t * - Application menu (has menu role)\n\t\t * - Navigation (has no specific role, should be used an element with expanded role)\n\t\t * - Popover with plain text or text inputs (has no specific role)\n\t\t *\n\t\t * By default the used type is automatically detected by components used in the default slot.#\n\t\t *\n\t\t * With Vue this is limited to direct children of the NcActions component.\n\t\t * So if you use a wrapper, you have to provide the semantic type yourself (see Example)\n\t\t *\n\t\t * Choose:\n\t\t *\n\t\t * - 'dialog' if you use any of these components: NcActionInput', 'NcActionTextEditable'\n\t\t * - 'menu' if you use any of these components: 'NcActionButton', 'NcActionButtonGroup', 'NcActionCheckbox', 'NcActionRadio'\n\t\t * - 'expanded' if using one of these: 'NcActionLink', 'NcActionRouter'. This represents an expanded block.\n\t\t * - 'tooltip' only to be used when a text without any interactive elements is used.\n\t\t * - Leave this property unset otherwise\n\t\t */\n\t\tforceSemanticType: {\n\t\t\ttype: String,\n\t\t\tdefault: null,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['dialog', 'menu', 'expanded', 'tooltip'].includes(value)\n\t\t\t},\n\t\t},\n\n\t\t/**\n\t\t * Apply primary styling for this menu\n\t\t */\n\t\tprimary: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * Specifies the button variant used for trigger and single actions buttons.\n\t\t *\n\t\t * Accepted values: primary, secondary, tertiary, tertiary-no-background, tertiary-on-primary, error, warning, success. If left empty,\n\t\t * the default button style will be applied.\n\t\t *\n\t\t * @deprecated use `variant` instead - will be removed with v9\n\t\t */\n\t\ttype: {\n\t\t\ttype: String,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['primary', 'secondary', 'tertiary', 'tertiary-no-background', 'tertiary-on-primary', 'error', 'warning', 'success'].includes(value)\n\t\t\t},\n\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * Icon to show for the toggle menu button\n\t\t * when more than one action is inside the actions component.\n\t\t * Only replace the default three-dot icon if really necessary.\n\t\t */\n\t\tdefaultIcon: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\n\t\t/**\n\t\t * Aria label for the actions menu.\n\t\t *\n\t\t * If `menuName` is defined this will not be used to prevent\n\t\t * any accessible name conflicts. This ensures that the\n\t\t * element can be activated via voice input.\n\t\t */\n\t\tariaLabel: {\n\t\t\ttype: String,\n\t\t\tdefault: t('Actions'),\n\t\t},\n\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 * Wanted direction of the menu\n\t\t */\n\t\tplacement: {\n\t\t\ttype: String,\n\t\t\tdefault: 'bottom',\n\t\t},\n\n\t\t/**\n\t\t * DOM element for the actions' popover boundaries\n\t\t */\n\t\tboundariesElement: {\n\t\t\ttype: Element,\n\t\t\tdefault: () => document.querySelector('#content-vue') ?? document.querySelector('body'),\n\t\t},\n\n\t\t/**\n\t\t * Selector for the actions' popover container\n\t\t */\n\t\tcontainer: {\n\t\t\ttype: [Boolean, String, Object, Element],\n\t\t\tdefault: 'body',\n\t\t},\n\n\t\t/**\n\t\t * Disabled state of the main button (single action or menu toggle)\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 * Display x items inline out of the dropdown menu\n\t\t * Will be ignored if `forceMenu` is set\n\t\t */\n\t\tinline: {\n\t\t\ttype: Number,\n\t\t\tdefault: 0,\n\t\t},\n\n\t\t/**\n\t\t * Specifies the button variant used for trigger and single actions buttons.\n\t\t *\n\t\t * Accepted values: primary, secondary, tertiary, tertiary-no-background, tertiary-on-primary, error, warning, success.\n\t\t * If left empty, the default button style will be applied.\n\t\t *\n\t\t * @since 8.24.0\n\t\t */\n\t\tvariant: {\n\t\t\ttype: String,\n\t\t\tvalidator(value) {\n\t\t\t\treturn ['primary', 'secondary', 'tertiary', 'tertiary-no-background', 'tertiary-on-primary', 'error', 'warning', 'success'].includes(value)\n\t\t\t},\n\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\temits: [\n\t\t'click',\n\t\t'blur',\n\t\t'focus',\n\n\t\t'close',\n\t\t'closed',\n\t\t'open',\n\t\t'opened',\n\t\t'update:open',\n\t],\n\n\tsetup() {\n\t\tconst randomId = `menu-${GenRandomId()}`\n\t\tconst triggerRandomId = `trigger-${randomId}`\n\n\t\treturn {\n\t\t\trandomId,\n\t\t\ttriggerRandomId,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\topened: this.open,\n\t\t\tfocusIndex: 0,\n\t\t\t/**\n\t\t\t * @type {'menu'|'expanded'|'dialog'|'tooltip'|'unknown'}\n\t\t\t */\n\t\t\tactionsMenuSemanticType: 'unknown',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\ttriggerButtonVariant() {\n\t\t\t// If requested, we use a primary button\n\t\t\treturn (this.type ?? this.variant) || (this.primary\n\t\t\t\t? 'primary'\n\t\t\t\t// If it has a name, we use a secondary button\n\t\t\t\t: this.menuName ? 'secondary' : 'tertiary')\n\t\t},\n\n\t\t/**\n\t\t * A11y roles and keyboard navigation configuration depending on the semantic type\n\t\t */\n\t\tconfig() {\n\t\t\t/**\n\t\t\t * Accessibility notes:\n\t\t\t *\n\t\t\t * \"aria-haspopup\" and \"aria-expanded\" are managed by NcPopover via `popupRole`\n\t\t\t *\n\t\t\t * \"aria-controls\" should only present together with a valid aria-haspopup\n\t\t\t *\n\t\t\t * There is no valid popup role for expanded and tooltip in `aria-haspopup`.\n\t\t\t * aria-haspopup=\"true\" is equivalent to aria-haspopup=\"menu\".\n\t\t\t * They must not be treated as menus.\n\t\t\t *\n\t\t\t * Having both arrow and tab navigation is not allowed for a11y.\n\t\t\t * Either menu is an atomic UI element, and arrows select menu items, Tab moves to the next UI element.\n\t\t\t * Or the menu is an expanded list of UI elements.\n\t\t\t *\n\t\t\t * Navigation type is just an \"expanded\" block, similar to native <details> element.\n\t\t\t *\n\t\t\t * Arrow and Tab navigation should not be used together:\n\t\t\t * - Arrow navigation is used to navigate between items of UI element\n\t\t\t * - Tab navigation is used to navigate between UI elements on the page\n\t\t\t * - Menu is either an atomic UI element of just an expanded block of elements\n\t\t\t */\n\t\t\tconst configs = {\n\t\t\t\tmenu: {\n\t\t\t\t\tpopupRole: 'menu',\n\t\t\t\t\twithArrowNavigation: true,\n\t\t\t\t\twithTabNavigation: false,\n\t\t\t\t\twithFocusTrap: false,\n\t\t\t\t\ttriggerA11yAttr: {\n\t\t\t\t\t\t'aria-controls': this.opened ? this.randomId : null,\n\t\t\t\t\t},\n\n\t\t\t\t\tpopoverContainerA11yAttrs: {},\n\t\t\t\t\tpopoverUlA11yAttrs: {\n\t\t\t\t\t\t'aria-labelledby': this.triggerRandomId,\n\t\t\t\t\t\tid: this.randomId,\n\t\t\t\t\t\trole: 'menu',\n\t\t\t\t\t},\n\t\t\t\t},\n\n\t\t\t\texpanded: {\n\t\t\t\t\tpopupRole: undefined,\n\t\t\t\t\twithArrowNavigation: false,\n\t\t\t\t\twithTabNavigation: true,\n\t\t\t\t\twithFocusTrap: false,\n\t\t\t\t\ttriggerA11yAttr: {},\n\t\t\t\t\tpopoverContainerA11yAttrs: {},\n\t\t\t\t\tpopoverUlA11yAttrs: {},\n\t\t\t\t},\n\n\t\t\t\tdialog: {\n\t\t\t\t\tpopupRole: 'dialog',\n\t\t\t\t\twithArrowNavigation: false,\n\t\t\t\t\twithTabNavigation: true,\n\t\t\t\t\twithFocusTrap: true,\n\t\t\t\t\ttriggerA11yAttr: {\n\t\t\t\t\t\t'aria-controls': this.opened ? this.randomId : null,\n\t\t\t\t\t},\n\n\t\t\t\t\tpopoverContainerA11yAttrs: {\n\t\t\t\t\t\tid: this.randomId,\n\t\t\t\t\t\trole: 'dialog',\n\t\t\t\t\t\t// Dialog must have a label\n\t\t\t\t\t\t'aria-labelledby': this.triggerRandomId,\n\t\t\t\t\t\t'aria-modal': 'true',\n\t\t\t\t\t},\n\n\t\t\t\t\tpopoverUlA11yAttrs: {},\n\t\t\t\t},\n\n\t\t\t\ttooltip: {\n\t\t\t\t\tpopupRole: undefined,\n\t\t\t\t\twithArrowNavigation: false,\n\t\t\t\t\twithTabNavigation: false,\n\t\t\t\t\twithFocusTrap: false,\n\t\t\t\t\ttriggerA11yAttr: {},\n\t\t\t\t\tpopoverContainerA11yAttrs: {},\n\t\t\t\t\tpopoverUlA11yAttrs: {},\n\t\t\t\t},\n\n\t\t\t\t// Due to Vue limitations, we sometimes cannot determine the true type\n\t\t\t\t// As a fallback use both arrow navigation and focus trap\n\t\t\t\tunknown: {\n\t\t\t\t\tpopupRole: undefined,\n\t\t\t\t\trole: undefined,\n\t\t\t\t\twithArrowNavigation: true,\n\t\t\t\t\twithTabNavigation: false,\n\t\t\t\t\twithFocusTrap: true,\n\t\t\t\t\ttriggerA11yAttr: {},\n\t\t\t\t\tpopoverContainerA11yAttrs: {},\n\t\t\t\t\tpopoverUlA11yAttrs: {\n\t\t\t\t\t\t// there is nothing against labelling a list, it is mostly recommended\n\t\t\t\t\t\t// so as we do not know the dialog type lets include the label\n\t\t\t\t\t\t'aria-labelledby': this.triggerRandomId,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}\n\t\t\treturn configs[this.actionsMenuSemanticType]\n\t\t},\n\t},\n\n\twatch: {\n\t\t// Watch parent prop\n\t\topen(state) {\n\t\t\tif (state === this.opened) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.opened = state\n\t\t},\n\n\t\topened() {\n\t\t\t// Ensure that pressing escape will close the menu even if the menu is not hovered\n\t\t\t// and not currently active, e.g. because user opened the context menu\n\t\t\tif (this.opened) {\n\t\t\t\tdocument.body.addEventListener('keydown', this.handleEscapePressed)\n\t\t\t} else {\n\t\t\t\tdocument.body.removeEventListener('keydown', this.handleEscapePressed)\n\t\t\t}\n\t\t},\n\t},\n\n\tcreated() {\n\t\t// When component has its own custom focus management\n\t\t// The global focus trap stack should be paused\n\t\tuseTrapStackControl(() => this.opened, {\n\t\t\tdisabled: () => this.config.withFocusTrap,\n\t\t})\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Get the name of the action component\n\t\t *\n\t\t * @param {import('vue').VNode} action - a vnode with a NcAction* component instance\n\t\t * @return {string} the name of the action component\n\t\t */\n\t\tgetActionName(action) {\n\t\t\treturn action?.componentOptions?.Ctor?.extendOptions?.name ?? action?.componentOptions?.tag\n\t\t},\n\n\t\t/**\n\t\t * Do we have exactly one Action and\n\t\t * is it allowed as a standalone element?\n\t\t *\n\t\t * @param {import('vue').VNode} action The action to check\n\t\t * @return {boolean}\n\t\t */\n\t\tisValidSingleAction(action) {\n\t\t\treturn ['NcActionButton', 'NcActionLink', 'NcActionRouter'].includes(this.getActionName(action))\n\t\t},\n\n\t\t/**\n\t\t * Check whether a icon prop value is an URL or not\n\t\t *\n\t\t * @param {string} url The icon prop value\n\t\t */\n\t\tisIconUrl(url) {\n\t\t\ttry {\n\t\t\t\treturn !!(new URL(url, url.startsWith('/') ? window.location.origin : undefined))\n\t\t\t} catch {\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\n\t\t// MENU STATE MANAGEMENT\n\t\topenMenu() {\n\t\t\tif (this.opened) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.opened = true\n\n\t\t\t/**\n\t\t\t * Event emitted when the popover menu open state is changed\n\t\t\t *\n\t\t\t * @type {boolean}\n\t\t\t */\n\t\t\tthis.$emit('update:open', true)\n\n\t\t\t/**\n\t\t\t * Event emitted when the popover menu is opened\n\t\t\t */\n\t\t\tthis.$emit('open')\n\t\t},\n\n\t\tasync closeMenu(returnFocus = true) {\n\t\t\tif (!this.opened) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Wait for the next tick to keep the menu in DOM, allowing other components to find what button in what menu was used,\n\t\t\t// for example, to implement auto set return focus.\n\t\t\t// NcPopover will actually remove the menu from DOM also on the next tick.\n\t\t\tawait this.$nextTick()\n\n\t\t\tthis.opened = false\n\n\t\t\tthis.$refs.popover?.clearFocusTrap({ returnFocus })\n\n\t\t\t/**\n\t\t\t * Event emitted when the popover menu open state is changed\n\t\t\t *\n\t\t\t * @type {boolean}\n\t\t\t */\n\t\t\tthis.$emit('update:open', false)\n\n\t\t\t/**\n\t\t\t * Event emitted when the popover menu is *being* closed.\n\t\t\t *\n\t\t\t * @deprecated use `update:open` instead. This is always emitted the same time as `('update:open', false)`\n\t\t\t */\n\t\t\tthis.$emit('close')\n\n\t\t\t// close everything\n\t\t\tthis.focusIndex = 0\n\n\t\t\tif (returnFocus) {\n\t\t\t\t// Focus back the trigger button\n\t\t\t\tthis.$refs.triggerButton?.$el.focus()\n\t\t\t}\n\t\t},\n\n\t\tonClosed() {\n\t\t\t/**\n\t\t\t * Event emitted when the popover menu is closed.\n\t\t\t *\n\t\t\t * This event is emitted after `update:open` was emitted and the closing transition finished.\n\t\t\t */\n\t\t\tthis.$emit('closed')\n\t\t},\n\n\t\t/**\n\t\t * Called when popover is shown after the show delay\n\t\t */\n\t\tonOpened() {\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tthis.focusFirstAction(null)\n\t\t\t\tthis.resizePopover()\n\n\t\t\t\t/**\n\t\t\t\t * Event emitted when the popover menu is opened.\n\t\t\t\t *\n\t\t\t\t * This event is emitted after `update:open` was emitted and the opening transition finished.\n\t\t\t\t */\n\t\t\t\tthis.$emit('opened')\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Handle resizing the popover to make sure users can discover there is more to scroll\n\t\t */\n\t\tresizePopover() {\n\t\t\t// Get the inner v-popper element that defines the popover height (from floating-vue)\n\t\t\tconst inner = this.$refs.menu.closest('.v-popper__inner')\n\t\t\tconst height = this.$refs.menu.clientHeight\n\t\t\tconst maxMenuHeight = this.getMaxMenuHeight()\n\n\t\t\t// If the popover height is limited by the max-height (scrollbars shown) limit the height to half of the last element\n\t\t\tif (height > maxMenuHeight) {\n\t\t\t\t// sum of action heights\n\t\t\t\tlet currentHeight = 0\n\t\t\t\t// last action height\n\t\t\t\tlet actionHeight = 0\n\t\t\t\tfor (const action of this.$refs.menuList.children) {\n\t\t\t\t\t// If the max height would be overflown by half of the current element,\n\t\t\t\t\t// then we limit the height to the half of the previous element\n\t\t\t\t\tif ((currentHeight + action.clientHeight / 2) > maxMenuHeight) {\n\t\t\t\t\t\tinner.style.height = `${currentHeight - actionHeight / 2}px`\n\t\t\t\t\t\tbreak\n\t\t\t\t\t}\n\t\t\t\t\t// otherwise sum up the height\n\t\t\t\t\tactionHeight = action.clientHeight\n\t\t\t\t\tcurrentHeight += actionHeight\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tinner.style.height = 'fit-content'\n\t\t\t}\n\t\t},\n\n\t\tgetMaxMenuHeight() {\n\t\t\tconst { top, bottom } = this.$refs.triggerButton?.$el.getBoundingClientRect() ?? { top: 0, bottom: 0 }\n\t\t\tconst { top: boundaryTop, bottom: boundaryBottom } = this.boundariesElement?.getBoundingClientRect() ?? { top: 0, bottom: window.innerHeight }\n\n\t\t\treturn Math.max(\n\t\t\t\t// Either expand to the top\n\t\t\t\tMath.min(\n\t\t\t\t\t// max height is the top position of the trigger minus the header height minus the wedge and the padding\n\t\t\t\t\ttop - 84,\n\t\t\t\t\t// and also limited to the space in the boundary\n\t\t\t\t\ttop - boundaryTop,\n\t\t\t\t),\n\t\t\t\t// or expand to the bottom\n\t\t\t\tMath.min(\n\t\t\t\t\t// the max height is the window height minus current position of the trigger minus the wedge and padding\n\t\t\t\t\twindow.innerHeight - bottom - 34,\n\t\t\t\t\t// and limit to the available space in the boundary\n\t\t\t\t\tboundaryBottom - bottom,\n\t\t\t\t),\n\t\t\t)\n\t\t},\n\n\t\t// MENU KEYS & FOCUS MANAGEMENT\n\t\t/**\n\t\t * @return {HTMLElement|null}\n\t\t */\n\t\tgetCurrentActiveMenuItemElement() {\n\t\t\treturn this.$refs.menu.querySelector('li.active')\n\t\t},\n\n\t\t/**\n\t\t * @return {NodeList<HTMLElement>}\n\t\t */\n\t\tgetFocusableMenuItemElements() {\n\t\t\treturn this.$refs.menu.querySelectorAll(focusableSelector)\n\t\t},\n\n\t\t/**\n\t\t * Dispatches the keydown listener to different handlers\n\t\t *\n\t\t * @param {object} event The keydown event\n\t\t */\n\t\tonKeydown(event) {\n\t\t\tif (event.key === 'Tab') {\n\t\t\t\tif (this.config.withFocusTrap) {\n\t\t\t\t\t// Focus is managed by focus-trap\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (!this.config.withTabNavigation) {\n\t\t\t\t\t// Tab is not used for navigation - close the menu\n\t\t\t\t\t// Return focus to restore Tab sequence\n\t\t\t\t\t// So browser will correctly move focus to the next element\n\t\t\t\t\tthis.closeMenu(true)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\t// Tab is used for classic navigation but we implement it manually\n\n\t\t\t\tevent.preventDefault()\n\n\t\t\t\tconst focusList = this.getFocusableMenuItemElements()\n\t\t\t\tconst focusIndex = [...focusList].indexOf(document.activeElement)\n\t\t\t\tif (focusIndex === -1) {\n\t\t\t\t\t// This is not supposed to happen\n\t\t\t\t\t// But if it does - do nothing and keep native behavior\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t\tconst newFocusIndex = event.shiftKey ? focusIndex - 1 : focusIndex + 1\n\n\t\t\t\t// There is no focus-trap, so going out of the menu closes it\n\t\t\t\tif (newFocusIndex < 0 || newFocusIndex === focusList.length) {\n\t\t\t\t\tthis.closeMenu(true)\n\t\t\t\t}\n\n\t\t\t\t// Update current focused element\n\t\t\t\tthis.focusIndex = newFocusIndex\n\t\t\t\tthis.focusAction()\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.config.withArrowNavigation) {\n\t\t\t\tif (event.key === 'ArrowUp') {\n\t\t\t\t\tthis.focusPreviousAction(event)\n\t\t\t\t}\n\n\t\t\t\tif (event.key === 'ArrowDown') {\n\t\t\t\t\tthis.focusNextAction(event)\n\t\t\t\t}\n\n\t\t\t\tif (event.key === 'PageUp') {\n\t\t\t\t\tthis.focusFirstAction(event)\n\t\t\t\t}\n\n\t\t\t\tif (event.key === 'PageDown') {\n\t\t\t\t\tthis.focusLastAction(event)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.handleEscapePressed(event)\n\t\t},\n\n\t\tonTriggerKeydown(event) {\n\t\t\tif (event.key === 'Escape') {\n\t\t\t\t// Tooltip has no focusable elements and the focus remains on the trigger button.\n\t\t\t\t// So keydown event on the menu cannot be handled to close Tooltip on Escape.\n\t\t\t\t// Handle on the trigger.\n\t\t\t\tif (this.actionsMenuSemanticType === 'tooltip') {\n\t\t\t\t\tthis.closeMenu()\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\thandleEscapePressed(event) {\n\t\t\tif (event.key === 'Escape') {\n\t\t\t\tthis.closeMenu()\n\t\t\t\tevent.preventDefault()\n\t\t\t}\n\t\t},\n\n\t\tremoveCurrentActive() {\n\t\t\tconst currentActiveElement = this.$refs.menu.querySelector('li.active')\n\t\t\tif (currentActiveElement) {\n\t\t\t\tcurrentActiveElement.classList.remove('active')\n\t\t\t}\n\t\t},\n\n\t\tfocusAction() {\n\t\t\t// TODO: have a global disabled state for non input elements\n\t\t\tconst focusElement = this.getFocusableMenuItemElements()[this.focusIndex]\n\t\t\tif (focusElement) {\n\t\t\t\tthis.removeCurrentActive()\n\t\t\t\tconst liMenuParent = focusElement.closest('li.action')\n\t\t\t\tfocusElement.focus()\n\t\t\t\tif (liMenuParent) {\n\t\t\t\t\tliMenuParent.classList.add('active')\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tfocusPreviousAction(event) {\n\t\t\tif (this.opened) {\n\t\t\t\tif (this.focusIndex === 0) {\n\t\t\t\t\tthis.focusLastAction(event)\n\t\t\t\t} else {\n\t\t\t\t\tthis.preventIfEvent(event)\n\t\t\t\t\tthis.focusIndex = this.focusIndex - 1\n\t\t\t\t}\n\t\t\t\tthis.focusAction()\n\t\t\t}\n\t\t},\n\n\t\tfocusNextAction(event) {\n\t\t\tif (this.opened) {\n\t\t\t\tconst indexLength = this.getFocusableMenuItemElements().length - 1\n\t\t\t\tif (this.focusIndex === indexLength) {\n\t\t\t\t\tthis.focusFirstAction(event)\n\t\t\t\t} else {\n\t\t\t\t\tthis.preventIfEvent(event)\n\t\t\t\t\tthis.focusIndex = this.focusIndex + 1\n\t\t\t\t}\n\t\t\t\tthis.focusAction()\n\t\t\t}\n\t\t},\n\n\t\tfocusFirstAction(event) {\n\t\t\tif (this.opened) {\n\t\t\t\tthis.preventIfEvent(event)\n\t\t\t\t// In case a NcActionButton is considered checked we will use this one as a initial focus\n\t\t\t\t// Having aria-checked is the simplest way to determine the checked state of a button\n\t\t\t\t// TODO: determine when we need to focus the first checked item and when we not, for example, if menu has many radio groups\n\t\t\t\tconst firstCheckedIndex = [...this.getFocusableMenuItemElements()].findIndex((button) => {\n\t\t\t\t\treturn button.getAttribute('aria-checked') === 'true' && button.getAttribute('role') === 'menuitemradio'\n\t\t\t\t})\n\t\t\t\tthis.focusIndex = firstCheckedIndex > -1 ? firstCheckedIndex : 0\n\t\t\t\tthis.focusAction()\n\t\t\t}\n\t\t},\n\n\t\tfocusLastAction(event) {\n\t\t\tif (this.opened) {\n\t\t\t\tthis.preventIfEvent(event)\n\t\t\t\tthis.focusIndex = this.getFocusableMenuItemElements().length - 1\n\t\t\t\tthis.focusAction()\n\t\t\t}\n\t\t},\n\n\t\tpreventIfEvent(event) {\n\t\t\tif (event) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\tevent.stopPropagation()\n\t\t\t}\n\t\t},\n\n\t\tonFocus(event) {\n\t\t\tthis.$emit('focus', event)\n\t\t},\n\n\t\tonBlur(event) {\n\t\t\tthis.$emit('blur', event)\n\n\t\t\t// When there is no focusable elements to handle Tab press from actions menu\n\t\t\t// It requires manual closing\n\t\t\tif (this.actionsMenuSemanticType === 'tooltip') {\n\t\t\t\t// Tooltip is supposed to have no focusable element.\n\t\t\t\t// However, if there is a custom focusable element, it will be auto-focused and cause the menu to be closed on open.\n\t\t\t\tif (this.$refs.menu && this.getFocusableMenuItemElements().length === 0) {\n\t\t\t\t\tthis.closeMenu(false)\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\tonClick(event) {\n\t\t\t/**\n\t\t\t * Event emitted when the menu toggle button is clicked.\n\t\t\t *\n\t\t\t * This is e.g. necessary for the NcAvatar component\n\t\t\t * which needs to fetch the menu items on click.\n\t\t\t *\n\t\t\t * @type {PointerEvent}\n\t\t\t */\n\t\t\tthis.$emit('click', event)\n\t\t},\n\t},\n\n\t/**\n\t * The render function to display the component\n\t *\n\t * @param {Function} h The function to create VNodes\n\t * @return {object|undefined} The created VNode\n\t */\n\trender(h) {\n\t\t/**\n\t\t * Filter the Actions, so that we only get allowed components.\n\t\t * This also ensure that we don't get 'text' elements, which would\n\t\t * become problematic later on.\n\t\t */\n\t\tconst actions = (this.$slots.default || []).filter((action) => this.getActionName(action))\n\n\t\t// Check that we have at least one action\n\t\tif (actions.length === 0) {\n\t\t\treturn\n\t\t}\n\n\t\t/**\n\t\t * Separate the actions into inline and menu actions\n\t\t */\n\n\t\t/**\n\t\t * @type {import('vue').VNode[]}\n\t\t */\n\t\tlet validInlineActions = actions.filter(this.isValidSingleAction)\n\t\tif (this.forceMenu && validInlineActions.length > 0 && this.inline > 0) {\n\t\t\tVue.util.warn('Specifying forceMenu will ignore any inline actions rendering.')\n\t\t\tvalidInlineActions = []\n\t\t}\n\t\t/**\n\t\t * @type {import('vue').VNode[]}\n\t\t */\n\t\tconst inlineActions = validInlineActions.slice(0, this.inline)\n\t\t/**\n\t\t * @type {import('vue').VNode[]}\n\t\t */\n\t\tconst menuActions = actions.filter((action) => !inlineActions.includes(action))\n\n\t\t/**\n\t\t * Determine what kind of menu we have.\n\t\t * It defines keyboard navigation and a11y.\n\t\t */\n\t\tif (this.forceSemanticType) {\n\t\t\tthis.actionsMenuSemanticType = this.forceSemanticType\n\t\t} else {\n\t\t\tconst textInputActions = ['NcActionInput', 'NcActionTextEditable']\n\t\t\tconst menuItemsActions = ['NcActionButton', 'NcActionButtonGroup', 'NcActionCheckbox', 'NcActionRadio']\n\t\t\tconst linkActions = ['NcActionLink', 'NcActionRouter']\n\n\t\t\tconst hasTextInputAction = menuActions.some((action) => textInputActions.includes(this.getActionName(action)))\n\t\t\tconst hasMenuItemAction = menuActions.some((action) => menuItemsActions.includes(this.getActionName(action)))\n\t\t\tconst hasLinkAction = menuActions.some((action) => linkActions.includes(this.getActionName(action)))\n\n\t\t\tif (hasTextInputAction) {\n\t\t\t\tthis.actionsMenuSemanticType = 'dialog'\n\t\t\t} else if (hasMenuItemAction) {\n\t\t\t\tthis.actionsMenuSemanticType = 'menu'\n\t\t\t} else if (hasLinkAction) {\n\t\t\t\tthis.actionsMenuSemanticType = 'expanded'\n\t\t\t} else {\n\t\t\t\t// (!) Hotfix (!)\n\t\t\t\t// In Vue 2 it is not easy to search for NcAction* in sub-component of a slot.\n\t\t\t\t// When a menu is rendered, children are not mounted yet.\n\t\t\t\t// If we have NcActions > MyActionsList > NcActionButton, only MyActionsList's vnode is available.\n\t\t\t\t// So when NcActions has actions as non-direct children, here then we don't know about them.\n\t\t\t\t// Like this menu has no buttons/links/inputs.\n\t\t\t\t// It makes the menu incorrectly considered a tooltip.\n\t\t\t\tconst ncActions = actions.filter((action) => this.getActionName(action).startsWith('NcAction'))\n\t\t\t\tif (ncActions.length === actions.length) {\n\t\t\t\t\t// True tooltip\n\t\t\t\t\tthis.actionsMenuSemanticType = 'tooltip'\n\t\t\t\t} else {\n\t\t\t\t\t// Custom components are passed to the NcActions\n\t\t\t\t\tthis.actionsMenuSemanticType = 'unknown'\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Render the provided action\n\t\t *\n\t\t * @param {import('vue').VNode} action the action to render\n\t\t * @return {Function} the vue render function\n\t\t */\n\t\tconst renderInlineAction = (action) => {\n\t\t\tconst iconProp = action?.componentOptions?.propsData?.icon\n\t\t\tconst icon = action?.data?.scopedSlots?.icon()?.[0] ?? (\n\t\t\t\tthis.isIconUrl(iconProp)\n\t\t\t\t\t? h('img', { class: 'action-item__menutoggle__icon', attrs: { src: iconProp, alt: '' } })\n\t\t\t\t\t: h('span', { class: ['icon', iconProp] })\n\t\t\t)\n\t\t\tconst attrs = action?.data?.attrs || {}\n\t\t\tconst clickListener = action?.componentOptions?.listeners?.click\n\n\t\t\tconst text = action?.componentOptions?.children?.[0]?.text?.trim?.()\n\t\t\tconst ariaLabel = action?.componentOptions?.propsData?.ariaLabel || text\n\t\t\tconst buttonText = this.forceName ? text : ''\n\n\t\t\tlet title = action?.componentOptions?.propsData?.title\n\t\t\t// Show a default title for single actions if none is present\n\t\t\tif (!(this.forceName || title)) {\n\t\t\t\ttitle = text\n\t\t\t}\n\n\t\t\tconst propsToForward = { ...(action?.componentOptions?.propsData ?? {}) }\n\t\t\tconst nativeType = ['submit', 'reset'].includes(propsToForward.type) ? propsToForward.modelValue : 'button'\n\t\t\t// not available on NcButton or with different meaning\n\t\t\tdelete propsToForward.modelValue\n\t\t\tdelete propsToForward.type\n\n\t\t\treturn h(\n\t\t\t\t'NcButton',\n\t\t\t\t{\n\t\t\t\t\tclass: [\n\t\t\t\t\t\t'action-item action-item--single',\n\t\t\t\t\t\taction?.data?.staticClass,\n\t\t\t\t\t\taction?.data?.class,\n\t\t\t\t\t],\n\t\t\t\t\tattrs: {\n\t\t\t\t\t\t...attrs,\n\t\t\t\t\t\t'aria-label': ariaLabel,\n\t\t\t\t\t\ttitle,\n\t\t\t\t\t},\n\t\t\t\t\tref: action?.data?.ref,\n\t\t\t\t\tprops: {\n\t\t\t\t\t\t...propsToForward,\n\t\t\t\t\t\tdisabled: this.disabled || action?.componentOptions?.propsData?.disabled,\n\t\t\t\t\t\tpressed: action?.componentOptions?.propsData?.modelValue,\n\t\t\t\t\t\ttype: nativeType,\n\t\t\t\t\t\t// If it has a menuName, we use a secondary button\n\t\t\t\t\t\tvariant: (this.type ?? this.variant) || (buttonText ? 'secondary' : 'tertiary'),\n\t\t\t\t\t},\n\t\t\t\t\ton: {\n\t\t\t\t\t\tfocus: this.onFocus,\n\t\t\t\t\t\tblur: this.onBlur,\n\t\t\t\t\t\t// forward any pressed state from NcButton just like NcActionButton does\n\t\t\t\t\t\t'update:pressed': action?.componentOptions?.listeners?.['update:modelValue'] ?? (() => {}),\n\t\t\t\t\t\t// If we have a click listener,\n\t\t\t\t\t\t// we bind it to execute on click and forward the click event\n\t\t\t\t\t\t...(!!clickListener && {\n\t\t\t\t\t\t\tclick: (event) => {\n\t\t\t\t\t\t\t\tif (clickListener) {\n\t\t\t\t\t\t\t\t\tclickListener(event)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t[\n\t\t\t\t\th('template', { slot: 'icon' }, [icon]),\n\t\t\t\t\tbuttonText,\n\t\t\t\t],\n\t\t\t)\n\t\t}\n\n\t\t/**\n\t\t * Render the actions popover\n\t\t *\n\t\t * @param {Array} actions the actions to render within\n\t\t * @return {Function} the vue render function\n\t\t */\n\t\tconst renderActionsPopover = (actions) => {\n\t\t\tconst triggerIcon = this.$slots.icon?.[0] || (\n\t\t\t\tthis.defaultIcon\n\t\t\t\t\t? h('span', { class: ['icon', this.defaultIcon] })\n\t\t\t\t\t: h(IconDotsHorizontal, {\n\t\t\t\t\t\t\tprops: {\n\t\t\t\t\t\t\t\tsize: 20,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t})\n\t\t\t)\n\t\t\treturn h(\n\t\t\t\t'NcPopover',\n\t\t\t\t{\n\t\t\t\t\tref: 'popover',\n\t\t\t\t\tprops: {\n\t\t\t\t\t\tdelay: 0,\n\t\t\t\t\t\thandleResize: true,\n\t\t\t\t\t\tshown: this.opened,\n\t\t\t\t\t\tplacement: this.placement,\n\t\t\t\t\t\tboundary: this.boundariesElement,\n\t\t\t\t\t\tcontainer: this.container,\n\t\t\t\t\t\tpopoverBaseClass: 'action-item__popper',\n\t\t\t\t\t\tpopupRole: this.config.popupRole,\n\t\t\t\t\t\tnoAutoReturnFocus: !this.withFocusTrap,\n\t\t\t\t\t\tfocusTrap: this.config.withFocusTrap,\n\t\t\t\t\t},\n\t\t\t\t\t// For some reason the popover component\n\t\t\t\t\t// does not react to props given under the 'props' key,\n\t\t\t\t\t// so we use both 'attrs' and 'props'\n\t\t\t\t\tattrs: {\n\t\t\t\t\t\tdelay: 0,\n\t\t\t\t\t\thandleResize: true,\n\t\t\t\t\t\tshown: this.opened,\n\t\t\t\t\t\tplacement: this.placement,\n\t\t\t\t\t\tboundary: this.boundariesElement,\n\t\t\t\t\t\tcontainer: this.container,\n\t\t\t\t\t\t...this.manualOpen && { triggers: [] },\n\t\t\t\t\t},\n\t\t\t\t\ton: {\n\t\t\t\t\t\tshow: this.openMenu,\n\t\t\t\t\t\t'after-show': this.onOpened,\n\t\t\t\t\t\thide: this.closeMenu,\n\t\t\t\t\t\t'after-hide': this.onClosed,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t[\n\t\t\t\t\th('NcButton', {\n\t\t\t\t\t\tclass: 'action-item__menutoggle',\n\t\t\t\t\t\tprops: {\n\t\t\t\t\t\t\tvariant: this.triggerButtonVariant,\n\t\t\t\t\t\t\tdisabled: this.disabled,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tslot: 'trigger',\n\t\t\t\t\t\tref: 'triggerButton',\n\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\tid: this.triggerRandomId,\n\t\t\t\t\t\t\t'aria-label': this.menuName ? null : this.ariaLabel,\n\t\t\t\t\t\t\t...this.config.triggerA11yAttr,\n\t\t\t\t\t\t},\n\t\t\t\t\t\ton: {\n\t\t\t\t\t\t\tfocus: this.onFocus,\n\t\t\t\t\t\t\tblur: this.onBlur,\n\t\t\t\t\t\t\tclick: this.onClick,\n\t\t\t\t\t\t\tkeydown: this.onTriggerKeydown,\n\t\t\t\t\t\t},\n\t\t\t\t\t}, [\n\t\t\t\t\t\th('template', { slot: 'icon' }, [triggerIcon]),\n\t\t\t\t\t\tthis.menuName,\n\t\t\t\t\t]),\n\t\t\t\t\th('div', {\n\t\t\t\t\t\tclass: {\n\t\t\t\t\t\t\topen: this.opened,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\ttabindex: '-1',\n\t\t\t\t\t\t\t...this.config.popoverContainerA11yAttrs,\n\t\t\t\t\t\t},\n\t\t\t\t\t\ton: {\n\t\t\t\t\t\t\tkeydown: this.onKeydown,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tref: 'menu',\n\t\t\t\t\t}, [\n\t\t\t\t\t\th('ul', {\n\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\ttabindex: '-1',\n\t\t\t\t\t\t\t\t...this.config.popoverUlA11yAttrs,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tref: 'menuList',\n\t\t\t\t\t\t}, [\n\t\t\t\t\t\t\tactions,\n\t\t\t\t\t\t]),\n\t\t\t\t\t]),\n\t\t\t\t],\n\t\t\t)\n\t\t}\n\n\t\t/**\n\t\t * If we have a single action only and didn't force a menu,\n\t\t * we render the action as a standalone button\n\t\t */\n\t\tif (actions.length === 1 && validInlineActions.length === 1 && !this.forceMenu) {\n\t\t\treturn renderInlineAction(actions[0])\n\t\t}\n\n\t\t// If we completely re-render the children\n\t\t// we need to focus the first action again\n\t\t// Mostly used when clicking a menu item\n\t\tthis.$nextTick(() => {\n\t\t\tif (this.opened && this.$refs.menu) {\n\t\t\t\tthis.resizePopover()\n\t\t\t\tconst isAnyActive = this.$refs.menu.querySelector('li.active') || []\n\t\t\t\tif (isAnyActive.length === 0) {\n\t\t\t\t\tthis.focusFirstAction()\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\t/**\n\t\t * If we some inline actions to render, render them, then the menu\n\t\t */\n\t\tif (inlineActions.length > 0 && this.inline > 0) {\n\t\t\treturn h(\n\t\t\t\t'div',\n\t\t\t\t{\n\t\t\t\t\tclass: [\n\t\t\t\t\t\t'action-items',\n\t\t\t\t\t\t`action-item--${this.triggerButtonVariant}`,\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t\t[\n\t\t\t\t\t// Render inline actions\n\t\t\t\t\t...inlineActions.map(renderInlineAction),\n\t\t\t\t\t// render the rest within the popover menu\n\t\t\t\t\tmenuActions.length > 0\n\t\t\t\t\t\t? h(\n\t\t\t\t\t\t\t\t'div',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tclass: [\n\t\t\t\t\t\t\t\t\t\t'action-item',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t'action-item--open': this.opened,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\trenderActionsPopover(menuActions),\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t: null,\n\t\t\t\t],\n\t\t\t)\n\t\t}\n\n\t\t/**\n\t\t * Otherwise, we render the actions in a popover\n\t\t */\n\t\treturn h(\n\t\t\t'div',\n\t\t\t{\n\t\t\t\tclass: [\n\t\t\t\t\t'action-item action-item--default-popover',\n\t\t\t\t\t`action-item--${this.triggerButtonVariant}`,\n\t\t\t\t\t{\n\t\t\t\t\t\t'action-item--open': this.opened,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t[\n\t\t\t\trenderActionsPopover(actions),\n\t\t\t],\n\t\t)\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// Inline buttons\n.action-items {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: calc($icon-margin / 2);\n}\n\n.action-item {\n\t--open-background-color: var(--color-background-hover, $action-background-hover);\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t&.action-item--primary {\n\t\t--open-background-color: var(--color-primary-element-hover);\n\t}\n\n\t&.action-item--secondary {\n\t\t--open-background-color: var(--color-primary-element-light-hover);\n\t}\n\n\t&.action-item--error {\n\t\t--open-background-color: var(--color-error-hover);\n\t}\n\n\t&.action-item--warning {\n\t\t--open-background-color: var(--color-warning-hover);\n\t}\n\n\t&.action-item--success {\n\t\t--open-background-color: var(--color-success-hover);\n\t}\n\n\t&.action-item--tertiary-no-background {\n\t\t--open-background-color: transparent;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\tbackground-color: var(--open-background-color);\n\t}\n\n\t&__menutoggle__icon {\n\t\twidth: 20px;\n\t\theight: 20px;\n\t\tobject-fit: contain;\n\t}\n}\n</style>\n\n<style lang=\"scss\">\n// We overwrote the popover base class, so we can style\n// the popover__inner for actions only.\n.v-popper--theme-nc-popover-8.v-popper__popper.action-item__popper .v-popper__wrapper {\n\tborder-radius: var(--border-radius-large);\n\n\t.v-popper__inner {\n\t\tborder-radius: var(--border-radius-large);\n\t\tpadding: 4px;\n\t\tmax-height: calc(100vh - var(--header-height));\n\t\toverflow: auto;\n\t}\n}\n</style>\n"],"names":["_sfc_main","NcButton","NcPopover","computed","t","GenRandomId","useTrapStackControl","Vue","actions","IconDotsHorizontal"],"mappings":"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","x_google_ignoreList":[0]}