@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
@@ -27,21 +27,10 @@
27
27
  </template>
28
28
 
29
29
  <script lang="ts" setup>
30
- defineProps({
31
- logo: {
32
- type: String,
33
- default: undefined,
34
- },
30
+ import { VcLoginFormProps } from "@/ui/components/organisms/vc-login-form/vc-login-form-model";
35
31
 
36
- background: {
37
- type: String,
38
- default: undefined,
39
- },
40
-
41
- title: {
42
- type: String,
43
- default: "Login",
44
- },
32
+ withDefaults(defineProps<VcLoginFormProps>(), {
33
+ title: "Login",
45
34
  });
46
35
 
47
36
  console.debug("Init vc-login-form");
@@ -0,0 +1,7 @@
1
+ import { ComponentPublicInstance } from "vue";
2
+ import { VcPopupProps } from "./vc-popup-model";
3
+ import { ComponentConstructor } from "@/ui/types/ts-helpers";
4
+ import Popup from "./vc-popup.vue";
5
+ export const VcPopup: ComponentConstructor<
6
+ ComponentPublicInstance<VcPopupProps>
7
+ > = Popup;
@@ -0,0 +1,12 @@
1
+ import { VNode } from "vue";
2
+
3
+ export interface VcPopupProps {
4
+ title?: string | undefined;
5
+ closable?: boolean | undefined;
6
+ variant?: "small" | "medium" | "fullscreen" | undefined;
7
+ onClose?: () => void;
8
+ }
9
+
10
+ export interface VcPopupSlots {
11
+ default: () => VNode[];
12
+ }
@@ -23,22 +23,11 @@
23
23
  </template>
24
24
 
25
25
  <script lang="ts" setup>
26
- defineProps({
27
- title: {
28
- type: String,
29
- default: undefined,
30
- },
26
+ import { VcPopupProps } from "@/ui/components/organisms/vc-popup/vc-popup-model";
31
27
 
32
- closable: {
33
- type: Boolean,
34
- default: true,
35
- },
36
-
37
- variant: {
38
- type: String,
39
- default: "fullscreen",
40
- enum: ["small", "medium", "fullscreen"],
41
- },
28
+ withDefaults(defineProps<VcPopupProps>(), {
29
+ closable: true,
30
+ variant: "fullscreen",
42
31
  });
43
32
 
44
33
  defineEmits(["close"]);
@@ -125,9 +125,9 @@ import { VcIcon } from "@/ui/components";
125
125
 
126
126
  export interface Props {
127
127
  item: {
128
- id: string;
128
+ id?: string;
129
129
  };
130
- actionBuilder?: (item: { id: string }) => IActionBuilderResult[];
130
+ actionBuilder?: (item: { id?: string }) => IActionBuilderResult[];
131
131
  swipingItem?: string;
132
132
  }
133
133
 
@@ -0,0 +1,7 @@
1
+ import { ComponentPublicInstance } from "vue";
2
+ import { VcTableProps } from "./vc-table-model";
3
+ import { ComponentConstructor } from "@/ui/types/ts-helpers";
4
+ import Table from "./vc-table.vue";
5
+ export const VcTable: ComponentConstructor<
6
+ ComponentPublicInstance<VcTableProps>
7
+ > = Table;
@@ -0,0 +1,56 @@
1
+ import { IActionBuilderResult, ITableColumns } from "@/core/types";
2
+ import { VNode } from "vue";
3
+
4
+ export interface StatusImage {
5
+ image?: string;
6
+ text: string;
7
+ action?: string;
8
+ clickHandler?: () => void;
9
+ }
10
+
11
+ export interface VcTableProps {
12
+ columns?: ITableColumns[];
13
+ items?: { id?: string }[];
14
+ itemActionBuilder?: (item: {
15
+ id?: string;
16
+ }) => IActionBuilderResult[] | undefined;
17
+ sort?: string | undefined;
18
+ multiselect?: boolean | undefined;
19
+ expanded?: boolean | undefined;
20
+ totalLabel?: string | undefined;
21
+ totalCount?: number | undefined;
22
+ pages?: number | undefined;
23
+ currentPage?: number | undefined;
24
+ searchPlaceholder?: string | undefined;
25
+ searchValue?: string | undefined;
26
+ loading?: boolean | undefined;
27
+ empty?: StatusImage | undefined;
28
+ notfound?: StatusImage | undefined;
29
+ header?: boolean | undefined;
30
+ footer?: boolean | undefined;
31
+ activeFilterCount?: number | undefined;
32
+ selectedItemId?: string | undefined;
33
+ scrolling?: boolean | undefined;
34
+ onPaginationClick?: (page: number) => void;
35
+ onSelectionChanged?: (values: Record<string, boolean>) => void;
36
+ "onSearch:change"?: (value: string) => void;
37
+ onHeaderClick?: (value: Record<string, unknown>) => void;
38
+ onItemClick?: (item: { id: string }) => void;
39
+ "onScroll:ptr"?: () => void;
40
+ }
41
+
42
+ export interface VcTableSlots {
43
+ header: () => VNode[];
44
+ filters: (args: { closePanel: () => void }) => VNode[];
45
+ "mobile-item": (args: {
46
+ item: { [x: string]: unknown; id: string };
47
+ }) => VNode[];
48
+ [key: `header_${string}`]: () => VNode[];
49
+ [key: `item_${string}`]: (args: {
50
+ item?: { [x: string]: unknown; id: string };
51
+ cell?: ITableColumns;
52
+ }) => VNode[];
53
+ notfound: () => VNode[];
54
+ empty: () => VNode[];
55
+ footer: () => VNode[];
56
+ }
@@ -150,9 +150,8 @@
150
150
  <tr
151
151
  v-for="(item, i) in items"
152
152
  :key="item.id"
153
- class="vc-table__body-row tw-h-[60px] tw-bg-white hover:tw-bg-[#dfeef9]"
153
+ class="vc-table__body-row tw-h-[60px] tw-bg-white hover:tw-bg-[#dfeef9] tw-cursor-pointer"
154
154
  :class="{
155
- 'tw-cursor-pointer hover:tw-bg-[#dfeef9]': onItemClick,
156
155
  'tw-bg-[#f8f8f8]': i % 2 === 1,
157
156
  '!tw-bg-[#dfeef9] hover:tw-bg-[#dfeef9]':
158
157
  item && item.id ? selectedItemId === item.id : false,
@@ -298,7 +297,7 @@
298
297
  </template>
299
298
 
300
299
  <script lang="ts" setup>
301
- import { computed, nextTick, PropType, ref, watch, onBeforeUpdate } from "vue";
300
+ import { computed, nextTick, ref, watch, onBeforeUpdate } from "vue";
302
301
  import {
303
302
  VcIcon,
304
303
  VcLoading,
@@ -312,40 +311,10 @@ import VcTableFilter from "./_internal/vc-table-filter/vc-table-filter.vue";
312
311
  import VcTableMobileItem from "./_internal/vc-table-mobile-item/vc-table-mobile-item.vue";
313
312
  import VcTableCell from "./_internal/vc-table-cell/vc-table-cell.vue";
314
313
  import { createPopper, Instance } from "@popperjs/core";
315
- import { IActionBuilderResult, ITableColumns } from "@/core/types";
316
-
317
- export interface Props {
318
- columns: ITableColumns[];
319
- items: { id: string }[];
320
- itemActionBuilder?: (item: { id: string }) => IActionBuilderResult[];
321
- sort?: string;
322
- multiselect?: boolean;
323
- expanded?: boolean;
324
- totalLabel?: string;
325
- totalCount?: number;
326
- pages?: number;
327
- currentPage?: number;
328
- searchPlaceholder?: string;
329
- searchValue?: string;
330
- loading?: boolean;
331
- empty?: StatusImage;
332
- notfound?: StatusImage;
333
- header?: boolean;
334
- footer?: boolean;
335
- activeFilterCount?: number;
336
- selectedItemId?: string;
337
- scrolling?: boolean;
338
- onItemClick?: () => void;
339
- }
340
-
341
- export interface StatusImage {
342
- image?: string;
343
- text: string;
344
- action?: boolean;
345
- clickHandler?: () => void;
346
- }
314
+ import { IActionBuilderResult } from "@/core/types";
315
+ import { VcTableProps } from "@/ui/components/organisms/vc-table/vc-table-model";
347
316
 
348
- const props = withDefaults(defineProps<Props>(), {
317
+ const props = withDefaults(defineProps<VcTableProps>(), {
349
318
  columns: () => [],
350
319
  items: () => [],
351
320
  itemActionBuilder: undefined,
@@ -370,7 +339,6 @@ const props = withDefaults(defineProps<Props>(), {
370
339
  activeFilterCount: 0,
371
340
  selectedItemId: undefined,
372
341
  scrolling: false,
373
- onItemClick: undefined,
374
342
  });
375
343
 
376
344
  interface ITableItemRef {
@@ -382,9 +350,9 @@ const emit = defineEmits([
382
350
  "paginationClick",
383
351
  "selectionChanged",
384
352
  "search:change",
385
- "filter:apply",
386
- "filter:reset",
387
353
  "headerClick",
354
+ "itemlick",
355
+ "scroll:ptr",
388
356
  ]);
389
357
 
390
358
  const checkboxes = ref<Record<string, boolean>>({});
@@ -464,7 +432,7 @@ function processCheckbox(id: string, state: boolean) {
464
432
  emit("selectionChanged", checkboxes.value);
465
433
  }
466
434
 
467
- function showActions(item: { id: string }, index: string) {
435
+ function showActions(item: { id?: string }, index: string) {
468
436
  selectedRow.value = item.id;
469
437
 
470
438
  const toggleRef = actionToggleRefs.value.find((item) => item.id === index);
@@ -492,7 +460,7 @@ function showActions(item: { id: string }, index: string) {
492
460
  }
493
461
  }
494
462
 
495
- async function calculateActions(item: { id: string }) {
463
+ async function calculateActions(item: { id?: string }) {
496
464
  if (typeof props.itemActionBuilder === "function") {
497
465
  itemActions.value = await props.itemActionBuilder(item);
498
466
  }
package/ui/types/index.ts CHANGED
@@ -11,16 +11,203 @@ import {
11
11
  VcInputCurrencyProps,
12
12
  VcInputCurrencySlots,
13
13
  } from "../components/molecules/vc-input-currency/vc-input-currency-model";
14
+ import {
15
+ VcBadgeProps,
16
+ VcBadgeSlots,
17
+ } from "../components/atoms/vc-badge/vc-badge-model";
18
+ import {
19
+ VcButtonProps,
20
+ VcButtonSlots,
21
+ } from "../components/atoms/vc-button/vc-button-model";
22
+ import {
23
+ VcCardProps,
24
+ VcCardSlots,
25
+ } from "../components/atoms/vc-card/vc-card-model";
26
+ import {
27
+ VcCheckboxProps,
28
+ VcCheckboxSlots,
29
+ } from "../components/atoms/vc-checkbox/vc-checkbox-model";
30
+ import {
31
+ VcColProps,
32
+ VcColSlots,
33
+ } from "../components/atoms/vc-col/vc-col-model";
34
+ import {
35
+ VcContainerProps,
36
+ VcContainerSlots,
37
+ } from "../components/atoms/vc-container/vc-container-model";
38
+ import {
39
+ VcIconProps,
40
+ VcIconSlots,
41
+ } from "../components/atoms/vc-icon/vc-icon-model";
42
+ import {
43
+ VcImageProps,
44
+ VcImageSlots,
45
+ } from "../components/atoms/vc-image/vc-image-model";
46
+ import {
47
+ VcInfoRowProps,
48
+ VcInfoRowSlots,
49
+ } from "../components/atoms/vc-info-row/vc-info-row-model";
50
+ import {
51
+ VcLabelProps,
52
+ VcLabelSlots,
53
+ } from "../components/atoms/vc-label/vc-label-model";
54
+ import {
55
+ VcLinkProps,
56
+ VcLinkSlots,
57
+ } from "../components/atoms/vc-link/vc-link-model";
58
+ import {
59
+ VcLoadingProps,
60
+ VcLoadingSlots,
61
+ } from "../components/atoms/vc-loading/vc-loading-model";
62
+ import {
63
+ VcProgressProps,
64
+ VcProgressSlots,
65
+ } from "../components/atoms/vc-progress/vc-progress-model";
66
+ import { VcRowSlots } from "../components/atoms/vc-row/vc-row-model";
67
+ import {
68
+ VcStatusProps,
69
+ VcStatusSlots,
70
+ } from "../components/atoms/vc-status/vc-status-model";
71
+ import {
72
+ VcStatusIconProps,
73
+ VcStatusIconSlots,
74
+ } from "../components/atoms/vc-status-icon/vc-status-icon-model";
75
+ import {
76
+ VcSwitchProps,
77
+ VcSwitchSlots,
78
+ } from "../components/atoms/vc-switch/vc-switch-model";
79
+ import {
80
+ VcWidgetProps,
81
+ VcWidgetSlots,
82
+ } from "../components/atoms/vc-widget/vc-widget-model";
83
+ import {
84
+ VcBreadcrumbsProps,
85
+ VcBreadcrumbsSlots,
86
+ } from "../components/molecules/vc-breadcrumbs/vc-breadcrumbs-model";
87
+ import {
88
+ VcEditorProps,
89
+ VcEditorSlots,
90
+ } from "../components/molecules/vc-editor/vc-editor-model";
91
+ import {
92
+ VcFileUploadProps,
93
+ VcFileUploadSlots,
94
+ } from "../components/molecules/vc-file-upload/vc-file-upload-model";
95
+ import {
96
+ VcNotificationProps,
97
+ VcNotificationSlots,
98
+ } from "../components/molecules/vc-notification/vc-notification-model";
99
+ import {
100
+ VcPaginationProps,
101
+ VcPaginationSlots,
102
+ } from "../components/molecules/vc-pagination/vc-pagination-model";
103
+ import {
104
+ VcRatingProps,
105
+ VcRatingSlots,
106
+ } from "../components/molecules/vc-rating/vc-rating-model";
107
+ import {
108
+ VcSliderProps,
109
+ VcSliderSlots,
110
+ } from "../components/molecules/vc-slider/vc-slider-model";
111
+ import {
112
+ VcTextareaProps,
113
+ VcTextareaSlots,
114
+ } from "../components/molecules/vc-textarea/vc-textarea-model";
115
+ import {
116
+ VcAppProps,
117
+ VcAppSlots,
118
+ } from "../components/organisms/vc-app/vc-app-model";
119
+ import {
120
+ VcBladeProps,
121
+ VcBladeSlots,
122
+ } from "../components/organisms/vc-blade/vc-blade-model";
123
+ import {
124
+ VcDynamicPropertyProps,
125
+ VcDynamicPropertySlots,
126
+ } from "../components/organisms/vc-dynamic-property/vc-dynamic-property-model";
127
+ import {
128
+ VcGalleryProps,
129
+ VcGallerySlots,
130
+ } from "../components/organisms/vc-gallery/vc-gallery-model";
131
+ import {
132
+ VcLoginFormProps,
133
+ VcLoginFormSlots,
134
+ } from "../components/organisms/vc-login-form/vc-login-form-model";
135
+ import {
136
+ VcPopupProps,
137
+ VcPopupSlots,
138
+ } from "../components/organisms/vc-popup/vc-popup-model";
139
+ import {
140
+ VcTableProps,
141
+ VcTableSlots,
142
+ } from "../components/organisms/vc-table/vc-table-model";
14
143
 
15
144
  declare module "@vue/runtime-core" {
16
145
  interface GlobalComponents {
146
+ // atoms
147
+ VcBadge: GlobalComponentConstructor<VcBadgeProps, VcBadgeSlots>;
148
+ VcButton: GlobalComponentConstructor<VcButtonProps, VcButtonSlots>;
149
+ VcCard: GlobalComponentConstructor<VcCardProps, VcCardSlots>;
150
+ VcCheckbox: GlobalComponentConstructor<VcCheckboxProps, VcCheckboxSlots>;
151
+ VcCol: GlobalComponentConstructor<VcColProps, VcColSlots>;
152
+ VcContainer: GlobalComponentConstructor<VcContainerProps, VcContainerSlots>;
153
+ VcHint: GlobalComponentConstructor;
154
+ VcIcon: GlobalComponentConstructor<VcIconProps, VcIconSlots>;
155
+ VcImage: GlobalComponentConstructor<VcImageProps, VcImageSlots>;
156
+ VcInfoRow: GlobalComponentConstructor<VcInfoRowProps, VcInfoRowSlots>;
157
+ VcLabel: GlobalComponentConstructor<VcLabelProps, VcLabelSlots>;
158
+ VcLink: GlobalComponentConstructor<VcLinkProps, VcLinkSlots>;
159
+ VcLoading: GlobalComponentConstructor<VcLoadingProps, VcLoadingSlots>;
160
+ VcProgress: GlobalComponentConstructor<VcProgressProps, VcProgressSlots>;
161
+ VcRow: GlobalComponentConstructor<any, VcRowSlots>;
162
+ VcStatus: GlobalComponentConstructor<VcStatusProps, VcStatusSlots>;
163
+ VcStatusIcon: GlobalComponentConstructor<
164
+ VcStatusIconProps,
165
+ VcStatusIconSlots
166
+ >;
167
+ VcSwitch: GlobalComponentConstructor<VcSwitchProps, VcSwitchSlots>;
168
+ VcWidget: GlobalComponentConstructor<VcWidgetProps, VcWidgetSlots>;
169
+
170
+ // molecules
171
+ VcBreadcrumbs: GlobalComponentConstructor<
172
+ VcBreadcrumbsProps,
173
+ VcBreadcrumbsSlots
174
+ >;
175
+ VcEditor: GlobalComponentConstructor<VcEditorProps, VcEditorSlots>;
176
+ VcFileUpload: GlobalComponentConstructor<
177
+ VcFileUploadProps,
178
+ VcFileUploadSlots
179
+ >;
180
+ VcForm: GlobalComponentConstructor;
17
181
  VcInput: GlobalComponentConstructor<VcInputProps, VcInputSlots>;
18
182
  VcInputCurrency: GlobalComponentConstructor<
19
183
  VcInputCurrencyProps,
20
184
  VcInputCurrencySlots
21
185
  >;
186
+ VcNotification: GlobalComponentConstructor<
187
+ VcNotificationProps,
188
+ VcNotificationSlots
189
+ >;
190
+ VcPagination: GlobalComponentConstructor<
191
+ VcPaginationProps,
192
+ VcPaginationSlots
193
+ >;
194
+ VcRating: GlobalComponentConstructor<VcRatingProps, VcRatingSlots>;
22
195
  VcSelect: GlobalComponentConstructor<VcSelectProps, VcSelectSlots>;
196
+ VcSlider: GlobalComponentConstructor<VcSliderProps, VcSliderSlots>;
197
+ VcTextarea: GlobalComponentConstructor<VcTextareaProps, VcTextareaSlots>;
198
+
199
+ // organisms
200
+ VcApp: GlobalComponentConstructor<VcAppProps, VcAppSlots>;
201
+ VcBlade: GlobalComponentConstructor<VcBladeProps, VcBladeSlots>;
202
+ VcDynamicProperty: GlobalComponentConstructor<
203
+ VcDynamicPropertyProps,
204
+ VcDynamicPropertySlots
205
+ >;
206
+ VcGallery: GlobalComponentConstructor<VcGalleryProps, VcGallerySlots>;
207
+ VcLoginForm: GlobalComponentConstructor<VcLoginFormProps, VcLoginFormSlots>;
208
+ VcPopup: GlobalComponentConstructor<VcPopupProps, VcPopupSlots>;
209
+ VcTable: GlobalComponentConstructor<VcTableProps, VcTableSlots>;
23
210
  }
24
211
  }
25
212
 
26
- export { };
213
+ export {};