@vc-shell/framework 1.2.1 → 1.2.3-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/core/composables/index.ts +2 -0
  2. package/core/composables/useAssets/index.ts +72 -28
  3. package/core/composables/useAsync/index.ts +4 -1
  4. package/core/composables/useBladeRegistry/index.ts +6 -5
  5. package/core/composables/useBreadcrumbs/index.ts +4 -1
  6. package/core/composables/useErrorHandler/index.ts +4 -1
  7. package/core/composables/useFunctions/debounce.ts +0 -1
  8. package/core/composables/useFunctions/delay.ts +0 -1
  9. package/core/composables/useFunctions/index.ts +0 -1
  10. package/core/composables/useFunctions/once.ts +0 -1
  11. package/core/composables/useFunctions/sleep.ts +0 -1
  12. package/core/composables/useFunctions/throttle.ts +0 -1
  13. package/core/composables/useGlobalSearch/index.ts +3 -3
  14. package/core/composables/useMenuService/index.ts +5 -2
  15. package/core/composables/useNotifications/index.ts +5 -2
  16. package/core/composables/useTheme/index.ts +4 -1
  17. package/core/composables/useUser/index.ts +189 -20
  18. package/core/composables/useWidgets/index.ts +5 -2
  19. package/core/constants/defaults.ts +76 -0
  20. package/core/constants/index.ts +2 -0
  21. package/core/constants/ui.ts +68 -0
  22. package/core/interceptors/index.ts +5 -2
  23. package/core/plugins/ai-agent/README.md +336 -0
  24. package/core/plugins/ai-agent/components/VcAiAgentPanel.vue +125 -0
  25. package/core/plugins/ai-agent/components/_internal/VcAiAgentHeader.vue +182 -0
  26. package/core/plugins/ai-agent/components/_internal/VcAiAgentIframe.vue +77 -0
  27. package/core/plugins/ai-agent/components/index.ts +1 -0
  28. package/core/plugins/ai-agent/composables/index.ts +4 -0
  29. package/core/plugins/ai-agent/composables/useAiAgent.ts +231 -0
  30. package/core/plugins/ai-agent/composables/useAiAgentContext.ts +280 -0
  31. package/core/plugins/ai-agent/constants.ts +89 -0
  32. package/core/plugins/ai-agent/index.ts +91 -0
  33. package/core/plugins/ai-agent/services/ai-agent-service.ts +598 -0
  34. package/core/plugins/ai-agent/types.ts +310 -0
  35. package/core/plugins/modularity/index.ts +8 -6
  36. package/core/plugins/modularity/loader.ts +36 -33
  37. package/core/plugins/signalR/index.ts +6 -3
  38. package/core/services/app-bar-menu-service.ts +4 -1
  39. package/core/services/dashboard-service.ts +4 -1
  40. package/core/services/index.ts +2 -0
  41. package/core/services/menu-service.ts +4 -1
  42. package/core/services/settings-menu-service.ts +4 -1
  43. package/core/services/toolbar-service.ts +18 -3
  44. package/core/services/widget-service.ts +7 -4
  45. package/core/types/index.ts +3 -0
  46. package/core/types/services.ts +194 -0
  47. package/core/utilities/errorTypes.ts +126 -0
  48. package/core/utilities/index.ts +2 -0
  49. package/core/utilities/logger.ts +120 -0
  50. package/dist/core/composables/useAssets/index.d.ts.map +1 -1
  51. package/dist/core/composables/useAsync/index.d.ts.map +1 -1
  52. package/dist/core/composables/useBladeRegistry/index.d.ts.map +1 -1
  53. package/dist/core/composables/useBreadcrumbs/index.d.ts.map +1 -1
  54. package/dist/core/composables/useErrorHandler/index.d.ts.map +1 -1
  55. package/dist/core/composables/useFunctions/debounce.d.ts.map +1 -1
  56. package/dist/core/composables/useFunctions/delay.d.ts.map +1 -1
  57. package/dist/core/composables/useFunctions/index.d.ts.map +1 -1
  58. package/dist/core/composables/useFunctions/once.d.ts.map +1 -1
  59. package/dist/core/composables/useFunctions/sleep.d.ts.map +1 -1
  60. package/dist/core/composables/useFunctions/throttle.d.ts.map +1 -1
  61. package/dist/core/composables/useGlobalSearch/index.d.ts.map +1 -1
  62. package/dist/core/composables/useMenuService/index.d.ts.map +1 -1
  63. package/dist/core/composables/useNotifications/index.d.ts.map +1 -1
  64. package/dist/core/composables/useTheme/index.d.ts.map +1 -1
  65. package/dist/core/composables/useUser/index.d.ts +8 -0
  66. package/dist/core/composables/useUser/index.d.ts.map +1 -1
  67. package/dist/core/composables/useWidgets/index.d.ts.map +1 -1
  68. package/dist/core/constants/defaults.d.ts +63 -0
  69. package/dist/core/constants/defaults.d.ts.map +1 -0
  70. package/dist/core/constants/index.d.ts +2 -0
  71. package/dist/core/constants/index.d.ts.map +1 -1
  72. package/dist/core/constants/ui.d.ts +50 -0
  73. package/dist/core/constants/ui.d.ts.map +1 -0
  74. package/dist/core/interceptors/index.d.ts.map +1 -1
  75. package/dist/core/plugins/ai-agent/components/VcAiAgentPanel.vue.d.ts +3 -0
  76. package/dist/core/plugins/ai-agent/components/VcAiAgentPanel.vue.d.ts.map +1 -0
  77. package/dist/core/plugins/ai-agent/components/_internal/VcAiAgentHeader.vue.d.ts +15 -0
  78. package/dist/core/plugins/ai-agent/components/_internal/VcAiAgentHeader.vue.d.ts.map +1 -0
  79. package/dist/core/plugins/ai-agent/components/_internal/VcAiAgentIframe.vue.d.ts +10 -0
  80. package/dist/core/plugins/ai-agent/components/_internal/VcAiAgentIframe.vue.d.ts.map +1 -0
  81. package/dist/core/plugins/ai-agent/components/index.d.ts +2 -0
  82. package/dist/core/plugins/ai-agent/components/index.d.ts.map +1 -0
  83. package/dist/core/plugins/ai-agent/composables/index.d.ts +4 -0
  84. package/dist/core/plugins/ai-agent/composables/index.d.ts.map +1 -0
  85. package/dist/core/plugins/ai-agent/composables/useAiAgent.d.ts +95 -0
  86. package/dist/core/plugins/ai-agent/composables/useAiAgent.d.ts.map +1 -0
  87. package/dist/core/plugins/ai-agent/composables/useAiAgentContext.d.ts +55 -0
  88. package/dist/core/plugins/ai-agent/composables/useAiAgentContext.d.ts.map +1 -0
  89. package/dist/core/plugins/ai-agent/constants.d.ts +47 -0
  90. package/dist/core/plugins/ai-agent/constants.d.ts.map +1 -0
  91. package/dist/core/plugins/ai-agent/index.d.ts +48 -0
  92. package/dist/core/plugins/ai-agent/index.d.ts.map +1 -0
  93. package/dist/core/plugins/ai-agent/services/ai-agent-service.d.ts +45 -0
  94. package/dist/core/plugins/ai-agent/services/ai-agent-service.d.ts.map +1 -0
  95. package/dist/core/plugins/ai-agent/types.d.ts +258 -0
  96. package/dist/core/plugins/ai-agent/types.d.ts.map +1 -0
  97. package/dist/core/plugins/modularity/index.d.ts.map +1 -1
  98. package/dist/core/plugins/modularity/loader.d.ts.map +1 -1
  99. package/dist/core/plugins/signalR/index.d.ts.map +1 -1
  100. package/dist/core/services/app-bar-menu-service.d.ts.map +1 -1
  101. package/dist/core/services/dashboard-service.d.ts.map +1 -1
  102. package/dist/core/services/menu-service.d.ts.map +1 -1
  103. package/dist/core/services/settings-menu-service.d.ts.map +1 -1
  104. package/dist/core/services/toolbar-service.d.ts.map +1 -1
  105. package/dist/core/services/widget-service.d.ts.map +1 -1
  106. package/dist/core/types/index.d.ts.map +1 -1
  107. package/dist/core/types/services.d.ts +169 -0
  108. package/dist/core/types/services.d.ts.map +1 -0
  109. package/dist/core/utilities/errorTypes.d.ts +61 -0
  110. package/dist/core/utilities/errorTypes.d.ts.map +1 -0
  111. package/dist/core/utilities/index.d.ts +2 -0
  112. package/dist/core/utilities/index.d.ts.map +1 -1
  113. package/dist/core/utilities/logger.d.ts +259 -0
  114. package/dist/core/utilities/logger.d.ts.map +1 -0
  115. package/dist/framework.js +9623 -8417
  116. package/dist/index.css +1 -1
  117. package/dist/index.d.ts +19 -0
  118. package/dist/index.d.ts.map +1 -1
  119. package/dist/injection-keys.d.ts +21 -6
  120. package/dist/injection-keys.d.ts.map +1 -1
  121. package/dist/shared/components/app-switcher/composables/useAppSwitcher/index.d.ts.map +1 -1
  122. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -1
  123. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -1
  124. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeActions.d.ts.map +1 -1
  125. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeRouteResolver.d.ts.map +1 -1
  126. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/internal/routerUtils.d.ts.map +1 -1
  127. package/dist/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.d.ts.map +1 -1
  128. package/dist/shared/components/draggable-dashboard/composables/useLayoutPersistence.d.ts.map +1 -1
  129. package/dist/shared/components/notifications/composables/useContainer/index.d.ts.map +1 -1
  130. package/dist/shared/components/notifications/composables/useInstance/index.d.ts.map +1 -1
  131. package/dist/shared/components/notifications/core/notification.d.ts.map +1 -1
  132. package/dist/shared/components/popup-handler/components/vc-popup-container/vc-popup-container.vue.d.ts.map +1 -1
  133. package/dist/shared/components/sign-in/useExternalProvider.d.ts.map +1 -1
  134. package/dist/shared/composables/index.d.ts +1 -0
  135. package/dist/shared/composables/index.d.ts.map +1 -1
  136. package/dist/shared/composables/useExternalWidgets.d.ts.map +1 -1
  137. package/dist/shared/composables/useMenuExpanded.d.ts.map +1 -1
  138. package/dist/shared/composables/useTableSelection.d.ts +57 -0
  139. package/dist/shared/composables/useTableSelection.d.ts.map +1 -0
  140. package/dist/shared/composables/useTableSort.d.ts.map +1 -1
  141. package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -1
  142. package/dist/shared/pages/LoginPage/components/login/Login.vue.d.ts.map +1 -1
  143. package/dist/shared/utilities/colorUtils.d.ts +0 -6
  144. package/dist/shared/utilities/colorUtils.d.ts.map +1 -1
  145. package/dist/tsconfig.tsbuildinfo +1 -1
  146. package/dist/ui/components/atoms/vc-banner/vc-banner.vue.d.ts.map +1 -1
  147. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts +0 -15
  148. package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts.map +1 -1
  149. package/dist/ui/components/atoms/vc-container/vc-container.vue.d.ts.map +1 -1
  150. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  151. package/dist/ui/components/atoms/vc-icon/vc-lucide-icon.vue.d.ts.map +1 -1
  152. package/dist/ui/components/atoms/vc-image/vc-image.vue.d.ts.map +1 -1
  153. package/dist/ui/components/atoms/vc-link/vc-link.vue.d.ts.map +1 -1
  154. package/dist/ui/components/atoms/vc-loading/vc-loading.vue.d.ts.map +1 -1
  155. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts +0 -5
  156. package/dist/ui/components/atoms/vc-status/vc-status.vue.d.ts.map +1 -1
  157. package/dist/ui/components/atoms/vc-tooltip/vc-tooltip.vue.d.ts.map +1 -1
  158. package/dist/ui/components/atoms/vc-video/vc-video.vue.d.ts.map +1 -1
  159. package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts.map +1 -1
  160. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  161. package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts.map +1 -1
  162. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts.map +1 -1
  163. package/dist/ui/components/molecules/vc-toast/vc-toast.vue.d.ts.map +1 -1
  164. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  165. 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 -1
  166. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  167. package/dist/ui/components/organisms/vc-login-form/vc-login-form.vue.d.ts.map +1 -1
  168. package/dist/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue.d.ts.map +1 -1
  169. package/dist/ui/components/organisms/vc-table/composables/useTableActions.d.ts.map +1 -1
  170. package/dist/ui/components/organisms/vc-table/composables/useTableColumnResize.d.ts.map +1 -1
  171. package/dist/ui/components/organisms/vc-table/composables/useTableRowReorder.d.ts.map +1 -1
  172. package/dist/ui/components/organisms/vc-table/composables/useTableSelection.d.ts.map +1 -1
  173. package/dist/ui/components/organisms/vc-table/composables/useTableState.d.ts.map +1 -1
  174. package/dist/{vendor-lodash-es-BqkGj3Jl.js → vendor-lodash-es-SgOIjJF8.js} +2 -0
  175. package/package.json +5 -5
  176. package/shared/components/app-switcher/composables/useAppSwitcher/index.ts +4 -1
  177. package/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +67 -4
  178. package/shared/components/blade-navigation/composables/useBladeNavigation/index.ts +13 -10
  179. package/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeActions.ts +7 -4
  180. package/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeRouteResolver.ts +4 -1
  181. package/shared/components/blade-navigation/composables/useBladeNavigation/internal/routerUtils.ts +4 -1
  182. package/shared/components/change-password/change-password.vue +1 -1
  183. package/shared/components/draggable-dashboard/composables/useDashboardDragAndDrop.ts +14 -5
  184. package/shared/components/draggable-dashboard/composables/useLayoutPersistence.ts +5 -2
  185. package/shared/components/index.ts +2 -0
  186. package/shared/components/notifications/composables/useContainer/index.ts +8 -6
  187. package/shared/components/notifications/composables/useInstance/index.ts +4 -1
  188. package/shared/components/notifications/core/notification.ts +10 -7
  189. package/shared/components/popup-handler/components/vc-popup-container/vc-popup-container.vue +20 -1
  190. package/shared/components/sign-in/useExternalProvider.ts +6 -4
  191. package/shared/composables/index.ts +1 -0
  192. package/shared/composables/useExternalWidgets.ts +7 -4
  193. package/shared/composables/useMenuExpanded.ts +15 -1
  194. package/shared/composables/useTableSelection.ts +151 -0
  195. package/shared/composables/useTableSort.ts +4 -4
  196. package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +6 -3
  197. package/shared/pages/LoginPage/components/login/Login.vue +4 -1
  198. package/shared/utilities/colorUtils.ts +5 -12
  199. package/ui/components/atoms/vc-banner/vc-banner.vue +4 -1
  200. package/ui/components/atoms/vc-button/vc-button.vue +2 -25
  201. package/ui/components/atoms/vc-container/vc-container.vue +12 -3
  202. package/ui/components/atoms/vc-icon/vc-icon.vue +0 -10
  203. package/ui/components/atoms/vc-icon/vc-lucide-icon.vue +5 -2
  204. package/ui/components/atoms/vc-image/vc-image.vue +4 -1
  205. package/ui/components/atoms/vc-link/vc-link.vue +59 -54
  206. package/ui/components/atoms/vc-loading/vc-loading.vue +4 -0
  207. package/ui/components/atoms/vc-status/vc-status.vue +0 -5
  208. package/ui/components/atoms/vc-status-icon/vc-status-icon.vue +4 -4
  209. package/ui/components/atoms/vc-tooltip/vc-tooltip.vue +8 -1
  210. package/ui/components/atoms/vc-video/vc-video.vue +4 -2
  211. package/ui/components/atoms/vc-widget/vc-widget.vue +4 -1
  212. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +7 -2
  213. package/ui/components/molecules/vc-input/vc-input.vue +0 -1
  214. package/ui/components/molecules/vc-pagination/vc-pagination.vue +6 -1
  215. package/ui/components/molecules/vc-rating/vc-rating.vue +1 -1
  216. package/ui/components/molecules/vc-textarea/vc-textarea.vue +1 -1
  217. package/ui/components/molecules/vc-toast/vc-toast.vue +11 -1
  218. package/ui/components/organisms/vc-app/vc-app.vue +22 -3
  219. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue +4 -1
  220. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +14 -14
  221. package/ui/components/organisms/vc-blade/vc-blade.vue +3 -1
  222. package/ui/components/organisms/vc-login-form/vc-login-form.vue +3 -1
  223. package/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue +34 -2
  224. package/ui/components/organisms/vc-table/composables/useTableActions.ts +7 -10
  225. package/ui/components/organisms/vc-table/composables/useTableColumnResize.ts +4 -1
  226. package/ui/components/organisms/vc-table/composables/useTableRowReorder.ts +5 -2
  227. package/ui/components/organisms/vc-table/composables/useTableSelection.ts +26 -18
  228. package/ui/components/organisms/vc-table/composables/useTableState.ts +4 -1
  229. package/core/services/global-search-service.ts +0 -36
  230. package/dist/core/services/global-search-service.d.ts +0 -10
  231. package/dist/core/services/global-search-service.d.ts.map +0 -1
@@ -1,6 +1,12 @@
1
1
  import { ComputedRef } from "vue";
2
2
  import { UserDetail, SecurityResult, IdentityResult, LoginType, SignInResult } from "./../../api/platform";
3
3
  import { RequestPasswordResult } from "./../../types";
4
+ export interface TokenData {
5
+ token: string | null;
6
+ access_token: string | null;
7
+ refresh_token: string | null;
8
+ expires_at: number | null;
9
+ }
4
10
  export interface IUserInternalAPI {
5
11
  user: ComputedRef<UserDetail | undefined>;
6
12
  loading: ComputedRef<boolean>;
@@ -17,6 +23,7 @@ export interface IUserInternalAPI {
17
23
  requestPasswordReset: (loginOrEmail: string) => Promise<RequestPasswordResult>;
18
24
  changeUserPassword: (oldPassword: string, newPassword: string) => Promise<SecurityResult | undefined>;
19
25
  getLoginType: () => Promise<LoginType[]>;
26
+ getAccessToken: () => Promise<string | null>;
20
27
  isAuthenticated: ComputedRef<boolean>;
21
28
  }
22
29
  export interface IAppUserAPI {
@@ -26,6 +33,7 @@ export interface IAppUserAPI {
26
33
  isAdministrator: ComputedRef<boolean | undefined>;
27
34
  loadUser: () => Promise<UserDetail>;
28
35
  signOut: () => Promise<void>;
36
+ getAccessToken: () => Promise<string | null>;
29
37
  }
30
38
  export declare function _createInternalUserLogic(): IUserInternalAPI;
31
39
  export declare const useUser: () => IAppUserAPI;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/composables/useUser/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,WAAW,EAAE,MAAM,KAAK,CAAC;AACtD,OAAO,EACL,UAAU,EAGV,cAAc,EAEd,cAAc,EAEd,SAAS,EAET,YAAY,EACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAKtD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC1C,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,eAAe,EAAE,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAClD,QAAQ,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,GAAG;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAC5G,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAChE,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACnG,oBAAoB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/E,kBAAkB,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IACtG,YAAY,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACzC,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC1C,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,eAAe,EAAE,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAClD,QAAQ,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAID,wBAAgB,wBAAwB,IAAI,gBAAgB,CAwJ3D;AAED,eAAO,MAAM,OAAO,QAA8B,WAUhD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/composables/useUser/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,WAAW,EAAE,MAAM,KAAK,CAAC;AACtD,OAAO,EACL,UAAU,EAGV,cAAc,EAEd,cAAc,EAEd,SAAS,EAET,YAAY,EACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAKtD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAOD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC1C,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,eAAe,EAAE,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAClD,QAAQ,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,GAAG;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC,CAAC;IAC5G,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAChE,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACnG,oBAAoB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/E,kBAAkB,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IACtG,YAAY,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACzC,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7C,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;IAC1C,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9B,eAAe,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,eAAe,EAAE,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAClD,QAAQ,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC9C;AA+ED,wBAAgB,wBAAwB,IAAI,gBAAgB,CAuO3D;AAED,eAAO,MAAM,OAAO,QAA8B,WAWhD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/composables/useWidgets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,EACd,cAAc,EACd,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AAGzC,wBAAgB,oBAAoB,IAAI,cAAc,CAIrD;AAED,wBAAgB,UAAU,IAAI,cAAc,CAO3C;AAED,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/composables/useWidgets/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,EACd,cAAc,EACd,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AAMzC,wBAAgB,oBAAoB,IAAI,cAAc,CAIrD;AAED,wBAAgB,UAAU,IAAI,cAAc,CAO3C;AAED,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Component Default Values for VC-Shell Framework
3
+ * Centralized storage for default prop values across components
4
+ */
5
+ export declare const COMPONENT_DEFAULTS: {
6
+ readonly input: {
7
+ readonly maxlength: 1024;
8
+ readonly debounce: 0;
9
+ readonly type: "text";
10
+ readonly autocomplete: "off";
11
+ };
12
+ readonly select: {
13
+ readonly debounce: 500;
14
+ readonly pageSize: 20;
15
+ readonly searchable: true;
16
+ readonly clearable: true;
17
+ };
18
+ readonly table: {
19
+ readonly pageSize: 20;
20
+ readonly pageSizes: readonly number[];
21
+ readonly selectable: false;
22
+ readonly multiselect: false;
23
+ readonly stickyHeader: true;
24
+ };
25
+ readonly pagination: {
26
+ readonly pageSize: 20;
27
+ readonly visiblePages: 5;
28
+ };
29
+ readonly textarea: {
30
+ readonly rows: 3;
31
+ readonly maxlength: 4096;
32
+ };
33
+ readonly editor: {
34
+ readonly minHeight: 200;
35
+ readonly maxHeight: 500;
36
+ };
37
+ readonly tooltip: {
38
+ readonly delay: 300;
39
+ readonly placement: "top";
40
+ };
41
+ readonly modal: {
42
+ readonly closeOnEscape: true;
43
+ readonly closeOnOverlayClick: true;
44
+ };
45
+ readonly notification: {
46
+ readonly duration: 5000;
47
+ readonly position: "top-right";
48
+ };
49
+ readonly dashboard: {
50
+ readonly columns: 12;
51
+ readonly rowHeight: 80;
52
+ readonly gap: 20;
53
+ };
54
+ };
55
+ /**
56
+ * Type for accessing component defaults
57
+ */
58
+ export type ComponentDefaults = typeof COMPONENT_DEFAULTS;
59
+ /**
60
+ * Helper to get defaults for a specific component
61
+ */
62
+ export declare function getComponentDefaults<K extends keyof ComponentDefaults>(componentName: K): ComponentDefaults[K];
63
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../core/constants/defaults.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;4BAiBK,SAAS,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyC3C,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,kBAAkB,CAAC;AAE1D;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,iBAAiB,EAAE,aAAa,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAE9G"}
@@ -1,3 +1,5 @@
1
1
  export declare const FALLBACK_BLADE_ID = "fallback-blade-id";
2
2
  export * from "./locale";
3
+ export * from "./ui";
4
+ export * from "./defaults";
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/constants/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/constants/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,cAAc,UAAU,CAAC;AACzB,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * UI Constants for VC-Shell Framework
3
+ * Centralized storage for magic numbers and UI-related constants
4
+ */
5
+ export declare const UI_CONSTANTS: {
6
+ readonly GRID_COLUMNS: 12;
7
+ readonly CELL_HEIGHT: 80;
8
+ readonly WIDGET_GAP: 20;
9
+ readonly DEBOUNCE_DEFAULT_MS: 500;
10
+ readonly HOVER_DELAY_MS: 200;
11
+ readonly TOOLTIP_DELAY_MS: 300;
12
+ readonly RESIZE_DEBOUNCE_MS: 100;
13
+ readonly ANIMATION_DURATION_MS: 200;
14
+ readonly TRANSITION_DURATION_MS: 150;
15
+ readonly DRAG_THRESHOLD_PX: 3;
16
+ readonly MAX_COLLISION_ITERATIONS: 50;
17
+ readonly MIN_COLUMN_WIDTH_PX: 15;
18
+ readonly OVERFLOW_THRESHOLD: 100;
19
+ readonly Z_INDEX: {
20
+ readonly DROPDOWN: 100;
21
+ readonly TOOLTIP: 9999;
22
+ readonly POPUP: 10000;
23
+ readonly MODAL: 10001;
24
+ readonly DRAG: 1000;
25
+ readonly SIDEBAR: 50;
26
+ readonly HEADER: 40;
27
+ };
28
+ readonly PAGINATION_VISIBLE_PAGES: 5;
29
+ readonly PAGINATION_EDGE_PAGES: 3;
30
+ readonly TABLE_ROW_HEIGHT: 48;
31
+ readonly TABLE_HEADER_HEIGHT: 56;
32
+ readonly DEFAULT_MAXLENGTH: 1024;
33
+ readonly DEFAULT_TEXTAREA_ROWS: 3;
34
+ readonly MENU_COLLAPSED_WIDTH: 76;
35
+ readonly MENU_EXPANDED_WIDTH: 246;
36
+ readonly MENU_ITEM_HEIGHT: 38;
37
+ readonly BREAKPOINTS: {
38
+ readonly XS: 0;
39
+ readonly SM: 576;
40
+ readonly MD: 768;
41
+ readonly LG: 992;
42
+ readonly XL: 1200;
43
+ readonly XXL: 1400;
44
+ };
45
+ };
46
+ /**
47
+ * Type for accessing UI constants values
48
+ */
49
+ export type UIConstants = typeof UI_CONSTANTS;
50
+ //# sourceMappingURL=ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../core/constants/ui.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDf,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/interceptors/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAIpC,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,wFAiElD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/interceptors/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAOpC,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,wFAiElD"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
3
+ //# sourceMappingURL=VcAiAgentPanel.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VcAiAgentPanel.vue.d.ts","sourceRoot":"","sources":["../../../../../core/plugins/ai-agent/components/VcAiAgentPanel.vue"],"names":[],"mappings":";AAoRA,wBAKG"}
@@ -0,0 +1,15 @@
1
+ type __VLS_Props = {
2
+ title?: string;
3
+ isExpanded: boolean;
4
+ };
5
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
6
+ close: () => any;
7
+ expand: () => any;
8
+ collapse: () => any;
9
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
10
+ onClose?: (() => any) | undefined;
11
+ onExpand?: (() => any) | undefined;
12
+ onCollapse?: (() => any) | undefined;
13
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ export default _default;
15
+ //# sourceMappingURL=VcAiAgentHeader.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VcAiAgentHeader.vue.d.ts","sourceRoot":"","sources":["../../../../../../core/plugins/ai-agent/components/_internal/VcAiAgentHeader.vue"],"names":[],"mappings":"AA0LA,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;;;;;;;;;;AAgMF,wBAOG"}
@@ -0,0 +1,10 @@
1
+ type __VLS_Props = {
2
+ url: string;
3
+ };
4
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
5
+ "iframe-ready": (iframe: HTMLIFrameElement) => any;
6
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
7
+ "onIframe-ready"?: ((iframe: HTMLIFrameElement) => any) | undefined;
8
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ export default _default;
10
+ //# sourceMappingURL=VcAiAgentIframe.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VcAiAgentIframe.vue.d.ts","sourceRoot":"","sources":["../../../../../../core/plugins/ai-agent/components/_internal/VcAiAgentIframe.vue"],"names":[],"mappings":"AAkFA,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;;;;;;AAwGF,wBAOG"}
@@ -0,0 +1,2 @@
1
+ export { default as VcAiAgentPanel } from "./VcAiAgentPanel.vue";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../core/plugins/ai-agent/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { useAiAgent, provideAiAgentService, createAiAgentToolbarButton } from "./useAiAgent";
2
+ export type { UseAiAgentReturn, ProvideAiAgentServiceOptions } from "./useAiAgent";
3
+ export { useAiAgentContext, clearPreviewState } from "./useAiAgentContext";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../core/plugins/ai-agent/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC7F,YAAY,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,95 @@
1
+ import { type IAiAgentServiceInternal } from "../services/ai-agent-service";
2
+ import type { IAiAgentService, IAiAgentConfig, IAiAgentMessage } from "../types";
3
+ /**
4
+ * Options for providing the AI agent service
5
+ */
6
+ export interface ProvideAiAgentServiceOptions {
7
+ /** Initial configuration for the AI agent */
8
+ config?: Partial<IAiAgentConfig>;
9
+ /**
10
+ * Whether to add the AI button to all blade toolbars automatically.
11
+ * Default: true
12
+ */
13
+ addGlobalToolbarButton?: boolean;
14
+ }
15
+ /**
16
+ * Provides the AI agent service at the current component level.
17
+ * Should be called once at the app level (in VcApp or plugin install).
18
+ *
19
+ * @param options - Configuration options
20
+ */
21
+ export declare function provideAiAgentService(options?: ProvideAiAgentServiceOptions): IAiAgentServiceInternal;
22
+ /**
23
+ * Return type for useAiAgent composable
24
+ */
25
+ export interface UseAiAgentReturn {
26
+ /** Current panel state ("closed" | "open" | "expanded") */
27
+ panelState: IAiAgentService["panelState"];
28
+ /** Panel configuration */
29
+ config: IAiAgentService["config"];
30
+ /** Current context (reactive) */
31
+ context: IAiAgentService["context"];
32
+ /** Whether panel is open (not closed) */
33
+ isOpen: IAiAgentService["isOpen"];
34
+ /** Whether panel is in expanded state */
35
+ isExpanded: IAiAgentService["isExpanded"];
36
+ /** Total count of items in current context */
37
+ totalItemsCount: IAiAgentService["totalItemsCount"];
38
+ /** Open the AI panel */
39
+ openPanel: () => void;
40
+ /** Close the AI panel */
41
+ closePanel: () => void;
42
+ /** Toggle panel open/close */
43
+ togglePanel: () => void;
44
+ /** Expand the panel to larger width */
45
+ expandPanel: () => void;
46
+ /** Collapse panel to normal width */
47
+ collapsePanel: () => void;
48
+ /** Update configuration */
49
+ setConfig: (config: Partial<IAiAgentConfig>) => void;
50
+ /** Send message to AI agent iframe */
51
+ sendMessage: IAiAgentService["sendMessage"];
52
+ /** Register message handler, returns unsubscribe function */
53
+ onMessage: (handler: (event: IAiAgentMessage) => void) => () => void;
54
+ }
55
+ /**
56
+ * Composable for interacting with the AI agent panel.
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const { togglePanel, isOpen, onMessage } = useAiAgent();
61
+ *
62
+ * // Toggle AI panel
63
+ * const handleAiClick = () => togglePanel();
64
+ *
65
+ * // Listen for messages from AI agent
66
+ * onMessage((message) => {
67
+ * if (message.type === 'PREVIEW_CHANGES') {
68
+ * // Handle preview changes
69
+ * }
70
+ * });
71
+ * ```
72
+ */
73
+ export declare function useAiAgent(): UseAiAgentReturn;
74
+ /**
75
+ * Creates a toolbar button configuration for opening the AI agent.
76
+ * Can be used directly in blade toolbar definitions.
77
+ *
78
+ * @example
79
+ * ```typescript
80
+ * const bladeToolbar = [
81
+ * createAiAgentToolbarButton(),
82
+ * // ... other toolbar items
83
+ * ];
84
+ * ```
85
+ */
86
+ export declare function createAiAgentToolbarButton(options?: {
87
+ title?: string;
88
+ icon?: string;
89
+ }): {
90
+ id: string;
91
+ icon: string;
92
+ title: string;
93
+ clickHandler: () => void;
94
+ };
95
+ //# sourceMappingURL=useAiAgent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAiAgent.d.ts","sourceRoot":"","sources":["../../../../../core/plugins/ai-agent/composables/useAiAgent.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,KAAK,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAElG,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,eAAe,EAEhB,MAAM,UAAU,CAAC;AASlB;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,6CAA6C;IAC7C,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE,4BAA4B,GAAG,uBAAuB,CA8ErG;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,UAAU,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;IAC1C,0BAA0B;IAC1B,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAClC,iCAAiC;IACjC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACpC,yCAAyC;IACzC,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAClC,yCAAyC;IACzC,UAAU,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;IAC1C,8CAA8C;IAC9C,eAAe,EAAE,eAAe,CAAC,iBAAiB,CAAC,CAAC;IACpD,wBAAwB;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,yBAAyB;IACzB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,uCAAuC;IACvC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,qCAAqC;IACrC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,2BAA2B;IAC3B,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IACrD,sCAAsC;IACtC,WAAW,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IAC5C,6DAA6D;IAC7D,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;CACtE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,IAAI,gBAAgB,CA8B7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;EAkBrF"}
@@ -0,0 +1,55 @@
1
+ import type { UseAiAgentContextOptions, UseAiAgentContextReturn } from "../types";
2
+ /**
3
+ * Composable for binding blade data to AI agent context.
4
+ *
5
+ * This composable automatically:
6
+ * - Sends data updates to the AI agent when dataRef changes
7
+ * - Normalizes single objects to arrays for the AI agent
8
+ * - Handles PREVIEW_CHANGES messages to update form data
9
+ * - Provides preview state for visual feedback
10
+ *
11
+ * @example List blade (array of selected items)
12
+ * ```typescript
13
+ * const { selectedItems } = useTableSelection<Offer>();
14
+ *
15
+ * useAiAgentContext({ dataRef: selectedItems });
16
+ * ```
17
+ *
18
+ * @example Details blade (single object - automatically wrapped in array)
19
+ * ```typescript
20
+ * const offer = ref<Offer>({});
21
+ *
22
+ * // Just pass the ref directly - no need to wrap in array!
23
+ * const { previewState } = useAiAgentContext({ dataRef: offer });
24
+ *
25
+ * // Use previewState.isActive to show preview indicator
26
+ * ```
27
+ *
28
+ * @example With custom suggestions
29
+ * ```typescript
30
+ * useAiAgentContext({
31
+ * dataRef: offer,
32
+ * suggestions: [
33
+ * {
34
+ * id: "translate",
35
+ * title: "Translate description",
36
+ * icon: "translation",
37
+ * iconColor: "#FF4A4A",
38
+ * prompt: "Translate the offer description to English"
39
+ * },
40
+ * ],
41
+ * });
42
+ * ```
43
+ */
44
+ export declare function useAiAgentContext<T extends {
45
+ id: string;
46
+ objectType: string;
47
+ name: string;
48
+ [key: string]: unknown;
49
+ }>(options: UseAiAgentContextOptions<T>): UseAiAgentContextReturn;
50
+ /**
51
+ * Clears the preview state manually.
52
+ * Useful when user saves or discards changes.
53
+ */
54
+ export declare function clearPreviewState(previewState: UseAiAgentContextReturn["previewState"]): void;
55
+ //# sourceMappingURL=useAiAgentContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAiAgentContext.d.ts","sourceRoot":"","sources":["../../../../../core/plugins/ai-agent/composables/useAiAgentContext.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,wBAAwB,EACxB,uBAAuB,EAGxB,MAAM,UAAU,CAAC;AAgFlB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAClH,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC,GACnC,uBAAuB,CAuIzB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,uBAAuB,CAAC,cAAc,CAAC,GAAG,IAAI,CAI7F"}
@@ -0,0 +1,47 @@
1
+ import type { IAiAgentConfig, ISuggestion } from "./types";
2
+ /**
3
+ * Default configuration for AI agent panel
4
+ */
5
+ export declare const DEFAULT_AI_AGENT_CONFIG: IAiAgentConfig;
6
+ /**
7
+ * Environment variable name for AI agent URL
8
+ */
9
+ export declare const AI_AGENT_URL_ENV_KEY = "APP_AI_AGENT_URL";
10
+ /**
11
+ * Message types for Shell -> Chat communication
12
+ */
13
+ export declare const SHELL_TO_CHAT_MESSAGE_TYPES: {
14
+ readonly INIT_CONTEXT: "INIT_CONTEXT";
15
+ readonly UPDATE_CONTEXT: "UPDATE_CONTEXT";
16
+ };
17
+ /**
18
+ * Message types for Chat -> Shell communication
19
+ */
20
+ export declare const CHAT_TO_SHELL_MESSAGE_TYPES: {
21
+ readonly CHAT_READY: "CHAT_READY";
22
+ readonly NAVIGATE_TO_APP: "NAVIGATE_TO_APP";
23
+ readonly EXPAND_IN_CHAT: "EXPAND_IN_CHAT";
24
+ readonly RELOAD_BLADE: "RELOAD_BLADE";
25
+ readonly PREVIEW_CHANGES: "PREVIEW_CHANGES";
26
+ readonly APPLY_CHANGES: "APPLY_CHANGES";
27
+ readonly DOWNLOAD_FILE: "DOWNLOAD_FILE";
28
+ readonly SHOW_MORE: "SHOW_MORE";
29
+ readonly CHAT_ERROR: "CHAT_ERROR";
30
+ };
31
+ /**
32
+ * Default suggestions when no custom suggestions provided
33
+ */
34
+ export declare const DEFAULT_SUGGESTIONS: ISuggestion[];
35
+ /**
36
+ * Default toolbar button ID for AI agent
37
+ */
38
+ export declare const AI_AGENT_TOOLBAR_BUTTON_ID = "ai-agent-toggle";
39
+ /**
40
+ * Default toolbar button icon
41
+ */
42
+ export declare const AI_AGENT_TOOLBAR_BUTTON_ICON = "lucide-sparkles";
43
+ /**
44
+ * Default toolbar button title
45
+ */
46
+ export declare const AI_AGENT_TOOLBAR_BUTTON_TITLE = "AI Assistant";
47
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../core/plugins/ai-agent/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAMrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;CAU9B,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,EA6B5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,oBAAoB,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,4BAA4B,oBAAoB,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,6BAA6B,iBAAiB,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { App } from "vue";
2
+ import type { IAiAgentConfig } from "./types";
3
+ /**
4
+ * Options for the AI Agent Plugin
5
+ */
6
+ export interface AiAgentPluginOptions {
7
+ /**
8
+ * AI Agent configuration.
9
+ * URL can also be set via APP_AI_AGENT_URL environment variable.
10
+ */
11
+ config?: Partial<IAiAgentConfig>;
12
+ /**
13
+ * Whether to add the AI button to all blade toolbars automatically.
14
+ * Default: true
15
+ */
16
+ addGlobalToolbarButton?: boolean;
17
+ }
18
+ /**
19
+ * Vue plugin for AI Agent integration.
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * import { createApp } from "vue";
24
+ * import { aiAgentPlugin } from "@vc-shell/framework";
25
+ *
26
+ * const app = createApp(App);
27
+ *
28
+ * // Install with options
29
+ * app.use(aiAgentPlugin, {
30
+ * config: {
31
+ * title: "AI Assistant",
32
+ * width: 400,
33
+ * },
34
+ * addGlobalToolbarButton: true,
35
+ * });
36
+ * ```
37
+ */
38
+ export declare const aiAgentPlugin: {
39
+ install(app: App, options?: AiAgentPluginOptions): void;
40
+ };
41
+ export * from "./types";
42
+ export * from "./constants";
43
+ export { useAiAgent, provideAiAgentService, createAiAgentToolbarButton } from "./composables/useAiAgent";
44
+ export type { UseAiAgentReturn, ProvideAiAgentServiceOptions } from "./composables/useAiAgent";
45
+ export { useAiAgentContext, clearPreviewState } from "./composables/useAiAgentContext";
46
+ export { VcAiAgentPanel } from "./components";
47
+ export type { IAiAgentServiceInternal, CreateAiAgentServiceOptions } from "./services/ai-agent-service";
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/plugins/ai-agent/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAM9C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAEjC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,aAAa;iBACX,GAAG,YAAW,oBAAoB;CA6BhD,CAAC;AAGF,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACzG,YAAY,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAE/F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGvF,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,YAAY,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { type ShallowRef } from "vue";
2
+ import { IAiAgentService, IAiAgentConfig, AiAgentContextType, IAiAgentBladeContext, IAiAgentUserContext, IPreviewChangesPayload, ISuggestion } from "../types";
3
+ /**
4
+ * Options for creating the AI agent service
5
+ */
6
+ export interface CreateAiAgentServiceOptions {
7
+ /** Function to get current user information */
8
+ userGetter: () => IAiAgentUserContext | undefined;
9
+ /** Function to get current blade context */
10
+ bladeGetter: () => IAiAgentBladeContext | null;
11
+ /** Function to get user locale */
12
+ localeGetter: () => string;
13
+ /** Function to get access token (handles automatic refresh) */
14
+ tokenGetter?: () => Promise<string | null>;
15
+ /** Function to navigate to blade */
16
+ navigateToBlade?: (bladeName: string, param?: string, options?: Record<string, unknown>) => void;
17
+ /** Function to reload current blade */
18
+ reloadBlade?: () => void;
19
+ /** Initial configuration */
20
+ initialConfig?: Partial<IAiAgentConfig>;
21
+ }
22
+ /**
23
+ * Extended AI Agent Service with internal methods for component use
24
+ */
25
+ export interface IAiAgentServiceInternal extends IAiAgentService {
26
+ /** Reference to the iframe element (set by component) */
27
+ iframeRef: ShallowRef<HTMLIFrameElement | null>;
28
+ /** Set the iframe reference (called by component) */
29
+ _setIframeRef: (iframe: HTMLIFrameElement | null) => void;
30
+ /** Handle incoming postMessage events (called by component) */
31
+ _handleIncomingMessage: (event: MessageEvent) => void;
32
+ /** Start listening for postMessage events */
33
+ _startListening: () => void;
34
+ /** Stop listening for postMessage events */
35
+ _stopListening: () => void;
36
+ /** Update context data for a blade (called by useAiAgentContext) */
37
+ _setContextData: (items: Record<string, unknown>[], type: AiAgentContextType, suggestions?: ISuggestion[], bladeId?: string) => void;
38
+ /** Register preview changes handler */
39
+ _onPreviewChanges: (handler: (payload: IPreviewChangesPayload) => void) => () => void;
40
+ }
41
+ /**
42
+ * Creates an AI agent service for managing the AI panel state and communication.
43
+ */
44
+ export declare function createAiAgentService(options: CreateAiAgentServiceOptions): IAiAgentServiceInternal;
45
+ //# sourceMappingURL=ai-agent-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-agent-service.d.ts","sourceRoot":"","sources":["../../../../../core/plugins/ai-agent/services/ai-agent-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,UAAU,EAAE,MAAM,KAAK,CAAC;AAGxE,OAAO,EACL,eAAe,EACf,cAAc,EAKd,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EAOnB,sBAAsB,EAEtB,WAAW,EACZ,MAAM,UAAU,CAAC;AAKlB;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,+CAA+C;IAC/C,UAAU,EAAE,MAAM,mBAAmB,GAAG,SAAS,CAAC;IAClD,4CAA4C;IAC5C,WAAW,EAAE,MAAM,oBAAoB,GAAG,IAAI,CAAC;IAC/C,kCAAkC;IAClC,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC3C,oCAAoC;IACpC,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACjG,uCAAuC;IACvC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,4BAA4B;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,yDAAyD;IACzD,SAAS,EAAE,UAAU,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAChD,qDAAqD;IACrD,aAAa,EAAE,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1D,+DAA+D;IAC/D,sBAAsB,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACtD,6CAA6C;IAC7C,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,4CAA4C;IAC5C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,oEAAoE;IACpE,eAAe,EAAE,CACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAChC,IAAI,EAAE,kBAAkB,EACxB,WAAW,CAAC,EAAE,WAAW,EAAE,EAC3B,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;IACV,uCAAuC;IACvC,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;CACvF;AAsED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,uBAAuB,CAsclG"}