@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
@@ -33,17 +33,12 @@
33
33
  <script lang="ts" setup>
34
34
  import { computed, onBeforeUpdate, ref } from "vue";
35
35
  import { useRoute } from "vue-router";
36
- import {
37
- IBladeContainer,
38
- IBladeElement,
39
- IBladeEvent,
40
- IParentCallArgs,
41
- } from "./../../../../shared";
36
+ import { IBladeContainer, IBladeElement, IBladeEvent, IParentCallArgs } from "./../../../../shared";
42
37
 
43
38
  export interface Props {
44
39
  blades: IBladeContainer[];
45
40
  parentBladeOptions: Record<string, unknown>;
46
- parentBladeParam: string;
41
+ parentBladeParam?: string | undefined;
47
42
  }
48
43
 
49
44
  export interface Emits {
@@ -1 +1 @@
1
- export {default as useBladeNavigation} from './useBladeNavigation'
1
+ export { default as useBladeNavigation } from "./useBladeNavigation";
@@ -2,13 +2,7 @@ import { computed, ref, unref, watch, Ref } from "vue";
2
2
  import { isEqual } from "lodash-es";
3
3
  import { useRouter, useRoute, NavigationFailure } from "vue-router";
4
4
  import { usePermissions } from "./../../../../core/composables";
5
- import {
6
- ExtendedComponent,
7
- IBladeContainer,
8
- IBladeElement,
9
- IBladeEvent,
10
- IParentCallArgs,
11
- } from "./../../../../shared";
5
+ import { ExtendedComponent, IBladeContainer, IBladeElement, IBladeEvent, IParentCallArgs } from "./../../../../shared";
12
6
 
13
7
  interface IUseBladeNavigation {
14
8
  readonly blades: Ref<IBladeContainer[]>;
@@ -16,14 +10,7 @@ interface IUseBladeNavigation {
16
10
  readonly parentBladeParam: Ref<string>;
17
11
  bladesRefs: Ref<IBladeElement[]>;
18
12
  openBlade: (
19
- {
20
- parentBlade,
21
- component,
22
- param,
23
- bladeOptions,
24
- onOpen,
25
- onClose,
26
- }: IBladeEvent,
13
+ { parentBlade, component, param, bladeOptions, onOpen, onClose }: IBladeEvent,
27
14
  index?: number,
28
15
  navigationCb?: () => Promise<void | NavigationFailure>
29
16
  ) => void;
@@ -61,14 +48,7 @@ export default (): IUseBladeNavigation => {
61
48
  );
62
49
 
63
50
  async function openBlade(
64
- {
65
- parentBlade,
66
- component: blade,
67
- param,
68
- bladeOptions,
69
- onOpen,
70
- onClose,
71
- }: IBladeEvent,
51
+ { parentBlade, component: blade, param, bladeOptions, onOpen, onClose }: IBladeEvent,
72
52
  index?: number,
73
53
  navigationCb?: () => Promise<void | NavigationFailure>
74
54
  ) {
@@ -102,9 +82,7 @@ export default (): IUseBladeNavigation => {
102
82
  if (existingChild === undefined) {
103
83
  child.idx = index + 1;
104
84
  } else if (existingChild) {
105
- await closeBlade(
106
- blades.value.findIndex((x) => x.idx === existingChild.idx)
107
- );
85
+ await closeBlade(blades.value.findIndex((x) => x.idx === existingChild.idx));
108
86
  child.idx = existingChild.idx;
109
87
  }
110
88
 
@@ -118,10 +96,7 @@ export default (): IUseBladeNavigation => {
118
96
 
119
97
  isPrevented.value = false;
120
98
  for (let i = 0; i < children.length; i++) {
121
- if (
122
- children[i]?.onBeforeClose &&
123
- typeof children[i].onBeforeClose === "function"
124
- ) {
99
+ if (children[i]?.onBeforeClose && typeof children[i].onBeforeClose === "function") {
125
100
  const result = await children[i].onBeforeClose();
126
101
  if (result === false) {
127
102
  isPrevented.value = true;
@@ -172,18 +147,14 @@ export default (): IUseBladeNavigation => {
172
147
  }
173
148
 
174
149
  async function onParentCall(index: number, args: IParentCallArgs) {
175
- console.debug(
176
- `vc-app#onParentCall(${index}, { method: ${args.method} }) called.`
177
- );
150
+ console.debug(`vc-app#onParentCall(${index}, { method: ${args.method} }) called.`);
178
151
 
179
152
  if (index >= 0) {
180
153
  const currentParent = unref(bladesRefs.value[index]);
181
154
 
182
155
  if (currentParent) {
183
156
  if (args.method && typeof currentParent[args.method] === "function") {
184
- const method = currentParent[args.method] as (
185
- args: unknown
186
- ) => Promise<unknown>;
157
+ const method = currentParent[args.method] as (args: unknown) => Promise<unknown>;
187
158
  const result = await method(args.args);
188
159
  if (typeof args.callback === "function") {
189
160
  args.callback(result);
@@ -1,15 +1,8 @@
1
- import { App } from "vue";
1
+ import { createModule } from "../../core/plugins/modularity";
2
2
  import * as components from "./components";
3
3
 
4
- export default {
5
- install(app: App): void {
6
- // Register exported pages
7
- Object.entries(components).forEach(([componentName, component]) => {
8
- app.component(componentName, component);
9
- });
10
- },
11
- };
4
+ export default createModule(components);
12
5
 
13
6
  export * from "./components";
14
7
  export * from "./composables";
15
- export * from './types'
8
+ export * from "./types";
package/shared/index.ts CHANGED
@@ -1,15 +1,13 @@
1
1
  import { App } from "vue";
2
- import { default as AssetsDetails } from "./assets";
3
- import { default as VcAppSwitcher } from "./app-switcher";
4
- import { default as VcBladeNavigation } from "./blade-navigation";
5
-
6
- const components = [AssetsDetails, VcAppSwitcher, VcBladeNavigation];
7
-
8
- export function init(app: App): App {
9
- components.forEach((component) => app.use(component));
10
-
11
- return app;
12
- }
2
+ import { default as AssetsDetailsModule } from "./assets";
3
+ import { default as VcAppSwitcherModule } from "./app-switcher";
4
+ import { default as VcBladeNavigationModule } from "./blade-navigation";
5
+
6
+ export default {
7
+ install(app: App): void {
8
+ app.use(AssetsDetailsModule).use(VcAppSwitcherModule).use(VcBladeNavigationModule);
9
+ },
10
+ };
13
11
 
14
12
  export * from "./assets";
15
13
  export * from "./app-switcher";
@@ -1,7 +1,7 @@
1
1
  import { ComponentPublicInstance } from "vue";
2
- import { VcBadgeProps } from "./vc-badge-model";
2
+ import { VcBadgeEmits, VcBadgeProps } from "./vc-badge-model";
3
3
  import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Badge from "./vc-badge.vue";
5
- export const VcBadge: ComponentConstructor<
6
- ComponentPublicInstance<VcBadgeProps>
7
- > = Badge;
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ export const VcBadge: ComponentConstructor<ComponentPublicInstance<VcBadgeProps, any, any, any, any, VcBadgeEmits>> =
7
+ Badge;
@@ -1,20 +1,27 @@
1
+ import { ExtractTypes } from "./../../../types/ts-helpers";
1
2
  import { VNode } from "vue";
2
3
 
3
- export interface VcBadgeProps {
4
- /**
5
- * Badge active state
6
- * */
7
- active?: boolean | undefined;
8
- /**
9
- * Put component in disabled state
10
- * */
11
- disabled?: boolean | undefined;
12
- /**
13
- * Is badge clickable?
14
- * */
15
- clickable?: boolean | undefined;
16
- onClick?: (event: "click") => void;
17
- }
4
+ export const badgeProps = {
5
+ active: {
6
+ type: Boolean,
7
+ default: false,
8
+ },
9
+ disabled: {
10
+ type: Boolean,
11
+ default: false,
12
+ },
13
+ clickable: {
14
+ type: Boolean,
15
+ default: false,
16
+ },
17
+ };
18
+
19
+ export const badgeEmits = {
20
+ click: () => true,
21
+ };
22
+
23
+ export type VcBadgeProps = ExtractTypes<typeof badgeProps>;
24
+ export type VcBadgeEmits = typeof badgeEmits;
18
25
 
19
26
  export interface VcBadgeSlots {
20
27
  /**
@@ -16,16 +16,11 @@
16
16
  </template>
17
17
 
18
18
  <script lang="ts" setup>
19
- import {
20
- VcBadgeProps,
21
- } from "./vc-badge-model";
22
-
23
- const props = withDefaults(defineProps<VcBadgeProps>(), {
24
- active: false,
25
- disabled: false,
26
- clickable: true,
27
- });
28
- const emit = defineEmits(["click"]);
19
+ import { badgeProps, badgeEmits } from "./vc-badge-model";
20
+
21
+ const props = defineProps(badgeProps);
22
+
23
+ const emit = defineEmits(badgeEmits);
29
24
 
30
25
  function onClick(): void {
31
26
  if (props.clickable && !props.disabled) {
@@ -1,7 +1,7 @@
1
1
  import { ComponentPublicInstance } from "vue";
2
- import { VcButtonProps } from "./vc-button-model";
2
+ import { VcButtonEmits, VcButtonProps } from "./vc-button-model";
3
3
  import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Button from "./vc-button.vue";
5
- export const VcButton: ComponentConstructor<
6
- ComponentPublicInstance<VcButtonProps>
7
- > = Button;
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ export const VcButton: ComponentConstructor<ComponentPublicInstance<VcButtonProps, any, any, any, any, VcButtonEmits>> =
7
+ Button;
@@ -1,21 +1,36 @@
1
- import { VNode } from "vue";
1
+ import { ExtractTypes } from "./../../../types/ts-helpers";
2
+ import { VNode, PropType } from "vue";
2
3
 
3
- export interface VcButtonProps {
4
- icon?: string | undefined;
5
- variant?:
6
- | "primary"
7
- | "secondary"
8
- | "special"
9
- | "danger"
10
- | "widget"
11
- | "onlytext"
12
- | undefined;
13
- disabled?: boolean | undefined;
14
- small?: boolean | undefined;
15
- outline?: boolean | undefined;
16
- selected?: boolean | undefined;
17
- onClick?: () => void;
18
- }
4
+ export const buttonProps = {
5
+ icon: String,
6
+ variant: {
7
+ type: String as PropType<"primary" | "secondary" | "special" | "danger" | "widget" | "onlytext">,
8
+ default: "primary",
9
+ },
10
+ disabled: {
11
+ type: Boolean,
12
+ default: false,
13
+ },
14
+ small: {
15
+ type: Boolean,
16
+ default: false,
17
+ },
18
+ outline: {
19
+ type: Boolean,
20
+ default: false,
21
+ },
22
+ selected: {
23
+ type: Boolean,
24
+ default: false,
25
+ },
26
+ };
27
+
28
+ export const buttonEmits = {
29
+ click: () => true,
30
+ };
31
+
32
+ export type VcButtonProps = ExtractTypes<typeof buttonProps>;
33
+ export type VcButtonEmits = typeof buttonEmits;
19
34
 
20
35
  export interface VcButtonSlots {
21
36
  default: () => VNode[];
@@ -18,7 +18,10 @@
18
18
  :icon="icon"
19
19
  :size="small ? 'xs' : 's'"
20
20
  ></VcIcon>
21
- <span v-if="$slots['default']" class="vc-button__title">
21
+ <span
22
+ v-if="$slots['default']"
23
+ class="vc-button__title"
24
+ >
22
25
  <slot></slot>
23
26
  </span>
24
27
  </button>
@@ -26,22 +29,14 @@
26
29
 
27
30
  <script lang="ts" setup>
28
31
  import { VcIcon } from "./../../../components";
29
- import { VcButtonProps } from "./vc-button-model";
30
-
31
- const props = withDefaults(defineProps<VcButtonProps>(), {
32
- variant: "primary",
33
- disabled: false,
34
- small: false,
35
- outline: false,
36
- selected: false,
37
- });
38
-
39
- const emit = defineEmits(["click"]);
32
+ import { buttonProps, buttonEmits } from "./vc-button-model";
40
33
 
34
+ const props = defineProps(buttonProps);
35
+ const emit = defineEmits(buttonEmits);
41
36
  function onClick(e: Event): void {
42
37
  if (!props.disabled) {
43
38
  e.preventDefault();
44
- emit("click", e);
39
+ emit("click");
45
40
  }
46
41
  }
47
42
  </script>
@@ -1,7 +1,6 @@
1
1
  import { ComponentPublicInstance } from "vue";
2
- import { VcCardProps } from "./vc-card-model";
2
+ import { VcCardEmits, VcCardProps } from "./vc-card-model";
3
3
  import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Card from "./vc-card.vue";
5
- export const VcCard: ComponentConstructor<
6
- ComponentPublicInstance<VcCardProps>
7
- > = Card;
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ export const VcCard: ComponentConstructor<ComponentPublicInstance<VcCardProps, any, any, any, any, VcCardEmits>> = Card;
@@ -1,15 +1,35 @@
1
- import { VNode } from "vue";
1
+ import { VNode, PropType } from "vue";
2
+ import { ExtractTypes } from "./../../../types/ts-helpers";
3
+ import { isBoolean } from "./../../../utils";
2
4
 
3
- export interface VcCardProps {
4
- header?: string | undefined;
5
- icon?: string | undefined;
6
- isCollapsable?: boolean | undefined;
7
- isCollapsed?: boolean | undefined;
8
- fill?: boolean | undefined;
9
- variant?: "default" | "success" | "danger" | undefined;
10
- "onHeader:click"?: () => void;
11
- "onState:collapsed"?: (isCollapsedState: boolean) => void;
12
- }
5
+ export const cardProps = {
6
+ header: String,
7
+ icon: String,
8
+ isCollapsable: {
9
+ type: Boolean,
10
+ default: false,
11
+ },
12
+ isCollapsed: {
13
+ type: Boolean,
14
+ default: false,
15
+ },
16
+ fill: {
17
+ type: Boolean,
18
+ default: false,
19
+ },
20
+ variant: {
21
+ type: String as PropType<"default" | "success" | "danger">,
22
+ default: "default",
23
+ },
24
+ };
25
+
26
+ export const cardEmits = {
27
+ "header:click": () => true,
28
+ "state:collapsed": (isCollapsedState: boolean) => isBoolean(isCollapsedState),
29
+ };
30
+
31
+ export type VcCardProps = ExtractTypes<typeof cardProps>;
32
+ export type VcCardEmits = typeof cardEmits;
13
33
 
14
34
  export interface VcCardSlots {
15
35
  default: () => VNode[];
@@ -3,10 +3,22 @@
3
3
  class="vc-card"
4
4
  :class="[{ 'vc-card_collapsable': isCollapsable }, `vc-card_${variant}`]"
5
5
  >
6
- <div class="vc-card__header" v-if="header" @click="onHeaderClick">
7
- <VcIcon v-if="icon" class="vc-card__icon" :icon="icon" size="xl"></VcIcon>
6
+ <div
7
+ class="vc-card__header"
8
+ v-if="header"
9
+ @click="onHeaderClick"
10
+ >
11
+ <VcIcon
12
+ v-if="icon"
13
+ class="vc-card__icon"
14
+ :icon="icon"
15
+ size="xl"
16
+ ></VcIcon>
8
17
  <div class="vc-card__title">{{ header }}</div>
9
- <div v-if="$slots['actions']" class="vc-card__actions">
18
+ <div
19
+ v-if="$slots['actions']"
20
+ class="vc-card__actions"
21
+ >
10
22
  <slot name="actions"></slot>
11
23
  </div>
12
24
  <VcIcon
@@ -29,14 +41,11 @@
29
41
 
30
42
  <script lang="ts" setup>
31
43
  import { ref } from "vue";
32
- import { VcCardProps } from "./vc-card-model";
33
- const props = withDefaults(defineProps<VcCardProps>(), {
34
- isCollapsable: false,
35
- isCollapsed: false,
36
- fill: false,
37
- variant: "default",
38
- });
39
- const emit = defineEmits(["header:click", "state:collapsed"]);
44
+ import { cardProps, cardEmits } from "./vc-card-model";
45
+
46
+ const props = defineProps(cardProps);
47
+
48
+ const emit = defineEmits(cardEmits);
40
49
  const isCollapsedInternal = ref(props.isCollapsed);
41
50
 
42
51
  function onHeaderClick() {
@@ -1,7 +1,8 @@
1
1
  import { ComponentPublicInstance } from "vue";
2
- import { VcCheckboxProps } from "./vc-checkbox-model";
2
+ import { VcCheckboxEmits, VcCheckboxProps } from "./vc-checkbox-model";
3
3
  import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Checkbox from "./vc-checkbox.vue";
5
5
  export const VcCheckbox: ComponentConstructor<
6
- ComponentPublicInstance<VcCheckboxProps>
6
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
+ ComponentPublicInstance<VcCheckboxProps, any, any, any, any, VcCheckboxEmits>
7
8
  > = Checkbox;
@@ -1,13 +1,33 @@
1
1
  import { VNode } from "vue";
2
+ import { isBoolean } from "./../../../utils";
3
+ import { ExtractTypes } from "./../../../types/ts-helpers";
2
4
 
3
- export interface VcCheckboxProps {
4
- modelValue?: boolean | undefined;
5
- disabled?: boolean | undefined;
6
- required?: boolean | undefined;
7
- name?: string | undefined;
8
- errorMessage?: string | undefined;
9
- "onUpdate:modelValue"?: (value: boolean) => void;
10
- }
5
+ export const checkboxProps = {
6
+ modelValue: {
7
+ type: Boolean,
8
+ default: false,
9
+ },
10
+ disabled: {
11
+ type: Boolean,
12
+ default: false,
13
+ },
14
+ required: {
15
+ type: Boolean,
16
+ default: false,
17
+ },
18
+ name: {
19
+ type: String,
20
+ default: "Field",
21
+ },
22
+ errorMessage: String,
23
+ };
24
+
25
+ export const checkboxEmits = {
26
+ "update:modelValue": (value: boolean) => isBoolean(value),
27
+ };
28
+
29
+ export type VcCheckboxProps = ExtractTypes<typeof checkboxProps>;
30
+ export type VcCheckboxEmits = typeof checkboxEmits;
11
31
 
12
32
  export interface VcCheckboxSlots {
13
33
  default: () => VNode[];
@@ -1,5 +1,8 @@
1
1
  <template>
2
- <div class="vc-checkbox" :class="{ 'vc-checkbox_disabled': disabled }">
2
+ <div
3
+ class="vc-checkbox"
4
+ :class="{ 'vc-checkbox_disabled': disabled }"
5
+ >
3
6
  <label class="vc-checkbox__label">
4
7
  <input
5
8
  type="checkbox"
@@ -9,7 +12,10 @@
9
12
  @change="onChange"
10
13
  />
11
14
  <span class="vc-checkbox__checkmark"></span>
12
- <span v-if="$slots['default']" class="tw-ml-2">
15
+ <span
16
+ v-if="$slots['default']"
17
+ class="tw-ml-2"
18
+ >
13
19
  <slot></slot>
14
20
  </span>
15
21
  <span
@@ -19,7 +25,10 @@
19
25
  >
20
26
  </label>
21
27
 
22
- <slot v-if="errorMessage" name="error">
28
+ <slot
29
+ v-if="errorMessage"
30
+ name="error"
31
+ >
23
32
  <VcHint class="vc-checkbox__error tw-mt-1">
24
33
  {{ errorMessage }}
25
34
  </VcHint>
@@ -29,15 +38,10 @@
29
38
 
30
39
  <script lang="ts" setup>
31
40
  import { watch } from "vue";
32
- import { VcCheckboxProps } from "./vc-checkbox-model";
41
+ import { checkboxProps, checkboxEmits } from "./vc-checkbox-model";
33
42
 
34
- const props = withDefaults(defineProps<VcCheckboxProps>(), {
35
- modelValue: false,
36
- disabled: false,
37
- required: false,
38
- name: "Field",
39
- });
40
- const emit = defineEmits(["update:modelValue"]);
43
+ const props = defineProps(checkboxProps);
44
+ const emit = defineEmits(checkboxEmits);
41
45
 
42
46
  watch(
43
47
  () => props.modelValue,
@@ -2,5 +2,4 @@ import { ComponentPublicInstance } from "vue";
2
2
  import { VcColProps } from "./vc-col-model";
3
3
  import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Col from "./vc-col.vue";
5
- export const VcCol: ComponentConstructor<ComponentPublicInstance<VcColProps>> =
6
- Col;
5
+ export const VcCol: ComponentConstructor<ComponentPublicInstance<VcColProps>> = Col;
@@ -1,8 +1,14 @@
1
1
  import { VNode } from "vue";
2
+ import { ExtractTypes } from "./../../../types/ts-helpers";
2
3
 
3
- export interface VcColProps {
4
- size?: string | undefined;
5
- }
4
+ export const colProps = {
5
+ size: {
6
+ type: String,
7
+ default: "1",
8
+ },
9
+ };
10
+
11
+ export type VcColProps = ExtractTypes<typeof colProps>;
6
12
 
7
13
  export interface VcColSlots {
8
14
  default: () => VNode[];
@@ -8,11 +8,9 @@
8
8
  </template>
9
9
 
10
10
  <script lang="ts" setup>
11
- import { VcColProps } from "./vc-col-model";
11
+ import { colProps } from "./vc-col-model";
12
12
 
13
- withDefaults(defineProps<VcColProps>(), {
14
- size: "1",
15
- });
13
+ defineProps(colProps);
16
14
  </script>
17
15
 
18
16
  <style lang="scss">
@@ -1,7 +1,8 @@
1
1
  import { ComponentPublicInstance } from "vue";
2
- import { VcContainerProps } from "./vc-container-model";
2
+ import { VcContainerEmits, VcContainerProps } from "./vc-container-model";
3
3
  import { ComponentConstructor } from "./../../../types/ts-helpers";
4
4
  import Container from "./vc-container.vue";
5
5
  export const VcContainer: ComponentConstructor<
6
- ComponentPublicInstance<VcContainerProps>
6
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
+ ComponentPublicInstance<VcContainerProps, any, any, any, any, VcContainerEmits>
7
8
  > = Container;
@@ -1,12 +1,28 @@
1
- import {VNode} from "vue";
1
+ import { VNode } from "vue";
2
+ import { ExtractTypes } from "./../../../types/ts-helpers";
2
3
 
3
- export interface VcContainerProps {
4
- shadow?: boolean | undefined
5
- noPadding?: boolean | undefined
6
- usePtr?: boolean | undefined
7
- "onScroll:ptr"?: () => void
8
- }
4
+ export const containerProps = {
5
+ shadow: {
6
+ type: Boolean,
7
+ default: false,
8
+ },
9
+ noPadding: {
10
+ type: Boolean,
11
+ default: false,
12
+ },
13
+ usePtr: {
14
+ type: Boolean,
15
+ default: false,
16
+ },
17
+ };
18
+
19
+ export const containerEmits = {
20
+ "scroll:ptr": () => true,
21
+ };
22
+
23
+ export type VcContainerProps = ExtractTypes<typeof containerProps>;
24
+ export type VcContainerEmits = typeof containerEmits;
9
25
 
10
26
  export interface VcContainerSlots {
11
- default: () => VNode[];
27
+ default: () => VNode[];
12
28
  }