@vc-shell/framework 1.0.341 → 1.1.0-alpha.10

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 (920) hide show
  1. package/CHANGELOG.md +15 -2
  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/useBeforeUnload/index.ts +25 -25
  8. package/core/composables/useDashboard/index.ts +19 -0
  9. package/core/composables/useFunctions/debounce.ts +16 -16
  10. package/core/composables/useFunctions/delay.ts +4 -4
  11. package/core/composables/useFunctions/index.ts +21 -21
  12. package/core/composables/useFunctions/once.ts +12 -12
  13. package/core/composables/useFunctions/sleep.ts +4 -4
  14. package/core/composables/useFunctions/throttle.ts +14 -14
  15. package/core/composables/useGlobalSearch/index.ts +19 -0
  16. package/core/composables/useKeyboardNavigation/index.ts +211 -0
  17. package/core/composables/useLanguages/index.ts +78 -78
  18. package/core/composables/useLoading/index.ts +9 -9
  19. package/core/composables/useMenuService/index.ts +15 -105
  20. package/core/composables/useSettingsMenu/index.ts +23 -0
  21. package/core/composables/useTheme/index.ts +62 -61
  22. package/core/composables/useWidgets/index.ts +20 -0
  23. package/core/constants/index.ts +2 -0
  24. package/core/directives/autofocus/index.ts +9 -9
  25. package/core/directives/loading/index.ts +30 -1
  26. package/core/directives/loading/styles.css +36 -7
  27. package/core/plugins/i18n/index.ts +11 -11
  28. package/core/plugins/modularity/index.ts +32 -30
  29. package/core/plugins/modularity/loader.ts +2 -1
  30. package/core/plugins/moment/humanize.ts +74 -74
  31. package/core/plugins/moment/index.ts +1 -1
  32. package/core/plugins/permissions/index.ts +10 -10
  33. package/core/plugins/validation/index.ts +1 -1
  34. package/core/plugins/validation/rules.ts +145 -145
  35. package/core/services/app-bar-menu-service.ts +87 -0
  36. package/core/services/app-bar-mobile-buttons-service.ts +57 -0
  37. package/core/services/dashboard-service.ts +121 -0
  38. package/core/services/global-search-service.ts +36 -0
  39. package/core/services/menu-service.ts +235 -0
  40. package/core/services/settings-menu-service.ts +75 -0
  41. package/core/services/widget-service.ts +147 -0
  42. package/core/types/index.ts +33 -18
  43. package/core/types/widget.ts +15 -0
  44. package/core/utilities/camelToSnake.ts +7 -7
  45. package/core/utilities/camelize.ts +5 -5
  46. package/core/utilities/generateId.ts +3 -3
  47. package/core/utilities/kebabToCamel.ts +7 -7
  48. package/dist/{asn1-DF4fnRHj.js → asn1-jKiBa2Ya.js} +20 -18
  49. package/dist/{clike-l4mx49Q1.js → clike-BUuHEmgZ.js} +0 -1
  50. package/dist/{cobol-CJVkMW0i.js → cobol-BlTKFDRj.js} +0 -1
  51. package/dist/core/composables/index.d.ts +11 -7
  52. package/dist/core/composables/index.d.ts.map +1 -1
  53. package/dist/core/composables/useAppBarMobileButtons/index.d.ts +3 -0
  54. package/dist/core/composables/useAppBarMobileButtons/index.d.ts.map +1 -0
  55. package/dist/core/composables/useAppBarWidget/index.d.ts +5 -0
  56. package/dist/core/composables/useAppBarWidget/index.d.ts.map +1 -0
  57. package/dist/core/composables/useDashboard/index.d.ts +5 -0
  58. package/dist/core/composables/useDashboard/index.d.ts.map +1 -0
  59. package/dist/core/composables/useGlobalSearch/index.d.ts +4 -0
  60. package/dist/core/composables/useGlobalSearch/index.d.ts.map +1 -0
  61. package/dist/core/composables/useKeyboardNavigation/index.d.ts +24 -0
  62. package/dist/core/composables/useKeyboardNavigation/index.d.ts.map +1 -0
  63. package/dist/core/composables/useMenuService/index.d.ts +4 -10
  64. package/dist/core/composables/useMenuService/index.d.ts.map +1 -1
  65. package/dist/core/composables/useSettingsMenu/index.d.ts +5 -0
  66. package/dist/core/composables/useSettingsMenu/index.d.ts.map +1 -0
  67. package/dist/core/composables/useTheme/index.d.ts.map +1 -1
  68. package/dist/core/composables/useWidgets/index.d.ts +5 -0
  69. package/dist/core/composables/useWidgets/index.d.ts.map +1 -0
  70. package/dist/core/constants/index.d.ts +1 -0
  71. package/dist/core/constants/index.d.ts.map +1 -1
  72. package/dist/core/directives/loading/index.d.ts.map +1 -1
  73. package/dist/core/plugins/modularity/index.d.ts +7 -7
  74. package/dist/core/plugins/modularity/index.d.ts.map +1 -1
  75. package/dist/core/plugins/modularity/loader.d.ts.map +1 -1
  76. package/dist/core/services/app-bar-menu-service.d.ts +29 -0
  77. package/dist/core/services/app-bar-menu-service.d.ts.map +1 -0
  78. package/dist/core/services/app-bar-mobile-buttons-service.d.ts +24 -0
  79. package/dist/core/services/app-bar-mobile-buttons-service.d.ts.map +1 -0
  80. package/dist/core/services/dashboard-service.d.ts +33 -0
  81. package/dist/core/services/dashboard-service.d.ts.map +1 -0
  82. package/dist/core/services/global-search-service.d.ts +10 -0
  83. package/dist/core/services/global-search-service.d.ts.map +1 -0
  84. package/dist/core/services/menu-service.d.ts +17 -0
  85. package/dist/core/services/menu-service.d.ts.map +1 -0
  86. package/dist/core/services/settings-menu-service.d.ts +25 -0
  87. package/dist/core/services/settings-menu-service.d.ts.map +1 -0
  88. package/dist/core/services/widget-service.d.ts +39 -0
  89. package/dist/core/services/widget-service.d.ts.map +1 -0
  90. package/dist/core/types/index.d.ts +33 -17
  91. package/dist/core/types/index.d.ts.map +1 -1
  92. package/dist/core/types/widget.d.ts +12 -0
  93. package/dist/core/types/widget.d.ts.map +1 -0
  94. package/dist/{dockerfile-CFG_IPGn.js → dockerfile-DIy8NleC.js} +1 -1
  95. package/dist/{factor-DJHfQ4a1.js → factor-DDOC7X6P.js} +1 -1
  96. package/dist/framework.js +282 -224
  97. package/dist/{haxe-pdDS1aE8.js → haxe-70NVW1pR.js} +1 -1
  98. package/dist/index-Bi0kJi5Z.js +137 -0
  99. package/dist/{index-YvFwPxsI.js → index-C21NKea4.js} +9 -9
  100. package/dist/{index-CV4fOhK1.js → index-C9n6vRCl.js} +6 -6
  101. package/dist/{index-Dho4-wXM.js → index-CBdNNVCt.js} +8 -8
  102. package/dist/{index-n48DzlNW.js → index-CNEtPeAi.js} +9 -9
  103. package/dist/index-CPkPLIZF.js +243 -0
  104. package/dist/{index-CT72nbMk.js → index-CUwa-7vt.js} +10 -10
  105. package/dist/{index-bAD1-blW.js → index-ClEfeR5e.js} +7 -7
  106. package/dist/{index-BON_eF-3.js → index-CtUvgwL1.js} +9 -9
  107. package/dist/{index-wsG2MecP.js → index-D7TQzX3d.js} +7 -7
  108. package/dist/{index-Ce86fM2z.js → index-DSYfAsS3.js} +95775 -92179
  109. package/dist/{index-Dcdjgpoe.js → index-Dg1vmmpj.js} +5 -5
  110. package/dist/{index-DSefVRVC.js → index-Dzz7ZfO9.js} +19 -19
  111. package/dist/index-dZEaziXz.js +607 -0
  112. package/dist/{index-Ck9pr8TI.js → index-kg3-UkAr.js} +16 -16
  113. package/dist/{index-BXTIkfHT.js → index-vc0H8rq-.js} +42 -42
  114. package/dist/index-vegt24rG.js +308 -0
  115. package/dist/index.css +1 -1
  116. package/dist/index.d.ts +9 -0
  117. package/dist/index.d.ts.map +1 -1
  118. package/dist/injection-keys.d.ts +46 -0
  119. package/dist/injection-keys.d.ts.map +1 -0
  120. package/dist/{javascript-CWGekh08.js → javascript-WMWNx-Vj.js} +1 -1
  121. package/dist/{livescript-CE_BxZmN.js → livescript-CanGTf8u.js} +25 -25
  122. package/dist/locales/de.json +8 -2
  123. package/dist/locales/en.json +6 -1
  124. package/dist/{mllike-1yy7Y7jE.js → mllike-BSnXJBGA.js} +0 -3
  125. package/dist/{nsis-BtA0qkjU.js → nsis-fePjrhq7.js} +1 -1
  126. package/dist/{pascal-ixanSKUz.js → pascal-De0D6mP7.js} +1 -1
  127. package/dist/{pug-CW1q1xhQ.js → pug-BqUR2bBq.js} +1 -1
  128. package/dist/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts.map +1 -1
  129. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue.d.ts +19 -0
  130. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue.d.ts.map +1 -0
  131. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -1
  132. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts +32 -2
  133. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts.map +1 -1
  134. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts +5 -1
  135. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -1
  136. package/dist/shared/components/blade-navigation/types/index.d.ts +9 -0
  137. package/dist/shared/components/blade-navigation/types/index.d.ts.map +1 -1
  138. package/dist/shared/components/change-password-button/change-password-button.vue.d.ts +3 -0
  139. package/dist/shared/components/change-password-button/change-password-button.vue.d.ts.map +1 -0
  140. package/dist/shared/components/change-password-button/index.d.ts +2 -0
  141. package/dist/shared/components/change-password-button/index.d.ts.map +1 -0
  142. package/dist/shared/components/dashboard-widget-card/dashboard-widget-card.vue.d.ts +25 -0
  143. package/dist/shared/components/dashboard-widget-card/dashboard-widget-card.vue.d.ts.map +1 -0
  144. package/dist/shared/components/dashboard-widget-card/index.d.ts +2 -0
  145. package/dist/shared/components/dashboard-widget-card/index.d.ts.map +1 -0
  146. package/dist/shared/components/draggable-dashboard/DraggableDashboard.vue.d.ts +8 -0
  147. package/dist/shared/components/draggable-dashboard/DraggableDashboard.vue.d.ts.map +1 -0
  148. package/dist/shared/components/draggable-dashboard/_internal/DashboardWidget.vue.d.ts +20 -0
  149. package/dist/shared/components/draggable-dashboard/_internal/DashboardWidget.vue.d.ts.map +1 -0
  150. package/dist/shared/components/draggable-dashboard/composables/useCellSizeCalculator.d.ts +25 -0
  151. package/dist/shared/components/draggable-dashboard/composables/useCellSizeCalculator.d.ts.map +1 -0
  152. package/dist/shared/components/draggable-dashboard/composables/useCollisionDetection.d.ts +27 -0
  153. package/dist/shared/components/draggable-dashboard/composables/useCollisionDetection.d.ts.map +1 -0
  154. package/dist/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.d.ts +376 -0
  155. package/dist/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.d.ts.map +1 -0
  156. package/dist/shared/components/draggable-dashboard/composables/useDashboardGrid.d.ts +20 -0
  157. package/dist/shared/components/draggable-dashboard/composables/useDashboardGrid.d.ts.map +1 -0
  158. package/dist/shared/components/draggable-dashboard/composables/useDragClone.d.ts +15 -0
  159. package/dist/shared/components/draggable-dashboard/composables/useDragClone.d.ts.map +1 -0
  160. package/dist/shared/components/draggable-dashboard/composables/useEventCoordinates.d.ts +33 -0
  161. package/dist/shared/components/draggable-dashboard/composables/useEventCoordinates.d.ts.map +1 -0
  162. package/dist/shared/components/draggable-dashboard/composables/useGridPosition.d.ts +57 -0
  163. package/dist/shared/components/draggable-dashboard/composables/useGridPosition.d.ts.map +1 -0
  164. package/dist/shared/components/draggable-dashboard/composables/useGridSystem.d.ts +22 -0
  165. package/dist/shared/components/draggable-dashboard/composables/useGridSystem.d.ts.map +1 -0
  166. package/dist/shared/components/draggable-dashboard/composables/useLayoutPersistence.d.ts +19 -0
  167. package/dist/shared/components/draggable-dashboard/composables/useLayoutPersistence.d.ts.map +1 -0
  168. package/dist/shared/components/draggable-dashboard/composables/useResizeObserver.d.ts +18 -0
  169. package/dist/shared/components/draggable-dashboard/composables/useResizeObserver.d.ts.map +1 -0
  170. package/dist/shared/components/draggable-dashboard/composables/useWidgetLayout.d.ts +14 -0
  171. package/dist/shared/components/draggable-dashboard/composables/useWidgetLayout.d.ts.map +1 -0
  172. package/dist/shared/components/draggable-dashboard/composables/useWidgetStyles.d.ts +21 -0
  173. package/dist/shared/components/draggable-dashboard/composables/useWidgetStyles.d.ts.map +1 -0
  174. package/dist/shared/components/draggable-dashboard/index.d.ts +2 -0
  175. package/dist/shared/components/draggable-dashboard/index.d.ts.map +1 -0
  176. package/dist/shared/components/draggable-dashboard/types.d.ts +84 -0
  177. package/dist/shared/components/draggable-dashboard/types.d.ts.map +1 -0
  178. package/dist/shared/components/generic-dropdown/generic-dropdown.vue.d.ts +132 -0
  179. package/dist/shared/components/generic-dropdown/generic-dropdown.vue.d.ts.map +1 -0
  180. package/dist/shared/components/generic-dropdown/index.d.ts +2 -0
  181. package/dist/shared/components/generic-dropdown/index.d.ts.map +1 -0
  182. package/dist/shared/components/index.d.ts +4 -1
  183. package/dist/shared/components/index.d.ts.map +1 -1
  184. package/dist/shared/components/language-selector/language-selector.vue.d.ts.map +1 -1
  185. package/dist/shared/components/logout-button/index.d.ts +2 -0
  186. package/dist/shared/components/logout-button/index.d.ts.map +1 -0
  187. package/dist/shared/components/logout-button/logout-button.vue.d.ts +3 -0
  188. package/dist/shared/components/logout-button/logout-button.vue.d.ts.map +1 -0
  189. package/dist/shared/components/notification-dropdown/_internal/notification/index.d.ts +2 -0
  190. package/dist/shared/components/notification-dropdown/_internal/notification/index.d.ts.map +1 -0
  191. package/dist/shared/components/notification-dropdown/notification-dropdown.vue.d.ts.map +1 -1
  192. package/dist/shared/components/notification-template/index.d.ts +4 -31
  193. package/dist/shared/components/notification-template/index.d.ts.map +1 -1
  194. package/dist/shared/components/notification-template/notification-template.vue.d.ts +4 -14
  195. package/dist/shared/components/notification-template/notification-template.vue.d.ts.map +1 -1
  196. package/dist/shared/components/notifications/components/notification-container/index.d.ts +1 -1
  197. package/dist/shared/components/notifications/components/notification-container/index.d.ts.map +1 -1
  198. package/dist/shared/components/settings-menu/index.d.ts +2 -0
  199. package/dist/shared/components/settings-menu/index.d.ts.map +1 -0
  200. package/dist/shared/components/settings-menu/settings-menu.vue.d.ts +3 -0
  201. package/dist/shared/components/settings-menu/settings-menu.vue.d.ts.map +1 -0
  202. package/dist/shared/components/settings-menu-item/index.d.ts +2 -0
  203. package/dist/shared/components/settings-menu-item/index.d.ts.map +1 -0
  204. package/dist/shared/components/{app-bar-button/app-bar-button.vue.d.ts → settings-menu-item/settings-menu-item.vue.d.ts} +26 -25
  205. package/dist/shared/components/settings-menu-item/settings-menu-item.vue.d.ts.map +1 -0
  206. package/dist/shared/components/sidebar/sidebar.vue.d.ts +7 -2
  207. package/dist/shared/components/sidebar/sidebar.vue.d.ts.map +1 -1
  208. package/dist/shared/components/theme-selector/theme-selector.vue.d.ts.map +1 -1
  209. package/dist/shared/components/user-dropdown-button/_internal/user-info.vue.d.ts +18 -0
  210. package/dist/shared/components/user-dropdown-button/_internal/user-info.vue.d.ts.map +1 -0
  211. package/dist/shared/components/user-dropdown-button/_internal/user-sidebar.vue.d.ts +23 -0
  212. package/dist/shared/components/user-dropdown-button/_internal/user-sidebar.vue.d.ts.map +1 -0
  213. package/dist/shared/components/user-dropdown-button/index.d.ts +9 -25
  214. package/dist/shared/components/user-dropdown-button/index.d.ts.map +1 -1
  215. package/dist/shared/components/user-dropdown-button/user-dropdown-button.vue.d.ts +1 -18
  216. package/dist/shared/components/user-dropdown-button/user-dropdown-button.vue.d.ts.map +1 -1
  217. package/dist/shared/composables/useMenuExpanded.d.ts +7 -0
  218. package/dist/shared/composables/useMenuExpanded.d.ts.map +1 -0
  219. package/dist/shared/modules/assets/index.d.ts.map +1 -1
  220. package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -1
  221. package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts +16 -16
  222. package/dist/shared/modules/dynamic/components/fields/Button.d.ts +1 -7
  223. package/dist/shared/modules/dynamic/components/fields/Button.d.ts.map +1 -1
  224. package/dist/shared/modules/dynamic/components/fields/Card.d.ts +1 -7
  225. package/dist/shared/modules/dynamic/components/fields/Card.d.ts.map +1 -1
  226. package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts +1 -7
  227. package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts.map +1 -1
  228. package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts +1 -7
  229. package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts.map +1 -1
  230. package/dist/shared/modules/dynamic/components/fields/CustomComponent.d.ts +1 -7
  231. package/dist/shared/modules/dynamic/components/fields/CustomComponent.d.ts.map +1 -1
  232. package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts +1 -7
  233. package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts.map +1 -1
  234. package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts +1 -7
  235. package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts.map +1 -1
  236. package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts +1 -7
  237. package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts.map +1 -1
  238. package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts +1 -7
  239. package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts.map +1 -1
  240. package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts +1 -7
  241. package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts.map +1 -1
  242. package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts +1 -7
  243. package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts.map +1 -1
  244. package/dist/shared/modules/dynamic/components/fields/InputField.d.ts +1 -7
  245. package/dist/shared/modules/dynamic/components/fields/InputField.d.ts.map +1 -1
  246. package/dist/shared/modules/dynamic/components/fields/MultivalueField.d.ts +1 -7
  247. package/dist/shared/modules/dynamic/components/fields/MultivalueField.d.ts.map +1 -1
  248. package/dist/shared/modules/dynamic/components/fields/RadioButtonGroup.d.ts +1 -7
  249. package/dist/shared/modules/dynamic/components/fields/RadioButtonGroup.d.ts.map +1 -1
  250. package/dist/shared/modules/dynamic/components/fields/RatingField.d.ts +1 -7
  251. package/dist/shared/modules/dynamic/components/fields/RatingField.d.ts.map +1 -1
  252. package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts +1 -7
  253. package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts.map +1 -1
  254. package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts +1 -7
  255. package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts.map +1 -1
  256. package/dist/shared/modules/dynamic/components/fields/SwitchField.d.ts +1 -7
  257. package/dist/shared/modules/dynamic/components/fields/SwitchField.d.ts.map +1 -1
  258. package/dist/shared/modules/dynamic/components/fields/Table.d.ts +1 -7
  259. package/dist/shared/modules/dynamic/components/fields/Table.d.ts.map +1 -1
  260. package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts +1 -7
  261. package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts.map +1 -1
  262. package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts +1 -7
  263. package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts.map +1 -1
  264. package/dist/shared/modules/dynamic/components/fields/props.d.ts +1 -7
  265. package/dist/shared/modules/dynamic/components/fields/props.d.ts.map +1 -1
  266. package/dist/shared/modules/dynamic/components/fields/storybook/Button.stories.d.ts +3 -62
  267. package/dist/shared/modules/dynamic/components/fields/storybook/Button.stories.d.ts.map +1 -1
  268. package/dist/shared/modules/dynamic/components/fields/storybook/Card.stories.d.ts +3 -21
  269. package/dist/shared/modules/dynamic/components/fields/storybook/Card.stories.d.ts.map +1 -1
  270. package/dist/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.d.ts +3 -21
  271. package/dist/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.d.ts.map +1 -1
  272. package/dist/shared/modules/dynamic/components/fields/storybook/ContentField.stories.d.ts +3 -21
  273. package/dist/shared/modules/dynamic/components/fields/storybook/ContentField.stories.d.ts.map +1 -1
  274. package/dist/shared/modules/dynamic/components/fields/storybook/EditorField.stories.d.ts +3 -21
  275. package/dist/shared/modules/dynamic/components/fields/storybook/EditorField.stories.d.ts.map +1 -1
  276. package/dist/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.d.ts +3 -21
  277. package/dist/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.d.ts.map +1 -1
  278. package/dist/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.d.ts +3 -21
  279. package/dist/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.d.ts.map +1 -1
  280. package/dist/shared/modules/dynamic/components/fields/storybook/ImageField.stories.d.ts +3 -21
  281. package/dist/shared/modules/dynamic/components/fields/storybook/ImageField.stories.d.ts.map +1 -1
  282. package/dist/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.d.ts +3 -21
  283. package/dist/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.d.ts.map +1 -1
  284. package/dist/shared/modules/dynamic/components/fields/storybook/InputField.stories.d.ts +3 -21
  285. package/dist/shared/modules/dynamic/components/fields/storybook/InputField.stories.d.ts.map +1 -1
  286. package/dist/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.d.ts +3 -21
  287. package/dist/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.d.ts.map +1 -1
  288. package/dist/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.d.ts +3 -21
  289. package/dist/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.d.ts.map +1 -1
  290. package/dist/shared/modules/dynamic/components/fields/storybook/RatingField.stories.d.ts +3 -21
  291. package/dist/shared/modules/dynamic/components/fields/storybook/RatingField.stories.d.ts.map +1 -1
  292. package/dist/shared/modules/dynamic/components/fields/storybook/SelectField.stories.d.ts +3 -21
  293. package/dist/shared/modules/dynamic/components/fields/storybook/SelectField.stories.d.ts.map +1 -1
  294. package/dist/shared/modules/dynamic/components/fields/storybook/StatusField.stories.d.ts +3 -21
  295. package/dist/shared/modules/dynamic/components/fields/storybook/StatusField.stories.d.ts.map +1 -1
  296. package/dist/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.d.ts +3 -21
  297. package/dist/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.d.ts.map +1 -1
  298. package/dist/shared/modules/dynamic/components/fields/storybook/VideoField.stories.d.ts +3 -21
  299. package/dist/shared/modules/dynamic/components/fields/storybook/VideoField.stories.d.ts.map +1 -1
  300. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts +1 -1
  301. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts.map +1 -1
  302. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts +3 -21
  303. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts.map +1 -1
  304. package/dist/shared/modules/dynamic/composables/useFilterBuilder/index.d.ts.map +1 -1
  305. package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +2 -14
  306. package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts.map +1 -1
  307. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts +4 -41
  308. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts.map +1 -1
  309. package/dist/shared/modules/dynamic/types/index.d.ts +5 -0
  310. package/dist/shared/modules/dynamic/types/index.d.ts.map +1 -1
  311. package/dist/shared/pages/InvitePage/components/invite/index.d.ts +10 -10
  312. package/dist/shared/pages/ResetPasswordPage/components/reset-password/index.d.ts +10 -10
  313. package/dist/{simple-mode-HGTvdazT.js → simple-mode-B0dvCdAA.js} +15 -14
  314. package/dist/{sql-uoWIYwDX.js → sql-mMre1Bo3.js} +0 -2
  315. package/dist/tailwind.config.d.ts +1 -81
  316. package/dist/tailwind.config.d.ts.map +1 -1
  317. package/dist/tsconfig.tsbuildinfo +1 -1
  318. package/dist/{ttcn-DmjTzZb6.js → ttcn-Bsa4sfRm.js} +20 -22
  319. package/dist/{ttcn-cfg-B2U3U7dn.js → ttcn-cfg-Bac_acMi.js} +15 -17
  320. package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts.map +1 -1
  321. package/dist/ui/components/atoms/vc-button/vc-button.stories.d.ts +266 -831
  322. package/dist/ui/components/atoms/vc-button/vc-button.stories.d.ts.map +1 -1
  323. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts +20 -3
  324. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts.map +1 -1
  325. package/dist/ui/components/atoms/vc-card/index.d.ts +2 -0
  326. package/dist/ui/components/atoms/vc-card/index.d.ts.map +1 -1
  327. package/dist/ui/components/atoms/vc-card/vc-card.stories.d.ts +36 -24
  328. package/dist/ui/components/atoms/vc-card/vc-card.stories.d.ts.map +1 -1
  329. package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts +2 -0
  330. package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts.map +1 -1
  331. package/dist/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue.d.ts +18 -0
  332. package/dist/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue.d.ts.map +1 -0
  333. package/dist/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue.d.ts +18 -0
  334. package/dist/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue.d.ts.map +1 -0
  335. package/dist/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue.d.ts +18 -0
  336. package/dist/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue.d.ts.map +1 -0
  337. package/dist/ui/components/atoms/vc-icon/icons/BellIcon.vue.d.ts +18 -0
  338. package/dist/ui/components/atoms/vc-icon/icons/BellIcon.vue.d.ts.map +1 -0
  339. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts +18 -0
  340. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts.map +1 -0
  341. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts +18 -0
  342. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts.map +1 -0
  343. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts +18 -0
  344. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts.map +1 -0
  345. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts +18 -0
  346. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts.map +1 -0
  347. package/dist/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue.d.ts +18 -0
  348. package/dist/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue.d.ts.map +1 -0
  349. package/dist/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue.d.ts +18 -0
  350. package/dist/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue.d.ts.map +1 -0
  351. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts +18 -0
  352. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts.map +1 -0
  353. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts +18 -0
  354. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts.map +1 -0
  355. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts +18 -0
  356. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts.map +1 -0
  357. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts +18 -0
  358. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts.map +1 -0
  359. package/dist/ui/components/atoms/vc-icon/icons/LogoutIcon.vue.d.ts +18 -0
  360. package/dist/ui/components/atoms/vc-icon/icons/LogoutIcon.vue.d.ts.map +1 -0
  361. package/dist/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue.d.ts +18 -0
  362. package/dist/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue.d.ts.map +1 -0
  363. package/dist/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue.d.ts +18 -0
  364. package/dist/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue.d.ts.map +1 -0
  365. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts +18 -0
  366. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts.map +1 -0
  367. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts +18 -0
  368. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts.map +1 -0
  369. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts +18 -0
  370. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts.map +1 -0
  371. package/dist/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue.d.ts +18 -0
  372. package/dist/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue.d.ts.map +1 -0
  373. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts +18 -0
  374. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts.map +1 -0
  375. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts +18 -0
  376. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts.map +1 -0
  377. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts +18 -0
  378. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts.map +1 -0
  379. package/dist/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue.d.ts +18 -0
  380. package/dist/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue.d.ts.map +1 -0
  381. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts +18 -0
  382. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts.map +1 -0
  383. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts +18 -0
  384. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts.map +1 -0
  385. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts +18 -0
  386. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts.map +1 -0
  387. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts +28 -0
  388. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts.map +1 -0
  389. package/dist/ui/components/atoms/vc-icon/index.d.ts +1 -0
  390. package/dist/ui/components/atoms/vc-icon/index.d.ts.map +1 -1
  391. package/dist/ui/components/atoms/vc-icon/vc-icon.stories.d.ts +3 -3
  392. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts +3 -2
  393. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  394. package/dist/ui/components/atoms/vc-label/vc-label.stories.d.ts +9 -0
  395. package/dist/ui/components/atoms/vc-label/vc-label.stories.d.ts.map +1 -1
  396. package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts +1 -0
  397. package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts.map +1 -1
  398. package/dist/ui/components/atoms/vc-skeleton/vc-skeleton.vue.d.ts +35 -0
  399. package/dist/ui/components/atoms/vc-skeleton/vc-skeleton.vue.d.ts.map +1 -0
  400. package/dist/ui/components/atoms/vc-status/vc-status.stories.d.ts +15 -0
  401. package/dist/ui/components/atoms/vc-status/vc-status.stories.d.ts.map +1 -1
  402. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts +7 -0
  403. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts.map +1 -1
  404. package/dist/ui/components/atoms/vc-tooltip/vc-tooltip.vue.d.ts +4 -0
  405. package/dist/ui/components/atoms/vc-tooltip/vc-tooltip.vue.d.ts.map +1 -1
  406. package/dist/ui/components/atoms/vc-widget/index.d.ts +6 -0
  407. package/dist/ui/components/atoms/vc-widget/index.d.ts.map +1 -1
  408. package/dist/ui/components/atoms/vc-widget/vc-widget.stories.d.ts +6 -0
  409. package/dist/ui/components/atoms/vc-widget/vc-widget.stories.d.ts.map +1 -1
  410. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts +1 -3
  411. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
  412. package/dist/ui/components/index.d.ts +1 -0
  413. package/dist/ui/components/index.d.ts.map +1 -1
  414. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts +67 -33
  415. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts.map +1 -1
  416. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts +25 -11
  417. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  418. package/dist/ui/components/molecules/vc-checkbox/index.d.ts +21 -4
  419. package/dist/ui/components/molecules/vc-checkbox/index.d.ts.map +1 -1
  420. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.stories.d.ts +210 -40
  421. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.stories.d.ts.map +1 -1
  422. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.vue.d.ts +10 -4
  423. package/dist/ui/components/molecules/vc-checkbox/vc-checkbox.vue.d.ts.map +1 -1
  424. package/dist/ui/components/molecules/vc-editor/vc-editor.stories.d.ts +996 -0
  425. package/dist/ui/components/molecules/vc-editor/vc-editor.stories.d.ts.map +1 -1
  426. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts +332 -0
  427. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
  428. package/dist/ui/components/molecules/vc-field/vc-field.stories.d.ts +3 -3
  429. package/dist/ui/components/molecules/vc-field/vc-field.vue.d.ts +1 -1
  430. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.stories.d.ts +12 -12
  431. package/dist/ui/components/molecules/vc-input/vc-input.stories.d.ts +24 -24
  432. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts +1 -1
  433. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  434. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.stories.d.ts +18 -18
  435. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
  436. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.stories.d.ts +84 -84
  437. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts +12 -12
  438. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts.map +1 -1
  439. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts.map +1 -1
  440. package/dist/ui/components/molecules/vc-select/vc-select.stories.d.ts +240 -240
  441. package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts +24 -24
  442. package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts.map +1 -1
  443. package/dist/ui/components/molecules/vc-slider/index.d.ts +9 -9
  444. package/dist/ui/components/molecules/vc-slider/vc-slider.stories.d.ts +9 -9
  445. package/dist/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts +63 -0
  446. package/dist/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts.map +1 -1
  447. package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts +1 -0
  448. package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts.map +1 -1
  449. package/dist/ui/components/organisms/vc-app/_internal/composables/useAppMenuState.d.ts +19 -0
  450. package/dist/ui/components/organisms/vc-app/_internal/composables/useAppMenuState.d.ts.map +1 -0
  451. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarContent.vue.d.ts +25 -0
  452. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarContent.vue.d.ts.map +1 -0
  453. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarHeader.vue.d.ts +32 -0
  454. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarHeader.vue.d.ts.map +1 -0
  455. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue.d.ts +17 -0
  456. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue.d.ts.map +1 -0
  457. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarOverlay.vue.d.ts +30 -0
  458. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarOverlay.vue.d.ts.map +1 -0
  459. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetItem.vue.d.ts +50 -0
  460. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetItem.vue.d.ts.map +1 -0
  461. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetsMenu.vue.d.ts +3 -0
  462. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetsMenu.vue.d.ts.map +1 -0
  463. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue.d.ts +40 -0
  464. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue.d.ts.map +1 -0
  465. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarMobileActions.d.ts +9 -0
  466. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarMobileActions.d.ts.map +1 -0
  467. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarWidgets.d.ts +8 -0
  468. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarWidgets.d.ts.map +1 -0
  469. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useToggleableContent.d.ts +23 -0
  470. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useToggleableContent.d.ts.map +1 -0
  471. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts +6 -16
  472. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts.map +1 -1
  473. 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
  474. 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
  475. 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
  476. 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
  477. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue.d.ts +3 -12
  478. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue.d.ts.map +1 -1
  479. package/dist/ui/components/organisms/vc-app/vc-app.stories.d.ts +13 -199
  480. package/dist/ui/components/organisms/vc-app/vc-app.stories.d.ts.map +1 -1
  481. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts +5 -197
  482. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  483. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts +1 -2
  484. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  485. 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
  486. 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
  487. 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 -4
  488. 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
  489. 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
  490. 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
  491. 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
  492. 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
  493. 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
  494. 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
  495. 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
  496. 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
  497. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts +9 -2
  498. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts.map +1 -1
  499. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/index.d.ts +3 -0
  500. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/index.d.ts.map +1 -0
  501. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts +16 -0
  502. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts.map +1 -0
  503. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts +16 -0
  504. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts.map +1 -0
  505. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/vc-widget-container.vue.d.ts +15 -0
  506. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/vc-widget-container.vue.d.ts.map +1 -0
  507. package/dist/ui/components/organisms/vc-blade/vc-blade.stories.d.ts +2 -16
  508. package/dist/ui/components/organisms/vc-blade/vc-blade.stories.d.ts.map +1 -1
  509. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts +56 -2
  510. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  511. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts +3 -3
  512. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts.map +1 -1
  513. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -2
  514. package/dist/ui/components/organisms/vc-gallery/vc-gallery.stories.d.ts +13 -13
  515. package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +1 -1
  516. package/dist/ui/components/organisms/vc-table/_internal/vc-table-base-header/vc-table-base-header.vue.d.ts.map +1 -1
  517. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts +3 -2
  518. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts.map +1 -1
  519. package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts +2 -1
  520. package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts.map +1 -1
  521. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-body/vc-table-body.vue.d.ts +218 -0
  522. 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
  523. 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
  524. 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
  525. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-row/vc-table-row.vue.d.ts +236 -0
  526. 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
  527. 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 +24 -0
  528. 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
  529. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue.d.ts +314 -0
  530. package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue.d.ts.map +1 -0
  531. package/dist/ui/components/organisms/vc-table/_internal/vc-table-empty/vc-table-empty.vue.d.ts +1 -1
  532. package/dist/ui/components/organisms/vc-table/_internal/vc-table-empty/vc-table-empty.vue.d.ts.map +1 -1
  533. package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts.map +1 -1
  534. package/dist/ui/components/organisms/vc-table/_internal/vc-table-footer/vc-table-footer.vue.d.ts +32 -0
  535. package/dist/ui/components/organisms/vc-table/_internal/vc-table-footer/vc-table-footer.vue.d.ts.map +1 -0
  536. package/dist/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue.d.ts +66 -0
  537. package/dist/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue.d.ts.map +1 -0
  538. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts +6 -13
  539. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts.map +1 -1
  540. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-view/vc-table-mobile-view.vue.d.ts +229 -0
  541. package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-view/vc-table-mobile-view.vue.d.ts.map +1 -0
  542. package/dist/ui/components/organisms/vc-table/_internal/vc-table-select-all/vc-table-select-all.vue.d.ts +38 -0
  543. package/dist/ui/components/organisms/vc-table/_internal/vc-table-select-all/vc-table-select-all.vue.d.ts.map +1 -0
  544. package/dist/ui/components/organisms/vc-table/composables/useTableActions.d.ts +17 -0
  545. package/dist/ui/components/organisms/vc-table/composables/useTableActions.d.ts.map +1 -0
  546. package/dist/ui/components/organisms/vc-table/composables/useTableColumnReorder.d.ts +407 -0
  547. package/dist/ui/components/organisms/vc-table/composables/useTableColumnReorder.d.ts.map +1 -0
  548. package/dist/ui/components/organisms/vc-table/composables/useTableColumnResize.d.ts +9 -0
  549. package/dist/ui/components/organisms/vc-table/composables/useTableColumnResize.d.ts.map +1 -0
  550. package/dist/ui/components/organisms/vc-table/composables/useTableRowReorder.d.ts +16 -0
  551. package/dist/ui/components/organisms/vc-table/composables/useTableRowReorder.d.ts.map +1 -0
  552. package/dist/ui/components/organisms/vc-table/composables/useTableSelection.d.ts +23 -0
  553. package/dist/ui/components/organisms/vc-table/composables/useTableSelection.d.ts.map +1 -0
  554. package/dist/ui/components/organisms/vc-table/composables/useTableState.d.ts +20 -0
  555. package/dist/ui/components/organisms/vc-table/composables/useTableState.d.ts.map +1 -0
  556. package/dist/ui/components/organisms/vc-table/composables/useTableSwipe.d.ts +12 -0
  557. package/dist/ui/components/organisms/vc-table/composables/useTableSwipe.d.ts.map +1 -0
  558. package/dist/ui/components/organisms/vc-table/vc-table.stories.d.ts +105 -735
  559. package/dist/ui/components/organisms/vc-table/vc-table.stories.d.ts.map +1 -1
  560. package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts +41 -135
  561. package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts.map +1 -1
  562. package/dist/ui/composables/useVisibleElements.d.ts +19 -0
  563. package/dist/ui/composables/useVisibleElements.d.ts.map +1 -0
  564. package/dist/{xquery-xQxle02u.js → xquery-BUQdORAS.js} +72 -76
  565. package/package.json +16 -6
  566. package/shared/components/app-switcher/components/vc-app-switcher/index.ts +1 -1
  567. package/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +30 -135
  568. package/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue +77 -0
  569. package/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +23 -10
  570. package/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.ts +30 -6
  571. package/shared/components/blade-navigation/composables/useBladeNavigation/index.ts +9 -1
  572. package/shared/components/blade-navigation/types/index.ts +10 -0
  573. package/shared/components/change-password/change-password.vue +3 -2
  574. package/shared/components/change-password-button/change-password-button.vue +20 -0
  575. package/shared/components/change-password-button/index.ts +1 -0
  576. package/shared/components/dashboard-widget-card/dashboard-widget-card.vue +67 -0
  577. package/shared/components/dashboard-widget-card/index.ts +1 -0
  578. package/shared/components/draggable-dashboard/DraggableDashboard.vue +332 -0
  579. package/shared/components/draggable-dashboard/_internal/DashboardWidget.vue +117 -0
  580. package/shared/components/draggable-dashboard/composables/useCellSizeCalculator.ts +121 -0
  581. package/shared/components/draggable-dashboard/composables/useCollisionDetection.ts +219 -0
  582. package/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.ts +342 -0
  583. package/shared/components/draggable-dashboard/composables/useDashboardGrid.ts +104 -0
  584. package/shared/components/draggable-dashboard/composables/useDragClone.ts +97 -0
  585. package/shared/components/draggable-dashboard/composables/useEventCoordinates.ts +91 -0
  586. package/shared/components/draggable-dashboard/composables/useGridPosition.ts +150 -0
  587. package/shared/components/draggable-dashboard/composables/useGridSystem.ts +169 -0
  588. package/shared/components/draggable-dashboard/composables/useLayoutPersistence.ts +89 -0
  589. package/shared/components/draggable-dashboard/composables/useResizeObserver.ts +105 -0
  590. package/shared/components/draggable-dashboard/composables/useWidgetLayout.ts +264 -0
  591. package/shared/components/draggable-dashboard/composables/useWidgetStyles.ts +120 -0
  592. package/shared/components/draggable-dashboard/index.ts +1 -0
  593. package/shared/components/draggable-dashboard/types.ts +96 -0
  594. package/shared/components/error-interceptor/interceptor.ts +44 -44
  595. package/shared/components/generic-dropdown/generic-dropdown.vue +219 -0
  596. package/shared/components/generic-dropdown/index.ts +1 -0
  597. package/shared/components/index.ts +4 -1
  598. package/shared/components/language-selector/language-selector.vue +56 -65
  599. package/shared/components/logout-button/index.ts +1 -0
  600. package/shared/components/logout-button/logout-button.vue +27 -0
  601. package/shared/components/notification-dropdown/_internal/notification/index.ts +1 -0
  602. package/shared/components/notification-dropdown/notification-dropdown.vue +27 -85
  603. package/shared/components/notification-template/notification-template.vue +26 -61
  604. package/shared/components/notifications/styles/index.scss +10 -10
  605. package/shared/components/settings-menu/index.ts +1 -0
  606. package/shared/components/settings-menu/settings-menu.vue +25 -0
  607. package/shared/components/settings-menu-item/index.ts +1 -0
  608. package/shared/components/settings-menu-item/settings-menu-item.vue +136 -0
  609. package/shared/components/sidebar/sidebar.vue +81 -42
  610. package/shared/components/theme-selector/theme-selector.vue +55 -66
  611. package/shared/components/user-dropdown-button/_internal/user-info.vue +95 -0
  612. package/shared/components/user-dropdown-button/_internal/user-sidebar.vue +48 -0
  613. package/shared/components/user-dropdown-button/user-dropdown-button.vue +74 -290
  614. package/shared/composables/useMenuExpanded.ts +40 -0
  615. package/shared/modules/assets/components/assets-details/assets-details.vue +2 -2
  616. package/shared/modules/assets/index.ts +0 -1
  617. package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +0 -1
  618. package/shared/modules/dynamic/components/FIELD_MAP.ts +53 -53
  619. package/shared/modules/dynamic/components/SchemaRender.ts +102 -102
  620. package/shared/modules/dynamic/components/factories.ts +244 -244
  621. package/shared/modules/dynamic/components/fields/Button.ts +44 -44
  622. package/shared/modules/dynamic/components/fields/Card.ts +119 -119
  623. package/shared/modules/dynamic/components/fields/Checkbox.ts +53 -53
  624. package/shared/modules/dynamic/components/fields/ContentField.ts +33 -33
  625. package/shared/modules/dynamic/components/fields/CustomComponent.ts +29 -29
  626. package/shared/modules/dynamic/components/fields/DynamicProperty.ts +141 -141
  627. package/shared/modules/dynamic/components/fields/EditorField.ts +46 -46
  628. package/shared/modules/dynamic/components/fields/Fieldset.ts +65 -65
  629. package/shared/modules/dynamic/components/fields/GalleryField.ts +161 -161
  630. package/shared/modules/dynamic/components/fields/ImageField.ts +35 -35
  631. package/shared/modules/dynamic/components/fields/InputCurrency.ts +79 -79
  632. package/shared/modules/dynamic/components/fields/InputField.ts +81 -81
  633. package/shared/modules/dynamic/components/fields/MultivalueField.ts +68 -68
  634. package/shared/modules/dynamic/components/fields/RadioButtonGroup.ts +82 -82
  635. package/shared/modules/dynamic/components/fields/RatingField.ts +28 -28
  636. package/shared/modules/dynamic/components/fields/SelectField.ts +72 -72
  637. package/shared/modules/dynamic/components/fields/StatusField.ts +110 -110
  638. package/shared/modules/dynamic/components/fields/SwitchField.ts +29 -29
  639. package/shared/modules/dynamic/components/fields/Table.ts +1 -2
  640. package/shared/modules/dynamic/components/fields/TextareaField.ts +46 -46
  641. package/shared/modules/dynamic/components/fields/ValidationField.ts +54 -54
  642. package/shared/modules/dynamic/components/fields/VideoField.ts +30 -30
  643. package/shared/modules/dynamic/components/fields/props.ts +39 -39
  644. package/shared/modules/dynamic/components/fields/storybook/Button.stories.ts +2 -63
  645. package/shared/modules/dynamic/components/fields/storybook/Card.stories.ts +1 -2
  646. package/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.ts +185 -185
  647. package/shared/modules/dynamic/components/fields/storybook/ContentField.stories.ts +245 -245
  648. package/shared/modules/dynamic/components/fields/storybook/EditorField.stories.ts +192 -192
  649. package/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.ts +347 -347
  650. package/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.ts +239 -239
  651. package/shared/modules/dynamic/components/fields/storybook/ImageField.stories.ts +186 -186
  652. package/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.ts +281 -281
  653. package/shared/modules/dynamic/components/fields/storybook/InputField.stories.ts +312 -312
  654. package/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.ts +361 -361
  655. package/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.ts +224 -224
  656. package/shared/modules/dynamic/components/fields/storybook/RatingField.stories.ts +131 -131
  657. package/shared/modules/dynamic/components/fields/storybook/SelectField.stories.ts +666 -666
  658. package/shared/modules/dynamic/components/fields/storybook/StatusField.stories.ts +202 -202
  659. package/shared/modules/dynamic/components/fields/storybook/SwitchField.stories.ts +178 -178
  660. package/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.ts +203 -203
  661. package/shared/modules/dynamic/components/fields/storybook/VideoField.stories.ts +92 -92
  662. package/shared/modules/dynamic/components/fields/storybook/common/args.ts +130 -130
  663. package/shared/modules/dynamic/components/fields/storybook/common/templates.ts +1 -1
  664. package/shared/modules/dynamic/components/index.ts +4 -4
  665. package/shared/modules/dynamic/composables/index.ts +4 -4
  666. package/shared/modules/dynamic/composables/useDynamicViewsUtils/index.ts +46 -46
  667. package/shared/modules/dynamic/composables/useFilterBuilder/index.ts +31 -22
  668. package/shared/modules/dynamic/composables/useTableTemplates/index.ts +67 -67
  669. package/shared/modules/dynamic/composables/useToolbarReducer/index.ts +70 -70
  670. package/shared/modules/dynamic/factories/base/useDetailsFactory.ts +144 -144
  671. package/shared/modules/dynamic/factories/base/useListFactory.ts +68 -68
  672. package/shared/modules/dynamic/factories/index.ts +4 -4
  673. package/shared/modules/dynamic/factories/types/index.ts +229 -229
  674. package/shared/modules/dynamic/helpers/getters.ts +12 -12
  675. package/shared/modules/dynamic/helpers/methodHandler.ts +22 -22
  676. package/shared/modules/dynamic/helpers/nodeBuilder.ts +1 -1
  677. package/shared/modules/dynamic/helpers/override.ts +153 -153
  678. package/shared/modules/dynamic/helpers/safeIn.ts +6 -6
  679. package/shared/modules/dynamic/helpers/setters.ts +24 -24
  680. package/shared/modules/dynamic/helpers/unrefNested.ts +14 -14
  681. package/shared/modules/dynamic/helpers/unwrapInterpolation.ts +16 -16
  682. package/shared/modules/dynamic/pages/dynamic-blade-form.vue +69 -31
  683. package/shared/modules/dynamic/pages/dynamic-blade-list.vue +169 -202
  684. package/shared/modules/dynamic/types/index.ts +5 -0
  685. package/shared/pages/ChangePasswordPage/components/change-password/index.ts +3 -3
  686. package/shared/pages/ChangePasswordPage/components/index.ts +1 -1
  687. package/shared/pages/ChangePasswordPage/index.ts +1 -1
  688. package/shared/pages/ChangePasswordPage/plugin.ts +4 -4
  689. package/shared/pages/InvitePage/components/index.ts +1 -1
  690. package/shared/pages/InvitePage/components/invite/Invite.vue +216 -216
  691. package/shared/pages/InvitePage/components/invite/index.ts +3 -3
  692. package/shared/pages/InvitePage/index.ts +1 -1
  693. package/shared/pages/InvitePage/plugin.ts +4 -4
  694. package/shared/pages/LoginPage/components/index.ts +1 -1
  695. package/shared/pages/LoginPage/components/login/Login.vue +1 -3
  696. package/shared/pages/LoginPage/components/login/index.ts +3 -3
  697. package/shared/pages/LoginPage/index.ts +1 -1
  698. package/shared/pages/LoginPage/plugin.ts +4 -4
  699. package/shared/pages/ResetPasswordPage/components/index.ts +1 -1
  700. package/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue +1 -1
  701. package/shared/pages/ResetPasswordPage/components/reset-password/index.ts +3 -3
  702. package/shared/pages/ResetPasswordPage/index.ts +1 -1
  703. package/shared/pages/ResetPasswordPage/plugin.ts +4 -4
  704. package/shared/pages/index.ts +4 -4
  705. package/shared/pages/plugin.ts +4 -4
  706. package/shared/utilities/assets.ts +42 -42
  707. package/shared/utilities/vueUtils.ts +50 -50
  708. package/tailwind.config.ts +5 -4
  709. package/ui/components/atoms/vc-badge/index.ts +1 -1
  710. package/ui/components/atoms/vc-badge/vc-badge.stories.ts +53 -53
  711. package/ui/components/atoms/vc-badge/vc-badge.vue +32 -15
  712. package/ui/components/atoms/vc-button/vc-button.stories.ts +1 -16
  713. package/ui/components/atoms/vc-button/vc-button.vue +80 -66
  714. package/ui/components/atoms/vc-card/index.ts +3 -3
  715. package/ui/components/atoms/vc-card/vc-card.stories.ts +1 -1
  716. package/ui/components/atoms/vc-card/vc-card.vue +18 -16
  717. package/ui/components/atoms/vc-col/index.ts +1 -1
  718. package/ui/components/atoms/vc-col/vc-col.stories.ts +22 -22
  719. package/ui/components/atoms/vc-col/vc-col.vue +29 -29
  720. package/ui/components/atoms/vc-container/index.ts +10 -10
  721. package/ui/components/atoms/vc-container/vc-container.stories.ts +29 -29
  722. package/ui/components/atoms/vc-hint/index.ts +10 -10
  723. package/ui/components/atoms/vc-hint/vc-hint.stories.ts +23 -23
  724. package/ui/components/atoms/vc-hint/vc-hint.vue +1 -1
  725. package/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue +15 -0
  726. package/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue +20 -0
  727. package/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue +13 -0
  728. package/ui/components/atoms/vc-icon/icons/BellIcon.vue +14 -0
  729. package/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue +13 -0
  730. package/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue +13 -0
  731. package/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue +13 -0
  732. package/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue +13 -0
  733. package/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue +16 -0
  734. package/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue +20 -0
  735. package/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue +14 -0
  736. package/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue +14 -0
  737. package/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue +27 -0
  738. package/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue +22 -0
  739. package/ui/components/atoms/vc-icon/icons/LogoutIcon.vue +13 -0
  740. package/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue +20 -0
  741. package/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue +14 -0
  742. package/ui/components/atoms/vc-icon/icons/OffersIcon.vue +23 -0
  743. package/ui/components/atoms/vc-icon/icons/OrdersIcon.vue +19 -0
  744. package/ui/components/atoms/vc-icon/icons/PeopleIcon.vue +21 -0
  745. package/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue +20 -0
  746. package/ui/components/atoms/vc-icon/icons/ProductsIcon.vue +23 -0
  747. package/ui/components/atoms/vc-icon/icons/ProfileIcon.vue +18 -0
  748. package/ui/components/atoms/vc-icon/icons/SearchIcon.vue +14 -0
  749. package/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue +21 -0
  750. package/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue +16 -0
  751. package/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue +26 -0
  752. package/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue +19 -0
  753. package/ui/components/atoms/vc-icon/icons/index.ts +27 -0
  754. package/ui/components/atoms/vc-icon/index.ts +1 -0
  755. package/ui/components/atoms/vc-icon/vc-icon.vue +62 -10
  756. package/ui/components/atoms/vc-image/index.ts +1 -1
  757. package/ui/components/atoms/vc-image/vc-image.stories.ts +85 -85
  758. package/ui/components/atoms/vc-image/vc-image.vue +1 -1
  759. package/ui/components/atoms/vc-label/index.ts +1 -1
  760. package/ui/components/atoms/vc-label/vc-label.stories.ts +31 -31
  761. package/ui/components/atoms/vc-label/vc-label.vue +12 -1
  762. package/ui/components/atoms/vc-link/index.ts +10 -10
  763. package/ui/components/atoms/vc-link/vc-link.stories.ts +37 -37
  764. package/ui/components/atoms/vc-link/vc-link.vue +54 -54
  765. package/ui/components/atoms/vc-loading/index.ts +3 -3
  766. package/ui/components/atoms/vc-loading/vc-loading.stories.ts +18 -18
  767. package/ui/components/atoms/vc-loading/vc-loading.vue +58 -58
  768. package/ui/components/atoms/vc-progress/index.ts +10 -10
  769. package/ui/components/atoms/vc-progress/vc-progress.stories.ts +30 -30
  770. package/ui/components/atoms/vc-progress/vc-progress.vue +1 -1
  771. package/ui/components/atoms/vc-row/index.ts +1 -1
  772. package/ui/components/atoms/vc-row/vc-row.stories.ts +20 -20
  773. package/ui/components/atoms/vc-row/vc-row.vue +22 -22
  774. package/ui/components/atoms/vc-skeleton/vc-skeleton.vue +51 -0
  775. package/ui/components/atoms/vc-status/index.ts +1 -1
  776. package/ui/components/atoms/vc-status/vc-status.stories.ts +85 -85
  777. package/ui/components/atoms/vc-status/vc-status.vue +64 -17
  778. package/ui/components/atoms/vc-status-icon/index.ts +1 -1
  779. package/ui/components/atoms/vc-switch/index.ts +1 -1
  780. package/ui/components/atoms/vc-switch/vc-switch.vue +5 -7
  781. package/ui/components/atoms/vc-tooltip/index.ts +1 -1
  782. package/ui/components/atoms/vc-tooltip/vc-tooltip.vue +28 -13
  783. package/ui/components/atoms/vc-video/index.ts +1 -1
  784. package/ui/components/atoms/vc-video/vc-video.stories.ts +19 -19
  785. package/ui/components/atoms/vc-widget/index.ts +3 -3
  786. package/ui/components/atoms/vc-widget/vc-widget.stories.ts +20 -20
  787. package/ui/components/atoms/vc-widget/vc-widget.vue +86 -59
  788. package/ui/components/index.ts +2 -0
  789. package/ui/components/molecules/index.ts +16 -16
  790. package/ui/components/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue +89 -92
  791. package/ui/components/molecules/vc-breadcrumbs/index.ts +1 -1
  792. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.ts +43 -43
  793. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +157 -121
  794. package/ui/components/molecules/vc-checkbox/index.ts +3 -3
  795. package/ui/components/molecules/vc-checkbox/vc-checkbox.stories.ts +84 -84
  796. package/ui/components/molecules/vc-checkbox/vc-checkbox.vue +185 -119
  797. package/ui/components/molecules/vc-editor/index.ts +1 -1
  798. package/ui/components/molecules/vc-editor/vc-editor.stories.ts +29 -29
  799. package/ui/components/molecules/vc-editor/vc-editor.vue +33 -3
  800. package/ui/components/molecules/vc-field/_internal/vc-field-type/vc-field-type.vue +96 -96
  801. package/ui/components/molecules/vc-field/index.ts +1 -1
  802. package/ui/components/molecules/vc-field/vc-field.stories.ts +114 -114
  803. package/ui/components/molecules/vc-field/vc-field.vue +1 -1
  804. package/ui/components/molecules/vc-file-upload/index.ts +1 -1
  805. package/ui/components/molecules/vc-file-upload/vc-file-upload.stories.ts +39 -39
  806. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +2 -2
  807. package/ui/components/molecules/vc-form/index.ts +10 -10
  808. package/ui/components/molecules/vc-form/vc-form.stories.ts +25 -25
  809. package/ui/components/molecules/vc-form/vc-form.vue +5 -5
  810. package/ui/components/molecules/vc-input/index.ts +1 -1
  811. package/ui/components/molecules/vc-input/vc-input.stories.ts +165 -165
  812. package/ui/components/molecules/vc-input/vc-input.vue +57 -13
  813. package/ui/components/molecules/vc-input-currency/index.ts +1 -1
  814. package/ui/components/molecules/vc-input-currency/vc-input-currency.stories.ts +83 -83
  815. package/ui/components/molecules/vc-input-currency/vc-input-currency.vue +20 -0
  816. package/ui/components/molecules/vc-multivalue/index.ts +1 -1
  817. package/ui/components/molecules/vc-multivalue/vc-multivalue.stories.ts +120 -120
  818. package/ui/components/molecules/vc-multivalue/vc-multivalue.vue +69 -16
  819. package/ui/components/molecules/vc-notification/index.ts +1 -1
  820. package/ui/components/molecules/vc-notification/vc-notification.vue +1 -1
  821. package/ui/components/molecules/vc-pagination/index.ts +3 -3
  822. package/ui/components/molecules/vc-pagination/vc-pagination.stories.ts +24 -24
  823. package/ui/components/molecules/vc-pagination/vc-pagination.vue +48 -110
  824. package/ui/components/molecules/vc-radio-button/index.ts +1 -1
  825. package/ui/components/molecules/vc-radio-button/vc-radio-button.stories.ts +97 -97
  826. package/ui/components/molecules/vc-radio-button/vc-radio-button.vue +13 -8
  827. package/ui/components/molecules/vc-rating/index.ts +1 -1
  828. package/ui/components/molecules/vc-rating/vc-rating.stories.ts +59 -59
  829. package/ui/components/molecules/vc-select/index.ts +1 -1
  830. package/ui/components/molecules/vc-select/vc-select.stories.ts +685 -685
  831. package/ui/components/molecules/vc-select/vc-select.vue +81 -25
  832. package/ui/components/molecules/vc-slider/index.ts +13 -13
  833. package/ui/components/molecules/vc-slider/vc-slider.stories.ts +61 -61
  834. package/ui/components/molecules/vc-slider/vc-slider.vue +118 -118
  835. package/ui/components/molecules/vc-textarea/index.ts +1 -1
  836. package/ui/components/molecules/vc-textarea/vc-textarea.stories.ts +53 -53
  837. package/ui/components/molecules/vc-textarea/vc-textarea.vue +37 -8
  838. package/ui/components/organisms/index.ts +7 -7
  839. package/ui/components/organisms/vc-app/_internal/composables/useAppMenuState.ts +97 -0
  840. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarContent.vue +48 -0
  841. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarHeader.vue +173 -0
  842. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue +102 -0
  843. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarOverlay.vue +90 -0
  844. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetItem.vue +163 -0
  845. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarWidgetsMenu.vue +110 -0
  846. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue +172 -0
  847. package/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarMobileActions.ts +51 -0
  848. package/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useAppBarWidgets.ts +27 -0
  849. package/ui/components/organisms/vc-app/_internal/vc-app-bar/composables/useToggleableContent.ts +66 -0
  850. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +373 -146
  851. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +188 -120
  852. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +2 -2
  853. package/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue +86 -131
  854. package/ui/components/organisms/vc-app/vc-app.stories.ts +214 -214
  855. package/ui/components/organisms/vc-app/vc-app.vue +135 -97
  856. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +139 -90
  857. 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
  858. 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 +62 -86
  859. 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
  860. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/desktop/vc-blade-toolbar-desktop.vue +182 -0
  861. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/mobile/vc-blade-toolbar-mobile.vue +146 -0
  862. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/vc-blade-toolbar-buttons.vue +32 -0
  863. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +30 -48
  864. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/index.ts +2 -0
  865. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue +96 -0
  866. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue +184 -0
  867. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/vc-widget-container.vue +113 -0
  868. package/ui/components/organisms/vc-blade/index.ts +1 -1
  869. package/ui/components/organisms/vc-blade/vc-blade.stories.ts +83 -83
  870. package/ui/components/organisms/vc-blade/vc-blade.vue +177 -117
  871. package/ui/components/organisms/vc-dynamic-property/index.ts +1 -1
  872. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +163 -163
  873. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +1 -1
  874. package/ui/components/organisms/vc-gallery/index.ts +1 -1
  875. package/ui/components/organisms/vc-gallery/vc-gallery.stories.ts +91 -91
  876. package/ui/components/organisms/vc-gallery/vc-gallery.vue +348 -348
  877. package/ui/components/organisms/vc-login-form/index.ts +1 -1
  878. package/ui/components/organisms/vc-popup/index.ts +3 -3
  879. package/ui/components/organisms/vc-popup/vc-popup.vue +3 -3
  880. package/ui/components/organisms/vc-table/_internal/vc-table-add-new/vc-table-add-new.vue +63 -63
  881. package/ui/components/organisms/vc-table/_internal/vc-table-base-header/vc-table-base-header.vue +21 -17
  882. package/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue +8 -7
  883. package/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue +4 -3
  884. package/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue +4 -3
  885. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-body/vc-table-body.vue +133 -0
  886. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-columns-header/vc-table-columns-header.vue +250 -0
  887. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-row/vc-table-row.vue +238 -0
  888. 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
  889. package/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue +214 -0
  890. package/ui/components/organisms/vc-table/_internal/vc-table-empty/vc-table-empty.vue +2 -7
  891. package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +84 -45
  892. package/ui/components/organisms/vc-table/_internal/vc-table-footer/vc-table-footer.vue +62 -0
  893. package/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue +160 -0
  894. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +47 -69
  895. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-view/vc-table-mobile-view.vue +386 -0
  896. package/ui/components/organisms/vc-table/_internal/vc-table-select-all/vc-table-select-all.vue +118 -0
  897. package/ui/components/organisms/vc-table/composables/useTableActions.ts +56 -0
  898. package/ui/components/organisms/vc-table/composables/useTableColumnReorder.ts +255 -0
  899. package/ui/components/organisms/vc-table/composables/useTableColumnResize.ts +147 -0
  900. package/ui/components/organisms/vc-table/composables/useTableRowReorder.ts +175 -0
  901. package/ui/components/organisms/vc-table/composables/useTableSelection.ts +118 -0
  902. package/ui/components/organisms/vc-table/composables/useTableState.ts +230 -0
  903. package/ui/components/organisms/vc-table/composables/useTableSwipe.ts +32 -0
  904. package/ui/components/organisms/vc-table/index.ts +1 -1
  905. package/ui/components/organisms/vc-table/vc-table.stories.ts +214 -214
  906. package/ui/components/organisms/vc-table/vc-table.vue +288 -1311
  907. package/ui/composables/useVisibleElements.ts +148 -0
  908. package/dist/index-DK6ijkM9.js +0 -598
  909. package/dist/index-DiJJUsG2.js +0 -243
  910. package/dist/index-PaekRinB.js +0 -312
  911. package/dist/index-lnO7rLKk.js +0 -135
  912. package/dist/shared/components/app-bar-button/app-bar-button.vue.d.ts.map +0 -1
  913. package/dist/shared/components/app-bar-button/index.d.ts +0 -2
  914. package/dist/shared/components/app-bar-button/index.d.ts.map +0 -1
  915. package/dist/shared/components/blade-navigation/injectionKeys.d.ts +0 -4
  916. package/dist/shared/components/blade-navigation/injectionKeys.d.ts.map +0 -1
  917. 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
  918. package/shared/components/app-bar-button/app-bar-button.vue +0 -169
  919. package/shared/components/app-bar-button/index.ts +0 -1
  920. package/shared/components/blade-navigation/injectionKeys.ts +0 -4
@@ -0,0 +1,332 @@
1
+ <template>
2
+ <VcContainer
3
+ no-padding
4
+ class="vc-dashboard-grid"
5
+ >
6
+ <div
7
+ ref="gridContainerRef"
8
+ class="vc-dashboard-grid__container"
9
+ >
10
+ <!-- Position indicator with smooth animation -->
11
+ <div
12
+ v-if="draggedWidget && previewPosition"
13
+ class="vc-dashboard-grid__position-preview"
14
+ :class="{
15
+ 'is-animating': isDragging,
16
+ }"
17
+ :style="widgetStyles.getPreviewStyles(draggedWidget, previewPosition)"
18
+ ></div>
19
+
20
+ <!-- Widgets -->
21
+ <DashboardWidget
22
+ v-for="widget in widgets"
23
+ :key="widget.id"
24
+ :widget="widget"
25
+ :style="getWidgetStylesWithState(widget)"
26
+ :is-dragging="draggedWidget?.id === widget.id"
27
+ :class="{
28
+ 'is-dragging': draggedWidget?.id === widget.id,
29
+ 'is-displaced': isWidgetDisplaced(widget.id),
30
+ 'is-animating': isDragging && (draggedWidget?.id === widget.id || isWidgetDisplaced(widget.id)),
31
+ }"
32
+ :data-id="widget.id"
33
+ @drag="(e: MouseEvent | TouchEvent) => handleMouseDown(e, widget, e.target as HTMLElement)"
34
+ />
35
+ </div>
36
+ </VcContainer>
37
+ </template>
38
+
39
+ <script setup lang="ts">
40
+ /**
41
+ * DraggableDashboard Component
42
+ *
43
+ * A flexible dashboard that allows widgets to be dragged and arranged in a grid layout.
44
+ * Features:
45
+ * - Drag and drop interface for arranging widgets
46
+ * - Automatic layout calculation
47
+ * - Collision detection and displacement
48
+ * - Responsive grid
49
+ * - Layout persistence in localStorage
50
+ * - Support for built-in widget positions
51
+ *
52
+ * Widget positions are automatically saved to localStorage whenever the layout changes
53
+ * and restored when the dashboard is initialized.
54
+ *
55
+ * Position initialization priority:
56
+ * 1. Positions from localStorage (if available)
57
+ * 2. Built-in widget positions (if defined)
58
+ * 3. Automatic arrangement in rows
59
+ */
60
+ import { ref, onMounted, onUnmounted, defineExpose, computed, watch } from "vue";
61
+ import type { Ref } from "vue";
62
+ import type { IDashboardWidget } from "./types";
63
+ import { useDashboardGrid } from "./composables/useDashboardGrid";
64
+ import { useDashboardDragAndDrop } from "./composables/useDashboardDragAndDrop";
65
+ import { useDashboard } from "../../../core/composables/useDashboard";
66
+ import { useCellSizeCalculator } from "./composables/useCellSizeCalculator";
67
+ import { useWidgetStyles } from "./composables/useWidgetStyles";
68
+ import { useResizeObserver } from "./composables/useResizeObserver";
69
+ import VcContainer from "../../../ui/components/atoms/vc-container/vc-container.vue";
70
+ import DashboardWidget from "./_internal/DashboardWidget.vue";
71
+
72
+ // Reference to the grid container for coordinate calculations
73
+ const gridContainerRef = ref<HTMLElement | null>(null);
74
+
75
+ // Initialize Grid
76
+ const dashboard = useDashboard();
77
+ const {
78
+ widgets,
79
+ layout,
80
+ GRID_COLUMNS,
81
+ getGridRows,
82
+ arrangeWidgetsInRows,
83
+ initializeLayout,
84
+ saveLayoutToLocalStorage,
85
+ loadLayoutFromLocalStorage,
86
+ initializeWithBuiltInPositions,
87
+ } = useDashboardGrid();
88
+
89
+ // Initialize cellSize calculator
90
+ const cellSizeCalculator = useCellSizeCalculator(GRID_COLUMNS);
91
+
92
+ // Function for getting the cell sizes
93
+ const getCellSize = () => {
94
+ return cellSizeCalculator.calculateCellSize(gridContainerRef.value);
95
+ };
96
+
97
+ // Initialize widget styles
98
+ const widgetStyles = useWidgetStyles(getCellSize);
99
+
100
+ // Initialize Drag & Drop
101
+ const {
102
+ draggedWidget,
103
+ previewPosition,
104
+ displacedWidgets,
105
+ isDragging,
106
+ handleMouseDown,
107
+ setGridContainer,
108
+ isWidgetDisplaced,
109
+ getDisplacedPosition,
110
+ } = useDashboardDragAndDrop(dashboard.updateWidgetPosition, getGridRows);
111
+
112
+ // Pass grid container reference to the dragging composable
113
+ watch(gridContainerRef, (container) => {
114
+ if (container) {
115
+ setGridContainer(container);
116
+ }
117
+ });
118
+
119
+ // Watch for layout changes and save to localStorage
120
+ watch(
121
+ layout,
122
+ () => {
123
+ saveLayoutToLocalStorage();
124
+ },
125
+ { deep: true },
126
+ );
127
+
128
+ // Handle container resize with debounce
129
+ const handleContainerResize = (entries: ResizeObserverEntry[]) => {
130
+ if (!entries.length || isDragging.value) return;
131
+
132
+ const entry = entries[0];
133
+ const container = gridContainerRef.value;
134
+
135
+ if (container) {
136
+ cellSizeCalculator.handleContainerResize(container);
137
+ }
138
+ };
139
+
140
+ // Initialize resize observer
141
+ const resizeObserver = useResizeObserver(handleContainerResize, { debounceMs: 300 });
142
+
143
+ // Gets the styles for the widget depending on its state
144
+ const getWidgetStylesWithState = (widget: IDashboardWidget) => {
145
+ const position = layout.value.get(widget.id);
146
+ const isDragged = draggedWidget.value?.id === widget.id;
147
+ const displacedPosition = isWidgetDisplaced(widget.id) ? getDisplacedPosition(widget.id) : undefined;
148
+
149
+ return widgetStyles.getWidgetStyles(widget, position, isDragged, displacedPosition);
150
+ };
151
+
152
+ // Public method for rearranging widgets
153
+ const rearrangeWidgets = () => {
154
+ arrangeWidgetsInRows(widgets.value);
155
+ };
156
+
157
+ // Public method to manually trigger a layout recalculation
158
+ const recalculateLayout = () => {
159
+ cellSizeCalculator.clearCache();
160
+ recalculateWidgetPositions();
161
+ };
162
+
163
+ /**
164
+ * Manually saves the current dashboard layout to localStorage
165
+ *
166
+ * The layout is automatically saved when it changes, but this method
167
+ * can be used to trigger a save operation manually if needed.
168
+ */
169
+ const saveLayout = () => {
170
+ saveLayoutToLocalStorage();
171
+ };
172
+
173
+ /**
174
+ * Initializes dashboard widgets using their built-in positions
175
+ *
176
+ * This is used to reset the layout to the original widget positions
177
+ * defined when the widgets were registered.
178
+ *
179
+ * @returns {boolean} True if at least one widget had a built-in position
180
+ */
181
+ const useBuiltInPositions = () => {
182
+ const result = initializeWithBuiltInPositions();
183
+ return result;
184
+ };
185
+
186
+ // Recalculate widget positions based on new container size
187
+ const recalculateWidgetPositions = () => {
188
+ // First recalculate cell size to get updated dimensions
189
+ getCellSize();
190
+
191
+ // Update previous width
192
+ if (gridContainerRef.value) {
193
+ cellSizeCalculator.previousContainerWidth.value = gridContainerRef.value.getBoundingClientRect().width;
194
+ }
195
+ };
196
+
197
+ // Add cleanup on component unmount
198
+ onMounted(() => {
199
+ initializeLayout();
200
+ // Initial size calculation
201
+ getCellSize();
202
+
203
+ // Initialize resize observer for the container
204
+ if (gridContainerRef.value && resizeObserver.isSupported) {
205
+ resizeObserver.observe(gridContainerRef.value);
206
+ }
207
+
208
+ // Also keep the window resize listener for fallback compatibility
209
+ window.addEventListener("resize", cellSizeCalculator.clearCache);
210
+ });
211
+
212
+ onUnmounted(() => {
213
+ // Cleanup window event listener
214
+ window.removeEventListener("resize", cellSizeCalculator.clearCache);
215
+ });
216
+
217
+ // Export public methods
218
+ defineExpose({
219
+ rearrangeWidgets,
220
+ recalculateLayout,
221
+ saveLayout,
222
+ useBuiltInPositions,
223
+ });
224
+ </script>
225
+
226
+ <style lang="scss">
227
+ :root {
228
+ --dashboard-background: var(--additional-50);
229
+ --dashboard-grid-line: var(--neutrals-200);
230
+ --dashboard-grid-line-active: var(--neutrals-300);
231
+ --dashboard-grid-border: var(--neutrals-300);
232
+ --dashboard-preview-bg: var(--primary-100);
233
+ --dashboard-preview-border: var(--primary-500);
234
+ --dashboard-valid-bg: var(--secondary-100);
235
+ --dashboard-valid-border: var(--secondary-500);
236
+ --dashboard-cell-height: 80px;
237
+ --dashboard-cell-gap-vertical: 24px;
238
+ --dashboard-cell-gap-horizontal: 18px;
239
+ --dashboard-widget-gap: 20px;
240
+ --dashboard-animation-duration: 200ms;
241
+ --dashboard-animation-timing: cubic-bezier(0.4, 0, 0.2, 1);
242
+ --dashboard-transition-duration: 0.35s;
243
+ --dashboard-transition-timing: cubic-bezier(0.25, 0.1, 0.25, 1);
244
+ --dashboard-drag-scale: 1.02;
245
+ --dashboard-gap: 20px;
246
+
247
+ --dashboard-position-preview-color: rgb(from var(--primary-500) r g b / 0.15);
248
+ --dashboard-position-preview-border-color: rgb(from var(--primary-500) r g b / 0.5);
249
+ }
250
+
251
+ .vc-dashboard-grid {
252
+ background-color: var(--dashboard-background);
253
+ touch-action: none;
254
+
255
+ &__container {
256
+ @apply tw-w-full tw-h-full;
257
+ padding: var(--dashboard-cell-gap-vertical) var(--dashboard-cell-gap-horizontal);
258
+ overflow: auto;
259
+ min-height: calc(var(--dashboard-cell-height) * 12 + var(--dashboard-cell-gap-vertical) * 2);
260
+ }
261
+
262
+ &__position-preview {
263
+ position: absolute;
264
+ background-color: var(--dashboard-position-preview-color);
265
+ border: 2px dashed var(--dashboard-position-preview-border-color);
266
+ border-radius: 8px;
267
+ z-index: 100;
268
+ pointer-events: none;
269
+ opacity: 0.8;
270
+ transition: transform var(--dashboard-transition-duration) var(--dashboard-transition-timing);
271
+
272
+ &.is-animating {
273
+ transition: transform var(--dashboard-transition-duration) var(--dashboard-transition-timing);
274
+ }
275
+ }
276
+ }
277
+
278
+ // Widget styles
279
+ .dashboard-widget {
280
+ position: absolute;
281
+ transition:
282
+ transform var(--dashboard-transition-duration) var(--dashboard-transition-timing),
283
+ opacity 0.2s ease;
284
+ touch-action: none;
285
+ will-change: transform;
286
+ backface-visibility: hidden;
287
+
288
+ &:hover {
289
+ cursor: move;
290
+ }
291
+
292
+ &.is-dragging {
293
+ z-index: 1000;
294
+ opacity: 0;
295
+ transition: none !important; /* Turn off all animations when dragging */
296
+ pointer-events: none;
297
+ }
298
+
299
+ &.is-displaced {
300
+ z-index: 10;
301
+ transition: transform var(--dashboard-transition-duration) var(--dashboard-transition-timing);
302
+ }
303
+
304
+ &.is-animating {
305
+ transition: transform var(--dashboard-transition-duration) var(--dashboard-transition-timing);
306
+ }
307
+ }
308
+
309
+ @keyframes collision-pulse {
310
+ 0% {
311
+ box-shadow: 0 0 0 0 rgba(var(--danger-500), 0.4);
312
+ }
313
+ 70% {
314
+ box-shadow: 0 0 0 10px rgba(var(--danger-500), 0);
315
+ }
316
+ 100% {
317
+ box-shadow: 0 0 0 0 rgba(var(--danger-500), 0);
318
+ }
319
+ }
320
+
321
+ @keyframes valid-pulse {
322
+ 0% {
323
+ opacity: 0.5;
324
+ }
325
+ 50% {
326
+ opacity: 0.7;
327
+ }
328
+ 100% {
329
+ opacity: 0.5;
330
+ }
331
+ }
332
+ </style>
@@ -0,0 +1,117 @@
1
+ <template>
2
+ <div
3
+ class="dashboard-widget"
4
+ data-test="dashboard-widget"
5
+ @mousedown="handleWidgetMouseDown"
6
+ @touchstart.passive="handleWidgetTouchStart"
7
+ >
8
+ <component
9
+ :is="widget.component"
10
+ v-bind="widget.props || {}"
11
+ class="dashboard-widget__content"
12
+ />
13
+ </div>
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ import type { IDashboardWidget } from "../types";
18
+
19
+ interface Props {
20
+ widget: IDashboardWidget;
21
+ }
22
+
23
+ defineProps<Props>();
24
+
25
+ // List of selectors for interactive elements that should not trigger dragging
26
+ const interactiveSelectors = [
27
+ "button",
28
+ "a",
29
+ "input",
30
+ "select",
31
+ "textarea",
32
+ "label",
33
+ '[role="button"]',
34
+ '[role="checkbox"]',
35
+ '[role="radio"]',
36
+ '[role="switch"]',
37
+ '[role="tab"]',
38
+ '[role="link"]',
39
+ ];
40
+
41
+ // Check if the click was on an interactive element
42
+ const isInteractiveElement = (target: EventTarget | null): boolean => {
43
+ if (!target || !(target instanceof Element)) return false;
44
+
45
+ // Check if the element or its parents match the interactive element selector
46
+ return interactiveSelectors.some((selector) => {
47
+ return target.matches(selector) || !!target.closest(selector);
48
+ });
49
+ };
50
+
51
+ // Mouse down handler
52
+ const handleWidgetMouseDown = (event: MouseEvent) => {
53
+ // If the click was on an interactive element, do not start dragging
54
+ if (isInteractiveElement(event.target)) {
55
+ return;
56
+ }
57
+
58
+ // If the click was on an empty area, start dragging
59
+ event.preventDefault();
60
+ event.stopPropagation();
61
+
62
+ // Emit the drag event
63
+ emit("drag", event);
64
+ };
65
+
66
+ // Touch start handler
67
+ const handleWidgetTouchStart = (event: TouchEvent) => {
68
+ // If the touch was on an interactive element, do not start dragging
69
+ if (isInteractiveElement(event.target)) {
70
+ return;
71
+ }
72
+
73
+ // If the touch was on an empty area, start dragging
74
+ // Do not use preventDefault here, as we already use .passive
75
+ emit("drag", event);
76
+ };
77
+
78
+ const emit = defineEmits<{
79
+ (e: "drag", event: MouseEvent | TouchEvent): void;
80
+ }>();
81
+ </script>
82
+
83
+ <style lang="scss">
84
+ :root {
85
+ --dashboard-transition-duration: 0.35s;
86
+ --dashboard-transition-timing: cubic-bezier(0.25, 0.1, 0.25, 1);
87
+ --dashboard-widget-border-radius: 6px;
88
+
89
+ --dashboard-widget-shadow-base: 0px 0px 6px -2px rgb(from var(--neutrals-950) r g b / 0.1);
90
+ --dashboard-widget-shadow-elevated: 3px 9px 15px -3px rgb(from var(--neutrals-950) r g b / 0.08);
91
+ }
92
+
93
+ .dashboard-widget {
94
+ @apply tw-rounded-md;
95
+ border-radius: var(--dashboard-widget-border-radius);
96
+ will-change: transform;
97
+ touch-action: none; /* Prevent default browser touch actions */
98
+ -webkit-tap-highlight-color: transparent; /* Remove tap highlight on mobile */
99
+ user-select: none; /* Prevent text selection on drag */
100
+ -webkit-user-select: none;
101
+ -moz-user-select: none;
102
+ -ms-user-select: none;
103
+ box-shadow: var(--dashboard-widget-shadow-base), var(--dashboard-widget-shadow-elevated);
104
+ transition:
105
+ transform var(--dashboard-transition-duration) var(--dashboard-transition-timing),
106
+ box-shadow 0.2s ease;
107
+
108
+ &__content {
109
+ @apply tw-w-full tw-h-full tw-rounded-md;
110
+ overflow: hidden; /* Ensure nothing breaks out of the widget */
111
+ position: relative;
112
+ z-index: 1;
113
+ height: 100%;
114
+ pointer-events: all; /* Ensure content receives events */
115
+ }
116
+ }
117
+ </style>
@@ -0,0 +1,121 @@
1
+ import { ref, type Ref } from "vue";
2
+
3
+ /**
4
+ * Size of the cell
5
+ */
6
+ export interface CellSize {
7
+ width: number;
8
+ height: number;
9
+ }
10
+
11
+ /**
12
+ * Constants for calculations
13
+ */
14
+ const CELL_HEIGHT = 80; // Height of the cell, corresponds to the CSS variable --dashboard-cell-height
15
+ const HORIZONTAL_PADDING = 18; // Horizontal padding, corresponds to --dashboard-cell-gap-horizontal
16
+
17
+ /**
18
+ * Hook for calculating the sizes of dashboard cells
19
+ *
20
+ * Provides functions for calculating the sizes of cells with respect to the container size
21
+ * and caching for performance optimization
22
+ *
23
+ * @param gridColumns The number of columns in the grid
24
+ * @returns An object with functions for working with cell sizes
25
+ */
26
+ export function useCellSizeCalculator(gridColumns: number) {
27
+ // Cache for cell sizes for performance optimization
28
+ const cellSizeCache = ref<CellSize | null>(null);
29
+
30
+ // Previous container width for performance optimization
31
+ const previousContainerWidth = ref<number>(0);
32
+
33
+ /**
34
+ * Calculates the sizes of a cell based on the container size
35
+ *
36
+ * @param container The container element for calculating the sizes
37
+ * @param useCache Use cache for optimization (default is true)
38
+ * @returns The sizes of the cell
39
+ */
40
+ const calculateCellSize = (container: HTMLElement | null, useCache: boolean = true): CellSize => {
41
+ // If we use cache and it is not empty - return the cached value
42
+ if (useCache && cellSizeCache.value) return cellSizeCache.value;
43
+
44
+ // If the container is not defined, return zero sizes
45
+ if (!container) return { width: 0, height: CELL_HEIGHT };
46
+
47
+ // Get the sizes of the container
48
+ const rect = container.getBoundingClientRect();
49
+
50
+ // Calculate the available width taking into account the padding
51
+ const availableWidth = rect.width - 2 * HORIZONTAL_PADDING;
52
+
53
+ // Calculate the width of the cell
54
+ const cellWidth = availableWidth / gridColumns;
55
+
56
+ // Create an object with sizes
57
+ const size: CellSize = {
58
+ width: Math.max(cellWidth, 0), // Protection against negative values
59
+ height: CELL_HEIGHT,
60
+ };
61
+
62
+ // Update the cache
63
+ cellSizeCache.value = size;
64
+ previousContainerWidth.value = rect.width;
65
+
66
+ return size;
67
+ };
68
+
69
+ /**
70
+ * Clears the cache of cell sizes
71
+ */
72
+ const clearCache = (): void => {
73
+ cellSizeCache.value = null;
74
+ };
75
+
76
+ /**
77
+ * Checks if the sizes need to be recalculated based on the width change
78
+ *
79
+ * @param newWidth The new width of the container
80
+ * @returns true if recalculation is needed, false otherwise
81
+ */
82
+ const shouldRecalculate = (newWidth: number): boolean => {
83
+ if (previousContainerWidth.value === 0) return true;
84
+
85
+ const widthChange = Math.abs(newWidth - previousContainerWidth.value);
86
+ const widthChangePercent = (widthChange / previousContainerWidth.value) * 100;
87
+
88
+ // Recalculate if the change is greater than 5% or 50px
89
+ return widthChangePercent > 5 || widthChange > 50;
90
+ };
91
+
92
+ /**
93
+ * Handles the change of the container size
94
+ *
95
+ * @param container The container element
96
+ */
97
+ const handleContainerResize = (container: HTMLElement): void => {
98
+ if (!container) return;
99
+
100
+ const newWidth = container.getBoundingClientRect().width;
101
+
102
+ // Clear the cache for forced recalculation
103
+ clearCache();
104
+
105
+ // If the width has changed significantly, recalculate
106
+ if (shouldRecalculate(newWidth)) {
107
+ calculateCellSize(container, false);
108
+ }
109
+
110
+ // Update the previous width
111
+ previousContainerWidth.value = newWidth;
112
+ };
113
+
114
+ return {
115
+ calculateCellSize,
116
+ clearCache,
117
+ shouldRecalculate,
118
+ handleContainerResize,
119
+ previousContainerWidth,
120
+ };
121
+ }