@vef-framework/components 1.0.64 → 1.0.65

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 (573) hide show
  1. package/es/index.js +2 -81
  2. package/es/internal/index.js +2 -2
  3. package/es/internal/modern-normalize.css.js +2 -4
  4. package/es/internal/utils.js +2 -6
  5. package/es/vef-access-denied/access-denied-icon.js +2 -928
  6. package/es/vef-access-denied/index.js +10 -45
  7. package/es/vef-action-buttons/index.js +2 -75
  8. package/es/vef-auto-sizer/index.js +2 -6
  9. package/es/vef-avatar/index.js +2 -20
  10. package/es/vef-avatar-group/index.js +2 -25
  11. package/es/vef-badge/index.js +2 -47
  12. package/es/vef-bool/hooks/use-bool-instance.js +2 -34
  13. package/es/vef-bool/index.js +2 -60
  14. package/es/vef-breadcrumb/index.js +2 -48
  15. package/es/vef-button/components/base-button.js +2 -73
  16. package/es/vef-button/index.js +2 -151
  17. package/es/vef-card/index.js +2 -25
  18. package/es/vef-card-meta/index.js +2 -12
  19. package/es/vef-checkbox/hooks/use-checkbox-instance.js +2 -20
  20. package/es/vef-checkbox/hooks/use-data-options.js +2 -40
  21. package/es/vef-checkbox/index.js +4 -88
  22. package/es/vef-col/index.js +2 -11
  23. package/es/vef-color-picker/index.js +2 -46
  24. package/es/vef-compact/index.js +2 -15
  25. package/es/vef-config-provider/global-style.js +16 -23
  26. package/es/vef-config-provider/hooks/use-ui-config.js +2 -125
  27. package/es/vef-config-provider/index.js +4 -121
  28. package/es/vef-config-provider/store.js +2 -21
  29. package/es/vef-container/index.js +2 -18
  30. package/es/vef-crud-page/components/crud-actions.js +2 -32
  31. package/es/vef-crud-page/components/crud-filter.js +2 -54
  32. package/es/vef-crud-page/components/crud-footer.js +4 -116
  33. package/es/vef-crud-page/components/crud-form-modal.js +2 -53
  34. package/es/vef-crud-page/components/crud-header.js +2 -29
  35. package/es/vef-crud-page/components/crud-table.js +2 -76
  36. package/es/vef-crud-page/hooks/use-action-buttons.js +2 -37
  37. package/es/vef-crud-page/hooks/use-crud-context.js +2 -20
  38. package/es/vef-crud-page/hooks/use-crud-schema.js +2 -114
  39. package/es/vef-crud-page/hooks/use-operation-buttons.js +2 -60
  40. package/es/vef-crud-page/index.js +2 -150
  41. package/es/vef-crud-page/store.js +2 -142
  42. package/es/vef-divider/index.js +2 -24
  43. package/es/vef-drawer/components/action-button-wrapper.js +2 -49
  44. package/es/vef-drawer/components/button-props.js +1 -2
  45. package/es/vef-drawer/components/cancel-action-button.js +2 -21
  46. package/es/vef-drawer/components/ok-action-button.js +2 -20
  47. package/es/vef-drawer/context.js +2 -15
  48. package/es/vef-drawer/index.js +4 -154
  49. package/es/vef-dropdown/index.js +2 -92
  50. package/es/vef-dynamic-icon/index.js +2 -46
  51. package/es/vef-dynamic-icon/props.js +2 -6
  52. package/es/vef-empty/index.js +2 -37
  53. package/es/vef-empty-placeholder/index.js +5 -19
  54. package/es/vef-error/error-icon.js +2 -757
  55. package/es/vef-error/index.js +10 -48
  56. package/es/vef-filter/components/action-buttons.js +6 -119
  57. package/es/vef-filter/components/advanced-filter.js +9 -71
  58. package/es/vef-filter/components/basic-filter.js +5 -35
  59. package/es/vef-filter/components/fields/index.js +2 -11
  60. package/es/vef-filter/components/fields/input-number.js +2 -90
  61. package/es/vef-filter/components/fields/input.js +2 -67
  62. package/es/vef-filter/components/filter-field.js +2 -19
  63. package/es/vef-filter/components/filter-item.js +2 -112
  64. package/es/vef-filter/event.js +2 -44
  65. package/es/vef-filter/helper.js +2 -15
  66. package/es/vef-filter/hooks/use-action-handlers.js +2 -70
  67. package/es/vef-filter/hooks/use-computed-values.js +2 -55
  68. package/es/vef-filter/hooks/use-filter-context.js +2 -18
  69. package/es/vef-filter/hooks/use-filter-initialization.js +2 -37
  70. package/es/vef-filter/hooks/use-filter-instance.js +2 -26
  71. package/es/vef-filter/hooks/use-filter-items.js +2 -23
  72. package/es/vef-filter/hooks/use-filter-values-change.js +2 -30
  73. package/es/vef-filter/hooks/use-label-config.js +2 -27
  74. package/es/vef-filter/index.js +3 -141
  75. package/es/vef-filter/store.js +2 -71
  76. package/es/vef-flex/index.js +2 -31
  77. package/es/vef-float-button/index.js +2 -49
  78. package/es/vef-float-button-group/index.js +2 -20
  79. package/es/vef-form/components/fields/index.js +2 -11
  80. package/es/vef-form/components/fields/input-number.js +2 -123
  81. package/es/vef-form/components/fields/input.js +2 -132
  82. package/es/vef-form/components/form-actions.js +4 -58
  83. package/es/vef-form/components/form-content.js +3 -144
  84. package/es/vef-form/components/form-field.js +2 -22
  85. package/es/vef-form/components/form-group.js +4 -64
  86. package/es/vef-form/components/form-hidden-item.js +2 -36
  87. package/es/vef-form/components/form-item.js +2 -79
  88. package/es/vef-form/components/form-row.js +2 -98
  89. package/es/vef-form/event.js +2 -44
  90. package/es/vef-form/helper.js +2 -15
  91. package/es/vef-form/hooks/use-action-handlers.js +2 -130
  92. package/es/vef-form/hooks/use-columns-layout.js +2 -122
  93. package/es/vef-form/hooks/use-computed-values.js +2 -55
  94. package/es/vef-form/hooks/use-form-context.js +2 -14
  95. package/es/vef-form/hooks/use-form-initialization.js +2 -45
  96. package/es/vef-form/hooks/use-form-instance.js +2 -26
  97. package/es/vef-form/hooks/use-form-values-change.js +2 -30
  98. package/es/vef-form/hooks/use-label-width.js +2 -18
  99. package/es/vef-form/index.js +4 -174
  100. package/es/vef-form/store.js +2 -65
  101. package/es/vef-form/validation-rules.js +2 -286
  102. package/es/vef-form-drawer/index.js +2 -98
  103. package/es/vef-form-modal/index.js +2 -95
  104. package/es/vef-generic-select/index.js +2 -81
  105. package/es/vef-grid/index.js +7 -83
  106. package/es/vef-grid/props.js +2 -4
  107. package/es/vef-grid-item/index.js +2 -52
  108. package/es/vef-icon/index.js +2 -45
  109. package/es/vef-icon-select/index.js +12 -146
  110. package/es/vef-input/hooks/use-input-instance.js +2 -15
  111. package/es/vef-input/index.js +2 -64
  112. package/es/vef-input-number/hooks/use-input-number-instance.js +2 -13
  113. package/es/vef-input-number/index.js +2 -148
  114. package/es/vef-layout/common-styles.js +5 -10
  115. package/es/vef-layout/components/content.js +2 -13
  116. package/es/vef-layout/components/font-size.js +2 -68
  117. package/es/vef-layout/components/fullscreen.js +2 -23
  118. package/es/vef-layout/components/header-action-icons.js +7 -29
  119. package/es/vef-layout/components/header-content.js +2 -19
  120. package/es/vef-layout/components/header.js +7 -69
  121. package/es/vef-layout/components/icon-boy.js +2 -69
  122. package/es/vef-layout/components/icon-girl.js +2 -76
  123. package/es/vef-layout/components/icon-menu-fold-left.js +2 -23
  124. package/es/vef-layout/components/icon-menu-unfold-left.js +2 -23
  125. package/es/vef-layout/components/menu-groups.js +16 -123
  126. package/es/vef-layout/components/message.js +2 -11
  127. package/es/vef-layout/components/search.js +2 -11
  128. package/es/vef-layout/components/sider.js +6 -54
  129. package/es/vef-layout/components/title.js +9 -53
  130. package/es/vef-layout/components/user-avatar.js +10 -80
  131. package/es/vef-layout/hooks/use-layout-context.js +2 -10
  132. package/es/vef-layout/index.js +3 -33
  133. package/es/vef-layout/logo.svg.js +2 -4
  134. package/es/vef-layout/store.js +2 -16
  135. package/es/vef-loading-placeholder/index.js +6 -42
  136. package/es/vef-login/index.js +22 -152
  137. package/es/vef-login/login-icon.js +2 -668
  138. package/es/vef-menu/index.js +5 -77
  139. package/es/vef-modal/components/action-button-wrapper.js +2 -49
  140. package/es/vef-modal/components/button-props.js +1 -2
  141. package/es/vef-modal/components/cancel-action-button.js +2 -18
  142. package/es/vef-modal/components/ok-action-button.js +2 -20
  143. package/es/vef-modal/context.js +2 -15
  144. package/es/vef-modal/index.js +3 -239
  145. package/es/vef-not-found/index.js +10 -45
  146. package/es/vef-not-found/not-found-icon.js +2 -844
  147. package/es/vef-page/index.js +11 -87
  148. package/es/vef-pagination/index.js +2 -57
  149. package/es/vef-pagination/props.js +2 -13
  150. package/es/vef-paragraph/index.js +2 -89
  151. package/es/vef-password/hooks/use-password-instance.js +2 -13
  152. package/es/vef-password/index.js +2 -67
  153. package/es/vef-popconfirm/index.js +2 -56
  154. package/es/vef-popover/index.js +2 -29
  155. package/es/vef-radio/hooks/use-data-options.js +2 -40
  156. package/es/vef-radio/hooks/use-radio-instance.js +2 -20
  157. package/es/vef-radio/index.js +4 -88
  158. package/es/vef-rate/hooks/use-rate-instance.js +2 -13
  159. package/es/vef-rate/index.js +2 -30
  160. package/es/vef-responsive-container/index.js +3 -54
  161. package/es/vef-responsive-item/index.js +3 -23
  162. package/es/vef-ribbon/index.js +2 -38
  163. package/es/vef-row/index.js +2 -12
  164. package/es/vef-scroll-area/components/scrollbar.js +8 -34
  165. package/es/vef-scroll-area/index.js +4 -69
  166. package/es/vef-select/components/option.js +4 -23
  167. package/es/vef-select/hooks/use-data-options.js +2 -47
  168. package/es/vef-select/hooks/use-field-names.js +2 -21
  169. package/es/vef-select/hooks/use-render-label.js +3 -23
  170. package/es/vef-select/hooks/use-render-option.js +2 -19
  171. package/es/vef-select/hooks/use-select-instance.js +2 -20
  172. package/es/vef-select/index.js +2 -100
  173. package/es/vef-slider/hooks/use-slider-instance.js +2 -13
  174. package/es/vef-slider/index.js +2 -34
  175. package/es/vef-sortable-list/components/overlay-item.js +3 -31
  176. package/es/vef-sortable-list/components/sortable-item.js +3 -75
  177. package/es/vef-sortable-list/hooks/use-merged-items.js +2 -21
  178. package/es/vef-sortable-list/index.js +2 -114
  179. package/es/vef-space/index.js +2 -25
  180. package/es/vef-spin/index.js +2 -12
  181. package/es/vef-splitter/index.js +2 -20
  182. package/es/vef-splitter-panel/index.js +2 -12
  183. package/es/vef-status/index.js +2 -37
  184. package/es/vef-table/components/columns/bool.js +2 -91
  185. package/es/vef-table/components/columns/code.js +2 -10
  186. package/es/vef-table/components/columns/data-dictionary.js +2 -92
  187. package/es/vef-table/components/columns/enum.js +2 -101
  188. package/es/vef-table/components/columns/file.js +2 -10
  189. package/es/vef-table/components/columns/icon.js +2 -10
  190. package/es/vef-table/components/columns/id.js +2 -82
  191. package/es/vef-table/components/columns/image.js +2 -11
  192. package/es/vef-table/components/columns/index.js +2 -33
  193. package/es/vef-table/components/columns/markdown.js +2 -10
  194. package/es/vef-table/components/columns/number.js +2 -83
  195. package/es/vef-table/components/columns/render.js +2 -28
  196. package/es/vef-table/components/columns/rich-text.js +2 -10
  197. package/es/vef-table/components/columns/text.js +2 -88
  198. package/es/vef-table/components/columns-settings.js +11 -195
  199. package/es/vef-table/components/operation-buttons.js +3 -230
  200. package/es/vef-table/components/settings-icon.js +4 -19
  201. package/es/vef-table/components/table-footer.js +4 -102
  202. package/es/vef-table/helper.js +2 -15
  203. package/es/vef-table/hooks/use-computed-batch-buttons.js +2 -33
  204. package/es/vef-table/hooks/use-computed-columns.js +2 -20
  205. package/es/vef-table/hooks/use-computed-values.js +2 -38
  206. package/es/vef-table/hooks/use-data.js +2 -53
  207. package/es/vef-table/hooks/use-default-column-configs.js +2 -27
  208. package/es/vef-table/hooks/use-display-value.js +2 -36
  209. package/es/vef-table/hooks/use-helper-columns.js +2 -67
  210. package/es/vef-table/hooks/use-operation-column-width.js +2 -50
  211. package/es/vef-table/hooks/use-pagination-props.js +2 -44
  212. package/es/vef-table/hooks/use-row-props.js +2 -39
  213. package/es/vef-table/hooks/use-row-selection-config.js +2 -112
  214. package/es/vef-table/hooks/use-selected-rows.js +2 -26
  215. package/es/vef-table/hooks/use-table-columns.js +2 -56
  216. package/es/vef-table/hooks/use-table-context.js +2 -21
  217. package/es/vef-table/hooks/use-table-instance.js +2 -15
  218. package/es/vef-table/hooks/use-table-summary.js +2 -42
  219. package/es/vef-table/hooks/use-table-width.js +2 -13
  220. package/es/vef-table/index.js +6 -227
  221. package/es/vef-table/store.js +2 -17
  222. package/es/vef-tabs/index.js +2 -25
  223. package/es/vef-tag/index.js +2 -28
  224. package/es/vef-temporal-picker/helper.js +2 -57
  225. package/es/vef-temporal-picker/hooks/use-dayjs-value.js +2 -18
  226. package/es/vef-temporal-picker/hooks/use-temporal-limit.js +2 -34
  227. package/es/vef-temporal-picker/hooks/use-temporal-picker-instance.js +2 -19
  228. package/es/vef-temporal-picker/index.js +2 -125
  229. package/es/vef-temporal-range-picker/helper.js +2 -57
  230. package/es/vef-temporal-range-picker/hooks/use-dayjs-values.js +2 -23
  231. package/es/vef-temporal-range-picker/hooks/use-temporal-limit.js +2 -34
  232. package/es/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.js +2 -19
  233. package/es/vef-temporal-range-picker/index.js +2 -128
  234. package/es/vef-temporal-range-picker/props.js +2 -4
  235. package/es/vef-text/index.js +2 -80
  236. package/es/vef-textarea/hooks/use-textarea-instance.js +2 -13
  237. package/es/vef-textarea/index.js +2 -67
  238. package/es/vef-title/index.js +7 -89
  239. package/es/vef-tooltip/index.js +2 -35
  240. package/es/vef-tree-select/hooks/use-change-handler.js +2 -33
  241. package/es/vef-tree-select/hooks/use-data-options.js +2 -45
  242. package/es/vef-tree-select/hooks/use-tree-select-instance.js +2 -20
  243. package/es/vef-tree-select/index.js +2 -86
  244. package/es/vef-virtual-grid/index.js +4 -107
  245. package/es/vef-virtual-list/index.js +5 -215
  246. package/lib/index.cjs +2 -168
  247. package/lib/internal/index.cjs +2 -10
  248. package/lib/internal/modern-normalize.css.cjs +2 -8
  249. package/lib/internal/utils.cjs +2 -10
  250. package/lib/vef-access-denied/access-denied-icon.cjs +2 -932
  251. package/lib/vef-access-denied/index.cjs +10 -49
  252. package/lib/vef-access-denied/props.cjs +2 -4
  253. package/lib/vef-action-buttons/index.cjs +2 -79
  254. package/lib/vef-action-buttons/props.cjs +2 -4
  255. package/lib/vef-auto-sizer/index.cjs +2 -10
  256. package/lib/vef-auto-sizer/props.cjs +2 -4
  257. package/lib/vef-avatar/index.cjs +2 -24
  258. package/lib/vef-avatar/props.cjs +2 -4
  259. package/lib/vef-avatar-group/index.cjs +2 -29
  260. package/lib/vef-avatar-group/props.cjs +2 -4
  261. package/lib/vef-badge/index.cjs +2 -51
  262. package/lib/vef-badge/props.cjs +2 -4
  263. package/lib/vef-bool/hooks/use-bool-instance.cjs +2 -38
  264. package/lib/vef-bool/index.cjs +2 -64
  265. package/lib/vef-bool/props.cjs +2 -4
  266. package/lib/vef-breadcrumb/index.cjs +2 -52
  267. package/lib/vef-breadcrumb/props.cjs +2 -4
  268. package/lib/vef-button/components/base-button.cjs +2 -77
  269. package/lib/vef-button/index.cjs +2 -155
  270. package/lib/vef-button/props.cjs +2 -4
  271. package/lib/vef-card/index.cjs +2 -29
  272. package/lib/vef-card/props.cjs +2 -4
  273. package/lib/vef-card-meta/index.cjs +2 -16
  274. package/lib/vef-card-meta/props.cjs +2 -4
  275. package/lib/vef-checkbox/hooks/use-checkbox-instance.cjs +2 -24
  276. package/lib/vef-checkbox/hooks/use-data-options.cjs +2 -44
  277. package/lib/vef-checkbox/index.cjs +4 -92
  278. package/lib/vef-checkbox/props.cjs +2 -4
  279. package/lib/vef-col/index.cjs +2 -15
  280. package/lib/vef-col/props.cjs +2 -4
  281. package/lib/vef-color-picker/index.cjs +2 -50
  282. package/lib/vef-color-picker/props.cjs +2 -4
  283. package/lib/vef-compact/index.cjs +2 -19
  284. package/lib/vef-compact/props.cjs +2 -4
  285. package/lib/vef-config-provider/global-style.cjs +16 -28
  286. package/lib/vef-config-provider/hooks/use-ui-config.cjs +2 -129
  287. package/lib/vef-config-provider/index.cjs +4 -125
  288. package/lib/vef-config-provider/props.cjs +2 -4
  289. package/lib/vef-config-provider/store.cjs +2 -27
  290. package/lib/vef-container/index.cjs +2 -22
  291. package/lib/vef-container/props.cjs +2 -4
  292. package/lib/vef-crud-page/components/crud-actions.cjs +2 -36
  293. package/lib/vef-crud-page/components/crud-filter.cjs +2 -58
  294. package/lib/vef-crud-page/components/crud-footer.cjs +4 -120
  295. package/lib/vef-crud-page/components/crud-form-modal.cjs +2 -57
  296. package/lib/vef-crud-page/components/crud-header.cjs +2 -33
  297. package/lib/vef-crud-page/components/crud-table.cjs +2 -80
  298. package/lib/vef-crud-page/hooks/use-action-buttons.cjs +2 -41
  299. package/lib/vef-crud-page/hooks/use-crud-context.cjs +2 -24
  300. package/lib/vef-crud-page/hooks/use-crud-schema.cjs +2 -118
  301. package/lib/vef-crud-page/hooks/use-operation-buttons.cjs +2 -64
  302. package/lib/vef-crud-page/index.cjs +2 -154
  303. package/lib/vef-crud-page/props.cjs +2 -4
  304. package/lib/vef-crud-page/store.cjs +2 -148
  305. package/lib/vef-crud-page/types.cjs +2 -4
  306. package/lib/vef-divider/index.cjs +2 -28
  307. package/lib/vef-divider/props.cjs +2 -4
  308. package/lib/vef-drawer/components/action-button-wrapper.cjs +2 -53
  309. package/lib/vef-drawer/components/button-props.cjs +2 -4
  310. package/lib/vef-drawer/components/cancel-action-button.cjs +2 -25
  311. package/lib/vef-drawer/components/ok-action-button.cjs +2 -24
  312. package/lib/vef-drawer/context.cjs +2 -21
  313. package/lib/vef-drawer/index.cjs +4 -159
  314. package/lib/vef-drawer/props.cjs +2 -4
  315. package/lib/vef-dropdown/index.cjs +2 -96
  316. package/lib/vef-dropdown/props.cjs +2 -4
  317. package/lib/vef-dynamic-icon/index.cjs +2 -50
  318. package/lib/vef-dynamic-icon/props.cjs +2 -10
  319. package/lib/vef-empty/index.cjs +2 -41
  320. package/lib/vef-empty/props.cjs +2 -4
  321. package/lib/vef-empty-placeholder/index.cjs +5 -23
  322. package/lib/vef-empty-placeholder/props.cjs +2 -4
  323. package/lib/vef-error/error-icon.cjs +2 -761
  324. package/lib/vef-error/index.cjs +10 -52
  325. package/lib/vef-error/props.cjs +2 -4
  326. package/lib/vef-filter/components/action-buttons.cjs +6 -123
  327. package/lib/vef-filter/components/advanced-filter.cjs +9 -75
  328. package/lib/vef-filter/components/basic-filter.cjs +5 -39
  329. package/lib/vef-filter/components/fields/index.cjs +2 -15
  330. package/lib/vef-filter/components/fields/input-number.cjs +2 -94
  331. package/lib/vef-filter/components/fields/input.cjs +2 -71
  332. package/lib/vef-filter/components/fields/props.cjs +2 -4
  333. package/lib/vef-filter/components/filter-field.cjs +2 -23
  334. package/lib/vef-filter/components/filter-item.cjs +2 -116
  335. package/lib/vef-filter/event.cjs +2 -48
  336. package/lib/vef-filter/helper.cjs +2 -19
  337. package/lib/vef-filter/hooks/use-action-handlers.cjs +2 -74
  338. package/lib/vef-filter/hooks/use-computed-values.cjs +2 -59
  339. package/lib/vef-filter/hooks/use-filter-context.cjs +2 -24
  340. package/lib/vef-filter/hooks/use-filter-initialization.cjs +2 -41
  341. package/lib/vef-filter/hooks/use-filter-instance.cjs +2 -30
  342. package/lib/vef-filter/hooks/use-filter-items.cjs +2 -27
  343. package/lib/vef-filter/hooks/use-filter-values-change.cjs +2 -34
  344. package/lib/vef-filter/hooks/use-label-config.cjs +2 -31
  345. package/lib/vef-filter/index.cjs +3 -145
  346. package/lib/vef-filter/props.cjs +2 -4
  347. package/lib/vef-filter/store.cjs +2 -77
  348. package/lib/vef-filter/types.cjs +2 -4
  349. package/lib/vef-flex/index.cjs +2 -35
  350. package/lib/vef-flex/props.cjs +2 -4
  351. package/lib/vef-float-button/index.cjs +2 -53
  352. package/lib/vef-float-button/props.cjs +2 -4
  353. package/lib/vef-float-button-group/index.cjs +2 -24
  354. package/lib/vef-float-button-group/props.cjs +2 -4
  355. package/lib/vef-form/components/fields/index.cjs +2 -15
  356. package/lib/vef-form/components/fields/input-number.cjs +2 -127
  357. package/lib/vef-form/components/fields/input.cjs +2 -136
  358. package/lib/vef-form/components/fields/props.cjs +2 -4
  359. package/lib/vef-form/components/form-actions.cjs +4 -62
  360. package/lib/vef-form/components/form-content.cjs +3 -148
  361. package/lib/vef-form/components/form-field.cjs +2 -26
  362. package/lib/vef-form/components/form-group.cjs +4 -68
  363. package/lib/vef-form/components/form-hidden-item.cjs +2 -40
  364. package/lib/vef-form/components/form-item.cjs +2 -83
  365. package/lib/vef-form/components/form-row.cjs +2 -102
  366. package/lib/vef-form/event.cjs +2 -48
  367. package/lib/vef-form/helper.cjs +2 -19
  368. package/lib/vef-form/hooks/use-action-handlers.cjs +2 -134
  369. package/lib/vef-form/hooks/use-columns-layout.cjs +2 -126
  370. package/lib/vef-form/hooks/use-computed-values.cjs +2 -59
  371. package/lib/vef-form/hooks/use-form-context.cjs +2 -20
  372. package/lib/vef-form/hooks/use-form-initialization.cjs +2 -49
  373. package/lib/vef-form/hooks/use-form-instance.cjs +2 -30
  374. package/lib/vef-form/hooks/use-form-values-change.cjs +2 -34
  375. package/lib/vef-form/hooks/use-label-width.cjs +2 -22
  376. package/lib/vef-form/index.cjs +4 -178
  377. package/lib/vef-form/props.cjs +2 -4
  378. package/lib/vef-form/store.cjs +2 -71
  379. package/lib/vef-form/types.cjs +2 -4
  380. package/lib/vef-form/validation-rules.cjs +2 -312
  381. package/lib/vef-form-drawer/index.cjs +2 -102
  382. package/lib/vef-form-drawer/props.cjs +2 -4
  383. package/lib/vef-form-modal/index.cjs +2 -99
  384. package/lib/vef-form-modal/props.cjs +2 -4
  385. package/lib/vef-generic-select/index.cjs +2 -85
  386. package/lib/vef-generic-select/props.cjs +2 -4
  387. package/lib/vef-grid/index.cjs +7 -87
  388. package/lib/vef-grid/props.cjs +2 -8
  389. package/lib/vef-grid-item/index.cjs +2 -56
  390. package/lib/vef-grid-item/props.cjs +2 -4
  391. package/lib/vef-icon/index.cjs +2 -49
  392. package/lib/vef-icon/props.cjs +2 -4
  393. package/lib/vef-icon-select/index.cjs +12 -150
  394. package/lib/vef-icon-select/props.cjs +2 -4
  395. package/lib/vef-input/hooks/use-input-instance.cjs +2 -19
  396. package/lib/vef-input/index.cjs +2 -68
  397. package/lib/vef-input/props.cjs +2 -4
  398. package/lib/vef-input-number/hooks/use-input-number-instance.cjs +2 -17
  399. package/lib/vef-input-number/index.cjs +2 -152
  400. package/lib/vef-input-number/props.cjs +2 -4
  401. package/lib/vef-layout/common-styles.cjs +5 -14
  402. package/lib/vef-layout/components/content.cjs +2 -17
  403. package/lib/vef-layout/components/font-size.cjs +2 -72
  404. package/lib/vef-layout/components/fullscreen.cjs +2 -27
  405. package/lib/vef-layout/components/header-action-icons.cjs +7 -33
  406. package/lib/vef-layout/components/header-content.cjs +2 -23
  407. package/lib/vef-layout/components/header.cjs +7 -73
  408. package/lib/vef-layout/components/icon-boy.cjs +2 -73
  409. package/lib/vef-layout/components/icon-girl.cjs +2 -80
  410. package/lib/vef-layout/components/icon-menu-fold-left.cjs +2 -27
  411. package/lib/vef-layout/components/icon-menu-unfold-left.cjs +2 -27
  412. package/lib/vef-layout/components/menu-groups.cjs +16 -127
  413. package/lib/vef-layout/components/message.cjs +2 -15
  414. package/lib/vef-layout/components/search.cjs +2 -15
  415. package/lib/vef-layout/components/sider.cjs +6 -58
  416. package/lib/vef-layout/components/title.cjs +9 -57
  417. package/lib/vef-layout/components/user-avatar.cjs +10 -84
  418. package/lib/vef-layout/hooks/use-layout-context.cjs +2 -16
  419. package/lib/vef-layout/index.cjs +3 -37
  420. package/lib/vef-layout/logo.svg.cjs +2 -8
  421. package/lib/vef-layout/props.cjs +2 -4
  422. package/lib/vef-layout/store.cjs +2 -22
  423. package/lib/vef-loading-placeholder/index.cjs +6 -46
  424. package/lib/vef-loading-placeholder/props.cjs +2 -4
  425. package/lib/vef-login/index.cjs +22 -156
  426. package/lib/vef-login/login-icon.cjs +2 -672
  427. package/lib/vef-login/props.cjs +2 -4
  428. package/lib/vef-menu/index.cjs +5 -81
  429. package/lib/vef-menu/props.cjs +2 -4
  430. package/lib/vef-modal/components/action-button-wrapper.cjs +2 -53
  431. package/lib/vef-modal/components/button-props.cjs +2 -4
  432. package/lib/vef-modal/components/cancel-action-button.cjs +2 -22
  433. package/lib/vef-modal/components/ok-action-button.cjs +2 -24
  434. package/lib/vef-modal/context.cjs +2 -21
  435. package/lib/vef-modal/index.cjs +3 -244
  436. package/lib/vef-modal/props.cjs +2 -4
  437. package/lib/vef-not-found/index.cjs +10 -49
  438. package/lib/vef-not-found/not-found-icon.cjs +2 -848
  439. package/lib/vef-not-found/props.cjs +2 -4
  440. package/lib/vef-page/index.cjs +11 -91
  441. package/lib/vef-page/props.cjs +2 -4
  442. package/lib/vef-pagination/index.cjs +2 -61
  443. package/lib/vef-pagination/props.cjs +2 -17
  444. package/lib/vef-paragraph/index.cjs +2 -93
  445. package/lib/vef-paragraph/props.cjs +2 -4
  446. package/lib/vef-password/hooks/use-password-instance.cjs +2 -17
  447. package/lib/vef-password/index.cjs +2 -71
  448. package/lib/vef-password/props.cjs +2 -4
  449. package/lib/vef-popconfirm/index.cjs +2 -60
  450. package/lib/vef-popconfirm/props.cjs +2 -4
  451. package/lib/vef-popover/index.cjs +2 -33
  452. package/lib/vef-popover/props.cjs +2 -4
  453. package/lib/vef-radio/hooks/use-data-options.cjs +2 -44
  454. package/lib/vef-radio/hooks/use-radio-instance.cjs +2 -24
  455. package/lib/vef-radio/index.cjs +4 -92
  456. package/lib/vef-radio/props.cjs +2 -4
  457. package/lib/vef-rate/hooks/use-rate-instance.cjs +2 -17
  458. package/lib/vef-rate/index.cjs +2 -34
  459. package/lib/vef-rate/props.cjs +2 -4
  460. package/lib/vef-responsive-container/index.cjs +3 -58
  461. package/lib/vef-responsive-container/props.cjs +2 -4
  462. package/lib/vef-responsive-item/index.cjs +3 -27
  463. package/lib/vef-responsive-item/props.cjs +2 -4
  464. package/lib/vef-ribbon/index.cjs +2 -42
  465. package/lib/vef-ribbon/props.cjs +2 -4
  466. package/lib/vef-row/index.cjs +2 -16
  467. package/lib/vef-row/props.cjs +2 -4
  468. package/lib/vef-scroll-area/components/scrollbar.cjs +8 -38
  469. package/lib/vef-scroll-area/index.cjs +4 -73
  470. package/lib/vef-scroll-area/props.cjs +2 -4
  471. package/lib/vef-select/components/option.cjs +4 -27
  472. package/lib/vef-select/hooks/use-data-options.cjs +2 -51
  473. package/lib/vef-select/hooks/use-field-names.cjs +2 -25
  474. package/lib/vef-select/hooks/use-render-label.cjs +3 -27
  475. package/lib/vef-select/hooks/use-render-option.cjs +2 -23
  476. package/lib/vef-select/hooks/use-select-instance.cjs +2 -24
  477. package/lib/vef-select/index.cjs +2 -104
  478. package/lib/vef-select/props.cjs +2 -4
  479. package/lib/vef-slider/hooks/use-slider-instance.cjs +2 -17
  480. package/lib/vef-slider/index.cjs +2 -38
  481. package/lib/vef-slider/props.cjs +2 -4
  482. package/lib/vef-sortable-list/components/overlay-item.cjs +3 -35
  483. package/lib/vef-sortable-list/components/sortable-item.cjs +3 -79
  484. package/lib/vef-sortable-list/hooks/use-merged-items.cjs +2 -25
  485. package/lib/vef-sortable-list/index.cjs +2 -118
  486. package/lib/vef-sortable-list/props.cjs +2 -4
  487. package/lib/vef-space/index.cjs +2 -29
  488. package/lib/vef-space/props.cjs +2 -4
  489. package/lib/vef-spin/index.cjs +2 -16
  490. package/lib/vef-spin/props.cjs +2 -4
  491. package/lib/vef-splitter/index.cjs +2 -24
  492. package/lib/vef-splitter/props.cjs +2 -4
  493. package/lib/vef-splitter-panel/index.cjs +2 -16
  494. package/lib/vef-splitter-panel/props.cjs +2 -4
  495. package/lib/vef-status/index.cjs +2 -41
  496. package/lib/vef-status/props.cjs +2 -4
  497. package/lib/vef-table/components/columns/bool.cjs +2 -95
  498. package/lib/vef-table/components/columns/code.cjs +2 -14
  499. package/lib/vef-table/components/columns/data-dictionary.cjs +2 -96
  500. package/lib/vef-table/components/columns/enum.cjs +2 -105
  501. package/lib/vef-table/components/columns/file.cjs +2 -14
  502. package/lib/vef-table/components/columns/icon.cjs +2 -14
  503. package/lib/vef-table/components/columns/id.cjs +2 -86
  504. package/lib/vef-table/components/columns/image.cjs +2 -15
  505. package/lib/vef-table/components/columns/index.cjs +2 -37
  506. package/lib/vef-table/components/columns/markdown.cjs +2 -14
  507. package/lib/vef-table/components/columns/number.cjs +2 -87
  508. package/lib/vef-table/components/columns/props.cjs +2 -4
  509. package/lib/vef-table/components/columns/render.cjs +2 -32
  510. package/lib/vef-table/components/columns/rich-text.cjs +2 -14
  511. package/lib/vef-table/components/columns/text.cjs +2 -92
  512. package/lib/vef-table/components/columns-settings.cjs +11 -199
  513. package/lib/vef-table/components/operation-buttons.cjs +3 -234
  514. package/lib/vef-table/components/settings-icon.cjs +4 -23
  515. package/lib/vef-table/components/table-footer.cjs +4 -106
  516. package/lib/vef-table/helper.cjs +2 -19
  517. package/lib/vef-table/hooks/use-computed-batch-buttons.cjs +2 -37
  518. package/lib/vef-table/hooks/use-computed-columns.cjs +2 -24
  519. package/lib/vef-table/hooks/use-computed-values.cjs +2 -42
  520. package/lib/vef-table/hooks/use-data.cjs +2 -57
  521. package/lib/vef-table/hooks/use-default-column-configs.cjs +2 -31
  522. package/lib/vef-table/hooks/use-display-value.cjs +2 -40
  523. package/lib/vef-table/hooks/use-helper-columns.cjs +2 -71
  524. package/lib/vef-table/hooks/use-operation-column-width.cjs +2 -54
  525. package/lib/vef-table/hooks/use-pagination-props.cjs +2 -48
  526. package/lib/vef-table/hooks/use-row-props.cjs +2 -43
  527. package/lib/vef-table/hooks/use-row-selection-config.cjs +2 -116
  528. package/lib/vef-table/hooks/use-selected-rows.cjs +2 -30
  529. package/lib/vef-table/hooks/use-table-columns.cjs +2 -60
  530. package/lib/vef-table/hooks/use-table-context.cjs +2 -27
  531. package/lib/vef-table/hooks/use-table-instance.cjs +2 -19
  532. package/lib/vef-table/hooks/use-table-summary.cjs +2 -46
  533. package/lib/vef-table/hooks/use-table-width.cjs +2 -17
  534. package/lib/vef-table/index.cjs +6 -231
  535. package/lib/vef-table/props.cjs +2 -4
  536. package/lib/vef-table/store.cjs +2 -23
  537. package/lib/vef-table/types.cjs +2 -4
  538. package/lib/vef-tabs/index.cjs +2 -29
  539. package/lib/vef-tabs/props.cjs +2 -4
  540. package/lib/vef-tag/index.cjs +2 -32
  541. package/lib/vef-tag/props.cjs +2 -4
  542. package/lib/vef-temporal-picker/helper.cjs +2 -61
  543. package/lib/vef-temporal-picker/hooks/use-dayjs-value.cjs +2 -22
  544. package/lib/vef-temporal-picker/hooks/use-temporal-limit.cjs +2 -38
  545. package/lib/vef-temporal-picker/hooks/use-temporal-picker-instance.cjs +2 -23
  546. package/lib/vef-temporal-picker/index.cjs +2 -129
  547. package/lib/vef-temporal-picker/props.cjs +2 -4
  548. package/lib/vef-temporal-range-picker/helper.cjs +2 -61
  549. package/lib/vef-temporal-range-picker/hooks/use-dayjs-values.cjs +2 -27
  550. package/lib/vef-temporal-range-picker/hooks/use-temporal-limit.cjs +2 -38
  551. package/lib/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.cjs +2 -23
  552. package/lib/vef-temporal-range-picker/index.cjs +2 -132
  553. package/lib/vef-temporal-range-picker/props.cjs +2 -8
  554. package/lib/vef-text/index.cjs +2 -84
  555. package/lib/vef-text/props.cjs +2 -4
  556. package/lib/vef-textarea/hooks/use-textarea-instance.cjs +2 -17
  557. package/lib/vef-textarea/index.cjs +2 -71
  558. package/lib/vef-textarea/props.cjs +2 -4
  559. package/lib/vef-title/index.cjs +7 -93
  560. package/lib/vef-title/props.cjs +2 -4
  561. package/lib/vef-tooltip/index.cjs +2 -39
  562. package/lib/vef-tooltip/props.cjs +2 -4
  563. package/lib/vef-tree-select/hooks/use-change-handler.cjs +2 -37
  564. package/lib/vef-tree-select/hooks/use-data-options.cjs +2 -49
  565. package/lib/vef-tree-select/hooks/use-tree-select-instance.cjs +2 -24
  566. package/lib/vef-tree-select/index.cjs +2 -90
  567. package/lib/vef-tree-select/props.cjs +2 -4
  568. package/lib/vef-virtual-grid/index.cjs +4 -111
  569. package/lib/vef-virtual-grid/props.cjs +2 -4
  570. package/lib/vef-virtual-list/index.cjs +5 -219
  571. package/lib/vef-virtual-list/props.cjs +2 -4
  572. package/package.json +4 -4
  573. package/types/vef-config-provider/hooks/use-ui-config.d.ts +0 -1
@@ -1,22 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { createComponentStore } from '@vef-framework/shared';
3
-
4
- const {
5
- StoreProvider: ConfigStoreProvider,
6
- useStore: useConfigStore,
7
- useStoreApi: useConfigStoreApi
8
- } = createComponentStore(
9
- "Config",
10
- ({
11
- fontSize = "large",
12
- primaryColor = "#0064fa"
13
- }) => (set) => ({
14
- fontSize,
15
- primaryColor,
16
- setFontSize: (fontSize2) => set({ fontSize: fontSize2 }),
17
- setPrimaryColor: (primaryColor2) => set({ primaryColor: primaryColor2 })
18
- })
19
- );
20
-
21
- export { ConfigStoreProvider, useConfigStore, useConfigStoreApi };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{createComponentStore as r}from"@vef-framework/shared";const{StoreProvider:o,useStore:e,useStoreApi:i}=r("Config",(({fontSize:r="large",primaryColor:o="#0064fa"})=>e=>({fontSize:r,primaryColor:o,setFontSize:r=>e({fontSize:r}),setPrimaryColor:r=>e({primaryColor:r})})));export{o as ConfigStoreProvider,e as useConfigStore,i as useConfigStoreApi};
22
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 */
@@ -1,19 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsxs, jsx } from '@emotion/react/jsx-runtime';
3
- import { FloatButton } from 'antd';
4
- import VefScrollArea from '../vef-scroll-area/index.js';
5
-
6
- const { BackTop } = FloatButton;
7
- function VefContainer({
8
- className,
9
- style,
10
- children
11
- }) {
12
- return /* @__PURE__ */ jsxs(VefScrollArea, { className, style, children: [
13
- children,
14
- /* @__PURE__ */ jsx(BackTop, {})
15
- ] });
16
- }
17
-
18
- export { VefContainer as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{jsxs as e,jsx as r}from"@emotion/react/jsx-runtime";import{FloatButton as t}from"antd";import o from"../vef-scroll-area/index.js";const{BackTop:n}=t;function VefContainer({className:t,style:a,children:i}){return e(o,{className:t,style:a,children:[i,r(n,{})]})}export{VefContainer as default};
19
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 */
@@ -1,33 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { DisabledContextProvider } from '@vef-framework/hooks';
4
- import { useMemo } from 'react';
5
- import VefActionButtons from '../../vef-action-buttons/index.js';
6
- import { useActionButtons } from '../hooks/use-action-buttons.js';
7
- import { useCrudContext } from '../hooks/use-crud-context.js';
8
- import { useCrudStore } from '../store.js';
9
-
10
- function VefCrudActions({
11
- tableApi,
12
- tableApiParams,
13
- actionButtons
14
- }) {
15
- const confirmedFilterValues = useCrudStore((state) => state.confirmedFilterValues);
16
- const isFetching = tableApi.useIsFetching(useMemo(() => ({
17
- ...tableApiParams,
18
- ...confirmedFilterValues
19
- }), [tableApiParams, confirmedFilterValues]));
20
- const crudContext = useCrudContext();
21
- const actionButtonsToUse = useActionButtons(actionButtons);
22
- return /* @__PURE__ */ jsx(DisabledContextProvider, { value: isFetching, children: /* @__PURE__ */ jsx(
23
- VefActionButtons,
24
- {
25
- buttons: actionButtonsToUse,
26
- context: crudContext,
27
- useFlexContainer: false
28
- }
29
- ) });
30
- }
31
-
32
- export { VefCrudActions as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, 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 VefCrudActions({tableApi:m,tableApiParams:u,actionButtons:a}){const c=n((o=>o.confirmedFilterValues)),f=m.useIsFetching(r((()=>({...u,...c})),[u,c])),p=i(),l=s(a);return o(t,{value:f,children:o(e,{buttons:l,context:p,useFlexContainer:!1})})}export{VefCrudActions as default};
33
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 */
@@ -1,55 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { useMemo, useCallback } from 'react';
4
- import VefActionButtons from '../../vef-action-buttons/index.js';
5
- import VefFilter from '../../vef-filter/index.js';
6
- import VefTitle from '../../vef-title/index.js';
7
- import { useActionButtons } from '../hooks/use-action-buttons.js';
8
- import { useCrudContext } from '../hooks/use-crud-context.js';
9
- import { useCrudStore } from '../store.js';
10
-
11
- function VefCrudFilter({
12
- title,
13
- tableApi,
14
- tableApiParams,
15
- filterSchema,
16
- actionButtons
17
- }) {
18
- const [setFilterValues, confirmedFilterValues, setConfirmedFilterValues] = useCrudStore((state) => [
19
- state.setFilterValues,
20
- state.confirmedFilterValues,
21
- state.setConfirmedFilterValues
22
- ]);
23
- const isFetching = tableApi.useIsFetching(useMemo(() => ({
24
- ...tableApiParams,
25
- ...confirmedFilterValues
26
- }), [tableApiParams, confirmedFilterValues]));
27
- const crudContext = useCrudContext();
28
- const actionButtonsToUse = useActionButtons(actionButtons);
29
- const handleReset = useCallback(
30
- () => setConfirmedFilterValues(null),
31
- [setConfirmedFilterValues]
32
- );
33
- return /* @__PURE__ */ jsx(
34
- VefFilter,
35
- {
36
- loading: isFetching,
37
- prefix: /* @__PURE__ */ jsx(VefTitle, { noPaddingBottom: true, showLeftBar: true, level: 5, children: title }),
38
- schema: filterSchema,
39
- extraActionButtons: /* @__PURE__ */ jsx(
40
- VefActionButtons,
41
- {
42
- buttons: actionButtonsToUse,
43
- context: crudContext,
44
- useFlexContainer: false
45
- }
46
- ),
47
- onChange: setFilterValues,
48
- onConfirm: setConfirmedFilterValues,
49
- onReset: handleReset
50
- }
51
- );
52
- }
53
-
54
- export { VefCrudFilter as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, 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 VefCrudFilter({title:f,tableApi:l,tableApiParams:u,filterSchema:c,actionButtons:d}){const[p,x,h]=a((t=>[t.setFilterValues,t.confirmedFilterValues,t.setConfirmedFilterValues])),j=l.useIsFetching(e((()=>({...u,...x})),[u,x])),F=m(),C=s(d),b=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:C,context:F,useFlexContainer:!1}),onChange:p,onConfirm:h,onReset:b})}export{VefCrudFilter as default};
55
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 */
@@ -1,121 +1,9 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx, jsxs, Fragment } from '@emotion/react/jsx-runtime';
3
- import { css } from '@emotion/react';
4
- import { useApiContext } from '@vef-framework/core';
5
- import { DisabledContextProvider } from '@vef-framework/hooks';
6
- import { themeVariables, isNullish, showSuccessMessage, isFunction } from '@vef-framework/shared';
7
- import { Trash2Icon } from 'lucide-react';
8
- import { useMemo, useCallback, memo } from 'react';
9
- import VefActionButtons from '../../vef-action-buttons/index.js';
10
- import VefButton from '../../vef-button/index.js';
11
- import VefDivider from '../../vef-divider/index.js';
12
- import VefFlex from '../../vef-flex/index.js';
13
- import VefIcon from '../../vef-icon/index.js';
14
- import VefText from '../../vef-text/index.js';
15
- import { useCrudContext } from '../hooks/use-crud-context.js';
16
- import { useCrudStore } from '../store.js';
17
-
18
- const footerStyle = css`
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{jsx as e,jsxs as t,Fragment as o}from"@emotion/react/jsx-runtime";import{css as r}from"@emotion/react";import{useApiContext as i}from"@vef-framework/core";import{DisabledContextProvider as n}from"@vef-framework/hooks";import{themeVariables as c,isNullish as s,showSuccessMessage as m,isFunction as a}from"@vef-framework/shared";import{Trash2Icon as l}from"lucide-react";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-icon/index.js";import y from"../../vef-text/index.js";import{useCrudContext as g}from"../hooks/use-crud-context.js";import{useCrudStore as j}from"../store.js";const k=r`
19
3
  height: 100%;
20
4
  display: flex;
21
5
  justify-content: space-between;
22
6
  align-items: center;
23
- padding: ${themeVariables.padding};
24
- `;
25
- function VefCrudFooterBase({
26
- tableApi,
27
- tableApiParams,
28
- batchDeletionApi,
29
- batchActionButtons,
30
- selectionSummary
31
- }) {
32
- const { useApiMutation, stubMutationApi } = useApiContext();
33
- const batchDeletionMutation = useApiMutation(batchDeletionApi ?? stubMutationApi);
34
- const [selectedInfo, confirmedFilterValues, setSelectedInfo] = useCrudStore((state) => [
35
- state.selectedInfo,
36
- state.confirmedFilterValues,
37
- state.setSelectedInfo
38
- ]);
39
- const { selectedKeys, selectedRecords } = selectedInfo;
40
- const batchActionButtonsToUse = useMemo(() => {
41
- if (!isNullish(batchDeletionApi)) {
42
- return [
43
- ...batchActionButtons ?? [],
44
- {
45
- key: "_batchDeletion",
46
- label: "\u6279\u91CF\u5220\u9664",
47
- icon: /* @__PURE__ */ jsx(VefIcon, { children: /* @__PURE__ */ jsx(Trash2Icon, {}) }),
48
- color: "error",
49
- permissions: [batchDeletionApi.key],
50
- requireConfirmation: true,
51
- confirmationMode: "detailed",
52
- onClick: async ({ refetch }) => {
53
- const { message } = await batchDeletionMutation.mutate(selectedRecords);
54
- showSuccessMessage(message);
55
- refetch();
56
- }
57
- }
58
- ];
59
- }
60
- return batchActionButtons ?? [];
61
- }, [batchActionButtons, batchDeletionApi, batchDeletionMutation, selectedRecords]);
62
- const crudContext = useCrudContext();
63
- const batchActionButtonContext = useMemo(() => ({
64
- ...crudContext,
65
- ...selectedInfo
66
- }), [crudContext, selectedInfo]);
67
- const isFetching = tableApi.useIsFetching(useMemo(() => ({
68
- ...tableApiParams,
69
- ...confirmedFilterValues
70
- }), [tableApiParams, confirmedFilterValues]));
71
- const handleCancelSelection = useCallback(() => {
72
- setSelectedInfo({
73
- selectedKeys: [],
74
- selectedRecords: []
75
- });
76
- }, [setSelectedInfo]);
77
- const selectionSummaryNode = useMemo(() => {
78
- if (isFunction(selectionSummary)) {
79
- return selectionSummary(selectedRecords);
80
- }
81
- }, [selectedRecords, selectionSummary]);
82
- if (selectedKeys.length === 0) {
83
- return null;
84
- }
85
- return /* @__PURE__ */ jsxs("div", { css: footerStyle, children: [
86
- /* @__PURE__ */ jsxs(VefText, { color: "secondary", children: [
87
- "\u5DF2\u9009\u62E9",
88
- " ",
89
- /* @__PURE__ */ jsx(VefText, { bold: true, color: "primary", children: selectedKeys.length }),
90
- " ",
91
- "\u9879",
92
- selectionSummaryNode && /* @__PURE__ */ jsxs(Fragment, { children: [
93
- /* @__PURE__ */ jsx(VefDivider, { orientation: "vertical" }),
94
- selectionSummaryNode
95
- ] })
96
- ] }),
97
- /* @__PURE__ */ jsx(DisabledContextProvider, { value: isFetching, children: /* @__PURE__ */ jsxs(VefFlex, { align: "center", gap: "medium", children: [
98
- /* @__PURE__ */ jsx(
99
- VefButton,
100
- {
101
- color: "primary",
102
- variant: "text",
103
- onClick: handleCancelSelection,
104
- children: "\u53D6\u6D88\u9009\u62E9"
105
- }
106
- ),
107
- /* @__PURE__ */ jsx(
108
- VefActionButtons,
109
- {
110
- buttons: batchActionButtonsToUse,
111
- context: batchActionButtonContext,
112
- useFlexContainer: false
113
- }
114
- )
115
- ] }) })
116
- ] });
117
- }
118
- const VefCrudFooter = memo(VefCrudFooterBase);
119
-
120
- export { VefCrudFooter as default };
7
+ padding: ${c.padding};
8
+ `;const A=p((function VefCrudFooterBase({tableApi:r,tableApiParams:c,batchDeletionApi:p,batchActionButtons:A,selectionSummary:w}){const{useApiMutation:C,stubMutationApi:F}=i(),I=C(p??F),[M,B,D]=j((e=>[e.selectedInfo,e.confirmedFilterValues,e.setSelectedInfo])),{selectedKeys:K,selectedRecords:R}=M,S=d((()=>s(p)?A??[]:[...A??[],{key:"_batchDeletion",label:"批量删除",icon:e(b,{children:e(l,{})}),color:"error",permissions:[p.key],requireConfirmation:!0,confirmationMode:"detailed",onClick:async({refetch:e})=>{const{message:t}=await I.mutate(R);m(t),e()}}]),[A,p,I,R]),V=g(),q=d((()=>({...V,...M})),[V,M]),P=r.useIsFetching(d((()=>({...c,...B})),[c,B])),$=f((()=>{D({selectedKeys:[],selectedRecords:[]})}),[D]),_=d((()=>{if(a(w))return w(R)}),[R,w]);return 0===K.length?null:t("div",{css:k,children:[t(y,{color:"secondary",children:["已选择"," ",e(y,{bold:!0,color:"primary",children:K.length})," ","项",_&&t(o,{children:[e(x,{orientation:"vertical"}),_]})]}),e(n,{value:P,children:t(v,{align:"center",gap:"medium",children:[e(h,{color:"primary",variant:"text",onClick:$,children:"取消选择"}),e(u,{buttons:S,context:q,useFlexContainer:!1})]})})]})}));export{A as default};
121
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 */
@@ -1,54 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import VefFormModal from '../../vef-form-modal/index.js';
4
- import { useCrudStore } from '../store.js';
5
-
6
- function VefCrudFormModal({
7
- formSchema,
8
- formApis
9
- }) {
10
- const [
11
- isFormOpen,
12
- {
13
- scene,
14
- title,
15
- width
16
- },
17
- { onBeforeSubmit, onSubmitSuccess },
18
- currentFormInitialValues,
19
- isFormLoading,
20
- closeForm
21
- ] = useCrudStore(
22
- (state) => [
23
- state.isFormOpen,
24
- state.currentFormInfo,
25
- state.currentFormEventHandlers,
26
- state.currentFormInitialValues,
27
- state.isFormLoading,
28
- state.closeForm
29
- ]
30
- );
31
- const formApi = formApis[scene];
32
- if (!formApi) {
33
- throw new Error(`Form api for scene ${scene} not found, please check the formApis props of VefCrudPage component.`);
34
- }
35
- return /* @__PURE__ */ jsx(
36
- VefFormModal,
37
- {
38
- initialValues: currentFormInitialValues,
39
- loading: isFormLoading,
40
- open: isFormOpen,
41
- scene,
42
- schema: formSchema,
43
- submitApi: formApi,
44
- title,
45
- width,
46
- onBeforeSubmit,
47
- onClose: closeForm,
48
- onSubmitSuccess
49
- }
50
- );
51
- }
52
-
53
- export { VefCrudFormModal as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, 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 VefCrudFormModal({formSchema:t,formApis:n}){const[i,{scene:m,title:s,width:f},{onBeforeSubmit:u,onSubmitSuccess:c},a,l,d]=r((o=>[o.isFormOpen,o.currentFormInfo,o.currentFormEventHandlers,o.currentFormInitialValues,o.isFormLoading,o.closeForm])),p=n[m];if(!p)throw new Error(`Form api for scene ${m} not found, please check the formApis props of VefCrudPage component.`);return o(e,{initialValues:a,loading:l,open:i,scene:m,schema:t,submitApi:p,title:s,width:f,onBeforeSubmit:u,onClose:d,onSubmitSuccess:c})}export{VefCrudFormModal as default};
54
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 */
@@ -1,30 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { memo } from 'react';
4
- import VefCrudFilter from './crud-filter.js';
5
-
6
- function VefCrudHeaderBase({
7
- title,
8
- tableApi,
9
- tableApiParams,
10
- filterItems,
11
- actionButtons
12
- }) {
13
- if (filterItems.length > 0) {
14
- return /* @__PURE__ */ jsx(
15
- VefCrudFilter,
16
- {
17
- actionButtons,
18
- filterSchema: filterItems,
19
- tableApi,
20
- tableApiParams,
21
- title
22
- }
23
- );
24
- }
25
- return null;
26
- }
27
- const VefCrudHeader = memo(VefCrudHeaderBase);
28
-
29
- export { VefCrudHeader as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, 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 a=e((function VefCrudHeaderBase({title:e,tableApi:a,tableApiParams:i,filterItems:o,actionButtons:l}){return o.length>0?t(r,{actionButtons:l,filterSchema:o,tableApi:a,tableApiParams:i,title:e}):null}));export{a as default};
30
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 */
@@ -1,77 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { useMemo, useCallback, useRef, useEffect, memo } from 'react';
4
- import VefTable from '../../vef-table/index.js';
5
- import { useCrudContext } from '../hooks/use-crud-context.js';
6
- import { useOperationButtons } from '../hooks/use-operation-buttons.js';
7
- import { useCrudStore, useCrudStoreApi } from '../store.js';
8
-
9
- function VefCrudTableBase({
10
- api,
11
- apiParams,
12
- deletionApi,
13
- paginated,
14
- schema,
15
- selectable,
16
- operationButtons,
17
- ...tableProps
18
- }) {
19
- const [confirmedFilterValues, selectedInfo, setSelectedInfo] = useCrudStore((state) => [state.confirmedFilterValues, state.selectedInfo, state.setSelectedInfo]);
20
- const mergedApiParams = useMemo(() => ({
21
- ...apiParams,
22
- ...confirmedFilterValues
23
- }), [apiParams, confirmedFilterValues]);
24
- const handleSelectionChange = useCallback((selectedKeys, selectedRecords) => {
25
- setSelectedInfo({
26
- selectedKeys,
27
- selectedRecords
28
- });
29
- }, [setSelectedInfo]);
30
- const operationButtonsToUse = useOperationButtons(deletionApi, operationButtons);
31
- const tableInstanceRef = useRef(null);
32
- const crudStore = useCrudStoreApi();
33
- useEffect(() => {
34
- crudStore.setState({ tableInstanceRef });
35
- }, [crudStore]);
36
- const crudContext = useCrudContext();
37
- if (paginated) {
38
- return /* @__PURE__ */ jsx(
39
- VefTable,
40
- {
41
- ref: tableInstanceRef,
42
- multipleSelection: true,
43
- paginated: true,
44
- api,
45
- apiParams: mergedApiParams,
46
- externalContext: crudContext,
47
- operationButtons: operationButtonsToUse,
48
- schema,
49
- selectable,
50
- selectedKeys: selectedInfo.selectedKeys,
51
- selectionSummary: false,
52
- onRowSelectionChange: handleSelectionChange,
53
- ...tableProps
54
- }
55
- );
56
- }
57
- return /* @__PURE__ */ jsx(
58
- VefTable,
59
- {
60
- ref: tableInstanceRef,
61
- multipleSelection: true,
62
- api,
63
- apiParams: mergedApiParams,
64
- externalContext: crudContext,
65
- schema,
66
- selectable,
67
- selectedKeys: selectedInfo.selectedKeys,
68
- selectionSummary: false,
69
- onRowSelectionChange: handleSelectionChange,
70
- ...tableProps
71
- }
72
- );
73
- }
74
- const VefCrudTable = memo(VefCrudTableBase);
75
-
76
- export { VefCrudTable as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{jsx as e}from"@emotion/react/jsx-runtime";import{useMemo as t,useCallback as o,useRef as s,useEffect as a,memo as n}from"react";import r from"../../vef-table/index.js";import{useCrudContext as l}from"../hooks/use-crud-context.js";import{useOperationButtons as i}from"../hooks/use-operation-buttons.js";import{useCrudStore as c,useCrudStoreApi as m}from"../store.js";const p=n((function VefCrudTableBase({api:n,apiParams:p,deletionApi:d,paginated:u,schema:f,selectable:x,operationButtons:S,...b}){const[h,y,j]=c((e=>[e.confirmedFilterValues,e.selectedInfo,e.setSelectedInfo])),C=t((()=>({...p,...h})),[p,h]),K=o(((e,t)=>{j({selectedKeys:e,selectedRecords:t})}),[j]),g=i(d,S),R=s(null),B=m();a((()=>{B.setState({tableInstanceRef:R})}),[B]);const I=l();return e(r,u?{ref:R,multipleSelection:!0,paginated:!0,api:n,apiParams:C,externalContext:I,operationButtons:g,schema:f,selectable:x,selectedKeys:y.selectedKeys,selectionSummary:!1,onRowSelectionChange:K,...b}:{ref:R,multipleSelection:!0,api:n,apiParams:C,externalContext:I,schema:f,selectable:x,selectedKeys:y.selectedKeys,selectionSummary:!1,onRowSelectionChange:K,...b})}));export{p as default};
77
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 */
@@ -1,38 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { creationFormScene } from '@vef-framework/shared';
4
- import { PlusIcon } from 'lucide-react';
5
- import { useMemo } from 'react';
6
- import VefIcon from '../../vef-icon/index.js';
7
- import { useCrudStore } from '../store.js';
8
-
9
- function useActionButtons(actionButtons) {
10
- const formApiKeys = useCrudStore((state) => state.formApiKeys);
11
- const showCreationActionButton = Reflect.has(formApiKeys, creationFormScene);
12
- const creationFormApiKey = Reflect.get(formApiKeys, creationFormScene);
13
- return useMemo(() => {
14
- if (showCreationActionButton) {
15
- return [
16
- ...actionButtons ?? [],
17
- {
18
- label: "\u521B\u5EFA",
19
- key: `_${creationFormScene}`,
20
- icon: /* @__PURE__ */ jsx(VefIcon, { children: /* @__PURE__ */ jsx(PlusIcon, {}) }),
21
- color: "primary",
22
- permissions: [creationFormApiKey],
23
- onClick: ({ openForm, refetch }) => openForm({
24
- scene: creationFormScene,
25
- title: "\u521B\u5EFA",
26
- onSubmitSuccess: () => {
27
- refetch();
28
- }
29
- })
30
- }
31
- ];
32
- }
33
- return actionButtons ?? [];
34
- }, [showCreationActionButton, actionButtons, creationFormApiKey]);
35
- }
36
-
37
- export { useActionButtons };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{jsx as e}from"@emotion/react/jsx-runtime";import{creationFormScene as o}from"@vef-framework/shared";import{PlusIcon as r}from"lucide-react";import{useMemo as t}from"react";import i from"../../vef-icon/index.js";import{useCrudStore as m}from"../store.js";function useActionButtons(c){const n=m((e=>e.formApiKeys)),s=Reflect.has(n,o),f=Reflect.get(n,o);return t((()=>s?[...c??[],{label:"创建",key:`_${o}`,icon:e(i,{children:e(r,{})}),color:"primary",permissions:[f],onClick:({openForm:e,refetch:r})=>e({scene:o,title:"创建",onSubmitSuccess:()=>{r()}})}]:c??[]),[s,c,f])}export{useActionButtons};
38
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 */
@@ -1,21 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { useMemo } from 'react';
3
- import { useCrudStore } from '../store.js';
4
-
5
- function useCrudContext() {
6
- const [openForm, filterValues, tableInstanceRef] = useCrudStore((state) => [
7
- state.openForm,
8
- state.filterValues,
9
- state.tableInstanceRef
10
- ]);
11
- return useMemo(() => ({
12
- openForm,
13
- filterValues,
14
- refetch: async () => {
15
- await tableInstanceRef.current?.refetch();
16
- }
17
- }), [openForm, filterValues, tableInstanceRef]);
18
- }
19
-
20
- export { useCrudContext };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{useMemo as e}from"react";import{useCrudStore as t}from"../store.js";function useCrudContext(){const[r,o,n]=t((e=>[e.openForm,e.filterValues,e.tableInstanceRef]));return e((()=>({openForm:r,filterValues:o,refetch:async()=>{await(n.current?.refetch())}})),[r,o,n])}export{useCrudContext};
21
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 */
@@ -1,115 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { isNullish, isString } from '@vef-framework/shared';
3
- import { useMemo } from 'react';
4
-
5
- function useCrudSchema(schema) {
6
- return useMemo(() => {
7
- const tableColumns = [];
8
- const filterItems = [];
9
- const filterValueAsDefaultSet = /* @__PURE__ */ new Set();
10
- const formGroupMap = {};
11
- for (const item of schema) {
12
- const {
13
- filter,
14
- form,
15
- ...column
16
- } = item;
17
- const { name, title } = column;
18
- tableColumns.push(column);
19
- if (filter) {
20
- const {
21
- label,
22
- advanced,
23
- ...rest
24
- } = filter;
25
- const filterItem = {
26
- name,
27
- label: advanced && isNullish(label) ? title : label,
28
- advanced,
29
- ...rest
30
- };
31
- if ((filterItem.type === "Input" || filterItem.type === "InputNumber") && isNullish(label) && isNullish(filterItem.placeholder)) {
32
- filterItem.placeholder = isString(title) ? `\u8BF7\u8F93\u5165${title}` : "\u8BF7\u8F93\u5165";
33
- }
34
- filterItems.push(filterItem);
35
- }
36
- if (form) {
37
- const {
38
- group,
39
- row,
40
- column: column2,
41
- filterValueAsDefault,
42
- label,
43
- ...rest
44
- } = form;
45
- const groupKey = `${group ?? 1}`;
46
- const groupSchema = formGroupMap[groupKey] ?? {};
47
- if (!formGroupMap[groupKey]) {
48
- formGroupMap[groupKey] = groupSchema;
49
- }
50
- const rowKey = `${row ?? 1}`;
51
- const rowSchema = groupSchema[rowKey] ?? {};
52
- if (!groupSchema[rowKey]) {
53
- groupSchema[rowKey] = rowSchema;
54
- }
55
- const columnKey = `${column2 ?? 1}`;
56
- const columnSchema = rowSchema[columnKey] ?? [];
57
- if (!rowSchema[columnKey]) {
58
- rowSchema[columnKey] = columnSchema;
59
- }
60
- if (rest.type === "Hidden") {
61
- columnSchema.push({
62
- name,
63
- ...rest
64
- });
65
- } else {
66
- columnSchema.push({
67
- name,
68
- label: isNullish(label) ? title : label,
69
- ...rest
70
- });
71
- }
72
- if (filterValueAsDefault ?? false) {
73
- filterValueAsDefaultSet.add(name);
74
- }
75
- }
76
- }
77
- const formGroups = [];
78
- const groupKeys = Object.keys(formGroupMap).sort();
79
- for (const groupKey of groupKeys) {
80
- const groupSchemaMap = formGroupMap[groupKey];
81
- const formRows = [];
82
- const rowKeys = Object.keys(groupSchemaMap).sort();
83
- for (const rowKey of rowKeys) {
84
- const rowSchema = groupSchemaMap[rowKey];
85
- const formColumns = [];
86
- const columnKeys = Object.keys(rowSchema).sort();
87
- for (const columnKey of columnKeys) {
88
- const columnSchema = rowSchema[columnKey];
89
- const formColumn = {
90
- key: columnKey,
91
- items: columnSchema
92
- };
93
- formColumns.push(formColumn);
94
- }
95
- formRows.push({
96
- key: rowKey,
97
- columns: formColumns
98
- });
99
- }
100
- formGroups.push({
101
- key: groupKey,
102
- rows: formRows
103
- });
104
- }
105
- return {
106
- tableSchema: tableColumns,
107
- filterItems,
108
- formGroups,
109
- filterValueAsDefaultKeys: Array.from(filterValueAsDefaultSet)
110
- };
111
- }, [schema]);
112
- }
113
-
114
- export { useCrudSchema };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{isNullish as e,isString as t}from"@vef-framework/shared";import{useMemo as o}from"react";function useCrudSchema(r){return o((()=>{const o=[],s=[],n=new Set,c={};for(const a of r){const{filter:r,form:u,...f}=a,{name:l,title:m}=f;if(o.push(f),r){const{label:o,advanced:n,...c}=r,a={name:l,label:n&&e(o)?m:o,advanced:n,...c};("Input"===a.type||"InputNumber"===a.type)&&e(o)&&e(a.placeholder)&&(a.placeholder=t(m)?`请输入${m}`:"请输入"),s.push(a)}if(u){const{group:t,row:o,column:r,filterValueAsDefault:s,label:a,...f}=u,p=`${t??1}`,d=c[p]??{};c[p]||(c[p]=d);const h=`${o??1}`,i=d[h]??{};d[h]||(d[h]=i);const y=`${r??1}`,b=i[y]??[];i[y]||(i[y]=b),"Hidden"===f.type?b.push({name:l,...f}):b.push({name:l,label:e(a)?m:a,...f}),s&&n.add(l)}}const a=[],u=Object.keys(c).sort();for(const e of u){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{useCrudSchema};
115
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 */