@vef-framework/components 1.0.5

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 (499) hide show
  1. package/README.md +27 -0
  2. package/dist/index.d.ts +65 -0
  3. package/dist/index.js +3 -0
  4. package/dist/internal/index.d.ts +1 -0
  5. package/dist/internal/index.js +3 -0
  6. package/dist/internal/utils.d.ts +9 -0
  7. package/dist/internal/utils.js +3 -0
  8. package/dist/vef-access-denied/access-denied-icon.d.ts +4 -0
  9. package/dist/vef-access-denied/access-denied-icon.js +3 -0
  10. package/dist/vef-access-denied/index.d.ts +5 -0
  11. package/dist/vef-access-denied/index.js +29 -0
  12. package/dist/vef-access-denied/props.d.ts +18 -0
  13. package/dist/vef-action-buttons/index.d.ts +6 -0
  14. package/dist/vef-action-buttons/index.js +3 -0
  15. package/dist/vef-action-buttons/props.d.ts +23 -0
  16. package/dist/vef-badge/index.d.ts +5 -0
  17. package/dist/vef-badge/index.js +3 -0
  18. package/dist/vef-badge/props.d.ts +28 -0
  19. package/dist/vef-bool/hooks/use-bool-instance.d.ts +6 -0
  20. package/dist/vef-bool/hooks/use-bool-instance.js +3 -0
  21. package/dist/vef-bool/index.d.ts +4 -0
  22. package/dist/vef-bool/index.js +3 -0
  23. package/dist/vef-bool/props.d.ts +63 -0
  24. package/dist/vef-button/components/base-button.d.ts +9 -0
  25. package/dist/vef-button/components/base-button.js +3 -0
  26. package/dist/vef-button/index.d.ts +4 -0
  27. package/dist/vef-button/index.js +3 -0
  28. package/dist/vef-button/props.d.ts +79 -0
  29. package/dist/vef-card/index.d.ts +5 -0
  30. package/dist/vef-card/index.js +3 -0
  31. package/dist/vef-card/props.d.ts +27 -0
  32. package/dist/vef-card-meta/index.d.ts +5 -0
  33. package/dist/vef-card-meta/index.js +3 -0
  34. package/dist/vef-card-meta/props.d.ts +7 -0
  35. package/dist/vef-checkbox/hooks/use-checkbox-instance.d.ts +11 -0
  36. package/dist/vef-checkbox/hooks/use-checkbox-instance.js +3 -0
  37. package/dist/vef-checkbox/hooks/use-data-options.d.ts +34 -0
  38. package/dist/vef-checkbox/hooks/use-data-options.js +3 -0
  39. package/dist/vef-checkbox/index.d.ts +6 -0
  40. package/dist/vef-checkbox/index.js +5 -0
  41. package/dist/vef-checkbox/props.d.ts +41 -0
  42. package/dist/vef-col/index.d.ts +5 -0
  43. package/dist/vef-col/index.js +3 -0
  44. package/dist/vef-col/props.d.ts +5 -0
  45. package/dist/vef-color-picker/index.d.ts +5 -0
  46. package/dist/vef-color-picker/index.js +3 -0
  47. package/dist/vef-color-picker/props.d.ts +28 -0
  48. package/dist/vef-compact/index.d.ts +5 -0
  49. package/dist/vef-compact/index.js +3 -0
  50. package/dist/vef-compact/props.d.ts +11 -0
  51. package/dist/vef-config-provider/fonts/din/bold.woff2.js +3 -0
  52. package/dist/vef-config-provider/fonts/din/regular.woff2.js +3 -0
  53. package/dist/vef-config-provider/hooks/use-ui-config.d.ts +46 -0
  54. package/dist/vef-config-provider/hooks/use-ui-config.js +3 -0
  55. package/dist/vef-config-provider/index.d.ts +5 -0
  56. package/dist/vef-config-provider/index.js +111 -0
  57. package/dist/vef-config-provider/props.d.ts +24 -0
  58. package/dist/vef-config-provider/reset-style.d.ts +4 -0
  59. package/dist/vef-config-provider/reset-style.js +257 -0
  60. package/dist/vef-config-provider/store.d.ts +12 -0
  61. package/dist/vef-config-provider/store.js +3 -0
  62. package/dist/vef-container/index.d.ts +5 -0
  63. package/dist/vef-container/index.js +3 -0
  64. package/dist/vef-container/props.d.ts +6 -0
  65. package/dist/vef-crud-page/components/crud-actions.d.ts +21 -0
  66. package/dist/vef-crud-page/components/crud-actions.js +3 -0
  67. package/dist/vef-crud-page/components/crud-filter.d.ts +31 -0
  68. package/dist/vef-crud-page/components/crud-filter.js +3 -0
  69. package/dist/vef-crud-page/components/crud-footer.d.ts +31 -0
  70. package/dist/vef-crud-page/components/crud-footer.js +9 -0
  71. package/dist/vef-crud-page/components/crud-form-modal.d.ts +18 -0
  72. package/dist/vef-crud-page/components/crud-form-modal.js +3 -0
  73. package/dist/vef-crud-page/components/crud-header.d.ts +32 -0
  74. package/dist/vef-crud-page/components/crud-header.js +3 -0
  75. package/dist/vef-crud-page/components/crud-table.d.ts +57 -0
  76. package/dist/vef-crud-page/components/crud-table.js +3 -0
  77. package/dist/vef-crud-page/hooks/use-action-buttons.d.ts +16 -0
  78. package/dist/vef-crud-page/hooks/use-action-buttons.js +3 -0
  79. package/dist/vef-crud-page/hooks/use-crud-context.d.ts +8 -0
  80. package/dist/vef-crud-page/hooks/use-crud-context.js +3 -0
  81. package/dist/vef-crud-page/hooks/use-crud-schema.d.ts +17 -0
  82. package/dist/vef-crud-page/hooks/use-crud-schema.js +3 -0
  83. package/dist/vef-crud-page/hooks/use-operation-buttons.d.ts +11 -0
  84. package/dist/vef-crud-page/hooks/use-operation-buttons.js +3 -0
  85. package/dist/vef-crud-page/index.d.ts +6 -0
  86. package/dist/vef-crud-page/index.js +3 -0
  87. package/dist/vef-crud-page/props.d.ts +84 -0
  88. package/dist/vef-crud-page/store.d.ts +119 -0
  89. package/dist/vef-crud-page/store.js +3 -0
  90. package/dist/vef-crud-page/types.d.ts +173 -0
  91. package/dist/vef-divider/index.d.ts +5 -0
  92. package/dist/vef-divider/index.js +3 -0
  93. package/dist/vef-divider/props.d.ts +25 -0
  94. package/dist/vef-drawer/components/action-button-wrapper.d.ts +14 -0
  95. package/dist/vef-drawer/components/action-button-wrapper.js +3 -0
  96. package/dist/vef-drawer/components/button-props.d.ts +15 -0
  97. package/dist/vef-drawer/components/button-props.js +2 -0
  98. package/dist/vef-drawer/components/cancel-action-button.d.ts +4 -0
  99. package/dist/vef-drawer/components/cancel-action-button.js +3 -0
  100. package/dist/vef-drawer/components/ok-action-button.d.ts +4 -0
  101. package/dist/vef-drawer/components/ok-action-button.js +3 -0
  102. package/dist/vef-drawer/context.d.ts +27 -0
  103. package/dist/vef-drawer/context.js +3 -0
  104. package/dist/vef-drawer/index.d.ts +5 -0
  105. package/dist/vef-drawer/index.js +10 -0
  106. package/dist/vef-drawer/props.d.ts +97 -0
  107. package/dist/vef-dropdown/index.d.ts +4 -0
  108. package/dist/vef-dropdown/index.js +3 -0
  109. package/dist/vef-dropdown/props.d.ts +68 -0
  110. package/dist/vef-empty/index.d.ts +5 -0
  111. package/dist/vef-empty/index.js +3 -0
  112. package/dist/vef-empty/props.d.ts +7 -0
  113. package/dist/vef-empty-placeholder/index.d.ts +5 -0
  114. package/dist/vef-empty-placeholder/index.js +7 -0
  115. package/dist/vef-empty-placeholder/props.d.ts +6 -0
  116. package/dist/vef-error/error-icon.d.ts +4 -0
  117. package/dist/vef-error/error-icon.js +3 -0
  118. package/dist/vef-error/index.d.ts +5 -0
  119. package/dist/vef-error/index.js +30 -0
  120. package/dist/vef-error/props.d.ts +18 -0
  121. package/dist/vef-filter/components/action-buttons.d.ts +3 -0
  122. package/dist/vef-filter/components/action-buttons.js +21 -0
  123. package/dist/vef-filter/components/advanced-filter.d.ts +13 -0
  124. package/dist/vef-filter/components/advanced-filter.js +11 -0
  125. package/dist/vef-filter/components/basic-filter.d.ts +14 -0
  126. package/dist/vef-filter/components/basic-filter.js +21 -0
  127. package/dist/vef-filter/components/fields/index.d.ts +9 -0
  128. package/dist/vef-filter/components/fields/index.js +3 -0
  129. package/dist/vef-filter/components/fields/input-number.d.ts +4 -0
  130. package/dist/vef-filter/components/fields/input-number.js +3 -0
  131. package/dist/vef-filter/components/fields/input.d.ts +4 -0
  132. package/dist/vef-filter/components/fields/input.js +3 -0
  133. package/dist/vef-filter/components/fields/props.d.ts +32 -0
  134. package/dist/vef-filter/components/filter-field.d.ts +4 -0
  135. package/dist/vef-filter/components/filter-field.js +3 -0
  136. package/dist/vef-filter/components/filter-item.d.ts +15 -0
  137. package/dist/vef-filter/components/filter-item.js +3 -0
  138. package/dist/vef-filter/event.d.ts +12 -0
  139. package/dist/vef-filter/event.js +3 -0
  140. package/dist/vef-filter/helper.d.ts +10 -0
  141. package/dist/vef-filter/helper.js +3 -0
  142. package/dist/vef-filter/hooks/use-action-handlers.d.ts +20 -0
  143. package/dist/vef-filter/hooks/use-action-handlers.js +3 -0
  144. package/dist/vef-filter/hooks/use-computed-values.d.ts +42 -0
  145. package/dist/vef-filter/hooks/use-computed-values.js +3 -0
  146. package/dist/vef-filter/hooks/use-filter-context.d.ts +8 -0
  147. package/dist/vef-filter/hooks/use-filter-context.js +3 -0
  148. package/dist/vef-filter/hooks/use-filter-initialization.d.ts +7 -0
  149. package/dist/vef-filter/hooks/use-filter-initialization.js +3 -0
  150. package/dist/vef-filter/hooks/use-filter-instance.d.ts +10 -0
  151. package/dist/vef-filter/hooks/use-filter-instance.js +3 -0
  152. package/dist/vef-filter/hooks/use-filter-items.d.ts +13 -0
  153. package/dist/vef-filter/hooks/use-filter-items.js +3 -0
  154. package/dist/vef-filter/hooks/use-filter-values-change.d.ts +11 -0
  155. package/dist/vef-filter/hooks/use-filter-values-change.js +3 -0
  156. package/dist/vef-filter/hooks/use-label-config.d.ts +14 -0
  157. package/dist/vef-filter/hooks/use-label-config.js +3 -0
  158. package/dist/vef-filter/index.d.ts +8 -0
  159. package/dist/vef-filter/index.js +10 -0
  160. package/dist/vef-filter/props.d.ts +106 -0
  161. package/dist/vef-filter/store.d.ts +77 -0
  162. package/dist/vef-filter/store.js +3 -0
  163. package/dist/vef-filter/types.d.ts +224 -0
  164. package/dist/vef-flex/index.d.ts +5 -0
  165. package/dist/vef-flex/index.js +3 -0
  166. package/dist/vef-flex/props.d.ts +12 -0
  167. package/dist/vef-float-button/index.d.ts +5 -0
  168. package/dist/vef-float-button/index.js +3 -0
  169. package/dist/vef-float-button/props.d.ts +26 -0
  170. package/dist/vef-float-button-group/index.d.ts +5 -0
  171. package/dist/vef-float-button-group/index.js +3 -0
  172. package/dist/vef-float-button-group/props.d.ts +11 -0
  173. package/dist/vef-form/components/fields/index.d.ts +10 -0
  174. package/dist/vef-form/components/fields/index.js +3 -0
  175. package/dist/vef-form/components/fields/input-number.d.ts +5 -0
  176. package/dist/vef-form/components/fields/input-number.js +3 -0
  177. package/dist/vef-form/components/fields/input.d.ts +5 -0
  178. package/dist/vef-form/components/fields/input.js +3 -0
  179. package/dist/vef-form/components/fields/props.d.ts +33 -0
  180. package/dist/vef-form/components/form-actions.d.ts +20 -0
  181. package/dist/vef-form/components/form-actions.js +5 -0
  182. package/dist/vef-form/components/form-content.d.ts +18 -0
  183. package/dist/vef-form/components/form-content.js +6 -0
  184. package/dist/vef-form/components/form-field.d.ts +5 -0
  185. package/dist/vef-form/components/form-field.js +3 -0
  186. package/dist/vef-form/components/form-group.d.ts +22 -0
  187. package/dist/vef-form/components/form-group.js +13 -0
  188. package/dist/vef-form/components/form-hidden-item.d.ts +14 -0
  189. package/dist/vef-form/components/form-hidden-item.js +3 -0
  190. package/dist/vef-form/components/form-item.d.ts +18 -0
  191. package/dist/vef-form/components/form-item.js +3 -0
  192. package/dist/vef-form/components/form-row.d.ts +26 -0
  193. package/dist/vef-form/components/form-row.js +3 -0
  194. package/dist/vef-form/event.d.ts +15 -0
  195. package/dist/vef-form/event.js +3 -0
  196. package/dist/vef-form/helper.d.ts +11 -0
  197. package/dist/vef-form/helper.js +3 -0
  198. package/dist/vef-form/hooks/use-action-handlers.d.ts +14 -0
  199. package/dist/vef-form/hooks/use-action-handlers.js +3 -0
  200. package/dist/vef-form/hooks/use-columns-layout.d.ts +12 -0
  201. package/dist/vef-form/hooks/use-columns-layout.js +3 -0
  202. package/dist/vef-form/hooks/use-computed-values.d.ts +42 -0
  203. package/dist/vef-form/hooks/use-computed-values.js +3 -0
  204. package/dist/vef-form/hooks/use-form-context.d.ts +6 -0
  205. package/dist/vef-form/hooks/use-form-context.js +3 -0
  206. package/dist/vef-form/hooks/use-form-initialization.d.ts +14 -0
  207. package/dist/vef-form/hooks/use-form-initialization.js +3 -0
  208. package/dist/vef-form/hooks/use-form-instance.d.ts +10 -0
  209. package/dist/vef-form/hooks/use-form-instance.js +3 -0
  210. package/dist/vef-form/hooks/use-form-values-change.d.ts +11 -0
  211. package/dist/vef-form/hooks/use-form-values-change.js +3 -0
  212. package/dist/vef-form/hooks/use-label-width.d.ts +9 -0
  213. package/dist/vef-form/hooks/use-label-width.js +3 -0
  214. package/dist/vef-form/index.d.ts +8 -0
  215. package/dist/vef-form/index.js +5 -0
  216. package/dist/vef-form/props.d.ts +158 -0
  217. package/dist/vef-form/store.d.ts +89 -0
  218. package/dist/vef-form/store.js +3 -0
  219. package/dist/vef-form/types.d.ts +335 -0
  220. package/dist/vef-form/validation-rules.d.ts +175 -0
  221. package/dist/vef-form/validation-rules.js +3 -0
  222. package/dist/vef-form-drawer/index.d.ts +9 -0
  223. package/dist/vef-form-drawer/index.js +3 -0
  224. package/dist/vef-form-drawer/props.d.ts +17 -0
  225. package/dist/vef-form-modal/index.d.ts +9 -0
  226. package/dist/vef-form-modal/index.js +3 -0
  227. package/dist/vef-form-modal/props.d.ts +20 -0
  228. package/dist/vef-grid/index.d.ts +5 -0
  229. package/dist/vef-grid/index.js +14 -0
  230. package/dist/vef-grid/props.d.ts +25 -0
  231. package/dist/vef-grid/props.js +3 -0
  232. package/dist/vef-grid-item/index.d.ts +5 -0
  233. package/dist/vef-grid-item/index.js +3 -0
  234. package/dist/vef-grid-item/props.d.ts +34 -0
  235. package/dist/vef-icon/index.d.ts +4 -0
  236. package/dist/vef-icon/index.js +3 -0
  237. package/dist/vef-icon/props.d.ts +12 -0
  238. package/dist/vef-input/hooks/use-input-instance.d.ts +12 -0
  239. package/dist/vef-input/hooks/use-input-instance.js +3 -0
  240. package/dist/vef-input/index.d.ts +4 -0
  241. package/dist/vef-input/index.js +3 -0
  242. package/dist/vef-input/props.d.ts +67 -0
  243. package/dist/vef-input-number/hooks/use-input-number-instance.d.ts +12 -0
  244. package/dist/vef-input-number/hooks/use-input-number-instance.js +3 -0
  245. package/dist/vef-input-number/index.d.ts +4 -0
  246. package/dist/vef-input-number/index.js +3 -0
  247. package/dist/vef-input-number/props.d.ts +124 -0
  248. package/dist/vef-loading-placeholder/index.d.ts +5 -0
  249. package/dist/vef-loading-placeholder/index.js +7 -0
  250. package/dist/vef-loading-placeholder/props.d.ts +6 -0
  251. package/dist/vef-login/index.d.ts +5 -0
  252. package/dist/vef-login/index.js +53 -0
  253. package/dist/vef-login/login-icon.d.ts +4 -0
  254. package/dist/vef-login/login-icon.js +3 -0
  255. package/dist/vef-login/props.d.ts +57 -0
  256. package/dist/vef-modal/components/action-button-wrapper.d.ts +14 -0
  257. package/dist/vef-modal/components/action-button-wrapper.js +3 -0
  258. package/dist/vef-modal/components/button-props.d.ts +15 -0
  259. package/dist/vef-modal/components/button-props.js +2 -0
  260. package/dist/vef-modal/components/cancel-action-button.d.ts +4 -0
  261. package/dist/vef-modal/components/cancel-action-button.js +3 -0
  262. package/dist/vef-modal/components/ok-action-button.d.ts +4 -0
  263. package/dist/vef-modal/components/ok-action-button.js +3 -0
  264. package/dist/vef-modal/context.d.ts +27 -0
  265. package/dist/vef-modal/context.js +3 -0
  266. package/dist/vef-modal/index.d.ts +5 -0
  267. package/dist/vef-modal/index.js +6 -0
  268. package/dist/vef-modal/props.d.ts +88 -0
  269. package/dist/vef-not-found/index.d.ts +5 -0
  270. package/dist/vef-not-found/index.js +30 -0
  271. package/dist/vef-not-found/not-found-icon.d.ts +4 -0
  272. package/dist/vef-not-found/not-found-icon.js +3 -0
  273. package/dist/vef-not-found/props.d.ts +18 -0
  274. package/dist/vef-page/index.d.ts +5 -0
  275. package/dist/vef-page/index.js +59 -0
  276. package/dist/vef-page/props.d.ts +29 -0
  277. package/dist/vef-pagination/index.d.ts +4 -0
  278. package/dist/vef-pagination/index.js +3 -0
  279. package/dist/vef-pagination/props.d.ts +59 -0
  280. package/dist/vef-pagination/props.js +3 -0
  281. package/dist/vef-paragraph/index.d.ts +5 -0
  282. package/dist/vef-paragraph/index.js +3 -0
  283. package/dist/vef-paragraph/props.d.ts +55 -0
  284. package/dist/vef-password/hooks/use-password-instance.d.ts +13 -0
  285. package/dist/vef-password/hooks/use-password-instance.js +3 -0
  286. package/dist/vef-password/index.d.ts +4 -0
  287. package/dist/vef-password/index.js +3 -0
  288. package/dist/vef-password/props.d.ts +58 -0
  289. package/dist/vef-popconfirm/index.d.ts +5 -0
  290. package/dist/vef-popconfirm/index.js +3 -0
  291. package/dist/vef-popconfirm/props.d.ts +33 -0
  292. package/dist/vef-popover/index.d.ts +5 -0
  293. package/dist/vef-popover/index.js +3 -0
  294. package/dist/vef-popover/props.d.ts +29 -0
  295. package/dist/vef-radio/hooks/use-data-options.d.ts +35 -0
  296. package/dist/vef-radio/hooks/use-data-options.js +3 -0
  297. package/dist/vef-radio/hooks/use-radio-instance.d.ts +11 -0
  298. package/dist/vef-radio/hooks/use-radio-instance.js +3 -0
  299. package/dist/vef-radio/index.d.ts +7 -0
  300. package/dist/vef-radio/index.js +5 -0
  301. package/dist/vef-radio/props.d.ts +59 -0
  302. package/dist/vef-rate/hooks/use-rate-instance.d.ts +12 -0
  303. package/dist/vef-rate/hooks/use-rate-instance.js +3 -0
  304. package/dist/vef-rate/index.d.ts +4 -0
  305. package/dist/vef-rate/index.js +3 -0
  306. package/dist/vef-rate/props.d.ts +25 -0
  307. package/dist/vef-responsive-container/index.d.ts +4 -0
  308. package/dist/vef-responsive-container/index.js +7 -0
  309. package/dist/vef-responsive-container/props.d.ts +21 -0
  310. package/dist/vef-responsive-item/index.d.ts +4 -0
  311. package/dist/vef-responsive-item/index.js +5 -0
  312. package/dist/vef-responsive-item/props.d.ts +12 -0
  313. package/dist/vef-ribbon/index.d.ts +5 -0
  314. package/dist/vef-ribbon/index.js +3 -0
  315. package/dist/vef-ribbon/props.d.ts +15 -0
  316. package/dist/vef-row/index.d.ts +5 -0
  317. package/dist/vef-row/index.js +3 -0
  318. package/dist/vef-row/props.d.ts +7 -0
  319. package/dist/vef-scroll-area/components/scrollbar.d.ts +2 -0
  320. package/dist/vef-scroll-area/components/scrollbar.js +34 -0
  321. package/dist/vef-scroll-area/index.d.ts +4 -0
  322. package/dist/vef-scroll-area/index.js +10 -0
  323. package/dist/vef-scroll-area/props.d.ts +24 -0
  324. package/dist/vef-select/components/option.d.ts +7 -0
  325. package/dist/vef-select/components/option.js +11 -0
  326. package/dist/vef-select/hooks/use-data-options.d.ts +37 -0
  327. package/dist/vef-select/hooks/use-data-options.js +3 -0
  328. package/dist/vef-select/hooks/use-field-names.d.ts +9 -0
  329. package/dist/vef-select/hooks/use-field-names.js +3 -0
  330. package/dist/vef-select/hooks/use-label-render.d.ts +11 -0
  331. package/dist/vef-select/hooks/use-label-render.js +10 -0
  332. package/dist/vef-select/hooks/use-option-render.d.ts +11 -0
  333. package/dist/vef-select/hooks/use-option-render.js +3 -0
  334. package/dist/vef-select/hooks/use-select-instance.d.ts +11 -0
  335. package/dist/vef-select/hooks/use-select-instance.js +3 -0
  336. package/dist/vef-select/index.d.ts +7 -0
  337. package/dist/vef-select/index.js +3 -0
  338. package/dist/vef-select/props.d.ts +153 -0
  339. package/dist/vef-slider/hooks/use-slider-instance.d.ts +12 -0
  340. package/dist/vef-slider/hooks/use-slider-instance.js +3 -0
  341. package/dist/vef-slider/index.d.ts +4 -0
  342. package/dist/vef-slider/index.js +3 -0
  343. package/dist/vef-slider/props.d.ts +72 -0
  344. package/dist/vef-sortable-list/components/overlay-item.d.ts +9 -0
  345. package/dist/vef-sortable-list/components/overlay-item.js +7 -0
  346. package/dist/vef-sortable-list/components/sortable-item.d.ts +21 -0
  347. package/dist/vef-sortable-list/components/sortable-item.js +7 -0
  348. package/dist/vef-sortable-list/hooks/use-merged-items.d.ts +10 -0
  349. package/dist/vef-sortable-list/hooks/use-merged-items.js +3 -0
  350. package/dist/vef-sortable-list/index.d.ts +7 -0
  351. package/dist/vef-sortable-list/index.js +3 -0
  352. package/dist/vef-sortable-list/props.d.ts +77 -0
  353. package/dist/vef-space/index.d.ts +5 -0
  354. package/dist/vef-space/index.js +3 -0
  355. package/dist/vef-space/props.d.ts +12 -0
  356. package/dist/vef-spin/index.d.ts +5 -0
  357. package/dist/vef-spin/index.js +3 -0
  358. package/dist/vef-spin/props.d.ts +12 -0
  359. package/dist/vef-splitter/index.d.ts +5 -0
  360. package/dist/vef-splitter/index.js +3 -0
  361. package/dist/vef-splitter/props.d.ts +16 -0
  362. package/dist/vef-splitter-panel/index.d.ts +5 -0
  363. package/dist/vef-splitter-panel/index.js +3 -0
  364. package/dist/vef-splitter-panel/props.d.ts +6 -0
  365. package/dist/vef-status/index.d.ts +5 -0
  366. package/dist/vef-status/index.js +3 -0
  367. package/dist/vef-status/props.d.ts +17 -0
  368. package/dist/vef-table/components/columns/bool.d.ts +5 -0
  369. package/dist/vef-table/components/columns/bool.js +3 -0
  370. package/dist/vef-table/components/columns/code.d.ts +4 -0
  371. package/dist/vef-table/components/columns/code.js +3 -0
  372. package/dist/vef-table/components/columns/data-dictionary.d.ts +4 -0
  373. package/dist/vef-table/components/columns/data-dictionary.js +3 -0
  374. package/dist/vef-table/components/columns/enum.d.ts +4 -0
  375. package/dist/vef-table/components/columns/enum.js +3 -0
  376. package/dist/vef-table/components/columns/file.d.ts +4 -0
  377. package/dist/vef-table/components/columns/file.js +3 -0
  378. package/dist/vef-table/components/columns/icon.d.ts +4 -0
  379. package/dist/vef-table/components/columns/icon.js +3 -0
  380. package/dist/vef-table/components/columns/id.d.ts +4 -0
  381. package/dist/vef-table/components/columns/id.js +3 -0
  382. package/dist/vef-table/components/columns/image.d.ts +4 -0
  383. package/dist/vef-table/components/columns/image.js +3 -0
  384. package/dist/vef-table/components/columns/index.d.ts +31 -0
  385. package/dist/vef-table/components/columns/index.js +3 -0
  386. package/dist/vef-table/components/columns/markdown.d.ts +4 -0
  387. package/dist/vef-table/components/columns/markdown.js +3 -0
  388. package/dist/vef-table/components/columns/number.d.ts +4 -0
  389. package/dist/vef-table/components/columns/number.js +3 -0
  390. package/dist/vef-table/components/columns/props.d.ts +24 -0
  391. package/dist/vef-table/components/columns/render.d.ts +4 -0
  392. package/dist/vef-table/components/columns/render.js +3 -0
  393. package/dist/vef-table/components/columns/rich-text.d.ts +4 -0
  394. package/dist/vef-table/components/columns/rich-text.js +3 -0
  395. package/dist/vef-table/components/columns/text.d.ts +4 -0
  396. package/dist/vef-table/components/columns/text.js +3 -0
  397. package/dist/vef-table/components/columns-settings.d.ts +2 -0
  398. package/dist/vef-table/components/columns-settings.js +54 -0
  399. package/dist/vef-table/components/operation-buttons.d.ts +22 -0
  400. package/dist/vef-table/components/operation-buttons.js +12 -0
  401. package/dist/vef-table/components/settings-icon.d.ts +2 -0
  402. package/dist/vef-table/components/settings-icon.js +5 -0
  403. package/dist/vef-table/components/table-footer.d.ts +34 -0
  404. package/dist/vef-table/components/table-footer.js +19 -0
  405. package/dist/vef-table/helper.d.ts +12 -0
  406. package/dist/vef-table/helper.js +3 -0
  407. package/dist/vef-table/hooks/use-computed-batch-buttons.d.ts +13 -0
  408. package/dist/vef-table/hooks/use-computed-batch-buttons.js +3 -0
  409. package/dist/vef-table/hooks/use-computed-columns.d.ts +10 -0
  410. package/dist/vef-table/hooks/use-computed-columns.js +3 -0
  411. package/dist/vef-table/hooks/use-computed-values.d.ts +45 -0
  412. package/dist/vef-table/hooks/use-computed-values.js +3 -0
  413. package/dist/vef-table/hooks/use-data.d.ts +11 -0
  414. package/dist/vef-table/hooks/use-data.js +3 -0
  415. package/dist/vef-table/hooks/use-default-column-configs.d.ts +9 -0
  416. package/dist/vef-table/hooks/use-default-column-configs.js +3 -0
  417. package/dist/vef-table/hooks/use-display-value.d.ts +32 -0
  418. package/dist/vef-table/hooks/use-display-value.js +3 -0
  419. package/dist/vef-table/hooks/use-helper-columns.d.ts +6 -0
  420. package/dist/vef-table/hooks/use-helper-columns.js +3 -0
  421. package/dist/vef-table/hooks/use-merged-value.d.ts +10 -0
  422. package/dist/vef-table/hooks/use-merged-value.js +3 -0
  423. package/dist/vef-table/hooks/use-operation-column-width.d.ts +11 -0
  424. package/dist/vef-table/hooks/use-operation-column-width.js +3 -0
  425. package/dist/vef-table/hooks/use-pagination-props.d.ts +17 -0
  426. package/dist/vef-table/hooks/use-pagination-props.js +3 -0
  427. package/dist/vef-table/hooks/use-row-props.d.ts +11 -0
  428. package/dist/vef-table/hooks/use-row-props.js +3 -0
  429. package/dist/vef-table/hooks/use-row-selection-config.d.ts +11 -0
  430. package/dist/vef-table/hooks/use-row-selection-config.js +3 -0
  431. package/dist/vef-table/hooks/use-table-columns.d.ts +12 -0
  432. package/dist/vef-table/hooks/use-table-columns.js +3 -0
  433. package/dist/vef-table/hooks/use-table-context.d.ts +9 -0
  434. package/dist/vef-table/hooks/use-table-context.js +3 -0
  435. package/dist/vef-table/hooks/use-table-instance.d.ts +10 -0
  436. package/dist/vef-table/hooks/use-table-instance.js +3 -0
  437. package/dist/vef-table/hooks/use-table-summary.d.ts +10 -0
  438. package/dist/vef-table/hooks/use-table-summary.js +3 -0
  439. package/dist/vef-table/hooks/use-table-width.d.ts +9 -0
  440. package/dist/vef-table/hooks/use-table-width.js +3 -0
  441. package/dist/vef-table/index.d.ts +7 -0
  442. package/dist/vef-table/index.js +56 -0
  443. package/dist/vef-table/props.d.ts +330 -0
  444. package/dist/vef-table/store.d.ts +21 -0
  445. package/dist/vef-table/store.js +3 -0
  446. package/dist/vef-table/types.d.ts +481 -0
  447. package/dist/vef-tabs/index.d.ts +5 -0
  448. package/dist/vef-tabs/index.js +3 -0
  449. package/dist/vef-tabs/props.d.ts +12 -0
  450. package/dist/vef-tag/index.d.ts +5 -0
  451. package/dist/vef-tag/index.js +3 -0
  452. package/dist/vef-tag/props.d.ts +20 -0
  453. package/dist/vef-temporal-picker/hooks/use-dayjs-value.d.ts +10 -0
  454. package/dist/vef-temporal-picker/hooks/use-dayjs-value.js +3 -0
  455. package/dist/vef-temporal-picker/hooks/use-temporal-formats.d.ts +8 -0
  456. package/dist/vef-temporal-picker/hooks/use-temporal-formats.js +3 -0
  457. package/dist/vef-temporal-picker/hooks/use-temporal-limit.d.ts +13 -0
  458. package/dist/vef-temporal-picker/hooks/use-temporal-limit.js +3 -0
  459. package/dist/vef-temporal-picker/hooks/use-temporal-picker-instance.d.ts +12 -0
  460. package/dist/vef-temporal-picker/hooks/use-temporal-picker-instance.js +3 -0
  461. package/dist/vef-temporal-picker/index.d.ts +5 -0
  462. package/dist/vef-temporal-picker/index.js +3 -0
  463. package/dist/vef-temporal-picker/props.d.ts +101 -0
  464. package/dist/vef-temporal-range-picker/hooks/use-dayjs-values.d.ts +10 -0
  465. package/dist/vef-temporal-range-picker/hooks/use-dayjs-values.js +3 -0
  466. package/dist/vef-temporal-range-picker/hooks/use-temporal-formats.d.ts +8 -0
  467. package/dist/vef-temporal-range-picker/hooks/use-temporal-formats.js +3 -0
  468. package/dist/vef-temporal-range-picker/hooks/use-temporal-limit.d.ts +13 -0
  469. package/dist/vef-temporal-range-picker/hooks/use-temporal-limit.js +3 -0
  470. package/dist/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.d.ts +12 -0
  471. package/dist/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.js +3 -0
  472. package/dist/vef-temporal-range-picker/index.d.ts +5 -0
  473. package/dist/vef-temporal-range-picker/index.js +3 -0
  474. package/dist/vef-temporal-range-picker/props.d.ts +82 -0
  475. package/dist/vef-temporal-range-picker/props.js +3 -0
  476. package/dist/vef-text/index.d.ts +5 -0
  477. package/dist/vef-text/index.js +3 -0
  478. package/dist/vef-text/props.d.ts +47 -0
  479. package/dist/vef-textarea/hooks/use-textarea-instance.d.ts +13 -0
  480. package/dist/vef-textarea/hooks/use-textarea-instance.js +3 -0
  481. package/dist/vef-textarea/index.d.ts +4 -0
  482. package/dist/vef-textarea/index.js +3 -0
  483. package/dist/vef-textarea/props.d.ts +58 -0
  484. package/dist/vef-title/index.d.ts +5 -0
  485. package/dist/vef-title/index.js +15 -0
  486. package/dist/vef-title/props.d.ts +39 -0
  487. package/dist/vef-tooltip/index.d.ts +5 -0
  488. package/dist/vef-tooltip/index.js +3 -0
  489. package/dist/vef-tooltip/props.d.ts +30 -0
  490. package/dist/vef-tree-select/hooks/use-change-handler.d.ts +10 -0
  491. package/dist/vef-tree-select/hooks/use-change-handler.js +3 -0
  492. package/dist/vef-tree-select/hooks/use-data-options.d.ts +36 -0
  493. package/dist/vef-tree-select/hooks/use-data-options.js +3 -0
  494. package/dist/vef-tree-select/hooks/use-tree-select-instance.d.ts +11 -0
  495. package/dist/vef-tree-select/hooks/use-tree-select-instance.js +3 -0
  496. package/dist/vef-tree-select/index.d.ts +7 -0
  497. package/dist/vef-tree-select/index.js +3 -0
  498. package/dist/vef-tree-select/props.d.ts +142 -0
  499. package/package.json +56 -0
@@ -0,0 +1,257 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{css as e}from"@emotion/react";const t=e`
3
+ input::-ms-clear,
4
+ input::-ms-reveal {
5
+ display: none;
6
+ }
7
+ *,
8
+ *::before,
9
+ *::after {
10
+ box-sizing: border-box;
11
+ }
12
+ html {
13
+ font-family: sans-serif;
14
+ line-height: 1.15;
15
+ -webkit-text-size-adjust: 100%;
16
+ -ms-text-size-adjust: 100%;
17
+ -ms-overflow-style: scrollbar;
18
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
19
+ }
20
+ @-ms-viewport {
21
+ width: device-width;
22
+ }
23
+ body {
24
+ margin: 0;
25
+ }
26
+ [tabindex='-1']:focus {
27
+ outline: none;
28
+ }
29
+ hr {
30
+ box-sizing: content-box;
31
+ height: 0;
32
+ overflow: visible;
33
+ }
34
+ h1,
35
+ h2,
36
+ h3,
37
+ h4,
38
+ h5,
39
+ h6 {
40
+ margin-top: 0;
41
+ margin-bottom: 0.5em;
42
+ font-weight: 500;
43
+ }
44
+ p {
45
+ margin-top: 0;
46
+ margin-bottom: 1em;
47
+ }
48
+ abbr[title],
49
+ abbr[data-original-title] {
50
+ -webkit-text-decoration: underline dotted;
51
+ text-decoration: underline;
52
+ text-decoration: underline dotted;
53
+ border-bottom: 0;
54
+ cursor: help;
55
+ }
56
+ address {
57
+ margin-bottom: 1em;
58
+ font-style: normal;
59
+ line-height: inherit;
60
+ }
61
+ input[type='text'],
62
+ input[type='password'],
63
+ input[type='number'],
64
+ textarea {
65
+ -webkit-appearance: none;
66
+ appearance: none;
67
+ }
68
+ ol,
69
+ ul,
70
+ dl {
71
+ margin-top: 0;
72
+ margin-bottom: 1em;
73
+ }
74
+ ol ol,
75
+ ul ul,
76
+ ol ul,
77
+ ul ol {
78
+ margin-bottom: 0;
79
+ }
80
+ dt {
81
+ font-weight: 500;
82
+ }
83
+ dd {
84
+ margin-bottom: 0.5em;
85
+ margin-left: 0;
86
+ }
87
+ blockquote {
88
+ margin: 0 0 1em;
89
+ }
90
+ dfn {
91
+ font-style: italic;
92
+ }
93
+ b,
94
+ strong {
95
+ font-weight: bolder;
96
+ }
97
+ small {
98
+ font-size: 80%;
99
+ }
100
+ sub,
101
+ sup {
102
+ position: relative;
103
+ font-size: 75%;
104
+ line-height: 0;
105
+ vertical-align: baseline;
106
+ }
107
+ sub {
108
+ bottom: -0.25em;
109
+ }
110
+ sup {
111
+ top: -0.5em;
112
+ }
113
+ pre,
114
+ code,
115
+ kbd,
116
+ samp {
117
+ font-size: 1em;
118
+ font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
119
+ }
120
+ pre {
121
+ margin-top: 0;
122
+ margin-bottom: 1em;
123
+ overflow: auto;
124
+ }
125
+ figure {
126
+ margin: 0 0 1em;
127
+ }
128
+ img {
129
+ vertical-align: middle;
130
+ border-style: none;
131
+ }
132
+ a,
133
+ area,
134
+ button,
135
+ [role='button'],
136
+ input:not([type='range']),
137
+ label,
138
+ select,
139
+ summary,
140
+ textarea {
141
+ touch-action: manipulation;
142
+ }
143
+ table {
144
+ border-collapse: collapse;
145
+ }
146
+ caption {
147
+ padding-top: 0.75em;
148
+ padding-bottom: 0.3em;
149
+ text-align: left;
150
+ caption-side: bottom;
151
+ }
152
+ input,
153
+ button,
154
+ select,
155
+ optgroup,
156
+ textarea {
157
+ margin: 0;
158
+ color: inherit;
159
+ font-size: inherit;
160
+ font-family: inherit;
161
+ line-height: inherit;
162
+ }
163
+ button,
164
+ input {
165
+ overflow: visible;
166
+ }
167
+ button,
168
+ select {
169
+ text-transform: none;
170
+ }
171
+ button,
172
+ html [type='button'],
173
+ [type='reset'],
174
+ [type='submit'] {
175
+ -webkit-appearance: button;
176
+ appearance: button;
177
+ }
178
+ button::-moz-focus-inner,
179
+ [type='button']::-moz-focus-inner,
180
+ [type='reset']::-moz-focus-inner,
181
+ [type='submit']::-moz-focus-inner {
182
+ padding: 0;
183
+ border-style: none;
184
+ }
185
+ input[type='radio'],
186
+ input[type='checkbox'] {
187
+ box-sizing: border-box;
188
+ padding: 0;
189
+ }
190
+ input[type='date'],
191
+ input[type='time'],
192
+ input[type='datetime-local'],
193
+ input[type='month'] {
194
+ -webkit-appearance: listbox;
195
+ appearance: listbox;
196
+ }
197
+ textarea {
198
+ overflow: auto;
199
+ resize: vertical;
200
+ }
201
+ fieldset {
202
+ min-width: 0;
203
+ margin: 0;
204
+ padding: 0;
205
+ border: 0;
206
+ }
207
+ legend {
208
+ display: block;
209
+ width: 100%;
210
+ max-width: 100%;
211
+ margin-bottom: 0.5em;
212
+ padding: 0;
213
+ color: inherit;
214
+ font-size: 1.5em;
215
+ line-height: inherit;
216
+ white-space: normal;
217
+ }
218
+ progress {
219
+ vertical-align: baseline;
220
+ }
221
+ [type='number']::-webkit-inner-spin-button,
222
+ [type='number']::-webkit-outer-spin-button {
223
+ height: auto;
224
+ }
225
+ [type='search'] {
226
+ outline-offset: -2px;
227
+ -webkit-appearance: none;
228
+ appearance: none;
229
+ }
230
+ [type='search']::-webkit-search-cancel-button,
231
+ [type='search']::-webkit-search-decoration {
232
+ -webkit-appearance: none;
233
+ appearance: none;
234
+ }
235
+ ::-webkit-file-upload-button {
236
+ font: inherit;
237
+ -webkit-appearance: button;
238
+ appearance: button;
239
+ }
240
+ output {
241
+ display: inline-block;
242
+ }
243
+ summary {
244
+ display: list-item;
245
+ }
246
+ template {
247
+ display: none;
248
+ }
249
+ [hidden] {
250
+ display: none !important;
251
+ }
252
+ mark {
253
+ padding: 0.2em;
254
+ background-color: #feffe6;
255
+ }
256
+ `;export{t as resetStyle};
257
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,12 @@
1
+ import { type ConfigProviderProps } from "antd";
2
+ import "dayjs/locale/zh-cn";
3
+ /**
4
+ * Configuration
5
+ */
6
+ export interface Config extends ConfigProviderProps {
7
+ messageFoldThreshold: number;
8
+ messageDuration: number;
9
+ notificationDuration: number;
10
+ }
11
+ declare const ConfigStoreContext: import("react").Context<import("@vef-framework/shared").MaybeNull<import("zustand").StoreApi<Config>>>, ConfigStoreProvider: import("react").FC<import("@vef-framework/shared").StoreProviderProps<Partial<Config>>>, useConfigStore: <T>(selector: import("@vef-framework/shared").Mapper<Config, T>) => T, useConfigStoreApi: () => import("zustand").StoreApi<Config>;
12
+ export { ConfigStoreContext, ConfigStoreProvider, useConfigStore, useConfigStoreApi, };
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{createComponentStore as e}from"@vef-framework/shared";import{theme as o}from"antd";import r from"antd/locale/zh_CN";import n from"dayjs";import{createStore as t}from"zustand";import"dayjs/locale/zh-cn";n.locale("zh-cn");const{StoreContext:i,StoreProvider:a,useStore:l,useStoreApi:f}=e("Config",(function(){return t((()=>({messageFoldThreshold:6,messageDuration:3,notificationDuration:5,locale:r,iconPrefixCls:"vef-icon",prefixCls:"vef",virtual:!0,componentSize:"middle",variant:"outlined",theme:{cssVar:{prefix:"vef"},hashed:!1,algorithm:o.defaultAlgorithm,token:{borderRadius:6,colorBgBase:"#ffffff",colorPrimary:"#3b82f6",colorInfo:"#0ea5e9",colorSuccess:"#22c55e",colorWarning:"#f97316",colorError:"#ef4444",colorLink:"#6366f1",colorTextBase:"#171717",zIndexPopupBase:10,wireframe:!0,fontSize:16,controlHeight:36,blue:"#3b82f6",purple:"#8b5cf6",cyan:"#06b6d4",green:"#22c55e",pink:"#ec4899",red:"#ef4444",orange:"#f97316",yellow:"#eab308",volcano:"#f43f5e",lime:"#84cc16",gold:"#fbbf24",geekblue:"#6366f1",magenta:"#eb2f96"},components:{Table:{headerBorderRadius:0},Tooltip:{paddingSM:16,paddingXS:12},Button:{onlyIconSize:24,onlyIconSizeSM:18,onlyIconSizeLG:30,contentFontSizeSM:14},TreeSelect:{titleHeight:36},Spin:{contentHeight:"auto"}}}})))}));export{i as ConfigStoreContext,a as ConfigStoreProvider,l as useConfigStore,f as useConfigStoreApi};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,5 @@
1
+ import type { FC } from "react";
2
+ import type { VefContainerProps } from "./props";
3
+ declare const VefContainer: FC<VefContainerProps>;
4
+ export type { VefContainerProps };
5
+ export default VefContainer;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsxs as e,jsx as r}from"@emotion/react/jsx-runtime";import{FloatButton as o}from"antd";import t from"../vef-scroll-area/index.js";const{BackTop:a}=o,s=({className:o,style:s,children:m})=>e(t,{className:o,style:s,children:[m,r(a,{})]});export{s as default};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,6 @@
1
+ import type { ChildrenProps, StyleProps } from "@vef-framework/shared";
2
+ /**
3
+ * The props of the VefContainer component.
4
+ */
5
+ export interface VefContainerProps extends StyleProps, Required<ChildrenProps> {
6
+ }
@@ -0,0 +1,21 @@
1
+ import type { ActionButton, ObjectType, QueryApi, StringKey } from "@vef-framework/shared";
2
+ import type { CrudContext, CrudFormApis, CrudSchema } from "../types";
3
+ /**
4
+ * The props of VefCrudActions component.
5
+ */
6
+ export interface VefCrudActionsProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>> {
7
+ /**
8
+ * The api of the table.
9
+ */
10
+ tableApi: Readonly<QueryApi<any, any>>;
11
+ /**
12
+ * The params of the table api.
13
+ */
14
+ tableApiParams?: Params;
15
+ /**
16
+ * The action buttons of the crud page.
17
+ */
18
+ actionButtons?: Array<ActionButton<CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>;
19
+ }
20
+ declare function VefCrudActions<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>>({ tableApi, tableApiParams, actionButtons, }: VefCrudActionsProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element;
21
+ export default VefCrudActions;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as o}from"@emotion/react/jsx-runtime";import{DisabledContextProvider as t}from"@vef-framework/hooks";import{useMemo as r}from"react";import e from"../../vef-action-buttons/index.js";import{useActionButtons as s}from"../hooks/use-action-buttons.js";import{useCrudContext as i}from"../hooks/use-crud-context.js";import{useCrudStore as n}from"../store.js";function m({tableApi:m,tableApiParams:a,actionButtons:u}){const c=n((o=>o.confirmedFilterValues)),f=m.useIsFetching(r((()=>({...a,...c})),[a,c])),p=i(),l=s(u);return o(t,{value:f,children:o(e,{buttons:l,context:p,useFlexContainer:!1})})}export{m as default};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,31 @@
1
+ import type { ActionButton, ObjectType, QueryApi, StringKey } from "@vef-framework/shared";
2
+ import { type ReactNode } from "react";
3
+ import type { CrudContext, CrudFormApis, CrudSchema } from "../types";
4
+ import { type FilterSchema } from "../../vef-filter";
5
+ /**
6
+ * The props of VefCrudFilter component.
7
+ */
8
+ export interface CrudFilterProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> {
9
+ /**
10
+ * The title of the crud page.
11
+ */
12
+ title: ReactNode;
13
+ /**
14
+ * The api of the table.
15
+ */
16
+ tableApi: Readonly<QueryApi<any, any>>;
17
+ /**
18
+ * The params of the table api.
19
+ */
20
+ tableApiParams?: Params;
21
+ /**
22
+ * The schema of the crud filter.
23
+ */
24
+ filterSchema: FilterSchema<Pick<Record, FilterKeys[number]>>;
25
+ /**
26
+ * The action buttons of the crud page.
27
+ */
28
+ actionButtons?: Array<ActionButton<CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>;
29
+ }
30
+ declare function VefCrudFilter<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>>({ title, tableApi, tableApiParams, filterSchema, actionButtons, }: CrudFilterProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element;
31
+ export default VefCrudFilter;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as t}from"@emotion/react/jsx-runtime";import{useMemo as e,useCallback as o}from"react";import r from"../../vef-action-buttons/index.js";import i from"../../vef-filter/index.js";import n from"../../vef-title/index.js";import{useActionButtons as s}from"../hooks/use-action-buttons.js";import{useCrudContext as m}from"../hooks/use-crud-context.js";import{useCrudStore as a}from"../store.js";function f({title:f,tableApi:l,tableApiParams:u,filterSchema:c,actionButtons:p}){const[d,x,h]=a((t=>[t.setFilterValues,t.confirmedFilterValues,t.setConfirmedFilterValues])),j=l.useIsFetching(e((()=>({...u,...x})),[u,x])),b=m(),F=s(p),g=o((()=>h(null)),[h]);return t(i,{loading:j,prefix:t(n,{noPaddingBottom:!0,showLeftBar:!0,level:5,children:f}),schema:c,extraActionButtons:t(r,{buttons:F,context:b,useFlexContainer:!1}),onChange:d,onConfirm:h,onReset:g})}export{f as default};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,31 @@
1
+ import { type ActionButton, type Mapper, type MutationApi, type ObjectType, type QueryApi, type StringKey } from "@vef-framework/shared";
2
+ import { type ReactNode } from "react";
3
+ import type { BatchActionButtonContext, CrudFormApis, CrudSchema } from "../types";
4
+ /**
5
+ * The props of the VefCrudFooter component.
6
+ */
7
+ export interface VefCrudFooterProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> {
8
+ /**
9
+ * The table api.
10
+ */
11
+ tableApi: Readonly<QueryApi<any, any>>;
12
+ /**
13
+ * The params of the table api.
14
+ */
15
+ tableApiParams?: Params;
16
+ /**
17
+ * The api of the batch deletion.
18
+ */
19
+ batchDeletionApi?: Readonly<MutationApi<Record[], void>>;
20
+ /**
21
+ * The batch action buttons.
22
+ */
23
+ batchActionButtons?: Array<ActionButton<BatchActionButtonContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>;
24
+ /**
25
+ * The mapper of the selection summary.
26
+ */
27
+ selectionSummary?: Mapper<Record[], ReactNode>;
28
+ }
29
+ declare function VefCrudFooterBase<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>>({ tableApi, tableApiParams, batchDeletionApi, batchActionButtons, selectionSummary, }: VefCrudFooterProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element | null;
30
+ declare const VefCrudFooter: typeof VefCrudFooterBase;
31
+ export default VefCrudFooter;
@@ -0,0 +1,9 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as e,jsxs as t,Fragment as o}from"@emotion/react/jsx-runtime";import{DeleteOutlined as r}from"@ant-design/icons";import{css as i}from"@emotion/react";import{useApiContext as n}from"@vef-framework/core";import{DisabledContextProvider as c}from"@vef-framework/hooks";import{themeVariables as s,isNullish as m,showSuccessMessage as a,isFunction as l}from"@vef-framework/shared";import{useMemo as d,useCallback as f,memo as p}from"react";import u from"../../vef-action-buttons/index.js";import h from"../../vef-button/index.js";import x from"../../vef-divider/index.js";import v from"../../vef-flex/index.js";import b from"../../vef-text/index.js";import{useCrudContext as g}from"../hooks/use-crud-context.js";import{useCrudStore as y}from"../store.js";const j=i`
3
+ height: 100%;
4
+ display: flex;
5
+ justify-content: space-between;
6
+ align-items: center;
7
+ padding: ${s.padding};
8
+ `;const k=p((function({tableApi:i,tableApiParams:s,batchDeletionApi:p,batchActionButtons:k,selectionSummary:A}){const{useApiMutation:w,stubMutationApi:C}=n(),F=w(p??C),[I,M,D]=y((e=>[e.selectedInfo,e.confirmedFilterValues,e.setSelectedInfo])),{selectedKeys:K,selectedRecords:R}=I,S=d((()=>m(p)?k??[]:[...k??[],{key:"_batchDeletion",label:"批量删除",icon:e(r,{}),color:"error",permissions:[p.key],requireConfirmation:!0,confirmationMode:"detailed",onClick:async({refetch:e})=>{const{message:t}=await F.mutate(R);a(t),e()}}]),[k,p,F,R]),q=g(),B=d((()=>({...q,...I})),[q,I]),P=i.useIsFetching(d((()=>({...s,...M})),[s,M])),V=f((()=>{D({selectedKeys:[],selectedRecords:[]})}),[D]),$=d((()=>{if(l(A))return A(R)}),[R,A]);return 0===K.length?null:t("div",{css:j,children:[t(b,{color:"secondary",children:["已选择"," ",e(b,{bold:!0,color:"primary",children:K.length})," ","项",$&&t(o,{children:[e(x,{direction:"vertical"}),$]})]}),e(c,{value:P,children:t(v,{align:"center",gap:"medium",children:[e(h,{color:"primary",variant:"text",onClick:V,children:"取消选择"}),e(u,{buttons:S,context:B,useFlexContainer:!1})]})})]})}));export{k as default};
9
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,18 @@
1
+ import type { AnyValue, ObjectType, StringKey } from "@vef-framework/shared";
2
+ import type { FormSchema } from "../../vef-form";
3
+ import type { CrudFormApis, CrudFormScene, CrudSchema } from "../types";
4
+ /**
5
+ * The props of VefCrudFormModal component.
6
+ */
7
+ export interface CrudFormModalProps<Record extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>> = [], FormKeys extends ReadonlyArray<StringKey<Record>> = [], FormResult = AnyValue, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> {
8
+ /**
9
+ * The schema of the form.
10
+ */
11
+ formSchema: FormSchema<Pick<Record, FormKeys[number]>, CrudFormScene<FormApis>>;
12
+ /**
13
+ * The apis of the form.
14
+ */
15
+ formApis: CrudFormApis<Record, FormKeys, FormResult, Schema>;
16
+ }
17
+ declare function VefCrudFormModal<Record extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>> = [], FormKeys extends ReadonlyArray<StringKey<Record>> = [], FormResult = AnyValue, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>>({ formSchema, formApis, }: CrudFormModalProps<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element;
18
+ export default VefCrudFormModal;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as o}from"@emotion/react/jsx-runtime";import e from"../../vef-form-modal/index.js";import{useCrudStore as r}from"../store.js";function t({formSchema:t,formApis:n}){const[i,{scene:m,title:s,width:c},{onBeforeSubmit:f,onSubmitSuccess:u},a,p,l]=r((o=>[o.isFormOpen,o.currentFormInfo,o.currentFormEventHandlers,o.currentFormInitialValues,o.isFormLoading,o.closeForm])),d=n[m];if(!d)throw new Error(`Form api for scene ${m} not found, please check the formApis props of VefCrudPage component.`);return o(e,{initialValues:a,loading:p,open:i,scene:m,schema:t,submitApi:d,title:s,width:c,onBeforeSubmit:f,onClose:l,onSubmitSuccess:u})}export{t as default};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,32 @@
1
+ import type { ActionButton, ObjectType, QueryApi, StringKey } from "@vef-framework/shared";
2
+ import { type ReactNode } from "react";
3
+ import type { FilterItem } from "../../vef-filter";
4
+ import type { CrudContext, CrudFormApis, CrudSchema } from "../types";
5
+ /**
6
+ * The props of VefCrudHeader component.
7
+ */
8
+ export interface VefCrudHeaderProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>> {
9
+ /**
10
+ * The title of the crud page.
11
+ */
12
+ title: ReactNode;
13
+ /**
14
+ * The api of the table.
15
+ */
16
+ tableApi: Readonly<QueryApi<any, any>>;
17
+ /**
18
+ * The params of the table api.
19
+ */
20
+ tableApiParams?: Params;
21
+ /**
22
+ * The schema of the crud filter.
23
+ */
24
+ filterItems: Array<FilterItem<Pick<Record, FilterKeys[number]>>>;
25
+ /**
26
+ * The action buttons of the crud page.
27
+ */
28
+ actionButtons?: Array<ActionButton<CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>;
29
+ }
30
+ declare function VefCrudHeaderBase<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>>({ title, tableApi, tableApiParams, filterItems, actionButtons, }: VefCrudHeaderProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element | null;
31
+ declare const VefCrudHeader: typeof VefCrudHeaderBase;
32
+ export default VefCrudHeader;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as t}from"@emotion/react/jsx-runtime";import{memo as e}from"react";import r from"./crud-filter.js";const i=e((function({title:e,tableApi:i,tableApiParams:a,filterItems:o,actionButtons:l}){return o.length>0?t(r,{actionButtons:l,filterSchema:o,tableApi:i,tableApiParams:a,title:e}):null}));export{i as default};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,57 @@
1
+ import type { Except, MutationApi, ObjectType, PaginationParams, PaginationResult, QueryApi, QueryConfig, StringKey } from "@vef-framework/shared";
2
+ import type { TableSchema, VefTableProps } from "../../vef-table";
3
+ import type { CrudContext, CrudFilterVirtualKeys, CrudFormApis, CrudSchema } from "../types";
4
+ /**
5
+ * The base props of VefCrudTable component.
6
+ */
7
+ type BaseCrudTableProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> = Except<VefTableProps<Record, Params, Record, CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>, "schema" | "paginated" | "multipleSelection" | "showSelectAllCheckbox" | "enableRowClick" | "enableRowClickForSelection" | "value" | "defaultValue" | "onChange" | "onSelect" | "onDeselect" | "onRowClick" | keyof QueryConfig> & {
8
+ /**
9
+ * The schema of the table.
10
+ */
11
+ schema: TableSchema<Record>;
12
+ /**
13
+ * The api params of the table.
14
+ */
15
+ apiParams?: Params;
16
+ /**
17
+ * The api of the deletion.
18
+ */
19
+ deletionApi?: Readonly<MutationApi<Record, void>>;
20
+ /**
21
+ * Whether to allow pagination.
22
+ */
23
+ paginated?: boolean;
24
+ };
25
+ /**
26
+ * The props of VefCrudTable component without pagination.
27
+ */
28
+ type DefaultCrudTableProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> = BaseCrudTableProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis> & {
29
+ /**
30
+ * Whether to allow pagination.
31
+ */
32
+ paginated?: false;
33
+ /**
34
+ * The api of the table.
35
+ */
36
+ api: Readonly<QueryApi<Params & Except<Pick<Record, FilterKeys[number]>, CrudFilterVirtualKeys<Schema>>, Record[]>>;
37
+ };
38
+ /**
39
+ * The props of VefCrudTable component without pagination.
40
+ */
41
+ type PaginatedCrudTableProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> = BaseCrudTableProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis> & {
42
+ /**
43
+ * Whether to allow pagination.
44
+ */
45
+ paginated: true;
46
+ /**
47
+ * The api of the table.
48
+ */
49
+ api: Readonly<QueryApi<Params & PaginationParams & Except<Pick<Record, FilterKeys[number]>, CrudFilterVirtualKeys<Schema>>, PaginationResult<Record>>>;
50
+ };
51
+ /**
52
+ * The props of VefCrudTable component.
53
+ */
54
+ export type CrudTableProps<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>> = DefaultCrudTableProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis> | PaginatedCrudTableProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>;
55
+ declare function VefCrudTableBase<Record extends ObjectType, Params extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>>({ api, apiParams, deletionApi, paginated, schema, selectable, operationButtons, ...tableProps }: CrudTableProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element;
56
+ declare const VefCrudTable: typeof VefCrudTableBase;
57
+ export default VefCrudTable;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as e}from"@emotion/react/jsx-runtime";import{useMemo as t,useCallback as a,useRef as o,useEffect as s,memo as n}from"react";import r from"../../vef-table/index.js";import{useCrudContext as i}from"../hooks/use-crud-context.js";import{useOperationButtons as l}from"../hooks/use-operation-buttons.js";import{useCrudStore as m,useCrudStoreApi as c}from"../store.js";const p=n((function({api:n,apiParams:p,deletionApi:u,paginated:f,schema:d,selectable:x,operationButtons:h,...b}){const[g,C,S]=m((e=>[e.confirmedFilterValues,e.selectedInfo,e.setSelectedInfo])),j=t((()=>({...p,...g})),[p,g]),y=a(((e,t)=>{S({selectedKeys:e,selectedRecords:t})}),[S]),P=l(u,h),v=o(null),I=c();s((()=>{I.setState({tableInstanceRef:v})}),[I]);const K=i();return e(r,f?x?{ref:v,multipleSelection:!0,paginated:!0,selectable:!0,api:n,apiParams:j,externalContext:K,operationButtons:P,schema:d,selectionSummary:!1,value:C.selectedKeys,onChange:y,...b}:{ref:v,paginated:!0,api:n,apiParams:j,externalContext:K,schema:d,...b}:x?{ref:v,multipleSelection:!0,selectable:!0,api:n,apiParams:j,externalContext:K,schema:d,selectionSummary:!1,value:C.selectedKeys,onChange:y,...b}:{ref:v,api:n,apiParams:j,externalContext:K,paginated:!1,schema:d,...b})}));export{p as default};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,16 @@
1
+ import { type ActionButton, type ObjectType, type StringKey } from "@vef-framework/shared";
2
+ import type { CrudContext, CrudFormApis, CrudFormScene, CrudSchema } from "../types";
3
+ /**
4
+ * The hook to create the action buttons.
5
+ *
6
+ * @param actionButtons - The action buttons.
7
+ * @returns The action buttons.
8
+ */
9
+ export declare function useActionButtons<Record extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>>(actionButtons?: Array<ActionButton<CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>): (ActionButton<CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>> | {
10
+ label: string;
11
+ key: string;
12
+ icon: import("@emotion/react/jsx-runtime").JSX.Element;
13
+ color: "primary";
14
+ permissions: ("creation" extends infer T ? T extends "creation" ? T extends CrudFormScene<FormApis> ? { [K in CrudFormScene<FormApis>]: string; }[T] : any : never : never)[];
15
+ onClick: ({ openForm, refetch }: CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>) => void;
16
+ })[];
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as e}from"@emotion/react/jsx-runtime";import{PlusOutlined as o}from"@ant-design/icons";import{creationFormScene as r}from"@vef-framework/shared";import{useMemo as t}from"react";import{useCrudStore as i}from"../store.js";function m(m){const n=i((e=>e.formApiKeys)),s=Reflect.has(n,r),c=Reflect.get(n,r);return t((()=>s?[...m??[],{label:"创建",key:`_${r}`,icon:e(o,{}),color:"primary",permissions:[c],onClick:({openForm:e,refetch:o})=>e({scene:r,title:"创建",onSubmitSuccess:()=>{o()}})}]:m??[]),[s,m,c])}export{m as useActionButtons};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,8 @@
1
+ import type { ObjectType, StringKey } from "@vef-framework/shared";
2
+ import type { CrudContext, CrudFormApis, CrudSchema } from "../types";
3
+ /**
4
+ * The hook to create the crud context.
5
+ *
6
+ * @returns The crud context.
7
+ */
8
+ export declare function useCrudContext<Record extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>>(): CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>;
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{useMemo as e}from"react";import{useCrudStore as r}from"../store.js";function t(){const[t,o,n]=r((e=>[e.openForm,e.filterValues,e.tableInstanceRef]));return e((()=>({openForm:t,filterValues:o,refetch:async()=>{await(n.current?.refetch())}})),[t,o,n])}export{t as useCrudContext};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,17 @@
1
+ import type { ObjectType, StringKey } from "@vef-framework/shared";
2
+ import type { FilterItem } from "../../vef-filter";
3
+ import type { FormGroup } from "../../vef-form";
4
+ import type { TableSchema } from "../../vef-table";
5
+ import type { CrudSchema } from "../types";
6
+ /**
7
+ * Build the table schema, filter schema and form schema from the crud schema
8
+ *
9
+ * @param schema The crud schema
10
+ * @returns The table schema, filter schema and form schema
11
+ */
12
+ export declare function useCrudSchema<T extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<T>>, FormKeys extends ReadonlyArray<StringKey<T>>>(schema: CrudSchema<T, FilterKeys, FormKeys>): {
13
+ tableSchema: TableSchema<T>;
14
+ filterItems: FilterItem<Pick<T, FilterKeys[number]>>[];
15
+ formGroups: FormGroup<Pick<T, FormKeys[number]>, import("../..").FormScene>[];
16
+ filterValueAsDefaultKeys: FormKeys[number][];
17
+ };
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{isNullish as e,isString as t}from"@vef-framework/shared";import{useMemo as o}from"react";function r(r){return o((()=>{const o=[],s=[],n=new Set,c={};for(const a of r){const{filter:r,form:f,...l}=a,{name:u,title:p}=l;if(o.push(l),r){const{label:o,advanced:n,...c}=r,a={name:u,label:n&&e(o)?p:o,advanced:n,...c};("Input"===a.type||"InputNumber"===a.type)&&e(o)&&e(a.placeholder)&&(a.placeholder=t(p)?`请输入${p}`:"请输入"),s.push(a)}if(f){const{group:t,row:o,column:r,filterValueAsDefault:s,label:a,...l}=f,m=`${t??1}`,i=c[m]??{};c[m]||(c[m]=i);const d=`${o??1}`,h=i[d]??{};i[d]||(i[d]=h);const y=`${r??1}`,b=h[y]??[];h[y]||(h[y]=b),"Hidden"===l.type?b.push({name:u,...l}):b.push({name:u,label:e(a)?p:a,...l}),s&&n.add(u)}}const a=[],f=Object.keys(c).sort();for(const e of f){const t=c[e],o=[],r=Object.keys(t).sort();for(const e of r){const r=t[e],s=[],n=Object.keys(r).sort();for(const e of n){const t={key:e,items:r[e]};s.push(t)}o.push({key:e,columns:s})}a.push({key:e,rows:o})}return{tableSchema:o,filterItems:s,formGroups:a,filterValueAsDefaultKeys:Array.from(n)}}),[r])}export{r as useCrudSchema};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,11 @@
1
+ import { type ActionButton, type MutationApi, type ObjectType, type StringKey } from "@vef-framework/shared";
2
+ import type { OperationButtonContext } from "../../vef-table";
3
+ import type { CrudContext, CrudFormApis, CrudSchema } from "../types";
4
+ /**
5
+ * The hook to get the operation buttons.
6
+ *
7
+ * @param deletionApi - The deletion api.
8
+ * @param operationButtons - The operation buttons.
9
+ * @returns The operation buttons.
10
+ */
11
+ export declare function useOperationButtons<Record extends ObjectType, FilterKeys extends ReadonlyArray<StringKey<Record>>, FormKeys extends ReadonlyArray<StringKey<Record>>, FormResult, Schema extends CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema>>(deletionApi?: Readonly<MutationApi<Record, void>>, operationButtons?: Array<ActionButton<OperationButtonContext<Record, CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>>): ActionButton<OperationButtonContext<Record, CrudContext<Record, FilterKeys, FormKeys, FormResult, Schema, FormApis>>>[];
@@ -0,0 +1,3 @@
1
+ /*! VefFramework version: 1.0.5, build time: 2024-12-10T10:24:47.065Z, made by Venus. */
2
+ import{jsx as o}from"@emotion/react/jsx-runtime";import{EditOutlined as r,DeleteOutlined as e}from"@ant-design/icons";import{useApiContext as t}from"@vef-framework/core";import{modificationFormScene as i,showSuccessMessage as n}from"@vef-framework/shared";import{useMemo as c}from"react";import{useCrudStore as m}from"../store.js";function s(s,a){const{useApiMutation:f,stubMutationApi:p}=t(),u=f(s??p),l=m((o=>o.formApiKeys)),d=Reflect.has(l,i);return c((()=>{const t=[...a??[]];return d&&t.push({key:"_modification",label:"修改",icon:o(r,{}),color:"primary",onClick:async({record:o,openForm:r,refetch:e})=>{r({scene:i,title:"修改",initialValues:o,onSubmitSuccess:()=>{e()}})}}),s&&t.push({key:"_deletion",label:"删除",icon:o(e,{}),color:"error",requireConfirmation:!0,confirmationMode:"simple",onClick:async({record:o,refetch:r})=>{const{message:e}=await u.mutate(o);n(e),r()}}),t}),[s,u,a,d])}export{s as useOperationButtons};
3
+ /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -0,0 +1,6 @@
1
+ import type { AnyValue, EmptyObject, ObjectType, ObjectValue, StringKey } from "@vef-framework/shared";
2
+ import type { VefCrudPageProps } from "./props";
3
+ import type { CrudFormApis, CrudSchema } from "./types";
4
+ declare function VefCrudPage<Record extends ObjectType = ObjectValue, Params extends ObjectType = EmptyObject, FilterKeys extends ReadonlyArray<StringKey<Record>> = [], FormKeys extends ReadonlyArray<StringKey<Record>> = [], FormResult = AnyValue, Schema extends CrudSchema<Record, FilterKeys, FormKeys> = CrudSchema<Record, FilterKeys, FormKeys>, FormApis extends CrudFormApis<Record, FormKeys, FormResult, Schema> = CrudFormApis<Record, FormKeys, FormResult, Schema>>({ schema, formApis, onFormOpen, onBeforeSubmit, onSubmitSuccess, ...restProps }: VefCrudPageProps<Record, Params, FilterKeys, FormKeys, FormResult, Schema, FormApis>): import("@emotion/react/jsx-runtime").JSX.Element;
5
+ export type { VefCrudPageProps };
6
+ export default VefCrudPage;