@vef-framework/components 1.0.100 → 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.
- package/es/index.js +1 -3
- package/es/internal/base.css.js +491 -3
- package/es/internal/chart.js +1 -3
- package/es/internal/index.js +1 -3
- package/es/internal/modern-normalize.css.js +214 -3
- package/es/internal/utils.js +1 -3
- package/es/vef-access-denied/access-denied-icon.js +1 -3
- package/es/vef-access-denied/index.js +9 -11
- package/es/vef-action-buttons/index.js +1 -3
- package/es/vef-approval-flow-editor/components/edge.js +2 -4
- package/es/vef-approval-flow-editor/components/label-value.js +8 -10
- package/es/vef-approval-flow-editor/components/node-content.js +10 -12
- package/es/vef-approval-flow-editor/components/node-selector.js +4 -6
- package/es/vef-approval-flow-editor/components/node-toolbar.js +1 -3
- package/es/vef-approval-flow-editor/components/nodes/approval.js +1 -3
- package/es/vef-approval-flow-editor/components/nodes/condition.js +1 -3
- package/es/vef-approval-flow-editor/components/nodes/end.js +1 -3
- package/es/vef-approval-flow-editor/components/nodes/handle.js +1 -3
- package/es/vef-approval-flow-editor/components/nodes/index.js +1 -3
- package/es/vef-approval-flow-editor/components/nodes/submit.js +1 -3
- package/es/vef-approval-flow-editor/components/selector-content.js +9 -11
- package/es/vef-approval-flow-editor/components/source-handle.js +1 -3
- package/es/vef-approval-flow-editor/components/target-handle.js +1 -3
- package/es/vef-approval-flow-editor/constants.js +1 -3
- package/es/vef-approval-flow-editor/helper.js +1 -3
- package/es/vef-approval-flow-editor/hooks/use-edges-interaction.js +1 -3
- package/es/vef-approval-flow-editor/hooks/use-element-selection.js +1 -3
- package/es/vef-approval-flow-editor/hooks/use-nodes-interaction.js +1 -3
- package/es/vef-approval-flow-editor/index.js +1 -3
- package/es/vef-approval-flow-editor/models/edge-node.js +1 -3
- package/es/vef-approval-flow-editor/models/flow-node.js +1 -3
- package/es/vef-approval-flow-editor/store.js +1 -3
- package/es/vef-approval-flow-editor/styles.js +12 -14
- package/es/vef-approval-flow-editor/types.js +1 -3
- package/es/vef-area-chart/index.js +1 -3
- package/es/vef-auto-sizer/index.js +1 -3
- package/es/vef-avatar/index.js +1 -3
- package/es/vef-avatar-group/index.js +1 -3
- package/es/vef-badge/index.js +1 -3
- package/es/vef-bar-chart/index.js +1 -3
- package/es/vef-bool/hooks/use-bool-instance.js +1 -3
- package/es/vef-bool/index.js +1 -3
- package/es/vef-breadcrumb/index.js +1 -3
- package/es/vef-button/components/base-button.js +1 -3
- package/es/vef-button/index.js +1 -3
- package/es/vef-card/index.js +1 -3
- package/es/vef-card-meta/index.js +1 -3
- package/es/vef-chart-container/hooks/use-chart-container-context.js +1 -3
- package/es/vef-chart-container/index.js +14 -11
- package/es/vef-chart-legend-content/index.js +10 -12
- package/es/vef-chart-tooltip-content/index.js +22 -24
- package/es/vef-checkbox/hooks/use-checkbox-instance.js +1 -3
- package/es/vef-checkbox/hooks/use-data-options.js +1 -3
- package/es/vef-checkbox/index.js +3 -5
- package/es/vef-col/index.js +1 -3
- package/es/vef-color-picker/index.js +1 -3
- package/es/vef-compact/index.js +1 -3
- package/es/vef-config-provider/global-style.js +15 -17
- package/es/vef-config-provider/hooks/use-ui-config.js +1 -3
- package/es/vef-config-provider/index.js +3 -5
- package/es/vef-config-provider/store.js +1 -3
- package/es/vef-container/index.js +1 -3
- package/es/vef-crud-page/components/crud-actions.js +1 -3
- package/es/vef-crud-page/components/crud-filter.js +1 -3
- package/es/vef-crud-page/components/crud-footer.js +3 -5
- package/es/vef-crud-page/components/crud-form-modal.js +1 -3
- package/es/vef-crud-page/components/crud-header.js +1 -3
- package/es/vef-crud-page/components/crud-table.js +1 -3
- package/es/vef-crud-page/hooks/use-action-buttons.js +1 -3
- package/es/vef-crud-page/hooks/use-crud-context.js +1 -3
- package/es/vef-crud-page/hooks/use-crud-schema.js +1 -3
- package/es/vef-crud-page/hooks/use-operation-buttons.js +1 -3
- package/es/vef-crud-page/index.js +1 -3
- package/es/vef-crud-page/store.js +1 -3
- package/es/vef-data-grid/index.js +1 -3
- package/es/vef-data-table/index.js +1 -3
- package/es/vef-divider/index.js +1 -3
- package/es/vef-drawer/components/action-button-wrapper.js +1 -3
- package/es/vef-drawer/components/button-props.js +1 -2
- package/es/vef-drawer/components/cancel-action-button.js +1 -3
- package/es/vef-drawer/components/ok-action-button.js +1 -3
- package/es/vef-drawer/context.js +1 -3
- package/es/vef-drawer/index.js +3 -5
- package/es/vef-dropdown/index.js +1 -3
- package/es/vef-dynamic-icon/index.js +1 -3
- package/es/vef-dynamic-icon/props.js +1 -3
- package/es/vef-empty/index.js +1 -3
- package/es/vef-empty-placeholder/index.js +4 -6
- package/es/vef-error/error-icon.js +1 -3
- package/es/vef-error/index.js +9 -11
- package/es/vef-filter/components/action-buttons.js +5 -7
- package/es/vef-filter/components/advanced-filter.js +8 -10
- package/es/vef-filter/components/basic-filter.js +4 -6
- package/es/vef-filter/components/fields/index.js +1 -3
- package/es/vef-filter/components/fields/input-number.js +1 -3
- package/es/vef-filter/components/fields/input.js +1 -3
- package/es/vef-filter/components/fields/radio.js +1 -3
- package/es/vef-filter/components/fields/select.js +1 -3
- package/es/vef-filter/components/fields/tree-select.js +1 -3
- package/es/vef-filter/components/filter-field.js +1 -3
- package/es/vef-filter/components/filter-item.js +1 -3
- package/es/vef-filter/event.js +1 -3
- package/es/vef-filter/helper.js +1 -3
- package/es/vef-filter/hooks/use-action-handlers.js +1 -3
- package/es/vef-filter/hooks/use-computed-values.js +1 -3
- package/es/vef-filter/hooks/use-filter-context.js +1 -3
- package/es/vef-filter/hooks/use-filter-initialization.js +1 -3
- package/es/vef-filter/hooks/use-filter-instance.js +1 -3
- package/es/vef-filter/hooks/use-filter-items.js +1 -3
- package/es/vef-filter/hooks/use-filter-values-change.js +1 -3
- package/es/vef-filter/hooks/use-label-config.js +1 -3
- package/es/vef-filter/index.js +2 -4
- package/es/vef-filter/store.js +1 -3
- package/es/vef-flex/index.js +1 -3
- package/es/vef-float-button/index.js +1 -3
- package/es/vef-float-button-group/index.js +1 -3
- package/es/vef-form/components/fields/icon-select.js +1 -3
- package/es/vef-form/components/fields/index.js +1 -3
- package/es/vef-form/components/fields/input-number.js +1 -3
- package/es/vef-form/components/fields/input.js +1 -3
- package/es/vef-form/components/fields/password.js +1 -3
- package/es/vef-form/components/fields/radio.js +1 -3
- package/es/vef-form/components/fields/select.js +1 -3
- package/es/vef-form/components/fields/textarea.js +1 -3
- package/es/vef-form/components/fields/tree-select.js +1 -3
- package/es/vef-form/components/form-actions.js +3 -5
- package/es/vef-form/components/form-content.js +2 -4
- package/es/vef-form/components/form-field.js +1 -3
- package/es/vef-form/components/form-group.js +3 -5
- package/es/vef-form/components/form-hidden-item.js +1 -3
- package/es/vef-form/components/form-item.js +1 -3
- package/es/vef-form/components/form-row.js +1 -3
- package/es/vef-form/event.js +1 -3
- package/es/vef-form/helper.js +1 -3
- package/es/vef-form/hooks/use-action-handlers.js +1 -3
- package/es/vef-form/hooks/use-columns-layout.js +1 -3
- package/es/vef-form/hooks/use-computed-values.js +1 -3
- package/es/vef-form/hooks/use-form-context.js +1 -3
- package/es/vef-form/hooks/use-form-initialization.js +1 -3
- package/es/vef-form/hooks/use-form-instance.js +1 -3
- package/es/vef-form/hooks/use-form-values-change.js +1 -3
- package/es/vef-form/hooks/use-label-width.js +1 -3
- package/es/vef-form/index.js +3 -5
- package/es/vef-form/store.js +1 -3
- package/es/vef-form/validation-rules.js +1 -3
- package/es/vef-form-drawer/index.js +1 -3
- package/es/vef-form-modal/index.js +1 -3
- package/es/vef-generic-select/index.js +1 -3
- package/es/vef-grid/index.js +18 -8
- package/es/vef-grid/props.js +1 -3
- package/es/vef-grid-item/index.js +1 -3
- package/es/vef-icon/index.js +1 -3
- package/es/vef-icon-select/index.js +11 -13
- package/es/vef-input/hooks/use-input-instance.js +1 -3
- package/es/vef-input/index.js +1 -3
- package/es/vef-input-number/hooks/use-input-number-instance.js +1 -3
- package/es/vef-input-number/index.js +1 -3
- package/es/vef-layout/common-styles.js +4 -6
- package/es/vef-layout/components/content.js +1 -3
- package/es/vef-layout/components/font-size.js +1 -3
- package/es/vef-layout/components/fullscreen.js +1 -3
- package/es/vef-layout/components/header-action-icons.js +6 -8
- package/es/vef-layout/components/header-content.js +1 -3
- package/es/vef-layout/components/header.js +6 -8
- package/es/vef-layout/components/icon-boy.js +1 -3
- package/es/vef-layout/components/icon-girl.js +1 -3
- package/es/vef-layout/components/icon-menu-fold-left.js +1 -3
- package/es/vef-layout/components/icon-menu-unfold-left.js +1 -3
- package/es/vef-layout/components/menu-groups.js +15 -17
- package/es/vef-layout/components/message.js +1 -3
- package/es/vef-layout/components/search.js +1 -3
- package/es/vef-layout/components/sider.js +5 -7
- package/es/vef-layout/components/title.js +8 -10
- package/es/vef-layout/components/user-avatar.js +9 -11
- package/es/vef-layout/hooks/use-layout-context.js +1 -3
- package/es/vef-layout/index.js +2 -4
- package/es/vef-layout/logo.svg.js +1 -3
- package/es/vef-layout/store.js +1 -3
- package/es/vef-line-chart/index.js +1 -3
- package/es/vef-loading-placeholder/index.js +5 -7
- package/es/vef-login/index.js +21 -23
- package/es/vef-login/login-icon.js +1 -3
- package/es/vef-menu/index.js +4 -6
- package/es/vef-modal/components/action-button-wrapper.js +1 -3
- package/es/vef-modal/components/button-props.js +1 -2
- package/es/vef-modal/components/cancel-action-button.js +1 -3
- package/es/vef-modal/components/ok-action-button.js +1 -3
- package/es/vef-modal/context.js +1 -3
- package/es/vef-modal/index.js +2 -4
- package/es/vef-not-found/index.js +9 -11
- package/es/vef-not-found/not-found-icon.js +1 -3
- package/es/vef-page/index.js +10 -12
- package/es/vef-pagination/index.js +1 -3
- package/es/vef-pagination/props.js +1 -3
- package/es/vef-paragraph/index.js +1 -3
- package/es/vef-password/hooks/use-password-instance.js +1 -3
- package/es/vef-password/index.js +1 -3
- package/es/vef-pie-chart/index.js +8 -10
- package/es/vef-popconfirm/index.js +1 -3
- package/es/vef-popover/index.js +1 -3
- package/es/vef-radio/hooks/use-data-options.js +1 -3
- package/es/vef-radio/hooks/use-radio-instance.js +1 -3
- package/es/vef-radio/index.js +3 -5
- package/es/vef-rate/hooks/use-rate-instance.js +1 -3
- package/es/vef-rate/index.js +1 -3
- package/es/vef-responsive-container/index.js +2 -4
- package/es/vef-responsive-item/index.js +2 -4
- package/es/vef-ribbon/index.js +1 -3
- package/es/vef-row/index.js +1 -3
- package/es/vef-scroll-area/components/scrollbar.js +7 -9
- package/es/vef-scroll-area/index.js +3 -5
- package/es/vef-select/components/option.js +3 -5
- package/es/vef-select/hooks/use-data-options.js +1 -3
- package/es/vef-select/hooks/use-field-names.js +1 -3
- package/es/vef-select/hooks/use-render-label.js +2 -4
- package/es/vef-select/hooks/use-render-option.js +1 -3
- package/es/vef-select/hooks/use-select-instance.js +1 -3
- package/es/vef-select/index.js +1 -3
- package/es/vef-slider/hooks/use-slider-instance.js +1 -3
- package/es/vef-slider/index.js +1 -3
- package/es/vef-sortable-list/components/overlay-item.js +2 -4
- package/es/vef-sortable-list/components/sortable-item.js +2 -4
- package/es/vef-sortable-list/hooks/use-merged-items.js +1 -3
- package/es/vef-sortable-list/index.js +1 -3
- package/es/vef-space/index.js +1 -3
- package/es/vef-spin/index.js +1 -3
- package/es/vef-splitter/index.js +1 -3
- package/es/vef-splitter-panel/index.js +1 -3
- package/es/vef-status/index.js +1 -3
- package/es/vef-table/components/columns/bool.js +1 -3
- package/es/vef-table/components/columns/code.js +1 -3
- package/es/vef-table/components/columns/data-dictionary.js +1 -3
- package/es/vef-table/components/columns/enum.js +1 -3
- package/es/vef-table/components/columns/file.js +1 -3
- package/es/vef-table/components/columns/icon.js +1 -3
- package/es/vef-table/components/columns/id.js +1 -3
- package/es/vef-table/components/columns/image.js +1 -3
- package/es/vef-table/components/columns/index.js +1 -3
- package/es/vef-table/components/columns/markdown.js +1 -3
- package/es/vef-table/components/columns/number.js +1 -3
- package/es/vef-table/components/columns/render.js +1 -3
- package/es/vef-table/components/columns/rich-text.js +1 -3
- package/es/vef-table/components/columns/text.js +1 -3
- package/es/vef-table/components/columns-settings.js +10 -12
- package/es/vef-table/components/operation-buttons.js +2 -4
- package/es/vef-table/components/settings-icon.js +3 -5
- package/es/vef-table/components/table-footer.js +3 -5
- package/es/vef-table/helper.js +1 -3
- package/es/vef-table/hooks/use-computed-batch-buttons.js +1 -3
- package/es/vef-table/hooks/use-computed-columns.js +1 -3
- package/es/vef-table/hooks/use-computed-values.js +1 -3
- package/es/vef-table/hooks/use-data.js +1 -3
- package/es/vef-table/hooks/use-default-column-configs.js +1 -3
- package/es/vef-table/hooks/use-display-value.js +1 -3
- package/es/vef-table/hooks/use-helper-columns.js +1 -3
- package/es/vef-table/hooks/use-operation-column-width.js +1 -3
- package/es/vef-table/hooks/use-pagination-props.js +1 -3
- package/es/vef-table/hooks/use-row-props.js +1 -3
- package/es/vef-table/hooks/use-row-selection-config.js +1 -3
- package/es/vef-table/hooks/use-selected-rows.js +1 -3
- package/es/vef-table/hooks/use-table-columns.js +1 -3
- package/es/vef-table/hooks/use-table-context.js +1 -3
- package/es/vef-table/hooks/use-table-instance.js +1 -3
- package/es/vef-table/hooks/use-table-summary.js +1 -3
- package/es/vef-table/hooks/use-table-width.js +1 -3
- package/es/vef-table/index.js +5 -7
- package/es/vef-table/store.js +1 -3
- package/es/vef-tabs/index.js +1 -3
- package/es/vef-tag/index.js +1 -3
- package/es/vef-temporal-picker/helper.js +1 -3
- package/es/vef-temporal-picker/hooks/use-dayjs-value.js +1 -3
- package/es/vef-temporal-picker/hooks/use-temporal-limit.js +1 -3
- package/es/vef-temporal-picker/hooks/use-temporal-picker-instance.js +1 -3
- package/es/vef-temporal-picker/index.js +1 -3
- package/es/vef-temporal-range-picker/helper.js +1 -3
- package/es/vef-temporal-range-picker/hooks/use-dayjs-values.js +1 -3
- package/es/vef-temporal-range-picker/hooks/use-temporal-limit.js +1 -3
- package/es/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.js +1 -3
- package/es/vef-temporal-range-picker/index.js +1 -3
- package/es/vef-temporal-range-picker/props.js +1 -3
- package/es/vef-text/index.js +1 -3
- package/es/vef-textarea/hooks/use-textarea-instance.js +1 -3
- package/es/vef-textarea/index.js +1 -3
- package/es/vef-title/index.js +6 -8
- package/es/vef-tooltip/index.js +1 -3
- package/es/vef-tree-select/hooks/use-change-handler.js +1 -3
- package/es/vef-tree-select/hooks/use-data-options.js +1 -3
- package/es/vef-tree-select/hooks/use-tree-select-instance.js +1 -3
- package/es/vef-tree-select/index.js +1 -3
- package/es/vef-virtual-grid/index.js +3 -5
- package/es/vef-virtual-list/index.js +4 -6
- package/lib/index.cjs +1 -3
- package/lib/internal/base.css.cjs +491 -3
- package/lib/internal/chart.cjs +1 -3
- package/lib/internal/index.cjs +1 -3
- package/lib/internal/modern-normalize.css.cjs +214 -3
- package/lib/internal/utils.cjs +1 -3
- package/lib/vef-access-denied/access-denied-icon.cjs +1 -3
- package/lib/vef-access-denied/index.cjs +9 -11
- package/lib/vef-access-denied/props.cjs +1 -3
- package/lib/vef-action-buttons/index.cjs +1 -3
- package/lib/vef-action-buttons/props.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/edge.cjs +2 -4
- package/lib/vef-approval-flow-editor/components/label-value.cjs +8 -10
- package/lib/vef-approval-flow-editor/components/node-content.cjs +10 -12
- package/lib/vef-approval-flow-editor/components/node-selector.cjs +4 -6
- package/lib/vef-approval-flow-editor/components/node-toolbar.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/nodes/approval.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/nodes/condition.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/nodes/end.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/nodes/handle.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/nodes/index.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/nodes/submit.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/selector-content.cjs +9 -11
- package/lib/vef-approval-flow-editor/components/source-handle.cjs +1 -3
- package/lib/vef-approval-flow-editor/components/target-handle.cjs +1 -3
- package/lib/vef-approval-flow-editor/constants.cjs +1 -3
- package/lib/vef-approval-flow-editor/helper.cjs +1 -3
- package/lib/vef-approval-flow-editor/hooks/use-edges-interaction.cjs +1 -3
- package/lib/vef-approval-flow-editor/hooks/use-element-selection.cjs +1 -3
- package/lib/vef-approval-flow-editor/hooks/use-nodes-interaction.cjs +1 -3
- package/lib/vef-approval-flow-editor/index.cjs +1 -3
- package/lib/vef-approval-flow-editor/models/edge-node.cjs +1 -3
- package/lib/vef-approval-flow-editor/models/flow-node.cjs +1 -3
- package/lib/vef-approval-flow-editor/props.cjs +1 -3
- package/lib/vef-approval-flow-editor/store.cjs +1 -3
- package/lib/vef-approval-flow-editor/styles.cjs +12 -14
- package/lib/vef-approval-flow-editor/types.cjs +1 -3
- package/lib/vef-area-chart/index.cjs +1 -3
- package/lib/vef-area-chart/props.cjs +1 -3
- package/lib/vef-auto-sizer/index.cjs +1 -3
- package/lib/vef-auto-sizer/props.cjs +1 -3
- package/lib/vef-avatar/index.cjs +1 -3
- package/lib/vef-avatar/props.cjs +1 -3
- package/lib/vef-avatar-group/index.cjs +1 -3
- package/lib/vef-avatar-group/props.cjs +1 -3
- package/lib/vef-badge/index.cjs +1 -3
- package/lib/vef-badge/props.cjs +1 -3
- package/lib/vef-bar-chart/index.cjs +1 -3
- package/lib/vef-bar-chart/props.cjs +1 -3
- package/lib/vef-bool/hooks/use-bool-instance.cjs +1 -3
- package/lib/vef-bool/index.cjs +1 -3
- package/lib/vef-bool/props.cjs +1 -3
- package/lib/vef-breadcrumb/index.cjs +1 -3
- package/lib/vef-breadcrumb/props.cjs +1 -3
- package/lib/vef-button/components/base-button.cjs +1 -3
- package/lib/vef-button/index.cjs +1 -3
- package/lib/vef-button/props.cjs +1 -3
- package/lib/vef-card/index.cjs +1 -3
- package/lib/vef-card/props.cjs +1 -3
- package/lib/vef-card-meta/index.cjs +1 -3
- package/lib/vef-card-meta/props.cjs +1 -3
- package/lib/vef-chart-container/hooks/use-chart-container-context.cjs +1 -3
- package/lib/vef-chart-container/index.cjs +14 -11
- package/lib/vef-chart-container/props.cjs +1 -3
- package/lib/vef-chart-legend-content/index.cjs +10 -12
- package/lib/vef-chart-legend-content/props.cjs +1 -3
- package/lib/vef-chart-tooltip-content/index.cjs +22 -24
- package/lib/vef-chart-tooltip-content/props.cjs +1 -3
- package/lib/vef-checkbox/hooks/use-checkbox-instance.cjs +1 -3
- package/lib/vef-checkbox/hooks/use-data-options.cjs +1 -3
- package/lib/vef-checkbox/index.cjs +3 -5
- package/lib/vef-checkbox/props.cjs +1 -3
- package/lib/vef-col/index.cjs +1 -3
- package/lib/vef-col/props.cjs +1 -3
- package/lib/vef-color-picker/index.cjs +1 -3
- package/lib/vef-color-picker/props.cjs +1 -3
- package/lib/vef-compact/index.cjs +1 -3
- package/lib/vef-compact/props.cjs +1 -3
- package/lib/vef-config-provider/global-style.cjs +15 -17
- package/lib/vef-config-provider/hooks/use-ui-config.cjs +1 -3
- package/lib/vef-config-provider/index.cjs +3 -5
- package/lib/vef-config-provider/props.cjs +1 -3
- package/lib/vef-config-provider/store.cjs +1 -3
- package/lib/vef-container/index.cjs +1 -3
- package/lib/vef-container/props.cjs +1 -3
- package/lib/vef-crud-page/components/crud-actions.cjs +1 -3
- package/lib/vef-crud-page/components/crud-filter.cjs +1 -3
- package/lib/vef-crud-page/components/crud-footer.cjs +3 -5
- package/lib/vef-crud-page/components/crud-form-modal.cjs +1 -3
- package/lib/vef-crud-page/components/crud-header.cjs +1 -3
- package/lib/vef-crud-page/components/crud-table.cjs +1 -3
- package/lib/vef-crud-page/hooks/use-action-buttons.cjs +1 -3
- package/lib/vef-crud-page/hooks/use-crud-context.cjs +1 -3
- package/lib/vef-crud-page/hooks/use-crud-schema.cjs +1 -3
- package/lib/vef-crud-page/hooks/use-operation-buttons.cjs +1 -3
- package/lib/vef-crud-page/index.cjs +1 -3
- package/lib/vef-crud-page/props.cjs +1 -3
- package/lib/vef-crud-page/store.cjs +1 -3
- package/lib/vef-crud-page/types.cjs +1 -3
- package/lib/vef-data-grid/index.cjs +1 -3
- package/lib/vef-data-grid/props.cjs +1 -3
- package/lib/vef-data-table/index.cjs +1 -3
- package/lib/vef-data-table/props.cjs +1 -3
- package/lib/vef-divider/index.cjs +1 -3
- package/lib/vef-divider/props.cjs +1 -3
- package/lib/vef-drawer/components/action-button-wrapper.cjs +1 -3
- package/lib/vef-drawer/components/button-props.cjs +1 -3
- package/lib/vef-drawer/components/cancel-action-button.cjs +1 -3
- package/lib/vef-drawer/components/ok-action-button.cjs +1 -3
- package/lib/vef-drawer/context.cjs +1 -3
- package/lib/vef-drawer/index.cjs +3 -5
- package/lib/vef-drawer/props.cjs +1 -3
- package/lib/vef-dropdown/index.cjs +1 -3
- package/lib/vef-dropdown/props.cjs +1 -3
- package/lib/vef-dynamic-icon/index.cjs +1 -3
- package/lib/vef-dynamic-icon/props.cjs +1 -3
- package/lib/vef-empty/index.cjs +1 -3
- package/lib/vef-empty/props.cjs +1 -3
- package/lib/vef-empty-placeholder/index.cjs +4 -6
- package/lib/vef-empty-placeholder/props.cjs +1 -3
- package/lib/vef-error/error-icon.cjs +1 -3
- package/lib/vef-error/index.cjs +9 -11
- package/lib/vef-error/props.cjs +1 -3
- package/lib/vef-filter/components/action-buttons.cjs +5 -7
- package/lib/vef-filter/components/advanced-filter.cjs +8 -10
- package/lib/vef-filter/components/basic-filter.cjs +4 -6
- package/lib/vef-filter/components/fields/index.cjs +1 -3
- package/lib/vef-filter/components/fields/input-number.cjs +1 -3
- package/lib/vef-filter/components/fields/input.cjs +1 -3
- package/lib/vef-filter/components/fields/props.cjs +1 -3
- package/lib/vef-filter/components/fields/radio.cjs +1 -3
- package/lib/vef-filter/components/fields/select.cjs +1 -3
- package/lib/vef-filter/components/fields/tree-select.cjs +1 -3
- package/lib/vef-filter/components/filter-field.cjs +1 -3
- package/lib/vef-filter/components/filter-item.cjs +1 -3
- package/lib/vef-filter/event.cjs +1 -3
- package/lib/vef-filter/helper.cjs +1 -3
- package/lib/vef-filter/hooks/use-action-handlers.cjs +1 -3
- package/lib/vef-filter/hooks/use-computed-values.cjs +1 -3
- package/lib/vef-filter/hooks/use-filter-context.cjs +1 -3
- package/lib/vef-filter/hooks/use-filter-initialization.cjs +1 -3
- package/lib/vef-filter/hooks/use-filter-instance.cjs +1 -3
- package/lib/vef-filter/hooks/use-filter-items.cjs +1 -3
- package/lib/vef-filter/hooks/use-filter-values-change.cjs +1 -3
- package/lib/vef-filter/hooks/use-label-config.cjs +1 -3
- package/lib/vef-filter/index.cjs +2 -4
- package/lib/vef-filter/props.cjs +1 -3
- package/lib/vef-filter/store.cjs +1 -3
- package/lib/vef-filter/types.cjs +1 -3
- package/lib/vef-flex/index.cjs +1 -3
- package/lib/vef-flex/props.cjs +1 -3
- package/lib/vef-float-button/index.cjs +1 -3
- package/lib/vef-float-button/props.cjs +1 -3
- package/lib/vef-float-button-group/index.cjs +1 -3
- package/lib/vef-float-button-group/props.cjs +1 -3
- package/lib/vef-form/components/fields/icon-select.cjs +1 -3
- package/lib/vef-form/components/fields/index.cjs +1 -3
- package/lib/vef-form/components/fields/input-number.cjs +1 -3
- package/lib/vef-form/components/fields/input.cjs +1 -3
- package/lib/vef-form/components/fields/password.cjs +1 -3
- package/lib/vef-form/components/fields/props.cjs +1 -3
- package/lib/vef-form/components/fields/radio.cjs +1 -3
- package/lib/vef-form/components/fields/select.cjs +1 -3
- package/lib/vef-form/components/fields/textarea.cjs +1 -3
- package/lib/vef-form/components/fields/tree-select.cjs +1 -3
- package/lib/vef-form/components/form-actions.cjs +3 -5
- package/lib/vef-form/components/form-content.cjs +2 -4
- package/lib/vef-form/components/form-field.cjs +1 -3
- package/lib/vef-form/components/form-group.cjs +3 -5
- package/lib/vef-form/components/form-hidden-item.cjs +1 -3
- package/lib/vef-form/components/form-item.cjs +1 -3
- package/lib/vef-form/components/form-row.cjs +1 -3
- package/lib/vef-form/event.cjs +1 -3
- package/lib/vef-form/helper.cjs +1 -3
- package/lib/vef-form/hooks/use-action-handlers.cjs +1 -3
- package/lib/vef-form/hooks/use-columns-layout.cjs +1 -3
- package/lib/vef-form/hooks/use-computed-values.cjs +1 -3
- package/lib/vef-form/hooks/use-form-context.cjs +1 -3
- package/lib/vef-form/hooks/use-form-initialization.cjs +1 -3
- package/lib/vef-form/hooks/use-form-instance.cjs +1 -3
- package/lib/vef-form/hooks/use-form-values-change.cjs +1 -3
- package/lib/vef-form/hooks/use-label-width.cjs +1 -3
- package/lib/vef-form/index.cjs +3 -5
- package/lib/vef-form/props.cjs +1 -3
- package/lib/vef-form/store.cjs +1 -3
- package/lib/vef-form/types.cjs +1 -3
- package/lib/vef-form/validation-rules.cjs +1 -3
- package/lib/vef-form-drawer/index.cjs +1 -3
- package/lib/vef-form-drawer/props.cjs +1 -3
- package/lib/vef-form-modal/index.cjs +1 -3
- package/lib/vef-form-modal/props.cjs +1 -3
- package/lib/vef-generic-select/index.cjs +1 -3
- package/lib/vef-generic-select/props.cjs +1 -3
- package/lib/vef-grid/index.cjs +18 -8
- package/lib/vef-grid/props.cjs +1 -3
- package/lib/vef-grid-item/index.cjs +1 -3
- package/lib/vef-grid-item/props.cjs +1 -3
- package/lib/vef-icon/index.cjs +1 -3
- package/lib/vef-icon/props.cjs +1 -3
- package/lib/vef-icon-select/index.cjs +11 -13
- package/lib/vef-icon-select/props.cjs +1 -3
- package/lib/vef-input/hooks/use-input-instance.cjs +1 -3
- package/lib/vef-input/index.cjs +1 -3
- package/lib/vef-input/props.cjs +1 -3
- package/lib/vef-input-number/hooks/use-input-number-instance.cjs +1 -3
- package/lib/vef-input-number/index.cjs +1 -3
- package/lib/vef-input-number/props.cjs +1 -3
- package/lib/vef-layout/common-styles.cjs +4 -6
- package/lib/vef-layout/components/content.cjs +1 -3
- package/lib/vef-layout/components/font-size.cjs +1 -3
- package/lib/vef-layout/components/fullscreen.cjs +1 -3
- package/lib/vef-layout/components/header-action-icons.cjs +6 -8
- package/lib/vef-layout/components/header-content.cjs +1 -3
- package/lib/vef-layout/components/header.cjs +6 -8
- package/lib/vef-layout/components/icon-boy.cjs +1 -3
- package/lib/vef-layout/components/icon-girl.cjs +1 -3
- package/lib/vef-layout/components/icon-menu-fold-left.cjs +1 -3
- package/lib/vef-layout/components/icon-menu-unfold-left.cjs +1 -3
- package/lib/vef-layout/components/menu-groups.cjs +15 -17
- package/lib/vef-layout/components/message.cjs +1 -3
- package/lib/vef-layout/components/search.cjs +1 -3
- package/lib/vef-layout/components/sider.cjs +5 -7
- package/lib/vef-layout/components/title.cjs +8 -10
- package/lib/vef-layout/components/user-avatar.cjs +9 -11
- package/lib/vef-layout/hooks/use-layout-context.cjs +1 -3
- package/lib/vef-layout/index.cjs +2 -4
- package/lib/vef-layout/logo.svg.cjs +1 -3
- package/lib/vef-layout/props.cjs +1 -3
- package/lib/vef-layout/store.cjs +1 -3
- package/lib/vef-line-chart/index.cjs +1 -3
- package/lib/vef-line-chart/props.cjs +1 -3
- package/lib/vef-loading-placeholder/index.cjs +5 -7
- package/lib/vef-loading-placeholder/props.cjs +1 -3
- package/lib/vef-login/index.cjs +21 -23
- package/lib/vef-login/login-icon.cjs +1 -3
- package/lib/vef-login/props.cjs +1 -3
- package/lib/vef-menu/index.cjs +4 -6
- package/lib/vef-menu/props.cjs +1 -3
- package/lib/vef-modal/components/action-button-wrapper.cjs +1 -3
- package/lib/vef-modal/components/button-props.cjs +1 -3
- package/lib/vef-modal/components/cancel-action-button.cjs +1 -3
- package/lib/vef-modal/components/ok-action-button.cjs +1 -3
- package/lib/vef-modal/context.cjs +1 -3
- package/lib/vef-modal/index.cjs +2 -4
- package/lib/vef-modal/props.cjs +1 -3
- package/lib/vef-not-found/index.cjs +9 -11
- package/lib/vef-not-found/not-found-icon.cjs +1 -3
- package/lib/vef-not-found/props.cjs +1 -3
- package/lib/vef-page/index.cjs +10 -12
- package/lib/vef-page/props.cjs +1 -3
- package/lib/vef-pagination/index.cjs +1 -3
- package/lib/vef-pagination/props.cjs +1 -3
- package/lib/vef-paragraph/index.cjs +1 -3
- package/lib/vef-paragraph/props.cjs +1 -3
- package/lib/vef-password/hooks/use-password-instance.cjs +1 -3
- package/lib/vef-password/index.cjs +1 -3
- package/lib/vef-password/props.cjs +1 -3
- package/lib/vef-pie-chart/index.cjs +8 -10
- package/lib/vef-pie-chart/props.cjs +1 -3
- package/lib/vef-popconfirm/index.cjs +1 -3
- package/lib/vef-popconfirm/props.cjs +1 -3
- package/lib/vef-popover/index.cjs +1 -3
- package/lib/vef-popover/props.cjs +1 -3
- package/lib/vef-radio/hooks/use-data-options.cjs +1 -3
- package/lib/vef-radio/hooks/use-radio-instance.cjs +1 -3
- package/lib/vef-radio/index.cjs +3 -5
- package/lib/vef-radio/props.cjs +1 -3
- package/lib/vef-rate/hooks/use-rate-instance.cjs +1 -3
- package/lib/vef-rate/index.cjs +1 -3
- package/lib/vef-rate/props.cjs +1 -3
- package/lib/vef-responsive-container/index.cjs +2 -4
- package/lib/vef-responsive-container/props.cjs +1 -3
- package/lib/vef-responsive-item/index.cjs +2 -4
- package/lib/vef-responsive-item/props.cjs +1 -3
- package/lib/vef-ribbon/index.cjs +1 -3
- package/lib/vef-ribbon/props.cjs +1 -3
- package/lib/vef-row/index.cjs +1 -3
- package/lib/vef-row/props.cjs +1 -3
- package/lib/vef-scroll-area/components/scrollbar.cjs +7 -9
- package/lib/vef-scroll-area/index.cjs +3 -5
- package/lib/vef-scroll-area/props.cjs +1 -3
- package/lib/vef-select/components/option.cjs +3 -5
- package/lib/vef-select/hooks/use-data-options.cjs +1 -3
- package/lib/vef-select/hooks/use-field-names.cjs +1 -3
- package/lib/vef-select/hooks/use-render-label.cjs +2 -4
- package/lib/vef-select/hooks/use-render-option.cjs +1 -3
- package/lib/vef-select/hooks/use-select-instance.cjs +1 -3
- package/lib/vef-select/index.cjs +1 -3
- package/lib/vef-select/props.cjs +1 -3
- package/lib/vef-slider/hooks/use-slider-instance.cjs +1 -3
- package/lib/vef-slider/index.cjs +1 -3
- package/lib/vef-slider/props.cjs +1 -3
- package/lib/vef-sortable-list/components/overlay-item.cjs +2 -4
- package/lib/vef-sortable-list/components/sortable-item.cjs +2 -4
- package/lib/vef-sortable-list/hooks/use-merged-items.cjs +1 -3
- package/lib/vef-sortable-list/index.cjs +1 -3
- package/lib/vef-sortable-list/props.cjs +1 -3
- package/lib/vef-space/index.cjs +1 -3
- package/lib/vef-space/props.cjs +1 -3
- package/lib/vef-spin/index.cjs +1 -3
- package/lib/vef-spin/props.cjs +1 -3
- package/lib/vef-splitter/index.cjs +1 -3
- package/lib/vef-splitter/props.cjs +1 -3
- package/lib/vef-splitter-panel/index.cjs +1 -3
- package/lib/vef-splitter-panel/props.cjs +1 -3
- package/lib/vef-status/index.cjs +1 -3
- package/lib/vef-status/props.cjs +1 -3
- package/lib/vef-table/components/columns/bool.cjs +1 -3
- package/lib/vef-table/components/columns/code.cjs +1 -3
- package/lib/vef-table/components/columns/data-dictionary.cjs +1 -3
- package/lib/vef-table/components/columns/enum.cjs +1 -3
- package/lib/vef-table/components/columns/file.cjs +1 -3
- package/lib/vef-table/components/columns/icon.cjs +1 -3
- package/lib/vef-table/components/columns/id.cjs +1 -3
- package/lib/vef-table/components/columns/image.cjs +1 -3
- package/lib/vef-table/components/columns/index.cjs +1 -3
- package/lib/vef-table/components/columns/markdown.cjs +1 -3
- package/lib/vef-table/components/columns/number.cjs +1 -3
- package/lib/vef-table/components/columns/props.cjs +1 -3
- package/lib/vef-table/components/columns/render.cjs +1 -3
- package/lib/vef-table/components/columns/rich-text.cjs +1 -3
- package/lib/vef-table/components/columns/text.cjs +1 -3
- package/lib/vef-table/components/columns-settings.cjs +10 -12
- package/lib/vef-table/components/operation-buttons.cjs +2 -4
- package/lib/vef-table/components/settings-icon.cjs +3 -5
- package/lib/vef-table/components/table-footer.cjs +3 -5
- package/lib/vef-table/helper.cjs +1 -3
- package/lib/vef-table/hooks/use-computed-batch-buttons.cjs +1 -3
- package/lib/vef-table/hooks/use-computed-columns.cjs +1 -3
- package/lib/vef-table/hooks/use-computed-values.cjs +1 -3
- package/lib/vef-table/hooks/use-data.cjs +1 -3
- package/lib/vef-table/hooks/use-default-column-configs.cjs +1 -3
- package/lib/vef-table/hooks/use-display-value.cjs +1 -3
- package/lib/vef-table/hooks/use-helper-columns.cjs +1 -3
- package/lib/vef-table/hooks/use-operation-column-width.cjs +1 -3
- package/lib/vef-table/hooks/use-pagination-props.cjs +1 -3
- package/lib/vef-table/hooks/use-row-props.cjs +1 -3
- package/lib/vef-table/hooks/use-row-selection-config.cjs +1 -3
- package/lib/vef-table/hooks/use-selected-rows.cjs +1 -3
- package/lib/vef-table/hooks/use-table-columns.cjs +1 -3
- package/lib/vef-table/hooks/use-table-context.cjs +1 -3
- package/lib/vef-table/hooks/use-table-instance.cjs +1 -3
- package/lib/vef-table/hooks/use-table-summary.cjs +1 -3
- package/lib/vef-table/hooks/use-table-width.cjs +1 -3
- package/lib/vef-table/index.cjs +5 -7
- package/lib/vef-table/props.cjs +1 -3
- package/lib/vef-table/store.cjs +1 -3
- package/lib/vef-table/types.cjs +1 -3
- package/lib/vef-tabs/index.cjs +1 -3
- package/lib/vef-tabs/props.cjs +1 -3
- package/lib/vef-tag/index.cjs +1 -3
- package/lib/vef-tag/props.cjs +1 -3
- package/lib/vef-temporal-picker/helper.cjs +1 -3
- package/lib/vef-temporal-picker/hooks/use-dayjs-value.cjs +1 -3
- package/lib/vef-temporal-picker/hooks/use-temporal-limit.cjs +1 -3
- package/lib/vef-temporal-picker/hooks/use-temporal-picker-instance.cjs +1 -3
- package/lib/vef-temporal-picker/index.cjs +1 -3
- package/lib/vef-temporal-picker/props.cjs +1 -3
- package/lib/vef-temporal-range-picker/helper.cjs +1 -3
- package/lib/vef-temporal-range-picker/hooks/use-dayjs-values.cjs +1 -3
- package/lib/vef-temporal-range-picker/hooks/use-temporal-limit.cjs +1 -3
- package/lib/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.cjs +1 -3
- package/lib/vef-temporal-range-picker/index.cjs +1 -3
- package/lib/vef-temporal-range-picker/props.cjs +1 -3
- package/lib/vef-text/index.cjs +1 -3
- package/lib/vef-text/props.cjs +1 -3
- package/lib/vef-textarea/hooks/use-textarea-instance.cjs +1 -3
- package/lib/vef-textarea/index.cjs +1 -3
- package/lib/vef-textarea/props.cjs +1 -3
- package/lib/vef-title/index.cjs +6 -8
- package/lib/vef-title/props.cjs +1 -3
- package/lib/vef-tooltip/index.cjs +1 -3
- package/lib/vef-tooltip/props.cjs +1 -3
- package/lib/vef-tree-select/hooks/use-change-handler.cjs +1 -3
- package/lib/vef-tree-select/hooks/use-data-options.cjs +1 -3
- package/lib/vef-tree-select/hooks/use-tree-select-instance.cjs +1 -3
- package/lib/vef-tree-select/index.cjs +1 -3
- package/lib/vef-tree-select/props.cjs +1 -3
- package/lib/vef-virtual-grid/index.cjs +3 -5
- package/lib/vef-virtual-grid/props.cjs +1 -3
- package/lib/vef-virtual-list/index.cjs +4 -6
- package/lib/vef-virtual-list/props.cjs +1 -3
- package/package.json +4 -4
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{css as o}from"@emotion/react";import{VefError as r,isString as t,isNullish as i}from"@vef-framework/shared";import{useMemo as l}from"react";import a from"../../../vef-tag/index.js";import m from"../../../vef-text/index.js";import{useComputedValues as n}from"../../hooks/use-computed-values.js";const u="Name",c=o({color:"inherit",fontSize:"inherit"});function Enum({value:s,record:d,rowIndex:f,columnProps:p}){if("Enum"!==p.type)throw new r(-1,"Column type must be Enum");const{name:h,defaultValue:w,showAsTag:x=!0,bold:b,italic:v,ellipsis:V,color:j,width:k}=p,[y,$,E]=n([{key:"bold",rawValue:b,defaultValue:!1},{key:"italic",rawValue:v,defaultValue:!1},{key:"color",rawValue:j}],s,d,f),g=l((()=>t(E)?E:E?!i(s)&&Object.hasOwn(E,s)?E[s]:E["*"]:void 0),[E,s]),O=l((()=>i(s)||i(d[`${h}${u}`])?w:d[`${h}${u}`]),[s,d,h,w]),z=l((()=>{if(k)return o({maxWidth:`${k}px !important`})}),[k]);return x?e(a,{color:g,children:e(m,{bold:y,css:c,italic:$,children:O})}):e(m,{bold:y,color:g,css:z,ellipsis:V,italic:$,children:O})}export{Enum as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{css}from"@emotion/react";import{VefError,isString,isNullish}from"@vef-framework/shared";import{useMemo}from"react";import VefTag from"../../../vef-tag/index.js";import VefText from"../../../vef-text/index.js";import{useComputedValues}from"../../hooks/use-computed-values.js";const ENUM_NAME_SUFFIX="Name",tagTextStyle=css({color:"inherit",fontSize:"inherit"});function Enum({value,record,rowIndex,columnProps}){if(columnProps.type!=="Enum")throw new VefError(-1,"Column type must be Enum");const{name,defaultValue,showAsTag=!0,bold,italic,ellipsis,color,width}=columnProps,[boldToUse,italicToUse,colorOrMapping]=useComputedValues([{key:"bold",rawValue:bold,defaultValue:!1},{key:"italic",rawValue:italic,defaultValue:!1},{key:"color",rawValue:color}],value,record,rowIndex),colorToUse=useMemo(()=>{if(isString(colorOrMapping))return colorOrMapping;if(colorOrMapping)return!isNullish(value)&&Object.hasOwn(colorOrMapping,value)?colorOrMapping[value]:colorOrMapping["*"]},[colorOrMapping,value]),valueToDisplay=useMemo(()=>isNullish(value)||isNullish(record[`${name}${ENUM_NAME_SUFFIX}`])?defaultValue:record[`${name}${ENUM_NAME_SUFFIX}`],[value,record,name,defaultValue]),cssToUse=useMemo(()=>{if(width)return css({maxWidth:`${width}px !important`})},[width]);return showAsTag?jsx(VefTag,{color:colorToUse,children:jsx(VefText,{bold:boldToUse,css:tagTextStyle,italic:italicToUse,children:valueToDisplay})}):jsx(VefText,{bold:boldToUse,color:colorToUse,css:cssToUse,ellipsis,italic:italicToUse,children:valueToDisplay})}/*! 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{Enum as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";function File({value:r}){return e("span",{children:r})}export{File as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";function File({value}){return jsx("span",{children:value})}/*! 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{File as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as n}from"@emotion/react/jsx-runtime";function Icon({value:e}){return n("span",{children:e})}export{Icon as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";function Icon({value}){return jsx("span",{children:value})}/*! 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{Icon as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{css as o}from"@emotion/react";import{VefError as r,isNullish as t}from"@vef-framework/shared";import{useMemo as a}from"react";import l from"../../../vef-text/index.js";import{useComputedValues as i}from"../../hooks/use-computed-values.js";const m=/Id$/;function Id({value:u,record:d,rowIndex:c,columnProps:n}){if("Id"!==n.type)throw new r(-1,"Column type must be Id");const{name:s,defaultValue:f,ellipsis:p,bold:w,italic:x,color:h,width:I}=n,[V,k,y]=i([{key:"bold",rawValue:w,defaultValue:!1},{key:"italic",rawValue:x,defaultValue:!1},{key:"color",rawValue:h}],u,d,c),b=a((()=>{const e=s.replace(m,"Name");return t(u)||t(d[e])?f:d[e]}),[u,d,s,f]),v=a((()=>{if(I)return o({maxWidth:`${I}px !important`})}),[I]);return e(l,{bold:V,color:y,css:v,ellipsis:p,italic:k,children:b})}export{Id as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{css}from"@emotion/react";import{VefError,isNullish}from"@vef-framework/shared";import{useMemo}from"react";import VefText from"../../../vef-text/index.js";import{useComputedValues}from"../../hooks/use-computed-values.js";const ID_NAME_SUFFIX="Name",ID_NAME_REPLACE_REGEX=/Id$/;function Id({value,record,rowIndex,columnProps}){if(columnProps.type!=="Id")throw new VefError(-1,"Column type must be Id");const{name,defaultValue,ellipsis,bold,italic,color,width}=columnProps,[boldToUse,italicToUse,colorToUse]=useComputedValues([{key:"bold",rawValue:bold,defaultValue:!1},{key:"italic",rawValue:italic,defaultValue:!1},{key:"color",rawValue:color}],value,record,rowIndex),valueToDisplay=useMemo(()=>{const nameToUse=name.replace(ID_NAME_REPLACE_REGEX,ID_NAME_SUFFIX);return isNullish(value)||isNullish(record[nameToUse])?defaultValue:record[nameToUse]},[value,record,name,defaultValue]),cssToUse=useMemo(()=>{if(width)return css({maxWidth:`${width}px !important`})},[width]);return jsx(VefText,{bold:boldToUse,color:colorToUse,css:cssToUse,ellipsis,italic:italicToUse,children:valueToDisplay})}/*! 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{Id as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as r}from"@emotion/react/jsx-runtime";import{extractBaseName as e}from"@vef-framework/shared";function Image({value:m}){return r("img",{alt:e(m),src:m})}export{Image as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{extractBaseName}from"@vef-framework/shared";function Image({value}){return jsx("img",{alt:extractBaseName(value),src:value})}/*! 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{Image as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import o from"./bool.js";import r from"./code.js";import m from"./data-dictionary.js";import t from"./enum.js";import i from"./file.js";import e from"./icon.js";import p from"./id.js";import s from"./image.js";import f from"./markdown.js";import j from"./number.js";import n from"./render.js";import a from"./rich-text.js";import d from"./text.js";const c={Text:d,Number:j,Enum:t,Boolean:o,DataDictionary:m,Id:p,Render:n,Markdown:f,Icon:e,File:i,RichText:a,Image:s,Code:r};export{c as columnComponents};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import BoolMemo from"./bool.js";import Code from"./code.js";import DataDictionary from"./data-dictionary.js";import Enum from"./enum.js";import File from"./file.js";import Icon from"./icon.js";import Id from"./id.js";import Image from"./image.js";import Markdown from"./markdown.js";import NumberColumn from"./number.js";import Render from"./render.js";import RichText from"./rich-text.js";import Text from"./text.js";const columnComponents={Text,Number:NumberColumn,Enum,Boolean:BoolMemo,DataDictionary,Id,Render,Markdown,Icon,File,RichText,Image,Code};/*! 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{columnComponents};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as r}from"@emotion/react/jsx-runtime";function Markdown({value:n}){return r("span",{children:n})}export{Markdown as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";function Markdown({value}){return jsx("span",{children:value})}/*! 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{Markdown as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{css as r}from"@emotion/react";import{VefError as o,isNullish as t}from"@vef-framework/shared";import{useMemo as u}from"react";import a from"../../../vef-text/index.js";import{useComputedValues as l}from"../../hooks/use-computed-values.js";import{useDisplayValue as m}from"../../hooks/use-display-value.js";function NumberColumn({value:i,record:f,rowIndex:s,columnProps:n}){if("Number"!==n.type)throw new o(-1,"Column type must be Number");const{defaultValue:d,formatter:p,prefix:c,suffix:x,bold:b,italic:w,color:h,width:V}=n,k=m(i,f,s,{defaultValue:d,formatter:p,prefix:c,suffix:x}),[y,v,j]=l([{key:"bold",rawValue:b,defaultValue:!1},{key:"italic",rawValue:w,defaultValue:!1},{key:"color",rawValue:h}],i,f,s),N=u((()=>{if(V)return r({maxWidth:`${V}px !important`})}),[V]);return t(k)?null:e(a,{bold:y,color:j,css:N,italic:v,children:k})}export{NumberColumn as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{css}from"@emotion/react";import{VefError,isNullish}from"@vef-framework/shared";import{useMemo}from"react";import VefText from"../../../vef-text/index.js";import{useComputedValues}from"../../hooks/use-computed-values.js";import{useDisplayValue}from"../../hooks/use-display-value.js";function NumberColumn({value,record,rowIndex,columnProps}){if(columnProps.type!=="Number")throw new VefError(-1,"Column type must be Number");const{defaultValue,formatter,prefix,suffix,bold,italic,color,width}=columnProps,displayValue=useDisplayValue(value,record,rowIndex,{defaultValue,formatter,prefix,suffix}),[boldToUse,italicToUse,colorToUse]=useComputedValues([{key:"bold",rawValue:bold,defaultValue:!1},{key:"italic",rawValue:italic,defaultValue:!1},{key:"color",rawValue:color}],value,record,rowIndex),cssToUse=useMemo(()=>{if(width)return css({maxWidth:`${width}px !important`})},[width]);return isNullish(displayValue)?null:jsx(VefText,{bold:boldToUse,color:colorToUse,css:cssToUse,italic:italicToUse,children:displayValue})}/*! 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{NumberColumn as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as r}from"@emotion/react/jsx-runtime";import{css as e}from"@emotion/react";import{VefError as t}from"@vef-framework/shared";import{useMemo as o}from"react";function Render({value:n,record:m,rowIndex:i,columnProps:d}){if("Render"!==d.type)throw new t(-1,"Column type must be Render");const{render:a,width:f}=d,p=a?.(n,m,i),c=o((()=>{if(f)return e({maxWidth:`${f}px !important`})}),[f]);return r("div",{css:c,children:p})}export{Render as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{css}from"@emotion/react";import{VefError}from"@vef-framework/shared";import{useMemo}from"react";function Render({value,record,rowIndex,columnProps}){if(columnProps.type!=="Render")throw new VefError(-1,"Column type must be Render");const{render,width}=columnProps,content=render?.(value,record,rowIndex),cssToUse=useMemo(()=>{if(width)return css({maxWidth:`${width}px !important`})},[width]);return jsx("div",{css:cssToUse,children:content})}/*! 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{Render as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";function RichText({value:t}){return e("span",{children:t})}export{RichText as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";function RichText({value}){return jsx("span",{children:value})}/*! 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{RichText as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{css as o}from"@emotion/react";import{VefError as r,isNullish as t}from"@vef-framework/shared";import{useMemo as l}from"react";import i from"../../../vef-text/index.js";import{useComputedValues as a}from"../../hooks/use-computed-values.js";import{useDisplayValue as u}from"../../hooks/use-display-value.js";function Text({value:f,record:m,rowIndex:s,columnProps:p}){if("Text"!==p.type)throw new r(-1,"Column type must be Text");const{defaultValue:c,formatter:d,prefix:n,suffix:x,ellipsis:w,bold:y,italic:h,color:V,copyable:b,width:k}=p,[v,T,j]=a([{key:"bold",rawValue:y,defaultValue:!1},{key:"italic",rawValue:h,defaultValue:!1},{key:"color",rawValue:V}],f,m,s),C=u(f,m,s,{defaultValue:c,formatter:d,prefix:n,suffix:x}),I=l((()=>{if(k)return o({maxWidth:`${k}px !important`})}),[k]);return t(C)?null:e(i,{bold:v,color:j,copyable:b,css:I,ellipsis:w,ellipsisTip:w?C:void 0,italic:T,children:C})}export{Text as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{css}from"@emotion/react";import{VefError,isNullish}from"@vef-framework/shared";import{useMemo}from"react";import VefText from"../../../vef-text/index.js";import{useComputedValues}from"../../hooks/use-computed-values.js";import{useDisplayValue}from"../../hooks/use-display-value.js";function Text({value,record,rowIndex,columnProps}){if(columnProps.type!=="Text")throw new VefError(-1,"Column type must be Text");const{defaultValue,formatter,prefix,suffix,ellipsis,bold,italic,color,copyable,width}=columnProps,[boldToUse,italicToUse,colorToUse]=useComputedValues([{key:"bold",rawValue:bold,defaultValue:!1},{key:"italic",rawValue:italic,defaultValue:!1},{key:"color",rawValue:color}],value,record,rowIndex),valueToDisplay=useDisplayValue(value,record,rowIndex,{defaultValue,formatter,prefix,suffix}),cssToUse=useMemo(()=>{if(width)return css({maxWidth:`${width}px !important`})},[width]);return isNullish(valueToDisplay)?null:jsx(VefText,{bold:boldToUse,color:colorToUse,copyable,css:cssToUse,ellipsis,ellipsisTip:ellipsis?valueToDisplay:void 0,italic:italicToUse,children:valueToDisplay})}/*! 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{Text as default};
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsxs as e,jsx as n,Fragment as t}from"@emotion/react/jsx-runtime";import{RollbackOutlined as i,VerticalRightOutlined as l,VerticalLeftOutlined as a}from"@ant-design/icons";import{css as o}from"@emotion/react";import{themeVariables as r}from"@vef-framework/shared";import{Checkbox as s}from"antd";import{useMemo as d,useCallback as m,memo as c}from"react";import f from"../../vef-bool/index.js";import u from"../../vef-button/index.js";import p from"../../vef-divider/index.js";import g from"../../vef-sortable-list/index.js";import v from"../../vef-text/index.js";import{useTableContextSelector as h}from"../hooks/use-table-context.js";const b=o`
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsxs,jsx,Fragment}from"@emotion/react/jsx-runtime";import{RollbackOutlined,VerticalRightOutlined,VerticalLeftOutlined}from"@ant-design/icons";import{css}from"@emotion/react";import{themeVariables}from"@vef-framework/shared";import{Checkbox}from"antd";import{useMemo,useCallback,memo}from"react";import VefBool from"../../vef-bool/index.js";import VefButton from"../../vef-button/index.js";import VefDivider from"../../vef-divider/index.js";import VefSortableList from"../../vef-sortable-list/index.js";import VefText from"../../vef-text/index.js";import{useTableContextSelector}from"../hooks/use-table-context.js";const columnsSettingsPanelStyle=css`
|
|
3
2
|
width: 300px;
|
|
4
|
-
padding: ${
|
|
3
|
+
padding: ${themeVariables.paddingSm};
|
|
5
4
|
|
|
6
5
|
.vef-divider-horizontal {
|
|
7
|
-
margin: ${
|
|
6
|
+
margin: ${themeVariables.marginSm} 0;
|
|
8
7
|
}
|
|
9
8
|
|
|
10
9
|
.vef-table-columns-settings-panel-header {
|
|
11
10
|
display: flex;
|
|
12
11
|
justify-content: space-between;
|
|
13
12
|
align-items: center;
|
|
14
|
-
padding-left: ${
|
|
13
|
+
padding-left: ${themeVariables.paddingSm};
|
|
15
14
|
}
|
|
16
15
|
|
|
17
16
|
.vef-table-columns-settings-panel-body {
|
|
@@ -26,17 +25,17 @@ import{jsxs as e,jsx as n,Fragment as t}from"@emotion/react/jsx-runtime";import{
|
|
|
26
25
|
display: grid;
|
|
27
26
|
grid-template-columns: max-content 1fr max-content;
|
|
28
27
|
align-items: center;
|
|
29
|
-
padding: ${
|
|
30
|
-
border-radius: ${
|
|
28
|
+
padding: ${themeVariables.paddingXs};
|
|
29
|
+
border-radius: ${themeVariables.borderRadius};
|
|
31
30
|
|
|
32
31
|
&:hover {
|
|
33
|
-
background-color: ${
|
|
32
|
+
background-color: ${themeVariables.colorPrimaryBg};
|
|
34
33
|
}
|
|
35
34
|
|
|
36
35
|
.vef-table-columns-settings-panel-column-drag-icon {
|
|
37
36
|
cursor: move;
|
|
38
|
-
color: ${
|
|
39
|
-
padding-right: ${
|
|
37
|
+
color: ${themeVariables.colorTextSecondary};
|
|
38
|
+
padding-right: ${themeVariables.padding};
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
.vef-table-columns-settings-panel-column-fixed-icon {
|
|
@@ -50,5 +49,4 @@ import{jsxs as e,jsx as n,Fragment as t}from"@emotion/react/jsx-runtime";import{
|
|
|
50
49
|
}
|
|
51
50
|
}
|
|
52
51
|
}
|
|
53
|
-
`;
|
|
54
|
-
/*! 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 */
|
|
52
|
+
`;function VefColumnsSettingsBase(){const{defaultColumnConfigMap,columnConfigMap,setColumnConfigMap}=useTableContextSelector(ctx=>{const{defaultColumnConfigMap:defaultColumnConfigMap2,columnConfigMap:columnConfigMap2,setColumnConfigMap:setColumnConfigMap2}=ctx;return{defaultColumnConfigMap:defaultColumnConfigMap2,columnConfigMap:columnConfigMap2,setColumnConfigMap:setColumnConfigMap2}}),columnOptions=useMemo(()=>[...columnConfigMap.entries()].sort(([_,one],[__,another])=>one.order-another.order).map(([name,column])=>{const{title,configurable,...rest}=column;return{value:name,label:title,disabled:!configurable,...rest}}),[columnConfigMap]),setColumnOptions=useCallback(newColumnOptions=>{const newColumnConfigMap=newColumnOptions.reduce((map,option,index)=>{const{value,label,disabled,order,...rest}=option,columnConfig={title:label,configurable:!disabled,order:index+1,...rest};return map.set(value,columnConfig),map},new Map);setColumnConfigMap(newColumnConfigMap)},[setColumnConfigMap]),showedColumns=useMemo(()=>columnOptions.filter(it=>it.show).map(it=>it.value),[columnOptions]),allCheckStatus=useMemo(()=>{const showedLength=showedColumns.length,totalLength=columnOptions.length;return showedLength===totalLength?"checked":showedLength>0?"indeterminate":"unchecked"},[showedColumns.length,columnOptions.length]),handleShowedColumnsChange=useCallback(value=>{const names=new Set(value),newColumnOptions=columnOptions.map(option=>({...option,show:names.has(option.value)}));setColumnOptions(newColumnOptions)},[columnOptions,setColumnOptions]),handleColumnFixedChange=useCallback((name,fixed)=>{const newColumnOptions=columnOptions.map(option=>({...option,fixed:option.value===name?fixed:option.fixed}));setColumnOptions(newColumnOptions)},[columnOptions,setColumnOptions]),handleColumnOrderChange=useCallback(newColumnOptions=>{setColumnOptions(newColumnOptions)},[setColumnOptions]),handleResetColumnConfig=useCallback(()=>{setColumnConfigMap(new Map(defaultColumnConfigMap))},[defaultColumnConfigMap,setColumnConfigMap]);return jsxs("div",{css:columnsSettingsPanelStyle,children:[jsxs("div",{className:"vef-table-columns-settings-panel-header",children:[jsx(VefBool,{indeterminate:allCheckStatus==="indeterminate",label:jsx(VefText,{bold:!0,children:"列显示"}),value:allCheckStatus==="checked",variant:"checkbox",onChange:value=>{handleShowedColumnsChange(value?columnOptions.map(it=>it.value):[])}}),jsx(VefButton,{color:"primary",variant:"text",onClick:handleResetColumnConfig,children:"重置"})]}),jsx(VefDivider,{}),jsx(Checkbox.Group,{className:"vef-table-columns-settings-panel-body",value:showedColumns,onChange:handleShowedColumnsChange,children:jsx(VefSortableList,{useHandle:!0,className:"vef-table-columns-settings-panel-columns",handleClassName:"vef-table-columns-settings-panel-column-drag-icon",itemClassName:"vef-table-columns-settings-panel-column",itemKey:"value",items:columnOptions,useOverlay:!1,renderItem:({value,label,disabled,fixed,show})=>jsxs(Fragment,{children:[jsx(Checkbox,{disabled,value,children:label}),jsxs("span",{className:"vef-table-columns-settings-panel-column-fixed-icon",children:[jsx(VefButton,{color:fixed==="left"?"primary":"default",disabled:disabled||!show,icon:fixed==="left"?jsx(RollbackOutlined,{}):jsx(VerticalRightOutlined,{}),size:"small",tip:fixed==="left"?"取消左侧固定":"固定到左侧",variant:"link",onClick:()=>{fixed==="left"?handleColumnFixedChange(value):handleColumnFixedChange(value,"left")}}),jsx(VefDivider,{orientation:"vertical"}),jsx(VefButton,{color:fixed==="right"?"primary":"default",disabled:disabled||!show,icon:fixed==="right"?jsx(RollbackOutlined,{}):jsx(VerticalLeftOutlined,{}),size:"small",tip:fixed==="right"?"取消右侧固定":"固定到右侧",variant:"link",onClick:()=>{fixed==="right"?handleColumnFixedChange(value):handleColumnFixedChange(value,"right")}})]})]}),onChange:handleColumnOrderChange})})]})}const VefColumnsSettings=memo(VefColumnsSettingsBase,()=>!1);VefColumnsSettings.displayName="VefColumnsSettings";/*! 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{VefColumnsSettings as default};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsxs as e,jsx as n}from"@emotion/react/jsx-runtime";import{MoreOutlined as o}from"@ant-design/icons";import{css as t}from"@emotion/react";import{useComputedActionButtons as i}from"@vef-framework/hooks";import{invokeMaybeAsyncFn as r,showConfirmation as l}from"@vef-framework/shared";import{useMemo as c,useState as a,useCallback as s}from"react";import d from"../../vef-button/index.js";import m from"../../vef-dropdown/index.js";import f from"../../vef-flex/index.js";import p from"../../vef-popconfirm/index.js";import{useTableContextSelector as h}from"../hooks/use-table-context.js";const u=t`
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsxs,jsx}from"@emotion/react/jsx-runtime";import{MoreOutlined}from"@ant-design/icons";import{css}from"@emotion/react";import{useComputedActionButtons}from"@vef-framework/hooks";import{invokeMaybeAsyncFn,showConfirmation}from"@vef-framework/shared";import{useMemo,useState,useCallback}from"react";import VefButton from"../../vef-button/index.js";import VefDropdown from"../../vef-dropdown/index.js";import VefFlex from"../../vef-flex/index.js";import VefPopconfirm from"../../vef-popconfirm/index.js";import{useTableContextSelector}from"../hooks/use-table-context.js";const operationButtonStyle=css`
|
|
3
2
|
.vef-btn-sm {
|
|
4
3
|
--vef-control-height-sm: 24px;
|
|
5
4
|
--vef-button-padding-inline-sm: 4px;
|
|
@@ -8,5 +7,4 @@ import{jsxs as e,jsx as n}from"@emotion/react/jsx-runtime";import{MoreOutlined a
|
|
|
8
7
|
padding-inline: 2px;
|
|
9
8
|
}
|
|
10
9
|
}
|
|
11
|
-
`;function VefOperationButtons({record
|
|
12
|
-
/*! 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 */
|
|
10
|
+
`;function VefOperationButtons({record,rowIndex,operationButtons,maxVisibleOperationButtons}){const{externalContext,refetch,isFetching,selectedKeys,selectedRecords}=useTableContextSelector(ctx=>{const{externalContext:externalContext2,refetch:refetch2,isFetching:isFetching2,selectedKeys:selectedKeys2,selectedRecords:selectedRecords2}=ctx;return{externalContext:externalContext2,refetch:refetch2,isFetching:isFetching2,selectedKeys:selectedKeys2,selectedRecords:selectedRecords2}}),buttonContext=useMemo(()=>({record,rowIndex,refetch,isFetching,selectedKeys,selectedRecords,...externalContext??{}}),[externalContext,isFetching,record,refetch,rowIndex,selectedKeys,selectedRecords]),computedButtons=useComputedActionButtons(operationButtons,buttonContext),[moreButtonLoading,setMoreButtonLoading]=useState(!1),hiddenButtons=useMemo(()=>computedButtons.length>maxVisibleOperationButtons?computedButtons.slice(maxVisibleOperationButtons).map(button=>{const{key,label,icon,disabled}=button;return{type:"item",key,label,icon,disabled}}):[],[computedButtons,maxVisibleOperationButtons]),[moreButtonConfirmationOpen,setMoreButtonConfirmationOpen]=useState(!1),[currentMoreButtonConfirmationInfo,setCurrentMoreButtonConfirmationInfo]=useState(null),handleMoreButtonConfirmationCancel=useCallback(()=>{setMoreButtonConfirmationOpen(!1),setCurrentMoreButtonConfirmationInfo(null)},[]),handleMoreButtonClick=useMemo(()=>{if(hiddenButtons.length!==0)return async key=>{const{requireConfirmation,confirmationMode,confirmationTitle,confirmationContent,onClick}=computedButtons.find(item=>item.key===key),okHandler=async()=>{try{await invokeMaybeAsyncFn(onClick,{beforeInvoke:()=>{setMoreButtonLoading(!0)},onFinally:()=>{setMoreButtonLoading(!1)}},buttonContext)}finally{handleMoreButtonConfirmationCancel()}};requireConfirmation?confirmationMode==="simple"?(setCurrentMoreButtonConfirmationInfo({title:confirmationTitle,content:confirmationContent,okHandler}),setMoreButtonConfirmationOpen(!0)):showConfirmation(confirmationTitle,confirmationContent,okHandler,{onCancel:()=>{setCurrentMoreButtonConfirmationInfo(null)}}):await okHandler()}},[computedButtons,buttonContext,handleMoreButtonConfirmationCancel,hiddenButtons.length]);return jsxs(VefFlex,{align:"center",css:operationButtonStyle,gap:"small",justify:"center",children:[computedButtons.slice(0,maxVisibleOperationButtons).map(button=>{const{key,label,icon,color,disabled,requireConfirmation,confirmationMode,confirmationTitle,confirmationContent,onClick}=button;return requireConfirmation?jsx(VefButton,{requireConfirmation:!0,color,confirmationContent,confirmationMode,confirmationTitle,disabled:disabled||moreButtonLoading,icon,size:"small",variant:"filled",onConfirmationOk:()=>onClick(buttonContext),children:label},key):jsx(VefButton,{color,disabled:disabled||moreButtonLoading,icon,size:"small",variant:"filled",onClick:event=>(event.stopPropagation(),onClick(buttonContext)),children:label},key)}),computedButtons.length>maxVisibleOperationButtons&&jsx(VefDropdown,{disabled:moreButtonLoading,items:hiddenButtons,onClick:handleMoreButtonClick,children:jsx(VefPopconfirm,{content:currentMoreButtonConfirmationInfo?.content,disabled:moreButtonLoading,opened:moreButtonConfirmationOpen,title:currentMoreButtonConfirmationInfo?.title,onCancel:handleMoreButtonConfirmationCancel,onOk:currentMoreButtonConfirmationInfo?.okHandler,children:jsx(VefButton,{color:"primary",disabled:moreButtonLoading,icon:jsx(MoreOutlined,{}),loading:moreButtonLoading,size:"small",variant:"filled",onClick:event=>event.stopPropagation()})})})]})}/*! 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{VefOperationButtons as default};
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
`;const s=m((function VefSettingsIconBase(){const r=n((o=>o.columnConfigMapHasChanged));return o(i,{css:r?c:void 0,children:o(e,{})})}),(()=>!1));export{s as default};
|
|
5
|
-
/*! 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{css}from"@emotion/react";import{themeVariables}from"@vef-framework/shared";import{SettingsIcon}from"lucide-react";import{memo}from"react";import VefIcon from"../../vef-icon/index.js";import{useTableContextSelector}from"../hooks/use-table-context.js";const primaryColorStyle=css`
|
|
2
|
+
color: ${themeVariables.colorPrimary};
|
|
3
|
+
`;function VefSettingsIconBase(){const columnConfigMapHasChanged=useTableContextSelector(ctx=>ctx.columnConfigMapHasChanged);return jsx(VefIcon,{css:columnConfigMapHasChanged?primaryColorStyle:void 0,children:jsx(SettingsIcon,{})})}const VefSettingsIcon=memo(VefSettingsIconBase,()=>!1);/*! 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{VefSettingsIcon as default};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsxs as o,jsx as e}from"@emotion/react/jsx-runtime";import{css as i}from"@emotion/react";import{themeVariables as t,invokeMaybeAsyncFn as n}from"@vef-framework/shared";import{useMemo as r,memo as a}from"react";import l from"../../vef-button/index.js";import c from"../../vef-pagination/index.js";import m from"../../vef-text/index.js";import{useTableContextSelector as d}from"../hooks/use-table-context.js";const f=i`
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsxs,jsx}from"@emotion/react/jsx-runtime";import{css}from"@emotion/react";import{themeVariables,invokeMaybeAsyncFn}from"@vef-framework/shared";import{useMemo,memo}from"react";import VefButton from"../../vef-button/index.js";import VefPagination from"../../vef-pagination/index.js";import VefText from"../../vef-text/index.js";import{useTableContextSelector}from"../hooks/use-table-context.js";const footerStyle=css`
|
|
3
2
|
width: 100%;
|
|
4
3
|
display: flex;
|
|
5
4
|
align-items: center;
|
|
@@ -9,11 +8,10 @@ import{jsxs as o,jsx as e}from"@emotion/react/jsx-runtime";import{css as i}from"
|
|
|
9
8
|
flex: auto;
|
|
10
9
|
display: flex;
|
|
11
10
|
align-items: center;
|
|
12
|
-
gap: ${
|
|
11
|
+
gap: ${themeVariables.padding};
|
|
13
12
|
}
|
|
14
13
|
|
|
15
14
|
> .vef-pagination {
|
|
16
15
|
flex: none;
|
|
17
16
|
}
|
|
18
|
-
`;
|
|
19
|
-
/*! 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 */
|
|
17
|
+
`;function VefTableFooterBase({selectionSummary,size,paginationProps,batchActionButtons,batchActionButtonContext}){const selectedRecords=useTableContextSelector(ctx=>ctx.selectedRecords),selectionSummaryNode=useMemo(()=>{if(selectionSummary!==!1){if(selectionSummary)return selectionSummary(selectedRecords);if(selectedRecords.length>0)return jsxs(VefText,{color:"secondary",children:["已选择"," ",jsx(VefText,{bold:!0,color:"blue",children:selectedRecords.length})," ","项"]})}},[selectionSummary,selectedRecords]),batchButtonsNode=useMemo(()=>batchActionButtons.map(button=>{const{key,label,icon,disabled,color,requireConfirmation,confirmationMode,confirmationTitle,confirmationContent,onClick}=button,wrappedOnClick=async()=>{await invokeMaybeAsyncFn(onClick,{},batchActionButtonContext)};return requireConfirmation?jsx(VefButton,{requireConfirmation:!0,color,confirmationContent,confirmationMode,confirmationTitle,disabled,icon,onConfirmationOk:wrappedOnClick,children:label},key):jsx(VefButton,{color,disabled,icon,onClick:wrappedOnClick,children:label},key)}),[batchActionButtons,batchActionButtonContext]),style=useMemo(()=>({"--vef-table-footer-gap":`var(--vef-table-cell-padding-block${size==="small"?"-sm":size==="medium"?"-md":""})`}),[size]);return jsxs("div",{css:footerStyle,style,children:[jsxs("div",{children:[selectionSummaryNode,batchButtonsNode]}),jsx(VefPagination,{...paginationProps})]})}const VefTableFooter=memo(VefTableFooterBase);VefTableFooter.displayName="VefTableFooter";/*! 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{VefTableFooter as default};
|
package/es/vef-table/helper.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{isFunction as r,isExpression as e,compileDynamicFn as o}from"@vef-framework/shared";function computeValue(u,t,n,f,a){if(r(u))return u(t,n,f);if(e(u)){return o(u,"value","record","rowIndex",`return ${u.expression}`)(t,n,f)}return u??a}export{computeValue};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{compileDynamicFn,isFunction,isExpression}from"@vef-framework/shared";function computeValue(rawValue,value,record,rowIndex,defaultValue){return isFunction(rawValue)?rawValue(value,record,rowIndex):isExpression(rawValue)?compileDynamicFn(rawValue,"value","record","rowIndex",`return ${rawValue.expression}`)(value,record,rowIndex):rawValue??defaultValue}/*! 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{computeValue};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useComputedActionButtons as t}from"@vef-framework/hooks";import{useMemo as e}from"react";function useComputedBatchActionButtons(o,c){const{externalContext:n,isFetching:s,refetch:r,selectedKeys:i,selectedRecords:u}=c,d=e((()=>({isFetching:s,refetch:r,selectedKeys:i,selectedRecords:u,...n??{}})),[n,s,r,i,u]);return{computedBatchActionButtons:t(o,d),batchActionButtonContext:d}}export{useComputedBatchActionButtons};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useComputedActionButtons}from"@vef-framework/hooks";import{useMemo}from"react";function useComputedBatchActionButtons(batchActionButtons,tableContext){const{externalContext,isFetching,refetch,selectedKeys,selectedRecords}=tableContext,batchActionButtonContext=useMemo(()=>({isFetching,refetch,selectedKeys,selectedRecords,...externalContext??{}}),[externalContext,isFetching,refetch,selectedKeys,selectedRecords]);return{computedBatchActionButtons:useComputedActionButtons(batchActionButtons,batchActionButtonContext),batchActionButtonContext}}/*! 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{useComputedBatchActionButtons};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useMemo as e}from"react";function useComputedColumns(o,r){return e((()=>o.map((e=>{const{name:o}=e,t=r.get(o);return{...e,show:t.show,fixed:t.fixed}})).sort(((e,o)=>r.get(e.name).order-r.get(o.name).order))),[o,r])}export{useComputedColumns};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useMemo}from"react";function useComputedColumns(columns,columnConfigMap){return useMemo(()=>columns.map(column=>{const{name}=column,config=columnConfigMap.get(name);return{...column,show:config.show,fixed:config.fixed}}).sort((one,another)=>columnConfigMap.get(one.name).order-columnConfigMap.get(another.name).order),[columns,columnConfigMap])}/*! 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{useComputedColumns};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useDeepMemo as e}from"@vef-framework/hooks";import{computeValue as r}from"../helper.js";function useComputedValues(u,o,t,a,m=!1){const s=e((()=>u.reduce(((e,u)=>{const{key:m,rawValue:s,defaultValue:p}=u,f=r(s,o,t,a,p);return e[m]=f,e}),{})),[t,a,o,u]);return m?u.reduce(((e,{key:r})=>(e[r]=s[r],e)),{}):u.map((({key:e})=>s[e]))}export{useComputedValues};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useDataQuery as e}from"@vef-framework/hooks";import{isShallowEqual as a,isNumber as t,isArray as r}from"@vef-framework/shared";import{useRef as i}from"react";function useData({apiParams:o,...s},n,f){const h=i(),{data:m,isLoading:d,isFetching:p,isSuccess:l,refetch:c}=e({apiParams:n?{...f,page:a(h.current,o)?f.page:1,...o}:o,keepPreviousData:!0,staleTime:0,...s});if(h.current=o,l)if(n){if(!Object.hasOwn(m,"total")||!Object.hasOwn(m,"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(!t(m.total))throw new Error("The `total` property of the paginated data of VefTable is invalid. It must be a number.");if(!r(m.items))throw new Error("The `items` property of the paginated data of VefTable is invalid. It must be an array.")}else if(!r(m))throw new Error("The data of VefTable is invalid. It must be an array.");return{data:n?m?.items:m,isFetching:p,isLoading:d,total:n?m?.total:void 0,refetch:c}}export{useData};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useMemo as e}from"react";function useDefaultColumnConfigs(o){return e((()=>{const e=new Map;let t=1;for(const n of o){const{name:o,title:r,fixed:f,configurable:u}=n;e.set(o,{title:r??o,show:!0,fixed:f,order:t++,configurable:u??!0})}return e}),[o])}export{useDefaultColumnConfigs};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{isNullish as r,isFunction as e,isExpression as t,compileDynamicFn as u}from"@vef-framework/shared";import{useMemo as o}from"react";function useDisplayValue(f,a,i,n){const{defaultValue:s,formatter:l,prefix:p,suffix:m}=n,d=r(f)?s:f;return o((()=>{if(e(l))return l(f,a,i);if(t(l)){return u(l,"value","record","rowIndex",`return ${l.expression}`)(f,a,i)}return r(d)?void 0:`${p??""}${d}${m??""}`}),[l,d,p,m,f,a,i])}export{useDisplayValue};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o}from"@emotion/react/jsx-runtime";import{useAuthorizedItems as e}from"@vef-framework/hooks";import{isDeepEqual as t}from"@vef-framework/shared";import{useMemo as r}from"react";import n from"../components/columns-settings.js";import i from"../components/operation-buttons.js";import m from"../components/settings-icon.js";import{useOperationColumnWidth as s}from"./use-operation-column-width.js";function useHelperColumns({showRowNumber:p,operationButtons:u,maxVisibleOperationButtons:l,size:f}){const a=r((()=>{if(p)return{key:"_rowNumber",title:"#",align:"center",fixed:"left",width:48,shouldCellUpdate:()=>!1,render:(o,e,t)=>t+1}}),[p]),d=e(u??[]),c=s(d,l??3,f);return{rowNumberColumn:a,operationColumn:r((()=>{if(d&&d.length>0)return{key:"_operationButtons",title:"操作",align:"center",fixed:"right",filterIcon:()=>o(m,{}),filterDropdown:()=>o(n,{}),width:c,shouldCellUpdate:(o,e)=>!t(o,e),render:(e,t,r)=>o(i,{maxVisibleOperationButtons:l??3,operationButtons:d,record:t,rowIndex:r})}}),[d,l,c])}}export{useHelperColumns};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useThemeTokens as t}from"@vef-framework/hooks";import{max as e}from"@vef-framework/shared";import{useMemo as r}from"react";function useOperationColumnWidth(n,o,u="medium"){const{Button:a}=t(),l="large"===u?16:8,c=a?.contentFontSizeSM??16;return r((()=>{if(0===n.length)return 0;if(n.length>o){const t=new Set;for(let r=0;r<o;r++){const r=e(n,(e=>t.has(e)?0:e.label.length));r&&t.add(r)}return calculateButtonsWidth(Array.from(t),c,l,!0)}return calculateButtonsWidth(n,c,l,!1)}),[l,c,o,n])}function calculateButtonsWidth(t,e,r,n){const o=e+4;return t.map((t=>{const e=t.label.length*o+8;return t.icon?e+o+8:e})).reduce(((t,e)=>t+e),0)+(n?o+8:0)+2*r}export{useOperationColumnWidth};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useState as e,useMemo as a}from"react";import{defaultPageSizeOptions as i}from"../../vef-pagination/props.js";function usePaginationProps(n,r){const[o,p]=e({page:1,size:i[2]}),s=a((()=>{if(n)return(e,a)=>{p({page:e,size:a})}}),[n,p]);return{paginationProps:a((()=>{if(n)return{pageNumber:o.page,pageSize:o.size,size:"small"===r?"small":"medium",onChange:s}}),[s,n,o.page,o.size,r]),paginationParams:o}}export{usePaginationProps};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useMemo as o}from"react";function useRowProps({enableRowClick:e=!1,enableRowClickForSelection:n=!1,onRowClick:r,disabledSelection:l,handleRowClickSelection:i}){return o((()=>{if(e)return(o,e)=>{const t=l?.(o)??!1;return{style:{cursor:t?"not-allowed":"pointer"},onClick:t?void 0:()=>{n||r?.(o,e??-1),i?.(o)}}}}),[l,e,n,i,r])}export{useRowProps};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{isFunction as e}from"@vef-framework/shared";import{useMemo as o}from"react";import{useSelectedRows as t}from"./use-selected-rows.js";function useRowSelectionConfig({rowKey:l,selectedKeys:c,defaultSelectedKeys:n,selectable:s,enableRowClick:r,enableRowClickForSelection:i,multipleSelection:d=!0,showSelectAllCheckbox:f=!0,disabledSelection:u,onRowSelect:a,onRowDeselect:w,onRowSelectionChange:S}){const{selectedKeys:h,selectedRecords:R,onChange:C}=t({selectedKeys:c,defaultSelectedKeys:n,onRowSelectionChange:S}),p=o((()=>{if(r&&i)return o=>{const t=e(l)?l(o):o[l];if(h.includes(t)){if(!d)return;const c=h.filter((e=>e!==t)),n=R.current.filter((o=>(e(l)?l(o):o[l])!==t));C(c,n),w?.(t,o)}else{const e=[t];d&&e.push(...h);const l=[o];d&&l.push(...R.current),C(e,l),a?.(t,o)}}}),[r,i,d,C,w,a,l,h,R]);return{rowSelectionConfig:o((()=>{if(!s)return;return{fixed:!0,hideSelectAll:!f,preserveSelectedRowKeys:!1,selectedRowKeys:h,type:d?"checkbox":"radio",getCheckboxProps:e(u)?e=>({disabled:u(e)}):void 0,onChange:(e,o)=>{C(e,o)},onSelect:e(a)||e(w)?(o,t)=>{const c=e(l)?l(o):o[l];t?a?.(c,o):w?.(c,o)}:void 0}}),[s,f,h,d,u,a,w,C,l]),handleRowClickSelection:p,selectedKeys:h,selectedRecords:R}}export{useRowSelectionConfig};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useState as e,useRef as t,useCallback as c}from"react";function useSelectedRows({selectedKeys:o,defaultSelectedKeys:s,onRowSelectionChange:n}){const[r,d]=e(s??[]),l=o??r,u=t([]),a=c(((e,t)=>{o||d(e),u.current=t,n?.(e,t)}),[n,o]);return{selectedKeys:l,selectedRecords:u,onChange:a}}export{useSelectedRows};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{isNumber as o,isDeepEqual as r}from"@vef-framework/shared";import{useMemo as t}from"react";import{columnComponents as n}from"../components/columns/index.js";function useTableColumns(m,s,a){return t((()=>{const t=[],i=m.map((t=>{const{title:m,show:s,sort:a,fixed:i,dependentColumnNames:d,...u}=t,l=o(a)?{multiple:a}:!!a||void 0,p=n[t.type];return{key:u.name,dataIndex:u.name,title:m||u.name,fixed:i,hidden:!(s??1),sorter:l,align:u.align,width:u.width,shouldCellUpdate:(e,o)=>!r(d.map((o=>e[o])),d.map((e=>o[e]))),render:(o,r,t)=>e(p,{columnProps:u,record:r,rowIndex:t,value:o})}}));return s&&t.push(s),t.push(...i),a&&t.push(a),t}),[m,s,a])}export{useTableColumns};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{createSelectableContext as e,noop as o}from"@vef-framework/shared";const{useContextSelector:n,useContext:t,ContextProvider:r}=e({isFetching:!1,refetch:()=>Promise.resolve({}),selectedKeys:[],selectedRecords:[],defaultColumnConfigMap:new Map,columnConfigMap:new Map,setColumnConfigMap:o,columnConfigMapHasChanged:!1}),s=n,a=t;export{r as TableContextProvider,a as useTableContext,s as useTableContextSelector};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useRef as e,useImperativeHandle as t}from"react";function useTableInstance(a,n,c){const r=e(null);return t(a,(()=>({getData:()=>n,refetch:async()=>{await c()}}))),r}export{useTableInstance};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! 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};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as m}from"@emotion/react/jsx-runtime";import{isFunction as r}from"@vef-framework/shared";import{Table as a}from"antd";import{useMemo as e}from"react";const{Summary:n}=a,{Row:o,Cell:t}=n;function useTableSummary(a){const u=e((()=>a.filter((m=>r(m.summary))).map((m=>{const{name:r,summary:a,summaryColSpan:e}=m;return{name:r,summary:a,summaryColSpan:e??1}}))),[a]);return e((()=>{if(0!==u.length)return r=>m(n,{fixed:"bottom",children:m(o,{children:u.map((({name:a,summary:e,summaryColSpan:n},o)=>m(t,{colSpan:n,index:o,children:e(r)},a)))})})}),[u])}export{useTableSummary};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx}from"@emotion/react/jsx-runtime";import{isFunction}from"@vef-framework/shared";import{Table}from"antd";import{useMemo}from"react";const{Summary}=Table,{Row,Cell}=Summary;function useTableSummary(columns){const summaryColumns=useMemo(()=>columns.filter(column=>isFunction(column.summary)).map(column=>{const{name,summary,summaryColSpan}=column;return{name,summary,summaryColSpan:summaryColSpan??1}}),[columns]);return useMemo(()=>{if(summaryColumns.length!==0)return records=>jsx(Summary,{fixed:"bottom",children:jsx(Row,{children:summaryColumns.map(({name,summary,summaryColSpan},index)=>jsx(Cell,{colSpan:summaryColSpan,index,children:summary(records)},name))})})},[summaryColumns])}/*! 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{useTableSummary};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useMemo as e}from"react";function useTableWidth(t,r){return e((()=>{const e=t.filter((e=>!0!==e.hidden)).map((e=>e.width??e.minWidth??160)).reduce(((e,t)=>e+t),0);return r?e+40:e}),[t,r])}export{useTableWidth};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{useMemo}from"react";const defaultColumnWidth=160,selectionColumnWidth=40;function useTableWidth(columns,selectable){return useMemo(()=>{const width=columns.filter(column=>column.hidden!==!0).map(column=>column.width??column.minWidth??defaultColumnWidth).reduce((acc,w)=>acc+w,0);return selectable?width+selectionColumnWidth:width},[columns,selectable])}/*! 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{useTableWidth};
|
package/es/vef-table/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{css as o}from"@emotion/react";import{themeVariables as t,isDeepEqual as n,isNumber as l}from"@vef-framework/shared";import{Table as i}from"antd";import{useMemo as r,useState as a,useDeferredValue as s,forwardRef as c,memo as m}from"react";import"../internal/index.js";import u from"./components/table-footer.js";import{useComputedBatchActionButtons as f}from"./hooks/use-computed-batch-buttons.js";import{useComputedColumns as p}from"./hooks/use-computed-columns.js";import{useData as d}from"./hooks/use-data.js";import{useDefaultColumnConfigs as h}from"./hooks/use-default-column-configs.js";import{useHelperColumns as b}from"./hooks/use-helper-columns.js";import{usePaginationProps as w}from"./hooks/use-pagination-props.js";import{useRowProps as g}from"./hooks/use-row-props.js";import{useRowSelectionConfig as C}from"./hooks/use-row-selection-config.js";import{useTableColumns as k}from"./hooks/use-table-columns.js";import{TableContextProvider as x}from"./hooks/use-table-context.js";import{useTableInstance as S}from"./hooks/use-table-instance.js";import{useTableSummary as y}from"./hooks/use-table-summary.js";import{useTableWidth as R}from"./hooks/use-table-width.js";import{convertBasicSizeToUiSize as j}from"../internal/utils.js";const v=o`
|
|
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{css}from"@emotion/react";import{themeVariables,isDeepEqual,isNumber}from"@vef-framework/shared";import{Table}from"antd";import{useMemo,useState,useDeferredValue,forwardRef,memo}from"react";import"../internal/index.js";import VefTableFooter from"./components/table-footer.js";import{useComputedBatchActionButtons}from"./hooks/use-computed-batch-buttons.js";import{useComputedColumns}from"./hooks/use-computed-columns.js";import{useData}from"./hooks/use-data.js";import{useDefaultColumnConfigs}from"./hooks/use-default-column-configs.js";import{useHelperColumns}from"./hooks/use-helper-columns.js";import{usePaginationProps}from"./hooks/use-pagination-props.js";import{useRowProps}from"./hooks/use-row-props.js";import{useRowSelectionConfig}from"./hooks/use-row-selection-config.js";import{useTableColumns}from"./hooks/use-table-columns.js";import{TableContextProvider}from"./hooks/use-table-context.js";import{useTableInstance}from"./hooks/use-table-instance.js";import{useTableSummary}from"./hooks/use-table-summary.js";import{useTableWidth}from"./hooks/use-table-width.js";import{convertBasicSizeToUiSize}from"../internal/utils.js";const DEFAULT_ROW_KEY="id",autoHeightTableStyle=css`
|
|
3
2
|
height: 100%;
|
|
4
3
|
|
|
5
4
|
> .vef-spin-nested-loading {
|
|
@@ -33,12 +32,12 @@ import{jsx as e}from"@emotion/react/jsx-runtime";import{css as o}from"@emotion/r
|
|
|
33
32
|
|
|
34
33
|
> .vef-table-title {
|
|
35
34
|
flex-shrink: 0;
|
|
36
|
-
padding: ${
|
|
35
|
+
padding: ${themeVariables.paddingSm};
|
|
37
36
|
}
|
|
38
37
|
|
|
39
38
|
> .vef-table-footer {
|
|
40
39
|
flex-shrink: 0;
|
|
41
|
-
padding: ${
|
|
40
|
+
padding: ${themeVariables.paddingXs}
|
|
42
41
|
}
|
|
43
42
|
|
|
44
43
|
&.vef-table-empty > .vef-table-container > .vef-table-body > table {
|
|
@@ -47,10 +46,9 @@ import{jsx as e}from"@emotion/react/jsx-runtime";import{css as o}from"@emotion/r
|
|
|
47
46
|
}
|
|
48
47
|
}
|
|
49
48
|
}
|
|
50
|
-
`,
|
|
49
|
+
`,unlimitedHeightTableStyle=css`
|
|
51
50
|
.vef-table-content {
|
|
52
51
|
scrollbar-width: thin;
|
|
53
52
|
scrollbar-color: rgba(0, 0, 0, 0.3) transparent;
|
|
54
53
|
}
|
|
55
|
-
`;
|
|
56
|
-
/*! 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 */
|
|
54
|
+
`;function VefTableBase({columns,defaultColumnConfigMap,rowNumberColumn,operationColumn,bordered=!1,size="medium",rowKey=DEFAULT_ROW_KEY,height,virtual=!1,selectedKeys,defaultSelectedKeys,selectable=!1,multipleSelection,showSelectAllCheckbox,disabledSelection,enableRowClick,enableRowClickForSelection,rowBackgroundColor,batchActionButtons,selectionSummary,externalContext,onRowSelectionChange,onRowSelect,onRowDeselect,onRowClick,...restProps},ref){const{paginated=!1,...queryConfig}=restProps,{paginationProps,paginationParams}=usePaginationProps(paginated,size),{data,isFetching,isLoading,total,refetch}=useData(queryConfig,paginated,paginationParams),mergedPaginationProps=useMemo(()=>({...paginationProps,total}),[paginationProps,total]),[columnConfigMap,setColumnConfigMap]=useState(()=>new Map(defaultColumnConfigMap)),deferredColumnConfigMap=useDeferredValue(columnConfigMap),computedColumns=useComputedColumns(columns,deferredColumnConfigMap),{rowSelectionConfig,handleRowClickSelection,selectedKeys:selectedKeysToUse,selectedRecords}=useRowSelectionConfig({selectedKeys,defaultSelectedKeys,selectable,multipleSelection,disabledSelection,enableRowClick,enableRowClickForSelection,onRowSelect,onRowDeselect,onRowSelectionChange,rowKey}),onRow=useRowProps({enableRowClick,enableRowClickForSelection,onRowClick,disabledSelection,handleRowClickSelection}),tableContext=useMemo(()=>({externalContext,isFetching,refetch,selectedKeys:selectedKeysToUse,selectedRecords:selectedRecords.current,defaultColumnConfigMap,columnConfigMap,setColumnConfigMap,columnConfigMapHasChanged:!isDeepEqual(defaultColumnConfigMap,columnConfigMap)}),[externalContext,isFetching,refetch,selectedKeysToUse,selectedRecords,defaultColumnConfigMap,columnConfigMap]),columnsToUse=useTableColumns(computedColumns,rowNumberColumn,operationColumn),tableWidth=useTableWidth(columnsToUse,selectable),scrollConfig=useMemo(()=>({x:tableWidth,y:height==="auto"?"auto":height,scrollToFirstRowOnChange:!0}),[height,tableWidth]),tableRef=useTableInstance(ref,data??[],refetch),tableSummary=useTableSummary(computedColumns),{computedBatchActionButtons,batchActionButtonContext}=useComputedBatchActionButtons(batchActionButtons??[],tableContext),footer=useMemo(()=>{if(isLoading||data?.length===0||!paginated&&selectionSummary===!1&&computedBatchActionButtons.length===0)return;const footerNode=jsx(VefTableFooter,{batchActionButtonContext,batchActionButtons:computedBatchActionButtons,paginationProps:mergedPaginationProps,selectionSummary,size});return()=>footerNode},[batchActionButtonContext,computedBatchActionButtons,data?.length,isLoading,mergedPaginationProps,paginated,selectionSummary,size]);return jsx(TableContextProvider,{value:tableContext,children:jsx(Table,{ref:tableRef,bordered,columns:columnsToUse,css:height==="auto"?autoHeightTableStyle:unlimitedHeightTableStyle,dataSource:data,footer,loading:isFetching,pagination:!1,rowKey,rowSelection:rowSelectionConfig,scroll:scrollConfig,size:convertBasicSizeToUiSize(size),summary:tableSummary,tableLayout:"fixed",virtual:isNumber(height)&&height>0&&virtual,onRow})})}const VefTableBaseForwarded=forwardRef(VefTableBase);VefTableBaseForwarded.displayName="VefTableBase";function VefTableWrapper({schema,showRowNumber,operationButtons,maxVisibleOperationButtons,...restProps},ref){const{size}=restProps,showedColumns=useMemo(()=>schema.filter(column=>column.show??!0).map(column=>({...column,dependentColumnNames:[...new Set([column.name,...column.dependentColumnNames??[]])]})),[schema]);if(showedColumns.length===0)throw new Error("The showed columns of VefTable component cannot be empty");const defaultColumnConfigMap=useDefaultColumnConfigs(showedColumns),{rowNumberColumn,operationColumn}=useHelperColumns({showRowNumber,operationButtons,maxVisibleOperationButtons,size});return jsx(VefTableBaseForwarded,{ref,columns:showedColumns,defaultColumnConfigMap,operationColumn,rowNumberColumn,...restProps})}const VefTable=memo(forwardRef(VefTableWrapper),isDeepEqual);VefTable.displayName="VefTable";/*! 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{VefTable as default};
|
package/es/vef-table/store.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{createComponentStore as e}from"@vef-framework/shared";const{StoreProvider:o,useStore:r,useStoreApi:a}=e("Table",(e=>o=>({changeSize:e=>o({size:e}),columnConfigMap:new Map,...e})));export{o as TableStoreProvider,r as useTableStore,a as useTableStoreApi};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{createComponentStore}from"@vef-framework/shared";const{StoreProvider:TableStoreProvider,useStore:useTableStore,useStoreApi:useTableStoreApi}=createComponentStore("Table",initialState=>set=>({changeSize:size=>set({size}),columnConfigMap:new Map,...initialState}));/*! 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{TableStoreProvider,useTableStore,useTableStoreApi};
|
package/es/vef-tabs/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import{Tabs as e}from"antd";import"../internal/index.js";import{convertBasicSizeToUiSize as i}from"../internal/utils.js";const n={inkBar:!0,tabPane:!0};function VefTabs({size:r,...a}){return t(e,{animated:n,size:i(r),...a})}export{VefTabs as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{Tabs}from"antd";import"../internal/index.js";import{convertBasicSizeToUiSize}from"../internal/utils.js";const animatedConfig={inkBar:!0,tabPane:!0};function VefTabs({size,...props}){return jsx(Tabs,{animated:animatedConfig,size:convertBasicSizeToUiSize(size),...props})}/*! 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{VefTabs as default};
|
package/es/vef-tag/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o}from"@emotion/react/jsx-runtime";import{Tag as r}from"antd";import{useMemo as e}from"react";function VefTag({closable:t=!1,color:n,inverse:c=!1,...i}){const a=e((()=>c?`${n}-inverse`:n),[n,c]);return o(r,{closeIcon:t?null:void 0,color:a,...i})}export{VefTag as default};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{Tag}from"antd";import{useMemo}from"react";function VefTag({closable=!1,color,inverse=!1,...restProps}){const colorToUse=useMemo(()=>inverse?`${color}-inverse`:color,[color,inverse]);return jsx(Tag,{closeIcon:closable?null:void 0,color:colorToUse,...restProps})}/*! 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{VefTag as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
const Y=["YYYY"],M=["YYYY-Q季度"],m=["YYYY-MM","YYYY/MM","YYYY.MM","YYYYMM"],D=["YYYY-wo"],H=["YYYY-MM-DD","YYYY/MM/DD","YYYY.MM.DD","YYYYMMDD","YY/MM/DD","YY.MM.DD","YYMMDD"],s=["HH:mm:ss","HH.mm.ss","HHmmss"],e=["HH"],t=["HH:mm","HH.mm","HHmm"],r=["YYYY-MM-DD HH:mm:ss","YYYY/MM/DD HH:mm:ss","YYYY.MM.DD HH.mm.ss","YYYYMMDDHHmmss","YY/MM/DD HH:mm:ss","YY.MM.DD HH:mm:ss","YY.MM.DD HH.mm.ss","YYMMDDHHmmss"];function getTemporalFormats(o){return"year"===o?Y:"quarter"===o?M:"month"===o?m:"week"===o?D:"datetime"===o?r:"date"===o?H:"time"===o?s:"hour"===o?e:"minute"===o?t:[]}export{getTemporalFormats};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */const yearFormats=["YYYY"],quarterFormats=["YYYY-Q季度"],monthFormats=["YYYY-MM","YYYY/MM","YYYY.MM","YYYYMM"],weekFormats=["YYYY-wo"],dateFormats=["YYYY-MM-DD","YYYY/MM/DD","YYYY.MM.DD","YYYYMMDD","YY/MM/DD","YY.MM.DD","YYMMDD"],timeFormats=["HH:mm:ss","HH.mm.ss","HHmmss"],hourFormats=["HH"],minuteFormats=["HH:mm","HH.mm","HHmm"],datetimeFormats=["YYYY-MM-DD HH:mm:ss","YYYY/MM/DD HH:mm:ss","YYYY.MM.DD HH.mm.ss","YYYYMMDDHHmmss","YY/MM/DD HH:mm:ss","YY.MM.DD HH:mm:ss","YY.MM.DD HH.mm.ss","YYMMDDHHmmss"];function getTemporalFormats(mode){return mode==="year"?yearFormats:mode==="quarter"?quarterFormats:mode==="month"?monthFormats:mode==="week"?weekFormats:mode==="datetime"?datetimeFormats:mode==="date"?dateFormats:mode==="time"?timeFormats:mode==="hour"?hourFormats:mode==="minute"?minuteFormats:[]}/*! 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{getTemporalFormats};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{isNullish as r,isArray as e}from"@vef-framework/shared";import a from"dayjs";import{useMemo as o}from"react";function useDayjsValue(m,t){return o((()=>r(m)?m:e(m)?m.map((r=>a(r,t))):a(m,t)),[m,t])}export{useDayjsValue};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{isNullish,isArray}from"@vef-framework/shared";import dayjs from"dayjs";import{useMemo}from"react";function useDayjsValue(value,formats){return useMemo(()=>isNullish(value)?value:isArray(value)?value.map(it=>dayjs(it,formats)):dayjs(value,formats),[value,formats])}/*! 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{useDayjsValue};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{isFunction as e}from"@vef-framework/shared";import a from"dayjs";import{useMemo as t}from"react";function useTemporalLimit({maxDate:i,minDate:r,disabledDate:m,disabledTime:o}){const[d,l]=t((()=>[r?a(r):void 0,i?a(i):void 0]),[r,i]);return{minDateValue:d,maxDateValue:l,disabledTimeValue:t((()=>{if(e(o))return e=>o(e.toDate())}),[o]),disabledDateValue:t((()=>{if(e(m))return(e,{from:a})=>m(e.toDate(),a?.toDate())}),[m])}}export{useTemporalLimit};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{isFunction}from"@vef-framework/shared";import dayjs from"dayjs";import{useMemo}from"react";function useTemporalLimit({maxDate,minDate,disabledDate,disabledTime}){const[minDateValue,maxDateValue]=useMemo(()=>[minDate?dayjs(minDate):void 0,maxDate?dayjs(maxDate):void 0],[minDate,maxDate]),disabledTimeValue=useMemo(()=>{if(isFunction(disabledTime))return now=>disabledTime(now.toDate())},[disabledTime]),disabledDateValue=useMemo(()=>{if(isFunction(disabledDate))return(now,{from})=>disabledDate(now.toDate(),from?.toDate())},[disabledDate]);return{minDateValue,maxDateValue,disabledTimeValue,disabledDateValue}}/*! 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{useTemporalLimit};
|