@vc-shell/framework 1.0.69 → 1.0.70

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 (373) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/core/api/platform.ts +2762 -2225
  3. package/core/composables/index.ts +1 -0
  4. package/core/composables/useMenuComposer/index.ts +25 -0
  5. package/core/composables/useNotifications/index.ts +24 -30
  6. package/core/composables/useUser/index.ts +1 -1
  7. package/core/directives/index.ts +0 -1
  8. package/core/plugins/index.ts +1 -1
  9. package/core/plugins/modularity/index.ts +8 -1
  10. package/core/plugins/signalR/index.ts +32 -0
  11. package/core/types/index.ts +56 -17
  12. package/dist/core/api/platform.d.ts +1005 -931
  13. package/dist/core/api/platform.d.ts.map +1 -1
  14. package/dist/core/composables/index.d.ts +1 -0
  15. package/dist/core/composables/index.d.ts.map +1 -1
  16. package/dist/core/composables/useMenuComposer/index.d.ts +12 -0
  17. package/dist/core/composables/useMenuComposer/index.d.ts.map +1 -0
  18. package/dist/core/composables/useNotifications/index.d.ts +3 -5
  19. package/dist/core/composables/useNotifications/index.d.ts.map +1 -1
  20. package/dist/core/directives/autofocus/index.d.ts +1 -1
  21. package/dist/core/directives/autofocus/index.d.ts.map +1 -1
  22. package/dist/core/directives/index.d.ts +0 -1
  23. package/dist/core/directives/index.d.ts.map +1 -1
  24. package/dist/core/directives/loading/index.d.ts +1 -1
  25. package/dist/core/directives/loading/index.d.ts.map +1 -1
  26. package/dist/core/directives/permissions/index.d.ts +1 -1
  27. package/dist/core/directives/permissions/index.d.ts.map +1 -1
  28. package/dist/core/plugins/index.d.ts +1 -1
  29. package/dist/core/plugins/index.d.ts.map +1 -1
  30. package/dist/core/plugins/modularity/index.d.ts +1 -1
  31. package/dist/core/plugins/modularity/index.d.ts.map +1 -1
  32. package/dist/core/plugins/signalR/index.d.ts +4 -0
  33. package/dist/core/plugins/signalR/index.d.ts.map +1 -0
  34. package/dist/core/types/index.d.ts +46 -20
  35. package/dist/core/types/index.d.ts.map +1 -1
  36. package/dist/framework.mjs +29318 -28417
  37. package/dist/index.css +1 -1
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/shared/components/app-switcher/components/vc-app-switcher/index.d.ts +1 -3
  40. package/dist/shared/components/app-switcher/components/vc-app-switcher/index.d.ts.map +1 -1
  41. package/dist/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts +6 -3
  42. package/dist/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +1 -1
  43. package/dist/shared/components/app-switcher/composables/useAppSwitcher/index.d.ts.map +1 -1
  44. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/index.d.ts +13 -456
  45. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/index.d.ts.map +1 -1
  46. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts +19 -454
  47. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -1
  48. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts +2 -3
  49. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -1
  50. package/dist/shared/components/blade-navigation/index.d.ts +1 -9
  51. package/dist/shared/components/blade-navigation/index.d.ts.map +1 -1
  52. package/dist/shared/components/blade-navigation/plugin.d.ts +13 -0
  53. package/dist/shared/components/blade-navigation/plugin.d.ts.map +1 -0
  54. package/dist/shared/components/blade-navigation/types/index.d.ts +53 -26
  55. package/dist/shared/components/blade-navigation/types/index.d.ts.map +1 -1
  56. package/dist/{core/plugins → shared/components}/error-interceptor/index.d.ts +53 -15
  57. package/dist/shared/components/error-interceptor/index.d.ts.map +1 -0
  58. package/dist/{core/plugins → shared/components}/error-interceptor/interceptor.d.ts +1 -1
  59. package/dist/shared/components/error-interceptor/interceptor.d.ts.map +1 -0
  60. package/dist/shared/components/notifications/components/notification-container/index.d.ts +13 -13
  61. package/dist/shared/components/notifications/components/notification-container/index.d.ts.map +1 -1
  62. package/dist/shared/components/notifications/index.d.ts +0 -9
  63. package/dist/shared/components/notifications/index.d.ts.map +1 -1
  64. package/dist/shared/components/popup-handler/components/index.d.ts +2 -0
  65. package/dist/shared/components/popup-handler/components/index.d.ts.map +1 -0
  66. package/dist/shared/components/popup-handler/components/vc-popup-container/index.d.ts +2 -0
  67. package/dist/shared/components/popup-handler/components/vc-popup-container/index.d.ts.map +1 -0
  68. package/dist/shared/components/popup-handler/components/vc-popup-container/vc-popup-container.vue.d.ts +3 -0
  69. package/dist/shared/components/popup-handler/components/vc-popup-container/vc-popup-container.vue.d.ts.map +1 -0
  70. package/dist/shared/components/popup-handler/composables/index.d.ts +2 -0
  71. package/dist/shared/components/popup-handler/composables/index.d.ts.map +1 -0
  72. package/dist/shared/components/popup-handler/composables/usePopup/index.d.ts +12 -0
  73. package/dist/shared/components/popup-handler/composables/usePopup/index.d.ts.map +1 -0
  74. package/dist/shared/components/popup-handler/index.d.ts +16 -0
  75. package/dist/shared/components/popup-handler/index.d.ts.map +1 -0
  76. package/dist/shared/components/popup-handler/plugin.d.ts +6 -0
  77. package/dist/shared/components/popup-handler/plugin.d.ts.map +1 -0
  78. package/dist/shared/components/popup-handler/types/index.d.ts +26 -0
  79. package/dist/shared/components/popup-handler/types/index.d.ts.map +1 -0
  80. package/dist/shared/components/popup-handler/utils/index.d.ts +3 -0
  81. package/dist/shared/components/popup-handler/utils/index.d.ts.map +1 -0
  82. package/dist/shared/index.d.ts +2 -0
  83. package/dist/shared/index.d.ts.map +1 -1
  84. package/dist/shared/modules/assets/components/assets-details/assets-details.vue.d.ts +13 -4
  85. package/dist/shared/modules/assets/components/assets-details/assets-details.vue.d.ts.map +1 -1
  86. package/dist/shared/modules/assets/components/assets-details/index.d.ts +85 -49
  87. package/dist/shared/modules/assets/components/assets-details/index.d.ts.map +1 -1
  88. package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts +15 -11
  89. package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -1
  90. package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts +89 -64
  91. package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts.map +1 -1
  92. package/dist/tsconfig.tsbuildinfo +1 -1
  93. package/dist/ui/components/atoms/vc-badge/index.d.ts +56 -19
  94. package/dist/ui/components/atoms/vc-badge/index.d.ts.map +1 -1
  95. package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts +2 -2
  96. package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts.map +1 -1
  97. package/dist/ui/components/atoms/vc-button/index.d.ts +68 -44
  98. package/dist/ui/components/atoms/vc-button/index.d.ts.map +1 -1
  99. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts +7 -4
  100. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts.map +1 -1
  101. package/dist/ui/components/atoms/vc-card/index.d.ts +66 -44
  102. package/dist/ui/components/atoms/vc-card/index.d.ts.map +1 -1
  103. package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts +8 -6
  104. package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts.map +1 -1
  105. package/dist/ui/components/atoms/vc-checkbox/index.d.ts +74 -48
  106. package/dist/ui/components/atoms/vc-checkbox/index.d.ts.map +1 -1
  107. package/dist/ui/components/atoms/vc-checkbox/vc-checkbox.vue.d.ts +8 -5
  108. package/dist/ui/components/atoms/vc-checkbox/vc-checkbox.vue.d.ts.map +1 -1
  109. package/dist/ui/components/atoms/vc-col/index.d.ts +54 -19
  110. package/dist/ui/components/atoms/vc-col/index.d.ts.map +1 -1
  111. package/dist/ui/components/atoms/vc-col/vc-col.vue.d.ts +7 -4
  112. package/dist/ui/components/atoms/vc-col/vc-col.vue.d.ts.map +1 -1
  113. package/dist/ui/components/atoms/vc-container/index.d.ts +56 -19
  114. package/dist/ui/components/atoms/vc-container/index.d.ts.map +1 -1
  115. package/dist/ui/components/atoms/vc-container/vc-container.vue.d.ts +2 -2
  116. package/dist/ui/components/atoms/vc-container/vc-container.vue.d.ts.map +1 -1
  117. package/dist/ui/components/atoms/vc-hint/index.d.ts +53 -8
  118. package/dist/ui/components/atoms/vc-hint/index.d.ts.map +1 -1
  119. package/dist/ui/components/atoms/vc-hint/vc-hint.vue.d.ts +2 -2
  120. package/dist/ui/components/atoms/vc-hint/vc-hint.vue.d.ts.map +1 -1
  121. package/dist/ui/components/atoms/vc-icon/index.d.ts +4 -8
  122. package/dist/ui/components/atoms/vc-icon/index.d.ts.map +1 -1
  123. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts +7 -4
  124. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  125. package/dist/ui/components/atoms/vc-image/index.d.ts +17 -23
  126. package/dist/ui/components/atoms/vc-image/index.d.ts.map +1 -1
  127. package/dist/ui/components/atoms/vc-image/vc-image.vue.d.ts +8 -5
  128. package/dist/ui/components/atoms/vc-image/vc-image.vue.d.ts.map +1 -1
  129. package/dist/ui/components/atoms/vc-info-row/index.d.ts +10 -12
  130. package/dist/ui/components/atoms/vc-info-row/index.d.ts.map +1 -1
  131. package/dist/ui/components/atoms/vc-info-row/vc-info-row.vue.d.ts +7 -4
  132. package/dist/ui/components/atoms/vc-info-row/vc-info-row.vue.d.ts.map +1 -1
  133. package/dist/ui/components/atoms/vc-label/index.d.ts +56 -23
  134. package/dist/ui/components/atoms/vc-label/index.d.ts.map +1 -1
  135. package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts +8 -5
  136. package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts.map +1 -1
  137. package/dist/ui/components/atoms/vc-link/index.d.ts +56 -20
  138. package/dist/ui/components/atoms/vc-link/index.d.ts.map +1 -1
  139. package/dist/ui/components/atoms/vc-link/vc-link.vue.d.ts +2 -2
  140. package/dist/ui/components/atoms/vc-link/vc-link.vue.d.ts.map +1 -1
  141. package/dist/ui/components/atoms/vc-loading/index.d.ts +1 -1
  142. package/dist/ui/components/atoms/vc-loading/index.d.ts.map +1 -1
  143. package/dist/ui/components/atoms/vc-loading/vc-loading.vue.d.ts +1 -1
  144. package/dist/ui/components/atoms/vc-loading/vc-loading.vue.d.ts.map +1 -1
  145. package/dist/ui/components/atoms/vc-progress/index.d.ts +54 -27
  146. package/dist/ui/components/atoms/vc-progress/index.d.ts.map +1 -1
  147. package/dist/ui/components/atoms/vc-progress/vc-progress.vue.d.ts +6 -3
  148. package/dist/ui/components/atoms/vc-progress/vc-progress.vue.d.ts.map +1 -1
  149. package/dist/ui/components/atoms/vc-row/index.d.ts +53 -8
  150. package/dist/ui/components/atoms/vc-row/index.d.ts.map +1 -1
  151. package/dist/ui/components/atoms/vc-row/vc-row.vue.d.ts +2 -2
  152. package/dist/ui/components/atoms/vc-row/vc-row.vue.d.ts.map +1 -1
  153. package/dist/ui/components/atoms/vc-status/index.d.ts +56 -31
  154. package/dist/ui/components/atoms/vc-status/index.d.ts.map +1 -1
  155. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts +7 -4
  156. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts.map +1 -1
  157. package/dist/ui/components/atoms/vc-status-icon/index.d.ts +1 -1
  158. package/dist/ui/components/atoms/vc-status-icon/index.d.ts.map +1 -1
  159. package/dist/ui/components/atoms/vc-status-icon/vc-status-icon.vue.d.ts +1 -1
  160. package/dist/ui/components/atoms/vc-status-icon/vc-status-icon.vue.d.ts.map +1 -1
  161. package/dist/ui/components/atoms/vc-switch/index.d.ts +1 -1
  162. package/dist/ui/components/atoms/vc-switch/index.d.ts.map +1 -1
  163. package/dist/ui/components/atoms/vc-switch/vc-switch.vue.d.ts +1 -1
  164. package/dist/ui/components/atoms/vc-switch/vc-switch.vue.d.ts.map +1 -1
  165. package/dist/ui/components/atoms/vc-widget/index.d.ts +1 -1
  166. package/dist/ui/components/atoms/vc-widget/index.d.ts.map +1 -1
  167. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts +1 -1
  168. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
  169. package/dist/ui/components/index.d.ts +2 -0
  170. package/dist/ui/components/index.d.ts.map +1 -1
  171. package/dist/ui/components/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue.d.ts +3 -3
  172. package/dist/ui/components/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue.d.ts.map +1 -1
  173. package/dist/ui/components/molecules/vc-breadcrumbs/index.d.ts +1 -3
  174. package/dist/ui/components/molecules/vc-breadcrumbs/index.d.ts.map +1 -1
  175. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts +6 -3
  176. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  177. package/dist/ui/components/molecules/vc-code-editor/index.d.ts +79 -65
  178. package/dist/ui/components/molecules/vc-code-editor/index.d.ts.map +1 -1
  179. package/dist/ui/components/molecules/vc-code-editor/vc-code-editor.vue.d.ts +7 -4
  180. package/dist/ui/components/molecules/vc-code-editor/vc-code-editor.vue.d.ts.map +1 -1
  181. package/dist/ui/components/molecules/vc-editor/index.d.ts +80 -69
  182. package/dist/ui/components/molecules/vc-editor/index.d.ts.map +1 -1
  183. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts +7 -4
  184. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
  185. package/dist/ui/components/molecules/vc-file-upload/index.d.ts +77 -65
  186. package/dist/ui/components/molecules/vc-file-upload/index.d.ts.map +1 -1
  187. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts +7 -4
  188. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts.map +1 -1
  189. package/dist/ui/components/molecules/vc-form/index.d.ts +53 -8
  190. package/dist/ui/components/molecules/vc-form/index.d.ts.map +1 -1
  191. package/dist/ui/components/molecules/vc-form/vc-form.vue.d.ts +2 -2
  192. package/dist/ui/components/molecules/vc-form/vc-form.vue.d.ts.map +1 -1
  193. package/dist/ui/components/molecules/vc-input/index.d.ts +116 -128
  194. package/dist/ui/components/molecules/vc-input/index.d.ts.map +1 -1
  195. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts +17 -13
  196. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  197. package/dist/ui/components/molecules/vc-input-currency/index.d.ts +125 -137
  198. package/dist/ui/components/molecules/vc-input-currency/index.d.ts.map +1 -1
  199. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts +9 -8
  200. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
  201. package/dist/ui/components/molecules/vc-notification/index.d.ts +1 -1
  202. package/dist/ui/components/molecules/vc-notification/index.d.ts.map +1 -1
  203. package/dist/ui/components/molecules/vc-notification/vc-notification.vue.d.ts +1 -1
  204. package/dist/ui/components/molecules/vc-notification/vc-notification.vue.d.ts.map +1 -1
  205. package/dist/ui/components/molecules/vc-pagination/index.d.ts +7 -11
  206. package/dist/ui/components/molecules/vc-pagination/index.d.ts.map +1 -1
  207. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts +6 -3
  208. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts.map +1 -1
  209. package/dist/ui/components/molecules/vc-rating/index.d.ts +73 -55
  210. package/dist/ui/components/molecules/vc-rating/index.d.ts.map +1 -1
  211. package/dist/ui/components/molecules/vc-rating/vc-rating.vue.d.ts +8 -5
  212. package/dist/ui/components/molecules/vc-rating/vc-rating.vue.d.ts.map +1 -1
  213. package/dist/ui/components/molecules/vc-select/index.d.ts +188 -584
  214. package/dist/ui/components/molecules/vc-select/index.d.ts.map +1 -1
  215. package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts +643 -119
  216. package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts.map +1 -1
  217. package/dist/ui/components/molecules/vc-slider/index.d.ts +70 -55
  218. package/dist/ui/components/molecules/vc-slider/index.d.ts.map +1 -1
  219. package/dist/ui/components/molecules/vc-slider/vc-slider.vue.d.ts +10 -7
  220. package/dist/ui/components/molecules/vc-slider/vc-slider.vue.d.ts.map +1 -1
  221. package/dist/ui/components/molecules/vc-textarea/index.d.ts +80 -68
  222. package/dist/ui/components/molecules/vc-textarea/index.d.ts.map +1 -1
  223. package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts +7 -4
  224. package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts.map +1 -1
  225. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts +21 -7
  226. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts.map +1 -1
  227. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue.d.ts +8 -17
  228. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue.d.ts.map +1 -1
  229. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue.d.ts +19 -36
  230. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue.d.ts.map +1 -1
  231. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue.d.ts +20 -13
  232. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue.d.ts.map +1 -1
  233. package/dist/ui/components/organisms/vc-app/index.d.ts +138 -160
  234. package/dist/ui/components/organisms/vc-app/index.d.ts.map +1 -1
  235. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts +23 -24
  236. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  237. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts +4 -4
  238. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  239. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts +8 -5
  240. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts.map +1 -1
  241. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts +7 -4
  242. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts.map +1 -1
  243. package/dist/ui/components/organisms/vc-blade/index.d.ts +103 -112
  244. package/dist/ui/components/organisms/vc-blade/index.d.ts.map +1 -1
  245. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts +11 -10
  246. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  247. package/dist/ui/components/organisms/vc-dynamic-property/index.d.ts +3 -5
  248. package/dist/ui/components/organisms/vc-dynamic-property/index.d.ts.map +1 -1
  249. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts +6 -3
  250. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts.map +1 -1
  251. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +7 -4
  252. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts.map +1 -1
  253. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue.d.ts +18 -7
  254. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue.d.ts.map +1 -1
  255. package/dist/ui/components/organisms/vc-gallery/index.d.ts +37 -52
  256. package/dist/ui/components/organisms/vc-gallery/index.d.ts.map +1 -1
  257. package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +8 -8
  258. package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts.map +1 -1
  259. package/dist/ui/components/organisms/vc-login-form/index.d.ts +62 -31
  260. package/dist/ui/components/organisms/vc-login-form/index.d.ts.map +1 -1
  261. package/dist/ui/components/organisms/vc-login-form/vc-login-form.vue.d.ts +7 -4
  262. package/dist/ui/components/organisms/vc-login-form/vc-login-form.vue.d.ts.map +1 -1
  263. package/dist/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue.d.ts +32 -0
  264. package/dist/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue.d.ts.map +1 -0
  265. package/dist/ui/components/organisms/vc-notification-dropdown/index.d.ts +44 -0
  266. package/dist/ui/components/organisms/vc-notification-dropdown/index.d.ts.map +1 -0
  267. package/dist/ui/components/organisms/vc-notification-dropdown/vc-notification-dropdown.vue.d.ts +22 -0
  268. package/dist/ui/components/organisms/vc-notification-dropdown/vc-notification-dropdown.vue.d.ts.map +1 -0
  269. package/dist/ui/components/organisms/vc-notification-template/index.d.ts +135 -0
  270. package/dist/ui/components/organisms/vc-notification-template/index.d.ts.map +1 -0
  271. package/dist/ui/components/organisms/vc-notification-template/vc-notification-template.vue.d.ts +24 -0
  272. package/dist/ui/components/organisms/vc-notification-template/vc-notification-template.vue.d.ts.map +1 -0
  273. package/dist/ui/components/organisms/vc-popup/_internal/vc-popup-error/vc-popup-error.vue.d.ts +17 -0
  274. package/dist/ui/components/organisms/vc-popup/_internal/vc-popup-error/vc-popup-error.vue.d.ts.map +1 -0
  275. package/dist/ui/components/organisms/vc-popup/_internal/vc-popup-warning/vc-popup-warning.vue.d.ts +20 -0
  276. package/dist/ui/components/organisms/vc-popup/_internal/vc-popup-warning/vc-popup-warning.vue.d.ts.map +1 -0
  277. package/dist/ui/components/organisms/vc-popup/index.d.ts +87 -42
  278. package/dist/ui/components/organisms/vc-popup/index.d.ts.map +1 -1
  279. package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts +16 -6
  280. package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts.map +1 -1
  281. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts +1 -1
  282. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts.map +1 -1
  283. package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts +6 -3
  284. package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts.map +1 -1
  285. package/dist/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue.d.ts +6 -3
  286. package/dist/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue.d.ts.map +1 -1
  287. package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts +8 -5
  288. package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts.map +1 -1
  289. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts +48 -47
  290. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts.map +1 -1
  291. package/dist/ui/components/organisms/vc-table/index.d.ts +205 -661
  292. package/dist/ui/components/organisms/vc-table/index.d.ts.map +1 -1
  293. package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts +185 -134
  294. package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts.map +1 -1
  295. package/dist/ui/types/index.d.ts +2 -0
  296. package/dist/ui/types/index.d.ts.map +1 -1
  297. package/package.json +23 -22
  298. package/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +3 -2
  299. package/shared/components/app-switcher/composables/useAppSwitcher/index.ts +4 -2
  300. package/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +25 -26
  301. package/shared/components/blade-navigation/composables/useBladeNavigation/index.ts +106 -68
  302. package/shared/components/blade-navigation/index.ts +1 -12
  303. package/shared/components/blade-navigation/plugin.ts +33 -0
  304. package/shared/components/blade-navigation/types/index.ts +59 -36
  305. package/{core/plugins → shared/components}/error-interceptor/interceptor.ts +1 -1
  306. package/shared/components/notifications/composables/useContainer/index.ts +2 -2
  307. package/shared/components/notifications/core/notification.ts +1 -1
  308. package/shared/components/notifications/index.ts +0 -11
  309. package/shared/components/popup-handler/components/index.ts +1 -0
  310. package/shared/components/popup-handler/components/vc-popup-container/index.ts +3 -0
  311. package/shared/components/popup-handler/components/vc-popup-container/vc-popup-container.vue +25 -0
  312. package/shared/components/popup-handler/composables/index.ts +1 -0
  313. package/shared/components/popup-handler/composables/usePopup/index.ts +129 -0
  314. package/shared/components/popup-handler/index.ts +19 -0
  315. package/shared/components/popup-handler/plugin.ts +24 -0
  316. package/shared/components/popup-handler/types/index.ts +28 -0
  317. package/shared/components/popup-handler/utils/index.ts +9 -0
  318. package/shared/index.ts +4 -2
  319. package/shared/modules/assets/components/assets-details/assets-details.vue +12 -10
  320. package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +33 -30
  321. package/ui/components/atoms/vc-button/vc-button.vue +1 -1
  322. package/ui/components/atoms/vc-card/vc-card.vue +2 -2
  323. package/ui/components/atoms/vc-info-row/vc-info-row.vue +2 -2
  324. package/ui/components/atoms/vc-label/vc-label.vue +1 -1
  325. package/ui/components/atoms/vc-loading/vc-loading.vue +1 -1
  326. package/ui/components/atoms/vc-switch/vc-switch.vue +1 -1
  327. package/ui/components/index.ts +2 -0
  328. package/ui/components/molecules/vc-code-editor/vc-code-editor.vue +3 -3
  329. package/ui/components/molecules/vc-editor/vc-editor.vue +3 -3
  330. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +2 -2
  331. package/ui/components/molecules/vc-input/vc-input.vue +17 -17
  332. package/ui/components/molecules/vc-input-currency/vc-input-currency.vue +8 -8
  333. package/ui/components/molecules/vc-notification/vc-notification.vue +1 -1
  334. package/ui/components/molecules/vc-rating/vc-rating.vue +1 -1
  335. package/ui/components/molecules/vc-select/index.ts +1 -86
  336. package/ui/components/molecules/vc-select/vc-select.stories.ts +1 -1
  337. package/ui/components/molecules/vc-select/vc-select.vue +276 -198
  338. package/ui/components/molecules/vc-slider/vc-slider.vue +3 -3
  339. package/ui/components/molecules/vc-textarea/vc-textarea.vue +2 -2
  340. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +20 -15
  341. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +5 -9
  342. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +18 -27
  343. package/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue +22 -16
  344. package/ui/components/organisms/vc-app/vc-app.vue +20 -17
  345. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue +5 -5
  346. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +4 -4
  347. package/ui/components/organisms/vc-blade/vc-blade.vue +25 -32
  348. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +84 -84
  349. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +3 -3
  350. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +9 -3
  351. package/ui/components/organisms/vc-gallery/vc-gallery.vue +27 -23
  352. package/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue +63 -0
  353. package/ui/components/organisms/vc-notification-dropdown/index.ts +3 -0
  354. package/ui/components/organisms/vc-notification-dropdown/vc-notification-dropdown.vue +125 -0
  355. package/ui/components/organisms/vc-notification-template/index.ts +3 -0
  356. package/ui/components/organisms/vc-notification-template/vc-notification-template.vue +33 -0
  357. package/ui/components/organisms/vc-popup/_internal/vc-popup-error/vc-popup-error.vue +28 -0
  358. package/ui/components/organisms/vc-popup/_internal/vc-popup-warning/vc-popup-warning.vue +33 -0
  359. package/ui/components/organisms/vc-popup/vc-popup.vue +62 -7
  360. package/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue +6 -6
  361. package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +5 -5
  362. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +27 -24
  363. package/ui/components/organisms/vc-table/index.ts +1 -17
  364. package/ui/components/organisms/vc-table/vc-table.stories.ts +1 -1
  365. package/ui/components/organisms/vc-table/vc-table.vue +140 -132
  366. package/ui/locales/en.json +21 -10
  367. package/ui/types/index.ts +2 -0
  368. package/core/directives/click-outside/index.ts +0 -21
  369. package/dist/core/directives/click-outside/index.d.ts +0 -3
  370. package/dist/core/directives/click-outside/index.d.ts.map +0 -1
  371. package/dist/core/plugins/error-interceptor/index.d.ts.map +0 -1
  372. package/dist/core/plugins/error-interceptor/interceptor.d.ts.map +0 -1
  373. /package/{core/plugins → shared/components}/error-interceptor/index.ts +0 -0
@@ -2,11 +2,11 @@
2
2
  <div class="tw-relative tw-overflow-hidden tw-flex tw-flex-col tw-grow tw-basis-0">
3
3
  <!-- Header slot with filter and searchbar -->
4
4
  <slot
5
- name="header"
6
5
  v-if="
7
6
  ($slots['header'] || header) &&
8
7
  ((items && items.length) || searchValue || searchValue === '' || activeFilterCount)
9
8
  "
9
+ name="header"
10
10
  >
11
11
  <div class="tw-shrink-0 tw-flex tw-items-center tw-justify-between tw-p-4">
12
12
  <!-- Table filter mobile button -->
@@ -15,10 +15,10 @@
15
15
  class="tw-mr-3"
16
16
  >
17
17
  <VcTableFilter :counter="activeFilterCount">
18
- <template v-slot:default="{ closePanel }">
18
+ <template #default="{ closePanel }">
19
19
  <slot
20
20
  name="filters"
21
- :closePanel="closePanel"
21
+ :close-panel="closePanel"
22
22
  ></slot>
23
23
  </template>
24
24
  </VcTableFilter>
@@ -30,8 +30,8 @@
30
30
  :placeholder="searchPlaceholder"
31
31
  clearable
32
32
  name="table_search"
33
- :modelValue="searchValue"
34
- @update:modelValue="$emit('search:change', $event)"
33
+ :model-value="searchValue"
34
+ @update:model-value="$emit('search:change', $event)"
35
35
  ></VcInput>
36
36
 
37
37
  <!-- Table filter desktop button -->
@@ -40,14 +40,14 @@
40
40
  class="tw-ml-3"
41
41
  >
42
42
  <VcTableFilter
43
- :title="$t('Filters')"
43
+ :title="$t('COMPONENTS.ORGANISMS.VC_TABLE.ALL_FILTERS')"
44
44
  :counter="activeFilterCount"
45
- :parentExpanded="expanded"
45
+ :parent-expanded="expanded"
46
46
  >
47
- <template v-slot:default="{ closePanel }">
47
+ <template #default="{ closePanel }">
48
48
  <slot
49
49
  name="filters"
50
- :closePanel="closePanel"
50
+ :close-panel="closePanel"
51
51
  ></slot>
52
52
  </template>
53
53
  </VcTableFilter>
@@ -63,9 +63,9 @@
63
63
  <VcContainer
64
64
  v-if="items && items.length"
65
65
  ref="scrollContainer"
66
- :noPadding="true"
66
+ :no-padding="true"
67
67
  class="tw-grow tw-basis-0"
68
- :usePtr="!!$attrs['onScroll:ptr']"
68
+ :use-ptr="!!$attrs['onScroll:ptr']"
69
69
  @scroll:ptr="$emit('scroll:ptr')"
70
70
  >
71
71
  <!-- Mobile table view -->
@@ -75,10 +75,10 @@
75
75
  v-for="(item, i) in items"
76
76
  :key="i"
77
77
  :item="item"
78
- :actionBuilder="itemActionBuilder"
78
+ :action-builder="itemActionBuilder"
79
+ :swiping-item="mobileSwipeItem"
79
80
  @click="$emit('itemClick', item)"
80
- @swipeStart="handleSwipe"
81
- :swipingItem="mobileSwipeItem"
81
+ @swipe-start="handleSwipe"
82
82
  >
83
83
  <slot
84
84
  name="mobile-item"
@@ -118,8 +118,8 @@
118
118
  </div>
119
119
  </th>
120
120
  <th
121
- class="tw-h-[42px] tw-w-[21px] tw-max-w-[21px] tw-min-w-[21px] tw-bg-[#f9f9f9] tw-m-w-[70px] !tw-border-0 tw-shadow-[inset_0px_1px_0px_#eaedf3,_inset_0px_-1px_0px_#eaedf3] tw-box-border tw-sticky tw-top-0 tw-select-none tw-z-[1]"
122
121
  v-if="itemActionBuilder"
122
+ class="tw-h-[42px] tw-w-[21px] tw-max-w-[21px] tw-min-w-[21px] tw-bg-[#f9f9f9] tw-m-w-[70px] !tw-border-0 tw-shadow-[inset_0px_1px_0px_#eaedf3,_inset_0px_-1px_0px_#eaedf3] tw-box-border tw-sticky tw-top-0 tw-select-none tw-z-[1]"
123
123
  >
124
124
  <div class="tw-w-3 tw-top-0 tw-bottom-0 tw-absolute tw-right-0 tw-flex tw-justify-end">
125
125
  <div class="tw-w-px tw-bg-[#e5e7eb] tw-h-full"></div>
@@ -127,19 +127,19 @@
127
127
  </th>
128
128
  <th
129
129
  v-for="item in filteredCols"
130
- @mousedown="onColumnHeaderMouseDown"
131
- @dragstart="onColumnHeaderDragStart($event, item)"
132
- @dragover="onColumnHeaderDragOver"
133
- @dragleave="onColumnHeaderDragLeave"
134
- @drop="onColumnHeaderDrop($event, item)"
130
+ :id="item.id"
135
131
  :key="item.id"
136
132
  class="tw-h-[42px] tw-bg-[#f9f9f9] !tw-border-0 tw-shadow-[inset_0px_1px_0px_#eaedf3,_inset_0px_-1px_0px_#eaedf3] tw-box-border tw-sticky tw-top-0 tw-select-none tw-overflow-hidden tw-z-[1]"
137
133
  :class="{
138
134
  'tw-cursor-pointer tw-group': item.sortable,
139
135
  }"
140
- @click="handleHeaderClick(item)"
141
136
  :style="{ maxWidth: item.width, width: item.width }"
142
- :id="item.id"
137
+ @mousedown="onColumnHeaderMouseDown"
138
+ @dragstart="onColumnHeaderDragStart($event, item)"
139
+ @dragover="onColumnHeaderDragOver"
140
+ @dragleave="onColumnHeaderDragLeave"
141
+ @drop="onColumnHeaderDrop($event, item)"
142
+ @click="handleHeaderClick(item)"
143
143
  >
144
144
  <div
145
145
  class="tw-flex tw-items-center tw-flex-nowrap tw-truncate tw-px-3"
@@ -158,8 +158,8 @@
158
158
  ></VcIcon>
159
159
  </div>
160
160
  <div
161
- class="tw-flex tw-flex-col tw-ml-1 tw-invisible group-hover:tw-visible"
162
161
  v-else
162
+ class="tw-flex tw-flex-col tw-ml-1 tw-invisible group-hover:tw-visible"
163
163
  >
164
164
  <VcIcon
165
165
  size="xs"
@@ -183,8 +183,8 @@
183
183
  class="tw-w-auto tw-h-[42px] tw-bg-[#f9f9f9] !tw-border-0 tw-shadow-[inset_0px_1px_0px_#eaedf3,_inset_0px_-1px_0px_#eaedf3] tw-box-border tw-sticky tw-top-0 tw-select-none tw-overflow-hidden tw-z-[1]"
184
184
  ></th>
185
185
  <div
186
- class="tw-sticky tw-h-[42px] tw-z-[1] tw-right-0 tw-top-0 tw-table-cell tw-align-middle tw-w-0"
187
186
  v-if="props.expanded"
187
+ class="tw-sticky tw-h-[42px] tw-z-[1] tw-right-0 tw-top-0 tw-table-cell tw-align-middle tw-w-0"
188
188
  >
189
189
  <VcTableColumnSwitcher
190
190
  :items="toggleCols"
@@ -202,8 +202,8 @@
202
202
  ></div>
203
203
  </thead>
204
204
  <div
205
- class="tw-h-[60px] tw-bg-[#dfeef9] tw-w-full tw-absolute tw-flex"
206
205
  v-if="bulkDelete && allSelected"
206
+ class="tw-h-[60px] tw-bg-[#dfeef9] tw-w-full tw-absolute tw-flex"
207
207
  >
208
208
  <div class="tw-w-full tw-flex tw-items-center tw-justify-center">
209
209
  <div>
@@ -255,28 +255,28 @@
255
255
  >
256
256
  <div class="tw-flex tw-justify-center tw-items-center">
257
257
  <VcCheckbox
258
- @update:model-value="rowCheckbox(item)"
259
258
  :model-value="isSelected(item)"
259
+ @update:model-value="rowCheckbox(item)"
260
260
  ></VcCheckbox>
261
261
  </div>
262
262
  <div class="tw-w-px tw-top-0 tw-bottom-0 tw-absolute tw-right-0 tw-bg-[#e5e7eb]"></div>
263
263
  </td>
264
264
  <td
265
- class="tw-box-border tw-overflow-visible tw-w-[21px] tw-max-w-[21px] tw-min-w-[21px] tw-relative"
266
265
  v-if="itemActionBuilder && typeof item === 'object'"
266
+ class="tw-box-border tw-overflow-visible tw-w-[21px] tw-max-w-[21px] tw-min-w-[21px] tw-relative"
267
267
  @click.stop
268
268
  >
269
269
  <div
270
270
  class="vc-table__body-actions-container tw-relative tw-flex tw-justify-center tw-items-center tw-group"
271
271
  >
272
272
  <button
273
+ :ref="(el: Element) => setActionToggleRefs(el, item.id)"
273
274
  class="tw-text-[#41afe6] tw-cursor-pointer tw-border-none tw-bg-transparent disabled:tw-text-[gray] tw-w-full"
274
275
  :class="{
275
276
  'group-hover:tw-text-[#319ed4]': itemActions[itemIndex] && itemActions[itemIndex].length,
276
277
  }"
277
- @click.stop="showActions(item, item.id)"
278
- :ref="(el: Element) => setActionToggleRefs(el, item.id)"
279
278
  :disabled="!(itemActions[itemIndex] && itemActions[itemIndex].length)"
279
+ @click.stop="showActions(item, item.id)"
280
280
  >
281
281
  <VcIcon
282
282
  icon="fas fa-ellipsis-v"
@@ -284,11 +284,11 @@
284
284
  />
285
285
  </button>
286
286
  <div
287
- class="vc-table__body-tooltip tw-bg-white tw-rounded-[4px] tw-p-[15px] tw-z-[1] tw-absolute tw-right-0 tw-drop-shadow-[1px_3px_14px_rgba(111,122,131,0.25)] tw-w-max"
288
287
  v-show="selectedRow === item.id"
289
- @mouseleave="closeActions"
290
288
  :ref="(el: Element) => setTooltipRefs(el, item.id)"
289
+ class="vc-table__body-tooltip tw-bg-white tw-rounded-[4px] tw-p-[15px] tw-z-[1] tw-absolute tw-right-0 tw-drop-shadow-[1px_3px_14px_rgba(111,122,131,0.25)] tw-w-max"
291
290
  :style="tooltipStyle"
291
+ @mouseleave="closeActions"
292
292
  >
293
293
  <div
294
294
  class="tw-flex tw-items-start tw-flex-col tw-text-[#3f3f3f] tw-font-normal not-italic tw-text-base tw-leading-[20px] tw-gap-[25px]"
@@ -314,9 +314,9 @@
314
314
  </div>
315
315
  </div>
316
316
  <div
317
+ :ref="(el: Element) => setTooltipArrowRefs(el, item.id)"
317
318
  class="vc-table__body-tooltip-arrow"
318
319
  :style="arrowStyle"
319
- :ref="(el: Element) => setTooltipArrowRefs(el, item.id)"
320
320
  ></div>
321
321
  </div>
322
322
  </div>
@@ -398,8 +398,8 @@
398
398
 
399
399
  <!-- Table footer -->
400
400
  <slot
401
- name="footer"
402
401
  v-if="($slots['footer'] || footer) && items && items.length"
402
+ name="footer"
403
403
  >
404
404
  <div
405
405
  class="tw-bg-[#fbfdfe] tw-border-t tw-border-solid tw-border-[#eaedf3] tw-flex-shrink-0 tw-flex tw-items-center tw-justify-between tw-p-4"
@@ -408,8 +408,8 @@
408
408
  <VcPagination
409
409
  :expanded="expanded"
410
410
  :pages="pages"
411
- :currentPage="currentPage"
412
- @itemClick="$emit('paginationClick', $event)"
411
+ :current-page="currentPage"
412
+ @item-click="$emit('paginationClick', $event)"
413
413
  ></VcPagination>
414
414
 
415
415
  <!-- Table counter -->
@@ -421,8 +421,8 @@
421
421
  </slot>
422
422
  </div>
423
423
  </template>
424
-
425
- <script lang="ts" setup>
424
+ <!-- eslint-disable @typescript-eslint/no-explicit-any -->
425
+ <script lang="ts" setup generic="T extends TableItem | string">
426
426
  import { computed, ref, watch, onBeforeUpdate, onBeforeUnmount, Ref, onUpdated, onBeforeMount, nextTick } from "vue";
427
427
  import VcTableCounter from "./_internal/vc-table-counter/vc-table-counter.vue";
428
428
  import VcTableFilter from "./_internal/vc-table-filter/vc-table-filter.vue";
@@ -433,7 +433,6 @@ import { offset, flip, arrow, computePosition, ComputePositionReturn } from "@fl
433
433
  import { IActionBuilderResult, ITableColumns } from "./../../../../core/types";
434
434
  import { useLocalStorage, useCurrentElement } from "@vueuse/core";
435
435
  import { VcContainer, VcInput, VcCheckbox, VcIcon, VcPagination, VcButton, VcLoading } from "./../../";
436
- import * as _ from "lodash-es";
437
436
 
438
437
  export interface StatusImage {
439
438
  image?: string;
@@ -443,80 +442,86 @@ export interface StatusImage {
443
442
  }
444
443
 
445
444
  export interface TableItem {
446
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
447
445
  [x: string]: any;
448
- id?: string;
449
446
  actions?: IActionBuilderResult[];
450
447
  }
451
448
 
452
- export type TableItemType = TableItem | string;
453
-
454
- export interface Props {
455
- columns: ITableColumns[];
456
- items: TableItemType[];
457
- itemActionBuilder?: (item: TableItem) => IActionBuilderResult[];
458
- sort?: string;
459
- multiselect?: boolean;
460
- expanded?: boolean;
461
- totalLabel?: string;
462
- totalCount?: number;
463
- pages?: number;
464
- currentPage?: number;
465
- searchPlaceholder?: string;
466
- searchValue?: string;
467
- loading?: boolean;
468
- empty?: StatusImage;
469
- notfound?: StatusImage;
470
- header?: boolean;
471
- footer?: boolean;
472
- activeFilterCount?: number;
473
- selectedItemId?: string;
474
- scrolling?: boolean;
475
- resizableColumns?: boolean;
476
- reorderableColumns?: boolean;
477
- reorderableRows?: boolean;
478
- stateKey: string;
479
- bulkDelete?: boolean;
449
+ defineSlots<{
450
+ header: (props: any) => any;
451
+ filters: (args: { closePanel: () => void }) => any;
452
+ "mobile-item": (args: { item: T }) => any;
453
+ [key: `header_${string}`]: (props: any) => any;
454
+ [key: `item_${string}`]: (args: { item: T; cell: ITableColumns }) => any;
455
+ notfound: (props: any) => any;
456
+ empty: (props: any) => any;
457
+ footer: (props: any) => any;
458
+ }>();
459
+
460
+ const props = withDefaults(
461
+ defineProps<{
462
+ columns: ITableColumns[];
463
+ items: T[];
464
+ itemActionBuilder?: (item: T) => IActionBuilderResult[];
465
+ sort?: string;
466
+ multiselect?: boolean;
467
+ expanded?: boolean;
468
+ totalLabel?: string;
469
+ totalCount?: number;
470
+ pages?: number;
471
+ currentPage?: number;
472
+ searchPlaceholder?: string;
473
+ searchValue?: string;
474
+ loading?: boolean;
475
+ empty?: StatusImage;
476
+ notfound?: StatusImage;
477
+ header?: boolean;
478
+ footer?: boolean;
479
+ activeFilterCount?: number;
480
+ selectedItemId?: string;
481
+ scrolling?: boolean;
482
+ resizableColumns?: boolean;
483
+ reorderableColumns?: boolean;
484
+ reorderableRows?: boolean;
485
+ stateKey: string;
486
+ bulkDelete?: boolean;
487
+ }>(),
488
+ {
489
+ items: () => [],
490
+ totalLabel: "Totals:",
491
+ totalCount: 0,
492
+ pages: 0,
493
+ expanded: true,
494
+ currentPage: 0,
495
+ searchPlaceholder: "Search...",
496
+ empty: () => ({
497
+ text: "List is empty.",
498
+ }),
499
+ notfound: () => ({
500
+ text: "Nothing found.",
501
+ }),
502
+ header: true,
503
+ footer: true,
504
+ activeFilterCount: 0,
505
+ resizableColumns: true,
506
+ reorderableColumns: true,
507
+ }
508
+ );
509
+
510
+ interface ITableItemRef {
511
+ element: Element;
512
+ id: string;
480
513
  }
481
514
 
482
- export interface Emits {
515
+ const emit = defineEmits<{
483
516
  (event: "paginationClick", page: number): void;
484
- (event: "selectionChanged", values: TableItemType[]): void;
517
+ (event: "selectionChanged", values: T[]): void;
485
518
  (event: "search:change", value: string): void;
486
519
  (event: "headerClick", value: Record<string, unknown>): void;
487
- (event: "itemClick", item: TableItemType): void;
520
+ (event: "itemClick", item: T): void;
488
521
  (event: "scroll:ptr"): void;
489
- (event: "row:reorder", args: { dragIndex: number; dropIndex: number; value: TableItemType[] }): void;
522
+ (event: "row:reorder", args: { dragIndex: number; dropIndex: number; value: T[] }): void;
490
523
  (event: "bulk:delete"): void;
491
- }
492
-
493
- const props = withDefaults(defineProps<Props>(), {
494
- items: () => [],
495
- totalLabel: "Totals:",
496
- totalCount: 0,
497
- pages: 0,
498
- expanded: true,
499
- currentPage: 0,
500
- searchPlaceholder: "Search...",
501
- empty: () => ({
502
- text: "List is empty.",
503
- }),
504
- notfound: () => ({
505
- text: "Nothing found.",
506
- }),
507
- header: true,
508
- footer: true,
509
- activeFilterCount: 0,
510
- resizableColumns: true,
511
- reorderableColumns: true,
512
- });
513
-
514
- interface ITableItemRef {
515
- element: Element;
516
- id: string;
517
- }
518
-
519
- const emit = defineEmits<Emits>();
524
+ }>();
520
525
 
521
526
  // template refs
522
527
  const tooltipRefs = ref<ITableItemRef[]>([]);
@@ -528,7 +533,7 @@ const tableRef = ref<HTMLElement | null>();
528
533
  let columnResizeListener = null;
529
534
  let columnResizeEndListener = null;
530
535
 
531
- const selection = ref<TableItemType[]>([]);
536
+ const selection = ref<T[]>([]) as Ref<T[]>;
532
537
  const bulkSelected = ref(false);
533
538
 
534
539
  const selectedRow = ref<string>();
@@ -551,7 +556,7 @@ const draggedElement = ref<HTMLElement>();
551
556
  const dropPosition = ref();
552
557
 
553
558
  // row reordering variables
554
- const draggedRow = ref<TableItemType>();
559
+ const draggedRow = ref<T>();
555
560
  const rowDragged = ref(false);
556
561
  const droppedRowIndex = ref<number>();
557
562
  const draggedRowIndex = ref<number>();
@@ -670,11 +675,11 @@ function handleBulkSelection() {
670
675
  emit("bulk:delete");
671
676
  }
672
677
 
673
- function isSelected(item: TableItemType) {
678
+ function isSelected(item: T) {
674
679
  return selection.value.indexOf(item) > -1;
675
680
  }
676
681
 
677
- function rowCheckbox(item: TableItemType) {
682
+ function rowCheckbox(item: T) {
678
683
  const clear = item;
679
684
  const index = selection.value.indexOf(clear);
680
685
  if (index > -1) {
@@ -711,28 +716,31 @@ function setTooltipArrowRefs(el: Element, id: string) {
711
716
  }
712
717
  }
713
718
 
714
- function showActions(item: TableItem, index: string) {
715
- if (selectedRow.value) {
716
- closeActions();
717
- return;
718
- }
719
- selectedRow.value = item.id;
720
-
721
- const toggleRef = actionToggleRefs.value.find((item) => item.id === index).element;
722
- const tooltipRef = tooltipRefs.value.find((item) => item.id === index).element;
723
- const tooltipArrowRef = tooltipArrowRefs.value.find((item) => item.id === index).element;
724
-
725
- if (toggleRef && tooltipRef && tooltipArrowRef) {
726
- nextTick(() => {
727
- computePosition(toggleRef, tooltipRef as HTMLElement, {
728
- placement: "bottom",
729
- middleware: [
730
- flip({ fallbackPlacements: ["top", "bottom"] }),
731
- offset({ crossAxis: 15, mainAxis: 15 }),
732
- arrow({ element: tooltipArrowRef as HTMLElement }),
733
- ],
734
- }).then((item) => (tooltip.value = item));
735
- });
719
+ function showActions(item: T, index: string) {
720
+ if (typeof item !== "string") {
721
+ if (selectedRow.value) {
722
+ closeActions();
723
+ return;
724
+ }
725
+
726
+ selectedRow.value = item.id;
727
+
728
+ const toggleRef = actionToggleRefs.value.find((item) => item.id === index).element;
729
+ const tooltipRef = tooltipRefs.value.find((item) => item.id === index).element;
730
+ const tooltipArrowRef = tooltipArrowRefs.value.find((item) => item.id === index).element;
731
+
732
+ if (toggleRef && tooltipRef && tooltipArrowRef) {
733
+ nextTick(() => {
734
+ computePosition(toggleRef, tooltipRef as HTMLElement, {
735
+ placement: "bottom",
736
+ middleware: [
737
+ flip({ fallbackPlacements: ["top", "bottom"] }),
738
+ offset({ crossAxis: 15, mainAxis: 15 }),
739
+ arrow({ element: tooltipArrowRef as HTMLElement }),
740
+ ],
741
+ }).then((item) => (tooltip.value = item));
742
+ });
743
+ }
736
744
  }
737
745
  }
738
746
 
@@ -758,12 +766,12 @@ const arrowStyle = computed(() => {
758
766
  };
759
767
  });
760
768
 
761
- async function calculateActions(items: TableItemType[]) {
769
+ async function calculateActions(items: T[]) {
762
770
  if (typeof props.itemActionBuilder === "function") {
763
771
  const populatedItems = [];
764
772
  for (let index = 0; index < items.length; index++) {
765
773
  if (typeof items[index] === "object") {
766
- const elementWithActions = await props.itemActionBuilder(items[index] as TableItem);
774
+ const elementWithActions = await props.itemActionBuilder(items[index]);
767
775
  populatedItems.push(elementWithActions);
768
776
  }
769
777
  }
@@ -1034,7 +1042,7 @@ function onRowMouseDown(event: MouseEvent & { currentTarget?: { draggable: boole
1034
1042
  }
1035
1043
  }
1036
1044
 
1037
- function onRowDragStart(event: DragEvent, item: TableItem | string) {
1045
+ function onRowDragStart(event: DragEvent, item: T) {
1038
1046
  if (!props.reorderableRows) {
1039
1047
  return;
1040
1048
  }
@@ -1044,7 +1052,7 @@ function onRowDragStart(event: DragEvent, item: TableItem | string) {
1044
1052
  event.dataTransfer.setData("text", "row-reorder");
1045
1053
  }
1046
1054
 
1047
- function onRowDragOver(event: DragEvent, item: TableItem | string) {
1055
+ function onRowDragOver(event: DragEvent, item: T) {
1048
1056
  if (!props.reorderableRows) {
1049
1057
  return;
1050
1058
  }
@@ -1117,7 +1125,7 @@ function onRowDrop(event: DragEvent) {
1117
1125
  emit("row:reorder", {
1118
1126
  dragIndex: draggedRowIndex.value,
1119
1127
  dropIndex: dropIndex,
1120
- value: processedItems as TableItemType[],
1128
+ value: processedItems as T[],
1121
1129
  });
1122
1130
  }
1123
1131
 
@@ -1,17 +1,28 @@
1
1
  {
2
- "COMPONENTS":{
3
- "ORGANISMS":{
4
- "VC_BLADE":{
2
+ "COMPONENTS": {
3
+ "ORGANISMS": {
4
+ "VC_BLADE": {
5
5
  "SEE_DETAILS": "See details",
6
- "ERROR_POPUP":{
7
- "TITLE":"Error details"
6
+ "ERROR_POPUP": {
7
+ "TITLE": "Error details"
8
8
  }
9
9
  },
10
- "VC_TABLE":{
11
- "ALL_SELECTED":"All items in this page are selected.",
12
- "SELECT":"Select all items",
13
- "ALL_BULK_SELECTED":"All items are selected.",
14
- "CANCEL": "Cancel selection"
10
+ "VC_TABLE": {
11
+ "ALL_SELECTED": "All items in this page are selected.",
12
+ "SELECT": "Select all items",
13
+ "ALL_BULK_SELECTED": "All items are selected.",
14
+ "CANCEL": "Cancel selection",
15
+ "ALL_ACTIONS": "All actions",
16
+ "ALL_FILTERS": "Filters"
17
+ },
18
+ "VC_NOTIFICATION_DROPDOWN": {
19
+ "EMPTY": "No notifications yet"
20
+ },
21
+ "VC_POPUP": {
22
+ "TITLE": {
23
+ "CONFIRMATION": "Confirmation",
24
+ "ERROR": "Error"
25
+ }
15
26
  }
16
27
  }
17
28
  }
package/ui/types/index.ts CHANGED
@@ -47,6 +47,8 @@ declare module "@vue/runtime-core" {
47
47
  VcLoginForm: (typeof VcShellComponents)["VcLoginForm"];
48
48
  VcPopup: (typeof VcShellComponents)["VcPopup"];
49
49
  VcTable: (typeof VcShellComponents)["VcTable"];
50
+ VcNotificationDropdown: (typeof VcShellComponents)["VcNotificationDropdown"];
51
+ VcNotificationTemplate: (typeof VcShellComponents)["VcNotificationTemplate"];
50
52
  }
51
53
  }
52
54
 
@@ -1,21 +0,0 @@
1
- import { Directive, DirectiveBinding } from "vue";
2
-
3
- interface OutsideClickableHTMLElement extends HTMLElement {
4
- _outsideClickHandler: (event: MouseEvent | TouchEvent) => void;
5
- }
6
-
7
- export const clickOutside = {
8
- mounted(el: OutsideClickableHTMLElement, binding: DirectiveBinding): void {
9
- const closeHandler = binding.value;
10
- el._outsideClickHandler = function (event: MouseEvent | TouchEvent) {
11
- if (!el.contains(event.target as Node)) {
12
- event.stopPropagation();
13
- closeHandler();
14
- }
15
- };
16
- document.addEventListener("click", el._outsideClickHandler);
17
- },
18
- unmounted(el: OutsideClickableHTMLElement): void {
19
- document.removeEventListener("click", el._outsideClickHandler);
20
- },
21
- } as Directive;
@@ -1,3 +0,0 @@
1
- import { Directive } from "vue";
2
- export declare const clickOutside: Directive<any, any>;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/directives/click-outside/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoB,MAAM,KAAK,CAAC;AAMlD,eAAO,MAAM,YAAY,qBAcX,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/plugins/error-interceptor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AAG5B,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAGP;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,IAAI,CAAA;SAAE,KAAK,KAAK,EAAE;;EAGrE,CAAC;AAGF,OAAO,QAAQ,mBAAmB,CAAC;IACjC,UAAiB,gBAAgB;QAC/B,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;KAC3C;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../../../../core/plugins/error-interceptor/interceptor.ts"],"names":[],"mappings":"AACA,OAAO,EAAiC,KAAK,EAAE,MAAM,KAAK,CAAC;AAE3D,MAAM,WAAW,KAAK;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE;QACL,OAAO,EAAE,CAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,IAAI,CAAA;SAAE,KAAK,KAAK,EAAE,CAAC;KAClE,CAAC;CACH,CAAC;;;;;;;;;iBAUe,KAAK,GAAG,MAAM;;;;;;;;;;;;;AAR/B,wBAwBG"}