@vc-shell/framework 1.1.0-alpha.1 → 1.1.0-alpha.11

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 (880) hide show
  1. package/CHANGELOG.md +129 -0
  2. package/core/api/platform.ts +9883 -9883
  3. package/core/composables/index.ts +11 -7
  4. package/core/composables/useApiClient/index.ts +22 -22
  5. package/core/composables/useAppBarMobileButtons/index.ts +17 -0
  6. package/core/composables/useAppBarWidget/index.ts +19 -0
  7. package/core/composables/useAssets/index.ts +2 -2
  8. package/core/composables/useBeforeUnload/index.ts +25 -25
  9. package/core/composables/useDashboard/index.ts +19 -0
  10. package/core/composables/useFunctions/debounce.ts +16 -16
  11. package/core/composables/useFunctions/delay.ts +4 -4
  12. package/core/composables/useFunctions/index.ts +21 -21
  13. package/core/composables/useFunctions/once.ts +12 -12
  14. package/core/composables/useFunctions/sleep.ts +4 -4
  15. package/core/composables/useFunctions/throttle.ts +14 -14
  16. package/core/composables/useGlobalSearch/index.ts +19 -0
  17. package/core/composables/useKeyboardNavigation/index.ts +211 -0
  18. package/core/composables/useLanguages/index.ts +78 -78
  19. package/core/composables/useLoading/index.ts +9 -9
  20. package/core/composables/useMenuService/index.ts +15 -105
  21. package/core/composables/useSettings/index.ts +6 -2
  22. package/core/composables/useSettingsMenu/index.ts +23 -0
  23. package/core/composables/useTheme/index.ts +62 -61
  24. package/core/composables/useWidgets/index.ts +20 -0
  25. package/core/constants/index.ts +2 -0
  26. package/core/directives/autofocus/index.ts +9 -9
  27. package/core/directives/loading/index.ts +30 -1
  28. package/core/directives/loading/styles.css +36 -7
  29. package/core/plugins/i18n/index.ts +11 -11
  30. package/core/plugins/modularity/README.md +152 -0
  31. package/core/plugins/modularity/extensions-helper.ts +209 -0
  32. package/core/plugins/modularity/index.ts +33 -30
  33. package/core/plugins/modularity/loader.ts +102 -45
  34. package/core/plugins/moment/humanize.ts +74 -74
  35. package/core/plugins/moment/index.ts +1 -1
  36. package/core/plugins/permissions/index.ts +10 -10
  37. package/core/plugins/signalR/index.ts +2 -3
  38. package/core/plugins/validation/index.ts +1 -1
  39. package/core/plugins/validation/rules.ts +145 -145
  40. package/core/services/app-bar-menu-service.ts +87 -0
  41. package/core/services/app-bar-mobile-buttons-service.ts +57 -0
  42. package/core/services/dashboard-service.ts +121 -0
  43. package/core/services/global-search-service.ts +36 -0
  44. package/core/services/menu-service.ts +235 -0
  45. package/core/services/settings-menu-service.ts +75 -0
  46. package/core/services/widget-service.ts +147 -0
  47. package/core/types/index.ts +29 -10
  48. package/core/types/widget.ts +15 -0
  49. package/core/utilities/camelToSnake.ts +7 -7
  50. package/core/utilities/camelize.ts +5 -5
  51. package/core/utilities/generateId.ts +3 -3
  52. package/core/utilities/kebabToCamel.ts +7 -7
  53. package/dist/{asn1-DF4fnRHj.js → asn1-jKiBa2Ya.js} +20 -18
  54. package/dist/{clike-l4mx49Q1.js → clike-BUuHEmgZ.js} +0 -1
  55. package/dist/{cobol-CJVkMW0i.js → cobol-BlTKFDRj.js} +0 -1
  56. package/dist/core/composables/index.d.ts +11 -7
  57. package/dist/core/composables/index.d.ts.map +1 -1
  58. package/dist/core/composables/useAppBarMobileButtons/index.d.ts +3 -0
  59. package/dist/core/composables/useAppBarMobileButtons/index.d.ts.map +1 -0
  60. package/dist/core/composables/useAppBarWidget/index.d.ts +5 -0
  61. package/dist/core/composables/useAppBarWidget/index.d.ts.map +1 -0
  62. package/dist/core/composables/useDashboard/index.d.ts +5 -0
  63. package/dist/core/composables/useDashboard/index.d.ts.map +1 -0
  64. package/dist/core/composables/useGlobalSearch/index.d.ts +4 -0
  65. package/dist/core/composables/useGlobalSearch/index.d.ts.map +1 -0
  66. package/dist/core/composables/useKeyboardNavigation/index.d.ts +24 -0
  67. package/dist/core/composables/useKeyboardNavigation/index.d.ts.map +1 -0
  68. package/dist/core/composables/useMenuService/index.d.ts +4 -10
  69. package/dist/core/composables/useMenuService/index.d.ts.map +1 -1
  70. package/dist/core/composables/useSettings/index.d.ts.map +1 -1
  71. package/dist/core/composables/useSettingsMenu/index.d.ts +5 -0
  72. package/dist/core/composables/useSettingsMenu/index.d.ts.map +1 -0
  73. package/dist/core/composables/useTheme/index.d.ts.map +1 -1
  74. package/dist/core/composables/useWidgets/index.d.ts +5 -0
  75. package/dist/core/composables/useWidgets/index.d.ts.map +1 -0
  76. package/dist/core/constants/index.d.ts +1 -0
  77. package/dist/core/constants/index.d.ts.map +1 -1
  78. package/dist/core/directives/loading/index.d.ts.map +1 -1
  79. package/dist/core/plugins/modularity/extensions-helper.d.ts +43 -0
  80. package/dist/core/plugins/modularity/extensions-helper.d.ts.map +1 -0
  81. package/dist/core/plugins/modularity/index.d.ts +8 -7
  82. package/dist/core/plugins/modularity/index.d.ts.map +1 -1
  83. package/dist/core/plugins/modularity/loader.d.ts +8 -1
  84. package/dist/core/plugins/modularity/loader.d.ts.map +1 -1
  85. package/dist/core/plugins/signalR/index.d.ts.map +1 -1
  86. package/dist/core/services/app-bar-menu-service.d.ts +29 -0
  87. package/dist/core/services/app-bar-menu-service.d.ts.map +1 -0
  88. package/dist/core/services/app-bar-mobile-buttons-service.d.ts +24 -0
  89. package/dist/core/services/app-bar-mobile-buttons-service.d.ts.map +1 -0
  90. package/dist/core/services/dashboard-service.d.ts +33 -0
  91. package/dist/core/services/dashboard-service.d.ts.map +1 -0
  92. package/dist/core/services/global-search-service.d.ts +10 -0
  93. package/dist/core/services/global-search-service.d.ts.map +1 -0
  94. package/dist/core/services/menu-service.d.ts +17 -0
  95. package/dist/core/services/menu-service.d.ts.map +1 -0
  96. package/dist/core/services/settings-menu-service.d.ts +25 -0
  97. package/dist/core/services/settings-menu-service.d.ts.map +1 -0
  98. package/dist/core/services/widget-service.d.ts +39 -0
  99. package/dist/core/services/widget-service.d.ts.map +1 -0
  100. package/dist/core/types/index.d.ts +29 -10
  101. package/dist/core/types/index.d.ts.map +1 -1
  102. package/dist/core/types/widget.d.ts +12 -0
  103. package/dist/core/types/widget.d.ts.map +1 -0
  104. package/dist/{dockerfile-CFG_IPGn.js → dockerfile-DIy8NleC.js} +1 -1
  105. package/dist/{factor-DJHfQ4a1.js → factor-DDOC7X6P.js} +1 -1
  106. package/dist/framework.js +276 -228
  107. package/dist/{haxe-pdDS1aE8.js → haxe-70NVW1pR.js} +1 -1
  108. package/dist/index-Bi0kJi5Z.js +137 -0
  109. package/dist/{index-DQP89JB7.js → index-C21NKea4.js} +9 -9
  110. package/dist/{index-lQO4lsVu.js → index-C9n6vRCl.js} +6 -6
  111. package/dist/{index-C2fcXLd3.js → index-CBdNNVCt.js} +8 -8
  112. package/dist/{index-Df8tA8qI.js → index-CNEtPeAi.js} +9 -9
  113. package/dist/index-CPkPLIZF.js +243 -0
  114. package/dist/{index-DaD28rcu.js → index-CUwa-7vt.js} +10 -10
  115. package/dist/{index-Dg25Tarq.js → index-ClEfeR5e.js} +7 -7
  116. package/dist/{index-6afjoxl_.js → index-CtUvgwL1.js} +9 -9
  117. package/dist/{index-DrxadmGH.js → index-D7TQzX3d.js} +7 -7
  118. package/dist/{index-Y1Vd-H3g.js → index-DSYfAsS3.js} +94840 -91585
  119. package/dist/{index-D0rhsYYW.js → index-Dg1vmmpj.js} +5 -5
  120. package/dist/{index-BrmiwSoL.js → index-Dzz7ZfO9.js} +19 -19
  121. package/dist/index-dZEaziXz.js +607 -0
  122. package/dist/{index-BbQdOYmi.js → index-kg3-UkAr.js} +16 -16
  123. package/dist/{index-BrkL9UJR.js → index-vc0H8rq-.js} +42 -42
  124. package/dist/index-vegt24rG.js +308 -0
  125. package/dist/index.css +1 -1
  126. package/dist/index.d.ts +8 -0
  127. package/dist/index.d.ts.map +1 -1
  128. package/dist/injection-keys.d.ts +46 -0
  129. package/dist/injection-keys.d.ts.map +1 -0
  130. package/dist/{javascript-CWGekh08.js → javascript-WMWNx-Vj.js} +1 -1
  131. package/dist/{livescript-CE_BxZmN.js → livescript-CanGTf8u.js} +25 -25
  132. package/dist/locales/de.json +8 -2
  133. package/dist/locales/en.json +8 -3
  134. package/dist/{mllike-1yy7Y7jE.js → mllike-BSnXJBGA.js} +0 -3
  135. package/dist/{nsis-BtA0qkjU.js → nsis-fePjrhq7.js} +1 -1
  136. package/dist/{pascal-ixanSKUz.js → pascal-De0D6mP7.js} +1 -1
  137. package/dist/{pug-CW1q1xhQ.js → pug-BqUR2bBq.js} +1 -1
  138. package/dist/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +1 -1
  139. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue.d.ts +19 -0
  140. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue.d.ts.map +1 -0
  141. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -1
  142. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts +17 -1
  143. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts.map +1 -1
  144. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts +5 -1
  145. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -1
  146. package/dist/shared/components/blade-navigation/types/index.d.ts +9 -0
  147. package/dist/shared/components/blade-navigation/types/index.d.ts.map +1 -1
  148. package/dist/shared/components/change-password-button/change-password-button.vue.d.ts +3 -0
  149. package/dist/shared/components/change-password-button/change-password-button.vue.d.ts.map +1 -0
  150. package/dist/shared/components/change-password-button/index.d.ts +2 -0
  151. package/dist/shared/components/change-password-button/index.d.ts.map +1 -0
  152. package/dist/shared/components/common/popup/vc-popup-error.vue.d.ts +6 -2
  153. package/dist/shared/components/common/popup/vc-popup-error.vue.d.ts.map +1 -1
  154. package/dist/shared/components/common/popup/vc-popup-info.vue.d.ts +6 -2
  155. package/dist/shared/components/common/popup/vc-popup-info.vue.d.ts.map +1 -1
  156. package/dist/shared/components/common/popup/vc-popup-warning.vue.d.ts +6 -2
  157. package/dist/shared/components/common/popup/vc-popup-warning.vue.d.ts.map +1 -1
  158. package/dist/shared/components/dashboard-widget-card/dashboard-widget-card.vue.d.ts +25 -0
  159. package/dist/shared/components/dashboard-widget-card/dashboard-widget-card.vue.d.ts.map +1 -0
  160. package/dist/shared/components/dashboard-widget-card/index.d.ts +2 -0
  161. package/dist/shared/components/dashboard-widget-card/index.d.ts.map +1 -0
  162. package/dist/shared/components/draggable-dashboard/DraggableDashboard.vue.d.ts +8 -0
  163. package/dist/shared/components/draggable-dashboard/DraggableDashboard.vue.d.ts.map +1 -0
  164. package/dist/shared/components/draggable-dashboard/_internal/DashboardWidget.vue.d.ts +20 -0
  165. package/dist/shared/components/draggable-dashboard/_internal/DashboardWidget.vue.d.ts.map +1 -0
  166. package/dist/shared/components/draggable-dashboard/composables/useCellSizeCalculator.d.ts +25 -0
  167. package/dist/shared/components/draggable-dashboard/composables/useCellSizeCalculator.d.ts.map +1 -0
  168. package/dist/shared/components/draggable-dashboard/composables/useCollisionDetection.d.ts +27 -0
  169. package/dist/shared/components/draggable-dashboard/composables/useCollisionDetection.d.ts.map +1 -0
  170. package/dist/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.d.ts +376 -0
  171. package/dist/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.d.ts.map +1 -0
  172. package/dist/shared/components/draggable-dashboard/composables/useDashboardGrid.d.ts +20 -0
  173. package/dist/shared/components/draggable-dashboard/composables/useDashboardGrid.d.ts.map +1 -0
  174. package/dist/shared/components/draggable-dashboard/composables/useDragClone.d.ts +15 -0
  175. package/dist/shared/components/draggable-dashboard/composables/useDragClone.d.ts.map +1 -0
  176. package/dist/shared/components/draggable-dashboard/composables/useEventCoordinates.d.ts +33 -0
  177. package/dist/shared/components/draggable-dashboard/composables/useEventCoordinates.d.ts.map +1 -0
  178. package/dist/shared/components/draggable-dashboard/composables/useGridPosition.d.ts +57 -0
  179. package/dist/shared/components/draggable-dashboard/composables/useGridPosition.d.ts.map +1 -0
  180. package/dist/shared/components/draggable-dashboard/composables/useGridSystem.d.ts +22 -0
  181. package/dist/shared/components/draggable-dashboard/composables/useGridSystem.d.ts.map +1 -0
  182. package/dist/shared/components/draggable-dashboard/composables/useLayoutPersistence.d.ts +19 -0
  183. package/dist/shared/components/draggable-dashboard/composables/useLayoutPersistence.d.ts.map +1 -0
  184. package/dist/shared/components/draggable-dashboard/composables/useResizeObserver.d.ts +18 -0
  185. package/dist/shared/components/draggable-dashboard/composables/useResizeObserver.d.ts.map +1 -0
  186. package/dist/shared/components/draggable-dashboard/composables/useWidgetLayout.d.ts +14 -0
  187. package/dist/shared/components/draggable-dashboard/composables/useWidgetLayout.d.ts.map +1 -0
  188. package/dist/shared/components/draggable-dashboard/composables/useWidgetStyles.d.ts +21 -0
  189. package/dist/shared/components/draggable-dashboard/composables/useWidgetStyles.d.ts.map +1 -0
  190. package/dist/shared/components/draggable-dashboard/index.d.ts +2 -0
  191. package/dist/shared/components/draggable-dashboard/index.d.ts.map +1 -0
  192. package/dist/shared/components/draggable-dashboard/types.d.ts +84 -0
  193. package/dist/shared/components/draggable-dashboard/types.d.ts.map +1 -0
  194. package/dist/shared/components/generic-dropdown/generic-dropdown.vue.d.ts +46 -24
  195. package/dist/shared/components/generic-dropdown/generic-dropdown.vue.d.ts.map +1 -1
  196. package/dist/shared/components/index.d.ts +3 -2
  197. package/dist/shared/components/index.d.ts.map +1 -1
  198. package/dist/shared/components/language-selector/language-selector.vue.d.ts.map +1 -1
  199. package/dist/shared/components/logout-button/index.d.ts +2 -0
  200. package/dist/shared/components/logout-button/index.d.ts.map +1 -0
  201. package/dist/shared/components/logout-button/logout-button.vue.d.ts +3 -0
  202. package/dist/shared/components/logout-button/logout-button.vue.d.ts.map +1 -0
  203. package/dist/shared/components/notification-dropdown/_internal/notification/index.d.ts +2 -0
  204. package/dist/shared/components/notification-dropdown/_internal/notification/index.d.ts.map +1 -0
  205. package/dist/shared/components/notification-dropdown/_internal/notification/notification.vue.d.ts +3 -3
  206. package/dist/shared/components/notification-dropdown/_internal/notification/notification.vue.d.ts.map +1 -1
  207. package/dist/shared/components/notification-dropdown/notification-dropdown.vue.d.ts.map +1 -1
  208. package/dist/shared/components/notifications/components/notification-container/index.d.ts +1 -1
  209. package/dist/shared/components/notifications/components/notification-container/index.d.ts.map +1 -1
  210. package/dist/shared/components/settings-menu/index.d.ts +2 -0
  211. package/dist/shared/components/settings-menu/index.d.ts.map +1 -0
  212. package/dist/shared/components/settings-menu/settings-menu.vue.d.ts +3 -0
  213. package/dist/shared/components/settings-menu/settings-menu.vue.d.ts.map +1 -0
  214. package/dist/shared/components/settings-menu-item/index.d.ts +2 -0
  215. package/dist/shared/components/settings-menu-item/index.d.ts.map +1 -0
  216. package/dist/shared/components/{menu-item/menu-item.vue.d.ts → settings-menu-item/settings-menu-item.vue.d.ts} +22 -22
  217. package/dist/shared/components/settings-menu-item/settings-menu-item.vue.d.ts.map +1 -0
  218. package/dist/shared/components/sidebar/sidebar.vue.d.ts +6 -2
  219. package/dist/shared/components/sidebar/sidebar.vue.d.ts.map +1 -1
  220. package/dist/shared/components/theme-selector/theme-selector.vue.d.ts.map +1 -1
  221. package/dist/shared/components/user-dropdown-button/_internal/user-info.vue.d.ts +1 -0
  222. package/dist/shared/components/user-dropdown-button/_internal/user-info.vue.d.ts.map +1 -1
  223. package/dist/shared/components/user-dropdown-button/_internal/user-sidebar.vue.d.ts +1 -3
  224. package/dist/shared/components/user-dropdown-button/_internal/user-sidebar.vue.d.ts.map +1 -1
  225. package/dist/shared/components/user-dropdown-button/index.d.ts +9 -25
  226. package/dist/shared/components/user-dropdown-button/index.d.ts.map +1 -1
  227. package/dist/shared/components/user-dropdown-button/user-dropdown-button.vue.d.ts +1 -18
  228. package/dist/shared/components/user-dropdown-button/user-dropdown-button.vue.d.ts.map +1 -1
  229. package/dist/shared/composables/useMenuExpanded.d.ts +7 -0
  230. package/dist/shared/composables/useMenuExpanded.d.ts.map +1 -0
  231. package/dist/shared/modules/assets/index.d.ts.map +1 -1
  232. package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -1
  233. package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts +16 -16
  234. package/dist/shared/modules/dynamic/components/fields/Button.d.ts +1 -1
  235. package/dist/shared/modules/dynamic/components/fields/Card.d.ts +1 -1
  236. package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts +1 -1
  237. package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts +1 -1
  238. package/dist/shared/modules/dynamic/components/fields/CustomComponent.d.ts +1 -1
  239. package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts +1 -1
  240. package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts +1 -1
  241. package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts +1 -1
  242. package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts +1 -1
  243. package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts +1 -1
  244. package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts +1 -1
  245. package/dist/shared/modules/dynamic/components/fields/InputField.d.ts +1 -1
  246. package/dist/shared/modules/dynamic/components/fields/MultivalueField.d.ts +1 -1
  247. package/dist/shared/modules/dynamic/components/fields/RadioButtonGroup.d.ts +1 -1
  248. package/dist/shared/modules/dynamic/components/fields/RatingField.d.ts +1 -1
  249. package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts +1 -1
  250. package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts +1 -1
  251. package/dist/shared/modules/dynamic/components/fields/SwitchField.d.ts +1 -1
  252. package/dist/shared/modules/dynamic/components/fields/Table.d.ts +1 -1
  253. package/dist/shared/modules/dynamic/components/fields/Table.d.ts.map +1 -1
  254. package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts +1 -1
  255. package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts +1 -1
  256. package/dist/shared/modules/dynamic/components/fields/props.d.ts +1 -1
  257. package/dist/shared/modules/dynamic/components/fields/storybook/Button.stories.d.ts +3 -44
  258. package/dist/shared/modules/dynamic/components/fields/storybook/Button.stories.d.ts.map +1 -1
  259. package/dist/shared/modules/dynamic/components/fields/storybook/Card.stories.d.ts +3 -3
  260. package/dist/shared/modules/dynamic/components/fields/storybook/Card.stories.d.ts.map +1 -1
  261. package/dist/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.d.ts +3 -3
  262. package/dist/shared/modules/dynamic/components/fields/storybook/ContentField.stories.d.ts +3 -3
  263. package/dist/shared/modules/dynamic/components/fields/storybook/EditorField.stories.d.ts +3 -3
  264. package/dist/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.d.ts +3 -3
  265. package/dist/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.d.ts +3 -3
  266. package/dist/shared/modules/dynamic/components/fields/storybook/ImageField.stories.d.ts +3 -3
  267. package/dist/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.d.ts +3 -3
  268. package/dist/shared/modules/dynamic/components/fields/storybook/InputField.stories.d.ts +3 -3
  269. package/dist/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.d.ts +3 -3
  270. package/dist/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.d.ts +3 -3
  271. package/dist/shared/modules/dynamic/components/fields/storybook/RatingField.stories.d.ts +3 -3
  272. package/dist/shared/modules/dynamic/components/fields/storybook/SelectField.stories.d.ts +3 -3
  273. package/dist/shared/modules/dynamic/components/fields/storybook/StatusField.stories.d.ts +3 -3
  274. package/dist/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.d.ts +3 -3
  275. package/dist/shared/modules/dynamic/components/fields/storybook/VideoField.stories.d.ts +3 -3
  276. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts +1 -1
  277. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts.map +1 -1
  278. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts +3 -3
  279. package/dist/shared/modules/dynamic/composables/useFilterBuilder/index.d.ts.map +1 -1
  280. package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +2 -2
  281. package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts.map +1 -1
  282. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts +4 -29
  283. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts.map +1 -1
  284. package/dist/shared/modules/dynamic/types/index.d.ts +6 -0
  285. package/dist/shared/modules/dynamic/types/index.d.ts.map +1 -1
  286. package/dist/shared/pages/InvitePage/components/invite/index.d.ts +8 -8
  287. package/dist/shared/pages/LoginPage/components/login/Login.vue.d.ts.map +1 -1
  288. package/dist/shared/pages/ResetPasswordPage/components/reset-password/index.d.ts +8 -8
  289. package/dist/{simple-mode-HGTvdazT.js → simple-mode-B0dvCdAA.js} +15 -14
  290. package/dist/{sql-uoWIYwDX.js → sql-mMre1Bo3.js} +0 -2
  291. package/dist/tailwind.config.d.ts +1 -81
  292. package/dist/tailwind.config.d.ts.map +1 -1
  293. package/dist/tsconfig.tsbuildinfo +1 -1
  294. package/dist/{ttcn-DmjTzZb6.js → ttcn-Bsa4sfRm.js} +20 -22
  295. package/dist/{ttcn-cfg-B2U3U7dn.js → ttcn-cfg-Bac_acMi.js} +15 -17
  296. package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts.map +1 -1
  297. package/dist/ui/components/atoms/vc-button/vc-button.stories.d.ts +169 -734
  298. package/dist/ui/components/atoms/vc-button/vc-button.stories.d.ts.map +1 -1
  299. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts +18 -2
  300. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts.map +1 -1
  301. package/dist/ui/components/atoms/vc-card/index.d.ts +2 -0
  302. package/dist/ui/components/atoms/vc-card/index.d.ts.map +1 -1
  303. package/dist/ui/components/atoms/vc-card/vc-card.stories.d.ts +36 -24
  304. package/dist/ui/components/atoms/vc-card/vc-card.stories.d.ts.map +1 -1
  305. package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts +2 -0
  306. package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts.map +1 -1
  307. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts +18 -0
  308. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts.map +1 -0
  309. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts +18 -0
  310. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts.map +1 -0
  311. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts +18 -0
  312. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts.map +1 -0
  313. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts +18 -0
  314. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts.map +1 -0
  315. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts +18 -0
  316. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts.map +1 -0
  317. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts +18 -0
  318. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts.map +1 -0
  319. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts +18 -0
  320. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts.map +1 -0
  321. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts +18 -0
  322. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts.map +1 -0
  323. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts +18 -0
  324. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts.map +1 -0
  325. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts +18 -0
  326. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts.map +1 -0
  327. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts +18 -0
  328. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts.map +1 -0
  329. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts +18 -0
  330. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts.map +1 -0
  331. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts +18 -0
  332. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts.map +1 -0
  333. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts +18 -0
  334. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts.map +1 -0
  335. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts +18 -0
  336. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts.map +1 -0
  337. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts +18 -0
  338. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts.map +1 -0
  339. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts +18 -0
  340. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts.map +1 -0
  341. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts +16 -0
  342. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts.map +1 -1
  343. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  344. package/dist/ui/components/atoms/vc-image/vc-image.vue.d.ts.map +1 -1
  345. package/dist/ui/components/atoms/vc-label/vc-label.stories.d.ts +9 -0
  346. package/dist/ui/components/atoms/vc-label/vc-label.stories.d.ts.map +1 -1
  347. package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts +1 -0
  348. package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts.map +1 -1
  349. package/dist/ui/components/atoms/vc-skeleton/vc-skeleton.vue.d.ts +35 -0
  350. package/dist/ui/components/atoms/vc-skeleton/vc-skeleton.vue.d.ts.map +1 -0
  351. package/dist/ui/components/atoms/vc-status/vc-status.stories.d.ts +15 -0
  352. package/dist/ui/components/atoms/vc-status/vc-status.stories.d.ts.map +1 -1
  353. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts +7 -0
  354. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts.map +1 -1
  355. package/dist/ui/components/atoms/vc-widget/index.d.ts +6 -0
  356. package/dist/ui/components/atoms/vc-widget/index.d.ts.map +1 -1
  357. package/dist/ui/components/atoms/vc-widget/vc-widget.stories.d.ts +6 -0
  358. package/dist/ui/components/atoms/vc-widget/vc-widget.stories.d.ts.map +1 -1
  359. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts +1 -3
  360. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
  361. package/dist/ui/components/index.d.ts +1 -0
  362. package/dist/ui/components/index.d.ts.map +1 -1
  363. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts +67 -33
  364. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts.map +1 -1
  365. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts +25 -11
  366. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  367. package/dist/ui/components/molecules/vc-checkbox/index.d.ts +21 -4
  368. package/dist/ui/components/molecules/vc-checkbox/index.d.ts.map +1 -1
  369. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.stories.d.ts +210 -40
  370. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.stories.d.ts.map +1 -1
  371. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.vue.d.ts +10 -4
  372. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.vue.d.ts.map +1 -1
  373. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
  374. package/dist/ui/components/molecules/vc-field/vc-field.stories.d.ts +3 -3
  375. package/dist/ui/components/molecules/vc-field/vc-field.vue.d.ts +1 -1
  376. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.stories.d.ts +12 -12
  377. package/dist/ui/components/molecules/vc-input/vc-input.stories.d.ts +24 -24
  378. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts +1 -1
  379. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  380. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.stories.d.ts +18 -18
  381. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
  382. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.stories.d.ts +84 -84
  383. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts +12 -12
  384. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts.map +1 -1
  385. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts.map +1 -1
  386. package/dist/ui/components/molecules/vc-select/vc-select.stories.d.ts +240 -240
  387. package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts +24 -24
  388. package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts.map +1 -1
  389. package/dist/ui/components/molecules/vc-slider/index.d.ts +9 -9
  390. package/dist/ui/components/molecules/vc-slider/vc-slider.stories.d.ts +9 -9
  391. package/dist/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts +63 -0
  392. package/dist/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts.map +1 -1
  393. package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts +1 -0
  394. package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts.map +1 -1
  395. package/dist/ui/components/organisms/vc-app/_internal/composables/useAppMenuState.d.ts +19 -0
  396. package/dist/ui/components/organisms/vc-app/_internal/composables/useAppMenuState.d.ts.map +1 -0
  397. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarContent.vue.d.ts +25 -0
  398. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarContent.vue.d.ts.map +1 -0
  399. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarHeader.vue.d.ts +32 -0
  400. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarHeader.vue.d.ts.map +1 -0
  401. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue.d.ts +17 -0
  402. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue.d.ts.map +1 -0
  403. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarOverlay.vue.d.ts +30 -0
  404. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarOverlay.vue.d.ts.map +1 -0
  405. package/dist/{shared/components/app-bar-button/app-bar-button.vue.d.ts → ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetItem.vue.d.ts} +18 -24
  406. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetItem.vue.d.ts.map +1 -0
  407. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetsMenu.vue.d.ts +3 -0
  408. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetsMenu.vue.d.ts.map +1 -0
  409. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue.d.ts +40 -0
  410. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue.d.ts.map +1 -0
  411. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarMobileActions.d.ts +9 -0
  412. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarMobileActions.d.ts.map +1 -0
  413. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarWidgets.d.ts +8 -0
  414. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarWidgets.d.ts.map +1 -0
  415. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useToggleableContent.d.ts +23 -0
  416. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useToggleableContent.d.ts.map +1 -0
  417. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts +6 -13
  418. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts.map +1 -1
  419. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue.d.ts +3 -2
  420. 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
  421. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue.d.ts +2 -1
  422. 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
  423. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue.d.ts +3 -12
  424. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue.d.ts.map +1 -1
  425. package/dist/ui/components/organisms/vc-app/vc-app.stories.d.ts +13 -107
  426. package/dist/ui/components/organisms/vc-app/vc-app.stories.d.ts.map +1 -1
  427. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts +5 -105
  428. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  429. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts +1 -0
  430. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  431. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-base-button.vue.d.ts +48 -0
  432. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-base-button.vue.d.ts.map +1 -0
  433. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/{vc-blade-toolbar-button → vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button}/vc-blade-toolbar-button.vue.d.ts +10 -1
  434. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts.map +1 -0
  435. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-circle-button.vue.d.ts +40 -0
  436. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-circle-button.vue.d.ts.map +1 -0
  437. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/desktop/vc-blade-toolbar-desktop.vue.d.ts +19 -0
  438. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/desktop/vc-blade-toolbar-desktop.vue.d.ts.map +1 -0
  439. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/mobile/vc-blade-toolbar-mobile.vue.d.ts +17 -0
  440. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/mobile/vc-blade-toolbar-mobile.vue.d.ts.map +1 -0
  441. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/vc-blade-toolbar-buttons.vue.d.ts +19 -0
  442. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/vc-blade-toolbar-buttons.vue.d.ts.map +1 -0
  443. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts +2 -6
  444. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts.map +1 -1
  445. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/index.d.ts +3 -0
  446. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/index.d.ts.map +1 -0
  447. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts +16 -0
  448. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts.map +1 -0
  449. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts +16 -0
  450. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts.map +1 -0
  451. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/vc-widget-container.vue.d.ts +15 -0
  452. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/vc-widget-container.vue.d.ts.map +1 -0
  453. package/dist/ui/components/organisms/vc-blade/vc-blade.stories.d.ts +2 -0
  454. package/dist/ui/components/organisms/vc-blade/vc-blade.stories.d.ts.map +1 -1
  455. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts +56 -0
  456. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  457. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts +3 -3
  458. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts.map +1 -1
  459. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -2
  460. package/dist/ui/components/organisms/vc-gallery/vc-gallery.stories.d.ts +13 -13
  461. package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +1 -1
  462. package/dist/ui/components/organisms/vc-table/_internal/vc-table-base-header/vc-table-base-header.vue.d.ts.map +1 -1
  463. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts +3 -2
  464. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts.map +1 -1
  465. package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts +2 -1
  466. package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts.map +1 -1
  467. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-body/vc-table-body.vue.d.ts +218 -0
  468. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-body/vc-table-body.vue.d.ts.map +1 -0
  469. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-columns-header/vc-table-columns-header.vue.d.ts +118 -0
  470. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-columns-header/vc-table-columns-header.vue.d.ts.map +1 -0
  471. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-row/vc-table-row.vue.d.ts +236 -0
  472. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-row/vc-table-row.vue.d.ts.map +1 -0
  473. package/dist/{shared/components/user-dropdown-button/_internal/user-actions.vue.d.ts → ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-select-all-header/vc-table-select-all-header.vue.d.ts} +9 -6
  474. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-select-all-header/vc-table-select-all-header.vue.d.ts.map +1 -0
  475. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue.d.ts +314 -0
  476. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue.d.ts.map +1 -0
  477. package/dist/ui/components/organisms/vc-table/_internal/vc-table-empty/vc-table-empty.vue.d.ts +1 -1
  478. package/dist/ui/components/organisms/vc-table/_internal/vc-table-empty/vc-table-empty.vue.d.ts.map +1 -1
  479. package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts.map +1 -1
  480. package/dist/ui/components/organisms/vc-table/_internal/vc-table-footer/vc-table-footer.vue.d.ts +32 -0
  481. package/dist/ui/components/organisms/vc-table/_internal/vc-table-footer/vc-table-footer.vue.d.ts.map +1 -0
  482. package/dist/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue.d.ts +66 -0
  483. package/dist/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue.d.ts.map +1 -0
  484. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts +6 -13
  485. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts.map +1 -1
  486. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-view/vc-table-mobile-view.vue.d.ts +229 -0
  487. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-view/vc-table-mobile-view.vue.d.ts.map +1 -0
  488. package/dist/ui/components/organisms/vc-table/_internal/vc-table-select-all/vc-table-select-all.vue.d.ts +38 -0
  489. package/dist/ui/components/organisms/vc-table/_internal/vc-table-select-all/vc-table-select-all.vue.d.ts.map +1 -0
  490. package/dist/ui/components/organisms/vc-table/composables/useTableActions.d.ts +17 -0
  491. package/dist/ui/components/organisms/vc-table/composables/useTableActions.d.ts.map +1 -0
  492. package/dist/ui/components/organisms/vc-table/composables/useTableColumnReorder.d.ts +407 -0
  493. package/dist/ui/components/organisms/vc-table/composables/useTableColumnReorder.d.ts.map +1 -0
  494. package/dist/ui/components/organisms/vc-table/composables/useTableColumnResize.d.ts +9 -0
  495. package/dist/ui/components/organisms/vc-table/composables/useTableColumnResize.d.ts.map +1 -0
  496. package/dist/ui/components/organisms/vc-table/composables/useTableRowReorder.d.ts +16 -0
  497. package/dist/ui/components/organisms/vc-table/composables/useTableRowReorder.d.ts.map +1 -0
  498. package/dist/ui/components/organisms/vc-table/composables/useTableSelection.d.ts +23 -0
  499. package/dist/ui/components/organisms/vc-table/composables/useTableSelection.d.ts.map +1 -0
  500. package/dist/ui/components/organisms/vc-table/composables/useTableState.d.ts +20 -0
  501. package/dist/ui/components/organisms/vc-table/composables/useTableState.d.ts.map +1 -0
  502. package/dist/ui/components/organisms/vc-table/composables/useTableSwipe.d.ts +12 -0
  503. package/dist/ui/components/organisms/vc-table/composables/useTableSwipe.d.ts.map +1 -0
  504. package/dist/ui/components/organisms/vc-table/vc-table.stories.d.ts +120 -735
  505. package/dist/ui/components/organisms/vc-table/vc-table.stories.d.ts.map +1 -1
  506. package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts +44 -135
  507. package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts.map +1 -1
  508. package/dist/ui/composables/useVisibleElements.d.ts +19 -0
  509. package/dist/ui/composables/useVisibleElements.d.ts.map +1 -0
  510. package/dist/{xquery-xQxle02u.js → xquery-BUQdORAS.js} +72 -76
  511. package/package.json +13 -6
  512. package/shared/components/app-switcher/components/vc-app-switcher/index.ts +1 -1
  513. package/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +1 -3
  514. package/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue +77 -0
  515. package/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +17 -5
  516. package/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.ts +16 -4
  517. package/shared/components/blade-navigation/composables/useBladeNavigation/index.ts +14 -4
  518. package/shared/components/blade-navigation/types/index.ts +10 -0
  519. package/shared/components/change-password/change-password.vue +2 -2
  520. package/shared/components/change-password-button/change-password-button.vue +20 -0
  521. package/shared/components/change-password-button/index.ts +1 -0
  522. package/shared/components/common/popup/vc-popup-error.vue +11 -0
  523. package/shared/components/common/popup/vc-popup-info.vue +11 -0
  524. package/shared/components/common/popup/vc-popup-warning.vue +11 -0
  525. package/shared/components/dashboard-widget-card/dashboard-widget-card.vue +67 -0
  526. package/shared/components/dashboard-widget-card/index.ts +1 -0
  527. package/shared/components/draggable-dashboard/DraggableDashboard.vue +332 -0
  528. package/shared/components/draggable-dashboard/_internal/DashboardWidget.vue +117 -0
  529. package/shared/components/draggable-dashboard/composables/useCellSizeCalculator.ts +121 -0
  530. package/shared/components/draggable-dashboard/composables/useCollisionDetection.ts +219 -0
  531. package/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.ts +342 -0
  532. package/shared/components/draggable-dashboard/composables/useDashboardGrid.ts +104 -0
  533. package/shared/components/draggable-dashboard/composables/useDragClone.ts +97 -0
  534. package/shared/components/draggable-dashboard/composables/useEventCoordinates.ts +91 -0
  535. package/shared/components/draggable-dashboard/composables/useGridPosition.ts +150 -0
  536. package/shared/components/draggable-dashboard/composables/useGridSystem.ts +169 -0
  537. package/shared/components/draggable-dashboard/composables/useLayoutPersistence.ts +89 -0
  538. package/shared/components/draggable-dashboard/composables/useResizeObserver.ts +105 -0
  539. package/shared/components/draggable-dashboard/composables/useWidgetLayout.ts +264 -0
  540. package/shared/components/draggable-dashboard/composables/useWidgetStyles.ts +120 -0
  541. package/shared/components/draggable-dashboard/index.ts +1 -0
  542. package/shared/components/draggable-dashboard/types.ts +96 -0
  543. package/shared/components/error-interceptor/interceptor.ts +44 -44
  544. package/shared/components/generic-dropdown/generic-dropdown.vue +83 -35
  545. package/shared/components/index.ts +3 -2
  546. package/shared/components/language-selector/language-selector.vue +68 -42
  547. package/shared/components/logout-button/index.ts +1 -0
  548. package/shared/components/logout-button/logout-button.vue +27 -0
  549. package/shared/components/notification-dropdown/_internal/notification/index.ts +1 -0
  550. package/shared/components/notification-dropdown/_internal/notification/notification.vue +23 -22
  551. package/shared/components/notification-dropdown/notification-dropdown.vue +45 -52
  552. package/shared/components/notifications/styles/index.scss +10 -10
  553. package/shared/components/settings-menu/index.ts +1 -0
  554. package/shared/components/settings-menu/settings-menu.vue +25 -0
  555. package/shared/components/settings-menu-item/index.ts +1 -0
  556. package/shared/components/settings-menu-item/settings-menu-item.vue +136 -0
  557. package/shared/components/sidebar/sidebar.vue +68 -42
  558. package/shared/components/theme-selector/theme-selector.vue +59 -28
  559. package/shared/components/user-dropdown-button/_internal/user-info.vue +34 -13
  560. package/shared/components/user-dropdown-button/_internal/user-sidebar.vue +4 -29
  561. package/shared/components/user-dropdown-button/user-dropdown-button.vue +37 -51
  562. package/shared/composables/useMenuExpanded.ts +40 -0
  563. package/shared/modules/assets/components/assets-details/assets-details.vue +2 -2
  564. package/shared/modules/assets/index.ts +0 -1
  565. package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +0 -1
  566. package/shared/modules/dynamic/components/FIELD_MAP.ts +53 -53
  567. package/shared/modules/dynamic/components/SchemaRender.ts +102 -102
  568. package/shared/modules/dynamic/components/factories.ts +244 -244
  569. package/shared/modules/dynamic/components/fields/Button.ts +44 -44
  570. package/shared/modules/dynamic/components/fields/Card.ts +119 -119
  571. package/shared/modules/dynamic/components/fields/Checkbox.ts +53 -53
  572. package/shared/modules/dynamic/components/fields/ContentField.ts +33 -33
  573. package/shared/modules/dynamic/components/fields/CustomComponent.ts +29 -29
  574. package/shared/modules/dynamic/components/fields/DynamicProperty.ts +141 -141
  575. package/shared/modules/dynamic/components/fields/EditorField.ts +46 -46
  576. package/shared/modules/dynamic/components/fields/Fieldset.ts +65 -65
  577. package/shared/modules/dynamic/components/fields/GalleryField.ts +161 -161
  578. package/shared/modules/dynamic/components/fields/ImageField.ts +35 -35
  579. package/shared/modules/dynamic/components/fields/InputCurrency.ts +79 -79
  580. package/shared/modules/dynamic/components/fields/InputField.ts +81 -81
  581. package/shared/modules/dynamic/components/fields/MultivalueField.ts +68 -68
  582. package/shared/modules/dynamic/components/fields/RadioButtonGroup.ts +82 -82
  583. package/shared/modules/dynamic/components/fields/RatingField.ts +28 -28
  584. package/shared/modules/dynamic/components/fields/SelectField.ts +72 -72
  585. package/shared/modules/dynamic/components/fields/StatusField.ts +110 -110
  586. package/shared/modules/dynamic/components/fields/SwitchField.ts +29 -29
  587. package/shared/modules/dynamic/components/fields/Table.ts +1 -2
  588. package/shared/modules/dynamic/components/fields/TextareaField.ts +46 -46
  589. package/shared/modules/dynamic/components/fields/ValidationField.ts +54 -54
  590. package/shared/modules/dynamic/components/fields/VideoField.ts +30 -30
  591. package/shared/modules/dynamic/components/fields/props.ts +39 -39
  592. package/shared/modules/dynamic/components/fields/storybook/Button.stories.ts +2 -63
  593. package/shared/modules/dynamic/components/fields/storybook/Card.stories.ts +1 -2
  594. package/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.ts +185 -185
  595. package/shared/modules/dynamic/components/fields/storybook/ContentField.stories.ts +245 -245
  596. package/shared/modules/dynamic/components/fields/storybook/EditorField.stories.ts +192 -192
  597. package/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.ts +347 -347
  598. package/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.ts +239 -239
  599. package/shared/modules/dynamic/components/fields/storybook/ImageField.stories.ts +186 -186
  600. package/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.ts +281 -281
  601. package/shared/modules/dynamic/components/fields/storybook/InputField.stories.ts +312 -312
  602. package/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.ts +361 -361
  603. package/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.ts +224 -224
  604. package/shared/modules/dynamic/components/fields/storybook/RatingField.stories.ts +131 -131
  605. package/shared/modules/dynamic/components/fields/storybook/SelectField.stories.ts +666 -666
  606. package/shared/modules/dynamic/components/fields/storybook/StatusField.stories.ts +202 -202
  607. package/shared/modules/dynamic/components/fields/storybook/SwitchField.stories.ts +178 -178
  608. package/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.ts +203 -203
  609. package/shared/modules/dynamic/components/fields/storybook/VideoField.stories.ts +92 -92
  610. package/shared/modules/dynamic/components/fields/storybook/common/args.ts +130 -130
  611. package/shared/modules/dynamic/components/fields/storybook/common/templates.ts +1 -1
  612. package/shared/modules/dynamic/components/index.ts +4 -4
  613. package/shared/modules/dynamic/composables/index.ts +4 -4
  614. package/shared/modules/dynamic/composables/useDynamicViewsUtils/index.ts +46 -46
  615. package/shared/modules/dynamic/composables/useFilterBuilder/index.ts +31 -22
  616. package/shared/modules/dynamic/composables/useTableTemplates/index.ts +67 -67
  617. package/shared/modules/dynamic/composables/useToolbarReducer/index.ts +70 -70
  618. package/shared/modules/dynamic/factories/base/useDetailsFactory.ts +144 -144
  619. package/shared/modules/dynamic/factories/base/useListFactory.ts +68 -68
  620. package/shared/modules/dynamic/factories/index.ts +4 -4
  621. package/shared/modules/dynamic/factories/types/index.ts +229 -229
  622. package/shared/modules/dynamic/helpers/getters.ts +12 -12
  623. package/shared/modules/dynamic/helpers/methodHandler.ts +22 -22
  624. package/shared/modules/dynamic/helpers/nodeBuilder.ts +1 -1
  625. package/shared/modules/dynamic/helpers/override.ts +153 -153
  626. package/shared/modules/dynamic/helpers/safeIn.ts +6 -6
  627. package/shared/modules/dynamic/helpers/setters.ts +24 -24
  628. package/shared/modules/dynamic/helpers/unrefNested.ts +14 -14
  629. package/shared/modules/dynamic/helpers/unwrapInterpolation.ts +16 -16
  630. package/shared/modules/dynamic/pages/dynamic-blade-form.vue +69 -31
  631. package/shared/modules/dynamic/pages/dynamic-blade-list.vue +170 -202
  632. package/shared/modules/dynamic/types/index.ts +6 -0
  633. package/shared/pages/ChangePasswordPage/components/change-password/index.ts +3 -3
  634. package/shared/pages/ChangePasswordPage/components/index.ts +1 -1
  635. package/shared/pages/ChangePasswordPage/index.ts +1 -1
  636. package/shared/pages/ChangePasswordPage/plugin.ts +4 -4
  637. package/shared/pages/InvitePage/components/index.ts +1 -1
  638. package/shared/pages/InvitePage/components/invite/Invite.vue +216 -216
  639. package/shared/pages/InvitePage/components/invite/index.ts +3 -3
  640. package/shared/pages/InvitePage/index.ts +1 -1
  641. package/shared/pages/InvitePage/plugin.ts +4 -4
  642. package/shared/pages/LoginPage/components/index.ts +1 -1
  643. package/shared/pages/LoginPage/components/login/Login.vue +27 -4
  644. package/shared/pages/LoginPage/components/login/README.md +52 -0
  645. package/shared/pages/LoginPage/components/login/index.ts +3 -3
  646. package/shared/pages/LoginPage/index.ts +1 -1
  647. package/shared/pages/LoginPage/plugin.ts +4 -4
  648. package/shared/pages/ResetPasswordPage/components/index.ts +1 -1
  649. package/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue +1 -1
  650. package/shared/pages/ResetPasswordPage/components/reset-password/index.ts +3 -3
  651. package/shared/pages/ResetPasswordPage/index.ts +1 -1
  652. package/shared/pages/ResetPasswordPage/plugin.ts +4 -4
  653. package/shared/pages/index.ts +4 -4
  654. package/shared/pages/plugin.ts +4 -4
  655. package/shared/utilities/assets.ts +42 -42
  656. package/shared/utilities/vueUtils.ts +50 -50
  657. package/tailwind.config.ts +4 -3
  658. package/ui/components/atoms/vc-badge/index.ts +1 -1
  659. package/ui/components/atoms/vc-badge/vc-badge.stories.ts +53 -53
  660. package/ui/components/atoms/vc-badge/vc-badge.vue +26 -10
  661. package/ui/components/atoms/vc-button/vc-button.stories.ts +1 -16
  662. package/ui/components/atoms/vc-button/vc-button.vue +78 -64
  663. package/ui/components/atoms/vc-card/index.ts +3 -3
  664. package/ui/components/atoms/vc-card/vc-card.stories.ts +1 -1
  665. package/ui/components/atoms/vc-card/vc-card.vue +15 -10
  666. package/ui/components/atoms/vc-col/index.ts +1 -1
  667. package/ui/components/atoms/vc-col/vc-col.stories.ts +22 -22
  668. package/ui/components/atoms/vc-col/vc-col.vue +29 -29
  669. package/ui/components/atoms/vc-container/index.ts +10 -10
  670. package/ui/components/atoms/vc-container/vc-container.stories.ts +29 -29
  671. package/ui/components/atoms/vc-hint/index.ts +10 -10
  672. package/ui/components/atoms/vc-hint/vc-hint.stories.ts +23 -23
  673. package/ui/components/atoms/vc-hint/vc-hint.vue +1 -1
  674. package/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue +9 -26
  675. package/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue +14 -18
  676. package/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue +7 -18
  677. package/ui/components/atoms/vc-icon/icons/BellIcon.vue +8 -23
  678. package/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue +13 -0
  679. package/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue +13 -0
  680. package/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue +13 -0
  681. package/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue +13 -0
  682. package/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue +10 -35
  683. package/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue +14 -18
  684. package/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue +14 -0
  685. package/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue +14 -0
  686. package/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue +27 -0
  687. package/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue +22 -0
  688. package/ui/components/atoms/vc-icon/icons/LogoutIcon.vue +7 -18
  689. package/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue +14 -18
  690. package/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue +8 -18
  691. package/ui/components/atoms/vc-icon/icons/OffersIcon.vue +23 -0
  692. package/ui/components/atoms/vc-icon/icons/OrdersIcon.vue +19 -0
  693. package/ui/components/atoms/vc-icon/icons/PeopleIcon.vue +21 -0
  694. package/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue +14 -18
  695. package/ui/components/atoms/vc-icon/icons/ProductsIcon.vue +23 -0
  696. package/ui/components/atoms/vc-icon/icons/ProfileIcon.vue +18 -0
  697. package/ui/components/atoms/vc-icon/icons/SearchIcon.vue +14 -0
  698. package/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue +15 -25
  699. package/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue +16 -0
  700. package/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue +26 -0
  701. package/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue +19 -0
  702. package/ui/components/atoms/vc-icon/icons/index.ts +27 -11
  703. package/ui/components/atoms/vc-icon/vc-icon.vue +35 -13
  704. package/ui/components/atoms/vc-image/index.ts +1 -1
  705. package/ui/components/atoms/vc-image/vc-image.stories.ts +85 -85
  706. package/ui/components/atoms/vc-image/vc-image.vue +18 -2
  707. package/ui/components/atoms/vc-label/index.ts +1 -1
  708. package/ui/components/atoms/vc-label/vc-label.stories.ts +31 -31
  709. package/ui/components/atoms/vc-label/vc-label.vue +12 -1
  710. package/ui/components/atoms/vc-link/index.ts +10 -10
  711. package/ui/components/atoms/vc-link/vc-link.stories.ts +37 -37
  712. package/ui/components/atoms/vc-link/vc-link.vue +54 -54
  713. package/ui/components/atoms/vc-loading/index.ts +3 -3
  714. package/ui/components/atoms/vc-loading/vc-loading.stories.ts +18 -18
  715. package/ui/components/atoms/vc-loading/vc-loading.vue +58 -58
  716. package/ui/components/atoms/vc-progress/index.ts +10 -10
  717. package/ui/components/atoms/vc-progress/vc-progress.stories.ts +30 -30
  718. package/ui/components/atoms/vc-progress/vc-progress.vue +1 -1
  719. package/ui/components/atoms/vc-row/index.ts +1 -1
  720. package/ui/components/atoms/vc-row/vc-row.stories.ts +20 -20
  721. package/ui/components/atoms/vc-row/vc-row.vue +22 -22
  722. package/ui/components/atoms/vc-skeleton/vc-skeleton.vue +51 -0
  723. package/ui/components/atoms/vc-status/index.ts +1 -1
  724. package/ui/components/atoms/vc-status/vc-status.stories.ts +85 -85
  725. package/ui/components/atoms/vc-status/vc-status.vue +57 -23
  726. package/ui/components/atoms/vc-status-icon/index.ts +1 -1
  727. package/ui/components/atoms/vc-switch/index.ts +1 -1
  728. package/ui/components/atoms/vc-switch/vc-switch.vue +5 -7
  729. package/ui/components/atoms/vc-tooltip/index.ts +1 -1
  730. package/ui/components/atoms/vc-tooltip/vc-tooltip.vue +7 -7
  731. package/ui/components/atoms/vc-video/index.ts +1 -1
  732. package/ui/components/atoms/vc-video/vc-video.stories.ts +19 -19
  733. package/ui/components/atoms/vc-widget/index.ts +3 -3
  734. package/ui/components/atoms/vc-widget/vc-widget.stories.ts +20 -20
  735. package/ui/components/atoms/vc-widget/vc-widget.vue +73 -55
  736. package/ui/components/index.ts +2 -0
  737. package/ui/components/molecules/index.ts +16 -16
  738. package/ui/components/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue +89 -92
  739. package/ui/components/molecules/vc-breadcrumbs/index.ts +1 -1
  740. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.ts +43 -43
  741. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +157 -121
  742. package/ui/components/molecules/vc-checkbox/index.ts +3 -3
  743. package/ui/components/molecules/vc-checkbox/vc-checkbox.stories.ts +84 -84
  744. package/ui/components/molecules/vc-checkbox/vc-checkbox.vue +185 -119
  745. package/ui/components/molecules/vc-editor/index.ts +1 -1
  746. package/ui/components/molecules/vc-editor/vc-editor.stories.ts +29 -29
  747. package/ui/components/molecules/vc-editor/vc-editor.vue +33 -3
  748. package/ui/components/molecules/vc-field/_internal/vc-field-type/vc-field-type.vue +96 -96
  749. package/ui/components/molecules/vc-field/index.ts +1 -1
  750. package/ui/components/molecules/vc-field/vc-field.stories.ts +114 -114
  751. package/ui/components/molecules/vc-field/vc-field.vue +1 -1
  752. package/ui/components/molecules/vc-file-upload/index.ts +1 -1
  753. package/ui/components/molecules/vc-file-upload/vc-file-upload.stories.ts +39 -39
  754. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +2 -2
  755. package/ui/components/molecules/vc-form/index.ts +10 -10
  756. package/ui/components/molecules/vc-form/vc-form.stories.ts +25 -25
  757. package/ui/components/molecules/vc-form/vc-form.vue +5 -5
  758. package/ui/components/molecules/vc-input/index.ts +1 -1
  759. package/ui/components/molecules/vc-input/vc-input.stories.ts +165 -165
  760. package/ui/components/molecules/vc-input/vc-input.vue +57 -13
  761. package/ui/components/molecules/vc-input-currency/index.ts +1 -1
  762. package/ui/components/molecules/vc-input-currency/vc-input-currency.stories.ts +83 -83
  763. package/ui/components/molecules/vc-input-currency/vc-input-currency.vue +20 -0
  764. package/ui/components/molecules/vc-multivalue/index.ts +1 -1
  765. package/ui/components/molecules/vc-multivalue/vc-multivalue.stories.ts +120 -120
  766. package/ui/components/molecules/vc-multivalue/vc-multivalue.vue +69 -16
  767. package/ui/components/molecules/vc-notification/index.ts +1 -1
  768. package/ui/components/molecules/vc-notification/vc-notification.vue +1 -1
  769. package/ui/components/molecules/vc-pagination/index.ts +3 -3
  770. package/ui/components/molecules/vc-pagination/vc-pagination.stories.ts +24 -24
  771. package/ui/components/molecules/vc-pagination/vc-pagination.vue +44 -98
  772. package/ui/components/molecules/vc-radio-button/index.ts +1 -1
  773. package/ui/components/molecules/vc-radio-button/vc-radio-button.stories.ts +97 -97
  774. package/ui/components/molecules/vc-radio-button/vc-radio-button.vue +13 -8
  775. package/ui/components/molecules/vc-rating/index.ts +1 -1
  776. package/ui/components/molecules/vc-rating/vc-rating.stories.ts +59 -59
  777. package/ui/components/molecules/vc-select/index.ts +1 -1
  778. package/ui/components/molecules/vc-select/vc-select.stories.ts +685 -685
  779. package/ui/components/molecules/vc-select/vc-select.vue +85 -26
  780. package/ui/components/molecules/vc-slider/index.ts +13 -13
  781. package/ui/components/molecules/vc-slider/vc-slider.stories.ts +61 -61
  782. package/ui/components/molecules/vc-slider/vc-slider.vue +118 -118
  783. package/ui/components/molecules/vc-textarea/index.ts +1 -1
  784. package/ui/components/molecules/vc-textarea/vc-textarea.stories.ts +53 -53
  785. package/ui/components/molecules/vc-textarea/vc-textarea.vue +37 -8
  786. package/ui/components/organisms/index.ts +7 -7
  787. package/ui/components/organisms/vc-app/_internal/composables/useAppMenuState.ts +97 -0
  788. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarContent.vue +48 -0
  789. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarHeader.vue +173 -0
  790. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue +102 -0
  791. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarOverlay.vue +90 -0
  792. package/{shared/components/app-bar-button/app-bar-button.vue → ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetItem.vue} +55 -78
  793. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetsMenu.vue +110 -0
  794. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue +172 -0
  795. package/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarMobileActions.ts +51 -0
  796. package/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarWidgets.ts +27 -0
  797. package/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useToggleableContent.ts +66 -0
  798. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +347 -266
  799. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +152 -84
  800. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +2 -2
  801. package/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue +83 -104
  802. package/ui/components/organisms/vc-app/vc-app.stories.ts +214 -214
  803. package/ui/components/organisms/vc-app/vc-app.vue +102 -76
  804. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +135 -86
  805. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-base-button.vue +136 -0
  806. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/{vc-blade-toolbar-button → vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button}/vc-blade-toolbar-button.vue +54 -18
  807. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-circle-button.vue +101 -0
  808. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/desktop/vc-blade-toolbar-desktop.vue +182 -0
  809. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/mobile/vc-blade-toolbar-mobile.vue +146 -0
  810. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/vc-blade-toolbar-buttons.vue +32 -0
  811. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +20 -206
  812. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/index.ts +2 -0
  813. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue +96 -0
  814. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue +184 -0
  815. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/vc-widget-container.vue +113 -0
  816. package/ui/components/organisms/vc-blade/index.ts +1 -1
  817. package/ui/components/organisms/vc-blade/vc-blade.stories.ts +83 -83
  818. package/ui/components/organisms/vc-blade/vc-blade.vue +145 -167
  819. package/ui/components/organisms/vc-dynamic-property/index.ts +1 -1
  820. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +163 -163
  821. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +1 -1
  822. package/ui/components/organisms/vc-gallery/index.ts +1 -1
  823. package/ui/components/organisms/vc-gallery/vc-gallery.stories.ts +91 -91
  824. package/ui/components/organisms/vc-gallery/vc-gallery.vue +348 -348
  825. package/ui/components/organisms/vc-login-form/index.ts +1 -1
  826. package/ui/components/organisms/vc-popup/index.ts +3 -3
  827. package/ui/components/organisms/vc-popup/vc-popup.vue +5 -5
  828. package/ui/components/organisms/vc-table/_internal/vc-table-add-new/vc-table-add-new.vue +63 -63
  829. package/ui/components/organisms/vc-table/_internal/vc-table-base-header/vc-table-base-header.vue +21 -17
  830. package/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue +7 -6
  831. package/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue +4 -3
  832. package/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue +4 -3
  833. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-body/vc-table-body.vue +133 -0
  834. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-columns-header/vc-table-columns-header.vue +250 -0
  835. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-row/vc-table-row.vue +238 -0
  836. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-select-all-header/vc-table-select-all-header.vue +54 -0
  837. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue +214 -0
  838. package/ui/components/organisms/vc-table/_internal/vc-table-empty/vc-table-empty.vue +2 -7
  839. package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +50 -22
  840. package/ui/components/organisms/vc-table/_internal/vc-table-footer/vc-table-footer.vue +62 -0
  841. package/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue +160 -0
  842. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +47 -69
  843. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-view/vc-table-mobile-view.vue +386 -0
  844. package/ui/components/organisms/vc-table/_internal/vc-table-select-all/vc-table-select-all.vue +118 -0
  845. package/ui/components/organisms/vc-table/composables/useTableActions.ts +56 -0
  846. package/ui/components/organisms/vc-table/composables/useTableColumnReorder.ts +255 -0
  847. package/ui/components/organisms/vc-table/composables/useTableColumnResize.ts +147 -0
  848. package/ui/components/organisms/vc-table/composables/useTableRowReorder.ts +175 -0
  849. package/ui/components/organisms/vc-table/composables/useTableSelection.ts +118 -0
  850. package/ui/components/organisms/vc-table/composables/useTableState.ts +230 -0
  851. package/ui/components/organisms/vc-table/composables/useTableSwipe.ts +32 -0
  852. package/ui/components/organisms/vc-table/index.ts +1 -1
  853. package/ui/components/organisms/vc-table/vc-table.stories.ts +214 -214
  854. package/ui/components/organisms/vc-table/vc-table.vue +278 -1314
  855. package/ui/composables/useVisibleElements.ts +148 -0
  856. package/dist/index-CUGEM4hi.js +0 -243
  857. package/dist/index-D8jMD-EZ.js +0 -312
  858. package/dist/index-DrL4GDih.js +0 -135
  859. package/dist/index-DulPT6l3.js +0 -598
  860. package/dist/shared/components/app-bar-button/app-bar-button.vue.d.ts.map +0 -1
  861. package/dist/shared/components/app-bar-button/index.d.ts +0 -2
  862. package/dist/shared/components/app-bar-button/index.d.ts.map +0 -1
  863. package/dist/shared/components/blade-navigation/injectionKeys.d.ts +0 -4
  864. package/dist/shared/components/blade-navigation/injectionKeys.d.ts.map +0 -1
  865. package/dist/shared/components/menu-item/index.d.ts +0 -2
  866. package/dist/shared/components/menu-item/index.d.ts.map +0 -1
  867. package/dist/shared/components/menu-item/menu-item.vue.d.ts.map +0 -1
  868. package/dist/shared/components/user-dropdown-button/_internal/user-actions.vue.d.ts.map +0 -1
  869. package/dist/shared/components/user-dropdown-button/composables/useUserActions.d.ts +0 -3921
  870. package/dist/shared/components/user-dropdown-button/composables/useUserActions.d.ts.map +0 -1
  871. package/dist/ui/components/organisms/vc-app/composables/useToolbarSlots.d.ts +0 -5
  872. package/dist/ui/components/organisms/vc-app/composables/useToolbarSlots.d.ts.map +0 -1
  873. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts.map +0 -1
  874. package/shared/components/app-bar-button/index.ts +0 -1
  875. package/shared/components/blade-navigation/injectionKeys.ts +0 -4
  876. package/shared/components/menu-item/index.ts +0 -1
  877. package/shared/components/menu-item/menu-item.vue +0 -111
  878. package/shared/components/user-dropdown-button/_internal/user-actions.vue +0 -68
  879. package/shared/components/user-dropdown-button/composables/useUserActions.ts +0 -56
  880. package/ui/components/organisms/vc-app/composables/useToolbarSlots.ts +0 -37
@@ -0,0 +1,152 @@
1
+
2
+ # Modularity Plugin
3
+
4
+ The Modularity Plugin provides two main features:
5
+ - Dynamic Module Loading
6
+ - Extensions System
7
+
8
+ ## Dynamic Module Loading
9
+
10
+ The Dynamic Module Loading system allows you to load Vue.js modules at runtime.
11
+
12
+ ### Usage
13
+
14
+
15
+ ```typescript
16
+ import { useDynamicModules } from '@framework/core/plugins/modularity';
17
+ import { createApp } from 'vue';
18
+ import { createRouter } from 'vue-router';
19
+ const app = createApp(App);
20
+ const router = createRouter(/ router config /);
21
+ const { load, extensionsHelper } = useDynamicModules(app, {
22
+ router,
23
+ appName: 'your-app-name'
24
+ },
25
+ {
26
+ baseUrl: 'https://your-modules-host.com/',
27
+ manifestFileName: 'manifest.json', // optional, default: 'manifest.json'
28
+ });
29
+ // Load all modules
30
+ await load();
31
+ ```
32
+
33
+ ### Module Structure
34
+
35
+ Each module should have:
36
+ 1. A manifest file (manifest.json) describing module files generated by `Vite` during build time
37
+ 2. An entry point file that exports a Vue plugin
38
+ 3. Optional CSS files
39
+
40
+ Example manifest.json:
41
+
42
+ ```json
43
+ {
44
+ "entry": {
45
+ "file": "index.js",
46
+ "isEntry": true
47
+ },
48
+ "styles": {
49
+ "file": "styles.css"
50
+ }
51
+ }
52
+ ```
53
+
54
+ Example module:
55
+
56
+ ```typescript
57
+ export default {
58
+ install(app, options) {
59
+ // Plugin installation code
60
+ },
61
+ extensions: {
62
+ // Optional extensions configuration
63
+ }
64
+ }
65
+ ```
66
+
67
+ ## Extensions System
68
+
69
+ The Extensions System enables communication between the application and its modules.
70
+
71
+ ### Types of Extensions
72
+
73
+ 1. **Inbound Extensions**: Extensions that allow the application to customize and extend the module's functionality
74
+ 2. **Outbound Extensions**: Extensions that the module provides to extend the application's functionality
75
+
76
+ ### Registering Extensions
77
+
78
+ ```typescript
79
+ // In your module
80
+ export default {
81
+ install(app) {
82
+ // Plugin installation code
83
+ },
84
+ extensions: {
85
+ inbound: {
86
+ 'customization-point': {
87
+ // Extensions that this module accepts
88
+ someConfig: true
89
+ }
90
+ },
91
+ outbound: {
92
+ 'extension-point': [
93
+ // Extensions this module provides
94
+ {
95
+ id: 'MyExtension',
96
+ component: MyComponent,
97
+ }
98
+ ]
99
+ }
100
+ }
101
+ }
102
+ ```
103
+
104
+ ### Using Extensions Helper
105
+
106
+ ```typescript
107
+ import { useExtensionsHelper } from '@vc-shell/framework';
108
+ import { inject } from 'vue';
109
+
110
+ // In your component setup
111
+ const extensionsHelper = inject(extensionsHelperSymbol);
112
+ // Get extensions provided by other modules
113
+ const outboundExtensions = extensionsHelper.getOutboundExtensions('extension-point');
114
+ // Get extensions configured for your module
115
+ const inboundExtensions = extensionsHelper.getInboundExtensions('your-module-id', 'customization-point');
116
+ // Get all extensions for a module
117
+ const moduleExtensions = extensionsHelper.getModuleExtensions('your-module-id');
118
+ ```
119
+
120
+ ### Extension Types
121
+
122
+ 1. **Component Extensions**
123
+
124
+ ```typescript
125
+ interface ExtensionPoint = {
126
+ id: string;
127
+ component: Component;
128
+ }
129
+ ```
130
+
131
+ 2. **Composable Function Extensions**
132
+
133
+ ```typescript
134
+ interface ComposableFunction = {
135
+ id: string;
136
+ fn: (...args: unknown[]) => unknown;
137
+ }
138
+ ```
139
+
140
+ 3. **Configuration Object Extensions**
141
+
142
+ ```typescript
143
+ type Extension = Record<string, unknown>;
144
+ ```
145
+
146
+ ## Best Practices
147
+
148
+ 1. Always provide unique IDs for extensions
149
+ 2. Document your module's extension points
150
+ 3. Handle missing or failed extensions gracefully
151
+ 4. Use TypeScript interfaces for type safety
152
+ 5. Keep extension configurations simple and serializable
@@ -0,0 +1,209 @@
1
+ import { App, computed, ComputedRef, InjectionKey } from "vue";
2
+
3
+ declare module "@vue/runtime-core" {
4
+ interface ComponentCustomProperties {
5
+ $extensions: ExtensionRegistry;
6
+ }
7
+ }
8
+
9
+ export interface ExtensionPoint {
10
+ id: string;
11
+ component: unknown;
12
+ }
13
+
14
+ export interface ComposableFunction {
15
+ id: string;
16
+ fn: (...args: unknown[]) => unknown;
17
+ }
18
+
19
+ export type Extension = Record<string, unknown>;
20
+
21
+ export interface ExtensionRegistry {
22
+ inbound: {
23
+ [namespace: string]: {
24
+ [extensionPoint: string]: Extension;
25
+ };
26
+ };
27
+ outbound: {
28
+ [namespace: string]: {
29
+ [extensionPoint: string]: ExtensionPoint[] | ComposableFunction[] | Extension;
30
+ };
31
+ };
32
+ }
33
+
34
+ export interface ExtensionNamespace {
35
+ [point: string]: ExtensionPoint[] | ComposableFunction[] | Extension;
36
+ }
37
+
38
+ export interface ExtensionsHelper {
39
+ getInboundExtensions(namespace: string, point?: string): Extension;
40
+ getOutboundExtensions(point: string): (ExtensionPoint | ComposableFunction | Extension)[];
41
+ getModuleExtensions(namespace: string): {
42
+ inbound: Record<string, Extension>;
43
+ outbound: Record<string, ExtensionPoint[] | ComposableFunction[] | Extension>;
44
+ };
45
+ extensions: ComputedRef<ExtensionRegistry>;
46
+ }
47
+
48
+ export const extensionsHelperSymbol = Symbol("extensionsHelper") as InjectionKey<ExtensionsHelper>;
49
+
50
+ export function createExtensionsHelper(app: App): ExtensionsHelper {
51
+ if (!app.config.globalProperties.$extensions) {
52
+ app.config.globalProperties.$extensions = {
53
+ inbound: {},
54
+ outbound: {},
55
+ } as ExtensionRegistry;
56
+ }
57
+
58
+ const helper: ExtensionsHelper = {
59
+ getInboundExtensions(namespace: string, point?: string) {
60
+ return point
61
+ ? app.config.globalProperties.$extensions.inbound[namespace][point]
62
+ : app.config.globalProperties.$extensions.inbound[namespace];
63
+ },
64
+
65
+ getOutboundExtensions(point: string) {
66
+ const result: (ExtensionPoint | ComposableFunction | Extension)[] = [];
67
+ Object.values(app.config.globalProperties.$extensions.outbound).forEach((namespace: unknown) => {
68
+ const typedNamespace = namespace as ExtensionNamespace;
69
+ if (typedNamespace[point]) {
70
+ const extension = typedNamespace[point];
71
+ if (Array.isArray(extension)) {
72
+ result.push(...extension);
73
+ } else if (
74
+ typeof extension === "object" &&
75
+ "id" in extension &&
76
+ "fn" in extension &&
77
+ typeof extension.fn === "function"
78
+ ) {
79
+ result.push(extension);
80
+ } else if (typeof extension === "object") {
81
+ result.push(extension as Extension);
82
+ }
83
+ }
84
+ });
85
+
86
+ return result;
87
+ },
88
+
89
+ getModuleExtensions(namespace: string) {
90
+ return {
91
+ inbound: app.config.globalProperties.$extensions.inbound[namespace] || {},
92
+ outbound: app.config.globalProperties.$extensions.outbound[namespace] || {},
93
+ };
94
+ },
95
+
96
+ extensions: computed(() => app.config.globalProperties.$extensions),
97
+ };
98
+
99
+ // Provide access to extensions through provide/inject
100
+ app.provide(extensionsHelperSymbol, helper);
101
+
102
+ // Provide direct access to extensions
103
+ app.provide("$extensions", app.config.globalProperties.$extensions);
104
+
105
+ return helper;
106
+ }
107
+
108
+ export function registerModuleExtensions(app: App, moduleId: string, extensions: ExtensionRegistry) {
109
+ if (!app.config.globalProperties.$extensions) {
110
+ app.config.globalProperties.$extensions = {
111
+ inbound: {},
112
+ outbound: {},
113
+ } as ExtensionRegistry;
114
+ }
115
+
116
+ const { inbound, outbound } = app.config.globalProperties.$extensions;
117
+
118
+ // Register inbound extensions
119
+ registerInboundExtensions(inbound, moduleId, extensions);
120
+
121
+ // Register outbound extensions
122
+ registerOutboundExtensions(outbound, moduleId, extensions);
123
+ }
124
+
125
+ function registerInboundExtensions(
126
+ inbound: ExtensionRegistry["inbound"],
127
+ moduleId: string,
128
+ extensions: ExtensionRegistry,
129
+ ) {
130
+ if (!inbound[moduleId]) {
131
+ inbound[moduleId] = {};
132
+ }
133
+
134
+ Object.entries(extensions.inbound || {}).forEach(([point, extension]) => {
135
+ if (typeof extension !== "object" || Array.isArray(extension)) {
136
+ console.warn(
137
+ `Invalid inbound extension type for point "${point}" in module "${moduleId}". Inbound extensions must be objects.`,
138
+ );
139
+ return;
140
+ }
141
+
142
+ inbound[moduleId][point] = {
143
+ ...(inbound[moduleId][point] || {}),
144
+ ...extension,
145
+ };
146
+ });
147
+ }
148
+
149
+ function registerOutboundExtensions(
150
+ outbound: ExtensionRegistry["outbound"],
151
+ moduleId: string,
152
+ extensions: ExtensionRegistry,
153
+ ) {
154
+ if (!outbound[moduleId]) {
155
+ outbound[moduleId] = {};
156
+ }
157
+
158
+ Object.entries(extensions.outbound || {}).forEach(([point, extension]) => {
159
+ initializeExtensionPoint(outbound[moduleId], point, extension);
160
+ mergeExtension(outbound[moduleId], point, extension);
161
+ });
162
+ }
163
+
164
+ function initializeExtensionPoint(
165
+ moduleOutbound: ExtensionRegistry["outbound"][string],
166
+ point: string,
167
+ extension: ExtensionPoint[] | ComposableFunction | Extension,
168
+ ) {
169
+ if (!moduleOutbound[point]) {
170
+ if (Array.isArray(extension)) {
171
+ moduleOutbound[point] = [];
172
+ } else if (typeof extension === "object" && "fn" in extension) {
173
+ moduleOutbound[point] = [];
174
+ } else if (typeof extension === "object") {
175
+ moduleOutbound[point] = {};
176
+ }
177
+ }
178
+ }
179
+
180
+ function isComposableFunction(value: unknown): value is ComposableFunction {
181
+ return (
182
+ typeof value === "object" &&
183
+ value !== null &&
184
+ "id" in value &&
185
+ "fn" in value &&
186
+ typeof (value as ComposableFunction).fn === "function"
187
+ );
188
+ }
189
+
190
+ function mergeExtension(
191
+ moduleOutbound: ExtensionRegistry["outbound"][string],
192
+ point: string,
193
+ extension: ExtensionPoint[] | ComposableFunction | Extension,
194
+ ) {
195
+ if (Array.isArray(extension) && Array.isArray(moduleOutbound[point])) {
196
+ (moduleOutbound[point] as ExtensionPoint[]).push(...(extension as ExtensionPoint[]));
197
+ } else if (isComposableFunction(extension) && Array.isArray(moduleOutbound[point])) {
198
+ (moduleOutbound[point] as ComposableFunction[]).push(extension);
199
+ } else if (isObjectExtension(extension) && isObjectExtension(moduleOutbound[point])) {
200
+ moduleOutbound[point] = {
201
+ ...(moduleOutbound[point] as Extension),
202
+ ...extension,
203
+ };
204
+ }
205
+ }
206
+
207
+ function isObjectExtension(value: unknown): value is Extension {
208
+ return typeof value === "object" && !Array.isArray(value);
209
+ }
@@ -1,43 +1,45 @@
1
- import { App, Component, h, watch } from "vue";
1
+ import { App, Component, h, resolveComponent, watch } from "vue";
2
2
  import { i18n } from "./../i18n";
3
3
  import { Router } from "vue-router";
4
4
  import { BladeInstanceConstructor, BladeVNode } from "./../../../shared/components/blade-navigation/types";
5
5
  import { kebabToPascal } from "./../../utilities";
6
- import { useMenuService, useNotifications } from "../../composables";
6
+ import { addMenuItem, useMenuService, useNotifications } from "../../composables";
7
7
  import * as _ from "lodash-es";
8
8
  import { notification } from "../../../shared";
9
9
 
10
- export const createModule = (components: { [key: string]: BladeInstanceConstructor }, locales?: unknown) => ({
11
- install(app: App): void {
12
- // Register components
13
- Object.entries(components).forEach(([componentName, component]) => {
14
- // Check if the component is already registered
15
- if (app.component(componentName)) {
16
- // Remove the existing component
17
- // Note: Vue does not provide a method to remove a component, so we can overwrite it
18
- console.warn(
19
- `Component ${componentName} is already registered. It will be overwritten with the new component.`,
20
- );
21
- }
22
- app.component(componentName, component);
23
- });
24
-
25
- // Load locales
26
- if (locales) {
27
- Object.entries(locales).forEach(([key, message]) => {
28
- // Merge locale messages, overwriting existing ones
29
- i18n.global.mergeLocaleMessage(key, message);
10
+ export function createModule(components: { [key: string]: BladeInstanceConstructor }, locales?: unknown) {
11
+ return {
12
+ install(app: App): void {
13
+ // Register components
14
+ Object.entries(components).forEach(([componentName, component]) => {
15
+ // Check if the component is already registered
16
+ if (app.component(componentName)) {
17
+ // Remove the existing component
18
+ // Note: Vue does not provide a method to remove a component, so we can overwrite it
19
+ console.warn(
20
+ `Component ${componentName} is already registered. It will be overwritten with the new component.`,
21
+ );
22
+ }
23
+ app.component(componentName, component);
30
24
  });
31
- }
32
- },
33
- });
34
25
 
35
- export const createAppModule = (
26
+ // Load locales
27
+ if (locales) {
28
+ Object.entries(locales).forEach(([key, message]) => {
29
+ // Merge locale messages, overwriting existing ones
30
+ i18n.global.mergeLocaleMessage(key, message);
31
+ });
32
+ }
33
+ },
34
+ };
35
+ }
36
+
37
+ export function createAppModule(
36
38
  pages: { [key: string]: BladeInstanceConstructor },
37
39
  locales?: { [key: string]: object },
38
40
  notificationTemplates?: { [key: string]: Component & { notifyType?: string } },
39
41
  moduleComponents?: { [key: string]: Component },
40
- ) => {
42
+ ) {
41
43
  return {
42
44
  install(app: App, options?: { router: Router }): void {
43
45
  let routerInstance: Router;
@@ -198,12 +200,12 @@ export const createAppModule = (
198
200
 
199
201
  // Add to menu
200
202
  if (page.menuItem) {
201
- const { addMenuItem } = useMenuService();
202
203
  addMenuItem({
203
204
  ...page.menuItem,
205
+ icon: resolveComponent(page.menuItem.icon as string),
204
206
  url: page.url,
205
207
  routeId: routeName,
206
- permissions: page.permissions,
208
+ permissions: page.permissions || page.menuItem.permissions,
207
209
  });
208
210
  }
209
211
  }
@@ -245,6 +247,7 @@ export const createAppModule = (
245
247
  }
246
248
  },
247
249
  };
248
- };
250
+ }
249
251
 
250
252
  export * from "./loader";
253
+ export * from "./extensions-helper";
@@ -1,5 +1,7 @@
1
1
  import { App, Plugin } from "vue";
2
2
  import { Router } from "vue-router";
3
+ import { ExtensionRegistry, createExtensionsHelper, registerModuleExtensions } from "./extensions-helper";
4
+ import { DynamicModulesKey } from "../../../injection-keys";
3
5
 
4
6
  interface ModuleManifest {
5
7
  file: string;
@@ -23,21 +25,54 @@ interface Apps {
23
25
  };
24
26
  }
25
27
 
26
- function loadCSS(url: string) {
27
- return new Promise<void>((resolve, reject) => {
28
+ interface ModuleWithDefaultExport {
29
+ default: {
30
+ install: Plugin;
31
+ extensions?: ExtensionRegistry;
32
+ };
33
+ }
34
+
35
+ interface ModuleWithNamedExport {
36
+ install: Plugin;
37
+ extensions?: ExtensionRegistry;
38
+ }
39
+
40
+ type ModuleExports = ModuleWithDefaultExport | ModuleWithNamedExport;
41
+
42
+ function loadCSS(url: string): Promise<void> {
43
+ return new Promise((resolve, reject) => {
28
44
  const link = document.createElement("link");
29
45
  link.rel = "stylesheet";
30
46
  link.href = url;
31
47
  link.onload = () => resolve();
32
- link.onerror = () => reject(new Error(`Failed to load CSS: ${url}`));
48
+ link.onerror = (e) => reject(new Error(`Failed to load CSS: ${url}, error: ${e}`));
33
49
  document.head.appendChild(link);
34
50
  });
35
51
  }
36
52
 
37
- export function useDynamicModules(app: App, { router, appName }: { router: Router; appName: string }) {
53
+ interface ModuleConfig {
54
+ baseUrl: string;
55
+ manifestFileName: string;
56
+ entryPointKey: string;
57
+ }
58
+
59
+ const DEFAULT_CONFIG: Partial<ModuleConfig> = {
60
+ manifestFileName: "manifest.json",
61
+ entryPointKey: "isEntry",
62
+ };
63
+
64
+ export function useDynamicModules(
65
+ app: App,
66
+ { router, appName }: { router: Router; appName: string },
67
+ config: Partial<ModuleConfig> = {},
68
+ ) {
69
+ const finalConfig = { ...DEFAULT_CONFIG, ...config };
70
+ const loadedModules = new Set<string>();
71
+ const extensionsHelper = createExtensionsHelper(app);
72
+
38
73
  async function load() {
39
74
  try {
40
- const appsUrl = "/Modules/$(VirtoCommerce.MarketplaceVendor)/Content/apps.json";
75
+ const appsUrl = finalConfig.baseUrl + "apps.json";
41
76
  const modules: Apps[] = await fetch(appsUrl).then((res) => res.json());
42
77
 
43
78
  const module = modules.find((module) => module[appName]);
@@ -48,68 +83,90 @@ export function useDynamicModules(app: App, { router, appName }: { router: Route
48
83
  if (!(appModules && appModules.length)) {
49
84
  throw new Error("Modules not found");
50
85
  }
86
+ const manifestPromises = appModules.map(async (module) => {
87
+ if (loadedModules.has(module.id)) {
88
+ return null;
89
+ }
51
90
 
52
- for (const module of appModules) {
91
+ const moduleUrl = module.url.replace(/^([^/])/, "/$1").replace(/([^/])$/, "$1/");
53
92
  try {
54
- const moduleUrl = module.url.replace(/^([^/])/, "/$1").replace(/([^/])$/, "$1/");
55
- const manifestResponse = await fetch(moduleUrl + "manifest.json");
56
-
57
- if (!manifestResponse.ok) {
58
- console.error(`Failed to load manifest for module ${module.id}:`, manifestResponse.statusText);
59
- continue;
93
+ const response = await fetch(moduleUrl + finalConfig.manifestFileName);
94
+ if (!response.ok) {
95
+ throw new Error(`Failed to load manifest for module '{ ${module.id} }': ${response.statusText}`);
60
96
  }
97
+ return {
98
+ moduleId: module.id,
99
+ moduleUrl,
100
+ manifest: (await response.json()) as Manifest,
101
+ };
102
+ } catch (error) {
103
+ console.error(error);
104
+ return null;
105
+ }
106
+ });
61
107
 
62
- const manifest: Manifest = await manifestResponse.json();
108
+ const manifestResults = await Promise.all(manifestPromises);
109
+ const validManifests = manifestResults.filter(
110
+ (result): result is NonNullable<typeof result> => result !== null,
111
+ );
63
112
 
64
- // Find entry point
113
+ for (const { moduleId, moduleUrl, manifest } of validManifests) {
114
+ try {
65
115
  const entry = Object.values(manifest).find((file) => (file as ModuleManifest).isEntry);
66
-
67
116
  if (!entry) {
68
- console.error(`Entry file not found for module ${module.id}`);
69
- continue;
117
+ throw new Error(`Entry file not found for module ${moduleId}`);
70
118
  }
71
119
 
72
- // Load CSS files
73
- await Promise.all(
74
- Object.values(manifest)
75
- .filter((file) => file.file.endsWith(".css"))
76
- .map((file) => loadCSS(moduleUrl + `${file.file}`)),
77
- ).catch((error) => {
78
- console.error(`Failed to load styles for module ${module.id}:`, error);
79
- });
120
+ const cssFiles = Object.values(manifest)
121
+ .filter((file) => file.file.endsWith(".css"))
122
+ .map((file) => loadCSS(moduleUrl + file.file));
80
123
 
81
- // Load module
82
- await import(/* @vite-ignore */ moduleUrl + entry.file).catch((error) => {
83
- console.error(`Failed to load module ${module.id}:`, error);
84
- return; // Skip to next module
124
+ await Promise.all(cssFiles).catch((error) => {
125
+ console.error(`Failed to load styles for module ${moduleId}:`, error);
85
126
  });
86
127
 
87
- // Register plugins
88
- Object.values(window.VcShellDynamicModules).forEach((mod) => {
89
- try {
90
- app.use((mod as Record<"default", Plugin>)?.default, { router });
91
- } catch (error) {
92
- console.error(`Failed to register plugin for module ${module.id}:`, error);
93
- }
94
- });
95
-
96
- app.config.globalProperties.$dynamicModules = {
97
- ...(app.config.globalProperties.$dynamicModules || {}),
98
- ...window.VcShellDynamicModules,
99
- };
100
- app.provide("$dynamicModules", app.config.globalProperties.$dynamicModules);
128
+ await import(/* @vite-ignore */ moduleUrl + entry.file);
129
+
130
+ if (typeof window !== "undefined" && window.VcShellDynamicModules) {
131
+ Object.values(window.VcShellDynamicModules).forEach((mod) => {
132
+ try {
133
+ const moduleExports = mod as ModuleExports;
134
+ const moduleToInstall = "default" in moduleExports ? moduleExports.default : moduleExports;
135
+
136
+ if ("install" in moduleToInstall) {
137
+ app.use(moduleToInstall.install as Plugin, { router });
138
+
139
+ if (moduleToInstall.extensions) {
140
+ registerModuleExtensions(app, moduleId, moduleToInstall.extensions);
141
+ }
142
+
143
+ loadedModules.add(moduleId);
144
+ } else {
145
+ console.error(`Module ${moduleId} does not have an 'install' function`);
146
+ }
147
+ } catch (error) {
148
+ console.error(`Failed to register plugin for module ${moduleId}:`, error);
149
+ }
150
+ });
151
+ }
101
152
  } catch (error) {
102
- console.error(`Failed to process module ${module.id}:`, error);
103
- continue; // Skip to next module
153
+ console.error(`Failed to process module ${moduleId}:`, error);
104
154
  }
105
155
  }
106
156
  }
107
157
  } catch (error) {
108
158
  console.error("Failed to load modules:", error);
109
159
  }
160
+
161
+ app.config.globalProperties.$dynamicModules = {
162
+ ...(app.config.globalProperties.$dynamicModules || {}),
163
+ ...window.VcShellDynamicModules,
164
+ };
165
+ app.provide(DynamicModulesKey, app.config.globalProperties.$dynamicModules);
110
166
  }
111
167
 
112
168
  return {
113
169
  load,
170
+ extensionsHelper,
114
171
  };
115
172
  }