@vc-shell/framework 1.0.49 → 1.0.50

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 (255) hide show
  1. package/core/types/index.ts +2 -4
  2. package/dist/core/types/index.d.ts +2 -3
  3. package/dist/core/types/index.d.ts.map +1 -1
  4. package/dist/framework.js +56 -56
  5. package/dist/shared/blade-navigation/index.d.ts +1 -1
  6. package/dist/shared/blade-navigation/index.d.ts.map +1 -1
  7. package/dist/style.css +1 -1
  8. package/dist/tsconfig.tsbuildinfo +1 -1
  9. package/dist/ui/components/atoms/vc-badge/vc-badge-model.d.ts +1 -6
  10. package/dist/ui/components/atoms/vc-badge/vc-badge-model.d.ts.map +1 -1
  11. package/dist/ui/components/atoms/vc-button/index.d.ts +1 -1
  12. package/dist/ui/components/atoms/vc-button/index.d.ts.map +1 -1
  13. package/dist/ui/components/atoms/vc-button/vc-button-model.d.ts +5 -19
  14. package/dist/ui/components/atoms/vc-button/vc-button-model.d.ts.map +1 -1
  15. package/dist/ui/components/atoms/vc-card/index.d.ts +5 -0
  16. package/dist/ui/components/atoms/vc-card/index.d.ts.map +1 -0
  17. package/dist/ui/components/atoms/vc-card/vc-card-model.d.ts +16 -0
  18. package/dist/ui/components/atoms/vc-card/vc-card-model.d.ts.map +1 -0
  19. package/dist/ui/components/atoms/vc-checkbox/index.d.ts +5 -0
  20. package/dist/ui/components/atoms/vc-checkbox/index.d.ts.map +1 -0
  21. package/dist/ui/components/atoms/vc-checkbox/vc-checkbox-model.d.ts +14 -0
  22. package/dist/ui/components/atoms/vc-checkbox/vc-checkbox-model.d.ts.map +1 -0
  23. package/dist/ui/components/atoms/vc-col/index.d.ts +5 -0
  24. package/dist/ui/components/atoms/vc-col/index.d.ts.map +1 -0
  25. package/dist/ui/components/atoms/vc-col/vc-col-model.d.ts +8 -0
  26. package/dist/ui/components/atoms/vc-col/vc-col-model.d.ts.map +1 -0
  27. package/dist/ui/components/atoms/vc-container/index.d.ts +5 -0
  28. package/dist/ui/components/atoms/vc-container/index.d.ts.map +1 -0
  29. package/dist/ui/components/atoms/vc-container/vc-container-model.d.ts +11 -0
  30. package/dist/ui/components/atoms/vc-container/vc-container-model.d.ts.map +1 -0
  31. package/dist/ui/components/atoms/vc-hint/index.d.ts +2 -0
  32. package/dist/ui/components/atoms/vc-hint/index.d.ts.map +1 -0
  33. package/dist/ui/components/atoms/vc-icon/index.d.ts +5 -0
  34. package/dist/ui/components/atoms/vc-icon/index.d.ts.map +1 -0
  35. package/dist/ui/components/atoms/vc-icon/vc-icon-model.d.ts +9 -0
  36. package/dist/ui/components/atoms/vc-icon/vc-icon-model.d.ts.map +1 -0
  37. package/dist/ui/components/atoms/vc-image/index.d.ts +5 -0
  38. package/dist/ui/components/atoms/vc-image/index.d.ts.map +1 -0
  39. package/dist/ui/components/atoms/vc-image/vc-image-model.d.ts +15 -0
  40. package/dist/ui/components/atoms/vc-image/vc-image-model.d.ts.map +1 -0
  41. package/dist/ui/components/atoms/vc-info-row/index.d.ts +5 -0
  42. package/dist/ui/components/atoms/vc-info-row/index.d.ts.map +1 -0
  43. package/dist/ui/components/atoms/vc-info-row/vc-info-row-model.d.ts +11 -0
  44. package/dist/ui/components/atoms/vc-info-row/vc-info-row-model.d.ts.map +1 -0
  45. package/dist/ui/components/atoms/vc-label/index.d.ts +5 -0
  46. package/dist/ui/components/atoms/vc-label/index.d.ts.map +1 -0
  47. package/dist/ui/components/atoms/vc-label/vc-label-model.d.ts +10 -0
  48. package/dist/ui/components/atoms/vc-label/vc-label-model.d.ts.map +1 -0
  49. package/dist/ui/components/atoms/vc-link/index.d.ts +5 -0
  50. package/dist/ui/components/atoms/vc-link/index.d.ts.map +1 -0
  51. package/dist/ui/components/atoms/vc-link/vc-link-model.d.ts +10 -0
  52. package/dist/ui/components/atoms/vc-link/vc-link-model.d.ts.map +1 -0
  53. package/dist/ui/components/atoms/vc-loading/index.d.ts +5 -0
  54. package/dist/ui/components/atoms/vc-loading/index.d.ts.map +1 -0
  55. package/dist/ui/components/atoms/vc-loading/vc-loading-model.d.ts +8 -0
  56. package/dist/ui/components/atoms/vc-loading/vc-loading-model.d.ts.map +1 -0
  57. package/dist/ui/components/atoms/vc-progress/index.d.ts +5 -0
  58. package/dist/ui/components/atoms/vc-progress/index.d.ts.map +1 -0
  59. package/dist/ui/components/atoms/vc-progress/vc-progress-model.d.ts +9 -0
  60. package/dist/ui/components/atoms/vc-progress/vc-progress-model.d.ts.map +1 -0
  61. package/dist/ui/components/atoms/vc-row/index.d.ts +2 -0
  62. package/dist/ui/components/atoms/vc-row/index.d.ts.map +1 -0
  63. package/dist/ui/components/atoms/vc-row/vc-row-model.d.ts +5 -0
  64. package/dist/ui/components/atoms/vc-row/vc-row-model.d.ts.map +1 -0
  65. package/dist/ui/components/atoms/vc-status/index.d.ts +5 -0
  66. package/dist/ui/components/atoms/vc-status/index.d.ts.map +1 -0
  67. package/dist/ui/components/atoms/vc-status/vc-status-model.d.ts +10 -0
  68. package/dist/ui/components/atoms/vc-status/vc-status-model.d.ts.map +1 -0
  69. package/dist/ui/components/atoms/vc-status-icon/index.d.ts +5 -0
  70. package/dist/ui/components/atoms/vc-status-icon/index.d.ts.map +1 -0
  71. package/dist/ui/components/atoms/vc-status-icon/vc-status-icon-model.d.ts +8 -0
  72. package/dist/ui/components/atoms/vc-status-icon/vc-status-icon-model.d.ts.map +1 -0
  73. package/dist/ui/components/atoms/vc-switch/index.d.ts +5 -0
  74. package/dist/ui/components/atoms/vc-switch/index.d.ts.map +1 -0
  75. package/dist/ui/components/atoms/vc-switch/vc-switch-model.d.ts +13 -0
  76. package/dist/ui/components/atoms/vc-switch/vc-switch-model.d.ts.map +1 -0
  77. package/dist/ui/components/atoms/vc-widget/index.d.ts +5 -0
  78. package/dist/ui/components/atoms/vc-widget/index.d.ts.map +1 -0
  79. package/dist/ui/components/atoms/vc-widget/vc-widget-model.d.ts +12 -0
  80. package/dist/ui/components/atoms/vc-widget/vc-widget-model.d.ts.map +1 -0
  81. package/dist/ui/components/index.d.ts +34 -34
  82. package/dist/ui/components/index.d.ts.map +1 -1
  83. package/dist/ui/components/molecules/vc-breadcrumbs/index.d.ts +5 -0
  84. package/dist/ui/components/molecules/vc-breadcrumbs/index.d.ts.map +1 -0
  85. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs-model.d.ts +14 -0
  86. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs-model.d.ts.map +1 -0
  87. package/dist/ui/components/molecules/vc-editor/index.d.ts +5 -0
  88. package/dist/ui/components/molecules/vc-editor/index.d.ts.map +1 -0
  89. package/dist/ui/components/molecules/vc-editor/vc-editor-model.d.ts +16 -0
  90. package/dist/ui/components/molecules/vc-editor/vc-editor-model.d.ts.map +1 -0
  91. package/dist/ui/components/molecules/vc-file-upload/index.d.ts +5 -0
  92. package/dist/ui/components/molecules/vc-file-upload/index.d.ts.map +1 -0
  93. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload-model.d.ts +14 -0
  94. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload-model.d.ts.map +1 -0
  95. package/dist/ui/components/molecules/vc-form/index.d.ts +2 -0
  96. package/dist/ui/components/molecules/vc-form/index.d.ts.map +1 -0
  97. package/dist/ui/components/molecules/vc-notification/index.d.ts +5 -0
  98. package/dist/ui/components/molecules/vc-notification/index.d.ts.map +1 -0
  99. package/dist/ui/components/molecules/vc-notification/vc-notification-model.d.ts +10 -0
  100. package/dist/ui/components/molecules/vc-notification/vc-notification-model.d.ts.map +1 -0
  101. package/dist/ui/components/molecules/vc-pagination/index.d.ts +5 -0
  102. package/dist/ui/components/molecules/vc-pagination/index.d.ts.map +1 -0
  103. package/dist/ui/components/molecules/vc-pagination/vc-pagination-model.d.ts +11 -0
  104. package/dist/ui/components/molecules/vc-pagination/vc-pagination-model.d.ts.map +1 -0
  105. package/dist/ui/components/molecules/vc-rating/index.d.ts +5 -0
  106. package/dist/ui/components/molecules/vc-rating/index.d.ts.map +1 -0
  107. package/dist/ui/components/molecules/vc-rating/vc-rating-model.d.ts +13 -0
  108. package/dist/ui/components/molecules/vc-rating/vc-rating-model.d.ts.map +1 -0
  109. package/dist/ui/components/molecules/vc-slider/index.d.ts +5 -0
  110. package/dist/ui/components/molecules/vc-slider/index.d.ts.map +1 -0
  111. package/dist/ui/components/molecules/vc-slider/vc-slider-model.d.ts +14 -0
  112. package/dist/ui/components/molecules/vc-slider/vc-slider-model.d.ts.map +1 -0
  113. package/dist/ui/components/molecules/vc-textarea/index.d.ts +5 -0
  114. package/dist/ui/components/molecules/vc-textarea/index.d.ts.map +1 -0
  115. package/dist/ui/components/molecules/vc-textarea/vc-textarea-model.d.ts +17 -0
  116. package/dist/ui/components/molecules/vc-textarea/vc-textarea-model.d.ts.map +1 -0
  117. package/dist/ui/components/organisms/vc-app/index.d.ts +5 -0
  118. package/dist/ui/components/organisms/vc-app/index.d.ts.map +1 -0
  119. package/dist/ui/components/organisms/vc-app/vc-app-model.d.ts +26 -0
  120. package/dist/ui/components/organisms/vc-app/vc-app-model.d.ts.map +1 -0
  121. package/dist/ui/components/organisms/vc-blade/index.d.ts +5 -0
  122. package/dist/ui/components/organisms/vc-blade/index.d.ts.map +1 -0
  123. package/dist/ui/components/organisms/vc-blade/vc-blade-model.d.ts +17 -0
  124. package/dist/ui/components/organisms/vc-blade/vc-blade-model.d.ts.map +1 -0
  125. package/dist/ui/components/organisms/vc-dynamic-property/index.d.ts +5 -0
  126. package/dist/ui/components/organisms/vc-dynamic-property/index.d.ts.map +1 -0
  127. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property-model.d.ts +14 -0
  128. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property-model.d.ts.map +1 -0
  129. package/dist/ui/components/organisms/vc-gallery/index.d.ts +5 -0
  130. package/dist/ui/components/organisms/vc-gallery/index.d.ts.map +1 -0
  131. package/dist/ui/components/organisms/vc-gallery/vc-gallery-model.d.ts +32 -0
  132. package/dist/ui/components/organisms/vc-gallery/vc-gallery-model.d.ts.map +1 -0
  133. package/dist/ui/components/organisms/vc-login-form/index.d.ts +5 -0
  134. package/dist/ui/components/organisms/vc-login-form/index.d.ts.map +1 -0
  135. package/dist/ui/components/organisms/vc-login-form/vc-login-form-model.d.ts +10 -0
  136. package/dist/ui/components/organisms/vc-login-form/vc-login-form-model.d.ts.map +1 -0
  137. package/dist/ui/components/organisms/vc-popup/index.d.ts +5 -0
  138. package/dist/ui/components/organisms/vc-popup/index.d.ts.map +1 -0
  139. package/dist/ui/components/organisms/vc-popup/vc-popup-model.d.ts +11 -0
  140. package/dist/ui/components/organisms/vc-popup/vc-popup-model.d.ts.map +1 -0
  141. package/dist/ui/components/organisms/vc-table/index.d.ts +5 -0
  142. package/dist/ui/components/organisms/vc-table/index.d.ts.map +1 -0
  143. package/dist/ui/components/organisms/vc-table/vc-table-model.d.ts +66 -0
  144. package/dist/ui/components/organisms/vc-table/vc-table-model.d.ts.map +1 -0
  145. package/dist/ui/types/index.d.ts +68 -0
  146. package/dist/ui/types/index.d.ts.map +1 -1
  147. package/package.json +4 -4
  148. package/shared/assets/components/assets-details/assets-details.vue +1 -1
  149. package/shared/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +1 -1
  150. package/shared/blade-navigation/index.ts +7 -7
  151. package/ui/components/atoms/vc-badge/vc-badge-model.ts +1 -7
  152. package/ui/components/atoms/vc-badge/vc-badge.vue +1 -2
  153. package/ui/components/atoms/vc-button/index.ts +1 -1
  154. package/ui/components/atoms/vc-button/vc-button-model.ts +12 -20
  155. package/ui/components/atoms/vc-button/vc-button.vue +8 -32
  156. package/ui/components/atoms/vc-card/index.ts +7 -0
  157. package/ui/components/atoms/vc-card/vc-card-model.ts +17 -0
  158. package/ui/components/atoms/vc-card/vc-card.vue +6 -31
  159. package/ui/components/atoms/vc-checkbox/index.ts +7 -0
  160. package/ui/components/atoms/vc-checkbox/vc-checkbox-model.ts +15 -0
  161. package/ui/components/atoms/vc-checkbox/vc-checkbox.vue +6 -25
  162. package/ui/components/atoms/vc-col/index.ts +6 -0
  163. package/ui/components/atoms/vc-col/vc-col-model.ts +9 -0
  164. package/ui/components/atoms/vc-col/vc-col.vue +2 -4
  165. package/ui/components/atoms/vc-container/index.ts +7 -0
  166. package/ui/components/atoms/vc-container/vc-container-model.ts +12 -0
  167. package/ui/components/atoms/vc-container/vc-container.vue +11 -18
  168. package/ui/components/atoms/vc-hint/index.ts +2 -0
  169. package/ui/components/atoms/vc-icon/index.ts +7 -0
  170. package/ui/components/atoms/vc-icon/vc-icon-model.ts +10 -0
  171. package/ui/components/atoms/vc-icon/vc-icon.vue +2 -5
  172. package/ui/components/atoms/vc-image/index.ts +7 -0
  173. package/ui/components/atoms/vc-image/vc-image-model.ts +27 -0
  174. package/ui/components/atoms/vc-image/vc-image.vue +11 -37
  175. package/ui/components/atoms/vc-info-row/index.ts +7 -0
  176. package/ui/components/atoms/vc-info-row/vc-info-row-model.ts +12 -0
  177. package/ui/components/atoms/vc-info-row/vc-info-row.vue +6 -20
  178. package/ui/components/atoms/vc-label/index.ts +7 -0
  179. package/ui/components/atoms/vc-label/vc-label-model.ts +11 -0
  180. package/ui/components/atoms/vc-label/vc-label.vue +8 -12
  181. package/ui/components/atoms/vc-link/index.ts +7 -0
  182. package/ui/components/atoms/vc-link/vc-link-model.ts +11 -0
  183. package/ui/components/atoms/vc-link/vc-link.vue +4 -9
  184. package/ui/components/atoms/vc-loading/index.ts +7 -0
  185. package/ui/components/atoms/vc-loading/vc-loading-model.ts +9 -0
  186. package/ui/components/atoms/vc-loading/vc-loading.vue +4 -5
  187. package/ui/components/atoms/vc-progress/index.ts +7 -0
  188. package/ui/components/atoms/vc-progress/vc-progress-model.ts +10 -0
  189. package/ui/components/atoms/vc-progress/vc-progress.vue +5 -11
  190. package/ui/components/atoms/vc-row/index.ts +2 -0
  191. package/ui/components/atoms/vc-row/vc-row-model.ts +5 -0
  192. package/ui/components/atoms/vc-status/index.ts +7 -0
  193. package/ui/components/atoms/vc-status/vc-status-model.ts +17 -0
  194. package/ui/components/atoms/vc-status/vc-status.vue +5 -15
  195. package/ui/components/atoms/vc-status-icon/index.ts +7 -0
  196. package/ui/components/atoms/vc-status-icon/vc-status-icon-model.ts +9 -0
  197. package/ui/components/atoms/vc-status-icon/vc-status-icon.vue +11 -7
  198. package/ui/components/atoms/vc-switch/index.ts +7 -0
  199. package/ui/components/atoms/vc-switch/vc-switch-model.ts +14 -0
  200. package/ui/components/atoms/vc-switch/vc-switch.vue +6 -24
  201. package/ui/components/atoms/vc-widget/index.ts +7 -0
  202. package/ui/components/atoms/vc-widget/vc-widget-model.ts +13 -0
  203. package/ui/components/atoms/vc-widget/vc-widget.vue +3 -19
  204. package/ui/components/index.ts +34 -34
  205. package/ui/components/molecules/vc-breadcrumbs/index.ts +7 -0
  206. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs-model.ts +15 -0
  207. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +2 -11
  208. package/ui/components/molecules/vc-editor/index.ts +7 -0
  209. package/ui/components/molecules/vc-editor/vc-editor-model.ts +17 -0
  210. package/ui/components/molecules/vc-editor/vc-editor.vue +15 -52
  211. package/ui/components/molecules/vc-file-upload/index.ts +7 -0
  212. package/ui/components/molecules/vc-file-upload/vc-file-upload-model.ts +15 -0
  213. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +12 -33
  214. package/ui/components/molecules/vc-form/index.ts +2 -0
  215. package/ui/components/molecules/vc-notification/index.ts +7 -0
  216. package/ui/components/molecules/vc-notification/vc-notification-model.ts +11 -0
  217. package/ui/components/molecules/vc-notification/vc-notification.vue +3 -10
  218. package/ui/components/molecules/vc-pagination/index.ts +7 -0
  219. package/ui/components/molecules/vc-pagination/vc-pagination-model.ts +12 -0
  220. package/ui/components/molecules/vc-pagination/vc-pagination.vue +6 -16
  221. package/ui/components/molecules/vc-rating/index.ts +7 -0
  222. package/ui/components/molecules/vc-rating/vc-rating-model.ts +14 -0
  223. package/ui/components/molecules/vc-rating/vc-rating.vue +2 -10
  224. package/ui/components/molecules/vc-slider/index.ts +7 -0
  225. package/ui/components/molecules/vc-slider/vc-slider-model.ts +15 -0
  226. package/ui/components/molecules/vc-slider/vc-slider.vue +7 -25
  227. package/ui/components/molecules/vc-textarea/index.ts +7 -0
  228. package/ui/components/molecules/vc-textarea/vc-textarea-model.ts +18 -0
  229. package/ui/components/molecules/vc-textarea/vc-textarea.vue +9 -47
  230. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +2 -1
  231. package/ui/components/organisms/vc-app/index.ts +6 -0
  232. package/ui/components/organisms/vc-app/vc-app-model.ts +27 -0
  233. package/ui/components/organisms/vc-app/vc-app.vue +6 -31
  234. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +17 -32
  235. package/ui/components/organisms/vc-blade/index.ts +7 -0
  236. package/ui/components/organisms/vc-blade/vc-blade-model.ts +18 -0
  237. package/ui/components/organisms/vc-blade/vc-blade.vue +9 -34
  238. package/ui/components/organisms/vc-dynamic-property/index.ts +7 -0
  239. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property-model.ts +25 -0
  240. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +66 -94
  241. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +31 -21
  242. package/ui/components/organisms/vc-gallery/index.ts +7 -0
  243. package/ui/components/organisms/vc-gallery/vc-gallery-model.ts +33 -0
  244. package/ui/components/organisms/vc-gallery/vc-gallery.vue +22 -81
  245. package/ui/components/organisms/vc-login-form/index.ts +7 -0
  246. package/ui/components/organisms/vc-login-form/vc-login-form-model.ts +11 -0
  247. package/ui/components/organisms/vc-login-form/vc-login-form.vue +3 -14
  248. package/ui/components/organisms/vc-popup/index.ts +7 -0
  249. package/ui/components/organisms/vc-popup/vc-popup-model.ts +12 -0
  250. package/ui/components/organisms/vc-popup/vc-popup.vue +4 -15
  251. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +2 -2
  252. package/ui/components/organisms/vc-table/index.ts +7 -0
  253. package/ui/components/organisms/vc-table/vc-table-model.ts +56 -0
  254. package/ui/components/organisms/vc-table/vc-table.vue +9 -41
  255. package/ui/types/index.ts +188 -1
@@ -54,9 +54,10 @@
54
54
 
55
55
  <script lang="ts" setup>
56
56
  import { onMounted, ref, computed } from "vue";
57
- import {ExtendedComponent, IBladeToolbar, IMenuItems} from "@/core/types";
57
+ import {IBladeToolbar, IMenuItems} from "@/core/types";
58
58
  import VcAppMenuLink from "./_internal/vc-app-menu-link.vue";
59
59
  import { NavigationFailure, useRoute } from "vue-router";
60
+ import {ExtendedComponent} from "@/shared";
60
61
 
61
62
  export interface Props {
62
63
  sticky?: boolean;
@@ -0,0 +1,6 @@
1
+ import { ComponentPublicInstance } from "vue";
2
+ import { VcAppProps } from "./vc-app-model";
3
+ import { ComponentConstructor } from "@/ui/types/ts-helpers";
4
+ import App from "./vc-app.vue";
5
+ export const VcApp: ComponentConstructor<ComponentPublicInstance<VcAppProps>> =
6
+ App;
@@ -0,0 +1,27 @@
1
+ import { ExtendedComponent, IBladeElement, IOpenBlade } from "@/shared";
2
+ import { IBladeToolbar, IMenuItems } from "@/core/types";
3
+ import { VNode } from "vue";
4
+
5
+ export interface VcAppProps {
6
+ pages?: ExtendedComponent[] | undefined;
7
+ menuItems?: IMenuItems[] | undefined;
8
+ mobileMenuItems?: IMenuItems[] | undefined;
9
+ toolbarItems?: IBladeToolbar[] | undefined;
10
+ isReady?: boolean | undefined;
11
+ isAuthorized?: boolean | undefined;
12
+ logo?: string | undefined;
13
+ version?: string | undefined;
14
+ theme?: "light" | "dark" | undefined;
15
+ bladesRefs?: IBladeElement[] | undefined;
16
+ title?: string | undefined;
17
+ onOpen?: (args: IOpenBlade) => void;
18
+ onClose?: (index: number) => void;
19
+ "onBacklink:click"?: (index: number) => void;
20
+ }
21
+
22
+ export interface VcAppSlots {
23
+ appSwitcher: () => VNode[];
24
+ bladeNavigation: () => VNode[];
25
+ notifications: () => VNode[];
26
+ passwordChange: () => VNode[];
27
+ }
@@ -73,35 +73,10 @@ export default defineComponent({
73
73
  import { useRouter } from "vue-router";
74
74
  import VcAppBar from "./_internal/vc-app-bar/vc-app-bar.vue";
75
75
  import VcAppMenu from "./_internal/vc-app-menu/vc-app-menu.vue";
76
- import { IBladeToolbar, IMenuItems } from "@/core/types";
77
- import {
78
- IBladeElement,
79
- ExtendedComponent,
80
- IMenuClickEvent,
81
- IOpenBlade,
82
- } from "@/shared";
83
-
84
- export interface Props {
85
- pages: ExtendedComponent[];
86
- menuItems: IMenuItems[];
87
- mobileMenuItems: IMenuItems[];
88
- toolbarItems: IBladeToolbar[];
89
- isReady: boolean;
90
- isAuthorized: boolean;
91
- logo: string;
92
- version: string;
93
- theme?: "light" | "dark";
94
- bladesRefs: IBladeElement[];
95
- title?: string;
96
- }
97
-
98
- export interface Emits {
99
- (event: "onOpen", args: IOpenBlade): void;
100
- (event: "onClose", index: number): void;
101
- (event: "backlink:click", index: number): void;
102
- }
76
+ import { IMenuClickEvent } from "@/shared";
77
+ import { VcAppProps } from "@/ui/components/organisms/vc-app/vc-app-model";
103
78
 
104
- withDefaults(defineProps<Props>(), {
79
+ withDefaults(defineProps<VcAppProps>(), {
105
80
  pages: () => [],
106
81
  menuItems: () => [],
107
82
  mobileMenuItems: () => [],
@@ -114,7 +89,7 @@ withDefaults(defineProps<Props>(), {
114
89
  bladesRefs: () => [],
115
90
  });
116
91
 
117
- const emit = defineEmits<Emits>();
92
+ const emit = defineEmits(["open", "close", "backlink:click"]);
118
93
 
119
94
  console.debug("vc-app: Init vc-app");
120
95
 
@@ -127,7 +102,7 @@ const onMenuItemClick = function ({ item, navigationCb }: IMenuClickEvent) {
127
102
  if (item.clickHandler && typeof item.clickHandler === "function") {
128
103
  item.clickHandler(instance?.exposed);
129
104
  } else {
130
- emit("onOpen", { parentBlade: item.component, id: 0, navigationCb });
105
+ emit("open", { parentBlade: item.component, id: 0, navigationCb });
131
106
  }
132
107
  };
133
108
 
@@ -143,7 +118,7 @@ const openDashboard = async () => {
143
118
  console.debug(`openDashboard() called.`);
144
119
 
145
120
  // Close all opened pages with onBeforeClose callback
146
- await emit("onClose", 0);
121
+ await emit("close", 0);
147
122
 
148
123
  router.push("/");
149
124
  };
@@ -2,7 +2,10 @@
2
2
  <div
3
3
  class="tw-shrink-0 tw-h-[var(--blade-header-height)] tw-bg-[color:var(--blade-header-background-color)] tw-flex tw-items-center tw-py-0 tw-px-4 tw-border-solid tw-border-b tw-border-b-[color:#eaedf3]"
4
4
  >
5
- <div v-if="icon" class="tw-text-[color:var(--blade-header-icon-color)] tw-mr-3">
5
+ <div
6
+ v-if="icon"
7
+ class="tw-text-[color:var(--blade-header-icon-color)] tw-mr-3"
8
+ >
6
9
  <VcIcon :icon="icon" size="xxl"></VcIcon>
7
10
  </div>
8
11
 
@@ -28,7 +31,7 @@
28
31
  <slot name="actions"></slot>
29
32
  </div>
30
33
 
31
- <div v-if="!$isMobile.value" class= "tw-flex tw-items-center">
34
+ <div v-if="!$isMobile.value" class="tw-flex tw-items-center">
32
35
  <template v-if="expandable">
33
36
  <div
34
37
  v-if="expanded"
@@ -55,36 +58,18 @@
55
58
  <script lang="ts" setup>
56
59
  import { VcIcon } from "@/ui/components";
57
60
 
58
- const props = defineProps({
59
- expandable: {
60
- type: Boolean,
61
- default: false,
62
- },
63
-
64
- expanded: {
65
- type: Boolean,
66
- default: false,
67
- },
68
-
69
- closable: {
70
- type: Boolean,
71
- default: false,
72
- },
73
-
74
- title: {
75
- type: String,
76
- default: undefined,
77
- },
78
-
79
- subtitle: {
80
- type: String,
81
- default: undefined,
82
- },
83
-
84
- icon: {
85
- type: String,
86
- default: undefined,
87
- },
61
+ export interface Props {
62
+ expandable?: boolean | undefined;
63
+ expanded?: boolean | undefined;
64
+ closable?: boolean | undefined;
65
+ title?: string | undefined;
66
+ subtitle?: string | undefined;
67
+ icon?: string | undefined;
68
+ }
69
+ const props = withDefaults(defineProps<Props>(), {
70
+ expandable: false,
71
+ expanded: false,
72
+ closable: false,
88
73
  });
89
74
 
90
75
  const emit = defineEmits(["close", "expand", "collapse"]);
@@ -0,0 +1,7 @@
1
+ import { ComponentPublicInstance } from "vue";
2
+ import { VcBladeProps } from "./vc-blade-model";
3
+ import { ComponentConstructor } from "@/ui/types/ts-helpers";
4
+ import Blade from "./vc-blade.vue";
5
+ export const VcBlade: ComponentConstructor<
6
+ ComponentPublicInstance<VcBladeProps>
7
+ > = Blade;
@@ -0,0 +1,18 @@
1
+ import { IBladeToolbar } from "@/core/types";
2
+ import { VNode } from "vue";
3
+
4
+ export interface VcBladeProps {
5
+ icon?: string | undefined;
6
+ title?: string | undefined;
7
+ subtitle?: string | undefined;
8
+ width?: number | string | undefined;
9
+ expanded?: boolean | undefined;
10
+ closable?: boolean | undefined;
11
+ toolbarItems?: IBladeToolbar[] | undefined;
12
+ onClose?: () => void;
13
+ }
14
+
15
+ export interface VcBladeSlots {
16
+ actions: () => VNode[];
17
+ default: () => VNode[];
18
+ }
@@ -31,7 +31,7 @@
31
31
  </template>
32
32
 
33
33
  <script lang="ts">
34
- import { defineComponent, PropType } from "vue";
34
+ import { defineComponent } from "vue";
35
35
 
36
36
  export default defineComponent({
37
37
  inheritAttrs: false,
@@ -41,41 +41,16 @@ export default defineComponent({
41
41
  <script lang="ts" setup>
42
42
  import VcBladeHeader from "./_internal/vc-blade-header/vc-blade-header.vue";
43
43
  import VcBladeToolbar from "./_internal/vc-blade-toolbar/vc-blade-toolbar.vue";
44
- import { IBladeToolbar } from "@/core/types";
44
+ import { VcBladeProps } from "@/ui/components/organisms/vc-blade/vc-blade-model";
45
45
 
46
- defineProps({
47
- icon: {
48
- type: String,
49
- },
50
-
51
- title: {
52
- type: String,
53
- },
54
-
55
- subtitle: {
56
- type: String,
57
- },
58
-
59
- width: {
60
- type: [Number, String],
61
- default: "30%",
62
- },
63
-
64
- expanded: {
65
- type: Boolean,
66
- default: false,
67
- },
68
-
69
- closable: {
70
- type: Boolean,
71
- default: true,
72
- },
73
-
74
- toolbarItems: {
75
- type: Array as PropType<IBladeToolbar[]>,
76
- default: () => [],
77
- },
46
+ withDefaults(defineProps<VcBladeProps>(), {
47
+ width: "30%",
48
+ expanded: false,
49
+ closable: true,
50
+ toolbarItems: () => [],
78
51
  });
52
+
53
+ defineEmits(["close"]);
79
54
  </script>
80
55
 
81
56
  <style lang="scss">
@@ -0,0 +1,7 @@
1
+ import { ComponentPublicInstance } from "vue";
2
+ import { VcDynamicPropertyProps } from "./vc-dynamic-property-model";
3
+ import { ComponentConstructor } from "@/ui/types/ts-helpers";
4
+ import DynamicProperty from "./vc-dynamic-property.vue";
5
+ export const VcDynamicProperty: ComponentConstructor<
6
+ ComponentPublicInstance<VcDynamicPropertyProps>
7
+ > = DynamicProperty;
@@ -0,0 +1,25 @@
1
+ import { VNode } from "vue";
2
+
3
+ export interface VcDynamicPropertyProps {
4
+ property?: Record<string, any> | undefined;
5
+ dictionaries?: Record<string, any> | undefined;
6
+ getter?: (
7
+ property: Record<string, any>,
8
+ isDictionary?: boolean
9
+ ) => Record<string, any> | string | number | boolean | Date | undefined;
10
+ optionsGetter?: (
11
+ property: Record<string, any>,
12
+ keyword?: string
13
+ ) => Promise<any[] | undefined>;
14
+ setter?: (
15
+ property: Record<string, any>,
16
+ value: Record<string, any> | string | number | boolean,
17
+ dictionary?: any[]
18
+ ) => void | undefined;
19
+ culture?: string | undefined;
20
+ disabled?: boolean | undefined;
21
+ }
22
+
23
+ export interface VcDynamicPropertySlots {
24
+ default: () => VNode[];
25
+ }