@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
package/es/vef-checkbox/index.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
`,children:e(s,{})});const u=a(d((function VefCheckboxBase({defaultValue:o,value:r,disabled:a,renderCheckboxes:d,onChange:s,...u},h){const{optionsMap:v,normalizedOptions:b,isLoading:g}=c({value:r,onChange:s,...u}),x=m(h,b),k=n((()=>{if(t(s))return e=>{s(e,e.map((e=>v.get(e))))}}),[s,v]),C=n((()=>{if(g)return;const o=b.map((o=>{const{value:r,label:t,disabled:n,description:a}=o;return a?e(l,{content:a,children:e(i,{disabled:n,value:r,children:t})},r):e(i,{disabled:n,value:r,children:t},r)}));return t(d)?d(o):o}),[g,b,d]);return g?p:e(f,{ref:x,defaultValue:o,disabled:a,onChange:k,...void 0===r?{}:{value:r},children:C})})));u.displayName="VefCheckbox";export{u 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,isFunction}from"@vef-framework/shared";import{Checkbox}from"antd";import{useMemo,memo,forwardRef}from"react";import VefLoadingPlaceholder from"../vef-loading-placeholder/index.js";import VefTooltip from"../vef-tooltip/index.js";import{useCheckboxInstance}from"./hooks/use-checkbox-instance.js";import{useDataOptions}from"./hooks/use-data-options.js";const{Group}=Checkbox,loadingPlaceholder=jsx("div",{css:css`
|
|
2
|
+
height: ${themeVariables.controlHeight}
|
|
3
|
+
`,children:jsx(VefLoadingPlaceholder,{})});function VefCheckboxBase({defaultValue,value,disabled,renderCheckboxes,onChange,...restProps},ref){const{optionsMap,normalizedOptions,isLoading}=useDataOptions({value,onChange,...restProps}),checkboxRef=useCheckboxInstance(ref,normalizedOptions),handleChange=useMemo(()=>{if(isFunction(onChange))return value2=>{onChange(value2,value2.map(option=>optionsMap.get(option)))}},[onChange,optionsMap]),content=useMemo(()=>{if(isLoading)return;const checkboxes=normalizedOptions.map(option=>{const{value:value2,label,disabled:disabled2,description}=option;return description?jsx(VefTooltip,{content:description,children:jsx(Checkbox,{disabled:disabled2,value:value2,children:label})},value2):jsx(Checkbox,{disabled:disabled2,value:value2,children:label},value2)});return isFunction(renderCheckboxes)?renderCheckboxes(checkboxes):checkboxes},[isLoading,normalizedOptions,renderCheckboxes]);return isLoading?loadingPlaceholder:jsx(Group,{ref:checkboxRef,defaultValue,disabled,onChange:handleChange,...value===void 0?{}:{value},children:content})}const VefCheckbox=memo(forwardRef(VefCheckboxBase));VefCheckbox.displayName="VefCheckbox";/*! 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{VefCheckbox as default};
|
package/es/vef-col/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o}from"@emotion/react/jsx-runtime";import{Col as t}from"antd";function VefCol({...r}){return o(t,{...r})}export{VefCol 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{Col}from"antd";function VefCol({...props}){return jsx(Col,{...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{VefCol as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{isFunction as r}from"@vef-framework/shared";import{ColorPicker as o}from"antd";import{useMemo as t}from"react";import"../internal/index.js";import{convertBasicSizeToUiSize as a}from"../internal/utils.js";const i=["single","gradient"];function VefColorPicker({clearable:l,disabled:n,format:m,size:s,showText:f,trigger:d,defaultValue:u,value:g,onChange:c}){const p=t((()=>{if(r(c))return e=>{c(e.toCssString(),e)}}),[c]);return e(o,{allowClear:l,arrow:!1,defaultValue:u,disabled:n,format:m,mode:i,showText:f,size:a(s),trigger:d,value:g,onChangeComplete:p})}export{VefColorPicker 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{isFunction}from"@vef-framework/shared";import{ColorPicker}from"antd";import{useMemo}from"react";import"../internal/index.js";import{convertBasicSizeToUiSize}from"../internal/utils.js";const mode=["single","gradient"];function VefColorPicker({clearable,disabled,format,size,showText,trigger,defaultValue,value,onChange}){const handleChange=useMemo(()=>{if(isFunction(onChange))return color=>{onChange(color.toCssString(),color)}},[onChange]);return jsx(ColorPicker,{allowClear:clearable,arrow:!1,defaultValue,disabled,format,mode,showText,size:convertBasicSizeToUiSize(size),trigger,value,onChangeComplete:handleChange})}/*! 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{VefColorPicker as default};
|
package/es/vef-compact/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import{Space as o}from"antd";import"../internal/index.js";import{convertBasicSizeToUiSize as r}from"../internal/utils.js";const{Compact:e}=o;function VefCompact({size:o,...i}){return t(e,{size:r(o),...i})}export{VefCompact 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{Space}from"antd";import"../internal/index.js";import{convertBasicSizeToUiSize}from"../internal/utils.js";const{Compact}=Space;function VefCompact({size,...restProps}){return jsx(Compact,{size:convertBasicSizeToUiSize(size),...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{VefCompact as default};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
|
|
3
|
-
${r}
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{css}from"@emotion/react";import{themeVariables}from"@vef-framework/shared";import normalizedStyle from"../internal/modern-normalize.css.js";const globalStyle=css`
|
|
2
|
+
${normalizedStyle}
|
|
4
3
|
|
|
5
4
|
html, body, #root, .vef-app {
|
|
6
5
|
height: 100%;
|
|
@@ -19,14 +18,14 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
19
18
|
.vef-message-notice-wrapper {
|
|
20
19
|
.vef-message-custom-content {
|
|
21
20
|
.vef-icon {
|
|
22
|
-
font-size: ${
|
|
21
|
+
font-size: ${themeVariables.fontSizeXl};
|
|
23
22
|
}
|
|
24
23
|
}
|
|
25
24
|
}
|
|
26
25
|
}
|
|
27
26
|
|
|
28
27
|
.vef-modal {
|
|
29
|
-
--vef-modal-confirm-icon-margin-inline-end: ${
|
|
28
|
+
--vef-modal-confirm-icon-margin-inline-end: ${themeVariables.paddingSm};
|
|
30
29
|
|
|
31
30
|
.vef-modal-confirm-body-wrapper {
|
|
32
31
|
.vef-modal-confirm-btns {
|
|
@@ -50,8 +49,8 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
50
49
|
.vef-popconfirm-message {
|
|
51
50
|
> .vef-popconfirm-message-icon {
|
|
52
51
|
.vef-icon {
|
|
53
|
-
color: ${
|
|
54
|
-
font-size: ${
|
|
52
|
+
color: ${themeVariables.colorPrimary};
|
|
53
|
+
font-size: ${themeVariables.fontSizeLg};
|
|
55
54
|
}
|
|
56
55
|
}
|
|
57
56
|
}
|
|
@@ -74,7 +73,7 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
74
73
|
display: flex;
|
|
75
74
|
justify-content: flex-end;
|
|
76
75
|
align-items: center;
|
|
77
|
-
gap: ${
|
|
76
|
+
gap: ${themeVariables.padding};
|
|
78
77
|
|
|
79
78
|
.vef-btn + .vef-btn {
|
|
80
79
|
margin-inline-start: 0;
|
|
@@ -92,19 +91,19 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
92
91
|
.vef-dropdown {
|
|
93
92
|
.vef-dropdown-menu {
|
|
94
93
|
.vef-dropdown-menu-item-icon {
|
|
95
|
-
font-size: ${
|
|
96
|
-
min-width: ${
|
|
94
|
+
font-size: ${themeVariables.fontSize};
|
|
95
|
+
min-width: ${themeVariables.fontSizeLg};
|
|
97
96
|
}
|
|
98
97
|
}
|
|
99
98
|
}
|
|
100
|
-
`,
|
|
99
|
+
`,nprogressStyle=css`
|
|
101
100
|
/* Make clicks pass-through */
|
|
102
101
|
#nprogress {
|
|
103
102
|
pointer-events: none;
|
|
104
103
|
}
|
|
105
104
|
|
|
106
105
|
#nprogress .bar {
|
|
107
|
-
background: ${
|
|
106
|
+
background: ${themeVariables.colorPrimary};
|
|
108
107
|
|
|
109
108
|
position: fixed;
|
|
110
109
|
z-index: 1031;
|
|
@@ -122,7 +121,7 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
122
121
|
right: 0;
|
|
123
122
|
width: 100px;
|
|
124
123
|
height: 100%;
|
|
125
|
-
box-shadow: 0 0 10px ${
|
|
124
|
+
box-shadow: 0 0 10px ${themeVariables.colorPrimary}, 0 0 5px ${themeVariables.colorPrimary};
|
|
126
125
|
opacity: 1.0;
|
|
127
126
|
|
|
128
127
|
-webkit-transform: rotate(3deg) translate(0, -4px);
|
|
@@ -145,8 +144,8 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
145
144
|
box-sizing: border-box;
|
|
146
145
|
|
|
147
146
|
border: solid 2px transparent;
|
|
148
|
-
border-top-color: ${
|
|
149
|
-
border-left-color: ${
|
|
147
|
+
border-top-color: ${themeVariables.colorPrimary};
|
|
148
|
+
border-left-color: ${themeVariables.colorPrimary};
|
|
150
149
|
border-radius: 50%;
|
|
151
150
|
|
|
152
151
|
-webkit-animation: nprogress-spinner 400ms linear infinite;
|
|
@@ -171,5 +170,4 @@ import{css as e}from"@emotion/react";import{themeVariables as o}from"@vef-framew
|
|
|
171
170
|
0% { transform: rotate(0deg); }
|
|
172
171
|
100% { transform: rotate(360deg); }
|
|
173
172
|
}
|
|
174
|
-
|
|
175
|
-
/*! 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 */
|
|
173
|
+
`;/*! 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{globalStyle,nprogressStyle};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useDeepMemo as e}from"@vef-framework/hooks";import{isValidColor as o,assign as r}from"@vef-framework/shared";import{theme as t}from"antd";import i from"antd/locale/zh_CN";import n from"dayjs";import f from"dayjs/locale/zh-cn";n.locale(f);const l={blue:"#3b82f6",purple:"#8b5cf6",cyan:"#06b6d4",green:"#22c55e",pink:"#ec4899",red:"#ef4444",orange:"#f97316",yellow:"#eab308",volcano:"#f43f5e",lime:"#84cc16",gold:"#fbbf24",geekblue:"#6366f1",magenta:"#eb2f96"},a={medium:{fontSize:14,controlHeight:32},large:{fontSize:16,controlHeight:36}},c={medium:{Button:{contentFontSizeSM:12}},large:{Button:{contentFontSizeSM:14},Menu:{itemHeight:50}}};function useUiConfig(n){return e((()=>function generateUiConfig({primaryColor:e="#0064fa",fontSize:n="medium"}){if(!Reflect.has(l,e)&&!o(e))throw new Error(`Invalid primary color: ${e}`);if(!(n in a))throw new Error(`Invalid font size: ${n}`);const f=a[n],m=c[n];return{messageFoldThreshold:1,messageDuration:3,notificationFoldThreshold:3,notificationDuration:5,locale:Reflect.has(i,"default")?Reflect.get(i,"default"):i,iconPrefixCls:"vef-icon",prefixCls:"vef",virtual:!0,componentSize:"middle",variant:"outlined",theme:{cssVar:{prefix:"vef"},hashed:!1,algorithm:t.defaultAlgorithm,token:{borderRadius:6,colorBgBase:"#ffffff",colorPrimary:Reflect.has(l,e)?l[e]:e,colorInfo:"#0ea5e9",colorSuccess:"#22c55e",colorWarning:"#f97316",colorError:"#ef4444",colorLink:"#6366f1",colorTextBase:"#171717",colorBgLayout:"#f5f6fb",colorBgSpotlight:"rgba(23, 23, 23, 0.8)",zIndexPopupBase:10,wireframe:!0,...f,...l},components:r({Table:{},Tooltip:{paddingSM:16,paddingXS:12},Button:{},TreeSelect:{titleHeight:f.controlHeight},Spin:{contentHeight:"auto"}},m)}}}(n)),[n])}export{useUiConfig};
|
|
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{isValidColor,assign}from"@vef-framework/shared";import{theme}from"antd";import locale from"antd/locale/zh_CN";import dayjs from"dayjs";import dayjsLocale from"dayjs/locale/zh-cn";dayjs.locale(dayjsLocale);const colorMap={blue:"#3b82f6",purple:"#8b5cf6",cyan:"#06b6d4",green:"#22c55e",pink:"#ec4899",red:"#ef4444",orange:"#f97316",yellow:"#eab308",volcano:"#f43f5e",lime:"#84cc16",gold:"#fbbf24",geekblue:"#6366f1",magenta:"#eb2f96"},fontSizeConfigMap={medium:{fontSize:14,controlHeight:32},large:{fontSize:16,controlHeight:36}},fontSizeComponentsConfigMap={medium:{Button:{contentFontSizeSM:12}},large:{Button:{contentFontSizeSM:14},Menu:{itemHeight:50}}};function generateUiConfig({primaryColor="#0064fa",fontSize="medium"}){if(!Reflect.has(colorMap,primaryColor)&&!isValidColor(primaryColor))throw new Error(`Invalid primary color: ${primaryColor}`);if(!(fontSize in fontSizeConfigMap))throw new Error(`Invalid font size: ${fontSize}`);const fontSizeConfig=fontSizeConfigMap[fontSize],componentsConfig=fontSizeComponentsConfigMap[fontSize];return{messageFoldThreshold:1,messageDuration:3,notificationFoldThreshold:3,notificationDuration:5,locale:Reflect.has(locale,"default")?Reflect.get(locale,"default"):locale,iconPrefixCls:"vef-icon",prefixCls:"vef",virtual:!0,componentSize:"middle",variant:"outlined",theme:{cssVar:{prefix:"vef"},hashed:!1,algorithm:theme.defaultAlgorithm,token:{borderRadius:6,colorBgBase:"#ffffff",colorPrimary:Reflect.has(colorMap,primaryColor)?colorMap[primaryColor]:primaryColor,colorInfo:"#0ea5e9",colorSuccess:"#22c55e",colorWarning:"#f97316",colorError:"#ef4444",colorLink:"#6366f1",colorTextBase:"#171717",colorBgLayout:"#f5f6fb",colorBgSpotlight:"rgba(23, 23, 23, 0.8)",zIndexPopupBase:10,wireframe:!0,...fontSizeConfig,...colorMap},components:assign({Table:{},Tooltip:{paddingSM:16,paddingXS:12},Button:{},TreeSelect:{titleHeight:fontSizeConfig.controlHeight},Spin:{contentHeight:"auto"}},componentsConfig)}}}function useUiConfig(config){return useDeepMemo(()=>generateUiConfig(config),[config])}/*! 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{useUiConfig};
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o,jsxs as e}from"@emotion/react/jsx-runtime";import r from"@emotion/cache";import{CacheProvider as t,Global as i,css as n}from"@emotion/react";import{AuthContextProvider as a,ApiContextProvider as m}from"@vef-framework/core";import{ConfigProvider as c,App as s}from"antd";import{useLayoutEffect as l}from"react";import{ErrorBoundary as d}from"react-error-boundary";import p from"../vef-error/index.js";import{globalStyle as f,nprogressStyle as h}from"./global-style.js";import{useUiConfig as u}from"./hooks/use-ui-config.js";import{useConfigStore as g,ConfigStoreProvider as C}from"./store.js";function UiConfigProvider({children:e}){const r=g((o=>o)),t=u(r);l((()=>{const{messageFoldThreshold:e,messageDuration:r,notificationFoldThreshold:i,notificationDuration:n,...a}=t;c.config({holderRender:t=>o(c,{...a,children:o(s,{component:"div",message:{maxCount:e,duration:r},notification:{maxCount:i,duration:n,showProgress:!0,pauseOnHover:!0,placement:"topRight",stack:{threshold:3}},children:t})})}),document.documentElement.style.setProperty("--vef-color-primary",t.theme?.token?.colorPrimary??null)}),[t]);const{messageFoldThreshold:i,messageDuration:n,notificationDuration:a,...m}=t;return o(c,{...m,children:o(s,{component:"div",message:{maxCount:i,duration:n},notification:{maxCount:i,duration:a,showProgress:!0,pauseOnHover:!0,placement:"topRight",stack:{threshold:3}},children:e})})}function FallbackComponent({error:e,resetErrorBoundary:r}){return o(p,{error:e,reset:r})}const v=r({key:"vef"});function VefConfigProvider({apiClient:r,dataDictionaryApi:c,loginApi:s,logoutApi:l,fetchAuthenticatedUserApi:p,permissionChecker:u,children:g,...k}){return o(a,{permissionChecker:u,children:o(m,{client:r,dataDictionaryApi:c,fetchAuthenticatedUserApi:p,loginApi:s,logoutApi:l,children:o(C,{initialState:k,children:e(t,{value:v,children:[o(i,{styles:[f,h,n`
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx,jsxs}from"@emotion/react/jsx-runtime";import createCache from"@emotion/cache";import{CacheProvider,Global,css}from"@emotion/react";import{AuthContextProvider,ApiContextProvider}from"@vef-framework/core";import{ConfigProvider,App}from"antd";import{useLayoutEffect}from"react";import{ErrorBoundary}from"react-error-boundary";import VefError from"../vef-error/index.js";import{globalStyle,nprogressStyle}from"./global-style.js";import{useUiConfig}from"./hooks/use-ui-config.js";import{useConfigStore,ConfigStoreProvider}from"./store.js";function UiConfigProvider({children}){const config=useConfigStore(state=>state),uiConfig=useUiConfig(config);useLayoutEffect(()=>{const{messageFoldThreshold:messageFoldThreshold2,messageDuration:messageDuration2,notificationFoldThreshold,notificationDuration:notificationDuration2,...restConfig2}=uiConfig;ConfigProvider.config({holderRender:children2=>jsx(ConfigProvider,{...restConfig2,children:jsx(App,{component:"div",message:{maxCount:messageFoldThreshold2,duration:messageDuration2},notification:{maxCount:notificationFoldThreshold,duration:notificationDuration2,showProgress:!0,pauseOnHover:!0,placement:"topRight",stack:{threshold:3}},children:children2})})}),document.documentElement.style.setProperty("--vef-color-primary",uiConfig.theme?.token?.colorPrimary??null)},[uiConfig]);const{messageFoldThreshold,messageDuration,notificationDuration,...restConfig}=uiConfig;return jsx(ConfigProvider,{...restConfig,children:jsx(App,{component:"div",message:{maxCount:messageFoldThreshold,duration:messageDuration},notification:{maxCount:messageFoldThreshold,duration:notificationDuration,showProgress:!0,pauseOnHover:!0,placement:"topRight",stack:{threshold:3}},children})})}function FallbackComponent({error,resetErrorBoundary}){return jsx(VefError,{error,reset:resetErrorBoundary})}const vefCache=createCache({key:"vef"});function VefConfigProvider({apiClient,dataDictionaryApi,loginApi,logoutApi,fetchAuthenticatedUserApi,permissionChecker,children,...config}){return jsx(AuthContextProvider,{permissionChecker,children:jsx(ApiContextProvider,{client:apiClient,dataDictionaryApi,fetchAuthenticatedUserApi,loginApi,logoutApi,children:jsx(ConfigStoreProvider,{initialState:config,children:jsxs(CacheProvider,{value:vefCache,children:[jsx(Global,{styles:[globalStyle,nprogressStyle,css`
|
|
3
2
|
:root {
|
|
4
|
-
font-size: ${
|
|
3
|
+
font-size: ${(config.fontSize??"medium")==="medium"?"14px":"16px"};
|
|
5
4
|
}
|
|
6
|
-
`]}),
|
|
7
|
-
/*! 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 */
|
|
5
|
+
`]}),jsx(UiConfigProvider,{children:jsx(ErrorBoundary,{FallbackComponent,children})})]})})})})}/*! 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{VefConfigProvider as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{createComponentStore as r}from"@vef-framework/shared";const{StoreProvider:o,useStore:e,useStoreApi:i}=r("Config",(({fontSize:r="large",primaryColor:o="#0064fa"})=>e=>({fontSize:r,primaryColor:o,setFontSize:r=>e({fontSize:r}),setPrimaryColor:r=>e({primaryColor:r})})));export{o as ConfigStoreProvider,e as useConfigStore,i as useConfigStoreApi};
|
|
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:ConfigStoreProvider,useStore:useConfigStore,useStoreApi:useConfigStoreApi}=createComponentStore("Config",({fontSize="large",primaryColor="#0064fa"})=>set=>({fontSize,primaryColor,setFontSize:fontSize2=>set({fontSize:fontSize2}),setPrimaryColor:primaryColor2=>set({primaryColor:primaryColor2})}));/*! 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{ConfigStoreProvider,useConfigStore,useConfigStoreApi};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsxs as e,jsx as r}from"@emotion/react/jsx-runtime";import{FloatButton as t}from"antd";import o from"../vef-scroll-area/index.js";const{BackTop:n}=t;function VefContainer({className:t,style:a,children:i}){return e(o,{className:t,style:a,children:[i,r(n,{})]})}export{VefContainer as default};
|
|
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{jsxs,jsx}from"@emotion/react/jsx-runtime";import{FloatButton}from"antd";import VefScrollArea from"../vef-scroll-area/index.js";const{BackTop}=FloatButton;function VefContainer({className,style,children}){return jsxs(VefScrollArea,{className,style,children:[children,jsx(BackTop,{})]})}/*! 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{VefContainer as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o}from"@emotion/react/jsx-runtime";import{DisabledContextProvider as t}from"@vef-framework/hooks";import{useMemo as r}from"react";import e from"../../vef-action-buttons/index.js";import{useActionButtons as s}from"../hooks/use-action-buttons.js";import{useCrudContext as i}from"../hooks/use-crud-context.js";import{useCrudStore as n}from"../store.js";function VefCrudActions({tableApi:m,tableApiParams:u,actionButtons:a}){const c=n((o=>o.confirmedFilterValues)),f=m.useIsFetching(r((()=>({...u,...c})),[u,c])),p=i(),l=s(a);return o(t,{value:f,children:o(e,{buttons:l,context:p,useFlexContainer:!1})})}export{VefCrudActions as default};
|
|
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{DisabledContextProvider}from"@vef-framework/hooks";import{useMemo}from"react";import VefActionButtons from"../../vef-action-buttons/index.js";import{useActionButtons}from"../hooks/use-action-buttons.js";import{useCrudContext}from"../hooks/use-crud-context.js";import{useCrudStore}from"../store.js";function VefCrudActions({tableApi,tableApiParams,actionButtons}){const confirmedFilterValues=useCrudStore(state=>state.confirmedFilterValues),isFetching=tableApi.useIsFetching(useMemo(()=>({...tableApiParams,...confirmedFilterValues}),[tableApiParams,confirmedFilterValues])),crudContext=useCrudContext(),actionButtonsToUse=useActionButtons(actionButtons);return jsx(DisabledContextProvider,{value:isFetching,children:jsx(VefActionButtons,{buttons:actionButtonsToUse,context:crudContext,useFlexContainer:!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{VefCrudActions as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import{useMemo as e,useCallback as o}from"react";import r from"../../vef-action-buttons/index.js";import i from"../../vef-filter/index.js";import n from"../../vef-title/index.js";import{useActionButtons as s}from"../hooks/use-action-buttons.js";import{useCrudContext as m}from"../hooks/use-crud-context.js";import{useCrudStore as a}from"../store.js";function VefCrudFilter({title:f,tableApi:l,tableApiParams:u,filterSchema:c,actionButtons:d}){const[p,x,h]=a((t=>[t.setFilterValues,t.confirmedFilterValues,t.setConfirmedFilterValues])),j=l.useIsFetching(e((()=>({...u,...x})),[u,x])),F=m(),C=s(d),b=o((()=>h(null)),[h]);return t(i,{loading:j,prefix:t(n,{noPaddingBottom:!0,showLeftBar:!0,level:5,children:f}),schema:c,extraActionButtons:t(r,{buttons:C,context:F,useFlexContainer:!1}),onChange:p,onConfirm:h,onReset:b})}export{VefCrudFilter as default};
|
|
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{useMemo,useCallback}from"react";import VefActionButtons from"../../vef-action-buttons/index.js";import VefFilter from"../../vef-filter/index.js";import VefTitle from"../../vef-title/index.js";import{useActionButtons}from"../hooks/use-action-buttons.js";import{useCrudContext}from"../hooks/use-crud-context.js";import{useCrudStore}from"../store.js";function VefCrudFilter({title,tableApi,tableApiParams,filterSchema,actionButtons}){const[setFilterValues,confirmedFilterValues,setConfirmedFilterValues]=useCrudStore(state=>[state.setFilterValues,state.confirmedFilterValues,state.setConfirmedFilterValues]),isFetching=tableApi.useIsFetching(useMemo(()=>({...tableApiParams,...confirmedFilterValues}),[tableApiParams,confirmedFilterValues])),crudContext=useCrudContext(),actionButtonsToUse=useActionButtons(actionButtons),handleReset=useCallback(()=>setConfirmedFilterValues(null),[setConfirmedFilterValues]);return jsx(VefFilter,{loading:isFetching,prefix:jsx(VefTitle,{noPaddingBottom:!0,showLeftBar:!0,level:5,children:title}),schema:filterSchema,extraActionButtons:jsx(VefActionButtons,{buttons:actionButtonsToUse,context:crudContext,useFlexContainer:!1}),onChange:setFilterValues,onConfirm:setConfirmedFilterValues,onReset:handleReset})}/*! 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{VefCrudFilter as default};
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e,jsxs as t,Fragment as o}from"@emotion/react/jsx-runtime";import{css as r}from"@emotion/react";import{useApiContext as i}from"@vef-framework/core";import{DisabledContextProvider as n}from"@vef-framework/hooks";import{themeVariables as c,isNullish as s,showSuccessMessage as m,isFunction as a}from"@vef-framework/shared";import{Trash2Icon as l}from"lucide-react";import{useMemo as d,useCallback as f,memo as p}from"react";import u from"../../vef-action-buttons/index.js";import h from"../../vef-button/index.js";import x from"../../vef-divider/index.js";import v from"../../vef-flex/index.js";import b from"../../vef-icon/index.js";import y from"../../vef-text/index.js";import{useCrudContext as g}from"../hooks/use-crud-context.js";import{useCrudStore as j}from"../store.js";const k=r`
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx,jsxs,Fragment}from"@emotion/react/jsx-runtime";import{css}from"@emotion/react";import{useApiContext}from"@vef-framework/core";import{DisabledContextProvider}from"@vef-framework/hooks";import{themeVariables,isNullish,showSuccessMessage,isFunction}from"@vef-framework/shared";import{Trash2Icon}from"lucide-react";import{useMemo,useCallback,memo}from"react";import VefActionButtons from"../../vef-action-buttons/index.js";import VefButton from"../../vef-button/index.js";import VefDivider from"../../vef-divider/index.js";import VefFlex from"../../vef-flex/index.js";import VefIcon from"../../vef-icon/index.js";import VefText from"../../vef-text/index.js";import{useCrudContext}from"../hooks/use-crud-context.js";import{useCrudStore}from"../store.js";const footerStyle=css`
|
|
3
2
|
height: 100%;
|
|
4
3
|
display: flex;
|
|
5
4
|
justify-content: space-between;
|
|
6
5
|
align-items: center;
|
|
7
|
-
padding: ${
|
|
8
|
-
`;
|
|
9
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
6
|
+
padding: ${themeVariables.padding};
|
|
7
|
+
`;function VefCrudFooterBase({tableApi,tableApiParams,batchDeletionApi,batchActionButtons,selectionSummary}){const{useApiMutation,stubMutationApi}=useApiContext(),batchDeletionMutation=useApiMutation(batchDeletionApi??stubMutationApi),[selectedInfo,confirmedFilterValues,setSelectedInfo]=useCrudStore(state=>[state.selectedInfo,state.confirmedFilterValues,state.setSelectedInfo]),{selectedKeys,selectedRecords}=selectedInfo,batchActionButtonsToUse=useMemo(()=>isNullish(batchDeletionApi)?batchActionButtons??[]:[...batchActionButtons??[],{key:"_batchDeletion",label:"批量删除",icon:jsx(VefIcon,{children:jsx(Trash2Icon,{})}),color:"error",permissions:[batchDeletionApi.key],requireConfirmation:!0,confirmationMode:"detailed",onClick:async({refetch})=>{const{message}=await batchDeletionMutation.mutate(selectedRecords);showSuccessMessage(message),refetch()}}],[batchActionButtons,batchDeletionApi,batchDeletionMutation,selectedRecords]),crudContext=useCrudContext(),batchActionButtonContext=useMemo(()=>({...crudContext,...selectedInfo}),[crudContext,selectedInfo]),isFetching=tableApi.useIsFetching(useMemo(()=>({...tableApiParams,...confirmedFilterValues}),[tableApiParams,confirmedFilterValues])),handleCancelSelection=useCallback(()=>{setSelectedInfo({selectedKeys:[],selectedRecords:[]})},[setSelectedInfo]),selectionSummaryNode=useMemo(()=>{if(isFunction(selectionSummary))return selectionSummary(selectedRecords)},[selectedRecords,selectionSummary]);return selectedKeys.length===0?null:jsxs("div",{css:footerStyle,children:[jsxs(VefText,{color:"secondary",children:["已选择"," ",jsx(VefText,{bold:!0,color:"primary",children:selectedKeys.length})," ","项",selectionSummaryNode&&jsxs(Fragment,{children:[jsx(VefDivider,{orientation:"vertical"}),selectionSummaryNode]})]}),jsx(DisabledContextProvider,{value:isFetching,children:jsxs(VefFlex,{align:"center",gap:"medium",children:[jsx(VefButton,{color:"primary",variant:"text",onClick:handleCancelSelection,children:"取消选择"}),jsx(VefActionButtons,{buttons:batchActionButtonsToUse,context:batchActionButtonContext,useFlexContainer:!1})]})})]})}const VefCrudFooter=memo(VefCrudFooterBase);/*! 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{VefCrudFooter as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o}from"@emotion/react/jsx-runtime";import e from"../../vef-form-modal/index.js";import{useCrudStore as r}from"../store.js";function VefCrudFormModal({formSchema:t,formApis:n}){const[i,{scene:m,title:s,width:f},{onBeforeSubmit:u,onSubmitSuccess:c},a,l,d]=r((o=>[o.isFormOpen,o.currentFormInfo,o.currentFormEventHandlers,o.currentFormInitialValues,o.isFormLoading,o.closeForm])),p=n[m];if(!p)throw new Error(`Form api for scene ${m} not found, please check the formApis props of VefCrudPage component.`);return o(e,{initialValues:a,loading:l,open:i,scene:m,schema:t,submitApi:p,title:s,width:f,onBeforeSubmit:u,onClose:d,onSubmitSuccess:c})}export{VefCrudFormModal as default};
|
|
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 VefFormModal from"../../vef-form-modal/index.js";import{useCrudStore}from"../store.js";function VefCrudFormModal({formSchema,formApis}){const[isFormOpen,{scene,title,width},{onBeforeSubmit,onSubmitSuccess},currentFormInitialValues,isFormLoading,closeForm]=useCrudStore(state=>[state.isFormOpen,state.currentFormInfo,state.currentFormEventHandlers,state.currentFormInitialValues,state.isFormLoading,state.closeForm]),formApi=formApis[scene];if(!formApi)throw new Error(`Form api for scene ${scene} not found, please check the formApis props of VefCrudPage component.`);return jsx(VefFormModal,{initialValues:currentFormInitialValues,loading:isFormLoading,open:isFormOpen,scene,schema:formSchema,submitApi:formApi,title,width,onBeforeSubmit,onClose:closeForm,onSubmitSuccess})}/*! 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{VefCrudFormModal as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import{memo as e}from"react";import r from"./crud-filter.js";const a=e((function VefCrudHeaderBase({title:e,tableApi:a,tableApiParams:i,filterItems:o,actionButtons:l}){return o.length>0?t(r,{actionButtons:l,filterSchema:o,tableApi:a,tableApiParams:i,title:e}):null}));export{a as default};
|
|
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{memo}from"react";import VefCrudFilter from"./crud-filter.js";function VefCrudHeaderBase({title,tableApi,tableApiParams,filterItems,actionButtons}){return filterItems.length>0?jsx(VefCrudFilter,{actionButtons,filterSchema:filterItems,tableApi,tableApiParams,title}):null}const VefCrudHeader=memo(VefCrudHeaderBase);/*! 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{VefCrudHeader as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{useMemo as t,useCallback as o,useRef as s,useEffect as a,memo as n}from"react";import r from"../../vef-table/index.js";import{useCrudContext as l}from"../hooks/use-crud-context.js";import{useOperationButtons as i}from"../hooks/use-operation-buttons.js";import{useCrudStore as c,useCrudStoreApi as m}from"../store.js";const p=n((function VefCrudTableBase({api:n,apiParams:p,deletionApi:d,paginated:u,schema:f,selectable:x,operationButtons:S,...b}){const[h,y,j]=c((e=>[e.confirmedFilterValues,e.selectedInfo,e.setSelectedInfo])),C=t((()=>({...p,...h})),[p,h]),K=o(((e,t)=>{j({selectedKeys:e,selectedRecords:t})}),[j]),g=i(d,S),R=s(null),B=m();a((()=>{B.setState({tableInstanceRef:R})}),[B]);const I=l();return e(r,u?{ref:R,multipleSelection:!0,paginated:!0,api:n,apiParams:C,externalContext:I,operationButtons:g,schema:f,selectable:x,selectedKeys:y.selectedKeys,selectionSummary:!1,onRowSelectionChange:K,...b}:{ref:R,multipleSelection:!0,api:n,apiParams:C,externalContext:I,schema:f,selectable:x,selectedKeys:y.selectedKeys,selectionSummary:!1,onRowSelectionChange:K,...b})}));export{p as default};
|
|
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{useMemo,useCallback,useRef,useEffect,memo}from"react";import VefTable from"../../vef-table/index.js";import{useCrudContext}from"../hooks/use-crud-context.js";import{useOperationButtons}from"../hooks/use-operation-buttons.js";import{useCrudStore,useCrudStoreApi}from"../store.js";function VefCrudTableBase({api,apiParams,deletionApi,paginated,schema,selectable,operationButtons,...tableProps}){const[confirmedFilterValues,selectedInfo,setSelectedInfo]=useCrudStore(state=>[state.confirmedFilterValues,state.selectedInfo,state.setSelectedInfo]),mergedApiParams=useMemo(()=>({...apiParams,...confirmedFilterValues}),[apiParams,confirmedFilterValues]),handleSelectionChange=useCallback((selectedKeys,selectedRecords)=>{setSelectedInfo({selectedKeys,selectedRecords})},[setSelectedInfo]),operationButtonsToUse=useOperationButtons(deletionApi,operationButtons),tableInstanceRef=useRef(null),crudStore=useCrudStoreApi();useEffect(()=>{crudStore.setState({tableInstanceRef})},[crudStore]);const crudContext=useCrudContext();return paginated?jsx(VefTable,{ref:tableInstanceRef,multipleSelection:!0,paginated:!0,api,apiParams:mergedApiParams,externalContext:crudContext,operationButtons:operationButtonsToUse,schema,selectable,selectedKeys:selectedInfo.selectedKeys,selectionSummary:!1,onRowSelectionChange:handleSelectionChange,...tableProps}):jsx(VefTable,{ref:tableInstanceRef,multipleSelection:!0,api,apiParams:mergedApiParams,externalContext:crudContext,schema,selectable,selectedKeys:selectedInfo.selectedKeys,selectionSummary:!1,onRowSelectionChange:handleSelectionChange,...tableProps})}const VefCrudTable=memo(VefCrudTableBase);/*! 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{VefCrudTable as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{creationFormScene as o}from"@vef-framework/shared";import{PlusIcon as r}from"lucide-react";import{useMemo as t}from"react";import i from"../../vef-icon/index.js";import{useCrudStore as m}from"../store.js";function useActionButtons(c){const n=m((e=>e.formApiKeys)),s=Reflect.has(n,o),f=Reflect.get(n,o);return t((()=>s?[...c??[],{label:"创建",key:`_${o}`,icon:e(i,{children:e(r,{})}),color:"primary",permissions:[f],onClick:({openForm:e,refetch:r})=>e({scene:o,title:"创建",onSubmitSuccess:()=>{r()}})}]:c??[]),[s,c,f])}export{useActionButtons};
|
|
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{creationFormScene}from"@vef-framework/shared";import{PlusIcon}from"lucide-react";import{useMemo}from"react";import VefIcon from"../../vef-icon/index.js";import{useCrudStore}from"../store.js";function useActionButtons(actionButtons){const formApiKeys=useCrudStore(state=>state.formApiKeys),showCreationActionButton=Reflect.has(formApiKeys,creationFormScene),creationFormApiKey=Reflect.get(formApiKeys,creationFormScene);return useMemo(()=>showCreationActionButton?[...actionButtons??[],{label:"创建",key:`_${creationFormScene}`,icon:jsx(VefIcon,{children:jsx(PlusIcon,{})}),color:"primary",permissions:[creationFormApiKey],onClick:({openForm,refetch})=>openForm({scene:creationFormScene,title:"创建",onSubmitSuccess:()=>{refetch()}})}]:actionButtons??[],[showCreationActionButton,actionButtons,creationFormApiKey])}/*! 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{useActionButtons};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{useMemo as e}from"react";import{useCrudStore as t}from"../store.js";function useCrudContext(){const[r,o,n]=t((e=>[e.openForm,e.filterValues,e.tableInstanceRef]));return e((()=>({openForm:r,filterValues:o,refetch:async()=>{await(n.current?.refetch())}})),[r,o,n])}export{useCrudContext};
|
|
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";import{useCrudStore}from"../store.js";function useCrudContext(){const[openForm,filterValues,tableInstanceRef]=useCrudStore(state=>[state.openForm,state.filterValues,state.tableInstanceRef]);return useMemo(()=>({openForm,filterValues,refetch:async()=>{await tableInstanceRef.current?.refetch()}}),[openForm,filterValues,tableInstanceRef])}/*! 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{useCrudContext};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{isNullish as e,isString as t}from"@vef-framework/shared";import{useMemo as o}from"react";function useCrudSchema(r){return o((()=>{const o=[],l=[],s=new Set,c={};for(const n of r){const{filter:r,form:a,...p}=n,{name:u,title:f}=p;if(o.push(p),r){const{label:o,advanced:s,...c}=r,n={name:u,label:s&&e(o)?f:o,advanced:s,...c};("Input"===n.type||"InputNumber"===n.type)&&e(o)&&e(n.placeholder)?n.placeholder=t(f)?f:"请输入":("SingleSelect"===n.type||"MultipleSelect"===n.type||"TreeSingleSelect"===n.type||"TreeMultipleSelect"===n.type)&&e(o)&&e(n.placeholder)&&(n.placeholder=t(f)?f:"请选择"),l.push(n)}if(a){const{group:t,row:o,column:r,filterValueAsDefault:l,label:n,...p}=a,m=`${t??1}`,i=c[m]??{};c[m]||(c[m]=i);const d=`${o??1}`,h=i[d]??{};i[d]||(i[d]=h);const y=`${r??1}`,S=h[y]??[];h[y]||(h[y]=S),"Hidden"===p.type?S.push({name:u,...p}):S.push({name:u,label:e(n)?f:n,...p}),l&&s.add(u)}}const n=[],a=Object.keys(c).sort();for(const e of a){const t=c[e],o=[],r=Object.keys(t).sort();for(const e of r){const r=t[e],l=[],s=Object.keys(r).sort();for(const e of s){const t={key:e,items:r[e]};l.push(t)}o.push({key:e,columns:l})}n.push({key:e,rows:o})}return{tableSchema:o,filterItems:l,formGroups:n,filterValueAsDefaultKeys:Array.from(s)}}),[r])}export{useCrudSchema};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{isNullish,isString}from"@vef-framework/shared";import{useMemo}from"react";function useCrudSchema(schema){return useMemo(()=>{const tableColumns=[],filterItems=[],filterValueAsDefaultSet=new Set,formGroupMap={};for(const item of schema){const{filter,form,...column}=item,{name,title}=column;if(tableColumns.push(column),filter){const{label,advanced,...rest}=filter,filterItem={name,label:advanced&&isNullish(label)?title:label,advanced,...rest};(filterItem.type==="Input"||filterItem.type==="InputNumber")&&isNullish(label)&&isNullish(filterItem.placeholder)?filterItem.placeholder=isString(title)?title:"请输入":(filterItem.type==="SingleSelect"||filterItem.type==="MultipleSelect"||filterItem.type==="TreeSingleSelect"||filterItem.type==="TreeMultipleSelect")&&isNullish(label)&&isNullish(filterItem.placeholder)&&(filterItem.placeholder=isString(title)?title:"请选择"),filterItems.push(filterItem)}if(form){const{group,row,column:column2,filterValueAsDefault,label,...rest}=form,groupKey=`${group??1}`,groupSchema=formGroupMap[groupKey]??{};formGroupMap[groupKey]||(formGroupMap[groupKey]=groupSchema);const rowKey=`${row??1}`,rowSchema=groupSchema[rowKey]??{};groupSchema[rowKey]||(groupSchema[rowKey]=rowSchema);const columnKey=`${column2??1}`,columnSchema=rowSchema[columnKey]??[];rowSchema[columnKey]||(rowSchema[columnKey]=columnSchema),rest.type==="Hidden"?columnSchema.push({name,...rest}):columnSchema.push({name,label:isNullish(label)?title:label,...rest}),(filterValueAsDefault??!1)&&filterValueAsDefaultSet.add(name)}}const formGroups=[],groupKeys=Object.keys(formGroupMap).sort();for(const groupKey of groupKeys){const groupSchemaMap=formGroupMap[groupKey],formRows=[],rowKeys=Object.keys(groupSchemaMap).sort();for(const rowKey of rowKeys){const rowSchema=groupSchemaMap[rowKey],formColumns=[],columnKeys=Object.keys(rowSchema).sort();for(const columnKey of columnKeys){const columnSchema=rowSchema[columnKey],formColumn={key:columnKey,items:columnSchema};formColumns.push(formColumn)}formRows.push({key:rowKey,columns:formColumns})}formGroups.push({key:groupKey,rows:formRows})}return{tableSchema:tableColumns,filterItems,formGroups,filterValueAsDefaultKeys:Array.from(filterValueAsDefaultSet)}},[schema])}/*! 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{useCrudSchema};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{useApiContext as o}from"@vef-framework/core";import{updateFormScene as r,showSuccessMessage as t}from"@vef-framework/shared";import{PencilIcon as i,TrashIcon as n}from"lucide-react";import{useMemo as c}from"react";import m from"../../vef-icon/index.js";import{useCrudStore as s}from"../store.js";function useOperationButtons(a,u){const{useApiMutation:f,stubMutationApi:p}=o(),l=f(a??p),d=s((e=>e.formApiKeys)),h=Reflect.has(d,r);return c((()=>{const o=[...u??[]];return h&&o.push({key:"_update",label:"编辑",icon:e(m,{children:e(i,{})}),color:"primary",onClick:({record:e,openForm:o,refetch:t})=>{o({scene:r,title:"编辑",initialValues:e,onSubmitSuccess:()=>{t()}})}}),a&&o.push({key:"_deletion",label:"删除",icon:e(m,{children:e(n,{})}),color:"error",requireConfirmation:!0,confirmationMode:"simple",onClick:async({record:e,refetch:o})=>{const{message:r}=await l.mutate(e);t(r),o()}}),o}),[a,l,u,h])}export{useOperationButtons};
|
|
3
|
-
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
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{useApiContext}from"@vef-framework/core";import{updateFormScene,showSuccessMessage}from"@vef-framework/shared";import{PencilIcon,TrashIcon}from"lucide-react";import{useMemo}from"react";import VefIcon from"../../vef-icon/index.js";import{useCrudStore}from"../store.js";function useOperationButtons(deletionApi,operationButtons){const{useApiMutation,stubMutationApi}=useApiContext(),deletionMutation=useApiMutation(deletionApi??stubMutationApi),formApiKeys=useCrudStore(state=>state.formApiKeys),showUpdateButton=Reflect.has(formApiKeys,updateFormScene);return useMemo(()=>{const buttons=[...operationButtons??[]];return showUpdateButton&&buttons.push({key:"_update",label:"编辑",icon:jsx(VefIcon,{children:jsx(PencilIcon,{})}),color:"primary",onClick:({record,openForm,refetch})=>{openForm({scene:updateFormScene,title:"编辑",initialValues:record,onSubmitSuccess:()=>{refetch()}})}}),deletionApi&&buttons.push({key:"_deletion",label:"删除",icon:jsx(VefIcon,{children:jsx(TrashIcon,{})}),color:"error",requireConfirmation:!0,confirmationMode:"simple",onClick:async({record,refetch})=>{const{message}=await deletionMutation.mutate(record);showSuccessMessage(message),refetch()}}),buttons},[deletionApi,deletionMutation,operationButtons,showUpdateButton])}/*! 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{useOperationButtons};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e,jsxs as t}from"@emotion/react/jsx-runtime";import{isNullish as o}from"@vef-framework/shared";import{useMemo as r}from"react";import s from"../vef-card/index.js";import a from"../vef-page/index.js";import i from"./components/crud-actions.js";import m from"./components/crud-footer.js";import n from"./components/crud-form-modal.js";import c from"./components/crud-header.js";import l from"./components/crud-table.js";import{useCrudSchema as p}from"./hooks/use-crud-schema.js";import{useCrudStore as f,CrudStoreProvider as u}from"./store.js";function VefCrudPageBase({title:r,actionButtons:p,batchActionButtons:u,tableSchema:b,filterItems:d,formGroups:h,tableApiParams:A,formApis:S,deletionApi:j,batchDeletionApi:g,selectionSummary:P,...y}){const{selectedKeys:B}=f((e=>e.selectedInfo)),V=!o(g)||!o(u)&&u.length>0;let k;if(y.paginated){const{tableApi:t,...o}=y;k=e(l,{showRowNumber:!0,api:t,apiParams:A,deletionApi:j,schema:b,selectable:V,...o})}else{const{tableApi:t,...o}=y;k=e(l,{showRowNumber:!0,api:t,apiParams:A,deletionApi:j,schema:b,selectable:V,...o})}const{tableApi:w}=y;return e(a,{scrollable:!0,title:r,actions:e(i,{actionButtons:p,tableApi:w,tableApiParams:A}),footer:B.length>0&&e(m,{batchActionButtons:u,batchDeletionApi:g,selectionSummary:P,tableApi:w,tableApiParams:A}),header:e(c,{actionButtons:p,filterItems:d,tableApi:w,tableApiParams:A,title:r}),children:t(s,{children:[k,S&&Object.keys(S).length>0&&h.length>0&&e(n,{formApis:S,formSchema:h})]})})}function VefCrudPage({schema:t,formApis:o,onFormOpen:s,onBeforeSubmit:a,onSubmitSuccess:i,...m}){const{tableSchema:n,filterItems:c,formGroups:l,filterValueAsDefaultKeys:f}=p(t),b=r((()=>{const e=o??{};return Object.keys(e).reduce(((t,o)=>(e[o]&&(t[o]=e[o].key),t)),{})}),[o]),d=r((()=>({filterValueAsDefaultKeys:f,formApiKeys:b,onBeforeSubmit:a,onFormOpen:s,onSubmitSuccess:i})),[f,b,a,s,i]);return e(u,{initialState:d,children:e(VefCrudPageBase,{filterItems:c,formApis:o,formGroups:l,tableSchema:n,...m})})}export{VefCrudPage 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,jsxs}from"@emotion/react/jsx-runtime";import{isNullish}from"@vef-framework/shared";import{useMemo}from"react";import VefCard from"../vef-card/index.js";import VefPage from"../vef-page/index.js";import VefCrudActions from"./components/crud-actions.js";import VefCrudFooter from"./components/crud-footer.js";import VefCrudFormModal from"./components/crud-form-modal.js";import VefCrudHeader from"./components/crud-header.js";import VefCrudTable from"./components/crud-table.js";import{useCrudSchema}from"./hooks/use-crud-schema.js";import{useCrudStore,CrudStoreProvider}from"./store.js";function VefCrudPageBase({title,actionButtons,batchActionButtons,tableSchema,filterItems,formGroups,tableApiParams,formApis,deletionApi,batchDeletionApi,selectionSummary,...tableProps}){const{selectedKeys}=useCrudStore(state=>state.selectedInfo),selectable=!isNullish(batchDeletionApi)||!isNullish(batchActionButtons)&&batchActionButtons.length>0;let tableNode;if(tableProps.paginated){const{tableApi:tableApi2,...restTableProps}=tableProps;tableNode=jsx(VefCrudTable,{showRowNumber:!0,api:tableApi2,apiParams:tableApiParams,deletionApi,schema:tableSchema,selectable,...restTableProps})}else{const{tableApi:tableApi2,...restTableProps}=tableProps;tableNode=jsx(VefCrudTable,{showRowNumber:!0,api:tableApi2,apiParams:tableApiParams,deletionApi,schema:tableSchema,selectable,...restTableProps})}const{tableApi}=tableProps;return jsx(VefPage,{scrollable:!0,title,actions:jsx(VefCrudActions,{actionButtons,tableApi,tableApiParams}),footer:selectedKeys.length>0&&jsx(VefCrudFooter,{batchActionButtons,batchDeletionApi,selectionSummary,tableApi,tableApiParams}),header:jsx(VefCrudHeader,{actionButtons,filterItems,tableApi,tableApiParams,title}),children:jsxs(VefCard,{children:[tableNode,formApis&&Object.keys(formApis).length>0&&formGroups.length>0&&jsx(VefCrudFormModal,{formApis,formSchema:formGroups})]})})}function VefCrudPage({schema,formApis,onFormOpen,onBeforeSubmit,onSubmitSuccess,...restProps}){const{tableSchema,filterItems,formGroups,filterValueAsDefaultKeys}=useCrudSchema(schema),formApiKeys=useMemo(()=>{const apis=formApis??{};return Object.keys(apis).reduce((acc,key)=>(apis[key]&&(acc[key]=apis[key].key),acc),{})},[formApis]),initialState=useMemo(()=>({filterValueAsDefaultKeys,formApiKeys,onBeforeSubmit,onFormOpen,onSubmitSuccess}),[filterValueAsDefaultKeys,formApiKeys,onBeforeSubmit,onFormOpen,onSubmitSuccess]);return jsx(CrudStoreProvider,{initialState,children:jsx(VefCrudPageBase,{filterItems,formApis,formGroups,tableSchema,...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{VefCrudPage as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{createComponentStore as e,creationFormScene as r,isNullish as o,isFunction as s,mergeFns as n,showSuccessMessage as t,showSuccessAlert as i,invokeMaybeAsyncFn as u}from"@vef-framework/shared";const{StoreProvider:l,useStore:m,useStoreApi:a}=e("Crud",(({filterValueAsDefaultKeys:e,formApiKeys:l,onFormOpen:m,onBeforeSubmit:a,onSubmitSuccess:c})=>(d,F)=>({onFormOpen:m,onBeforeSubmit:a,onSubmitSuccess:c,currentFormInfo:{scene:r,title:"创建",width:"medium"},currentFormEventHandlers:{},currentFormInitialValues:{},isFormOpen:!1,openForm:async({initialValues:r,width:l,onBeforeSubmit:m,onSubmitSuccess:a,showSuccessTip:c=!0,successTipType:f="message",...S})=>{const{filterValues:p,onFormOpen:V,closeForm:I,onBeforeSubmit:b,onSubmitSuccess:y,setIsFormLoading:g}=F(),w={...e.reduce(((e,r)=>{const s=p[r];return o(s)||(e[r]=s),e}),{}),...r},v=s(m)||s(b)?async(e,r)=>{const o=await(m?.(e,r));return await(b?.(o??e,r))??o}:void 0,B=s(a)||s(y)?n((({message:e})=>{c&&("message"===f?t(e):i(e)),I()}),a,y):void 0;d({isFormOpen:!0,currentFormInfo:{...S,width:l??"medium"},currentFormEventHandlers:{onBeforeSubmit:v,onSubmitSuccess:B},isFormLoading:Boolean(V)}),V?await u(V,{onSuccess:e=>{d({currentFormInitialValues:e})},onFinally:()=>{g(!1)}},w,p,S.scene):d({currentFormInitialValues:w})},closeForm:()=>{d({isFormOpen:!1,currentFormInitialValues:{},currentFormEventHandlers:{}})},isFormLoading:!1,setIsFormLoading:e=>{d({isFormLoading:e})},filterValueAsDefaultKeys:e,filterValues:{},setFilterValues:e=>{d({filterValues:e})},confirmedFilterValues:null,setConfirmedFilterValues:e=>{d({confirmedFilterValues:e})},selectedInfo:{selectedKeys:[],selectedRecords:[]},setSelectedInfo:e=>{d({selectedInfo:e})},formApiKeys:l,tableInstanceRef:{current:null}})));export{l as CrudStoreProvider,m as useCrudStore,a as useCrudStoreApi};
|
|
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,creationFormScene,isNullish,isFunction,mergeFns,showSuccessMessage,showSuccessAlert,invokeMaybeAsyncFn}from"@vef-framework/shared";const{StoreProvider:CrudStoreProvider,useStore:useCrudStore,useStoreApi:useCrudStoreApi}=createComponentStore("Crud",({filterValueAsDefaultKeys,formApiKeys,onFormOpen,onBeforeSubmit,onSubmitSuccess})=>(set,get)=>({onFormOpen,onBeforeSubmit,onSubmitSuccess,currentFormInfo:{scene:creationFormScene,title:"创建",width:"medium"},currentFormEventHandlers:{},currentFormInitialValues:{},isFormOpen:!1,openForm:async({initialValues,width,onBeforeSubmit:onBeforeSubmit2,onSubmitSuccess:onSubmitSuccess2,showSuccessTip=!0,successTipType="message",...formInfo})=>{const{filterValues,onFormOpen:onFormOpen2,closeForm,onBeforeSubmit:globalOnBeforeSubmit,onSubmitSuccess:globalOnSubmitSuccess,setIsFormLoading}=get(),initialFormValues={...filterValueAsDefaultKeys.reduce((acc,key)=>{const value=filterValues[key];return isNullish(value)||(acc[key]=value),acc},{}),...initialValues},mergedOnBeforeSubmit=isFunction(onBeforeSubmit2)||isFunction(globalOnBeforeSubmit)?async(values,scene)=>{const result=await onBeforeSubmit2?.(values,scene);return await globalOnBeforeSubmit?.(result??values,scene)??result}:void 0,mergedOnSubmitSuccess=isFunction(onSubmitSuccess2)||isFunction(globalOnSubmitSuccess)?mergeFns(({message})=>{showSuccessTip&&(successTipType==="message"?showSuccessMessage(message):showSuccessAlert(message)),closeForm()},onSubmitSuccess2,globalOnSubmitSuccess):void 0;set({isFormOpen:!0,currentFormInfo:{...formInfo,width:width??"medium"},currentFormEventHandlers:{onBeforeSubmit:mergedOnBeforeSubmit,onSubmitSuccess:mergedOnSubmitSuccess},isFormLoading:!!onFormOpen2}),onFormOpen2?await invokeMaybeAsyncFn(onFormOpen2,{onSuccess:initialFormValues2=>{set({currentFormInitialValues:initialFormValues2})},onFinally:()=>{setIsFormLoading(!1)}},initialFormValues,filterValues,formInfo.scene):set({currentFormInitialValues:initialFormValues})},closeForm:()=>{set({isFormOpen:!1,currentFormInitialValues:{},currentFormEventHandlers:{}})},isFormLoading:!1,setIsFormLoading:isFormLoading=>{set({isFormLoading})},filterValueAsDefaultKeys,filterValues:{},setFilterValues:filterValues=>{set({filterValues})},confirmedFilterValues:null,setConfirmedFilterValues:confirmedFilterValues=>{set({confirmedFilterValues})},selectedInfo:{selectedKeys:[],selectedRecords:[]},setSelectedInfo:selectedInfo=>{set({selectedInfo})},formApiKeys,tableInstanceRef:{current:null}}));/*! 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{CrudStoreProvider,useCrudStore,useCrudStoreApi};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{HotTable as o}from"@handsontable/react-wrapper";import{registerLanguageDictionary as n,zhCN as t}from"handsontable/i18n";import{registerAllModules as a}from"handsontable/registry";import{useRef as l}from"react";a(),n(t);const r=Array.from({length:1e3}).map(((e,o)=>({name:`Name${o+1}`,gender:o%2==0?"Male":"Female",age:Math.floor(100*Math.random())+18,id:o+1,desc:`Description may be very long, very long, very long, very long, very long, very long, very long, very long, very long, very long${o+1}`}))),i=[{data:"id",title:"ID",fixedColumnsStart:1},{data:"name",title:"Name"},{data:"gender",title:"Gender"},{data:"age",title:"Age"},{data:"desc",title:"Description",width:200}];function VefDataGrid(n){console.log("file: index.tsx:49 ~ props:",n);const a=l(null);return e("div",{style:{width:"100%",maxHeight:"500px"},children:e(o,{ref:a,autoColumnSize:!0,autoRowSize:!0,colHeaders:!0,disableVisualSelection:!0,manualColumnMove:!0,manualColumnResize:!0,multiColumnSorting:!0,readOnly:!0,rowHeaders:!0,columns:i,data:r,language:t.languageCode,licenseKey:"non-commercial-and-evaluation",locale:t.languageCode,themeName:"ht-theme-main",beforeColumnSort:(e,o)=>{if(console.log("file: index.tsx:68 ~ sortConfigs:",o),o.length>0){const e=a.current?.hotInstance?.getColHeader(o[0].column);console.log("file: index.tsx:77 ~ header:",e);const n=a.current?.hotInstance?.getColumnMeta(o[0].column);console.log("file: index.tsx:79 ~ meta:",n)}}})})}export{VefDataGrid 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{HotTable}from"@handsontable/react-wrapper";import{registerLanguageDictionary,zhCN}from"handsontable/i18n";import{registerAllModules}from"handsontable/registry";import{useRef}from"react";registerAllModules(),registerLanguageDictionary(zhCN);const users=Array.from({length:1e3}).map((_,index)=>({name:`Name${index+1}`,gender:index%2===0?"Male":"Female",age:Math.floor(Math.random()*100)+18,id:index+1,desc:`Description may be very long, very long, very long, very long, very long, very long, very long, very long, very long, very long${index+1}`})),columns=[{data:"id",title:"ID",fixedColumnsStart:1},{data:"name",title:"Name"},{data:"gender",title:"Gender"},{data:"age",title:"Age"},{data:"desc",title:"Description",width:200}];function VefDataGrid(props){console.log("file: index.tsx:49 ~ props:",props);const hotTableRef=useRef(null);return jsx("div",{style:{width:"100%",maxHeight:"500px"},children:jsx(HotTable,{ref:hotTableRef,autoColumnSize:!0,autoRowSize:!0,colHeaders:!0,disableVisualSelection:!0,manualColumnMove:!0,manualColumnResize:!0,multiColumnSorting:!0,readOnly:!0,rowHeaders:!0,columns,data:users,language:zhCN.languageCode,licenseKey:"non-commercial-and-evaluation",locale:zhCN.languageCode,themeName:"ht-theme-main",beforeColumnSort:(_,sortConfigs)=>{if(console.log("file: index.tsx:68 ~ sortConfigs:",sortConfigs),sortConfigs.length>0){const header=hotTableRef.current?.hotInstance?.getColHeader(sortConfigs[0].column);console.log("file: index.tsx:77 ~ header:",header);const meta=hotTableRef.current?.hotInstance?.getColumnMeta(sortConfigs[0].column);console.log("file: index.tsx:79 ~ meta:",meta)}}})})}/*! 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{VefDataGrid as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";function VefDataTable(t){return console.log("file: index.tsx:3 ~ props:",t),e("div",{children:"data table"})}export{VefDataTable 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 VefDataTable(props){return console.log("file: index.tsx:3 ~ props:",props),jsx("div",{children:"data table"})}/*! 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{VefDataTable as default};
|
package/es/vef-divider/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import{Divider as i}from"antd";function VefDivider({orientation:e,title:r,titlePosition:n,titleEdgeMargin:o,...a}){return t(i,{children:r,orientation:n,orientationMargin:o,type:e,...a})}export{VefDivider 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{Divider}from"antd";function VefDivider({orientation,title,titlePosition,titleEdgeMargin,...restProps}){return jsx(Divider,{children:title,orientation:titlePosition,orientationMargin:titleEdgeMargin,type:orientation,...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{VefDivider as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as r,Fragment as e}from"@emotion/react/jsx-runtime";import{invokeMaybeAsyncFn as o}from"@vef-framework/shared";import{useState as t,useMemo as i,cloneElement as n}from"react";import{useDrawerContextSelector as a}from"../context.js";function VefDrawerActionButtonWrapper({children:s}){const[l,c]=a((r=>[r.isDisabled,r.setIsDisabled])),[d,f]=t(!1),{disabled:m,loading:p,onClick:u}=s.props,b=i((()=>{if(u)return async r=>{await o(u,{beforeInvoke:()=>{f(!0),c(!0)},onFinally:()=>{f(!1),c(!1)}},r)}}),[u,c]),k=n(s,{disabled:l||m,loading:d||p,onClick:b});return r(e,{children:k})}export{VefDrawerActionButtonWrapper 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,Fragment}from"@emotion/react/jsx-runtime";import{invokeMaybeAsyncFn}from"@vef-framework/shared";import{useState,useMemo,cloneElement}from"react";import{useDrawerContextSelector}from"../context.js";function VefDrawerActionButtonWrapper({children}){const[isDisabled,setIsDisabled]=useDrawerContextSelector(ctx=>[ctx.isDisabled,ctx.setIsDisabled]),[isLoading,setIsLoading]=useState(!1),{disabled,loading,onClick}=children.props,wrappedOnClick=useMemo(()=>{if(onClick)return async event=>{await invokeMaybeAsyncFn(onClick,{beforeInvoke:()=>{setIsLoading(!0),setIsDisabled(!0)},onFinally:()=>{setIsLoading(!1),setIsDisabled(!1)}},event)}},[onClick,setIsDisabled]),buttonNode=cloneElement(children,{disabled:isDisabled||disabled,loading:isLoading||loading,onClick:wrappedOnClick});return jsx(Fragment,{children:buttonNode})}/*! 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{VefDrawerActionButtonWrapper as default};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
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 */
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. *//*! 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,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import o from"../../vef-button/index.js";import n from"./action-button-wrapper.js";function VefCancelActionButton({text:e,onClick:r}){return t(n,{children:t(o,{color:"default",variant:"text",onClick:r,children:e})})}export{VefCancelActionButton 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 VefButton from"../../vef-button/index.js";import VefDrawerActionButtonWrapper from"./action-button-wrapper.js";function VefCancelActionButton({text,onClick}){return jsx(VefDrawerActionButtonWrapper,{children:jsx(VefButton,{color:"default",variant:"text",onClick,children:text})})}/*! 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{VefCancelActionButton as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as o}from"@emotion/react/jsx-runtime";import{CheckIcon as t}from"lucide-react";import r from"../../vef-button/index.js";import i from"../../vef-icon/index.js";import n from"./action-button-wrapper.js";function VefOkActionButton({text:e,onClick:c}){return o(n,{children:o(r,{color:"primary",icon:o(i,{children:o(t,{})}),onClick:c,children:e})})}export{VefOkActionButton 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{CheckIcon}from"lucide-react";import VefButton from"../../vef-button/index.js";import VefIcon from"../../vef-icon/index.js";import VefDrawerActionButtonWrapper from"./action-button-wrapper.js";function VefOkActionButton({text,onClick}){return jsx(VefDrawerActionButtonWrapper,{children:jsx(VefButton,{color:"primary",icon:jsx(VefIcon,{children:jsx(CheckIcon,{})}),onClick,children:text})})}/*! 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{VefOkActionButton as default};
|
package/es/vef-drawer/context.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{createSelectableContext as e,noop as s}from"@vef-framework/shared";const{ContextProvider:o,useContext:t,useContextSelector:r}=e({isDisabled:!1,setIsDisabled:s,isFullyOpened:!1,isFullyClosed:!1});export{o as DrawerContextProvider,t as useDrawerContext,r as useDrawerContextSelector};
|
|
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{ContextProvider:DrawerContextProvider,useContext:useDrawerContext,useContextSelector:useDrawerContextSelector}=createSelectableContext({isDisabled:!1,setIsDisabled:noop,isFullyOpened:!1,isFullyClosed:!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{DrawerContextProvider,useDrawerContext,useDrawerContextSelector};
|
package/es/vef-drawer/index.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e,jsxs as o,Fragment as t}from"@emotion/react/jsx-runtime";import{css as n}from"@emotion/react";import{themeVariables as l,isFunction as r}from"@vef-framework/shared";import{Drawer as s}from"antd";import{useMemo as a,useState as i,useLayoutEffect as c,useCallback as d,memo as m}from"react";import f from"./components/cancel-action-button.js";import p from"./components/ok-action-button.js";import{DrawerContextProvider as u}from"./context.js";export{default as VefDrawerActionButtonWrapper}from"./components/action-button-wrapper.js";const C=n`
|
|
1
|
+
/*! VefFramework version: 1.0.102, build time: 2025-03-07T16:32:57.836Z, made by Venus. */import{jsx,jsxs,Fragment}from"@emotion/react/jsx-runtime";import{css}from"@emotion/react";import{themeVariables,isFunction}from"@vef-framework/shared";import{Drawer}from"antd";import{useMemo,useState,useLayoutEffect,useCallback,memo}from"react";import VefCancelActionButton from"./components/cancel-action-button.js";import VefOkActionButton from"./components/ok-action-button.js";import{DrawerContextProvider}from"./context.js";import{default as default2}from"./components/action-button-wrapper.js";const drawerStyle=css`
|
|
3
2
|
.vef-drawer-footer {
|
|
4
3
|
display: flex;
|
|
5
|
-
gap: ${
|
|
4
|
+
gap: ${themeVariables.padding};
|
|
6
5
|
justify-content: flex-end;
|
|
7
6
|
align-items: center;
|
|
8
7
|
}
|
|
9
|
-
`,
|
|
10
|
-
/*! 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 */
|
|
8
|
+
`,responsiveSizeMap={narrow:"25",half:"50",wide:"75",full:"100"};function VefDrawerBase({title,open,closable=!0,closeOnEscPress=!0,closeOnMaskClick=!1,destroyOnClose=!1,placement="right",expansionSize,extra,showCancelButton=!0,cancelButtonText="取消",okButtonText="提交",actions,loading,cancelOnClose=!0,onClose,onCancel,onOk,onAfterOpen,onAfterClose,children}){const expansionSizeProps=useMemo(()=>expansionSize==="small"?{size:"default"}:expansionSize==="medium"?{size:"large"}:placement==="left"||placement==="right"?{width:responsiveSizeMap[expansionSize]?`${responsiveSizeMap[expansionSize]}vw`:expansionSize}:{height:responsiveSizeMap[expansionSize]?`${responsiveSizeMap[expansionSize]}vh`:expansionSize},[expansionSize,placement]),[drawerVisibleState,setDrawerVisibleState]=useState({isFullyOpened:!1,isFullyClosed:!1}),[isDisabled,setIsDisabled]=useState(!1),drawerContext=useMemo(()=>({isDisabled,setIsDisabled,...drawerVisibleState}),[isDisabled,drawerVisibleState]),modalDisabled=loading||isDisabled;useLayoutEffect(()=>{open&&drawerVisibleState.isFullyClosed&&setDrawerVisibleState(prevState=>({...prevState,isFullyClosed:!1}))},[open]);const actionNode=useMemo(()=>{const cancelButton=jsx(VefCancelActionButton,{text:cancelButtonText,onClick:onCancel},"cancelActionButton"),okButton=jsx(VefOkActionButton,{text:okButtonText,onClick:onOk},"okActionButton");return isFunction(actions)?actions([cancelButton,okButton]):actions||(showCancelButton?jsxs(Fragment,{children:[cancelButton,okButton]}):okButton)},[actions,cancelButtonText,okButtonText,onCancel,onOk,showCancelButton]),handleClose=useCallback(()=>{modalDisabled||(cancelOnClose&&onCancel?.(),onClose?.())},[cancelOnClose,modalDisabled,onCancel,onClose]),handleAfterOpenChange=useCallback(open2=>{const hasAfterOpen=isFunction(onAfterOpen),hasAfterClose=isFunction(onAfterClose);open2?(hasAfterOpen&&onAfterOpen(),setDrawerVisibleState(prevState=>({...prevState,isFullyOpened:!0}))):(hasAfterClose&&onAfterClose(),setDrawerVisibleState(prevState=>({...prevState,isFullyClosed:!0})))},[onAfterOpen,onAfterClose]);return jsx(DrawerContextProvider,{value:drawerContext,children:jsx(Drawer,{afterOpenChange:handleAfterOpenChange,closable,css:drawerStyle,destroyOnClose,extra,footer:!loading&&actionNode,keyboard:closeOnEscPress,loading,maskClosable:closeOnMaskClick,open,placement,title,zIndex:20,onClose:handleClose,...expansionSizeProps,children})})}const VefDrawer=memo(VefDrawerBase);VefDrawer.displayName="VefDrawer";/*! 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{default2 as VefDrawerActionButtonWrapper,VefDrawer as default};
|
package/es/vef-dropdown/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{useNormalizedMenuItems as t,useDeepMemo as o}from"@vef-framework/hooks";import{isFunction as l}from"@vef-framework/shared";import{Dropdown as a}from"antd";import{useMemo as s,memo as r}from"react";const n=r((function VefDropdownBase({className:r,disabled:n,placement:c,children:d,items:i,trigger:m="hover",selectable:p=!1,deselectable:f=!1,multiple:y=!1,defaultSelectedKeys:k,selectedKeys:u,onChange:h,onSelect:v,onDeselect:g,onClick:b}){const K=s((()=>[m]),[m]),P=t(i),w=o((()=>({items:P,selectable:p,unselectable:f?"on":"off",multiple:y,defaultSelectedKeys:k,selectedKeys:u,onSelect:l(h)||l(v)?({key:e,keyPath:t,selectedKeys:o,domEvent:l})=>{l.stopPropagation(),h?.(o),v?.(e,t)}:void 0,onDeselect:l(h)||l(g)?({key:e,keyPath:t,selectedKeys:o,domEvent:l})=>{l.stopPropagation(),h?.(o),g?.(e,t)}:void 0,onClick:l(b)?({key:e,keyPath:t,domEvent:o})=>{o.stopPropagation(),b(e,t)}:void 0})),[k,y,P,h,b,g,v,p,u,f]);return e(a,{className:r,disabled:n,menu:w,placement:c,trigger:K,children:d})}));n.displayName="VefDropdown";export{n 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{useNormalizedMenuItems,useDeepMemo}from"@vef-framework/hooks";import{isFunction}from"@vef-framework/shared";import{Dropdown}from"antd";import{useMemo,memo}from"react";function VefDropdownBase({className,disabled,placement,children,items,trigger="hover",selectable=!1,deselectable=!1,multiple=!1,defaultSelectedKeys,selectedKeys,onChange,onSelect,onDeselect,onClick}){const dropdownTrigger=useMemo(()=>[trigger],[trigger]),normalizedItems=useNormalizedMenuItems(items),menuProps=useDeepMemo(()=>({items:normalizedItems,selectable,unselectable:deselectable?"on":"off",multiple,defaultSelectedKeys,selectedKeys,onSelect:isFunction(onChange)||isFunction(onSelect)?({key,keyPath,selectedKeys:selectedKeys2,domEvent})=>{domEvent.stopPropagation(),onChange?.(selectedKeys2),onSelect?.(key,keyPath)}:void 0,onDeselect:isFunction(onChange)||isFunction(onDeselect)?({key,keyPath,selectedKeys:selectedKeys2,domEvent})=>{domEvent.stopPropagation(),onChange?.(selectedKeys2),onDeselect?.(key,keyPath)}:void 0,onClick:isFunction(onClick)?({key,keyPath,domEvent})=>{domEvent.stopPropagation(),onClick(key,keyPath)}:void 0}),[defaultSelectedKeys,multiple,normalizedItems,onChange,onClick,onDeselect,onSelect,selectable,selectedKeys,deselectable]);return jsx(Dropdown,{className,disabled,menu:menuProps,placement,trigger:dropdownTrigger,children})}const VefDropdown=memo(VefDropdownBase);VefDropdown.displayName="VefDropdown";/*! 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{VefDropdown as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{useThemeTokens as o}from"@vef-framework/hooks";import r from"lucide-react/dynamicIconImports";import{forwardRef as t,lazy as i,Suspense as n}from"react";import c from"../vef-icon/index.js";function SvgPlaceholder(){const{colorFillContent:r}=o();return e("svg",{"aria-label":"Loading icon",height:"1em",role:"img",viewBox:"0 0 100 100",width:"1em",xmlns:"http://www.w3.org/2000/svg",children:e("rect",{fill:r,height:"100",rx:"20",width:"100"})})}const m=e(SvgPlaceholder,{}),a=new Map,l=t((({name:o,...t},l)=>{if(!a.has(o)){const e=i(r[o]);a.set(o,e)}const f=a.get(o);return e(c,{ref:l,...t,children:e(n,{fallback:m,children:e(f,{})})})}));l.displayName="VefDynamicIcon";export{l 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{useThemeTokens}from"@vef-framework/hooks";import dynamicIconImports from"lucide-react/dynamicIconImports";import{forwardRef,lazy,Suspense}from"react";import VefIcon from"../vef-icon/index.js";function SvgPlaceholder(){const{colorFillContent}=useThemeTokens();return jsx("svg",{"aria-label":"Loading icon",height:"1em",role:"img",viewBox:"0 0 100 100",width:"1em",xmlns:"http://www.w3.org/2000/svg",children:jsx("rect",{fill:colorFillContent,height:"100",rx:"20",width:"100"})})}const fallback=jsx(SvgPlaceholder,{}),iconCache=new Map,VefDynamicIcon=forwardRef(({name,...restProps},ref)=>{if(!iconCache.has(name)){const Icon2=lazy(dynamicIconImports[name]);iconCache.set(name,Icon2)}const Icon=iconCache.get(name);return jsx(VefIcon,{ref,...restProps,children:jsx(Suspense,{fallback,children:jsx(Icon,{})})})});VefDynamicIcon.displayName="VefDynamicIcon";/*! 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{VefDynamicIcon as default};
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import e from"lucide-react/dynamicIconImports";const t=new Set(Object.keys(e));export{t as dynamicIconNames};
|
|
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 dynamicIconImports from"lucide-react/dynamicIconImports";const dynamicIconNames=new Set(Object.keys(dynamicIconImports));/*! 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{dynamicIconNames};
|
package/es/vef-empty/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as t}from"@emotion/react/jsx-runtime";import{isNullish as e}from"@vef-framework/shared";import{Empty as r}from"antd";import{useMemo as o}from"react";const{PRESENTED_IMAGE_DEFAULT:m,PRESENTED_IMAGE_SIMPLE:f}=r;function VefEmpty({icon:i,iconStyle:n,presetIcon:E="default",...a}){const c=o((()=>e(i)?"default"===E?m:f:i),[i,E]),p=o((()=>{if(!e(n))return{image:n}}),[n]);return t(r,{image:c,styles:p,...a})}export{VefEmpty 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{isNullish}from"@vef-framework/shared";import{Empty}from"antd";import{useMemo}from"react";const{PRESENTED_IMAGE_DEFAULT,PRESENTED_IMAGE_SIMPLE}=Empty;function VefEmpty({icon,iconStyle,presetIcon="default",...restProps}){const iconToUse=useMemo(()=>isNullish(icon)?presetIcon==="default"?PRESENTED_IMAGE_DEFAULT:PRESENTED_IMAGE_SIMPLE:icon,[icon,presetIcon]),styles=useMemo(()=>{if(!isNullish(iconStyle))return{image:iconStyle}},[iconStyle]);return jsx(Empty,{image:iconToUse,styles,...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{VefEmpty as default};
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
/*! VefFramework version: 1.0.
|
|
2
|
-
import{jsx as e}from"@emotion/react/jsx-runtime";import{css as r}from"@emotion/react";import{themeVariables as t,styles as o}from"@vef-framework/shared";import m from"../vef-empty/index.js";const a=r`
|
|
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,styles}from"@vef-framework/shared";import VefEmpty from"../vef-empty/index.js";const emptyPlaceholderStyle=css`
|
|
3
2
|
height: 100%;
|
|
4
|
-
padding: ${
|
|
5
|
-
${
|
|
6
|
-
`;function VefEmptyPlaceholder({className
|
|
7
|
-
/*! 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 */
|
|
3
|
+
padding: ${themeVariables.paddingLg};
|
|
4
|
+
${styles.flexCenter}
|
|
5
|
+
`;function VefEmptyPlaceholder({className,style,...restProps}){return jsx("div",{className,css:emptyPlaceholderStyle,style,children:jsx(VefEmpty,{...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{VefEmptyPlaceholder as default};
|