@vef-framework-react/components 2.1.4 → 2.1.6
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.
- package/dist/cjs/_base/constants/event.cjs +1 -0
- package/dist/cjs/_base/constants/index.cjs +1 -1
- package/dist/cjs/_base/constants/symbols.cjs +1 -0
- package/dist/cjs/_base/helpers/event.cjs +1 -0
- package/dist/cjs/_base/helpers/index.cjs +1 -1
- package/dist/cjs/_base/index.cjs +1 -1
- package/dist/cjs/charts/chart.cjs +1 -1
- package/dist/cjs/charts/hooks/use-chart.cjs +1 -1
- package/dist/cjs/config-provider/context-holder.cjs +1 -1
- package/dist/cjs/config-provider/use-config-provider.cjs +1 -1
- package/dist/cjs/crud/components/action-button-group.cjs +1 -0
- package/dist/cjs/crud/components/index.cjs +1 -0
- package/dist/cjs/crud/components/main.cjs +1 -0
- package/dist/cjs/crud/components/mutation-holder.cjs +1 -0
- package/dist/cjs/crud/components/operation-button-group.cjs +1 -0
- package/dist/cjs/crud/components/scene-form.cjs +1 -0
- package/dist/cjs/crud/components/selection-indicator.cjs +1 -0
- package/dist/cjs/crud/components/toolbar-actions.cjs +1 -0
- package/dist/cjs/crud/components/toolbar.cjs +1 -0
- package/dist/cjs/crud/event.cjs +1 -0
- package/dist/cjs/crud/helpers.cjs +1 -0
- package/dist/cjs/crud/hooks/index.cjs +1 -0
- package/dist/cjs/crud/hooks/use-query-observer.cjs +1 -0
- package/dist/cjs/crud/hooks/use-search-values.cjs +1 -0
- package/dist/cjs/crud/hooks/use-selected-rows.cjs +1 -0
- package/dist/cjs/crud/index.cjs +1 -0
- package/dist/cjs/crud/store.cjs +1 -0
- package/dist/cjs/crud/styles.cjs +1 -0
- package/dist/cjs/crud-page/index.cjs +1 -0
- package/dist/cjs/flex-card/index.cjs +1 -0
- package/dist/cjs/flex-card/styles.cjs +1 -0
- package/dist/cjs/form-drawer/components/form-actions.cjs +1 -0
- package/dist/cjs/form-drawer/components/index.cjs +1 -0
- package/dist/cjs/form-drawer/index.cjs +1 -0
- package/dist/cjs/form-modal/components/draggable-wrapper.cjs +1 -0
- package/dist/cjs/form-modal/components/form-actions.cjs +1 -0
- package/dist/cjs/form-modal/components/index.cjs +1 -0
- package/dist/cjs/form-modal/index.cjs +1 -0
- package/dist/cjs/grid/hooks/use-container-width.cjs +1 -1
- package/dist/cjs/grid/index.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/logo-icon/index.cjs +1 -0
- package/dist/cjs/page/components/aside-panel.cjs +1 -0
- package/dist/cjs/page/components/index.cjs +1 -0
- package/dist/cjs/page/components/resize-handle.cjs +1 -0
- package/dist/cjs/page/components/scroll-content.cjs +1 -0
- package/dist/cjs/page/hooks/index.cjs +1 -0
- package/dist/cjs/page/hooks/use-page-key.cjs +1 -0
- package/dist/cjs/page/hooks/use-resize.cjs +1 -0
- package/dist/cjs/page/index.cjs +1 -0
- package/dist/cjs/page/styles.cjs +1 -0
- package/dist/cjs/page/viewport-context.cjs +1 -0
- package/dist/cjs/pro-search/components/advanced-search-toggler.cjs +1 -0
- package/dist/cjs/pro-search/components/advanced-search.cjs +1 -0
- package/dist/cjs/pro-search/components/index.cjs +1 -0
- package/dist/cjs/pro-search/components/search-actions.cjs +1 -0
- package/dist/cjs/pro-search/index.cjs +1 -0
- package/dist/cjs/pro-search/styles.cjs +1 -0
- package/dist/cjs/pro-table/components/column-setting-item.cjs +1 -0
- package/dist/cjs/pro-table/components/column-settings-panel.cjs +1 -0
- package/dist/cjs/pro-table/components/column-settings.cjs +1 -0
- package/dist/cjs/pro-table/components/index.cjs +1 -0
- package/dist/cjs/pro-table/components/operation-button-group.cjs +1 -0
- package/dist/cjs/pro-table/components/ref.cjs +1 -0
- package/dist/cjs/pro-table/components/table-subscriber.cjs +1 -0
- package/dist/cjs/pro-table/components/table-summary.cjs +1 -0
- package/dist/cjs/pro-table/components/table-title.cjs +1 -0
- package/dist/cjs/pro-table/components/table.cjs +1 -0
- package/dist/cjs/pro-table/components/width-popover.cjs +1 -0
- package/dist/cjs/pro-table/context.cjs +1 -0
- package/dist/cjs/pro-table/event.cjs +1 -0
- package/dist/cjs/pro-table/hooks/index.cjs +1 -0
- package/dist/cjs/pro-table/hooks/use-column-settings-persistence.cjs +1 -0
- package/dist/cjs/pro-table/hooks/use-row-selection.cjs +1 -0
- package/dist/cjs/pro-table/hooks/use-table-columns.cjs +1 -0
- package/dist/cjs/pro-table/index.cjs +1 -0
- package/dist/cjs/pro-table/store.cjs +1 -0
- package/dist/cjs/select/hooks/use-data-options-select.cjs +1 -1
- package/dist/cjs/table/index.cjs +1 -1
- package/dist/cjs/tree/hooks/use-data-options-tree.cjs +1 -1
- package/dist/cjs/tree-select/hooks/use-data-options-tree-select.cjs +1 -1
- package/dist/es/_base/constants/breakpoints.js +1 -1
- package/dist/es/_base/constants/common.js +1 -1
- package/dist/es/_base/constants/css-vars.js +1 -1
- package/dist/es/_base/constants/event.js +5 -0
- package/dist/es/_base/constants/index.js +3 -1
- package/dist/es/_base/constants/symbols.js +5 -0
- package/dist/es/_base/helpers/breakpoints.js +1 -1
- package/dist/es/_base/helpers/color.js +1 -1
- package/dist/es/_base/helpers/common.js +1 -1
- package/dist/es/_base/helpers/event.js +14 -0
- package/dist/es/_base/helpers/index.js +2 -1
- package/dist/es/_base/helpers/message.js +1 -1
- package/dist/es/_base/helpers/modal.js +1 -1
- package/dist/es/_base/helpers/notification.js +1 -1
- package/dist/es/_base/helpers/props.js +1 -1
- package/dist/es/_base/helpers/react.js +1 -1
- package/dist/es/_base/hooks/index.js +1 -1
- package/dist/es/_base/hooks/use-theme-tokens.js +1 -1
- package/dist/es/_base/index.js +4 -1
- package/dist/es/_base/styles/common.js +1 -1
- package/dist/es/_base/styles/index.js +1 -1
- package/dist/es/_base/types/breakpoints.js +1 -1
- package/dist/es/_base/types/common.js +1 -1
- package/dist/es/_base/types/index.js +1 -1
- package/dist/es/action-button/index.js +1 -1
- package/dist/es/action-button/use-action-button.js +1 -1
- package/dist/es/action-group/index.js +1 -1
- package/dist/es/action-group/use-action-group.js +1 -1
- package/dist/es/action-group/use-computed-action-buttons.js +1 -1
- package/dist/es/affix/index.js +1 -1
- package/dist/es/alert/index.js +1 -1
- package/dist/es/anchor/index.js +1 -1
- package/dist/es/auto-complete/index.js +1 -1
- package/dist/es/avatar/index.js +1 -1
- package/dist/es/badge/index.js +1 -1
- package/dist/es/bool/index.js +1 -1
- package/dist/es/breadcrumb/index.js +1 -1
- package/dist/es/button/index.js +1 -1
- package/dist/es/calendar/index.js +1 -1
- package/dist/es/card/index.js +1 -1
- package/dist/es/carousel/index.js +1 -1
- package/dist/es/cascader/index.js +1 -1
- package/dist/es/center/index.js +1 -1
- package/dist/es/charts/chart.js +6 -6
- package/dist/es/charts/helpers/group.js +1 -1
- package/dist/es/charts/helpers/index.js +1 -1
- package/dist/es/charts/hooks/index.js +1 -1
- package/dist/es/charts/hooks/use-chart.js +11 -11
- package/dist/es/charts/index.js +1 -1
- package/dist/es/charts/themes/index.js +1 -1
- package/dist/es/charts/themes/walden-dark.js +1 -1
- package/dist/es/charts/themes/walden.js +1 -1
- package/dist/es/charts/themes/wonderland-dark.js +1 -1
- package/dist/es/charts/themes/wonderland.js +1 -1
- package/dist/es/checkbox/index.js +1 -1
- package/dist/es/code-highlighter/index.js +1 -1
- package/dist/es/col/index.js +1 -1
- package/dist/es/collapse/index.js +1 -1
- package/dist/es/color-picker/index.js +1 -1
- package/dist/es/compact/index.js +1 -1
- package/dist/es/config-provider/app.js +1 -1
- package/dist/es/config-provider/constants.js +1 -1
- package/dist/es/config-provider/context-holder.js +5 -5
- package/dist/es/config-provider/css-vars.js +1 -1
- package/dist/es/config-provider/dark-mode-context.js +1 -1
- package/dist/es/config-provider/error-fallback.js +1 -1
- package/dist/es/config-provider/global-style.js +1 -1
- package/dist/es/config-provider/index.js +1 -1
- package/dist/es/config-provider/theme-config.js +1 -1
- package/dist/es/config-provider/use-config-provider.js +8 -8
- package/dist/es/crud/components/action-button-group.js +13 -0
- package/dist/es/crud/components/index.js +7 -0
- package/dist/es/crud/components/main.js +43 -0
- package/dist/es/crud/components/mutation-holder.js +32 -0
- package/dist/es/crud/components/operation-button-group.js +18 -0
- package/dist/es/crud/components/scene-form.js +48 -0
- package/dist/es/crud/components/selection-indicator.js +72 -0
- package/dist/es/crud/components/toolbar-actions.js +14 -0
- package/dist/es/crud/components/toolbar.js +29 -0
- package/dist/es/crud/event.js +8 -0
- package/dist/es/crud/helpers.js +18 -0
- package/dist/es/crud/hooks/index.js +4 -0
- package/dist/es/crud/hooks/use-query-observer.js +28 -0
- package/dist/es/crud/hooks/use-search-values.js +8 -0
- package/dist/es/crud/hooks/use-selected-rows.js +8 -0
- package/dist/es/crud/index.js +44 -0
- package/dist/es/crud/store.js +66 -0
- package/dist/es/crud/styles.js +20 -0
- package/dist/es/crud-page/index.js +23 -0
- package/dist/es/date-picker/index.js +1 -1
- package/dist/es/descriptions/index.js +1 -1
- package/dist/es/divider/index.js +1 -1
- package/dist/es/drawer/index.js +1 -1
- package/dist/es/dropdown/index.js +1 -1
- package/dist/es/dynamic-icon/index.js +1 -1
- package/dist/es/dynamic-icon/placeholder-icon.js +1 -1
- package/dist/es/dynamic-icon/unknown-icon.js +1 -1
- package/dist/es/empty/empty.js +1 -1
- package/dist/es/empty/index.js +1 -1
- package/dist/es/flex/index.js +1 -1
- package/dist/es/flex-card/index.js +14 -0
- package/dist/es/flex-card/styles.js +20 -0
- package/dist/es/flip-text/index.js +1 -1
- package/dist/es/float-button/index.js +1 -1
- package/dist/es/form/components/form.js +1 -1
- package/dist/es/form/components/index.js +1 -1
- package/dist/es/form/components/reset-button.js +1 -1
- package/dist/es/form/components/submit-button.js +1 -1
- package/dist/es/form/contexts/form-context.js +1 -1
- package/dist/es/form/contexts/form-layout.js +1 -1
- package/dist/es/form/contexts/index.js +1 -1
- package/dist/es/form/fields/auto-complete/index.js +1 -1
- package/dist/es/form/fields/bool/index.js +1 -1
- package/dist/es/form/fields/cascader/index.js +1 -1
- package/dist/es/form/fields/checkbox/index.js +1 -1
- package/dist/es/form/fields/color-picker/index.js +1 -1
- package/dist/es/form/fields/date-picker/index.js +8 -8
- package/dist/es/form/fields/date-range-picker/index.js +8 -8
- package/dist/es/form/fields/index.js +1 -1
- package/dist/es/form/fields/input/index.js +1 -1
- package/dist/es/form/fields/input-number/index.js +1 -1
- package/dist/es/form/fields/mentions/index.js +1 -1
- package/dist/es/form/fields/password/index.js +1 -1
- package/dist/es/form/fields/radio/index.js +1 -1
- package/dist/es/form/fields/rate/index.js +1 -1
- package/dist/es/form/fields/select/index.js +1 -1
- package/dist/es/form/fields/slider/index.js +8 -8
- package/dist/es/form/fields/textarea/index.js +1 -1
- package/dist/es/form/fields/time-picker/index.js +1 -1
- package/dist/es/form/fields/time-range-picker/index.js +1 -1
- package/dist/es/form/fields/transfer/index.js +1 -1
- package/dist/es/form/fields/tree-select/index.js +1 -1
- package/dist/es/form/fields/upload/index.js +1 -1
- package/dist/es/form/form.js +1 -1
- package/dist/es/form/helpers/index.js +1 -1
- package/dist/es/form/helpers/with-form-item.js +1 -1
- package/dist/es/form/hooks/use-form-item-props.js +1 -1
- package/dist/es/form/hooks/use-label-width.js +1 -1
- package/dist/es/form/index.js +1 -1
- package/dist/es/form/use-form.js +1 -1
- package/dist/es/form-drawer/components/form-actions.js +26 -0
- package/dist/es/form-drawer/components/index.js +2 -0
- package/dist/es/form-drawer/index.js +82 -0
- package/dist/es/form-modal/components/draggable-wrapper.js +52 -0
- package/dist/es/form-modal/components/form-actions.js +26 -0
- package/dist/es/form-modal/components/index.js +3 -0
- package/dist/es/form-modal/index.js +72 -0
- package/dist/es/grid/context.js +1 -1
- package/dist/es/grid/grid-item.js +1 -1
- package/dist/es/grid/hooks/index.js +1 -1
- package/dist/es/grid/hooks/use-container-breakpoints.js +1 -1
- package/dist/es/grid/hooks/use-container-width.js +6 -6
- package/dist/es/grid/hooks/use-grid-collapsed.js +1 -1
- package/dist/es/grid/hooks/use-normalized-gap.js +1 -1
- package/dist/es/grid/hooks/use-responsive-breakpoint.js +1 -1
- package/dist/es/grid/hooks/use-responsive-value.js +1 -1
- package/dist/es/grid/index.js +14 -14
- package/dist/es/grid/styles.js +1 -1
- package/dist/es/group/index.js +1 -1
- package/dist/es/icon/index.js +1 -1
- package/dist/es/icon-button/index.js +1 -1
- package/dist/es/image/index.js +1 -1
- package/dist/es/index.js +121 -106
- package/dist/es/input/index.js +1 -1
- package/dist/es/input-number/index.js +1 -1
- package/dist/es/keyboard/index.js +1 -1
- package/dist/es/list/index.js +1 -1
- package/dist/es/loader/index.js +1 -1
- package/dist/es/logo-icon/index.js +24 -0
- package/dist/es/mentions/index.js +1 -1
- package/dist/es/menu/index.js +1 -1
- package/dist/es/modal/index.js +1 -1
- package/dist/es/operation-button/index.js +1 -1
- package/dist/es/page/components/aside-panel.js +49 -0
- package/dist/es/page/components/index.js +4 -0
- package/dist/es/page/components/resize-handle.js +18 -0
- package/dist/es/page/components/scroll-content.js +55 -0
- package/dist/es/page/hooks/index.js +3 -0
- package/dist/es/page/hooks/use-page-key.js +12 -0
- package/dist/es/page/hooks/use-resize.js +32 -0
- package/dist/es/page/index.js +127 -0
- package/dist/es/page/styles.js +122 -0
- package/dist/es/page/viewport-context.js +12 -0
- package/dist/es/pagination/index.js +1 -1
- package/dist/es/permission-gate/index.js +1 -1
- package/dist/es/popconfirm/index.js +1 -1
- package/dist/es/popover/index.js +1 -1
- package/dist/es/pro-search/components/advanced-search-toggler.js +28 -0
- package/dist/es/pro-search/components/advanced-search.js +32 -0
- package/dist/es/pro-search/components/index.js +4 -0
- package/dist/es/pro-search/components/search-actions.js +25 -0
- package/dist/es/pro-search/index.js +57 -0
- package/dist/es/pro-search/styles.js +44 -0
- package/dist/es/pro-table/components/column-setting-item.js +170 -0
- package/dist/es/pro-table/components/column-settings-panel.js +93 -0
- package/dist/es/pro-table/components/column-settings.js +30 -0
- package/dist/es/pro-table/components/index.js +9 -0
- package/dist/es/pro-table/components/operation-button-group.js +18 -0
- package/dist/es/pro-table/components/ref.js +14 -0
- package/dist/es/pro-table/components/table-subscriber.js +17 -0
- package/dist/es/pro-table/components/table-summary.js +12 -0
- package/dist/es/pro-table/components/table-title.js +12 -0
- package/dist/es/pro-table/components/table.js +102 -0
- package/dist/es/pro-table/components/width-popover.js +76 -0
- package/dist/es/pro-table/context.js +13 -0
- package/dist/es/pro-table/event.js +8 -0
- package/dist/es/pro-table/hooks/index.js +4 -0
- package/dist/es/pro-table/hooks/use-column-settings-persistence.js +60 -0
- package/dist/es/pro-table/hooks/use-row-selection.js +29 -0
- package/dist/es/pro-table/hooks/use-table-columns.js +109 -0
- package/dist/es/pro-table/index.js +70 -0
- package/dist/es/pro-table/store.js +94 -0
- package/dist/es/progress/index.js +1 -1
- package/dist/es/qrcode/index.js +1 -1
- package/dist/es/radio/index.js +1 -1
- package/dist/es/rate/index.js +1 -1
- package/dist/es/result/index.js +1 -1
- package/dist/es/row/index.js +1 -1
- package/dist/es/scroll-area/index.js +1 -1
- package/dist/es/scroll-area/styles.js +1 -1
- package/dist/es/segmented/index.js +1 -1
- package/dist/es/select/hooks/index.js +1 -1
- package/dist/es/select/hooks/use-data-options-select.js +11 -11
- package/dist/es/select/index.js +1 -1
- package/dist/es/skeleton/index.js +1 -1
- package/dist/es/slider/index.js +1 -1
- package/dist/es/space/index.js +1 -1
- package/dist/es/space/space.js +1 -1
- package/dist/es/sparkles-text/index.js +1 -1
- package/dist/es/sparkles-text/sparkle.js +1 -1
- package/dist/es/spin/index.js +1 -1
- package/dist/es/split-text/index.js +1 -1
- package/dist/es/splitter/index.js +1 -1
- package/dist/es/stack/index.js +1 -1
- package/dist/es/statistic/index.js +1 -1
- package/dist/es/steps/index.js +1 -1
- package/dist/es/switch/index.js +1 -1
- package/dist/es/table/index.js +29 -28
- package/dist/es/table/use-pagination-props.js +1 -1
- package/dist/es/tabs/index.js +1 -1
- package/dist/es/tag/index.js +1 -1
- package/dist/es/time-picker/index.js +1 -1
- package/dist/es/timeline/index.js +1 -1
- package/dist/es/tooltip/index.js +1 -1
- package/dist/es/tour/index.js +1 -1
- package/dist/es/transfer/index.js +1 -1
- package/dist/es/tree/hooks/index.js +1 -1
- package/dist/es/tree/hooks/use-data-options-tree.js +8 -8
- package/dist/es/tree/index.js +1 -1
- package/dist/es/tree-select/hooks/index.js +1 -1
- package/dist/es/tree-select/hooks/use-data-options-tree-select.js +11 -11
- package/dist/es/tree-select/index.js +1 -1
- package/dist/es/typing-animation/index.js +1 -1
- package/dist/es/typography/index.js +1 -1
- package/dist/es/upload/index.js +1 -1
- package/dist/es/watermark/index.js +1 -1
- package/dist/types/_base/constants/event.d.ts +1 -0
- package/dist/types/_base/constants/index.d.ts +2 -0
- package/dist/types/_base/constants/symbols.d.ts +2 -0
- package/dist/types/_base/helpers/event.d.ts +3 -0
- package/dist/types/_base/helpers/index.d.ts +1 -0
- package/dist/types/_base/types/common.d.ts +4 -0
- package/dist/types/crud/components/action-button-group.d.ts +8 -0
- package/dist/types/crud/components/index.d.ts +6 -0
- package/dist/types/crud/components/main.d.ts +6 -0
- package/dist/types/crud/components/mutation-holder.d.ts +10 -0
- package/dist/types/crud/components/operation-button-group.d.ts +8 -0
- package/dist/types/crud/components/scene-form.d.ts +7 -0
- package/dist/types/crud/components/selection-indicator.d.ts +6 -0
- package/dist/types/crud/components/toolbar-actions.d.ts +6 -0
- package/dist/types/crud/components/toolbar.d.ts +8 -0
- package/dist/types/crud/event.d.ts +3 -0
- package/dist/types/crud/helpers.d.ts +20 -0
- package/dist/types/crud/hooks/index.d.ts +3 -0
- package/dist/types/crud/hooks/use-query-observer.d.ts +6 -0
- package/dist/types/crud/hooks/use-search-values.d.ts +2 -0
- package/dist/types/crud/hooks/use-selected-rows.d.ts +2 -0
- package/dist/types/crud/index.d.ts +8 -0
- package/dist/types/crud/props.d.ts +171 -0
- package/dist/types/crud/store.d.ts +146 -0
- package/dist/types/crud/styles.d.ts +3 -0
- package/dist/types/crud/types.d.ts +55 -0
- package/dist/types/crud-page/index.d.ts +3 -0
- package/dist/types/crud-page/props.d.ts +57 -0
- package/dist/types/dynamic-icon/index.d.ts +1 -1
- package/dist/types/flex-card/index.d.ts +3 -0
- package/dist/types/flex-card/props.d.ts +2 -0
- package/dist/types/flex-card/styles.d.ts +2 -0
- package/dist/types/form-drawer/components/form-actions.d.ts +19 -0
- package/dist/types/form-drawer/components/index.d.ts +1 -0
- package/dist/types/form-drawer/index.d.ts +5 -0
- package/dist/types/form-drawer/props.d.ts +80 -0
- package/dist/types/form-modal/components/draggable-wrapper.d.ts +9 -0
- package/dist/types/form-modal/components/form-actions.d.ts +19 -0
- package/dist/types/form-modal/components/index.d.ts +2 -0
- package/dist/types/form-modal/index.d.ts +5 -0
- package/dist/types/form-modal/props.d.ts +81 -0
- package/dist/types/index.d.ts +11 -1
- package/dist/types/logo-icon/index.d.ts +3 -0
- package/dist/types/logo-icon/props.d.ts +4 -0
- package/dist/types/page/components/aside-panel.d.ts +11 -0
- package/dist/types/page/components/index.d.ts +3 -0
- package/dist/types/page/components/resize-handle.d.ts +7 -0
- package/dist/types/page/components/scroll-content.d.ts +8 -0
- package/dist/types/page/hooks/index.d.ts +2 -0
- package/dist/types/page/hooks/use-page-key.d.ts +1 -0
- package/dist/types/page/hooks/use-resize.d.ts +15 -0
- package/dist/types/page/index.d.ts +4 -0
- package/dist/types/page/props.d.ts +140 -0
- package/dist/types/page/styles.d.ts +17 -0
- package/dist/types/page/viewport-context.d.ts +7 -0
- package/dist/types/pro-search/components/advanced-search-toggler.d.ts +7 -0
- package/dist/types/pro-search/components/advanced-search.d.ts +6 -0
- package/dist/types/pro-search/components/index.d.ts +3 -0
- package/dist/types/pro-search/components/search-actions.d.ts +10 -0
- package/dist/types/pro-search/index.d.ts +5 -0
- package/dist/types/pro-search/props.d.ts +66 -0
- package/dist/types/pro-search/styles.d.ts +6 -0
- package/dist/types/pro-table/components/column-setting-item.d.ts +12 -0
- package/dist/types/pro-table/components/column-settings-panel.d.ts +2 -0
- package/dist/types/pro-table/components/column-settings.d.ts +6 -0
- package/dist/types/pro-table/components/index.d.ts +8 -0
- package/dist/types/pro-table/components/operation-button-group.d.ts +7 -0
- package/dist/types/pro-table/components/ref.d.ts +3 -0
- package/dist/types/pro-table/components/table-subscriber.d.ts +9 -0
- package/dist/types/pro-table/components/table-summary.d.ts +7 -0
- package/dist/types/pro-table/components/table-title.d.ts +7 -0
- package/dist/types/pro-table/components/table.d.ts +12 -0
- package/dist/types/pro-table/components/width-popover.d.ts +9 -0
- package/dist/types/pro-table/context.d.ts +5 -0
- package/dist/types/pro-table/event.d.ts +16 -0
- package/dist/types/pro-table/hooks/index.d.ts +3 -0
- package/dist/types/pro-table/hooks/use-column-settings-persistence.d.ts +7 -0
- package/dist/types/pro-table/hooks/use-row-selection.d.ts +7 -0
- package/dist/types/pro-table/hooks/use-table-columns.d.ts +13 -0
- package/dist/types/pro-table/index.d.ts +11 -0
- package/dist/types/pro-table/props.d.ts +127 -0
- package/dist/types/pro-table/store.d.ts +105 -0
- package/dist/types/pro-table/types.d.ts +103 -0
- package/package.json +6 -6
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
/*! @vef-framework-react/components v2.1.
|
|
1
|
+
/*! @vef-framework-react/components v2.1.6 made by Venus | 2026-04-01T03:01:33.796Z */
|
|
2
2
|
import { Loader as e } from "../../loader/index.js";
|
|
3
3
|
import { jsx as t } from "@emotion/react/jsx-runtime";
|
|
4
4
|
import { isString as n } from "@vef-framework-react/shared";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
5
|
+
import { useDataOptionsQuery as r } from "@vef-framework-react/hooks";
|
|
6
|
+
import { useEffect as i, useEffectEvent as a, useMemo as o } from "react";
|
|
7
|
+
import { css as s } from "@emotion/react";
|
|
8
8
|
//#region src/tree-select/hooks/use-data-options-tree-select.tsx
|
|
9
9
|
var c = {
|
|
10
10
|
label: "label",
|
|
11
11
|
value: "value",
|
|
12
12
|
children: "children"
|
|
13
13
|
}, l = 280, u = /* @__PURE__ */ t("div", {
|
|
14
|
-
css: /* @__PURE__ */
|
|
14
|
+
css: /* @__PURE__ */ s({ height: l / 2 }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZS1kYXRhLW9wdGlvbnMtdHJlZS1zZWxlY3QudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRDTyIsImZpbGUiOiJ1c2UtZGF0YS1vcHRpb25zLXRyZWUtc2VsZWN0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGF0YU9wdGlvbldpdGhQaW55aW4gfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3QvY29yZVwiO1xuaW1wb3J0IHR5cGUgeyBVc2VEYXRhT3B0aW9uc1F1ZXJ5T3B0aW9ucyB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9ob29rc1wiO1xuaW1wb3J0IHR5cGUgeyBLZXkgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5cbmltcG9ydCB0eXBlIHsgVHJlZVNlbGVjdFByb3BzIH0gZnJvbSBcIi4uXCI7XG5pbXBvcnQgdHlwZSB7IEdldFByb3AgfSBmcm9tIFwiLi4vLi4vX2Jhc2VcIjtcblxuaW1wb3J0IHsgdXNlRGF0YU9wdGlvbnNRdWVyeSB9IGZyb20gXCJAdmVmLWZyYW1ld29yay1yZWFjdC9ob29rc1wiO1xuaW1wb3J0IHsgaXNTdHJpbmcgfSBmcm9tIFwiQHZlZi1mcmFtZXdvcmstcmVhY3Qvc2hhcmVkXCI7XG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZUVmZmVjdEV2ZW50LCB1c2VNZW1vIH0gZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IExvYWRlciB9IGZyb20gXCIuLi8uLi9sb2FkZXJcIjtcblxuZXhwb3J0IHR5cGUgVXNlRGF0YU9wdGlvbnNUcmVlU2VsZWN0T3B0aW9uczxcbiAgVFF1ZXJ5Rm5EYXRhID0gdW5rbm93bixcbiAgVERhdGEgPSBUUXVlcnlGbkRhdGEsXG4gIFRQYXJhbXMgPSBuZXZlclxuPiA9IFVzZURhdGFPcHRpb25zUXVlcnlPcHRpb25zPFRRdWVyeUZuRGF0YSwgVERhdGEsIFRQYXJhbXM+ICYge1xuICAvKipcbiAgICogV2hldGhlciB0aGUgdHJlZSBzZWxlY3QgaXMgZmlsdGVyYWJsZVxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgZmlsdGVyYWJsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDYWxsYmFjayBmdW5jdGlvbiBpbnZva2VkIGFmdGVyIGRhdGEgaXMgZmV0Y2hlZFxuICAgKi9cbiAgb25GZXRjaD86IChkYXRhOiBURGF0YVtdKSA9PiB2b2lkO1xufTtcblxuY29uc3QgZmllbGROYW1lczogR2V0UHJvcDxUcmVlU2VsZWN0UHJvcHMsIFwiZmllbGROYW1lc1wiPiA9IHtcbiAgbGFiZWw6IFwibGFiZWxcIixcbiAgdmFsdWU6IFwidmFsdWVcIixcbiAgY2hpbGRyZW46IFwiY2hpbGRyZW5cIlxufTtcblxuLyoqXG4gKiBUaGUgaGVpZ2h0IG9mIHRoZSB0cmVlIHNlbGVjdCBkcm9wZG93biBsaXN0LlxuICovXG5jb25zdCBsaXN0SGVpZ2h0ID0gMjgwO1xuLyoqXG4gKiBUaGUgbG9hZGluZyBwbGFjZWhvbGRlciBvZiB0aGUgdHJlZSBzZWxlY3QuXG4gKi9cbmNvbnN0IGxvYWRpbmdQbGFjZWhvbGRlciA9IChcbiAgPGRpdiBjc3M9e3sgaGVpZ2h0OiBsaXN0SGVpZ2h0IC8gMiB9fT5cbiAgICA8TG9hZGVyIC8+XG4gIDwvZGl2PlxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZURhdGFPcHRpb25zVHJlZVNlbGVjdDxcbiAgVFF1ZXJ5Rm5EYXRhID0gdW5rbm93bixcbiAgVERhdGEgPSBUUXVlcnlGbkRhdGEsXG4gIFRQYXJhbXMgPSBuZXZlclxuPih7XG4gIGZpbHRlcmFibGUgPSBmYWxzZSxcbiAgb25GZXRjaCxcbiAgLi4ucXVlcnlPcHRpb25zXG59OiBVc2VEYXRhT3B0aW9uc1RyZWVTZWxlY3RPcHRpb25zPFRRdWVyeUZuRGF0YSwgVERhdGEsIFRQYXJhbXM+KSB7XG4gIGNvbnN0IHtcbiAgICBvcHRpb25zLFxuICAgIGlzRmV0Y2hpbmcsXG4gICAgcHJvbWlzZVxuICB9ID0gdXNlRGF0YU9wdGlvbnNRdWVyeSh7XG4gICAgLi4ucXVlcnlPcHRpb25zLFxuICAgIHdpdGhQaW55aW46IHRydWVcbiAgfSk7XG5cbiAgY29uc3QgdHJlZVNlbGVjdFByb3BzID0gdXNlTWVtbzxUcmVlU2VsZWN0UHJvcHM8S2V5LCBEYXRhT3B0aW9uV2l0aFBpbnlpbjxURGF0YT4+PigoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRyZWVEYXRhOiBvcHRpb25zLFxuICAgICAgbG9hZGluZzogaXNGZXRjaGluZyxcbiAgICAgIGZpZWxkTmFtZXMsXG4gICAgICBtYXhUYWdDb3VudDogXCJyZXNwb25zaXZlXCIsXG4gICAgICBsaXN0SGVpZ2h0LFxuICAgICAgbm90Rm91bmRDb250ZW50OiBpc0ZldGNoaW5nID8gbG9hZGluZ1BsYWNlaG9sZGVyIDogdW5kZWZpbmVkLFxuICAgICAgZmlsdGVyVHJlZU5vZGU6IGZpbHRlcmFibGUgJiYgZmlsdGVyVHJlZU5vZGUsXG4gICAgICB0cmVlTm9kZUZpbHRlclByb3A6IFwibGFiZWxQaW55aW5Jbml0aWFsc1wiLFxuICAgICAgdHJlZU5vZGVMYWJlbFByb3A6IFwibGFiZWxcIixcbiAgICAgIHNob3dTZWFyY2g6IGZpbHRlcmFibGUsXG4gICAgICB0cmVlTGluZToge1xuICAgICAgICBzaG93TGVhZkljb246IGZhbHNlXG4gICAgICB9XG4gICAgfTtcbiAgfSwgW2lzRmV0Y2hpbmcsIG9wdGlvbnMsIGZpbHRlcmFibGVdKTtcblxuICBjb25zdCBvbkZldGNoRm4gPSB1c2VFZmZlY3RFdmVudCgoZGF0YTogVERhdGFbXSkgPT4ge1xuICAgIG9uRmV0Y2g/LihkYXRhKTtcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBwcm9taXNlLnRoZW4ob25GZXRjaEZuKTtcbiAgfSwgW3Byb21pc2VdKTtcblxuICByZXR1cm4gdHJlZVNlbGVjdFByb3BzO1xufVxuXG5mdW5jdGlvbiBmaWx0ZXJUcmVlTm9kZShpbnB1dDogc3RyaW5nLCBub2RlOiBQYXJhbWV0ZXJzPEV4Y2x1ZGU8R2V0UHJvcDxUcmVlU2VsZWN0UHJvcHMsIFwiZmlsdGVyVHJlZU5vZGVcIj4sIGJvb2xlYW4+PlsxXSkge1xuICBjb25zdCBsYWJlbCA9IFJlZmxlY3QuZ2V0KG5vZGUsIFwibGFiZWxcIik7XG4gIGNvbnN0IGxhYmVsUGlueWluID0gUmVmbGVjdC5nZXQobm9kZSwgXCJsYWJlbFBpbnlpblwiKTtcbiAgY29uc3QgbGFiZWxQaW55aW5Jbml0aWFscyA9IFJlZmxlY3QuZ2V0KG5vZGUsIFwibGFiZWxQaW55aW5Jbml0aWFsc1wiKTtcbiAgY29uc3QgZGVzY3JpcHRpb24gPSBSZWZsZWN0LmdldChub2RlLCBcImRlc2NyaXB0aW9uXCIpO1xuICBjb25zdCBkZXNjcmlwdGlvblBpbnlpbiA9IFJlZmxlY3QuZ2V0KG5vZGUsIFwiZGVzY3JpcHRpb25QaW55aW5cIik7XG4gIGNvbnN0IGRlc2NyaXB0aW9uUGlueWluSW5pdGlhbHMgPSBSZWZsZWN0LmdldChub2RlLCBcImRlc2NyaXB0aW9uUGlueWluSW5pdGlhbHNcIik7XG5cbiAgcmV0dXJuIChpc1N0cmluZyhsYWJlbCkgJiYgbGFiZWwuaW5jbHVkZXMoaW5wdXQpKVxuICAgIHx8IChpc1N0cmluZyhsYWJlbFBpbnlpbikgJiYgbGFiZWxQaW55aW4uaW5jbHVkZXMoaW5wdXQpKVxuICAgIHx8IChpc1N0cmluZyhsYWJlbFBpbnlpbkluaXRpYWxzKSAmJiBsYWJlbFBpbnlpbkluaXRpYWxzLmluY2x1ZGVzKGlucHV0KSlcbiAgICB8fCAoaXNTdHJpbmcoZGVzY3JpcHRpb24pICYmIGRlc2NyaXB0aW9uLmluY2x1ZGVzKGlucHV0KSlcbiAgICB8fCAoaXNTdHJpbmcoZGVzY3JpcHRpb25QaW55aW4pICYmIGRlc2NyaXB0aW9uUGlueWluLmluY2x1ZGVzKGlucHV0KSlcbiAgICB8fCAoaXNTdHJpbmcoZGVzY3JpcHRpb25QaW55aW5Jbml0aWFscykgJiYgZGVzY3JpcHRpb25QaW55aW5Jbml0aWFscy5pbmNsdWRlcyhpbnB1dCkpO1xufVxuIl19 */"),
|
|
15
15
|
children: /* @__PURE__ */ t(e, {})
|
|
16
16
|
});
|
|
17
17
|
function d({ filterable: e = !1, onFetch: t, ...n }) {
|
|
18
|
-
let { options:
|
|
18
|
+
let { options: s, isFetching: d, promise: p } = r({
|
|
19
19
|
...n,
|
|
20
20
|
withPinyin: !0
|
|
21
|
-
}), m =
|
|
22
|
-
treeData:
|
|
21
|
+
}), m = o(() => ({
|
|
22
|
+
treeData: s,
|
|
23
23
|
loading: d,
|
|
24
24
|
fieldNames: c,
|
|
25
25
|
maxTagCount: "responsive",
|
|
@@ -32,12 +32,12 @@ function d({ filterable: e = !1, onFetch: t, ...n }) {
|
|
|
32
32
|
treeLine: { showLeafIcon: !1 }
|
|
33
33
|
}), [
|
|
34
34
|
d,
|
|
35
|
-
|
|
35
|
+
s,
|
|
36
36
|
e
|
|
37
|
-
]), h =
|
|
37
|
+
]), h = a((e) => {
|
|
38
38
|
t?.(e);
|
|
39
39
|
});
|
|
40
|
-
return
|
|
40
|
+
return i(() => {
|
|
41
41
|
p.then(h);
|
|
42
42
|
}, [p]), m;
|
|
43
43
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @vef-framework-react/components v2.1.
|
|
1
|
+
/*! @vef-framework-react/components v2.1.6 made by Venus | 2026-04-01T03:01:33.796Z */
|
|
2
2
|
import "./hooks/use-data-options-tree-select.js";
|
|
3
3
|
import { TreeSelect as e } from "antd";
|
|
4
4
|
export { e as TreeSelect };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @vef-framework-react/components v2.1.
|
|
1
|
+
/*! @vef-framework-react/components v2.1.6 made by Venus | 2026-04-01T03:01:33.796Z */
|
|
2
2
|
import { jsx as e } from "@emotion/react/jsx-runtime";
|
|
3
3
|
import { Children as t, useEffect as n, useRef as r, useState as i } from "react";
|
|
4
4
|
import { motion as a, useInView as o } from "@vef-framework-react/core";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @vef-framework-react/components v2.1.
|
|
1
|
+
/*! @vef-framework-react/components v2.1.6 made by Venus | 2026-04-01T03:01:33.796Z */
|
|
2
2
|
import { Typography as e } from "antd";
|
|
3
3
|
//#region src/typography/index.ts
|
|
4
4
|
var { Text: t, Link: n, Title: r, Paragraph: i } = e;
|
package/dist/es/upload/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @vef-framework-react/components v2.1.
|
|
1
|
+
/*! @vef-framework-react/components v2.1.6 made by Venus | 2026-04-01T03:01:33.796Z */
|
|
2
2
|
import { mergeProps as e } from "../_base/helpers/props.js";
|
|
3
3
|
import { Button as t } from "../button/index.js";
|
|
4
4
|
import { Icon as n } from "../icon/index.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const RELOAD_PAGE_EVENT = "__vef_reload_page_event";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AnyObject } from '@vef-framework-react/shared';
|
|
2
|
+
import { FC, ReactNode } from 'react';
|
|
3
|
+
import { CrudState } from '../store';
|
|
4
|
+
export interface ActionButtonGroupProps<TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TSelected = NoInfer<CrudState<AnyObject, TSearchValues, TSceneFormValues>>> {
|
|
5
|
+
selector?: (state: NoInfer<CrudState<AnyObject, TSearchValues, TSceneFormValues>>) => TSelected;
|
|
6
|
+
children: ((state: NoInfer<TSelected>) => ReactNode) | ReactNode;
|
|
7
|
+
}
|
|
8
|
+
export declare const ActionButtonGroup: (<TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TSelected = NoInfer<CrudState<AnyObject, TSearchValues, TSceneFormValues>>>(props: ActionButtonGroupProps<TSearchValues, TSceneFormValues, TSelected>) => ReactNode) & Pick<FC, "displayName">;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { ActionButtonGroup, type ActionButtonGroupProps } from './action-button-group';
|
|
2
|
+
export { Main } from './main';
|
|
3
|
+
export { MutationHolder } from './mutation-holder';
|
|
4
|
+
export { OperationButtonGroup, type OperationButtonGroupProps } from './operation-button-group';
|
|
5
|
+
export { SceneForm } from './scene-form';
|
|
6
|
+
export { Toolbar } from './toolbar';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AnyObject, Except } from '@vef-framework-react/shared';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { CrudProps } from '../props';
|
|
4
|
+
type MainProps<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TParams extends AnyObject> = Except<CrudProps<TRow, TSearchValues, TSceneFormValues, TParams>, "sceneDefaultFormValues" | "renderForm" | "defaultSearchValues" | "formMutationFns" | "beforeFormSubmit" | "afterFormSubmit" | "deleteMutationFn" | "deleteManyMutationFn" | "mutationMeta">;
|
|
5
|
+
export declare const Main: <TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TFilter extends AnyObject>(props: MainProps<TRow, TSearchValues, TSceneFormValues, TFilter>) => ReactNode;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ApiResult, MutationFunction, MutationMeta } from '@vef-framework-react/core';
|
|
2
|
+
import { AnyObject, MaybeUndefined } from '@vef-framework-react/shared';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
4
|
+
interface MutationHolderProps<TRow extends AnyObject> {
|
|
5
|
+
mutationMeta?: (key: string) => MaybeUndefined<MutationMeta>;
|
|
6
|
+
deleteMutationFn?: MutationFunction<ApiResult<unknown>, TRow>;
|
|
7
|
+
deleteManyMutationFn?: MutationFunction<ApiResult<unknown>, TRow[]>;
|
|
8
|
+
}
|
|
9
|
+
export declare const MutationHolder: <TRow extends AnyObject>(props: MutationHolderProps<TRow>) => ReactNode;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AnyObject } from '@vef-framework-react/shared';
|
|
2
|
+
import { FC, ReactNode } from 'react';
|
|
3
|
+
import { CrudState } from '../store';
|
|
4
|
+
export interface OperationButtonGroupProps<TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TSelected = NoInfer<CrudState<AnyObject, TSearchValues, TSceneFormValues>>> {
|
|
5
|
+
selector?: (state: NoInfer<CrudState<AnyObject, TSearchValues, TSceneFormValues>>) => TSelected;
|
|
6
|
+
children: ((state: NoInfer<TSelected>) => ReactNode) | ReactNode;
|
|
7
|
+
}
|
|
8
|
+
export declare const OperationButtonGroup: (<TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TSelected = NoInfer<CrudState<AnyObject, TSearchValues, TSceneFormValues>>>(props: OperationButtonGroupProps<TSearchValues, TSceneFormValues, TSelected>) => ReactNode) & Pick<FC, "displayName">;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AnyObject } from '@vef-framework-react/shared';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { BaseCrudProps } from '../props';
|
|
4
|
+
interface SceneFormProps<TSceneFormValues extends AnyObject> extends Pick<BaseCrudProps<AnyObject, AnyObject, TSceneFormValues, AnyObject>, "renderForm" | "formMutationFns" | "formActionsRenderers" | "beforeFormSubmit" | "afterFormSubmit" | "mutationMeta"> {
|
|
5
|
+
}
|
|
6
|
+
export declare const SceneForm: <TSceneFormValues extends AnyObject>(props: SceneFormProps<TSceneFormValues>) => ReactNode;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ReactNode, MemoExoticComponent } from 'react';
|
|
2
|
+
interface SelectionIndicatorProps {
|
|
3
|
+
selectionSummary?: (selectedRows: unknown[]) => ReactNode;
|
|
4
|
+
}
|
|
5
|
+
export declare const SelectionIndicator: MemoExoticComponent<({ selectionSummary }: SelectionIndicatorProps) => import("@emotion/react/jsx-runtime").JSX.Element | null>;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ReactNode, MemoExoticComponent } from 'react';
|
|
2
|
+
interface ToolbarProps {
|
|
3
|
+
basicSearch?: ReactNode;
|
|
4
|
+
advancedSearch?: ReactNode;
|
|
5
|
+
toolbarActions?: ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export declare const Toolbar: MemoExoticComponent<({ basicSearch, advancedSearch, toolbarActions }: ToolbarProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { UseStore } from '@vef-framework-react/core';
|
|
2
|
+
import { AnyObject } from '@vef-framework-react/shared';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
4
|
+
import { ActionButtonGroupProps, OperationButtonGroupProps } from './components';
|
|
5
|
+
import { CrudState } from './store';
|
|
6
|
+
/**
|
|
7
|
+
* Type representing the return value of createCrudKit
|
|
8
|
+
*/
|
|
9
|
+
export interface CrudKit<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject> {
|
|
10
|
+
useCrudStore: UseStore<CrudState<TRow, TSearchValues, TSceneFormValues>>;
|
|
11
|
+
useSearchValues: () => TSearchValues;
|
|
12
|
+
useSelectedRows: () => TRow[];
|
|
13
|
+
OperationButtonGroup: <TSelected = NoInfer<CrudState<TRow, TSearchValues, TSceneFormValues>>>(props: OperationButtonGroupProps<TSearchValues, TSceneFormValues, TSelected>) => ReactNode;
|
|
14
|
+
ActionButtonGroup: <TSelected = NoInfer<CrudState<TRow, TSearchValues, TSceneFormValues>>>(props: ActionButtonGroupProps<TSearchValues, TSceneFormValues, TSelected>) => ReactNode;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Create a type-safe kit containing hooks and components for Crud with specific generic types.
|
|
18
|
+
* This helper function eliminates the need to repeatedly specify generic parameters when using Crud-related utilities.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createCrudKit<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject>(): CrudKit<TRow, TSearchValues, TSceneFormValues>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AnyObject } from '@vef-framework-react/shared';
|
|
2
|
+
import { CrudProps } from './props';
|
|
3
|
+
export declare function Crud<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TParams extends AnyObject = never>({ defaultSearchValues, advancedSearch, sceneDefaultFormValues, renderForm, formMutationFns, formActionsRenderers, beforeFormSubmit, afterFormSubmit, deleteMutationFn, deleteManyMutationFn, mutationMeta, rowSelection, ...bodyProps }: CrudProps<TRow, TSearchValues, TSceneFormValues, TParams>): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
4
|
+
export type { ActionButtonGroupProps as CrudActionButtonGroupProps, OperationButtonGroupProps as CrudOperationButtonGroupProps } from './components';
|
|
5
|
+
export { createCrudKit } from './helpers';
|
|
6
|
+
export type { CrudKit } from './helpers';
|
|
7
|
+
export type { CrudProps } from './props';
|
|
8
|
+
export type * from './types';
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { TableColumn } from '../table';
|
|
2
|
+
import { ApiResult, MutationFunction, MutationMeta, PaginationResult, QueryFunction } from '@vef-framework-react/core';
|
|
3
|
+
import { AnyObject, Awaitable, DeepKeys, EmptyObject, If, IsNever, Key, MaybeUndefined, PartialDeep } from '@vef-framework-react/shared';
|
|
4
|
+
import { ReactNode } from 'react';
|
|
5
|
+
import { ColumnSettingsProp, OperationColumnConfig, ProTableProps, RowSelectionConfig } from '../pro-table';
|
|
6
|
+
import { CrudFormActionsRenderers, CrudFormMutationFns, CrudFormScene, PaginatedQueryParams, QueryParams } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Base props for the Crud component.
|
|
9
|
+
*
|
|
10
|
+
* @template TRow - Table row model type
|
|
11
|
+
* @template TSearchValues - Search/filters form values type
|
|
12
|
+
* @template TSceneFormValues - A map of scene key to its form values type
|
|
13
|
+
* @template TParams - Additional query parameters type
|
|
14
|
+
*/
|
|
15
|
+
export interface BaseCrudProps<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TParams extends AnyObject> {
|
|
16
|
+
/**
|
|
17
|
+
* Table size
|
|
18
|
+
*/
|
|
19
|
+
tableSize?: ProTableProps<TRow, TParams>["size"];
|
|
20
|
+
/**
|
|
21
|
+
* Table column definitions
|
|
22
|
+
*/
|
|
23
|
+
tableColumns: Array<TableColumn<NoInfer<TRow>>>;
|
|
24
|
+
/**
|
|
25
|
+
* Column settings configuration.
|
|
26
|
+
* - `false`: Disable column settings feature
|
|
27
|
+
* - `{ storageKey?: string }`: Enable with optional localStorage persistence
|
|
28
|
+
*
|
|
29
|
+
* @default {}
|
|
30
|
+
*/
|
|
31
|
+
columnSettings?: ColumnSettingsProp;
|
|
32
|
+
/**
|
|
33
|
+
* Operation column configuration for per-row actions
|
|
34
|
+
*/
|
|
35
|
+
operationColumn?: OperationColumnConfig<NoInfer<TRow>>;
|
|
36
|
+
/**
|
|
37
|
+
* Whether to show the sequence (row number) column. Default is true.
|
|
38
|
+
*/
|
|
39
|
+
showSequenceColumn?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Row key extractor: either a deep key of the row model or a function
|
|
42
|
+
*/
|
|
43
|
+
rowKey?: DeepKeys<NoInfer<TRow>> | ((row: NoInfer<TRow>) => Key);
|
|
44
|
+
/**
|
|
45
|
+
* Enable virtual scrolling for the table to improve performance with large datasets
|
|
46
|
+
*
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
49
|
+
virtual?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Title to be displayed above the table
|
|
52
|
+
*/
|
|
53
|
+
title?: ReactNode;
|
|
54
|
+
/**
|
|
55
|
+
* Summary to be displayed below the table
|
|
56
|
+
*/
|
|
57
|
+
summary?: ReactNode;
|
|
58
|
+
/**
|
|
59
|
+
* Row selection configuration.
|
|
60
|
+
* - `true`: Enable row selection with default configuration
|
|
61
|
+
* - `RowSelectionConfig<TRow>`: Enable row selection with custom configuration
|
|
62
|
+
* - `undefined`: Disable row selection (default)
|
|
63
|
+
*/
|
|
64
|
+
rowSelection?: RowSelectionConfig<NoInfer<TRow>> | true;
|
|
65
|
+
/**
|
|
66
|
+
* Default search values for initializing the search forms
|
|
67
|
+
*/
|
|
68
|
+
defaultSearchValues?: Partial<NoInfer<TSearchValues>>;
|
|
69
|
+
/**
|
|
70
|
+
* Node to render as the basic (inline) search area
|
|
71
|
+
*/
|
|
72
|
+
basicSearch?: ReactNode;
|
|
73
|
+
/**
|
|
74
|
+
* Node to render as the advanced search panel
|
|
75
|
+
*/
|
|
76
|
+
advancedSearch?: ReactNode;
|
|
77
|
+
/**
|
|
78
|
+
* Default form values map for scenes
|
|
79
|
+
*/
|
|
80
|
+
sceneDefaultFormValues?: PartialDeep<NoInfer<TSceneFormValues>>;
|
|
81
|
+
/**
|
|
82
|
+
* Render function to provide a form for the specified scene
|
|
83
|
+
*/
|
|
84
|
+
renderForm?: (scene: CrudFormScene<NoInfer<TSceneFormValues>>) => ReactNode;
|
|
85
|
+
/**
|
|
86
|
+
* Optional hook before submitting the form. Can transform values.
|
|
87
|
+
*/
|
|
88
|
+
beforeFormSubmit?: (scene: CrudFormScene<NoInfer<TSceneFormValues>>, formValues: TSceneFormValues[CrudFormScene<NoInfer<TSceneFormValues>>]) => Awaitable<TSceneFormValues[CrudFormScene<NoInfer<TSceneFormValues>>]>;
|
|
89
|
+
/**
|
|
90
|
+
* Optional hook after submitting the form. Can be used for side effects.
|
|
91
|
+
*/
|
|
92
|
+
afterFormSubmit?: (scene: CrudFormScene<NoInfer<TSceneFormValues>>, formValues: TSceneFormValues[CrudFormScene<NoInfer<TSceneFormValues>>], result: unknown) => Awaitable<void>;
|
|
93
|
+
/**
|
|
94
|
+
* Mutation functions for submitting different scenes
|
|
95
|
+
*/
|
|
96
|
+
formMutationFns?: CrudFormMutationFns<TSceneFormValues>;
|
|
97
|
+
/**
|
|
98
|
+
* Custom render functions for form actions in different scenes
|
|
99
|
+
* Allows customization of footer action buttons for each form scene
|
|
100
|
+
*/
|
|
101
|
+
formActionsRenderers?: CrudFormActionsRenderers<NoInfer<TSceneFormValues>>;
|
|
102
|
+
/**
|
|
103
|
+
* Mutation function to delete a single row
|
|
104
|
+
*/
|
|
105
|
+
deleteMutationFn?: MutationFunction<ApiResult<unknown>, NoInfer<TRow>>;
|
|
106
|
+
/**
|
|
107
|
+
* Mutation function to delete multiple rows
|
|
108
|
+
*/
|
|
109
|
+
deleteManyMutationFn?: MutationFunction<ApiResult<unknown>, Array<NoInfer<TRow>>>;
|
|
110
|
+
/**
|
|
111
|
+
* Meta information provider for mutations
|
|
112
|
+
*/
|
|
113
|
+
mutationMeta?: (mutationKey: string) => MaybeUndefined<MutationMeta>;
|
|
114
|
+
/**
|
|
115
|
+
* Actions displayed on the table toolbar area
|
|
116
|
+
*/
|
|
117
|
+
toolbarActions?: ReactNode;
|
|
118
|
+
/**
|
|
119
|
+
* Function to determine whether the query should be enabled
|
|
120
|
+
*/
|
|
121
|
+
queryEnabled?: (params?: NoInfer<TSearchValues> & If<IsNever<TParams>, EmptyObject, NoInfer<TParams>>) => boolean;
|
|
122
|
+
/**
|
|
123
|
+
* Additional query parameters that trigger re-fetching when changed.
|
|
124
|
+
* These are merged with search, pagination, and sort parameters in the query function.
|
|
125
|
+
*/
|
|
126
|
+
queryParams?: NoInfer<TParams>;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Props for paginated Crud.
|
|
130
|
+
*
|
|
131
|
+
* When `isPaginated` is true or omitted, the data source is fetched with pagination parameters.
|
|
132
|
+
*
|
|
133
|
+
* @template TRow - Table row model type
|
|
134
|
+
* @template TSearchValues - Search/filters form values type
|
|
135
|
+
* @template TSceneFormValues - A map of scene key to its form values type
|
|
136
|
+
* @template TParams - Additional query parameters type
|
|
137
|
+
*/
|
|
138
|
+
export interface PaginatedCrudProps<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TParams extends AnyObject = never> extends BaseCrudProps<TRow, TSearchValues, TSceneFormValues, TParams> {
|
|
139
|
+
/**
|
|
140
|
+
* Enable pagination mode. Default is true.
|
|
141
|
+
*/
|
|
142
|
+
isPaginated?: true;
|
|
143
|
+
/**
|
|
144
|
+
* Query function for fetching paginated data
|
|
145
|
+
*/
|
|
146
|
+
queryFn: QueryFunction<PaginationResult<TRow>, PaginatedQueryParams<TSearchValues, TParams>>;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Props for non-paginated Crud.
|
|
150
|
+
*
|
|
151
|
+
* When `isPaginated` is false, the entire dataset is returned without pagination.
|
|
152
|
+
*
|
|
153
|
+
* @template TRow - Table row model type
|
|
154
|
+
* @template TSearchValues - Search/filters form values type
|
|
155
|
+
* @template TSceneFormValues - A map of scene key to its form values type
|
|
156
|
+
* @template TParams - Additional query parameters type
|
|
157
|
+
*/
|
|
158
|
+
export interface NonPaginatedCrudProps<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TParams extends AnyObject = never> extends BaseCrudProps<TRow, TSearchValues, TSceneFormValues, TParams> {
|
|
159
|
+
/**
|
|
160
|
+
* Disable pagination mode for this variant
|
|
161
|
+
*/
|
|
162
|
+
isPaginated: false;
|
|
163
|
+
/**
|
|
164
|
+
* Query function for fetching the full list data
|
|
165
|
+
*/
|
|
166
|
+
queryFn: QueryFunction<TRow[], QueryParams<TSearchValues, TParams>>;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Discriminated union of paginated and non-paginated Crud props
|
|
170
|
+
*/
|
|
171
|
+
export type CrudProps<TRow extends AnyObject, TSearchValues extends AnyObject, TSceneFormValues extends AnyObject, TParams extends AnyObject = never> = PaginatedCrudProps<TRow, TSearchValues, TSceneFormValues, TParams> | NonPaginatedCrudProps<TRow, TSearchValues, TSceneFormValues, TParams>;
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { Breakpoint, Length } from '../_base';
|
|
2
|
+
import { ApiResult, StoreProviderProps, UseStore, UnboundStore } from '@vef-framework-react/core';
|
|
3
|
+
import { AnyObject, Awaitable, Key, EventEmitter } from '@vef-framework-react/shared';
|
|
4
|
+
import { ReactNode, ComponentType } from 'react';
|
|
5
|
+
import { CrudEvents } from './event';
|
|
6
|
+
import { CrudFormDrawerConfig, CrudFormMode, CrudFormScene } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Options to open a scene form.
|
|
9
|
+
*
|
|
10
|
+
* TScene: the specific scene key to be opened
|
|
11
|
+
* TSceneFormValues: the map type for all scene form values
|
|
12
|
+
*/
|
|
13
|
+
export interface OpenFormOptions<TScene extends CrudFormScene<TSceneFormValues>, TSceneFormValues extends AnyObject> {
|
|
14
|
+
/**
|
|
15
|
+
* Target scene key to open.
|
|
16
|
+
*/
|
|
17
|
+
scene: TScene;
|
|
18
|
+
/**
|
|
19
|
+
* Initial values for the target scene form.
|
|
20
|
+
*/
|
|
21
|
+
values?: Partial<TSceneFormValues[TScene]>;
|
|
22
|
+
/**
|
|
23
|
+
* Custom form title. If omitted, a default title will be used.
|
|
24
|
+
*/
|
|
25
|
+
title?: ReactNode;
|
|
26
|
+
/**
|
|
27
|
+
* Custom form width. If omitted, a default responsive width will be used.
|
|
28
|
+
*/
|
|
29
|
+
width?: Length | Partial<Record<Breakpoint, Length>>;
|
|
30
|
+
/**
|
|
31
|
+
* Form display mode.
|
|
32
|
+
*
|
|
33
|
+
* @default "modal"
|
|
34
|
+
*/
|
|
35
|
+
mode?: CrudFormMode;
|
|
36
|
+
/**
|
|
37
|
+
* Drawer-specific configuration when mode is "drawer".
|
|
38
|
+
*/
|
|
39
|
+
drawerConfig?: CrudFormDrawerConfig;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* State shape for the Crud component store.
|
|
43
|
+
*
|
|
44
|
+
* TRow: the row model type displayed in the table
|
|
45
|
+
* TSearchValues: the type of the search/filters form values
|
|
46
|
+
* TSceneFormValues: a map of scene key to its form values type
|
|
47
|
+
*/
|
|
48
|
+
export interface CrudState<TRow extends AnyObject = AnyObject, TSearchValues extends AnyObject = AnyObject, TSceneFormValues extends AnyObject = AnyObject> {
|
|
49
|
+
/**
|
|
50
|
+
* Internal event bus used for cross-part communication within Crud.
|
|
51
|
+
*/
|
|
52
|
+
eventEmitter: EventEmitter<CrudEvents>;
|
|
53
|
+
/**
|
|
54
|
+
* Whether the advanced search panel is visible.
|
|
55
|
+
*/
|
|
56
|
+
isAdvancedSearchVisible: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Toggle the visibility of the advanced search panel.
|
|
59
|
+
*/
|
|
60
|
+
setIsAdvancedSearchVisible: (isAdvancedSearchVisible: boolean) => void;
|
|
61
|
+
/**
|
|
62
|
+
* Default search form values (initial state).
|
|
63
|
+
*/
|
|
64
|
+
defaultSearchValues?: TSearchValues;
|
|
65
|
+
/**
|
|
66
|
+
* Current basic/advanced search form values.
|
|
67
|
+
*/
|
|
68
|
+
searchValues?: TSearchValues;
|
|
69
|
+
/**
|
|
70
|
+
* Update the current search form values.
|
|
71
|
+
*/
|
|
72
|
+
setSearchValues: (values?: TSearchValues) => void;
|
|
73
|
+
/**
|
|
74
|
+
* Whether the scene form (create/update or custom) is visible.
|
|
75
|
+
*/
|
|
76
|
+
formVisible: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Current active form scene key.
|
|
79
|
+
*/
|
|
80
|
+
formScene: CrudFormScene<TSceneFormValues>;
|
|
81
|
+
/**
|
|
82
|
+
* Title displayed on the scene form.
|
|
83
|
+
*/
|
|
84
|
+
formTitle: ReactNode;
|
|
85
|
+
/**
|
|
86
|
+
* Width of the scene form. Can be a fixed length or responsive map by breakpoint.
|
|
87
|
+
*/
|
|
88
|
+
formWidth: Length | Partial<Record<Breakpoint, Length>>;
|
|
89
|
+
/**
|
|
90
|
+
* Form display mode (modal or drawer).
|
|
91
|
+
*/
|
|
92
|
+
formMode: CrudFormMode;
|
|
93
|
+
/**
|
|
94
|
+
* Drawer-specific configuration when formMode is "drawer".
|
|
95
|
+
*/
|
|
96
|
+
drawerConfig?: CrudFormDrawerConfig;
|
|
97
|
+
/**
|
|
98
|
+
* Open the scene form with optional initial values, custom title and width.
|
|
99
|
+
*/
|
|
100
|
+
openForm: <const TScene extends CrudFormScene<TSceneFormValues>>(options: OpenFormOptions<TScene, TSceneFormValues>) => void;
|
|
101
|
+
/**
|
|
102
|
+
* Close the scene form.
|
|
103
|
+
*/
|
|
104
|
+
closeForm: () => void;
|
|
105
|
+
/**
|
|
106
|
+
* Default form values map for all scenes, usually provided by the component.
|
|
107
|
+
*/
|
|
108
|
+
sceneDefaultFormValues: Partial<TSceneFormValues>;
|
|
109
|
+
/**
|
|
110
|
+
* Resolved default values for the currently active scene.
|
|
111
|
+
*/
|
|
112
|
+
defaultFormValues: TSceneFormValues[CrudFormScene<TSceneFormValues>];
|
|
113
|
+
/**
|
|
114
|
+
* Delete a single row.
|
|
115
|
+
*/
|
|
116
|
+
delete: (row: TRow) => Awaitable<ApiResult<unknown>>;
|
|
117
|
+
/**
|
|
118
|
+
* Delete multiple rows in batch.
|
|
119
|
+
*/
|
|
120
|
+
deleteMany: (rows: TRow[]) => Awaitable<ApiResult<unknown>>;
|
|
121
|
+
/**
|
|
122
|
+
* Whether the list query is being fetched.
|
|
123
|
+
*/
|
|
124
|
+
isQueryFetching: boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Re-trigger the list query.
|
|
127
|
+
*/
|
|
128
|
+
refetchQuery: () => void;
|
|
129
|
+
/**
|
|
130
|
+
* Currently selected row keys.
|
|
131
|
+
*/
|
|
132
|
+
selectedRowKeys: Key[];
|
|
133
|
+
/**
|
|
134
|
+
* Update selected row keys.
|
|
135
|
+
*/
|
|
136
|
+
setSelectedRowKeys: (selectedRowKeys: Key[]) => void;
|
|
137
|
+
/**
|
|
138
|
+
* Currently selected row models.
|
|
139
|
+
*/
|
|
140
|
+
selectedRows: TRow[];
|
|
141
|
+
/**
|
|
142
|
+
* Update selected row models.
|
|
143
|
+
*/
|
|
144
|
+
setSelectedRows: (selectedRows: TRow[]) => void;
|
|
145
|
+
}
|
|
146
|
+
export declare const CrudStoreProvider: ComponentType<StoreProviderProps<Pick<CrudState<AnyObject, AnyObject, AnyObject>, "selectedRowKeys" | "defaultSearchValues" | "sceneDefaultFormValues">>>, useCrudStore: UseStore<CrudState<AnyObject, AnyObject, AnyObject>>, useCrudStoreApi: <TStrictState extends CrudState<AnyObject, AnyObject, AnyObject> = CrudState<AnyObject, AnyObject, AnyObject>>() => UnboundStore<TStrictState>;
|