@vef-framework/components 1.0.101 → 1.0.102

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 (674) hide show
  1. package/es/index.js +1 -91
  2. package/es/internal/base.css.js +490 -4
  3. package/es/internal/chart.js +1 -19
  4. package/es/internal/index.js +1 -4
  5. package/es/internal/modern-normalize.css.js +213 -4
  6. package/es/internal/utils.js +1 -7
  7. package/es/vef-access-denied/access-denied-icon.js +1 -929
  8. package/es/vef-access-denied/index.js +3 -40
  9. package/es/vef-action-buttons/index.js +1 -76
  10. package/es/vef-approval-flow-editor/components/edge.js +2 -84
  11. package/es/vef-approval-flow-editor/components/label-value.js +2 -22
  12. package/es/vef-approval-flow-editor/components/node-content.js +4 -40
  13. package/es/vef-approval-flow-editor/components/node-selector.js +2 -32
  14. package/es/vef-approval-flow-editor/components/node-toolbar.js +1 -22
  15. package/es/vef-approval-flow-editor/components/nodes/approval.js +1 -25
  16. package/es/vef-approval-flow-editor/components/nodes/condition.js +1 -25
  17. package/es/vef-approval-flow-editor/components/nodes/end.js +1 -25
  18. package/es/vef-approval-flow-editor/components/nodes/handle.js +1 -25
  19. package/es/vef-approval-flow-editor/components/nodes/index.js +1 -18
  20. package/es/vef-approval-flow-editor/components/nodes/submit.js +1 -25
  21. package/es/vef-approval-flow-editor/components/selector-content.js +3 -43
  22. package/es/vef-approval-flow-editor/components/source-handle.js +1 -41
  23. package/es/vef-approval-flow-editor/components/target-handle.js +1 -10
  24. package/es/vef-approval-flow-editor/constants.js +1 -219
  25. package/es/vef-approval-flow-editor/helper.js +1 -84
  26. package/es/vef-approval-flow-editor/hooks/use-edges-interaction.js +1 -26
  27. package/es/vef-approval-flow-editor/hooks/use-element-selection.js +1 -25
  28. package/es/vef-approval-flow-editor/hooks/use-nodes-interaction.js +1 -52
  29. package/es/vef-approval-flow-editor/index.js +1 -76
  30. package/es/vef-approval-flow-editor/models/edge-node.js +1 -21
  31. package/es/vef-approval-flow-editor/models/flow-node.js +1 -106
  32. package/es/vef-approval-flow-editor/store.js +1 -17
  33. package/es/vef-approval-flow-editor/styles.js +3 -12
  34. package/es/vef-approval-flow-editor/types.js +1 -16
  35. package/es/vef-area-chart/index.js +1 -42
  36. package/es/vef-auto-sizer/index.js +1 -7
  37. package/es/vef-avatar/index.js +1 -21
  38. package/es/vef-avatar-group/index.js +1 -26
  39. package/es/vef-badge/index.js +1 -48
  40. package/es/vef-bar-chart/index.js +1 -42
  41. package/es/vef-bool/hooks/use-bool-instance.js +1 -35
  42. package/es/vef-bool/index.js +1 -61
  43. package/es/vef-breadcrumb/index.js +1 -49
  44. package/es/vef-button/components/base-button.js +1 -74
  45. package/es/vef-button/index.js +1 -152
  46. package/es/vef-card/index.js +1 -26
  47. package/es/vef-card-meta/index.js +1 -13
  48. package/es/vef-chart-container/hooks/use-chart-container-context.js +1 -13
  49. package/es/vef-chart-container/index.js +5 -72
  50. package/es/vef-chart-legend-content/index.js +4 -38
  51. package/es/vef-chart-tooltip-content/index.js +9 -73
  52. package/es/vef-checkbox/hooks/use-checkbox-instance.js +1 -21
  53. package/es/vef-checkbox/hooks/use-data-options.js +1 -41
  54. package/es/vef-checkbox/index.js +2 -88
  55. package/es/vef-col/index.js +1 -12
  56. package/es/vef-color-picker/index.js +1 -47
  57. package/es/vef-compact/index.js +1 -16
  58. package/es/vef-config-provider/global-style.js +3 -12
  59. package/es/vef-config-provider/hooks/use-ui-config.js +1 -127
  60. package/es/vef-config-provider/index.js +3 -122
  61. package/es/vef-config-provider/store.js +1 -22
  62. package/es/vef-container/index.js +1 -19
  63. package/es/vef-crud-page/components/crud-actions.js +1 -33
  64. package/es/vef-crud-page/components/crud-filter.js +1 -55
  65. package/es/vef-crud-page/components/crud-footer.js +2 -116
  66. package/es/vef-crud-page/components/crud-form-modal.js +1 -54
  67. package/es/vef-crud-page/components/crud-header.js +1 -30
  68. package/es/vef-crud-page/components/crud-table.js +1 -77
  69. package/es/vef-crud-page/hooks/use-action-buttons.js +1 -38
  70. package/es/vef-crud-page/hooks/use-crud-context.js +1 -21
  71. package/es/vef-crud-page/hooks/use-crud-schema.js +1 -117
  72. package/es/vef-crud-page/hooks/use-operation-buttons.js +1 -61
  73. package/es/vef-crud-page/index.js +1 -151
  74. package/es/vef-crud-page/store.js +1 -143
  75. package/es/vef-data-grid/index.js +1 -86
  76. package/es/vef-data-table/index.js +1 -10
  77. package/es/vef-divider/index.js +1 -25
  78. package/es/vef-drawer/components/action-button-wrapper.js +1 -50
  79. package/es/vef-drawer/components/button-props.js +1 -3
  80. package/es/vef-drawer/components/cancel-action-button.js +1 -22
  81. package/es/vef-drawer/components/ok-action-button.js +1 -21
  82. package/es/vef-drawer/context.js +1 -16
  83. package/es/vef-drawer/index.js +2 -154
  84. package/es/vef-dropdown/index.js +1 -93
  85. package/es/vef-dynamic-icon/index.js +1 -47
  86. package/es/vef-dynamic-icon/props.js +1 -7
  87. package/es/vef-empty/index.js +1 -38
  88. package/es/vef-empty-placeholder/index.js +2 -18
  89. package/es/vef-error/error-icon.js +1 -758
  90. package/es/vef-error/index.js +3 -43
  91. package/es/vef-filter/components/action-buttons.js +2 -117
  92. package/es/vef-filter/components/advanced-filter.js +3 -67
  93. package/es/vef-filter/components/basic-filter.js +2 -34
  94. package/es/vef-filter/components/fields/index.js +1 -20
  95. package/es/vef-filter/components/fields/input-number.js +1 -91
  96. package/es/vef-filter/components/fields/input.js +1 -68
  97. package/es/vef-filter/components/fields/radio.js +1 -110
  98. package/es/vef-filter/components/fields/select.js +1 -141
  99. package/es/vef-filter/components/fields/tree-select.js +1 -137
  100. package/es/vef-filter/components/filter-field.js +1 -20
  101. package/es/vef-filter/components/filter-item.js +1 -113
  102. package/es/vef-filter/event.js +1 -45
  103. package/es/vef-filter/helper.js +1 -16
  104. package/es/vef-filter/hooks/use-action-handlers.js +1 -71
  105. package/es/vef-filter/hooks/use-computed-values.js +1 -56
  106. package/es/vef-filter/hooks/use-filter-context.js +1 -19
  107. package/es/vef-filter/hooks/use-filter-initialization.js +1 -38
  108. package/es/vef-filter/hooks/use-filter-instance.js +1 -27
  109. package/es/vef-filter/hooks/use-filter-items.js +1 -24
  110. package/es/vef-filter/hooks/use-filter-values-change.js +1 -31
  111. package/es/vef-filter/hooks/use-label-config.js +1 -28
  112. package/es/vef-filter/index.js +2 -142
  113. package/es/vef-filter/store.js +1 -72
  114. package/es/vef-flex/index.js +1 -32
  115. package/es/vef-float-button/index.js +1 -50
  116. package/es/vef-float-button-group/index.js +1 -21
  117. package/es/vef-form/components/fields/icon-select.js +1 -66
  118. package/es/vef-form/components/fields/index.js +1 -26
  119. package/es/vef-form/components/fields/input-number.js +1 -124
  120. package/es/vef-form/components/fields/input.js +1 -133
  121. package/es/vef-form/components/fields/password.js +1 -116
  122. package/es/vef-form/components/fields/radio.js +1 -107
  123. package/es/vef-form/components/fields/select.js +1 -239
  124. package/es/vef-form/components/fields/textarea.js +1 -110
  125. package/es/vef-form/components/fields/tree-select.js +1 -235
  126. package/es/vef-form/components/form-actions.js +2 -58
  127. package/es/vef-form/components/form-content.js +2 -145
  128. package/es/vef-form/components/form-field.js +1 -23
  129. package/es/vef-form/components/form-group.js +2 -64
  130. package/es/vef-form/components/form-hidden-item.js +1 -37
  131. package/es/vef-form/components/form-item.js +1 -80
  132. package/es/vef-form/components/form-row.js +1 -99
  133. package/es/vef-form/event.js +1 -45
  134. package/es/vef-form/helper.js +1 -16
  135. package/es/vef-form/hooks/use-action-handlers.js +1 -131
  136. package/es/vef-form/hooks/use-columns-layout.js +1 -123
  137. package/es/vef-form/hooks/use-computed-values.js +1 -56
  138. package/es/vef-form/hooks/use-form-context.js +1 -15
  139. package/es/vef-form/hooks/use-form-initialization.js +1 -46
  140. package/es/vef-form/hooks/use-form-instance.js +1 -27
  141. package/es/vef-form/hooks/use-form-values-change.js +1 -31
  142. package/es/vef-form/hooks/use-label-width.js +1 -19
  143. package/es/vef-form/index.js +2 -174
  144. package/es/vef-form/store.js +1 -66
  145. package/es/vef-form/validation-rules.js +1 -287
  146. package/es/vef-form-drawer/index.js +1 -99
  147. package/es/vef-form-modal/index.js +1 -96
  148. package/es/vef-generic-select/index.js +1 -82
  149. package/es/vef-grid/index.js +9 -75
  150. package/es/vef-grid/props.js +1 -5
  151. package/es/vef-grid-item/index.js +1 -53
  152. package/es/vef-icon/index.js +1 -51
  153. package/es/vef-icon-select/index.js +4 -140
  154. package/es/vef-input/hooks/use-input-instance.js +1 -16
  155. package/es/vef-input/index.js +1 -65
  156. package/es/vef-input-number/hooks/use-input-number-instance.js +1 -14
  157. package/es/vef-input-number/index.js +1 -149
  158. package/es/vef-layout/common-styles.js +2 -9
  159. package/es/vef-layout/components/content.js +1 -14
  160. package/es/vef-layout/components/font-size.js +1 -69
  161. package/es/vef-layout/components/fullscreen.js +1 -24
  162. package/es/vef-layout/components/header-action-icons.js +2 -26
  163. package/es/vef-layout/components/header-content.js +1 -20
  164. package/es/vef-layout/components/header.js +2 -66
  165. package/es/vef-layout/components/icon-boy.js +1 -70
  166. package/es/vef-layout/components/icon-girl.js +1 -77
  167. package/es/vef-layout/components/icon-menu-fold-left.js +1 -24
  168. package/es/vef-layout/components/icon-menu-unfold-left.js +1 -24
  169. package/es/vef-layout/components/menu-groups.js +5 -114
  170. package/es/vef-layout/components/message.js +1 -12
  171. package/es/vef-layout/components/search.js +1 -12
  172. package/es/vef-layout/components/sider.js +2 -52
  173. package/es/vef-layout/components/title.js +2 -48
  174. package/es/vef-layout/components/user-avatar.js +4 -76
  175. package/es/vef-layout/hooks/use-layout-context.js +1 -11
  176. package/es/vef-layout/index.js +2 -34
  177. package/es/vef-layout/logo.svg.js +1 -5
  178. package/es/vef-layout/store.js +1 -17
  179. package/es/vef-line-chart/index.js +1 -39
  180. package/es/vef-loading-placeholder/index.js +2 -40
  181. package/es/vef-login/index.js +9 -141
  182. package/es/vef-login/login-icon.js +1 -669
  183. package/es/vef-menu/index.js +2 -76
  184. package/es/vef-modal/components/action-button-wrapper.js +1 -50
  185. package/es/vef-modal/components/button-props.js +1 -3
  186. package/es/vef-modal/components/cancel-action-button.js +1 -19
  187. package/es/vef-modal/components/ok-action-button.js +1 -21
  188. package/es/vef-modal/context.js +1 -16
  189. package/es/vef-modal/index.js +2 -240
  190. package/es/vef-not-found/index.js +3 -40
  191. package/es/vef-not-found/not-found-icon.js +1 -845
  192. package/es/vef-page/index.js +2 -80
  193. package/es/vef-pagination/index.js +1 -58
  194. package/es/vef-pagination/props.js +1 -14
  195. package/es/vef-paragraph/index.js +1 -90
  196. package/es/vef-password/hooks/use-password-instance.js +1 -14
  197. package/es/vef-password/index.js +1 -68
  198. package/es/vef-pie-chart/index.js +3 -66
  199. package/es/vef-popconfirm/index.js +1 -57
  200. package/es/vef-popover/index.js +1 -35
  201. package/es/vef-radio/hooks/use-data-options.js +1 -41
  202. package/es/vef-radio/hooks/use-radio-instance.js +1 -21
  203. package/es/vef-radio/index.js +2 -88
  204. package/es/vef-rate/hooks/use-rate-instance.js +1 -14
  205. package/es/vef-rate/index.js +1 -31
  206. package/es/vef-responsive-container/index.js +2 -55
  207. package/es/vef-responsive-item/index.js +2 -24
  208. package/es/vef-ribbon/index.js +1 -39
  209. package/es/vef-row/index.js +1 -13
  210. package/es/vef-scroll-area/components/scrollbar.js +5 -33
  211. package/es/vef-scroll-area/index.js +3 -70
  212. package/es/vef-select/components/option.js +2 -23
  213. package/es/vef-select/hooks/use-data-options.js +1 -48
  214. package/es/vef-select/hooks/use-field-names.js +1 -22
  215. package/es/vef-select/hooks/use-render-label.js +2 -24
  216. package/es/vef-select/hooks/use-render-option.js +1 -20
  217. package/es/vef-select/hooks/use-select-instance.js +1 -21
  218. package/es/vef-select/index.js +1 -101
  219. package/es/vef-slider/hooks/use-slider-instance.js +1 -14
  220. package/es/vef-slider/index.js +1 -35
  221. package/es/vef-sortable-list/components/overlay-item.js +2 -32
  222. package/es/vef-sortable-list/components/sortable-item.js +2 -76
  223. package/es/vef-sortable-list/hooks/use-merged-items.js +1 -22
  224. package/es/vef-sortable-list/index.js +1 -115
  225. package/es/vef-space/index.js +1 -26
  226. package/es/vef-spin/index.js +1 -13
  227. package/es/vef-splitter/index.js +1 -21
  228. package/es/vef-splitter-panel/index.js +1 -13
  229. package/es/vef-status/index.js +1 -38
  230. package/es/vef-table/components/columns/bool.js +1 -92
  231. package/es/vef-table/components/columns/code.js +1 -11
  232. package/es/vef-table/components/columns/data-dictionary.js +1 -93
  233. package/es/vef-table/components/columns/enum.js +1 -102
  234. package/es/vef-table/components/columns/file.js +1 -11
  235. package/es/vef-table/components/columns/icon.js +1 -11
  236. package/es/vef-table/components/columns/id.js +1 -83
  237. package/es/vef-table/components/columns/image.js +1 -12
  238. package/es/vef-table/components/columns/index.js +1 -34
  239. package/es/vef-table/components/columns/markdown.js +1 -11
  240. package/es/vef-table/components/columns/number.js +1 -84
  241. package/es/vef-table/components/columns/render.js +1 -29
  242. package/es/vef-table/components/columns/rich-text.js +1 -11
  243. package/es/vef-table/components/columns/text.js +1 -89
  244. package/es/vef-table/components/columns-settings.js +2 -188
  245. package/es/vef-table/components/operation-buttons.js +2 -231
  246. package/es/vef-table/components/settings-icon.js +2 -19
  247. package/es/vef-table/components/table-footer.js +2 -102
  248. package/es/vef-table/helper.js +1 -16
  249. package/es/vef-table/hooks/use-computed-batch-buttons.js +1 -34
  250. package/es/vef-table/hooks/use-computed-columns.js +1 -21
  251. package/es/vef-table/hooks/use-computed-values.js +1 -39
  252. package/es/vef-table/hooks/use-data.js +1 -58
  253. package/es/vef-table/hooks/use-default-column-configs.js +1 -28
  254. package/es/vef-table/hooks/use-display-value.js +1 -37
  255. package/es/vef-table/hooks/use-helper-columns.js +1 -68
  256. package/es/vef-table/hooks/use-operation-column-width.js +1 -51
  257. package/es/vef-table/hooks/use-pagination-props.js +1 -45
  258. package/es/vef-table/hooks/use-row-props.js +1 -40
  259. package/es/vef-table/hooks/use-row-selection-config.js +1 -113
  260. package/es/vef-table/hooks/use-selected-rows.js +1 -27
  261. package/es/vef-table/hooks/use-table-columns.js +1 -57
  262. package/es/vef-table/hooks/use-table-context.js +1 -22
  263. package/es/vef-table/hooks/use-table-instance.js +1 -16
  264. package/es/vef-table/hooks/use-table-summary.js +1 -43
  265. package/es/vef-table/hooks/use-table-width.js +1 -14
  266. package/es/vef-table/index.js +3 -226
  267. package/es/vef-table/store.js +1 -18
  268. package/es/vef-tabs/index.js +1 -26
  269. package/es/vef-tag/index.js +1 -29
  270. package/es/vef-temporal-picker/helper.js +1 -58
  271. package/es/vef-temporal-picker/hooks/use-dayjs-value.js +1 -19
  272. package/es/vef-temporal-picker/hooks/use-temporal-limit.js +1 -35
  273. package/es/vef-temporal-picker/hooks/use-temporal-picker-instance.js +1 -20
  274. package/es/vef-temporal-picker/index.js +1 -126
  275. package/es/vef-temporal-range-picker/helper.js +1 -58
  276. package/es/vef-temporal-range-picker/hooks/use-dayjs-values.js +1 -24
  277. package/es/vef-temporal-range-picker/hooks/use-temporal-limit.js +1 -35
  278. package/es/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.js +1 -20
  279. package/es/vef-temporal-range-picker/index.js +1 -129
  280. package/es/vef-temporal-range-picker/props.js +1 -5
  281. package/es/vef-text/index.js +1 -81
  282. package/es/vef-textarea/hooks/use-textarea-instance.js +1 -14
  283. package/es/vef-textarea/index.js +1 -68
  284. package/es/vef-title/index.js +3 -87
  285. package/es/vef-tooltip/index.js +1 -36
  286. package/es/vef-tree-select/hooks/use-change-handler.js +1 -34
  287. package/es/vef-tree-select/hooks/use-data-options.js +1 -46
  288. package/es/vef-tree-select/hooks/use-tree-select-instance.js +1 -21
  289. package/es/vef-tree-select/index.js +1 -90
  290. package/es/vef-virtual-grid/index.js +3 -108
  291. package/es/vef-virtual-list/index.js +4 -216
  292. package/lib/index.cjs +1 -187
  293. package/lib/internal/base.css.cjs +488 -6
  294. package/lib/internal/chart.cjs +1 -23
  295. package/lib/internal/index.cjs +1 -13
  296. package/lib/internal/modern-normalize.css.cjs +211 -6
  297. package/lib/internal/utils.cjs +1 -11
  298. package/lib/vef-access-denied/access-denied-icon.cjs +1 -933
  299. package/lib/vef-access-denied/index.cjs +3 -44
  300. package/lib/vef-access-denied/props.cjs +1 -5
  301. package/lib/vef-action-buttons/index.cjs +1 -80
  302. package/lib/vef-action-buttons/props.cjs +1 -5
  303. package/lib/vef-approval-flow-editor/components/edge.cjs +2 -88
  304. package/lib/vef-approval-flow-editor/components/label-value.cjs +2 -26
  305. package/lib/vef-approval-flow-editor/components/node-content.cjs +4 -44
  306. package/lib/vef-approval-flow-editor/components/node-selector.cjs +2 -36
  307. package/lib/vef-approval-flow-editor/components/node-toolbar.cjs +1 -26
  308. package/lib/vef-approval-flow-editor/components/nodes/approval.cjs +1 -29
  309. package/lib/vef-approval-flow-editor/components/nodes/condition.cjs +1 -29
  310. package/lib/vef-approval-flow-editor/components/nodes/end.cjs +1 -29
  311. package/lib/vef-approval-flow-editor/components/nodes/handle.cjs +1 -29
  312. package/lib/vef-approval-flow-editor/components/nodes/index.cjs +1 -22
  313. package/lib/vef-approval-flow-editor/components/nodes/submit.cjs +1 -29
  314. package/lib/vef-approval-flow-editor/components/selector-content.cjs +3 -47
  315. package/lib/vef-approval-flow-editor/components/source-handle.cjs +1 -45
  316. package/lib/vef-approval-flow-editor/components/target-handle.cjs +1 -14
  317. package/lib/vef-approval-flow-editor/constants.cjs +1 -228
  318. package/lib/vef-approval-flow-editor/helper.cjs +1 -91
  319. package/lib/vef-approval-flow-editor/hooks/use-edges-interaction.cjs +1 -30
  320. package/lib/vef-approval-flow-editor/hooks/use-element-selection.cjs +1 -29
  321. package/lib/vef-approval-flow-editor/hooks/use-nodes-interaction.cjs +1 -56
  322. package/lib/vef-approval-flow-editor/index.cjs +1 -80
  323. package/lib/vef-approval-flow-editor/models/edge-node.cjs +1 -26
  324. package/lib/vef-approval-flow-editor/models/flow-node.cjs +1 -115
  325. package/lib/vef-approval-flow-editor/props.cjs +1 -5
  326. package/lib/vef-approval-flow-editor/store.cjs +1 -23
  327. package/lib/vef-approval-flow-editor/styles.cjs +3 -17
  328. package/lib/vef-approval-flow-editor/types.cjs +1 -21
  329. package/lib/vef-area-chart/index.cjs +1 -46
  330. package/lib/vef-area-chart/props.cjs +1 -5
  331. package/lib/vef-auto-sizer/index.cjs +1 -11
  332. package/lib/vef-auto-sizer/props.cjs +1 -5
  333. package/lib/vef-avatar/index.cjs +1 -25
  334. package/lib/vef-avatar/props.cjs +1 -5
  335. package/lib/vef-avatar-group/index.cjs +1 -30
  336. package/lib/vef-avatar-group/props.cjs +1 -5
  337. package/lib/vef-badge/index.cjs +1 -52
  338. package/lib/vef-badge/props.cjs +1 -5
  339. package/lib/vef-bar-chart/index.cjs +1 -46
  340. package/lib/vef-bar-chart/props.cjs +1 -5
  341. package/lib/vef-bool/hooks/use-bool-instance.cjs +1 -39
  342. package/lib/vef-bool/index.cjs +1 -65
  343. package/lib/vef-bool/props.cjs +1 -5
  344. package/lib/vef-breadcrumb/index.cjs +1 -53
  345. package/lib/vef-breadcrumb/props.cjs +1 -5
  346. package/lib/vef-button/components/base-button.cjs +1 -78
  347. package/lib/vef-button/index.cjs +1 -156
  348. package/lib/vef-button/props.cjs +1 -5
  349. package/lib/vef-card/index.cjs +1 -30
  350. package/lib/vef-card/props.cjs +1 -5
  351. package/lib/vef-card-meta/index.cjs +1 -17
  352. package/lib/vef-card-meta/props.cjs +1 -5
  353. package/lib/vef-chart-container/hooks/use-chart-container-context.cjs +1 -19
  354. package/lib/vef-chart-container/index.cjs +5 -76
  355. package/lib/vef-chart-container/props.cjs +1 -5
  356. package/lib/vef-chart-legend-content/index.cjs +4 -43
  357. package/lib/vef-chart-legend-content/props.cjs +1 -5
  358. package/lib/vef-chart-tooltip-content/index.cjs +9 -77
  359. package/lib/vef-chart-tooltip-content/props.cjs +1 -5
  360. package/lib/vef-checkbox/hooks/use-checkbox-instance.cjs +1 -25
  361. package/lib/vef-checkbox/hooks/use-data-options.cjs +1 -45
  362. package/lib/vef-checkbox/index.cjs +2 -92
  363. package/lib/vef-checkbox/props.cjs +1 -5
  364. package/lib/vef-col/index.cjs +1 -16
  365. package/lib/vef-col/props.cjs +1 -5
  366. package/lib/vef-color-picker/index.cjs +1 -51
  367. package/lib/vef-color-picker/props.cjs +1 -5
  368. package/lib/vef-compact/index.cjs +1 -20
  369. package/lib/vef-compact/props.cjs +1 -5
  370. package/lib/vef-config-provider/global-style.cjs +3 -17
  371. package/lib/vef-config-provider/hooks/use-ui-config.cjs +1 -131
  372. package/lib/vef-config-provider/index.cjs +3 -126
  373. package/lib/vef-config-provider/props.cjs +1 -5
  374. package/lib/vef-config-provider/store.cjs +1 -28
  375. package/lib/vef-container/index.cjs +1 -23
  376. package/lib/vef-container/props.cjs +1 -5
  377. package/lib/vef-crud-page/components/crud-actions.cjs +1 -37
  378. package/lib/vef-crud-page/components/crud-filter.cjs +1 -59
  379. package/lib/vef-crud-page/components/crud-footer.cjs +2 -120
  380. package/lib/vef-crud-page/components/crud-form-modal.cjs +1 -58
  381. package/lib/vef-crud-page/components/crud-header.cjs +1 -34
  382. package/lib/vef-crud-page/components/crud-table.cjs +1 -81
  383. package/lib/vef-crud-page/hooks/use-action-buttons.cjs +1 -42
  384. package/lib/vef-crud-page/hooks/use-crud-context.cjs +1 -25
  385. package/lib/vef-crud-page/hooks/use-crud-schema.cjs +1 -121
  386. package/lib/vef-crud-page/hooks/use-operation-buttons.cjs +1 -65
  387. package/lib/vef-crud-page/index.cjs +1 -155
  388. package/lib/vef-crud-page/props.cjs +1 -5
  389. package/lib/vef-crud-page/store.cjs +1 -149
  390. package/lib/vef-crud-page/types.cjs +1 -5
  391. package/lib/vef-data-grid/index.cjs +1 -90
  392. package/lib/vef-data-grid/props.cjs +1 -5
  393. package/lib/vef-data-table/index.cjs +1 -14
  394. package/lib/vef-data-table/props.cjs +1 -5
  395. package/lib/vef-divider/index.cjs +1 -29
  396. package/lib/vef-divider/props.cjs +1 -5
  397. package/lib/vef-drawer/components/action-button-wrapper.cjs +1 -54
  398. package/lib/vef-drawer/components/button-props.cjs +1 -5
  399. package/lib/vef-drawer/components/cancel-action-button.cjs +1 -26
  400. package/lib/vef-drawer/components/ok-action-button.cjs +1 -25
  401. package/lib/vef-drawer/context.cjs +1 -22
  402. package/lib/vef-drawer/index.cjs +2 -159
  403. package/lib/vef-drawer/props.cjs +1 -5
  404. package/lib/vef-dropdown/index.cjs +1 -97
  405. package/lib/vef-dropdown/props.cjs +1 -5
  406. package/lib/vef-dynamic-icon/index.cjs +1 -51
  407. package/lib/vef-dynamic-icon/props.cjs +1 -11
  408. package/lib/vef-empty/index.cjs +1 -42
  409. package/lib/vef-empty/props.cjs +1 -5
  410. package/lib/vef-empty-placeholder/index.cjs +2 -22
  411. package/lib/vef-empty-placeholder/props.cjs +1 -5
  412. package/lib/vef-error/error-icon.cjs +1 -762
  413. package/lib/vef-error/index.cjs +3 -47
  414. package/lib/vef-error/props.cjs +1 -5
  415. package/lib/vef-filter/components/action-buttons.cjs +2 -121
  416. package/lib/vef-filter/components/advanced-filter.cjs +3 -71
  417. package/lib/vef-filter/components/basic-filter.cjs +2 -38
  418. package/lib/vef-filter/components/fields/index.cjs +1 -24
  419. package/lib/vef-filter/components/fields/input-number.cjs +1 -95
  420. package/lib/vef-filter/components/fields/input.cjs +1 -72
  421. package/lib/vef-filter/components/fields/props.cjs +1 -5
  422. package/lib/vef-filter/components/fields/radio.cjs +1 -114
  423. package/lib/vef-filter/components/fields/select.cjs +1 -145
  424. package/lib/vef-filter/components/fields/tree-select.cjs +1 -141
  425. package/lib/vef-filter/components/filter-field.cjs +1 -24
  426. package/lib/vef-filter/components/filter-item.cjs +1 -117
  427. package/lib/vef-filter/event.cjs +1 -49
  428. package/lib/vef-filter/helper.cjs +1 -20
  429. package/lib/vef-filter/hooks/use-action-handlers.cjs +1 -75
  430. package/lib/vef-filter/hooks/use-computed-values.cjs +1 -60
  431. package/lib/vef-filter/hooks/use-filter-context.cjs +1 -25
  432. package/lib/vef-filter/hooks/use-filter-initialization.cjs +1 -42
  433. package/lib/vef-filter/hooks/use-filter-instance.cjs +1 -31
  434. package/lib/vef-filter/hooks/use-filter-items.cjs +1 -28
  435. package/lib/vef-filter/hooks/use-filter-values-change.cjs +1 -35
  436. package/lib/vef-filter/hooks/use-label-config.cjs +1 -32
  437. package/lib/vef-filter/index.cjs +2 -146
  438. package/lib/vef-filter/props.cjs +1 -5
  439. package/lib/vef-filter/store.cjs +1 -78
  440. package/lib/vef-filter/types.cjs +1 -5
  441. package/lib/vef-flex/index.cjs +1 -36
  442. package/lib/vef-flex/props.cjs +1 -5
  443. package/lib/vef-float-button/index.cjs +1 -54
  444. package/lib/vef-float-button/props.cjs +1 -5
  445. package/lib/vef-float-button-group/index.cjs +1 -25
  446. package/lib/vef-float-button-group/props.cjs +1 -5
  447. package/lib/vef-form/components/fields/icon-select.cjs +1 -70
  448. package/lib/vef-form/components/fields/index.cjs +1 -30
  449. package/lib/vef-form/components/fields/input-number.cjs +1 -128
  450. package/lib/vef-form/components/fields/input.cjs +1 -137
  451. package/lib/vef-form/components/fields/password.cjs +1 -120
  452. package/lib/vef-form/components/fields/props.cjs +1 -5
  453. package/lib/vef-form/components/fields/radio.cjs +1 -111
  454. package/lib/vef-form/components/fields/select.cjs +1 -243
  455. package/lib/vef-form/components/fields/textarea.cjs +1 -114
  456. package/lib/vef-form/components/fields/tree-select.cjs +1 -239
  457. package/lib/vef-form/components/form-actions.cjs +2 -62
  458. package/lib/vef-form/components/form-content.cjs +2 -149
  459. package/lib/vef-form/components/form-field.cjs +1 -27
  460. package/lib/vef-form/components/form-group.cjs +2 -68
  461. package/lib/vef-form/components/form-hidden-item.cjs +1 -41
  462. package/lib/vef-form/components/form-item.cjs +1 -84
  463. package/lib/vef-form/components/form-row.cjs +1 -103
  464. package/lib/vef-form/event.cjs +1 -49
  465. package/lib/vef-form/helper.cjs +1 -20
  466. package/lib/vef-form/hooks/use-action-handlers.cjs +1 -135
  467. package/lib/vef-form/hooks/use-columns-layout.cjs +1 -127
  468. package/lib/vef-form/hooks/use-computed-values.cjs +1 -60
  469. package/lib/vef-form/hooks/use-form-context.cjs +1 -21
  470. package/lib/vef-form/hooks/use-form-initialization.cjs +1 -50
  471. package/lib/vef-form/hooks/use-form-instance.cjs +1 -31
  472. package/lib/vef-form/hooks/use-form-values-change.cjs +1 -35
  473. package/lib/vef-form/hooks/use-label-width.cjs +1 -23
  474. package/lib/vef-form/index.cjs +2 -178
  475. package/lib/vef-form/props.cjs +1 -5
  476. package/lib/vef-form/store.cjs +1 -72
  477. package/lib/vef-form/types.cjs +1 -5
  478. package/lib/vef-form/validation-rules.cjs +1 -313
  479. package/lib/vef-form-drawer/index.cjs +1 -103
  480. package/lib/vef-form-drawer/props.cjs +1 -5
  481. package/lib/vef-form-modal/index.cjs +1 -100
  482. package/lib/vef-form-modal/props.cjs +1 -5
  483. package/lib/vef-generic-select/index.cjs +1 -86
  484. package/lib/vef-generic-select/props.cjs +1 -5
  485. package/lib/vef-grid/index.cjs +9 -79
  486. package/lib/vef-grid/props.cjs +1 -9
  487. package/lib/vef-grid-item/index.cjs +1 -57
  488. package/lib/vef-grid-item/props.cjs +1 -5
  489. package/lib/vef-icon/index.cjs +1 -55
  490. package/lib/vef-icon/props.cjs +1 -5
  491. package/lib/vef-icon-select/index.cjs +4 -144
  492. package/lib/vef-icon-select/props.cjs +1 -5
  493. package/lib/vef-input/hooks/use-input-instance.cjs +1 -20
  494. package/lib/vef-input/index.cjs +1 -69
  495. package/lib/vef-input/props.cjs +1 -5
  496. package/lib/vef-input-number/hooks/use-input-number-instance.cjs +1 -18
  497. package/lib/vef-input-number/index.cjs +1 -153
  498. package/lib/vef-input-number/props.cjs +1 -5
  499. package/lib/vef-layout/common-styles.cjs +2 -13
  500. package/lib/vef-layout/components/content.cjs +1 -18
  501. package/lib/vef-layout/components/font-size.cjs +1 -73
  502. package/lib/vef-layout/components/fullscreen.cjs +1 -28
  503. package/lib/vef-layout/components/header-action-icons.cjs +2 -30
  504. package/lib/vef-layout/components/header-content.cjs +1 -24
  505. package/lib/vef-layout/components/header.cjs +2 -70
  506. package/lib/vef-layout/components/icon-boy.cjs +1 -74
  507. package/lib/vef-layout/components/icon-girl.cjs +1 -81
  508. package/lib/vef-layout/components/icon-menu-fold-left.cjs +1 -28
  509. package/lib/vef-layout/components/icon-menu-unfold-left.cjs +1 -28
  510. package/lib/vef-layout/components/menu-groups.cjs +5 -118
  511. package/lib/vef-layout/components/message.cjs +1 -16
  512. package/lib/vef-layout/components/search.cjs +1 -16
  513. package/lib/vef-layout/components/sider.cjs +2 -56
  514. package/lib/vef-layout/components/title.cjs +2 -52
  515. package/lib/vef-layout/components/user-avatar.cjs +4 -80
  516. package/lib/vef-layout/hooks/use-layout-context.cjs +1 -17
  517. package/lib/vef-layout/index.cjs +2 -38
  518. package/lib/vef-layout/logo.svg.cjs +1 -9
  519. package/lib/vef-layout/props.cjs +1 -5
  520. package/lib/vef-layout/store.cjs +1 -23
  521. package/lib/vef-line-chart/index.cjs +1 -43
  522. package/lib/vef-line-chart/props.cjs +1 -5
  523. package/lib/vef-loading-placeholder/index.cjs +2 -44
  524. package/lib/vef-loading-placeholder/props.cjs +1 -5
  525. package/lib/vef-login/index.cjs +9 -145
  526. package/lib/vef-login/login-icon.cjs +1 -673
  527. package/lib/vef-login/props.cjs +1 -5
  528. package/lib/vef-menu/index.cjs +2 -80
  529. package/lib/vef-menu/props.cjs +1 -5
  530. package/lib/vef-modal/components/action-button-wrapper.cjs +1 -54
  531. package/lib/vef-modal/components/button-props.cjs +1 -5
  532. package/lib/vef-modal/components/cancel-action-button.cjs +1 -23
  533. package/lib/vef-modal/components/ok-action-button.cjs +1 -25
  534. package/lib/vef-modal/context.cjs +1 -22
  535. package/lib/vef-modal/index.cjs +2 -245
  536. package/lib/vef-modal/props.cjs +1 -5
  537. package/lib/vef-not-found/index.cjs +3 -44
  538. package/lib/vef-not-found/not-found-icon.cjs +1 -849
  539. package/lib/vef-not-found/props.cjs +1 -5
  540. package/lib/vef-page/index.cjs +2 -84
  541. package/lib/vef-page/props.cjs +1 -5
  542. package/lib/vef-pagination/index.cjs +1 -62
  543. package/lib/vef-pagination/props.cjs +1 -18
  544. package/lib/vef-paragraph/index.cjs +1 -94
  545. package/lib/vef-paragraph/props.cjs +1 -5
  546. package/lib/vef-password/hooks/use-password-instance.cjs +1 -18
  547. package/lib/vef-password/index.cjs +1 -72
  548. package/lib/vef-password/props.cjs +1 -5
  549. package/lib/vef-pie-chart/index.cjs +3 -70
  550. package/lib/vef-pie-chart/props.cjs +1 -5
  551. package/lib/vef-popconfirm/index.cjs +1 -61
  552. package/lib/vef-popconfirm/props.cjs +1 -5
  553. package/lib/vef-popover/index.cjs +1 -39
  554. package/lib/vef-popover/props.cjs +1 -5
  555. package/lib/vef-radio/hooks/use-data-options.cjs +1 -45
  556. package/lib/vef-radio/hooks/use-radio-instance.cjs +1 -25
  557. package/lib/vef-radio/index.cjs +2 -92
  558. package/lib/vef-radio/props.cjs +1 -5
  559. package/lib/vef-rate/hooks/use-rate-instance.cjs +1 -18
  560. package/lib/vef-rate/index.cjs +1 -35
  561. package/lib/vef-rate/props.cjs +1 -5
  562. package/lib/vef-responsive-container/index.cjs +2 -59
  563. package/lib/vef-responsive-container/props.cjs +1 -5
  564. package/lib/vef-responsive-item/index.cjs +2 -28
  565. package/lib/vef-responsive-item/props.cjs +1 -5
  566. package/lib/vef-ribbon/index.cjs +1 -43
  567. package/lib/vef-ribbon/props.cjs +1 -5
  568. package/lib/vef-row/index.cjs +1 -17
  569. package/lib/vef-row/props.cjs +1 -5
  570. package/lib/vef-scroll-area/components/scrollbar.cjs +5 -37
  571. package/lib/vef-scroll-area/index.cjs +3 -74
  572. package/lib/vef-scroll-area/props.cjs +1 -5
  573. package/lib/vef-select/components/option.cjs +2 -27
  574. package/lib/vef-select/hooks/use-data-options.cjs +1 -52
  575. package/lib/vef-select/hooks/use-field-names.cjs +1 -26
  576. package/lib/vef-select/hooks/use-render-label.cjs +2 -28
  577. package/lib/vef-select/hooks/use-render-option.cjs +1 -24
  578. package/lib/vef-select/hooks/use-select-instance.cjs +1 -25
  579. package/lib/vef-select/index.cjs +1 -105
  580. package/lib/vef-select/props.cjs +1 -5
  581. package/lib/vef-slider/hooks/use-slider-instance.cjs +1 -18
  582. package/lib/vef-slider/index.cjs +1 -39
  583. package/lib/vef-slider/props.cjs +1 -5
  584. package/lib/vef-sortable-list/components/overlay-item.cjs +2 -36
  585. package/lib/vef-sortable-list/components/sortable-item.cjs +2 -80
  586. package/lib/vef-sortable-list/hooks/use-merged-items.cjs +1 -26
  587. package/lib/vef-sortable-list/index.cjs +1 -119
  588. package/lib/vef-sortable-list/props.cjs +1 -5
  589. package/lib/vef-space/index.cjs +1 -30
  590. package/lib/vef-space/props.cjs +1 -5
  591. package/lib/vef-spin/index.cjs +1 -17
  592. package/lib/vef-spin/props.cjs +1 -5
  593. package/lib/vef-splitter/index.cjs +1 -25
  594. package/lib/vef-splitter/props.cjs +1 -5
  595. package/lib/vef-splitter-panel/index.cjs +1 -17
  596. package/lib/vef-splitter-panel/props.cjs +1 -5
  597. package/lib/vef-status/index.cjs +1 -42
  598. package/lib/vef-status/props.cjs +1 -5
  599. package/lib/vef-table/components/columns/bool.cjs +1 -96
  600. package/lib/vef-table/components/columns/code.cjs +1 -15
  601. package/lib/vef-table/components/columns/data-dictionary.cjs +1 -97
  602. package/lib/vef-table/components/columns/enum.cjs +1 -106
  603. package/lib/vef-table/components/columns/file.cjs +1 -15
  604. package/lib/vef-table/components/columns/icon.cjs +1 -15
  605. package/lib/vef-table/components/columns/id.cjs +1 -87
  606. package/lib/vef-table/components/columns/image.cjs +1 -16
  607. package/lib/vef-table/components/columns/index.cjs +1 -38
  608. package/lib/vef-table/components/columns/markdown.cjs +1 -15
  609. package/lib/vef-table/components/columns/number.cjs +1 -88
  610. package/lib/vef-table/components/columns/props.cjs +1 -5
  611. package/lib/vef-table/components/columns/render.cjs +1 -33
  612. package/lib/vef-table/components/columns/rich-text.cjs +1 -15
  613. package/lib/vef-table/components/columns/text.cjs +1 -93
  614. package/lib/vef-table/components/columns-settings.cjs +2 -192
  615. package/lib/vef-table/components/operation-buttons.cjs +2 -235
  616. package/lib/vef-table/components/settings-icon.cjs +2 -23
  617. package/lib/vef-table/components/table-footer.cjs +2 -106
  618. package/lib/vef-table/helper.cjs +1 -20
  619. package/lib/vef-table/hooks/use-computed-batch-buttons.cjs +1 -38
  620. package/lib/vef-table/hooks/use-computed-columns.cjs +1 -25
  621. package/lib/vef-table/hooks/use-computed-values.cjs +1 -43
  622. package/lib/vef-table/hooks/use-data.cjs +1 -62
  623. package/lib/vef-table/hooks/use-default-column-configs.cjs +1 -32
  624. package/lib/vef-table/hooks/use-display-value.cjs +1 -41
  625. package/lib/vef-table/hooks/use-helper-columns.cjs +1 -72
  626. package/lib/vef-table/hooks/use-operation-column-width.cjs +1 -55
  627. package/lib/vef-table/hooks/use-pagination-props.cjs +1 -49
  628. package/lib/vef-table/hooks/use-row-props.cjs +1 -44
  629. package/lib/vef-table/hooks/use-row-selection-config.cjs +1 -117
  630. package/lib/vef-table/hooks/use-selected-rows.cjs +1 -31
  631. package/lib/vef-table/hooks/use-table-columns.cjs +1 -61
  632. package/lib/vef-table/hooks/use-table-context.cjs +1 -28
  633. package/lib/vef-table/hooks/use-table-instance.cjs +1 -20
  634. package/lib/vef-table/hooks/use-table-summary.cjs +1 -47
  635. package/lib/vef-table/hooks/use-table-width.cjs +1 -18
  636. package/lib/vef-table/index.cjs +3 -230
  637. package/lib/vef-table/props.cjs +1 -5
  638. package/lib/vef-table/store.cjs +1 -24
  639. package/lib/vef-table/types.cjs +1 -5
  640. package/lib/vef-tabs/index.cjs +1 -30
  641. package/lib/vef-tabs/props.cjs +1 -5
  642. package/lib/vef-tag/index.cjs +1 -33
  643. package/lib/vef-tag/props.cjs +1 -5
  644. package/lib/vef-temporal-picker/helper.cjs +1 -62
  645. package/lib/vef-temporal-picker/hooks/use-dayjs-value.cjs +1 -23
  646. package/lib/vef-temporal-picker/hooks/use-temporal-limit.cjs +1 -39
  647. package/lib/vef-temporal-picker/hooks/use-temporal-picker-instance.cjs +1 -24
  648. package/lib/vef-temporal-picker/index.cjs +1 -130
  649. package/lib/vef-temporal-picker/props.cjs +1 -5
  650. package/lib/vef-temporal-range-picker/helper.cjs +1 -62
  651. package/lib/vef-temporal-range-picker/hooks/use-dayjs-values.cjs +1 -28
  652. package/lib/vef-temporal-range-picker/hooks/use-temporal-limit.cjs +1 -39
  653. package/lib/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.cjs +1 -24
  654. package/lib/vef-temporal-range-picker/index.cjs +1 -133
  655. package/lib/vef-temporal-range-picker/props.cjs +1 -9
  656. package/lib/vef-text/index.cjs +1 -85
  657. package/lib/vef-text/props.cjs +1 -5
  658. package/lib/vef-textarea/hooks/use-textarea-instance.cjs +1 -18
  659. package/lib/vef-textarea/index.cjs +1 -72
  660. package/lib/vef-textarea/props.cjs +1 -5
  661. package/lib/vef-title/index.cjs +3 -91
  662. package/lib/vef-title/props.cjs +1 -5
  663. package/lib/vef-tooltip/index.cjs +1 -40
  664. package/lib/vef-tooltip/props.cjs +1 -5
  665. package/lib/vef-tree-select/hooks/use-change-handler.cjs +1 -38
  666. package/lib/vef-tree-select/hooks/use-data-options.cjs +1 -50
  667. package/lib/vef-tree-select/hooks/use-tree-select-instance.cjs +1 -25
  668. package/lib/vef-tree-select/index.cjs +1 -94
  669. package/lib/vef-tree-select/props.cjs +1 -5
  670. package/lib/vef-virtual-grid/index.cjs +3 -112
  671. package/lib/vef-virtual-grid/props.cjs +1 -5
  672. package/lib/vef-virtual-list/index.cjs +4 -220
  673. package/lib/vef-virtual-list/props.cjs +1 -5
  674. package/package.json +4 -4
@@ -1,39 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useDeepMemo } from '@vef-framework/hooks';
3
- import { computeValue } from '../helper.js';
4
-
5
- function useComputedValues(values, value, record, rowIndex, returnAsObject = false) {
6
- const computedValues = useDeepMemo(
7
- () => values.reduce((acc, it) => {
8
- const {
9
- key,
10
- rawValue,
11
- defaultValue
12
- } = it;
13
- const computedValue = computeValue(rawValue, value, record, rowIndex, defaultValue);
14
- acc[key] = computedValue;
15
- return acc;
16
- }, {}),
17
- [
18
- record,
19
- rowIndex,
20
- value,
21
- values
22
- ]
23
- );
24
- if (returnAsObject) {
25
- return values.reduce(
26
- (acc, { key }) => {
27
- acc[key] = computedValues[key];
28
- return acc;
29
- },
30
- {}
31
- );
32
- }
33
- return values.map(
34
- ({ key }) => computedValues[key]
35
- );
36
- }
37
-
38
- export { useComputedValues };
39
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useDeepMemo}from"@vef-framework/hooks";import{computeValue}from"../helper.js";function useComputedValues(values,value,record,rowIndex,returnAsObject=!1){const computedValues=useDeepMemo(()=>values.reduce((acc,it)=>{const{key,rawValue,defaultValue}=it,computedValue=computeValue(rawValue,value,record,rowIndex,defaultValue);return acc[key]=computedValue,acc},{}),[record,rowIndex,value,values]);return returnAsObject?values.reduce((acc,{key})=>(acc[key]=computedValues[key],acc),{}):values.map(({key})=>computedValues[key])}/*! 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 */export{useComputedValues};
@@ -1,58 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useDataQuery } from '@vef-framework/hooks';
3
- import { isShallowEqual, isNumber, isArray } from '@vef-framework/shared';
4
- import { useRef } from 'react';
5
-
6
- function useData({ apiParams, ...queryConfig }, paginated, paginationParams) {
7
- const lastApiParamsRef = useRef();
8
- const {
9
- data,
10
- isLoading,
11
- isFetching,
12
- isSuccess,
13
- refetch
14
- } = useDataQuery({
15
- apiParams: paginated ? {
16
- ...paginationParams,
17
- page: isShallowEqual(lastApiParamsRef.current, apiParams) ? paginationParams.page : 1,
18
- ...apiParams
19
- } : apiParams,
20
- keepPreviousData: true,
21
- staleTime: 0,
22
- ...queryConfig
23
- });
24
- lastApiParamsRef.current = apiParams;
25
- if (isSuccess) {
26
- if (paginated) {
27
- if (!Object.hasOwn(data, "total") || !Object.hasOwn(data, "items")) {
28
- throw new Error(
29
- "The paginated data of VefTable is invalid. The data must contain the `total` and `items` properties. Please check the data."
30
- );
31
- }
32
- if (!isNumber(data.total)) {
33
- throw new Error(
34
- "The `total` property of the paginated data of VefTable is invalid. It must be a number."
35
- );
36
- }
37
- if (!isArray(data.items)) {
38
- throw new Error(
39
- "The `items` property of the paginated data of VefTable is invalid. It must be an array."
40
- );
41
- }
42
- } else {
43
- if (!isArray(data)) {
44
- throw new Error("The data of VefTable is invalid. It must be an array.");
45
- }
46
- }
47
- }
48
- return {
49
- data: paginated ? data?.items : data,
50
- isFetching,
51
- isLoading,
52
- total: paginated ? data?.total : void 0,
53
- refetch
54
- };
55
- }
56
-
57
- export { useData };
58
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useDataQuery}from"@vef-framework/hooks";import{isShallowEqual,isNumber,isArray}from"@vef-framework/shared";import{useRef}from"react";function useData({apiParams,...queryConfig},paginated,paginationParams){const lastApiParamsRef=useRef(),{data,isLoading,isFetching,isSuccess,refetch}=useDataQuery({apiParams:paginated?{...paginationParams,page:isShallowEqual(lastApiParamsRef.current,apiParams)?paginationParams.page:1,...apiParams}:apiParams,keepPreviousData:!0,staleTime:0,...queryConfig});if(lastApiParamsRef.current=apiParams,isSuccess){if(paginated){if(!Object.hasOwn(data,"total")||!Object.hasOwn(data,"items"))throw new Error("The paginated data of VefTable is invalid. The data must contain the `total` and `items` properties. Please check the data.");if(!isNumber(data.total))throw new Error("The `total` property of the paginated data of VefTable is invalid. It must be a number.");if(!isArray(data.items))throw new Error("The `items` property of the paginated data of VefTable is invalid. It must be an array.")}else if(!isArray(data))throw new Error("The data of VefTable is invalid. It must be an array.")}return{data:paginated?data?.items:data,isFetching,isLoading,total:paginated?data?.total:void 0,refetch}}/*! 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 */export{useData};
@@ -1,28 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useMemo } from 'react';
3
-
4
- function useDefaultColumnConfigs(columns) {
5
- return useMemo(() => {
6
- const columnConfigs = /* @__PURE__ */ new Map();
7
- let currentOrder = 1;
8
- for (const column of columns) {
9
- const {
10
- name,
11
- title,
12
- fixed,
13
- configurable
14
- } = column;
15
- columnConfigs.set(name, {
16
- title: title ?? name,
17
- show: true,
18
- fixed,
19
- order: currentOrder++,
20
- configurable: configurable ?? true
21
- });
22
- }
23
- return columnConfigs;
24
- }, [columns]);
25
- }
26
-
27
- export { useDefaultColumnConfigs };
28
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useMemo}from"react";function useDefaultColumnConfigs(columns){return useMemo(()=>{const columnConfigs=new Map;let currentOrder=1;for(const column of columns){const{name,title,fixed,configurable}=column;columnConfigs.set(name,{title:title??name,show:!0,fixed,order:currentOrder++,configurable:configurable??!0})}return columnConfigs},[columns])}/*! 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 */export{useDefaultColumnConfigs};
@@ -1,37 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { isNullish, isFunction, isExpression, compileDynamicFn } from '@vef-framework/shared';
3
- import { useMemo } from 'react';
4
-
5
- function useDisplayValue(value, record, rowIndex, config) {
6
- const {
7
- defaultValue,
8
- formatter,
9
- prefix,
10
- suffix
11
- } = config;
12
- const valueToUse = isNullish(value) ? defaultValue : value;
13
- return useMemo(() => {
14
- if (isFunction(formatter)) {
15
- return formatter(value, record, rowIndex);
16
- }
17
- if (isExpression(formatter)) {
18
- const fn = compileDynamicFn(formatter, "value", "record", "rowIndex", `return ${formatter.expression}`);
19
- return fn(value, record, rowIndex);
20
- }
21
- if (isNullish(valueToUse)) {
22
- return;
23
- }
24
- return `${prefix ?? ""}${valueToUse}${suffix ?? ""}`;
25
- }, [
26
- formatter,
27
- valueToUse,
28
- prefix,
29
- suffix,
30
- value,
31
- record,
32
- rowIndex
33
- ]);
34
- }
35
-
36
- export { useDisplayValue };
37
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{isNullish,isFunction,isExpression,compileDynamicFn}from"@vef-framework/shared";import{useMemo}from"react";function useDisplayValue(value,record,rowIndex,config){const{defaultValue,formatter,prefix,suffix}=config,valueToUse=isNullish(value)?defaultValue:value;return useMemo(()=>{if(isFunction(formatter))return formatter(value,record,rowIndex);if(isExpression(formatter))return compileDynamicFn(formatter,"value","record","rowIndex",`return ${formatter.expression}`)(value,record,rowIndex);if(!isNullish(valueToUse))return`${prefix??""}${valueToUse}${suffix??""}`},[formatter,valueToUse,prefix,suffix,value,record,rowIndex])}/*! 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 */export{useDisplayValue};
@@ -1,68 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { useAuthorizedItems } from '@vef-framework/hooks';
4
- import { isDeepEqual } from '@vef-framework/shared';
5
- import { useMemo } from 'react';
6
- import VefColumnsSettings from '../components/columns-settings.js';
7
- import VefOperationButtons from '../components/operation-buttons.js';
8
- import VefSettingsIcon from '../components/settings-icon.js';
9
- import { useOperationColumnWidth } from './use-operation-column-width.js';
10
-
11
- const DEFAULT_MAX_VISIBLE_OPERATION_BUTTONS = 3;
12
- function useHelperColumns({
13
- showRowNumber,
14
- operationButtons,
15
- maxVisibleOperationButtons,
16
- size
17
- }) {
18
- const rowNumberColumn = useMemo(() => {
19
- if (showRowNumber) {
20
- return {
21
- key: "_rowNumber",
22
- title: "#",
23
- align: "center",
24
- fixed: "left",
25
- // rowScope: "row",
26
- width: 48,
27
- shouldCellUpdate: () => false,
28
- render: (_, __, rowIndex) => rowIndex + 1
29
- };
30
- }
31
- }, [showRowNumber]);
32
- const authorizedOperationButtons = useAuthorizedItems(operationButtons ?? []);
33
- const operationColumnWidth = useOperationColumnWidth(
34
- authorizedOperationButtons,
35
- maxVisibleOperationButtons ?? DEFAULT_MAX_VISIBLE_OPERATION_BUTTONS,
36
- size
37
- );
38
- const operationColumn = useMemo(() => {
39
- if (authorizedOperationButtons && authorizedOperationButtons.length > 0) {
40
- return {
41
- key: "_operationButtons",
42
- title: "操作",
43
- align: "center",
44
- fixed: "right",
45
- filterIcon: () => /* @__PURE__ */ jsx(VefSettingsIcon, {}),
46
- filterDropdown: () => /* @__PURE__ */ jsx(VefColumnsSettings, {}),
47
- width: operationColumnWidth,
48
- shouldCellUpdate: (record, prevRecord) => !isDeepEqual(record, prevRecord),
49
- render: (_, record, rowIndex) => /* @__PURE__ */ jsx(
50
- VefOperationButtons,
51
- {
52
- maxVisibleOperationButtons: maxVisibleOperationButtons ?? DEFAULT_MAX_VISIBLE_OPERATION_BUTTONS,
53
- operationButtons: authorizedOperationButtons,
54
- record,
55
- rowIndex
56
- }
57
- )
58
- };
59
- }
60
- }, [authorizedOperationButtons, maxVisibleOperationButtons, operationColumnWidth]);
61
- return {
62
- rowNumberColumn,
63
- operationColumn
64
- };
65
- }
66
-
67
- export { useHelperColumns };
68
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";import{useAuthorizedItems}from"@vef-framework/hooks";import{isDeepEqual}from"@vef-framework/shared";import{useMemo}from"react";import VefColumnsSettings from"../components/columns-settings.js";import VefOperationButtons from"../components/operation-buttons.js";import VefSettingsIcon from"../components/settings-icon.js";import{useOperationColumnWidth}from"./use-operation-column-width.js";const DEFAULT_MAX_VISIBLE_OPERATION_BUTTONS=3;function useHelperColumns({showRowNumber,operationButtons,maxVisibleOperationButtons,size}){const rowNumberColumn=useMemo(()=>{if(showRowNumber)return{key:"_rowNumber",title:"#",align:"center",fixed:"left",width:48,shouldCellUpdate:()=>!1,render:(_,__,rowIndex)=>rowIndex+1}},[showRowNumber]),authorizedOperationButtons=useAuthorizedItems(operationButtons??[]),operationColumnWidth=useOperationColumnWidth(authorizedOperationButtons,maxVisibleOperationButtons??DEFAULT_MAX_VISIBLE_OPERATION_BUTTONS,size),operationColumn=useMemo(()=>{if(authorizedOperationButtons&&authorizedOperationButtons.length>0)return{key:"_operationButtons",title:"操作",align:"center",fixed:"right",filterIcon:()=>jsx(VefSettingsIcon,{}),filterDropdown:()=>jsx(VefColumnsSettings,{}),width:operationColumnWidth,shouldCellUpdate:(record,prevRecord)=>!isDeepEqual(record,prevRecord),render:(_,record,rowIndex)=>jsx(VefOperationButtons,{maxVisibleOperationButtons:maxVisibleOperationButtons??DEFAULT_MAX_VISIBLE_OPERATION_BUTTONS,operationButtons:authorizedOperationButtons,record,rowIndex})}},[authorizedOperationButtons,maxVisibleOperationButtons,operationColumnWidth]);return{rowNumberColumn,operationColumn}}/*! 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 */export{useHelperColumns};
@@ -1,51 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useThemeTokens } from '@vef-framework/hooks';
3
- import { max } from '@vef-framework/shared';
4
- import { useMemo } from 'react';
5
-
6
- function useOperationColumnWidth(operationButtons, maxVisibleOperationButtons, size = "medium") {
7
- const { Button: buttonThemeTokens } = useThemeTokens();
8
- const cellInlinePadding = size === "large" ? 16 : 8;
9
- const fontSize = buttonThemeTokens?.contentFontSizeSM ?? 16;
10
- return useMemo(() => {
11
- if (operationButtons.length === 0) {
12
- return 0;
13
- }
14
- const showMoreButton = operationButtons.length > maxVisibleOperationButtons;
15
- if (showMoreButton) {
16
- const longestButtons = /* @__PURE__ */ new Set();
17
- for (let i = 0; i < maxVisibleOperationButtons; i++) {
18
- const longestButton = max(operationButtons, (button) => {
19
- if (longestButtons.has(button)) {
20
- return 0;
21
- }
22
- return button.label.length;
23
- });
24
- if (longestButton) {
25
- longestButtons.add(longestButton);
26
- }
27
- }
28
- return calculateButtonsWidth(Array.from(longestButtons), fontSize, cellInlinePadding, true);
29
- }
30
- return calculateButtonsWidth(operationButtons, fontSize, cellInlinePadding, false);
31
- }, [
32
- cellInlinePadding,
33
- fontSize,
34
- maxVisibleOperationButtons,
35
- operationButtons
36
- ]);
37
- }
38
- function calculateButtonsWidth(operationButtons, fontSize, cellInlinePadding, includeMoreButtonWidth) {
39
- const fontWidth = fontSize + 4;
40
- const buttonInlinePadding = 4 * 2;
41
- return operationButtons.map((button) => {
42
- const baseWidth = button.label.length * fontWidth + buttonInlinePadding;
43
- if (button.icon) {
44
- return baseWidth + fontWidth + 8;
45
- }
46
- return baseWidth;
47
- }).reduce((acc, width) => acc + width, 0) + (includeMoreButtonWidth ? fontWidth + buttonInlinePadding : 0) + cellInlinePadding * 2;
48
- }
49
-
50
- export { useOperationColumnWidth };
51
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useThemeTokens}from"@vef-framework/hooks";import{max}from"@vef-framework/shared";import{useMemo}from"react";function useOperationColumnWidth(operationButtons,maxVisibleOperationButtons,size="medium"){const{Button:buttonThemeTokens}=useThemeTokens(),cellInlinePadding=size==="large"?16:8,fontSize=buttonThemeTokens?.contentFontSizeSM??16;return useMemo(()=>{if(operationButtons.length===0)return 0;if(operationButtons.length>maxVisibleOperationButtons){const longestButtons=new Set;for(let i=0;i<maxVisibleOperationButtons;i++){const longestButton=max(operationButtons,button=>longestButtons.has(button)?0:button.label.length);longestButton&&longestButtons.add(longestButton)}return calculateButtonsWidth(Array.from(longestButtons),fontSize,cellInlinePadding,!0)}return calculateButtonsWidth(operationButtons,fontSize,cellInlinePadding,!1)},[cellInlinePadding,fontSize,maxVisibleOperationButtons,operationButtons])}function calculateButtonsWidth(operationButtons,fontSize,cellInlinePadding,includeMoreButtonWidth){const fontWidth=fontSize+4,buttonInlinePadding=4*2;return operationButtons.map(button=>{const baseWidth=button.label.length*fontWidth+buttonInlinePadding;return button.icon?baseWidth+fontWidth+8:baseWidth}).reduce((acc,width)=>acc+width,0)+(includeMoreButtonWidth?fontWidth+buttonInlinePadding:0)+cellInlinePadding*2}/*! 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 */export{useOperationColumnWidth};
@@ -1,45 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useState, useMemo } from 'react';
3
- import { defaultPageSizeOptions } from '../../vef-pagination/props.js';
4
-
5
- function usePaginationProps(paginated, size) {
6
- const [paginationParams, setPaginationParams] = useState({
7
- page: 1,
8
- size: defaultPageSizeOptions[2]
9
- });
10
- const handlePaginationChange = useMemo(() => {
11
- if (!paginated) {
12
- return;
13
- }
14
- return (pageNumber, pageSize) => {
15
- setPaginationParams({
16
- page: pageNumber,
17
- size: pageSize
18
- });
19
- };
20
- }, [paginated, setPaginationParams]);
21
- const paginationProps = useMemo(() => {
22
- if (!paginated) {
23
- return;
24
- }
25
- return {
26
- pageNumber: paginationParams.page,
27
- pageSize: paginationParams.size,
28
- size: size === "small" ? "small" : "medium",
29
- onChange: handlePaginationChange
30
- };
31
- }, [
32
- handlePaginationChange,
33
- paginated,
34
- paginationParams.page,
35
- paginationParams.size,
36
- size
37
- ]);
38
- return {
39
- paginationProps,
40
- paginationParams
41
- };
42
- }
43
-
44
- export { usePaginationProps };
45
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useState,useMemo}from"react";import{defaultPageSizeOptions}from"../../vef-pagination/props.js";function usePaginationProps(paginated,size){const[paginationParams,setPaginationParams]=useState({page:1,size:defaultPageSizeOptions[2]}),handlePaginationChange=useMemo(()=>{if(paginated)return(pageNumber,pageSize)=>{setPaginationParams({page:pageNumber,size:pageSize})}},[paginated,setPaginationParams]);return{paginationProps:useMemo(()=>{if(paginated)return{pageNumber:paginationParams.page,pageSize:paginationParams.size,size:size==="small"?"small":"medium",onChange:handlePaginationChange}},[handlePaginationChange,paginated,paginationParams.page,paginationParams.size,size]),paginationParams}}/*! 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 */export{usePaginationProps};
@@ -1,40 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useMemo } from 'react';
3
-
4
- function useRowProps({
5
- enableRowClick = false,
6
- enableRowClickForSelection = false,
7
- onRowClick,
8
- disabledSelection,
9
- handleRowClickSelection
10
- }) {
11
- return useMemo(() => {
12
- if (!enableRowClick) {
13
- return;
14
- }
15
- return (record, index) => {
16
- const disabled = disabledSelection?.(record) ?? false;
17
- return {
18
- style: {
19
- cursor: disabled ? "not-allowed" : "pointer"
20
- // backgroundColor: index! % 2 === 0 ? "#fcfcfc" : undefined,
21
- },
22
- onClick: disabled ? void 0 : () => {
23
- if (!enableRowClickForSelection) {
24
- onRowClick?.(record, index ?? -1);
25
- }
26
- handleRowClickSelection?.(record);
27
- }
28
- };
29
- };
30
- }, [
31
- disabledSelection,
32
- enableRowClick,
33
- enableRowClickForSelection,
34
- handleRowClickSelection,
35
- onRowClick
36
- ]);
37
- }
38
-
39
- export { useRowProps };
40
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useMemo}from"react";function useRowProps({enableRowClick=!1,enableRowClickForSelection=!1,onRowClick,disabledSelection,handleRowClickSelection}){return useMemo(()=>{if(enableRowClick)return(record,index)=>{const disabled=disabledSelection?.(record)??!1;return{style:{cursor:disabled?"not-allowed":"pointer"},onClick:disabled?void 0:()=>{enableRowClickForSelection||onRowClick?.(record,index??-1),handleRowClickSelection?.(record)}}}},[disabledSelection,enableRowClick,enableRowClickForSelection,handleRowClickSelection,onRowClick])}/*! 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 */export{useRowProps};
@@ -1,113 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { isFunction } from '@vef-framework/shared';
3
- import { useMemo } from 'react';
4
- import { useSelectedRows } from './use-selected-rows.js';
5
-
6
- function useRowSelectionConfig({
7
- rowKey,
8
- selectedKeys,
9
- defaultSelectedKeys,
10
- selectable,
11
- enableRowClick,
12
- enableRowClickForSelection,
13
- multipleSelection = true,
14
- showSelectAllCheckbox = true,
15
- disabledSelection,
16
- onRowSelect,
17
- onRowDeselect,
18
- onRowSelectionChange
19
- }) {
20
- const {
21
- selectedKeys: selectedKeysToUse,
22
- selectedRecords,
23
- onChange
24
- } = useSelectedRows({
25
- selectedKeys,
26
- defaultSelectedKeys,
27
- onRowSelectionChange
28
- });
29
- const handleRowClickSelection = useMemo(() => {
30
- if (!enableRowClick || !enableRowClickForSelection) {
31
- return;
32
- }
33
- return (record) => {
34
- const key = isFunction(rowKey) ? rowKey(record) : record[rowKey];
35
- if (selectedKeysToUse.includes(key)) {
36
- if (!multipleSelection) {
37
- return;
38
- }
39
- const newValue = selectedKeysToUse.filter((it) => it !== key);
40
- const newSelectedRows = selectedRecords.current.filter((it) => (isFunction(rowKey) ? rowKey(it) : it[rowKey]) !== key);
41
- onChange(newValue, newSelectedRows);
42
- onRowDeselect?.(key, record);
43
- } else {
44
- const newValue = [key];
45
- if (multipleSelection) {
46
- newValue.push(...selectedKeysToUse);
47
- }
48
- const newSelectedRows = [record];
49
- if (multipleSelection) {
50
- newSelectedRows.push(...selectedRecords.current);
51
- }
52
- onChange(newValue, newSelectedRows);
53
- onRowSelect?.(key, record);
54
- }
55
- };
56
- }, [
57
- enableRowClick,
58
- enableRowClickForSelection,
59
- multipleSelection,
60
- onChange,
61
- onRowDeselect,
62
- onRowSelect,
63
- rowKey,
64
- selectedKeysToUse,
65
- selectedRecords
66
- ]);
67
- const rowSelectionConfig = useMemo(() => {
68
- if (!selectable) {
69
- return;
70
- }
71
- const config = {
72
- fixed: true,
73
- hideSelectAll: !showSelectAllCheckbox,
74
- preserveSelectedRowKeys: false,
75
- selectedRowKeys: selectedKeysToUse,
76
- type: multipleSelection ? "checkbox" : "radio",
77
- getCheckboxProps: isFunction(disabledSelection) ? (record) => ({
78
- disabled: disabledSelection(record)
79
- }) : void 0,
80
- onChange: (selectedRowKeys, selectedRows) => {
81
- onChange(selectedRowKeys, selectedRows);
82
- },
83
- onSelect: isFunction(onRowSelect) || isFunction(onRowDeselect) ? (record, selected) => {
84
- const key = isFunction(rowKey) ? rowKey(record) : record[rowKey];
85
- if (selected) {
86
- onRowSelect?.(key, record);
87
- } else {
88
- onRowDeselect?.(key, record);
89
- }
90
- } : void 0
91
- };
92
- return config;
93
- }, [
94
- selectable,
95
- showSelectAllCheckbox,
96
- selectedKeysToUse,
97
- multipleSelection,
98
- disabledSelection,
99
- onRowSelect,
100
- onRowDeselect,
101
- onChange,
102
- rowKey
103
- ]);
104
- return {
105
- rowSelectionConfig,
106
- handleRowClickSelection,
107
- selectedKeys: selectedKeysToUse,
108
- selectedRecords
109
- };
110
- }
111
-
112
- export { useRowSelectionConfig };
113
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{isFunction}from"@vef-framework/shared";import{useMemo}from"react";import{useSelectedRows}from"./use-selected-rows.js";function useRowSelectionConfig({rowKey,selectedKeys,defaultSelectedKeys,selectable,enableRowClick,enableRowClickForSelection,multipleSelection=!0,showSelectAllCheckbox=!0,disabledSelection,onRowSelect,onRowDeselect,onRowSelectionChange}){const{selectedKeys:selectedKeysToUse,selectedRecords,onChange}=useSelectedRows({selectedKeys,defaultSelectedKeys,onRowSelectionChange}),handleRowClickSelection=useMemo(()=>{if(!(!enableRowClick||!enableRowClickForSelection))return record=>{const key=isFunction(rowKey)?rowKey(record):record[rowKey];if(selectedKeysToUse.includes(key)){if(!multipleSelection)return;const newValue=selectedKeysToUse.filter(it=>it!==key),newSelectedRows=selectedRecords.current.filter(it=>(isFunction(rowKey)?rowKey(it):it[rowKey])!==key);onChange(newValue,newSelectedRows),onRowDeselect?.(key,record)}else{const newValue=[key];multipleSelection&&newValue.push(...selectedKeysToUse);const newSelectedRows=[record];multipleSelection&&newSelectedRows.push(...selectedRecords.current),onChange(newValue,newSelectedRows),onRowSelect?.(key,record)}}},[enableRowClick,enableRowClickForSelection,multipleSelection,onChange,onRowDeselect,onRowSelect,rowKey,selectedKeysToUse,selectedRecords]);return{rowSelectionConfig:useMemo(()=>selectable?{fixed:!0,hideSelectAll:!showSelectAllCheckbox,preserveSelectedRowKeys:!1,selectedRowKeys:selectedKeysToUse,type:multipleSelection?"checkbox":"radio",getCheckboxProps:isFunction(disabledSelection)?record=>({disabled:disabledSelection(record)}):void 0,onChange:(selectedRowKeys,selectedRows)=>{onChange(selectedRowKeys,selectedRows)},onSelect:isFunction(onRowSelect)||isFunction(onRowDeselect)?(record,selected)=>{const key=isFunction(rowKey)?rowKey(record):record[rowKey];selected?onRowSelect?.(key,record):onRowDeselect?.(key,record)}:void 0}:void 0,[selectable,showSelectAllCheckbox,selectedKeysToUse,multipleSelection,disabledSelection,onRowSelect,onRowDeselect,onChange,rowKey]),handleRowClickSelection,selectedKeys:selectedKeysToUse,selectedRecords}}/*! 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 */export{useRowSelectionConfig};
@@ -1,27 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useState, useRef, useCallback } from 'react';
3
-
4
- function useSelectedRows({
5
- selectedKeys,
6
- defaultSelectedKeys,
7
- onRowSelectionChange
8
- }) {
9
- const [internalSelectedKeys, setInternalSelectedKeys] = useState(defaultSelectedKeys ?? []);
10
- const selectedKeysToUse = selectedKeys ?? internalSelectedKeys;
11
- const selectedRecords = useRef([]);
12
- const onChange = useCallback((keys, records) => {
13
- if (!selectedKeys) {
14
- setInternalSelectedKeys(keys);
15
- }
16
- selectedRecords.current = records;
17
- onRowSelectionChange?.(keys, records);
18
- }, [onRowSelectionChange, selectedKeys]);
19
- return {
20
- selectedKeys: selectedKeysToUse,
21
- selectedRecords,
22
- onChange
23
- };
24
- }
25
-
26
- export { useSelectedRows };
27
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useState,useRef,useCallback}from"react";function useSelectedRows({selectedKeys,defaultSelectedKeys,onRowSelectionChange}){const[internalSelectedKeys,setInternalSelectedKeys]=useState(defaultSelectedKeys??[]),selectedKeysToUse=selectedKeys??internalSelectedKeys,selectedRecords=useRef([]),onChange=useCallback((keys,records)=>{selectedKeys||setInternalSelectedKeys(keys),selectedRecords.current=records,onRowSelectionChange?.(keys,records)},[onRowSelectionChange,selectedKeys]);return{selectedKeys:selectedKeysToUse,selectedRecords,onChange}}/*! 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 */export{useSelectedRows};
@@ -1,57 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { jsx } from '@emotion/react/jsx-runtime';
3
- import { isNumber, isDeepEqual } from '@vef-framework/shared';
4
- import { useMemo } from 'react';
5
- import { columnComponents } from '../components/columns/index.js';
6
-
7
- function useTableColumns(columns, rowNumberColumn, operationColumn) {
8
- return useMemo(() => {
9
- const columnsToUse = [];
10
- const dataColumns = columns.map((column) => {
11
- const {
12
- title,
13
- show,
14
- sort,
15
- fixed,
16
- dependentColumnNames,
17
- ...columnProps
18
- } = column;
19
- const sortToUse = isNumber(sort) ? { multiple: sort } : sort ?? false ? true : void 0;
20
- const ColumnComponent = columnComponents[column.type];
21
- return {
22
- key: columnProps.name,
23
- dataIndex: columnProps.name,
24
- title: title || columnProps.name,
25
- fixed,
26
- hidden: !(show ?? true),
27
- sorter: sortToUse,
28
- align: columnProps.align,
29
- width: columnProps.width,
30
- shouldCellUpdate: (record, prevRecord) => !isDeepEqual(
31
- dependentColumnNames.map((name) => record[name]),
32
- dependentColumnNames.map((name) => prevRecord[name])
33
- ),
34
- render: (value, record, rowIndex) => /* @__PURE__ */ jsx(
35
- ColumnComponent,
36
- {
37
- columnProps,
38
- record,
39
- rowIndex,
40
- value
41
- }
42
- )
43
- };
44
- });
45
- if (rowNumberColumn) {
46
- columnsToUse.push(rowNumberColumn);
47
- }
48
- columnsToUse.push(...dataColumns);
49
- if (operationColumn) {
50
- columnsToUse.push(operationColumn);
51
- }
52
- return columnsToUse;
53
- }, [columns, rowNumberColumn, operationColumn]);
54
- }
55
-
56
- export { useTableColumns };
57
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";import{isNumber,isDeepEqual}from"@vef-framework/shared";import{useMemo}from"react";import{columnComponents}from"../components/columns/index.js";function useTableColumns(columns,rowNumberColumn,operationColumn){return useMemo(()=>{const columnsToUse=[],dataColumns=columns.map(column=>{const{title,show,sort,fixed,dependentColumnNames,...columnProps}=column,sortToUse=isNumber(sort)?{multiple:sort}:sort??!1?!0:void 0,ColumnComponent=columnComponents[column.type];return{key:columnProps.name,dataIndex:columnProps.name,title:title||columnProps.name,fixed,hidden:!(show??!0),sorter:sortToUse,align:columnProps.align,width:columnProps.width,shouldCellUpdate:(record,prevRecord)=>!isDeepEqual(dependentColumnNames.map(name=>record[name]),dependentColumnNames.map(name=>prevRecord[name])),render:(value,record,rowIndex)=>jsx(ColumnComponent,{columnProps,record,rowIndex,value})}});return rowNumberColumn&&columnsToUse.push(rowNumberColumn),columnsToUse.push(...dataColumns),operationColumn&&columnsToUse.push(operationColumn),columnsToUse},[columns,rowNumberColumn,operationColumn])}/*! 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 */export{useTableColumns};
@@ -1,22 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { createSelectableContext, noop } from '@vef-framework/shared';
3
-
4
- const {
5
- useContextSelector,
6
- useContext,
7
- ContextProvider: TableContextProvider
8
- } = createSelectableContext({
9
- isFetching: false,
10
- refetch: () => Promise.resolve({}),
11
- selectedKeys: [],
12
- selectedRecords: [],
13
- defaultColumnConfigMap: /* @__PURE__ */ new Map(),
14
- columnConfigMap: /* @__PURE__ */ new Map(),
15
- setColumnConfigMap: noop,
16
- columnConfigMapHasChanged: false
17
- });
18
- const useTableContextSelector = useContextSelector;
19
- const useTableContext = useContext;
20
-
21
- export { TableContextProvider, useTableContext, useTableContextSelector };
22
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{createSelectableContext,noop}from"@vef-framework/shared";const{useContextSelector,useContext,ContextProvider:TableContextProvider}=createSelectableContext({isFetching:!1,refetch:()=>Promise.resolve({}),selectedKeys:[],selectedRecords:[],defaultColumnConfigMap:new Map,columnConfigMap:new Map,setColumnConfigMap:noop,columnConfigMapHasChanged:!1}),useTableContextSelector=useContextSelector,useTableContext=useContext;/*! 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 */export{TableContextProvider,useTableContext,useTableContextSelector};
@@ -1,16 +1 @@
1
- /*! VefFramework version: 1.0.101, build time: 2025-03-07T14:07:14.971Z, made by Venus. */
2
- import { useRef, useImperativeHandle } from 'react';
3
-
4
- function useTableInstance(ref, data, refetch) {
5
- const tableRef = useRef(null);
6
- useImperativeHandle(ref, () => ({
7
- getData: () => data,
8
- refetch: async () => {
9
- await refetch();
10
- }
11
- }));
12
- return tableRef;
13
- }
14
-
15
- export { useTableInstance };
16
- /*! 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
+ /*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useRef,useImperativeHandle}from"react";function useTableInstance(ref,data,refetch){const tableRef=useRef(null);return useImperativeHandle(ref,()=>({getData:()=>data,refetch:async()=>{await refetch()}})),tableRef}/*! 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 */export{useTableInstance};