@nextcloud/vue 8.0.0-beta.9 → 8.0.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 (283) hide show
  1. package/CHANGELOG.md +39 -2
  2. package/dist/Components/NcActionButton.cjs +23 -12
  3. package/dist/Components/NcActionButton.cjs.map +1 -1
  4. package/dist/Components/NcActionButton.mjs +21 -9
  5. package/dist/Components/NcActionButton.mjs.map +1 -1
  6. package/dist/Components/NcActionInput.cjs +1 -1
  7. package/dist/Components/NcActionInput.mjs +1 -1
  8. package/dist/Components/NcActionLink.cjs +1 -1
  9. package/dist/Components/NcActionLink.mjs +1 -1
  10. package/dist/Components/NcActionRouter.cjs +1 -1
  11. package/dist/Components/NcActionRouter.mjs +1 -1
  12. package/dist/Components/NcActionText.cjs +1 -1
  13. package/dist/Components/NcActionText.mjs +1 -1
  14. package/dist/Components/NcActionTextEditable.cjs +10 -10
  15. package/dist/Components/NcActionTextEditable.cjs.map +1 -1
  16. package/dist/Components/NcActionTextEditable.mjs +1 -1
  17. package/dist/Components/NcActions.cjs +55 -52
  18. package/dist/Components/NcActions.cjs.map +1 -1
  19. package/dist/Components/NcActions.mjs +44 -41
  20. package/dist/Components/NcActions.mjs.map +1 -1
  21. package/dist/Components/NcAppContent.cjs +19 -20
  22. package/dist/Components/NcAppContent.cjs.map +1 -1
  23. package/dist/Components/NcAppContent.mjs +8 -8
  24. package/dist/Components/NcAppContent.mjs.map +1 -1
  25. package/dist/Components/NcAppNavigation.cjs +58 -27
  26. package/dist/Components/NcAppNavigation.cjs.map +1 -1
  27. package/dist/Components/NcAppNavigation.mjs +67 -34
  28. package/dist/Components/NcAppNavigation.mjs.map +1 -1
  29. package/dist/Components/NcAppNavigationItem.cjs +166 -62
  30. package/dist/Components/NcAppNavigationItem.cjs.map +1 -1
  31. package/dist/Components/NcAppNavigationItem.mjs +145 -43
  32. package/dist/Components/NcAppNavigationItem.mjs.map +1 -1
  33. package/dist/Components/NcAppNavigationNew.cjs +6 -6
  34. package/dist/Components/NcAppNavigationNew.cjs.map +1 -1
  35. package/dist/Components/NcAppNavigationNew.mjs +17 -17
  36. package/dist/Components/NcAppNavigationNew.mjs.map +1 -1
  37. package/dist/Components/NcAppNavigationNewItem.cjs +7 -7
  38. package/dist/Components/NcAppNavigationNewItem.cjs.map +1 -1
  39. package/dist/Components/NcAppNavigationNewItem.mjs +5 -5
  40. package/dist/Components/NcAppNavigationNewItem.mjs.map +1 -1
  41. package/dist/Components/NcAppNavigationSettings.cjs +46 -14
  42. package/dist/Components/NcAppNavigationSettings.cjs.map +1 -1
  43. package/dist/Components/NcAppNavigationSettings.mjs +48 -16
  44. package/dist/Components/NcAppNavigationSettings.mjs.map +1 -1
  45. package/dist/Components/NcAppNavigationToggle.cjs +1 -1
  46. package/dist/Components/NcAppNavigationToggle.mjs +1 -1
  47. package/dist/Components/NcAppSettingsDialog.cjs +75 -54
  48. package/dist/Components/NcAppSettingsDialog.cjs.map +1 -1
  49. package/dist/Components/NcAppSettingsDialog.mjs +79 -57
  50. package/dist/Components/NcAppSettingsDialog.mjs.map +1 -1
  51. package/dist/Components/NcAppSettingsSection.cjs +29 -10
  52. package/dist/Components/NcAppSettingsSection.cjs.map +1 -1
  53. package/dist/Components/NcAppSettingsSection.mjs +29 -10
  54. package/dist/Components/NcAppSettingsSection.mjs.map +1 -1
  55. package/dist/Components/NcAppSidebar.cjs +99 -33
  56. package/dist/Components/NcAppSidebar.cjs.map +1 -1
  57. package/dist/Components/NcAppSidebar.mjs +156 -92
  58. package/dist/Components/NcAppSidebar.mjs.map +1 -1
  59. package/dist/Components/NcAppSidebarTab.cjs +7 -7
  60. package/dist/Components/NcAppSidebarTab.cjs.map +1 -1
  61. package/dist/Components/NcAppSidebarTab.mjs +6 -6
  62. package/dist/Components/NcAppSidebarTab.mjs.map +1 -1
  63. package/dist/Components/NcAvatar.cjs +1 -1
  64. package/dist/Components/NcAvatar.mjs +1 -1
  65. package/dist/Components/NcBreadcrumb.cjs +10 -10
  66. package/dist/Components/NcBreadcrumb.cjs.map +1 -1
  67. package/dist/Components/NcBreadcrumb.mjs +1 -1
  68. package/dist/Components/NcBreadcrumbs.cjs +85 -53
  69. package/dist/Components/NcBreadcrumbs.cjs.map +1 -1
  70. package/dist/Components/NcBreadcrumbs.mjs +91 -60
  71. package/dist/Components/NcBreadcrumbs.mjs.map +1 -1
  72. package/dist/Components/NcButton.cjs +25 -25
  73. package/dist/Components/NcButton.cjs.map +1 -1
  74. package/dist/Components/NcButton.mjs +25 -25
  75. package/dist/Components/NcButton.mjs.map +1 -1
  76. package/dist/Components/NcCheckboxRadioSwitch.cjs +298 -67
  77. package/dist/Components/NcCheckboxRadioSwitch.cjs.map +1 -1
  78. package/dist/Components/NcCheckboxRadioSwitch.mjs +300 -75
  79. package/dist/Components/NcCheckboxRadioSwitch.mjs.map +1 -1
  80. package/dist/Components/NcColorPicker.cjs +18 -18
  81. package/dist/Components/NcColorPicker.cjs.map +1 -1
  82. package/dist/Components/NcColorPicker.mjs +17 -17
  83. package/dist/Components/NcColorPicker.mjs.map +1 -1
  84. package/dist/Components/NcDashboardWidget.cjs +30 -30
  85. package/dist/Components/NcDashboardWidget.cjs.map +1 -1
  86. package/dist/Components/NcDashboardWidget.mjs +3 -3
  87. package/dist/Components/NcDashboardWidgetItem.cjs +1 -1
  88. package/dist/Components/NcDashboardWidgetItem.mjs +1 -1
  89. package/dist/Components/NcDateTime.cjs +1 -1
  90. package/dist/Components/NcDateTime.mjs +1 -1
  91. package/dist/Components/NcDateTimePicker.cjs +109 -44
  92. package/dist/Components/NcDateTimePicker.cjs.map +1 -1
  93. package/dist/Components/NcDateTimePicker.mjs +115 -52
  94. package/dist/Components/NcDateTimePicker.mjs.map +1 -1
  95. package/dist/Components/NcDateTimePickerNative.cjs +1 -1
  96. package/dist/Components/NcDateTimePickerNative.mjs +1 -1
  97. package/dist/Components/NcDialogButton.cjs +11 -11
  98. package/dist/Components/NcDialogButton.cjs.map +1 -1
  99. package/dist/Components/NcDialogButton.mjs +14 -14
  100. package/dist/Components/NcDialogButton.mjs.map +1 -1
  101. package/dist/Components/NcEmojiPicker.cjs +1 -1
  102. package/dist/Components/NcEmojiPicker.mjs +1 -1
  103. package/dist/Components/NcEmptyContent.cjs +14 -14
  104. package/dist/Components/NcEmptyContent.cjs.map +1 -1
  105. package/dist/Components/NcEmptyContent.mjs +7 -7
  106. package/dist/Components/NcEmptyContent.mjs.map +1 -1
  107. package/dist/Components/NcInputField.cjs +16 -16
  108. package/dist/Components/NcInputField.cjs.map +1 -1
  109. package/dist/Components/NcInputField.mjs +5 -5
  110. package/dist/Components/NcInputField.mjs.map +1 -1
  111. package/dist/Components/NcListItem.cjs +1 -1
  112. package/dist/Components/NcListItem.mjs +1 -1
  113. package/dist/Components/NcListItemIcon.cjs +1 -1
  114. package/dist/Components/NcListItemIcon.mjs +1 -1
  115. package/dist/Components/NcModal.cjs +164 -67
  116. package/dist/Components/NcModal.cjs.map +1 -1
  117. package/dist/Components/NcModal.mjs +126 -32
  118. package/dist/Components/NcModal.mjs.map +1 -1
  119. package/dist/Components/NcNoteCard.cjs +146 -18
  120. package/dist/Components/NcNoteCard.cjs.map +1 -1
  121. package/dist/Components/NcNoteCard.mjs +146 -21
  122. package/dist/Components/NcNoteCard.mjs.map +1 -1
  123. package/dist/Components/NcPasswordField.cjs +84 -20
  124. package/dist/Components/NcPasswordField.cjs.map +1 -1
  125. package/dist/Components/NcPasswordField.mjs +104 -42
  126. package/dist/Components/NcPasswordField.mjs.map +1 -1
  127. package/dist/Components/NcRelatedResourcesPanel.cjs +48 -31
  128. package/dist/Components/NcRelatedResourcesPanel.cjs.map +1 -1
  129. package/dist/Components/NcRelatedResourcesPanel.mjs +31 -14
  130. package/dist/Components/NcRelatedResourcesPanel.mjs.map +1 -1
  131. package/dist/Components/NcRichContenteditable.cjs +22 -18
  132. package/dist/Components/NcRichContenteditable.cjs.map +1 -1
  133. package/dist/Components/NcRichContenteditable.mjs +32 -28
  134. package/dist/Components/NcRichContenteditable.mjs.map +1 -1
  135. package/dist/Components/NcRichText.cjs +1 -1
  136. package/dist/Components/NcRichText.mjs +3 -3
  137. package/dist/Components/NcSelect.cjs +80 -57
  138. package/dist/Components/NcSelect.cjs.map +1 -1
  139. package/dist/Components/NcSelect.mjs +75 -50
  140. package/dist/Components/NcSelect.mjs.map +1 -1
  141. package/dist/Components/NcSelectTags.cjs +2 -2
  142. package/dist/Components/NcSelectTags.cjs.map +1 -1
  143. package/dist/Components/NcSelectTags.mjs +4 -4
  144. package/dist/Components/NcSelectTags.mjs.map +1 -1
  145. package/dist/Components/NcSettingsInputText.cjs +1 -1
  146. package/dist/Components/NcSettingsInputText.mjs +1 -1
  147. package/dist/Components/NcSettingsSection.cjs +46 -14
  148. package/dist/Components/NcSettingsSection.cjs.map +1 -1
  149. package/dist/Components/NcSettingsSection.mjs +44 -12
  150. package/dist/Components/NcSettingsSection.mjs.map +1 -1
  151. package/dist/Components/NcSettingsSelectGroup.cjs +1 -1
  152. package/dist/Components/NcSettingsSelectGroup.mjs +1 -1
  153. package/dist/Components/NcTextArea.cjs +14 -14
  154. package/dist/Components/NcTextArea.cjs.map +1 -1
  155. package/dist/Components/NcTextArea.mjs +6 -6
  156. package/dist/Components/NcTextArea.mjs.map +1 -1
  157. package/dist/Components/NcTextField.cjs +51 -19
  158. package/dist/Components/NcTextField.cjs.map +1 -1
  159. package/dist/Components/NcTextField.mjs +59 -28
  160. package/dist/Components/NcTextField.mjs.map +1 -1
  161. package/dist/Components/NcTimezonePicker.cjs +26 -19
  162. package/dist/Components/NcTimezonePicker.cjs.map +1 -1
  163. package/dist/Components/NcTimezonePicker.mjs +31 -23
  164. package/dist/Components/NcTimezonePicker.mjs.map +1 -1
  165. package/dist/Components/NcUserBubble.cjs +24 -20
  166. package/dist/Components/NcUserBubble.cjs.map +1 -1
  167. package/dist/Components/NcUserBubble.mjs +25 -20
  168. package/dist/Components/NcUserBubble.mjs.map +1 -1
  169. package/dist/assets/{NcAppNavigationToggle-2cc5b864.css → NcAppNavigationToggle-9e170630.css} +3 -2
  170. package/dist/assets/{NcInputConfirmCancel-2ba60a52.css → NcInputConfirmCancel-45d1d76b.css} +7 -7
  171. package/dist/assets/{index-af72a30b.css → index-05760fea.css} +5 -1
  172. package/dist/assets/{index-30e099f7.css → index-0ac09203.css} +3 -3
  173. package/dist/assets/{index-eea65531.css → index-0e9b11c7.css} +20 -16
  174. package/dist/assets/{index-1151d229.css → index-1f25a3c0.css} +3 -3
  175. package/dist/assets/{index-9dcf6260.css → index-2e5e3b55.css} +30 -30
  176. package/dist/assets/{index-ed4adf1d.css → index-4271da53.css} +18 -17
  177. package/dist/assets/{index-4b75fe20.css → index-55600948.css} +11 -11
  178. package/dist/assets/{index-236620b0.css → index-6899d75b.css} +29 -29
  179. package/dist/assets/{index-1beccc92.css → index-750c02cc.css} +28 -10
  180. package/dist/assets/{index-9e9587e1.css → index-77a548be.css} +4 -4
  181. package/dist/assets/{index-c5ae3bc4.css → index-7d211db9.css} +11 -11
  182. package/dist/assets/{index-8304db49.css → index-802d2118.css} +5 -1
  183. package/dist/assets/{index-a2d55f92.css → index-9176105d.css} +41 -41
  184. package/dist/assets/index-93bc89ef.css +197 -0
  185. package/dist/assets/{index-50b0766d.css → index-a0532427.css} +55 -70
  186. package/dist/assets/{index-e828b286.css → index-ab715d82.css} +4 -4
  187. package/dist/assets/{index-9e44e336.css → index-c221fe05.css} +9 -9
  188. package/dist/assets/{index-c6f0da2e.css → index-c239a2fc.css} +14 -8
  189. package/dist/assets/{index-73867d38.css → index-d3702c91.css} +5 -1
  190. package/dist/assets/{index-c06ad941.css → index-d5716ef0.css} +43 -40
  191. package/dist/assets/{index-4a775ba1.css → index-d812ed9e.css} +43 -43
  192. package/dist/assets/{index-793eae6b.css → index-d9ae9479.css} +6 -6
  193. package/dist/assets/{index-f85aa003.css → index-db5a8b1c.css} +22 -10
  194. package/dist/assets/{index-574438d6.css → index-e1a7aa6f.css} +10 -10
  195. package/dist/assets/{index-0adc989c.css → index-ebbb7829.css} +9 -13
  196. package/dist/chunks/AlertCircleOutline-7085c10f.cjs +35 -0
  197. package/dist/chunks/AlertCircleOutline-7085c10f.cjs.map +1 -0
  198. package/dist/chunks/AlertCircleOutline-b73838e0.mjs +37 -0
  199. package/dist/chunks/AlertCircleOutline-b73838e0.mjs.map +1 -0
  200. package/dist/chunks/ArrowLeft-2f9b9323.cjs +35 -0
  201. package/dist/chunks/ArrowLeft-2f9b9323.cjs.map +1 -0
  202. package/dist/chunks/ArrowLeft-3779ba88.mjs +37 -0
  203. package/dist/chunks/ArrowLeft-3779ba88.mjs.map +1 -0
  204. package/dist/chunks/ArrowRight-7315f6c1.cjs +35 -0
  205. package/dist/chunks/ArrowRight-7315f6c1.cjs.map +1 -0
  206. package/dist/chunks/ArrowRight-74a9fcb2.mjs +37 -0
  207. package/dist/chunks/ArrowRight-74a9fcb2.mjs.map +1 -0
  208. package/dist/chunks/Check-2ea0a88a.mjs +37 -0
  209. package/dist/chunks/Check-2ea0a88a.mjs.map +1 -0
  210. package/dist/chunks/Check-be8cd6af.cjs +35 -0
  211. package/dist/chunks/Check-be8cd6af.cjs.map +1 -0
  212. package/dist/chunks/ChevronDown-a72d365d.mjs +37 -0
  213. package/dist/chunks/ChevronDown-a72d365d.mjs.map +1 -0
  214. package/dist/chunks/ChevronDown-dc32e51d.cjs +35 -0
  215. package/dist/chunks/ChevronDown-dc32e51d.cjs.map +1 -0
  216. package/dist/chunks/ChevronRight-1a6a6cf2.mjs +37 -0
  217. package/dist/chunks/ChevronRight-1a6a6cf2.mjs.map +1 -0
  218. package/dist/chunks/ChevronRight-a4c1e0d3.cjs +35 -0
  219. package/dist/chunks/ChevronRight-a4c1e0d3.cjs.map +1 -0
  220. package/dist/chunks/Close-271f72e2.mjs +37 -0
  221. package/dist/chunks/Close-271f72e2.mjs.map +1 -0
  222. package/dist/chunks/Close-98cb6f12.cjs +35 -0
  223. package/dist/chunks/Close-98cb6f12.cjs.map +1 -0
  224. package/dist/chunks/DotsHorizontal-0ee7d901.mjs +37 -0
  225. package/dist/chunks/DotsHorizontal-0ee7d901.mjs.map +1 -0
  226. package/dist/chunks/DotsHorizontal-ac96129a.cjs +35 -0
  227. package/dist/chunks/DotsHorizontal-ac96129a.cjs.map +1 -0
  228. package/dist/chunks/NcAppNavigationToggle-364eb664.cjs +113 -0
  229. package/dist/chunks/NcAppNavigationToggle-364eb664.cjs.map +1 -0
  230. package/dist/chunks/NcAppNavigationToggle-cd2ef112.mjs +118 -0
  231. package/dist/chunks/NcAppNavigationToggle-cd2ef112.mjs.map +1 -0
  232. package/dist/chunks/{NcInputConfirmCancel-44052477.mjs → NcInputConfirmCancel-304f0b74.mjs} +11 -11
  233. package/dist/chunks/{NcInputConfirmCancel-6bea0fdc.cjs.map → NcInputConfirmCancel-304f0b74.mjs.map} +1 -1
  234. package/dist/chunks/NcInputConfirmCancel-c873bb9b.cjs +90 -0
  235. package/dist/chunks/{NcInputConfirmCancel-44052477.mjs.map → NcInputConfirmCancel-c873bb9b.cjs.map} +1 -1
  236. package/dist/chunks/{NcRichText-8fda53c8.mjs → NcRichText-25edeb8e.mjs} +1 -1
  237. package/dist/chunks/{NcRichText-8fda53c8.mjs.map → NcRichText-25edeb8e.mjs.map} +1 -1
  238. package/dist/chunks/{NcRichText-332fe454.cjs → NcRichText-dcb4fb97.cjs} +1 -1
  239. package/dist/chunks/{NcRichText-332fe454.cjs.map → NcRichText-dcb4fb97.cjs.map} +1 -1
  240. package/dist/chunks/{NcSettingsSelectGroup-a5ff8c36.cjs → NcSettingsSelectGroup-d639533d.cjs} +1 -1
  241. package/dist/chunks/{NcSettingsSelectGroup-a5ff8c36.cjs.map → NcSettingsSelectGroup-d639533d.cjs.map} +1 -1
  242. package/dist/chunks/{NcSettingsSelectGroup-fdd3309c.mjs → NcSettingsSelectGroup-fd91d31a.mjs} +2 -2
  243. package/dist/chunks/{NcSettingsSelectGroup-fdd3309c.mjs.map → NcSettingsSelectGroup-fd91d31a.mjs.map} +1 -1
  244. package/dist/chunks/{ScopeComponent-9519afcc.mjs → ScopeComponent-5b9e60d8.mjs} +3 -3
  245. package/dist/chunks/{ScopeComponent-9519afcc.mjs.map → ScopeComponent-5b9e60d8.mjs.map} +1 -1
  246. package/dist/chunks/{ScopeComponent-e060526a.cjs → ScopeComponent-dfa5ec75.cjs} +1 -1
  247. package/dist/chunks/{ScopeComponent-e060526a.cjs.map → ScopeComponent-dfa5ec75.cjs.map} +1 -1
  248. package/dist/chunks/{index-032137a6.cjs → index-343ecbe5.cjs} +56 -47
  249. package/dist/chunks/index-343ecbe5.cjs.map +1 -0
  250. package/dist/chunks/{index-fb2ee22c.mjs → index-a01ff595.mjs} +93 -84
  251. package/dist/chunks/index-a01ff595.mjs.map +1 -0
  252. package/dist/chunks/{l10n-c7bd0ea6.cjs → l10n-9321b50d.cjs} +1 -1
  253. package/dist/chunks/{l10n-c7bd0ea6.cjs.map → l10n-9321b50d.cjs.map} +1 -1
  254. package/dist/chunks/l10n-9f3afaf5.cjs +29 -0
  255. package/dist/chunks/l10n-9f3afaf5.cjs.map +1 -0
  256. package/dist/chunks/l10n-b6d21146.mjs +31 -0
  257. package/dist/chunks/l10n-b6d21146.mjs.map +1 -0
  258. package/dist/chunks/{l10n-9aa6482d.mjs → l10n-bef4ea85.mjs} +1 -1
  259. package/dist/chunks/{l10n-9aa6482d.mjs.map → l10n-bef4ea85.mjs.map} +1 -1
  260. package/dist/chunks/{referencePickerModal-443a4c57.mjs → referencePickerModal-58498cac.mjs} +156 -124
  261. package/dist/chunks/referencePickerModal-58498cac.mjs.map +1 -0
  262. package/dist/chunks/{referencePickerModal-279a483d.cjs → referencePickerModal-a739a17b.cjs} +144 -111
  263. package/dist/chunks/referencePickerModal-a739a17b.cjs.map +1 -0
  264. package/dist/index.cjs +4 -8
  265. package/dist/index.cjs.map +1 -1
  266. package/dist/index.mjs +26 -30
  267. package/dist/index.mjs.map +1 -1
  268. package/dist/vendor.LICENSE.txt +5 -1
  269. package/package.json +3 -3
  270. package/dist/assets/index-d646553d.css +0 -41
  271. package/dist/chunks/NcAppNavigationToggle-841d3015.cjs +0 -49
  272. package/dist/chunks/NcAppNavigationToggle-841d3015.cjs.map +0 -1
  273. package/dist/chunks/NcAppNavigationToggle-e358aa47.mjs +0 -55
  274. package/dist/chunks/NcAppNavigationToggle-e358aa47.mjs.map +0 -1
  275. package/dist/chunks/NcInputConfirmCancel-6bea0fdc.cjs +0 -90
  276. package/dist/chunks/index-032137a6.cjs.map +0 -1
  277. package/dist/chunks/index-fb2ee22c.mjs.map +0 -1
  278. package/dist/chunks/l10n-05a09c66.mjs +0 -31
  279. package/dist/chunks/l10n-05a09c66.mjs.map +0 -1
  280. package/dist/chunks/l10n-b1d264c7.cjs +0 -29
  281. package/dist/chunks/l10n-b1d264c7.cjs.map +0 -1
  282. package/dist/chunks/referencePickerModal-279a483d.cjs.map +0 -1
  283. package/dist/chunks/referencePickerModal-443a4c57.mjs.map +0 -1
package/CHANGELOG.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
- ## v8 **Unreleased** (beta)
6
- [Full Changelog](https://github.com/nextcloud-libraries/nextcloud-vue/compare/v7.11.2...v8.0.0-beta.6)
5
+ ## [v8.0.0](https://github.com/nextcloud-libraries/nextcloud-vue/tree/v8.0.0) (2023-11-08)
6
+ [Full Changelog](https://github.com/nextcloud-libraries/nextcloud-vue/compare/v7.11.2...v8.0.0)
7
7
 
8
8
  ### :boom: Breaking changes
9
9
  - Update node engines to next LTS (node 20 / npm 9)
@@ -28,6 +28,8 @@ All notable changes to this project will be documented in this file.
28
28
  - feat(NcIconSvgWrapper)!: remove ID from svg [\#4607](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4607) ([ShGKme](https://github.com/ShGKme))
29
29
 
30
30
  ### :rocket: Enhancements
31
+ - feat(NcAppSettingsDialog): Allow to add icons to the navigation sections [\#4745](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4745) ([susnux](https://github.com/susnux))
32
+ - feat(NcButton): Allow to format text of button [\#4367](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4367) ([susnux](https://github.com/susnux))
31
33
  - enh\(NcDatetime\): New component for displaying timestamps as time relative from now [\#4219](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4219) ([susnux](https://github.com/susnux))
32
34
  - feat\(NcInputField\): Append custom aria-describedby to input field [\#4225](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4225) ([Pytal](https://github.com/Pytal))
33
35
  - feat\(NcNoteCard\): Add new 'info' version to display informational messaged [\#4063](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4063) ([moan0s](https://github.com/moan0s))
@@ -55,6 +57,12 @@ All notable changes to this project will be documented in this file.
55
57
  - enh(NcAppSidebarTabs): Make tab navigation accessible [\#4663](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4663) ([Pytal](https://github.com/Pytal))
56
58
  - Add the resource type on RelatedResourcesPanel [\#4662](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4662) ([GretaD](https://github.com/GretaD))
57
59
  - feat(NcTextArea): implement new textarea component [\#4605](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4605) ([st3iny](https://github.com/st3iny))
60
+ - Add header prop to NcRelatedResourcesPanel [\#4703](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4703) ([GretaD](https://github.com/GretaD)
61
+ - feat(NcAppNavigationItem): Add `active` property to set active state & use `aria-current` [\#4716](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4716) ([susnux](https://github.com/susnux)
62
+ - feat(NcActionButton): support menu styling [\#4724](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4724) ([skjnldsv](https://github.com/skjnldsv)
63
+ - Made description dynamic on related resources [\#4729](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4729) ([GretaD](https://github.com/GretaD)
64
+ - fix(NcTimezonePicker): Allow to set ID of inner select component [\#4734](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4734) ([susnux](https://github.com/susnux)
65
+ - Allow preventing link insertion in RichContentEditable [\#3890](https://github.com/nextcloud-libraries/nextcloud-vue/pull/3890) ([julien-nc](https://github.com/julien-nc)
58
66
 
59
67
  ### :bug: Fixed bugs
60
68
  - fix\(NcSettingsSelectGroup\): Migrate from deprecated `NcMultiselect` to `NcSelect` [\#4120](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4120) ([susnux](https://github.com/susnux))
@@ -150,6 +158,35 @@ All notable changes to this project will be documented in this file.
150
158
  - fix(NcDialog): NcModal registration [\#4682](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4682) ([Pytal](https://github.com/Pytal))
151
159
  - fix: remove empty attributes values [\#4686](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4686) ([ShGKme](https://github.com/ShGKme))
152
160
  - fix(dialog): fix component registration [\#4685](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4685) ([ShGKme](https://github.com/ShGKme))
161
+ - fix(NcCheckboxRadioSwitch): fix circular import [\#4691](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4691) ([raimund-schluessler](https://github.com/raimund-schluessler)
162
+ - fix(NcCheckboxRadioSwitch): forward indeterminate prop [\#4690](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4690) ([raimund-schluessler](https://github.com/raimund-schluessler)
163
+ - Change heading in EmptyContent to `span` [\#4702](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4702) ([JuliaKirschenheuter](https://github.com/JuliaKirschenheuter)
164
+ - fix(NcRelatedResourcesPanel): t is not defined [\#4705](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4705) ([raimund-schluessler](https://github.com/raimund-schluessler)
165
+ - fix(NcAppNavigationItem): Do not include `aria-expanded` attribute if there are no children [\#4715](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4715) ([susnux](https://github.com/susnux)
166
+ - fix(NcDialog): register components in NcDialogButton [\#4725](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4725) ([ShGKme](https://github.com/ShGKme)
167
+ - fix(NcActions): Detect navigation menu links correctly [\#4707](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4707) ([Pytal](https://github.com/Pytal)
168
+ - fix(NcSelect): Ensure selected option has enough contrast when the menu is opened [\#4733](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4733) ([susnux](https://github.com/susnux)
169
+ - fix(NcEmptyContent): Fix regression that changed the color of the description text [\#4735](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4735) ([susnux](https://github.com/susnux)
170
+ - fix(NcAppContent): Set normal scrollbar width on resizeable NcAppContentList [\#4710](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4710) ([mejo-](https://github.com/mejo-)
171
+ - fix(NcAvatar): Improve initials generation to filter out special characters [\#4737](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4737) ([susnux](https://github.com/susnux)
172
+ - fix(NcAvatar): remove alt attr from span[role=img] [\#4748](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4748) ([ShGKme](https://github.com/ShGKme)
173
+ - fix(NcSidebarTab): Ensure there is an `aria-label` if the `aria-labelledby` element does not exist [\#4736](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4736) ([susnux](https://github.com/susnux)
174
+ - add scoped to all ncappnavigation components [\#4730](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4730) ([szaimen](https://github.com/szaimen)
175
+ - Create outline for `focus-within` on RadioSwitch [\#4699](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4699) ([JuliaKirschenheuter](https://github.com/JuliaKirschenheuter)
176
+ - fix: NcUserBubble properties [\#4743](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4743) ([susnux](https://github.com/susnux)
177
+ - fix(NcUserBubble): only forward necessary props [\#4756](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4756) ([raimund-schluessler](https://github.com/raimund-schluessler)
178
+ - fix(NcInputField): Bring input field height to 44px and fixes its focus feedback [\#4718](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4718) ([marcoambrosini](https://github.com/marcoambrosini)
179
+ - fix(NcTimezonePicker): Add correct `aria-label` [\#4762](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4762) ([susnux](https://github.com/susnux)
180
+ - Fix input field trailing button alignment [\#4770](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4770) ([marcoambrosini](https://github.com/marcoambrosini)
181
+ - fix(NcSelectTags): Allow object type value [\#4771](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4771) ([Pytal](https://github.com/Pytal)
182
+ - fix(NcAppNavigation): Ensure `--app-navigation-padding` is set also on app-content [\#4776](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4776) ([susnux](https://github.com/susnux)
183
+ - fix(NcAppNavigation): add focus trap on mobile and improve a11y [\#4633](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4633) ([ShGKme](https://github.com/ShGKme)
184
+ - fix(NcAppNavigation): small screen support [\#4767](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4767) ([ShGKme](https://github.com/ShGKme)
185
+ ### Other Changes
186
+ - Updates for project Nextcloud vue library [\#4757](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4757) ([transifex-integration](https://github.com/transifex-integration)
187
+ - Change styles for focused Select [\#4728](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4728) ([JuliaKirschenheuter](https://github.com/JuliaKirschenheuter)
188
+ - feat(NcActions): focus the first action again if no action have a focus after render [\#4775](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4775) ([skjnldsv](https://github.com/skjnldsv)
189
+ - fix(NcAppNavigation): remove background square connecting toggle and navigation [\#4779](https://github.com/nextcloud-libraries/nextcloud-vue/pull/4779) ([ShGKme](https://github.com/ShGKme)
153
190
 
154
191
  ## [v7.11.2](https://github.com/nextcloud-libraries/nextcloud-vue/tree/v7.11.2) (2023-05-05)
155
192
 
@@ -1,8 +1,11 @@
1
- var r = require("../assets/index-eea65531.css");
2
- const a = require("../chunks/actionText-54bc24a6.cjs"), s = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
- const e = {
1
+ var u = require("../assets/index-0e9b11c7.css");
2
+ const e = require("../chunks/ChevronRight-a4c1e0d3.cjs"), o = require("../chunks/actionText-54bc24a6.cjs"), s = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
+ const a = {
4
4
  name: "NcActionButton",
5
- mixins: [a.ActionTextMixin],
5
+ components: {
6
+ ChevronRightIcon: e.ChevronRight
7
+ },
8
+ mixins: [o.ActionTextMixin],
6
9
  props: {
7
10
  /**
8
11
  * disabled state of the action button
@@ -17,6 +20,14 @@ const e = {
17
20
  ariaHidden: {
18
21
  type: Boolean,
19
22
  default: null
23
+ },
24
+ /**
25
+ * If this is a menu, a chevron icon will
26
+ * be added at the end of the line
27
+ */
28
+ isMenu: {
29
+ type: Boolean,
30
+ default: !1
20
31
  }
21
32
  },
22
33
  computed: {
@@ -30,20 +41,20 @@ const e = {
30
41
  }
31
42
  }
32
43
  };
33
- var o = function() {
44
+ var i = function() {
34
45
  var t = this, n = t._self._c;
35
46
  return n("li", { staticClass: "action", class: { "action--disabled": t.disabled } }, [n("button", { staticClass: "action-button", class: { focusable: t.isFocusable }, attrs: { "aria-label": t.ariaLabel, title: t.title, role: "menuitem", type: "button" }, on: { click: t.onClick } }, [t._t("icon", function() {
36
47
  return [n("span", { staticClass: "action-button__icon", class: [t.isIconUrl ? "action-button__icon--url" : t.icon], style: { backgroundImage: t.isIconUrl ? `url(${t.icon})` : null }, attrs: { "aria-hidden": t.ariaHidden } })];
37
- }), t.name ? n("span", { staticClass: "action-button__longtext-wrapper" }, [n("strong", { staticClass: "action-button__name" }, [t._v(" " + t._s(t.name) + " ")]), n("br"), n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } })]) : t.isLongText ? n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } }) : n("span", { staticClass: "action-button__text" }, [t._v(t._s(t.text))]), t._e()], 2)]);
38
- }, i = [], c = /* @__PURE__ */ s.normalizeComponent(
39
- e,
40
- o,
48
+ }), t.name ? n("span", { staticClass: "action-button__longtext-wrapper" }, [n("strong", { staticClass: "action-button__name" }, [t._v(" " + t._s(t.name) + " ")]), n("br"), n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } })]) : t.isLongText ? n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } }) : n("span", { staticClass: "action-button__text" }, [t._v(t._s(t.text))]), t.isMenu ? n("ChevronRightIcon", { staticClass: "action-button__menu-icon" }) : t._e(), t._e()], 2)]);
49
+ }, c = [], l = /* @__PURE__ */ s.normalizeComponent(
50
+ a,
41
51
  i,
52
+ c,
42
53
  !1,
43
54
  null,
44
- "5423306a",
55
+ "4ad257bb",
45
56
  null,
46
57
  null
47
58
  );
48
- const l = c.exports;
49
- module.exports = l;
59
+ const r = l.exports;
60
+ module.exports = r;
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButton.cjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<div style=\"display: flex; align-items: center;\">\n\t\t\t<NcActions>\n\t\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\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\tDelete\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\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\tDelete and close\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"focusInput\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tCreate\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\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\tDisabled button\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActions>\n\t\t\t<input ref=\"input\" />\n\t\t</div>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t\tfocusInput() {\n\t\t\t\tthis.$nextTick(() => this.$refs.input.focus())\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\">\n\t\t<button class=\"action-button\"\n\t\t\t:class=\"{ focusable: isFocusable }\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:title=\"title\"\n\t\t\trole=\"menuitem\"\n\t\t\ttype=\"button\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\t:aria-hidden=\"ariaHidden\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tmixins: [ActionTextMixin],\n\n\tprops: {\n\t\t/**\n\t\t * disabled state of the action button\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * aria-hidden attribute for the icon slot\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n</style>\n"],"names":["_sfc_main","actionText"],"mappings":";;AAuOA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,QAAA,CAAAC,EAAA,eAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcActionButton.cjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\">\n\t\t<button class=\"action-button\"\n\t\t\t:class=\"{ focusable: isFocusable }\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:title=\"title\"\n\t\t\trole=\"menuitem\"\n\t\t\ttype=\"button\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\t:aria-hidden=\"ariaHidden\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu\" class=\"action-button__menu-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tChevronRightIcon,\n\t},\n\tmixins: [ActionTextMixin],\n\n\tprops: {\n\t\t/**\n\t\t * disabled state of the action button\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * aria-hidden attribute for the icon slot\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n</style>\n"],"names":["_sfc_main","ChevronRight","actionText"],"mappings":";;AAqOA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,kBAAAC,EAAA;AAAA,EACA;AAAA,EACA,QAAA,CAAAC,EAAA,eAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;"}
@@ -1,8 +1,12 @@
1
- import "../assets/index-eea65531.css";
1
+ import "../assets/index-0e9b11c7.css";
2
+ import { C as o } from "../chunks/ChevronRight-1a6a6cf2.mjs";
2
3
  import { A as a } from "../chunks/actionText-a64be267.mjs";
3
4
  import { n as s } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
4
- const o = {
5
+ const e = {
5
6
  name: "NcActionButton",
7
+ components: {
8
+ ChevronRightIcon: o
9
+ },
6
10
  mixins: [a],
7
11
  props: {
8
12
  /**
@@ -18,6 +22,14 @@ const o = {
18
22
  ariaHidden: {
19
23
  type: Boolean,
20
24
  default: null
25
+ },
26
+ /**
27
+ * If this is a menu, a chevron icon will
28
+ * be added at the end of the line
29
+ */
30
+ isMenu: {
31
+ type: Boolean,
32
+ default: !1
21
33
  }
22
34
  },
23
35
  computed: {
@@ -31,22 +43,22 @@ const o = {
31
43
  }
32
44
  }
33
45
  };
34
- var e = function() {
46
+ var i = function() {
35
47
  var t = this, n = t._self._c;
36
48
  return n("li", { staticClass: "action", class: { "action--disabled": t.disabled } }, [n("button", { staticClass: "action-button", class: { focusable: t.isFocusable }, attrs: { "aria-label": t.ariaLabel, title: t.title, role: "menuitem", type: "button" }, on: { click: t.onClick } }, [t._t("icon", function() {
37
49
  return [n("span", { staticClass: "action-button__icon", class: [t.isIconUrl ? "action-button__icon--url" : t.icon], style: { backgroundImage: t.isIconUrl ? `url(${t.icon})` : null }, attrs: { "aria-hidden": t.ariaHidden } })];
38
- }), t.name ? n("span", { staticClass: "action-button__longtext-wrapper" }, [n("strong", { staticClass: "action-button__name" }, [t._v(" " + t._s(t.name) + " ")]), n("br"), n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } })]) : t.isLongText ? n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } }) : n("span", { staticClass: "action-button__text" }, [t._v(t._s(t.text))]), t._e()], 2)]);
39
- }, i = [], c = /* @__PURE__ */ s(
40
- o,
50
+ }), t.name ? n("span", { staticClass: "action-button__longtext-wrapper" }, [n("strong", { staticClass: "action-button__name" }, [t._v(" " + t._s(t.name) + " ")]), n("br"), n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } })]) : t.isLongText ? n("span", { staticClass: "action-button__longtext", domProps: { textContent: t._s(t.text) } }) : n("span", { staticClass: "action-button__text" }, [t._v(t._s(t.text))]), t.isMenu ? n("ChevronRightIcon", { staticClass: "action-button__menu-icon" }) : t._e(), t._e()], 2)]);
51
+ }, c = [], l = /* @__PURE__ */ s(
41
52
  e,
42
53
  i,
54
+ c,
43
55
  !1,
44
56
  null,
45
- "5423306a",
57
+ "4ad257bb",
46
58
  null,
47
59
  null
48
60
  );
49
- const d = c.exports;
61
+ const b = l.exports;
50
62
  export {
51
- d as default
63
+ b as default
52
64
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionButton.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<div style=\"display: flex; align-items: center;\">\n\t\t\t<NcActions>\n\t\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\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\tDelete\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\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\tDelete and close\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"focusInput\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\tCreate\n\t\t\t\t</NcActionButton>\n\t\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\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\tDisabled button\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActions>\n\t\t\t<input ref=\"input\" />\n\t\t</div>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t\tfocusInput() {\n\t\t\t\tthis.$nextTick(() => this.$refs.input.focus())\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\">\n\t\t<button class=\"action-button\"\n\t\t\t:class=\"{ focusable: isFocusable }\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:title=\"title\"\n\t\t\trole=\"menuitem\"\n\t\t\ttype=\"button\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\t:aria-hidden=\"ariaHidden\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tmixins: [ActionTextMixin],\n\n\tprops: {\n\t\t/**\n\t\t * disabled state of the action button\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * aria-hidden attribute for the icon slot\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n</style>\n"],"names":["_sfc_main","ActionTextMixin"],"mappings":";;;AAuOA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,QAAA,CAAAC,CAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcActionButton.mjs","sources":["../../src/components/NcActionButton/NcActionButton.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\nThis component is made to be used inside of the [NcActions](#NcActions) component slots.\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :close-after-click=\"true\" @click=\"showMessage('Delete and close menu')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDelete and close\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :is-menu=\"true\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tCreate\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton :disabled=\"true\" @click=\"showMessage('Disabled')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tDisabled button\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n```\n\nIf you're using a long text you can specify a name\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton name=\"Long button\" @click=\"showMessage('Delete')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Delete :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tThis button is associated with a very long text.\\nAnd with new lines too.\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Delete from 'vue-material-design-icons/Delete'\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tDelete,\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nAction icon attribute with a single action\n\n```vue\n\t<template>\n\t\t<NcActions>\n\t\t\t<NcActionButton @click=\"showMessage('Add')\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<Plus :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\tAdd new\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\t</template>\n\t<script>\n\timport Plus from 'vue-material-design-icons/Plus'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tPlus,\n\t\t},\n\t\tmethods: {\n\t\t\tshowMessage(msg) {\n\t\t\t\talert(msg)\n\t\t\t},\n\t\t},\n\t}\n\t</script>\n\n```\n\nYou can also use a custom icon, for example from the vue-material-design-icons library:\n\n```vue\n<template>\n\t<NcActions>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackLeft :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise left hand\n\t\t</NcActionButton>\n\t\t<NcActionButton>\n\t\t\t<template #icon>\n\t\t\t\t<HandBackRight :size=\"20\" />\n\t\t\t</template>\n\t\t\tRaise right hand\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n<script>\nimport HandBackLeft from 'vue-material-design-icons/HandBackLeft'\nimport HandBackRight from 'vue-material-design-icons/HandBackRight'\n\nexport default {\n\tcomponents: {\n\t\tHandBackLeft,\n\t\tHandBackRight,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\">\n\t\t<button class=\"action-button\"\n\t\t\t:class=\"{ focusable: isFocusable }\"\n\t\t\t:aria-label=\"ariaLabel\"\n\t\t\t:title=\"title\"\n\t\t\trole=\"menuitem\"\n\t\t\ttype=\"button\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-button__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\t:aria-hidden=\"ariaHidden\"\n\t\t\t\t\tclass=\"action-button__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- long text with name -->\n\t\t\t<span v-if=\"name\"\n\t\t\t\tclass=\"action-button__longtext-wrapper\">\n\t\t\t\t<strong class=\"action-button__name\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</strong>\n\t\t\t\t<br>\n\t\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t\t<span class=\"action-button__longtext\" v-text=\"text\" />\n\t\t\t</span>\n\n\t\t\t<!-- long text only -->\n\t\t\t<!-- white space is shown on longtext, so we can't\n\t\t\t\tput {{ text }} on a new line for code readability -->\n\t\t\t<span v-else-if=\"isLongText\"\n\t\t\t\tclass=\"action-button__longtext\"\n\t\t\t\tv-text=\"text\" />\n\n\t\t\t<!-- default text display -->\n\t\t\t<span v-else class=\"action-button__text\">{{ text }}</span>\n\n\t\t\t<!-- right arrow icon when there is a sub-menu -->\n\t\t\t<ChevronRightIcon v-if=\"isMenu\" class=\"action-button__menu-icon\" />\n\n\t\t\t<!-- fake slot to gather inner text -->\n\t\t\t<slot v-if=\"false\" />\n\t\t</button>\n\t</li>\n</template>\n\n<script>\nimport ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue'\nimport ActionTextMixin from '../../mixins/actionText.js'\n\n/**\n * Button component to be used in Actions\n */\nexport default {\n\tname: 'NcActionButton',\n\n\tcomponents: {\n\t\tChevronRightIcon,\n\t},\n\tmixins: [ActionTextMixin],\n\n\tprops: {\n\t\t/**\n\t\t * disabled state of the action button\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\n\t\t/**\n\t\t * aria-hidden attribute for the icon slot\n\t\t */\n\t\tariaHidden: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\n\t\t/**\n\t\t * If this is a menu, a chevron icon will\n\t\t * be added at the end of the line\n\t\t */\n\t\tisMenu: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n@include action-item('button');\n</style>\n"],"names":["_sfc_main","ChevronRight","ActionTextMixin"],"mappings":";;;;AAqOA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,kBAAAC;AAAA,EACA;AAAA,EACA,QAAA,CAAAC,CAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAKA,YAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  var v = require("../assets/index-e7c55791.css");
2
- const s = require("./NcDateTimePicker.cjs"), n = require("./NcDateTimePickerNative.cjs"), r = require("./NcPasswordField.cjs"), c = require("./NcSelect.cjs"), o = require("./NcTextField.cjs"), u = require("../chunks/actionGlobal-9e29e11b.cjs"), l = require("../chunks/GenRandomId-c214d235.cjs"), d = require("../chunks/l10n-b1d264c7.cjs"), p = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
2
+ const s = require("./NcDateTimePicker.cjs"), n = require("./NcDateTimePickerNative.cjs"), r = require("./NcPasswordField.cjs"), c = require("./NcSelect.cjs"), o = require("./NcTextField.cjs"), u = require("../chunks/actionGlobal-9e29e11b.cjs"), l = require("../chunks/GenRandomId-c214d235.cjs"), d = require("../chunks/l10n-9f3afaf5.cjs"), p = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
3
  const b = {
4
4
  name: "NcActionInput",
5
5
  components: {
@@ -6,7 +6,7 @@ import c from "./NcSelect.mjs";
6
6
  import o from "./NcTextField.mjs";
7
7
  import { A as u } from "../chunks/actionGlobal-8c1c28c9.mjs";
8
8
  import { G as l } from "../chunks/GenRandomId-cb9ccebe.mjs";
9
- import { t as d } from "../chunks/l10n-05a09c66.mjs";
9
+ import { t as d } from "../chunks/l10n-b6d21146.mjs";
10
10
  import { n as p } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
11
11
  const b = {
12
12
  name: "NcActionInput",
@@ -1,4 +1,4 @@
1
- var _ = require("../assets/index-af72a30b.css");
1
+ var _ = require("../assets/index-05760fea.css");
2
2
  const i = require("../chunks/actionText-54bc24a6.cjs"), a = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
3
  const r = {
4
4
  name: "NcActionLink",
@@ -1,4 +1,4 @@
1
- import "../assets/index-af72a30b.css";
1
+ import "../assets/index-05760fea.css";
2
2
  import { A as a } from "../chunks/actionText-a64be267.mjs";
3
3
  import { n as i } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
4
4
  const r = {
@@ -1,4 +1,4 @@
1
- var u = require("../assets/index-8304db49.css");
1
+ var u = require("../assets/index-802d2118.css");
2
2
  const n = require("../chunks/actionText-54bc24a6.cjs"), o = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
3
  const r = {
4
4
  name: "NcActionRouter",
@@ -1,4 +1,4 @@
1
- import "../assets/index-8304db49.css";
1
+ import "../assets/index-802d2118.css";
2
2
  import { A as n } from "../chunks/actionText-a64be267.mjs";
3
3
  import { n as o } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
4
4
  const r = {
@@ -1,4 +1,4 @@
1
- var l = require("../assets/index-73867d38.css");
1
+ var l = require("../assets/index-d3702c91.css");
2
2
  const e = require("../chunks/actionText-54bc24a6.cjs"), s = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
3
  const c = {
4
4
  name: "NcActionText",
@@ -1,4 +1,4 @@
1
- import "../assets/index-73867d38.css";
1
+ import "../assets/index-d3702c91.css";
2
2
  import { A as s } from "../chunks/actionText-a64be267.mjs";
3
3
  import { n as a } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
4
4
  const e = {
@@ -1,9 +1,9 @@
1
- var p = require("../assets/index-93ad846c.css");
2
- const n = require("../chunks/actionText-54bc24a6.cjs"), i = require("../chunks/GenRandomId-c214d235.cjs"), l = require("vue-material-design-icons/ArrowRight.vue"), o = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs"), r = (e) => e && e.__esModule ? e : { default: e }, c = /* @__PURE__ */ r(l);
3
- const d = {
1
+ var b = require("../assets/index-93ad846c.css");
2
+ const n = require("../chunks/actionText-54bc24a6.cjs"), i = require("../chunks/GenRandomId-c214d235.cjs"), o = require("../chunks/ArrowRight-7315f6c1.cjs"), l = require("../chunks/_plugin-vue2_normalizer-7f9efb60.cjs");
3
+ const r = {
4
4
  name: "NcActionTextEditable",
5
5
  components: {
6
- ArrowRight: c.default
6
+ ArrowRight: o.ArrowRight
7
7
  },
8
8
  mixins: [n.ActionTextMixin],
9
9
  props: {
@@ -60,22 +60,22 @@ const d = {
60
60
  }
61
61
  }
62
62
  };
63
- var u = function() {
63
+ var c = function() {
64
64
  var t = this, a = t._self._c;
65
65
  return a("li", { staticClass: "action", class: { "action--disabled": t.disabled } }, [a("span", { staticClass: "action-text-editable", on: { click: t.onClick } }, [t._t("icon", function() {
66
66
  return [a("span", { staticClass: "action-text-editable__icon", class: [t.isIconUrl ? "action-text-editable__icon--url" : t.icon], style: { backgroundImage: t.isIconUrl ? `url(${t.icon})` : null } })];
67
67
  }), a("form", { ref: "form", staticClass: "action-text-editable__form", attrs: { disabled: t.disabled }, on: { submit: function(s) {
68
68
  return s.preventDefault(), t.onSubmit.apply(null, arguments);
69
69
  } } }, [a("input", { staticClass: "action-text-editable__submit", attrs: { id: t.id, type: "submit" } }), t.name ? a("label", { staticClass: "action-text-editable__name", attrs: { for: t.computedId } }, [t._v(" " + t._s(t.name) + " ")]) : t._e(), a("textarea", t._b({ class: ["action-text-editable__textarea", { focusable: t.isFocusable }], attrs: { id: t.computedId, disabled: t.disabled }, domProps: { value: t.value }, on: { input: t.onInput } }, "textarea", t.$attrs, !1)), a("label", { directives: [{ name: "show", rawName: "v-show", value: !t.disabled, expression: "!disabled" }], staticClass: "action-text-editable__label", attrs: { for: t.id } }, [a("ArrowRight", { attrs: { size: 20 } })], 1)])], 2)]);
70
- }, _ = [], b = /* @__PURE__ */ o.normalizeComponent(
70
+ }, d = [], u = /* @__PURE__ */ l.normalizeComponent(
71
+ r,
72
+ c,
71
73
  d,
72
- u,
73
- _,
74
74
  !1,
75
75
  null,
76
76
  "b0b05af8",
77
77
  null,
78
78
  null
79
79
  );
80
- const m = b.exports;
81
- module.exports = m;
80
+ const _ = u.exports;
81
+ module.exports = _;
@@ -1 +1 @@
1
- {"version":3,"file":"NcActionTextEditable.cjs","sources":["../../src/components/NcActionTextEditable/NcActionTextEditable.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\nThis component is made to be used inside of the [Actions](#Actions) component slots.\nAll undocumented attributes will be bound to the textarea. e.g. `maxlength`\n\n```\n<template>\n\t<NcActions>\n\t\t<NcActionTextEditable value=\"This is a textarea\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t</NcActionTextEditable>\n\t\t<NcActionTextEditable :disabled=\"true\" value=\"This is a disabled textarea\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t</NcActionTextEditable>\n\t\t<NcActionTextEditable name=\"Please edit the text\" value=\"This is a textarea with name\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t</NcActionTextEditable>\n\t</NcActions>\n</template>\n<script>\nimport Pencil from 'vue-material-design-icons/Pencil'\n\nexport default {\n\tcomponents: {\n\t\tPencil,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\">\n\t\t<span class=\"action-text-editable\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-text-editable__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\tclass=\"action-text-editable__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- form and input -->\n\t\t\t<form ref=\"form\"\n\t\t\t\tclass=\"action-text-editable__form\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@submit.prevent=\"onSubmit\">\n\t\t\t\t<input :id=\"id\" type=\"submit\" class=\"action-text-editable__submit\">\n\n\t\t\t\t<!-- name -->\n\t\t\t\t<label v-if=\"name\"\n\t\t\t\t\tclass=\"action-text-editable__name\"\n\t\t\t\t\t:for=\"computedId\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</label>\n\n\t\t\t\t<textarea :id=\"computedId\"\n\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t:value=\"value\"\n\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t:class=\"['action-text-editable__textarea', { focusable: isFocusable }]\"\n\t\t\t\t\t@input=\"onInput\" />\n\n\t\t\t\t<!-- allow the custom font to inject a ::before\n\t\t\t\t\tnot possible on input[type=submit] -->\n\t\t\t\t<label v-show=\"!disabled\" :for=\"id\" class=\"action-text-editable__label\">\n\t\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t\t</label>\n\t\t\t</form>\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nimport ActionTextMixin from '../../mixins/actionText.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\n\nexport default {\n\tname: 'NcActionTextEditable',\n\n\tcomponents: {\n\t\tArrowRight,\n\t},\n\n\tmixins: [ActionTextMixin],\n\n\tprops: {\n\t\t/**\n\t\t * id attribute of the checkbox element\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'action-' + GenRandomId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\t\t/**\n\t\t * disabled state of the text area\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * value attribute of the input field\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t'input',\n\t\t'update:value',\n\t\t'submit',\n\t],\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\tcomputedId() {\n\t\t\treturn GenRandomId()\n\t\t},\n\t},\n\n\tmethods: {\n\t\tonInput(event) {\n\t\t\t/**\n\t\t\t * Emitted on input events of the text field\n\t\t\t *\n\t\t\t * @type {Event|Date}\n\t\t\t */\n\t\t\tthis.$emit('input', event)\n\t\t\t/**\n\t\t\t * Emitted when the inputs value changes\n\t\t\t *\n\t\t\t * @type {string|Date}\n\t\t\t */\n\t\t\tthis.$emit('update:value', event.target.value)\n\t\t},\n\t\tonSubmit(event) {\n\t\t\tevent.preventDefault()\n\t\t\tevent.stopPropagation()\n\t\t\tif (!this.disabled) {\n\t\t\t\t/**\n\t\t\t\t * Emitted on submit of the input field\n\t\t\t\t *\n\t\t\t\t * @type {Event}\n\t\t\t\t */\n\t\t\t\tthis.$emit('submit', event)\n\t\t\t} else {\n\t\t\t\t// ignore submit\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/inputs';\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n\n$input-margin: 4px;\n\n.action-text-editable {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\twidth: 100%;\n\theight: auto;\n\tmargin: 0;\n\tpadding: 0;\n\n\tcursor: pointer;\n\twhite-space: nowrap;\n\n\tcolor: var(--color-main-text);\n\tborder: 0;\n\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\tbackground-color: transparent;\n\tbox-shadow: none;\n\n\tfont-weight: normal;\n\tline-height: $clickable-area;\n\n\t& > span {\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t}\n\n\t&__icon {\n\t\tmin-width: 0; /* Overwrite icons*/\n\t\tmin-height: 0;\n\t\t/* Keep padding to define the width to\n\t\t\tassure correct position of a possible text */\n\t\tpadding: #{math.div($clickable-area, 2)} 0 #{math.div($clickable-area, 2)} $clickable-area;\n\n\t\tbackground-position: #{$icon-margin} center;\n\t\tbackground-size: $icon-size;\n\t}\n\n\t&:deep(.material-design-icon) {\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\topacity: $opacity_full;\n\n\t\t.material-design-icon__svg {\n\t\t\tvertical-align: middle;\n\t\t}\n\t}\n\n\t// Forms & text inputs\n\t&__form {\n\t\tdisplay: flex;\n\t\tflex: 1 1 auto;\n\t\tflex-direction: column;\n\n\t\tposition: relative;\n\t\tmargin: $input-margin 0;\n\t\tpadding-right: $icon-margin;\n\t}\n\n\t&__submit {\n\t\tposition: absolute;\n\t\tleft: -10000px;\n\t\ttop: auto;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\toverflow: hidden;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\n\t\t// bottom-right corner\n\t\tposition: absolute;\n\t\tright: $icon-margin + 1;\n\t\tbottom: 1px;\n\t\twidth: #{$clickable-area - $input-margin * 2};\n\t\theight: #{$clickable-area - $input-margin * 2};\n\t\tbox-sizing: border-box;\n\t\tmargin: 0;\n\t\tpadding: 7px 6px;\n\n\t\tborder: 0;\n\t\tborder-radius: 50%;\n\t\t/* Avoid background under border */\n\t\tbackground-color: var(--color-main-background);\n\t\tbackground-clip: padding-box;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t}\n\t}\n\n\t/* Inputs inside popover supports text, submit & reset */\n\t&__textarea {\n\t\tflex: 1 1 auto;\n\t\tcolor: inherit;\n\t\tborder-color: var(--color-border-maxcontrast);\n\n\t\tmin-height: #{$clickable-area * 2 - $input-margin * 2}; /* twice the element margin-y */\n\t\tmax-height: #{$clickable-area * 3 - $input-margin * 2}; /* twice the element margin-y */\n\t\t// block width widening\n\t\tmin-width: $clickable-area * 4;\n\t\twidth: 100% !important;\n\t\tmargin: 0;\n\n\t\t// if disabled, change cursor\n\t\t&:disabled {\n\t\t\tcursor: default;\n\t\t}\n\n\t\t/* only show confirm borders if input is not focused */\n\t\t&:not(:active):not(:hover):not(:focus) {\n\t\t\t&:invalid {\n\t\t\t\t& + .action-text-editable__label {\n\t\t\t\t\tbackground-color: var(--color-error);\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:not(:disabled) + .action-text-editable__label {\n\t\t\t\t&:active,\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t\t\tcolor: var(--color-primary-element-text);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t&:active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\t&:not(:disabled) + .action-text-editable__label {\n\t\t\t\t/* above previous input */\n\t\t\t\tz-index: 2;\n\n\t\t\t\tborder-color: var(--color-primary-element);\n\t\t\t\tborder-left-color: transparent;\n\t\t\t}\n\t\t}\n\t}\n}\n\n// if a form is the last of the list\n// add the same bottomMargin as the right padding\n// for visual balance\nli:last-child > .action-text-editable {\n\tmargin-bottom: $icon-margin - $input-margin;\n}\n\n// same for first item\nli:first-child > .action-text-editable {\n\tmargin-top: $icon-margin - $input-margin;\n}\n</style>\n"],"names":["_sfc_main","ArrowRight__default","actionText","GenRandomId","id","event"],"mappings":";;AA2GA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,YAAAC,EAAA;AAAA,EACA;AAAA,EAEA,QAAA,CAAAC,EAAA,eAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,MAAA,YAAAC,EAAA,YAAA;AAAA,MACA,WAAA,CAAAC,MAAAA,EAAA,KAAA,MAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAAD,EAAA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,QAAAE,GAAA;AAMA,WAAA,MAAA,SAAAA,CAAA,GAMA,KAAA,MAAA,gBAAAA,EAAA,OAAA,KAAA;AAAA,IACA;AAAA,IACA,SAAAA,GAAA;AAGA,UAFAA,EAAA,eAAA,GACAA,EAAA,gBAAA,GACA,CAAA,KAAA;AAMA,aAAA,MAAA,UAAAA,CAAA;AAAA;AAGA,eAAA;AAAA,IAEA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NcActionTextEditable.cjs","sources":["../../src/components/NcActionTextEditable/NcActionTextEditable.vue"],"sourcesContent":["<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Marco Ambrosini <marcoambrosini@icloud.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<docs>\nThis component is made to be used inside of the [Actions](#Actions) component slots.\nAll undocumented attributes will be bound to the textarea. e.g. `maxlength`\n\n```\n<template>\n\t<NcActions>\n\t\t<NcActionTextEditable value=\"This is a textarea\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t</NcActionTextEditable>\n\t\t<NcActionTextEditable :disabled=\"true\" value=\"This is a disabled textarea\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t</NcActionTextEditable>\n\t\t<NcActionTextEditable name=\"Please edit the text\" value=\"This is a textarea with name\">\n\t\t\t<template #icon>\n\t\t\t\t<Pencil :size=\"20\" />\n\t\t\t</template>\n\t\t</NcActionTextEditable>\n\t</NcActions>\n</template>\n<script>\nimport Pencil from 'vue-material-design-icons/Pencil'\n\nexport default {\n\tcomponents: {\n\t\tPencil,\n\t},\n}\n</script>\n```\n</docs>\n\n<template>\n\t<li class=\"action\" :class=\"{ 'action--disabled': disabled }\">\n\t\t<span class=\"action-text-editable\"\n\t\t\t@click=\"onClick\">\n\t\t\t<!-- @slot Manually provide icon -->\n\t\t\t<slot name=\"icon\">\n\t\t\t\t<span :class=\"[isIconUrl ? 'action-text-editable__icon--url' : icon]\"\n\t\t\t\t\t:style=\"{ backgroundImage: isIconUrl ? `url(${icon})` : null }\"\n\t\t\t\t\tclass=\"action-text-editable__icon\" />\n\t\t\t</slot>\n\n\t\t\t<!-- form and input -->\n\t\t\t<form ref=\"form\"\n\t\t\t\tclass=\"action-text-editable__form\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t@submit.prevent=\"onSubmit\">\n\t\t\t\t<input :id=\"id\" type=\"submit\" class=\"action-text-editable__submit\">\n\n\t\t\t\t<!-- name -->\n\t\t\t\t<label v-if=\"name\"\n\t\t\t\t\tclass=\"action-text-editable__name\"\n\t\t\t\t\t:for=\"computedId\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</label>\n\n\t\t\t\t<textarea :id=\"computedId\"\n\t\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t\t:value=\"value\"\n\t\t\t\t\tv-bind=\"$attrs\"\n\t\t\t\t\t:class=\"['action-text-editable__textarea', { focusable: isFocusable }]\"\n\t\t\t\t\t@input=\"onInput\" />\n\n\t\t\t\t<!-- allow the custom font to inject a ::before\n\t\t\t\t\tnot possible on input[type=submit] -->\n\t\t\t\t<label v-show=\"!disabled\" :for=\"id\" class=\"action-text-editable__label\">\n\t\t\t\t\t<ArrowRight :size=\"20\" />\n\t\t\t\t</label>\n\t\t\t</form>\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nimport ActionTextMixin from '../../mixins/actionText.js'\nimport GenRandomId from '../../utils/GenRandomId.js'\n\nimport ArrowRight from 'vue-material-design-icons/ArrowRight.vue'\n\nexport default {\n\tname: 'NcActionTextEditable',\n\n\tcomponents: {\n\t\tArrowRight,\n\t},\n\n\tmixins: [ActionTextMixin],\n\n\tprops: {\n\t\t/**\n\t\t * id attribute of the checkbox element\n\t\t */\n\t\tid: {\n\t\t\ttype: String,\n\t\t\tdefault: () => 'action-' + GenRandomId(),\n\t\t\tvalidator: id => id.trim() !== '',\n\t\t},\n\t\t/**\n\t\t * disabled state of the text area\n\t\t */\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\t/**\n\t\t * value attribute of the input field\n\t\t */\n\t\tvalue: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\temits: [\n\t\t'input',\n\t\t'update:value',\n\t\t'submit',\n\t],\n\n\tcomputed: {\n\t\t/**\n\t\t * determines if the action is focusable\n\t\t *\n\t\t * @return {boolean} is the action focusable ?\n\t\t */\n\t\tisFocusable() {\n\t\t\treturn !this.disabled\n\t\t},\n\n\t\tcomputedId() {\n\t\t\treturn GenRandomId()\n\t\t},\n\t},\n\n\tmethods: {\n\t\tonInput(event) {\n\t\t\t/**\n\t\t\t * Emitted on input events of the text field\n\t\t\t *\n\t\t\t * @type {Event|Date}\n\t\t\t */\n\t\t\tthis.$emit('input', event)\n\t\t\t/**\n\t\t\t * Emitted when the inputs value changes\n\t\t\t *\n\t\t\t * @type {string|Date}\n\t\t\t */\n\t\t\tthis.$emit('update:value', event.target.value)\n\t\t},\n\t\tonSubmit(event) {\n\t\t\tevent.preventDefault()\n\t\t\tevent.stopPropagation()\n\t\t\tif (!this.disabled) {\n\t\t\t\t/**\n\t\t\t\t * Emitted on submit of the input field\n\t\t\t\t *\n\t\t\t\t * @type {Event}\n\t\t\t\t */\n\t\t\t\tthis.$emit('submit', event)\n\t\t\t} else {\n\t\t\t\t// ignore submit\n\t\t\t\treturn false\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../../assets/inputs';\n@import '../../assets/action';\n@include action-active;\n@include action--disabled;\n\n$input-margin: 4px;\n\n.action-text-editable {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\twidth: 100%;\n\theight: auto;\n\tmargin: 0;\n\tpadding: 0;\n\n\tcursor: pointer;\n\twhite-space: nowrap;\n\n\tcolor: var(--color-main-text);\n\tborder: 0;\n\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\tbackground-color: transparent;\n\tbox-shadow: none;\n\n\tfont-weight: normal;\n\tline-height: $clickable-area;\n\n\t& > span {\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\t}\n\n\t&__icon {\n\t\tmin-width: 0; /* Overwrite icons*/\n\t\tmin-height: 0;\n\t\t/* Keep padding to define the width to\n\t\t\tassure correct position of a possible text */\n\t\tpadding: #{math.div($clickable-area, 2)} 0 #{math.div($clickable-area, 2)} $clickable-area;\n\n\t\tbackground-position: #{$icon-margin} center;\n\t\tbackground-size: $icon-size;\n\t}\n\n\t&:deep(.material-design-icon) {\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\topacity: $opacity_full;\n\n\t\t.material-design-icon__svg {\n\t\t\tvertical-align: middle;\n\t\t}\n\t}\n\n\t// Forms & text inputs\n\t&__form {\n\t\tdisplay: flex;\n\t\tflex: 1 1 auto;\n\t\tflex-direction: column;\n\n\t\tposition: relative;\n\t\tmargin: $input-margin 0;\n\t\tpadding-right: $icon-margin;\n\t}\n\n\t&__submit {\n\t\tposition: absolute;\n\t\tleft: -10000px;\n\t\ttop: auto;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\toverflow: hidden;\n\t}\n\n\t&__label {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\n\t\t// bottom-right corner\n\t\tposition: absolute;\n\t\tright: $icon-margin + 1;\n\t\tbottom: 1px;\n\t\twidth: #{$clickable-area - $input-margin * 2};\n\t\theight: #{$clickable-area - $input-margin * 2};\n\t\tbox-sizing: border-box;\n\t\tmargin: 0;\n\t\tpadding: 7px 6px;\n\n\t\tborder: 0;\n\t\tborder-radius: 50%;\n\t\t/* Avoid background under border */\n\t\tbackground-color: var(--color-main-background);\n\t\tbackground-clip: padding-box;\n\n\t\t&, * {\n\t\t\tcursor: pointer;\n\t\t}\n\t}\n\n\t/* Inputs inside popover supports text, submit & reset */\n\t&__textarea {\n\t\tflex: 1 1 auto;\n\t\tcolor: inherit;\n\t\tborder-color: var(--color-border-maxcontrast);\n\n\t\tmin-height: #{$clickable-area * 2 - $input-margin * 2}; /* twice the element margin-y */\n\t\tmax-height: #{$clickable-area * 3 - $input-margin * 2}; /* twice the element margin-y */\n\t\t// block width widening\n\t\tmin-width: $clickable-area * 4;\n\t\twidth: 100% !important;\n\t\tmargin: 0;\n\n\t\t// if disabled, change cursor\n\t\t&:disabled {\n\t\t\tcursor: default;\n\t\t}\n\n\t\t/* only show confirm borders if input is not focused */\n\t\t&:not(:active):not(:hover):not(:focus) {\n\t\t\t&:invalid {\n\t\t\t\t& + .action-text-editable__label {\n\t\t\t\t\tbackground-color: var(--color-error);\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:not(:disabled) + .action-text-editable__label {\n\t\t\t\t&:active,\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t\t\tcolor: var(--color-primary-element-text);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t&:active,\n\t\t&:hover,\n\t\t&:focus {\n\t\t\t&:not(:disabled) + .action-text-editable__label {\n\t\t\t\t/* above previous input */\n\t\t\t\tz-index: 2;\n\n\t\t\t\tborder-color: var(--color-primary-element);\n\t\t\t\tborder-left-color: transparent;\n\t\t\t}\n\t\t}\n\t}\n}\n\n// if a form is the last of the list\n// add the same bottomMargin as the right padding\n// for visual balance\nli:last-child > .action-text-editable {\n\tmargin-bottom: $icon-margin - $input-margin;\n}\n\n// same for first item\nli:first-child > .action-text-editable {\n\tmargin-top: $icon-margin - $input-margin;\n}\n</style>\n"],"names":["_sfc_main","ArrowRight","actionText","GenRandomId","id","event"],"mappings":";;AA2GA,MAAAA,IAAA;AAAA,EACA,MAAA;AAAA,EAEA,YAAA;AAAA,IACA,YAAAC,EAAA;AAAA,EACA;AAAA,EAEA,QAAA,CAAAC,EAAA,eAAA;AAAA,EAEA,OAAA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,MAAA,YAAAC,EAAA,YAAA;AAAA,MACA,WAAA,CAAAC,MAAAA,EAAA,KAAA,MAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,OAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,cAAA;AACA,aAAA,CAAA,KAAA;AAAA,IACA;AAAA,IAEA,aAAA;AACA,aAAAD,EAAA,YAAA;AAAA,IACA;AAAA,EACA;AAAA,EAEA,SAAA;AAAA,IACA,QAAAE,GAAA;AAMA,WAAA,MAAA,SAAAA,CAAA,GAMA,KAAA,MAAA,gBAAAA,EAAA,OAAA,KAAA;AAAA,IACA;AAAA,IACA,SAAAA,GAAA;AAGA,UAFAA,EAAA,eAAA,GACAA,EAAA,gBAAA,GACA,CAAA,KAAA;AAMA,aAAA,MAAA,UAAAA,CAAA;AAAA;AAGA,eAAA;AAAA,IAEA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import "../assets/index-93ad846c.css";
2
2
  import { A as n } from "../chunks/actionText-a64be267.mjs";
3
3
  import { G as i } from "../chunks/GenRandomId-cb9ccebe.mjs";
4
- import l from "vue-material-design-icons/ArrowRight.vue";
4
+ import { A as l } from "../chunks/ArrowRight-74a9fcb2.mjs";
5
5
  import { n as o } from "../chunks/_plugin-vue2_normalizer-71e2aa87.mjs";
6
6
  const r = {
7
7
  name: "NcActionTextEditable",