@vc-shell/framework 1.0.53 → 1.0.54

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 (354) hide show
  1. package/core/composables/index.ts +0 -1
  2. package/core/composables/useApiClient/index.ts +1 -4
  3. package/core/composables/useAsync/index.ts +2 -6
  4. package/core/composables/useAutosave/index.ts +1 -3
  5. package/core/composables/useFunctions/debounce.ts +1 -4
  6. package/core/composables/useFunctions/delay.ts +1 -4
  7. package/core/composables/useFunctions/once.ts +1 -3
  8. package/core/composables/useFunctions/throttle.ts +1 -4
  9. package/core/composables/useI18n/index.ts +3 -24
  10. package/core/composables/useLoading/index.ts +1 -3
  11. package/core/composables/useNotifications/index.ts +5 -12
  12. package/core/composables/useSettings/index.ts +2 -3
  13. package/core/composables/useUser/index.ts +25 -64
  14. package/core/plugins/i18n/index.ts +8 -0
  15. package/core/plugins/index.ts +3 -1
  16. package/core/plugins/modularity/index.ts +32 -0
  17. package/core/plugins/moment/humanize.ts +1 -4
  18. package/core/plugins/validation/index.ts +11 -1
  19. package/core/plugins/validation/rules.ts +48 -170
  20. package/core/types/index.ts +3 -5
  21. package/dist/core/composables/index.d.ts +0 -1
  22. package/dist/core/composables/index.d.ts.map +1 -1
  23. package/dist/core/composables/useApiClient/index.d.ts.map +1 -1
  24. package/dist/core/composables/useAsync/index.d.ts.map +1 -1
  25. package/dist/core/composables/useAutosave/index.d.ts.map +1 -1
  26. package/dist/core/composables/useFunctions/debounce.d.ts.map +1 -1
  27. package/dist/core/composables/useFunctions/delay.d.ts.map +1 -1
  28. package/dist/core/composables/useFunctions/once.d.ts.map +1 -1
  29. package/dist/core/composables/useFunctions/throttle.d.ts.map +1 -1
  30. package/dist/core/composables/useI18n/index.d.ts +2 -4
  31. package/dist/core/composables/useI18n/index.d.ts.map +1 -1
  32. package/dist/core/composables/useLoading/index.d.ts.map +1 -1
  33. package/dist/core/composables/useNotifications/index.d.ts.map +1 -1
  34. package/dist/core/composables/useSettings/index.d.ts.map +1 -1
  35. package/dist/core/composables/useUser/index.d.ts.map +1 -1
  36. package/dist/core/plugins/i18n/index.d.ts +3 -0
  37. package/dist/core/plugins/i18n/index.d.ts.map +1 -0
  38. package/dist/core/plugins/index.d.ts +3 -1
  39. package/dist/core/plugins/index.d.ts.map +1 -1
  40. package/dist/core/plugins/modularity/index.d.ts +8 -0
  41. package/dist/core/plugins/modularity/index.d.ts.map +1 -0
  42. package/dist/core/plugins/moment/humanize.d.ts.map +1 -1
  43. package/dist/core/plugins/validation/index.d.ts +3 -1
  44. package/dist/core/plugins/validation/index.d.ts.map +1 -1
  45. package/dist/core/plugins/validation/rules.d.ts +32 -11
  46. package/dist/core/plugins/validation/rules.d.ts.map +1 -1
  47. package/dist/core/types/index.d.ts +0 -1
  48. package/dist/core/types/index.d.ts.map +1 -1
  49. package/dist/framework.esm.js +42553 -0
  50. package/dist/framework.js +77 -75
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/shared/app-switcher/composables/useAppSwitcher/index.d.ts.map +1 -1
  53. package/dist/shared/app-switcher/index.d.ts +2 -3
  54. package/dist/shared/app-switcher/index.d.ts.map +1 -1
  55. package/dist/shared/assets/components/index.d.ts +1 -1
  56. package/dist/shared/assets/components/index.d.ts.map +1 -1
  57. package/dist/shared/assets/index.d.ts +2 -3
  58. package/dist/shared/assets/index.d.ts.map +1 -1
  59. package/dist/shared/blade-navigation/composables/index.d.ts +1 -1
  60. package/dist/shared/blade-navigation/composables/index.d.ts.map +1 -1
  61. package/dist/shared/blade-navigation/composables/useBladeNavigation/index.d.ts +1 -1
  62. package/dist/shared/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -1
  63. package/dist/shared/blade-navigation/index.d.ts +2 -3
  64. package/dist/shared/blade-navigation/index.d.ts.map +1 -1
  65. package/dist/shared/index.d.ts +4 -1
  66. package/dist/shared/index.d.ts.map +1 -1
  67. package/dist/style.css +1 -1
  68. package/dist/tsconfig.tsbuildinfo +1 -1
  69. package/dist/ui/components/atoms/vc-badge/index.d.ts +2 -2
  70. package/dist/ui/components/atoms/vc-badge/index.d.ts.map +1 -1
  71. package/dist/ui/components/atoms/vc-badge/vc-badge-model.d.ts +20 -15
  72. package/dist/ui/components/atoms/vc-badge/vc-badge-model.d.ts.map +1 -1
  73. package/dist/ui/components/atoms/vc-button/index.d.ts +2 -2
  74. package/dist/ui/components/atoms/vc-button/index.d.ts.map +1 -1
  75. package/dist/ui/components/atoms/vc-button/vc-button-model.d.ts +30 -10
  76. package/dist/ui/components/atoms/vc-button/vc-button-model.d.ts.map +1 -1
  77. package/dist/ui/components/atoms/vc-card/index.d.ts +2 -2
  78. package/dist/ui/components/atoms/vc-card/index.d.ts.map +1 -1
  79. package/dist/ui/components/atoms/vc-card/vc-card-model.d.ts +28 -11
  80. package/dist/ui/components/atoms/vc-card/vc-card-model.d.ts.map +1 -1
  81. package/dist/ui/components/atoms/vc-checkbox/index.d.ts +2 -2
  82. package/dist/ui/components/atoms/vc-checkbox/index.d.ts.map +1 -1
  83. package/dist/ui/components/atoms/vc-checkbox/vc-checkbox-model.d.ts +25 -8
  84. package/dist/ui/components/atoms/vc-checkbox/vc-checkbox-model.d.ts.map +1 -1
  85. package/dist/ui/components/atoms/vc-col/index.d.ts.map +1 -1
  86. package/dist/ui/components/atoms/vc-col/vc-col-model.d.ts +8 -3
  87. package/dist/ui/components/atoms/vc-col/vc-col-model.d.ts.map +1 -1
  88. package/dist/ui/components/atoms/vc-container/index.d.ts +2 -2
  89. package/dist/ui/components/atoms/vc-container/index.d.ts.map +1 -1
  90. package/dist/ui/components/atoms/vc-container/vc-container-model.d.ts +20 -6
  91. package/dist/ui/components/atoms/vc-container/vc-container-model.d.ts.map +1 -1
  92. package/dist/ui/components/atoms/vc-hint/vc-hint-model.d.ts +5 -0
  93. package/dist/ui/components/atoms/vc-hint/vc-hint-model.d.ts.map +1 -0
  94. package/dist/ui/components/atoms/vc-icon/index.d.ts.map +1 -1
  95. package/dist/ui/components/atoms/vc-icon/vc-icon-model.d.ts +13 -5
  96. package/dist/ui/components/atoms/vc-icon/vc-icon-model.d.ts.map +1 -1
  97. package/dist/ui/components/atoms/vc-image/index.d.ts +2 -2
  98. package/dist/ui/components/atoms/vc-image/index.d.ts.map +1 -1
  99. package/dist/ui/components/atoms/vc-image/vc-image-model.d.ts +34 -11
  100. package/dist/ui/components/atoms/vc-image/vc-image-model.d.ts.map +1 -1
  101. package/dist/ui/components/atoms/vc-image/vc-image.stories.d.ts.map +1 -1
  102. package/dist/ui/components/atoms/vc-info-row/index.d.ts.map +1 -1
  103. package/dist/ui/components/atoms/vc-info-row/vc-info-row-model.d.ts +21 -7
  104. package/dist/ui/components/atoms/vc-info-row/vc-info-row-model.d.ts.map +1 -1
  105. package/dist/ui/components/atoms/vc-label/index.d.ts.map +1 -1
  106. package/dist/ui/components/atoms/vc-label/vc-label-model.d.ts +12 -4
  107. package/dist/ui/components/atoms/vc-label/vc-label-model.d.ts.map +1 -1
  108. package/dist/ui/components/atoms/vc-link/index.d.ts +2 -2
  109. package/dist/ui/components/atoms/vc-link/index.d.ts.map +1 -1
  110. package/dist/ui/components/atoms/vc-link/vc-link-model.d.ts +16 -5
  111. package/dist/ui/components/atoms/vc-link/vc-link-model.d.ts.map +1 -1
  112. package/dist/ui/components/atoms/vc-loading/index.d.ts.map +1 -1
  113. package/dist/ui/components/atoms/vc-loading/vc-loading-model.d.ts +8 -3
  114. package/dist/ui/components/atoms/vc-loading/vc-loading-model.d.ts.map +1 -1
  115. package/dist/ui/components/atoms/vc-progress/index.d.ts.map +1 -1
  116. package/dist/ui/components/atoms/vc-progress/vc-progress-model.d.ts +13 -5
  117. package/dist/ui/components/atoms/vc-progress/vc-progress-model.d.ts.map +1 -1
  118. package/dist/ui/components/atoms/vc-status/index.d.ts.map +1 -1
  119. package/dist/ui/components/atoms/vc-status/vc-status-model.d.ts +17 -6
  120. package/dist/ui/components/atoms/vc-status/vc-status-model.d.ts.map +1 -1
  121. package/dist/ui/components/atoms/vc-status-icon/index.d.ts.map +1 -1
  122. package/dist/ui/components/atoms/vc-status-icon/vc-status-icon-model.d.ts +8 -3
  123. package/dist/ui/components/atoms/vc-status-icon/vc-status-icon-model.d.ts.map +1 -1
  124. package/dist/ui/components/atoms/vc-switch/index.d.ts +2 -2
  125. package/dist/ui/components/atoms/vc-switch/index.d.ts.map +1 -1
  126. package/dist/ui/components/atoms/vc-switch/vc-switch-model.d.ts +25 -8
  127. package/dist/ui/components/atoms/vc-switch/vc-switch-model.d.ts.map +1 -1
  128. package/dist/ui/components/atoms/vc-widget/index.d.ts +2 -2
  129. package/dist/ui/components/atoms/vc-widget/index.d.ts.map +1 -1
  130. package/dist/ui/components/atoms/vc-widget/vc-widget-model.d.ts +15 -7
  131. package/dist/ui/components/atoms/vc-widget/vc-widget-model.d.ts.map +1 -1
  132. package/dist/ui/components/index.d.ts.map +1 -1
  133. package/dist/ui/components/molecules/vc-breadcrumbs/index.d.ts.map +1 -1
  134. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs-model.d.ts +15 -10
  135. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs-model.d.ts.map +1 -1
  136. package/dist/ui/components/molecules/vc-editor/index.d.ts +2 -2
  137. package/dist/ui/components/molecules/vc-editor/index.d.ts.map +1 -1
  138. package/dist/ui/components/molecules/vc-editor/vc-editor-model.d.ts +28 -11
  139. package/dist/ui/components/molecules/vc-editor/vc-editor-model.d.ts.map +1 -1
  140. package/dist/ui/components/molecules/vc-file-upload/index.d.ts +2 -2
  141. package/dist/ui/components/molecules/vc-file-upload/index.d.ts.map +1 -1
  142. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload-model.d.ts +30 -10
  143. package/dist/ui/components/molecules/vc-file-upload/vc-file-upload-model.d.ts.map +1 -1
  144. package/dist/ui/components/molecules/vc-form/vc-form-model.d.ts +5 -0
  145. package/dist/ui/components/molecules/vc-form/vc-form-model.d.ts.map +1 -0
  146. package/dist/ui/components/molecules/vc-input/index.d.ts +2 -2
  147. package/dist/ui/components/molecules/vc-input/index.d.ts.map +1 -1
  148. package/dist/ui/components/molecules/vc-input/vc-input-model.d.ts +48 -25
  149. package/dist/ui/components/molecules/vc-input/vc-input-model.d.ts.map +1 -1
  150. package/dist/ui/components/molecules/vc-input-currency/index.d.ts +2 -2
  151. package/dist/ui/components/molecules/vc-input-currency/index.d.ts.map +1 -1
  152. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency-model.d.ts +36 -28
  153. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency-model.d.ts.map +1 -1
  154. package/dist/ui/components/molecules/vc-notification/index.d.ts +2 -2
  155. package/dist/ui/components/molecules/vc-notification/index.d.ts.map +1 -1
  156. package/dist/ui/components/molecules/vc-notification/vc-notification-model.d.ts +13 -5
  157. package/dist/ui/components/molecules/vc-notification/vc-notification-model.d.ts.map +1 -1
  158. package/dist/ui/components/molecules/vc-pagination/index.d.ts +2 -2
  159. package/dist/ui/components/molecules/vc-pagination/index.d.ts.map +1 -1
  160. package/dist/ui/components/molecules/vc-pagination/vc-pagination-model.d.ts +20 -6
  161. package/dist/ui/components/molecules/vc-pagination/vc-pagination-model.d.ts.map +1 -1
  162. package/dist/ui/components/molecules/vc-rating/index.d.ts.map +1 -1
  163. package/dist/ui/components/molecules/vc-rating/vc-rating-model.d.ts +17 -9
  164. package/dist/ui/components/molecules/vc-rating/vc-rating-model.d.ts.map +1 -1
  165. package/dist/ui/components/molecules/vc-select/index.d.ts +2 -2
  166. package/dist/ui/components/molecules/vc-select/index.d.ts.map +1 -1
  167. package/dist/ui/components/molecules/vc-select/vc-select-model.d.ts +67 -32
  168. package/dist/ui/components/molecules/vc-select/vc-select-model.d.ts.map +1 -1
  169. package/dist/ui/components/molecules/vc-slider/index.d.ts.map +1 -1
  170. package/dist/ui/components/molecules/vc-slider/vc-slider-model.d.ts +25 -8
  171. package/dist/ui/components/molecules/vc-slider/vc-slider-model.d.ts.map +1 -1
  172. package/dist/ui/components/molecules/vc-textarea/index.d.ts +2 -2
  173. package/dist/ui/components/molecules/vc-textarea/index.d.ts.map +1 -1
  174. package/dist/ui/components/molecules/vc-textarea/vc-textarea-model.d.ts +32 -12
  175. package/dist/ui/components/molecules/vc-textarea/vc-textarea-model.d.ts.map +1 -1
  176. package/dist/ui/components/organisms/vc-app/index.d.ts +2 -2
  177. package/dist/ui/components/organisms/vc-app/index.d.ts.map +1 -1
  178. package/dist/ui/components/organisms/vc-app/vc-app-model.d.ts +52 -17
  179. package/dist/ui/components/organisms/vc-app/vc-app-model.d.ts.map +1 -1
  180. package/dist/ui/components/organisms/vc-blade/index.d.ts +2 -2
  181. package/dist/ui/components/organisms/vc-blade/index.d.ts.map +1 -1
  182. package/dist/ui/components/organisms/vc-blade/vc-blade-model.d.ts +28 -11
  183. package/dist/ui/components/organisms/vc-blade/vc-blade-model.d.ts.map +1 -1
  184. package/dist/ui/components/organisms/vc-blade/vc-blade.stories.d.ts.map +1 -1
  185. package/dist/ui/components/organisms/vc-dynamic-property/index.d.ts.map +1 -1
  186. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property-model.d.ts +39 -10
  187. package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property-model.d.ts.map +1 -1
  188. package/dist/ui/components/organisms/vc-gallery/index.d.ts +2 -2
  189. package/dist/ui/components/organisms/vc-gallery/index.d.ts.map +1 -1
  190. package/dist/ui/components/organisms/vc-gallery/vc-gallery-model.d.ts +69 -27
  191. package/dist/ui/components/organisms/vc-gallery/vc-gallery-model.d.ts.map +1 -1
  192. package/dist/ui/components/organisms/vc-login-form/index.d.ts.map +1 -1
  193. package/dist/ui/components/organisms/vc-login-form/vc-login-form-model.d.ts +10 -5
  194. package/dist/ui/components/organisms/vc-login-form/vc-login-form-model.d.ts.map +1 -1
  195. package/dist/ui/components/organisms/vc-popup/index.d.ts +2 -2
  196. package/dist/ui/components/organisms/vc-popup/index.d.ts.map +1 -1
  197. package/dist/ui/components/organisms/vc-popup/vc-popup-model.d.ts +18 -7
  198. package/dist/ui/components/organisms/vc-popup/vc-popup-model.d.ts.map +1 -1
  199. package/dist/ui/components/organisms/vc-table/index.d.ts +2 -2
  200. package/dist/ui/components/organisms/vc-table/index.d.ts.map +1 -1
  201. package/dist/ui/components/organisms/vc-table/vc-table-model.d.ts +103 -34
  202. package/dist/ui/components/organisms/vc-table/vc-table-model.d.ts.map +1 -1
  203. package/dist/ui/types/index.d.ts +48 -46
  204. package/dist/ui/types/index.d.ts.map +1 -1
  205. package/dist/ui/types/ts-helpers.d.ts +14 -4
  206. package/dist/ui/types/ts-helpers.d.ts.map +1 -1
  207. package/dist/ui/utils/index.d.ts +2 -0
  208. package/dist/ui/utils/index.d.ts.map +1 -0
  209. package/dist/ui/utils/types.d.ts +3 -0
  210. package/dist/ui/utils/types.d.ts.map +1 -0
  211. package/dist/vite.config.d.ts +1 -1
  212. package/dist/vite.config.d.ts.map +1 -1
  213. package/package.json +8 -11
  214. package/shared/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +2 -5
  215. package/shared/app-switcher/composables/useAppSwitcher/index.ts +2 -7
  216. package/shared/app-switcher/index.ts +3 -10
  217. package/shared/assets/components/assets-details/assets-details.vue +7 -28
  218. package/shared/assets/components/index.ts +1 -1
  219. package/shared/assets/index.ts +3 -15
  220. package/shared/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +2 -7
  221. package/shared/blade-navigation/composables/index.ts +1 -1
  222. package/shared/blade-navigation/composables/useBladeNavigation/index.ts +7 -36
  223. package/shared/blade-navigation/index.ts +3 -10
  224. package/shared/index.ts +9 -11
  225. package/ui/components/atoms/vc-badge/index.ts +4 -4
  226. package/ui/components/atoms/vc-badge/vc-badge-model.ts +22 -15
  227. package/ui/components/atoms/vc-badge/vc-badge.vue +5 -10
  228. package/ui/components/atoms/vc-button/index.ts +4 -4
  229. package/ui/components/atoms/vc-button/vc-button-model.ts +32 -17
  230. package/ui/components/atoms/vc-button/vc-button.vue +8 -13
  231. package/ui/components/atoms/vc-card/index.ts +3 -4
  232. package/ui/components/atoms/vc-card/vc-card-model.ts +31 -11
  233. package/ui/components/atoms/vc-card/vc-card.vue +20 -11
  234. package/ui/components/atoms/vc-checkbox/index.ts +3 -2
  235. package/ui/components/atoms/vc-checkbox/vc-checkbox-model.ts +28 -8
  236. package/ui/components/atoms/vc-checkbox/vc-checkbox.vue +15 -11
  237. package/ui/components/atoms/vc-col/index.ts +1 -2
  238. package/ui/components/atoms/vc-col/vc-col-model.ts +9 -3
  239. package/ui/components/atoms/vc-col/vc-col.vue +2 -4
  240. package/ui/components/atoms/vc-container/index.ts +3 -2
  241. package/ui/components/atoms/vc-container/vc-container-model.ts +24 -8
  242. package/ui/components/atoms/vc-container/vc-container.vue +6 -14
  243. package/ui/components/atoms/vc-hint/vc-hint-model.ts +5 -0
  244. package/ui/components/atoms/vc-icon/index.ts +1 -3
  245. package/ui/components/atoms/vc-icon/vc-icon-model.ts +15 -6
  246. package/ui/components/atoms/vc-icon/vc-icon.vue +2 -5
  247. package/ui/components/atoms/vc-image/index.ts +4 -4
  248. package/ui/components/atoms/vc-image/vc-image-model.ts +36 -22
  249. package/ui/components/atoms/vc-image/vc-image.stories.ts +1 -2
  250. package/ui/components/atoms/vc-image/vc-image.vue +13 -17
  251. package/ui/components/atoms/vc-info-row/index.ts +1 -3
  252. package/ui/components/atoms/vc-info-row/vc-info-row-model.ts +22 -7
  253. package/ui/components/atoms/vc-info-row/vc-info-row.vue +13 -9
  254. package/ui/components/atoms/vc-label/index.ts +1 -3
  255. package/ui/components/atoms/vc-label/vc-label-model.ts +13 -4
  256. package/ui/components/atoms/vc-label/vc-label.vue +6 -6
  257. package/ui/components/atoms/vc-link/index.ts +3 -4
  258. package/ui/components/atoms/vc-link/vc-link-model.ts +18 -5
  259. package/ui/components/atoms/vc-link/vc-link.vue +4 -6
  260. package/ui/components/atoms/vc-loading/index.ts +1 -3
  261. package/ui/components/atoms/vc-loading/vc-loading-model.ts +9 -3
  262. package/ui/components/atoms/vc-loading/vc-loading.vue +4 -9
  263. package/ui/components/atoms/vc-progress/index.ts +1 -3
  264. package/ui/components/atoms/vc-progress/vc-progress-model.ts +14 -5
  265. package/ui/components/atoms/vc-progress/vc-progress.vue +4 -13
  266. package/ui/components/atoms/vc-status/index.ts +1 -3
  267. package/ui/components/atoms/vc-status/vc-status-model.ts +18 -12
  268. package/ui/components/atoms/vc-status/vc-status.vue +3 -11
  269. package/ui/components/atoms/vc-status-icon/index.ts +1 -3
  270. package/ui/components/atoms/vc-status-icon/vc-status-icon-model.ts +9 -3
  271. package/ui/components/atoms/vc-status-icon/vc-status-icon.vue +2 -4
  272. package/ui/components/atoms/vc-switch/index.ts +4 -4
  273. package/ui/components/atoms/vc-switch/vc-switch-model.ts +28 -8
  274. package/ui/components/atoms/vc-switch/vc-switch.vue +12 -10
  275. package/ui/components/atoms/vc-widget/index.ts +4 -4
  276. package/ui/components/atoms/vc-widget/vc-widget-model.ts +17 -7
  277. package/ui/components/atoms/vc-widget/vc-widget.vue +16 -7
  278. package/ui/components/index.ts +1 -1
  279. package/ui/components/molecules/vc-breadcrumbs/index.ts +1 -3
  280. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs-model.ts +18 -10
  281. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +6 -5
  282. package/ui/components/molecules/vc-editor/index.ts +4 -4
  283. package/ui/components/molecules/vc-editor/vc-editor-model.ts +31 -11
  284. package/ui/components/molecules/vc-editor/vc-editor.vue +17 -11
  285. package/ui/components/molecules/vc-file-upload/index.ts +3 -2
  286. package/ui/components/molecules/vc-file-upload/vc-file-upload-model.ts +33 -11
  287. package/ui/components/molecules/vc-file-upload/vc-file-upload.vue +10 -14
  288. package/ui/components/molecules/vc-form/vc-form-model.ts +5 -0
  289. package/ui/components/molecules/vc-input/index.ts +4 -5
  290. package/ui/components/molecules/vc-input/vc-input-model.ts +53 -35
  291. package/ui/components/molecules/vc-input/vc-input.vue +41 -29
  292. package/ui/components/molecules/vc-input-currency/index.ts +3 -2
  293. package/ui/components/molecules/vc-input-currency/vc-input-currency-model.ts +42 -32
  294. package/ui/components/molecules/vc-input-currency/vc-input-currency.vue +12 -7
  295. package/ui/components/molecules/vc-notification/index.ts +4 -3
  296. package/ui/components/molecules/vc-notification/vc-notification-model.ts +15 -5
  297. package/ui/components/molecules/vc-notification/vc-notification.vue +3 -5
  298. package/ui/components/molecules/vc-pagination/index.ts +4 -3
  299. package/ui/components/molecules/vc-pagination/vc-pagination-model.ts +23 -6
  300. package/ui/components/molecules/vc-pagination/vc-pagination.vue +19 -11
  301. package/ui/components/molecules/vc-rating/index.ts +2 -4
  302. package/ui/components/molecules/vc-rating/vc-rating-model.ts +18 -9
  303. package/ui/components/molecules/vc-rating/vc-rating.vue +10 -4
  304. package/ui/components/molecules/vc-select/index.ts +5 -5
  305. package/ui/components/molecules/vc-select/vc-select-model.ts +74 -44
  306. package/ui/components/molecules/vc-select/vc-select.vue +126 -171
  307. package/ui/components/molecules/vc-slider/index.ts +2 -4
  308. package/ui/components/molecules/vc-slider/vc-slider-model.ts +30 -11
  309. package/ui/components/molecules/vc-slider/vc-slider.vue +2 -8
  310. package/ui/components/molecules/vc-textarea/index.ts +4 -3
  311. package/ui/components/molecules/vc-textarea/vc-textarea-model.ts +35 -12
  312. package/ui/components/molecules/vc-textarea/vc-textarea.vue +16 -12
  313. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +13 -9
  314. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +12 -3
  315. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +18 -16
  316. package/ui/components/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue +8 -2
  317. package/ui/components/organisms/vc-app/index.ts +4 -4
  318. package/ui/components/organisms/vc-app/vc-app-model.ts +55 -17
  319. package/ui/components/organisms/vc-app/vc-app.vue +8 -25
  320. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +22 -7
  321. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue +19 -13
  322. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +13 -11
  323. package/ui/components/organisms/vc-blade/index.ts +5 -5
  324. package/ui/components/organisms/vc-blade/vc-blade-model.ts +30 -11
  325. package/ui/components/organisms/vc-blade/vc-blade.stories.ts +1 -2
  326. package/ui/components/organisms/vc-blade/vc-blade.vue +12 -14
  327. package/ui/components/organisms/vc-dynamic-property/index.ts +2 -4
  328. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property-model.ts +53 -20
  329. package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +41 -37
  330. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +9 -2
  331. package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +14 -9
  332. package/ui/components/organisms/vc-gallery/index.ts +4 -3
  333. package/ui/components/organisms/vc-gallery/vc-gallery-model.ts +72 -27
  334. package/ui/components/organisms/vc-gallery/vc-gallery.vue +7 -20
  335. package/ui/components/organisms/vc-login-form/index.ts +2 -4
  336. package/ui/components/organisms/vc-login-form/vc-login-form-model.ts +10 -5
  337. package/ui/components/organisms/vc-login-form/vc-login-form.vue +2 -4
  338. package/ui/components/organisms/vc-popup/index.ts +5 -5
  339. package/ui/components/organisms/vc-popup/vc-popup-model.ts +20 -7
  340. package/ui/components/organisms/vc-popup/vc-popup.vue +7 -7
  341. package/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue +19 -25
  342. package/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue +2 -6
  343. package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +8 -2
  344. package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +27 -39
  345. package/ui/components/organisms/vc-table/index.ts +5 -5
  346. package/ui/components/organisms/vc-table/vc-table-model.ts +98 -38
  347. package/ui/components/organisms/vc-table/vc-table.vue +105 -103
  348. package/ui/types/index.ts +64 -160
  349. package/ui/types/ts-helpers.ts +23 -3
  350. package/ui/utils/index.ts +1 -0
  351. package/ui/utils/types.ts +2 -0
  352. package/core/composables/useLogger/index.ts +0 -24
  353. package/dist/core/composables/useLogger/index.d.ts +0 -5
  354. package/dist/core/composables/useLogger/index.d.ts.map +0 -1
@@ -4,9 +4,7 @@
4
4
  <template v-if="value > 0">
5
5
  <span>{{ Math.trunc(Number(value)) }}</span
6
6
  ><span class="tw-text-[#a5a5a5] tw-text-xs"
7
- >.{{
8
- `${(Number(value) * 100) % 100}`.padEnd(2, "0").slice(0, 2)
9
- }}</span
7
+ >.{{ `${(Number(value) * 100) % 100}`.padEnd(2, "0").slice(0, 2) }}</span
10
8
  >
11
9
  </template>
12
10
  <template v-else>
@@ -15,7 +13,10 @@
15
13
  </template>
16
14
 
17
15
  <!-- Date ago cell -->
18
- <span v-else-if="cell.type === 'date-ago'" class="tw-text-[#a5a5a5]">
16
+ <span
17
+ v-else-if="cell.type === 'date-ago'"
18
+ class="tw-text-[#a5a5a5]"
19
+ >
19
20
  <template v-if="value">
20
21
  {{ moment(value).fromNow() }}
21
22
  </template>
@@ -24,9 +25,7 @@
24
25
 
25
26
  <!-- Date exact cell -->
26
27
  <span
27
- v-else-if="
28
- cell.type === 'date' || cell.type === 'time' || cell.type === 'date-time'
29
- "
28
+ v-else-if="cell.type === 'date' || cell.type === 'time' || cell.type === 'date-time'"
30
29
  class="tw-text-[#a5a5a5]"
31
30
  >
32
31
  <template v-if="value">
@@ -34,15 +33,9 @@
34
33
  {{ moment(value).locale(locale).format(cell.format) }}
35
34
  </template>
36
35
  <template v-else>
37
- <template v-if="cell.type === 'date'">{{
38
- value.toLocaleDateString()
39
- }}</template>
40
- <template v-if="cell.type === 'time'">{{
41
- value.toLocaleTimeString()
42
- }}</template>
43
- <template v-if="cell.type === 'date-time'">{{
44
- value.toLocaleString()
45
- }}</template>
36
+ <template v-if="cell.type === 'date'">{{ value.toLocaleDateString() }}</template>
37
+ <template v-if="cell.type === 'time'">{{ value.toLocaleTimeString() }}</template>
38
+ <template v-if="cell.type === 'date-time'">{{ value.toLocaleString() }}</template>
46
39
  </template>
47
40
  </template>
48
41
  <template v-else>N/A</template>
@@ -73,7 +66,10 @@
73
66
  </div>
74
67
 
75
68
  <!-- Number cell -->
76
- <span v-else-if="cell.type === 'number'" class="tw-text-right">
69
+ <span
70
+ v-else-if="cell.type === 'number'"
71
+ class="tw-text-right"
72
+ >
77
73
  {{ Number(value).toFixed(0) }}
78
74
  </span>
79
75
 
@@ -106,13 +102,11 @@ const props = withDefaults(defineProps<Props>(), {
106
102
 
107
103
  const locale = window.navigator.language;
108
104
  const value = computed(() => {
109
- return (props.cell.field || props.cell.id)
110
- .split(".")
111
- .reduce((p: { [x: string]: unknown }, c: string) => {
112
- if (p && Array.isArray(p) && p.length) {
113
- return (p && p[0][c]) || null;
114
- }
115
- return (p && p[c]) || null;
116
- }, props.item);
105
+ return (props.cell.field || props.cell.id).split(".").reduce((p: { [x: string]: unknown }, c: string) => {
106
+ if (p && Array.isArray(p) && p.length) {
107
+ return (p && p[0][c]) || null;
108
+ }
109
+ return (p && p[c]) || null;
110
+ }, props.item);
117
111
  });
118
112
  </script>
@@ -1,11 +1,7 @@
1
1
  <template>
2
2
  <div class="tw-font-medium tw-text-base">
3
- <span class="tw-text-[color:var(--table-counter-label-color)]"
4
- >{{ label }}&nbsp;</span
5
- >
6
- <span class="tw-text-[color:var(--table-counter-value-color)]">{{
7
- value
8
- }}</span>
3
+ <span class="tw-text-[color:var(--table-counter-label-color)]">{{ label }}&nbsp;</span>
4
+ <span class="tw-text-[color:var(--table-counter-value-color)]">{{ value }}</span>
9
5
  </div>
10
6
  </template>
11
7
 
@@ -6,8 +6,14 @@
6
6
  @click="openPanel($isMobile.value)"
7
7
  ref="filterToggle"
8
8
  >
9
- <VcIcon icon="fas fa-filter" size="m" />
10
- <span v-if="title" class="tw-ml-[10px] tw-font-medium">
9
+ <VcIcon
10
+ icon="fas fa-filter"
11
+ size="m"
12
+ />
13
+ <span
14
+ v-if="title"
15
+ class="tw-ml-[10px] tw-font-medium"
16
+ >
11
17
  {{ title }}
12
18
  </span>
13
19
  <div
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div
3
- class="tw-relative tw-flex tw-flex-nowrap tw-items-stretch tw-transition tw-duration-200"
3
+ class="tw-relative tw-flex tw-flex-nowrap tw-items-stretch tw-transition tw-duration-200"
4
4
  :class="{ ' tw-transition-none': isMoving }"
5
5
  :style="`transform: translateX(${offsetX}px)`"
6
6
  @click="$emit('click')"
@@ -11,11 +11,11 @@
11
11
  >
12
12
  <!-- Left swipe actions-->
13
13
  <div
14
- class= "tw-flex-shrink-0 tw-w-[80px] tw-flex tw-flex-col [justify-content:stretch] tw-bg-[#a9bfd2]"
14
+ class="tw-flex-shrink-0 tw-w-[80px] tw-flex tw-flex-col [justify-content:stretch] tw-bg-[#a9bfd2]"
15
15
  v-if="leftSwipeActions && leftSwipeActions.length"
16
16
  >
17
17
  <div
18
- class= "tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
18
+ class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
19
19
  :class="[`vc-table-mobile__item-action_${leftSwipeActions[0].variant}`]"
20
20
  @click.stop="leftSwipeActions[0].clickHandler(item)"
21
21
  >
@@ -26,22 +26,20 @@
26
26
  </div>
27
27
  </div>
28
28
 
29
- <div class= "tw-flex-shrink-0 tw-w-full">
29
+ <div class="tw-flex-shrink-0 tw-w-full">
30
30
  <!-- Mobile item slot content -->
31
31
  <slot></slot>
32
32
  </div>
33
33
 
34
34
  <!-- Item actions -->
35
35
  <div
36
- class= "tw-flex-shrink-0 tw-w-[80px] tw-flex tw-flex-col [justify-content:stretch] tw-bg-[#a9bfd2]"
36
+ class="tw-flex-shrink-0 tw-w-[80px] tw-flex tw-flex-col [justify-content:stretch] tw-bg-[#a9bfd2]"
37
37
  v-if="rightSwipeActions && rightSwipeActions.length"
38
38
  >
39
39
  <!-- First available action -->
40
40
  <div
41
- class= "tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
42
- :class="[
43
- `vc-table-mobile__item-action_${rightSwipeActions[0].variant}`,
44
- ]"
41
+ class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
42
+ :class="[`vc-table-mobile__item-action_${rightSwipeActions[0].variant}`]"
45
43
  @click.stop="rightSwipeActions[0].clickHandler(item)"
46
44
  >
47
45
  <VcIcon :icon="rightSwipeActions[0].icon"></VcIcon>
@@ -53,10 +51,8 @@
53
51
  <!-- Second available action -->
54
52
  <div
55
53
  v-if="rightSwipeActions.length === 2"
56
- class= "tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
57
- :class="[
58
- `vc-table-mobile__item-action_${rightSwipeActions[1].variant}`,
59
- ]"
54
+ class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
55
+ :class="[`vc-table-mobile__item-action_${rightSwipeActions[1].variant}`]"
60
56
  @click.stop="rightSwipeActions[1].clickHandler(item)"
61
57
  >
62
58
  <VcIcon :icon="rightSwipeActions[1].icon"></VcIcon>
@@ -68,7 +64,7 @@
68
64
  <!-- Other available actions -->
69
65
  <template v-if="rightSwipeActions.length > 2">
70
66
  <div
71
- class= "tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
67
+ class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
72
68
  @click.stop="isActionsPopupVisible = true"
73
69
  >
74
70
  <VcIcon icon="fas fa-ellipsis-h"></VcIcon>
@@ -76,17 +72,18 @@
76
72
  </div>
77
73
 
78
74
  <!-- Actions popup -->
79
- <teleport to="body" v-if="isActionsPopupVisible">
75
+ <teleport
76
+ to="body"
77
+ v-if="isActionsPopupVisible"
78
+ >
80
79
  <div
81
80
  class="tw-absolute tw-left-0 tw-top-0 tw-right-0 tw-bottom-0 tw-bg-[rgba(107,121,135,0.15)] tw-flex tw-items-center tw-justify-center tw-z-[99]"
82
81
  >
83
82
  <div
84
83
  class="tw-bg-white tw-rounded-[6px] tw-overflow-hidden tw-p-5 tw-max-w-[80%] tw-w-[350px] tw-border tw-border-solid tw-border-[#eef0f2] tw-box-border tw-shadow-[1px_1px_22px_rgba(126,142,157,0.2)]"
85
84
  >
86
- <div class= "tw-flex tw-w-full tw-items-center">
87
- <span
88
- class="tw-grow tw-text-[#2e3d4e] tw-text-[19px] tw-font-semibold tw-tracking-[-0.01em]"
89
- >
85
+ <div class="tw-flex tw-w-full tw-items-center">
86
+ <span class="tw-grow tw-text-[#2e3d4e] tw-text-[19px] tw-font-semibold tw-tracking-[-0.01em]">
90
87
  {{ $t("All actions") }}
91
88
  </span>
92
89
  <VcIcon
@@ -97,14 +94,17 @@
97
94
  ></VcIcon>
98
95
  </div>
99
96
 
100
- <div class= "tw-flex tw-flex-wrap tw-my-5 tw-justify-between">
97
+ <div class="tw-flex tw-flex-wrap tw-my-5 tw-justify-between">
101
98
  <div
102
99
  v-for="(itemAction, i) in itemActions"
103
100
  :key="i"
104
- class= "tw-flex tw-grow tw-shrink-0 tw-flex-col tw-items-center tw-text-[#319ed4] tw-my-2 tw-box-border tw-p-1 tw-max-w-[80px]"
101
+ class="tw-flex tw-grow tw-shrink-0 tw-flex-col tw-items-center tw-text-[#319ed4] tw-my-2 tw-box-border tw-p-1 tw-max-w-[80px]"
105
102
  @click="itemAction.clickHandler(item)"
106
103
  >
107
- <VcIcon :icon="itemAction.icon" size="xl"></VcIcon>
104
+ <VcIcon
105
+ :icon="itemAction.icon"
106
+ size="xl"
107
+ ></VcIcon>
108
108
  <div class="tw-text-base tw-mt-2 tw-text-center">
109
109
  {{ itemAction.title }}
110
110
  </div>
@@ -165,23 +165,17 @@ const rightSwipeActions = computed(
165
165
  () =>
166
166
  itemActions.value &&
167
167
  itemActions.value.length &&
168
- itemActions.value.filter(
169
- (actions: IActionBuilderResult) => !actions.leftActions
170
- )
168
+ itemActions.value.filter((actions: IActionBuilderResult) => !actions.leftActions)
171
169
  );
172
170
  const leftSwipeActions = computed(
173
171
  () =>
174
172
  itemActions.value &&
175
173
  itemActions.value.length &&
176
- itemActions.value.filter(
177
- (actions: IActionBuilderResult) => actions.leftActions
178
- )
174
+ itemActions.value.filter((actions: IActionBuilderResult) => actions.leftActions)
179
175
  );
180
176
 
181
177
  function handleOffset() {
182
- if (
183
- itemActions.value.some((action: IActionBuilderResult) => action.leftActions)
184
- ) {
178
+ if (itemActions.value.some((action: IActionBuilderResult) => action.leftActions)) {
185
179
  offsetX.value = -maxWidth;
186
180
  startOffsetX.value = offsetX.value;
187
181
  } else {
@@ -233,10 +227,7 @@ function touchEnd(): void {
233
227
  if (absoluteOffsetX < maxWidth) {
234
228
  offsetX.value = absoluteOffsetX < maxWidth / 2 ? 0 : -maxWidth;
235
229
  } else {
236
- offsetX.value =
237
- absoluteOffsetX <= maxWidth * 2 - threshold * 2
238
- ? -maxWidth
239
- : -maxWidth * 2;
230
+ offsetX.value = absoluteOffsetX <= maxWidth * 2 - threshold * 2 ? -maxWidth : -maxWidth * 2;
240
231
  }
241
232
 
242
233
  isMoving.value = false;
@@ -247,10 +238,7 @@ function touchCancel(): void {
247
238
  if (absoluteOffsetX < maxWidth) {
248
239
  offsetX.value = absoluteOffsetX < maxWidth / 2 ? 0 : -maxWidth;
249
240
  } else {
250
- offsetX.value =
251
- absoluteOffsetX <= maxWidth * 2 - threshold * 2
252
- ? -maxWidth
253
- : -maxWidth * 2;
241
+ offsetX.value = absoluteOffsetX <= maxWidth * 2 - threshold * 2 ? -maxWidth : -maxWidth * 2;
254
242
  }
255
243
 
256
244
  isMoving.value = false;
@@ -1,7 +1,7 @@
1
1
  import { ComponentPublicInstance } from "vue";
2
- import { VcTableProps } from "./vc-table-model";
3
- import { ComponentConstructor } from "./../../../types/ts-helpers"
2
+ import { VcTableEmits, VcTableProps } from "./vc-table-model";
3
+ import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Table from "./vc-table.vue";
5
- export const VcTable: ComponentConstructor<
6
- ComponentPublicInstance<VcTableProps>
7
- > = Table;
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ export const VcTable: ComponentConstructor<ComponentPublicInstance<VcTableProps, any, any, any, any, VcTableEmits>> =
7
+ Table;
@@ -1,5 +1,8 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
1
2
  import { IActionBuilderResult, ITableColumns } from "./../../../../core/types";
2
- import { VNode } from "vue";
3
+ import { PropType, VNode } from "vue";
4
+ import { ExtractTypes } from "./../../../types/ts-helpers";
5
+ import { isNumber, isString, isObject } from "./../../../utils";
3
6
 
4
7
  export interface StatusImage {
5
8
  image?: string;
@@ -8,48 +11,105 @@ export interface StatusImage {
8
11
  clickHandler?: () => void;
9
12
  }
10
13
 
11
- export interface VcTableProps {
12
- columns?: ITableColumns[];
13
- items?: { id?: string }[] | any[];
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
- }
14
+ export const tableProps = {
15
+ columns: { type: Array as PropType<ITableColumns[]>, default: () => [] },
16
+ items: { type: Array as PropType<{ id?: string }[] | any[]>, default: () => [] },
17
+ itemActionBuilder: {
18
+ type: Function as PropType<(item: { id?: string }) => IActionBuilderResult[]>,
19
+ default: undefined,
20
+ },
21
+ sort: {
22
+ type: String,
23
+ default: undefined,
24
+ },
25
+ multiselect: {
26
+ type: Boolean,
27
+ default: false,
28
+ },
29
+ expanded: {
30
+ type: Boolean,
31
+ default: false,
32
+ },
33
+ totalLabel: {
34
+ type: String,
35
+ default: "Totals:",
36
+ },
37
+ totalCount: {
38
+ type: Number,
39
+ default: 0,
40
+ },
41
+ pages: {
42
+ type: Number,
43
+ default: 0,
44
+ },
45
+ currentPage: {
46
+ type: Number,
47
+ default: 0,
48
+ },
49
+ searchPlaceholder: {
50
+ type: String,
51
+ default: "Search...",
52
+ },
53
+ searchValue: {
54
+ type: String,
55
+ default: undefined,
56
+ },
57
+ loading: {
58
+ type: Boolean,
59
+ default: false,
60
+ },
61
+ empty: {
62
+ type: Object as PropType<StatusImage>,
63
+ default: () => ({
64
+ text: "List is empty.",
65
+ }),
66
+ },
67
+ notfound: {
68
+ type: Object as PropType<StatusImage>,
69
+ default: () => ({
70
+ text: "Nothing found.",
71
+ }),
72
+ },
73
+ header: {
74
+ type: Boolean,
75
+ default: true,
76
+ },
77
+ footer: {
78
+ type: Boolean,
79
+ default: true,
80
+ },
81
+ activeFilterCount: {
82
+ type: Number,
83
+ default: 0,
84
+ },
85
+ selectedItemId: {
86
+ type: String,
87
+ default: undefined,
88
+ },
89
+ scrolling: {
90
+ type: Boolean,
91
+ default: false,
92
+ },
93
+ };
94
+
95
+ export const tableEmits = {
96
+ paginationClick: (page: number) => isNumber(page),
97
+ selectionChanged: (values: Record<string, boolean>) => isObject(values),
98
+ "search:change": (value: string) => isString(value),
99
+ headerClick: (value: Record<string, unknown>) => isObject(value),
100
+ itemClick: (item: { id?: string }) => isObject(item),
101
+ "scroll:ptr": () => true,
102
+ };
103
+
104
+ export type VcTableProps = ExtractTypes<typeof tableProps>;
105
+ export type VcTableEmits = typeof tableEmits;
41
106
 
42
107
  export interface VcTableSlots {
43
108
  header: () => VNode[];
44
109
  filters: (args: { closePanel: () => void }) => VNode[];
45
- "mobile-item": (args: {
46
- item: { [x: string]: any; id: string };
47
- }) => VNode[];
110
+ "mobile-item": (args: { item: { [x: string]: any; id: string } }) => VNode[];
48
111
  [key: `header_${string}`]: () => VNode[];
49
- [key: `item_${string}`]: (args: {
50
- item?: { [x: string]: any; id: string };
51
- cell?: ITableColumns;
52
- }) => VNode[];
112
+ [key: `item_${string}`]: (args: { item?: { [x: string]: any; id: string }; cell?: ITableColumns }) => VNode[];
53
113
  notfound: () => VNode[];
54
114
  empty: () => VNode[];
55
115
  footer: () => VNode[];