ele-admin-plus 1.2.2-beta.5 → 1.3.0-beta.2
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/components.d.ts +2 -0
- package/es/components.js +6 -2
- package/es/core-components.d.ts +3 -0
- package/es/core-components.js +92 -86
- package/es/ele-app/el.d.ts +13 -0
- package/es/ele-app/plus.d.ts +6 -0
- package/es/ele-breadcrumb/types.d.ts +2 -3
- package/es/ele-cascader/index.d.ts +196 -0
- package/es/ele-cascader/index.js +95 -0
- package/es/ele-cascader/props.d.ts +75 -0
- package/es/ele-cascader/props.js +11 -0
- package/es/ele-cascader/style/index.d.ts +1 -0
- package/es/ele-cascader/style/index.js +1 -0
- package/es/ele-config-provider/components/receiver-view.js +1 -1
- package/es/ele-copyable/types.d.ts +2 -2
- package/es/ele-edit-tag/index.d.ts +4 -1
- package/es/ele-edit-tag/index.js +9 -5
- package/es/ele-edit-tag/props.d.ts +2 -0
- package/es/ele-edit-tag/props.js +3 -1
- package/es/ele-icon/index.d.ts +11 -0
- package/es/ele-icon/index.js +56 -0
- package/es/ele-icon/props.d.ts +11 -0
- package/es/ele-icon/props.js +7 -0
- package/es/ele-icon/style/index.d.ts +1 -0
- package/es/ele-icon/style/index.js +1 -0
- package/es/ele-icon-select/index.d.ts +3 -9
- package/es/ele-icon-select/props.d.ts +1 -4
- package/es/ele-icon-select/props.js +1 -4
- package/es/ele-menus/types.d.ts +3 -4
- package/es/ele-menus/util.js +2 -2
- package/es/ele-pro-form/components/builder-wrapper.d.ts +48 -0
- package/es/ele-pro-form/components/builder-wrapper.js +67 -0
- package/es/ele-pro-form/components/item-type-data.d.ts +6 -0
- package/es/ele-pro-form/components/item-type-data.js +692 -0
- package/es/ele-pro-form/components/pro-form-footer.d.ts +71 -0
- package/es/ele-pro-form/components/pro-form-footer.js +148 -0
- package/es/ele-pro-form/components/render-util.d.ts +105 -0
- package/es/ele-pro-form/components/render-util.js +442 -0
- package/es/ele-pro-form/index.d.ts +217 -0
- package/es/ele-pro-form/index.js +245 -0
- package/es/ele-pro-form/props.d.ts +176 -0
- package/es/ele-pro-form/props.js +112 -0
- package/es/ele-pro-form/style/css-var.scss +8 -0
- package/es/ele-pro-form/style/index.d.ts +1 -0
- package/es/ele-pro-form/style/index.js +49 -0
- package/es/ele-pro-form/style/index.scss +183 -0
- package/es/ele-pro-form/types.d.ts +132 -0
- package/es/ele-pro-form/util.d.ts +2 -0
- package/es/ele-pro-form/util.js +11 -0
- package/es/ele-pro-form-builder/components/body-form.d.ts +58 -0
- package/es/ele-pro-form-builder/components/body-form.js +181 -0
- package/es/ele-pro-form-builder/components/body-header.d.ts +62 -0
- package/es/ele-pro-form-builder/components/body-header.js +139 -0
- package/es/ele-pro-form-builder/components/build-util.d.ts +27 -0
- package/es/ele-pro-form-builder/components/build-util.js +99 -0
- package/es/ele-pro-form-builder/components/builder-tools.d.ts +31 -0
- package/es/ele-pro-form-builder/components/builder-tools.js +121 -0
- package/es/ele-pro-form-builder/components/children-edit.d.ts +40 -0
- package/es/ele-pro-form-builder/components/children-edit.js +118 -0
- package/es/ele-pro-form-builder/components/code-js-var.d.ts +44 -0
- package/es/ele-pro-form-builder/components/code-js-var.js +130 -0
- package/es/ele-pro-form-builder/components/code-template.d.ts +130 -0
- package/es/ele-pro-form-builder/components/code-template.js +602 -0
- package/es/ele-pro-form-builder/components/code-util.d.ts +46 -0
- package/es/ele-pro-form-builder/components/code-util.js +225 -0
- package/es/ele-pro-form-builder/components/component-data.d.ts +6 -0
- package/es/ele-pro-form-builder/components/component-data.js +8922 -0
- package/es/ele-pro-form-builder/components/component-list.d.ts +36 -0
- package/es/ele-pro-form-builder/components/component-list.js +107 -0
- package/es/ele-pro-form-builder/components/component-name.d.ts +23 -0
- package/es/ele-pro-form-builder/components/component-name.js +23 -0
- package/es/ele-pro-form-builder/components/config-form.d.ts +48 -0
- package/es/ele-pro-form-builder/components/config-form.js +69 -0
- package/es/ele-pro-form-builder/components/covers/cover-alert.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-alert.js +71 -0
- package/es/ele-pro-form-builder/components/covers/cover-autocomplete.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-autocomplete.js +38 -0
- package/es/ele-pro-form-builder/components/covers/cover-button.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-button.js +21 -0
- package/es/ele-pro-form-builder/components/covers/cover-card.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-card.js +44 -0
- package/es/ele-pro-form-builder/components/covers/cover-carousel.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-carousel.js +72 -0
- package/es/ele-pro-form-builder/components/covers/cover-cascader.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-cascader.js +104 -0
- package/es/ele-pro-form-builder/components/covers/cover-check-card.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-check-card.js +27 -0
- package/es/ele-pro-form-builder/components/covers/cover-checkbox-button.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-checkbox-button.js +37 -0
- package/es/ele-pro-form-builder/components/covers/cover-checkbox.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-checkbox.js +42 -0
- package/es/ele-pro-form-builder/components/covers/cover-collapse.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-collapse.js +69 -0
- package/es/ele-pro-form-builder/components/covers/cover-color-picker.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-color-picker.js +34 -0
- package/es/ele-pro-form-builder/components/covers/cover-date.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-date.js +34 -0
- package/es/ele-pro-form-builder/components/covers/cover-daterange.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-daterange.js +31 -0
- package/es/ele-pro-form-builder/components/covers/cover-datetime.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-datetime.js +34 -0
- package/es/ele-pro-form-builder/components/covers/cover-datetimerange.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-datetimerange.js +31 -0
- package/es/ele-pro-form-builder/components/covers/cover-descriptions.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-descriptions.js +50 -0
- package/es/ele-pro-form-builder/components/covers/cover-div.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-div.js +32 -0
- package/es/ele-pro-form-builder/components/covers/cover-divider.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-divider.js +36 -0
- package/es/ele-pro-form-builder/components/covers/cover-edit-tag.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-edit-tag.js +30 -0
- package/es/ele-pro-form-builder/components/covers/cover-icon.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-icon.js +29 -0
- package/es/ele-pro-form-builder/components/covers/cover-image.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-image.js +13 -0
- package/es/ele-pro-form-builder/components/covers/cover-input-number.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-input-number.js +52 -0
- package/es/ele-pro-form-builder/components/covers/cover-input.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-input.js +22 -0
- package/es/ele-pro-form-builder/components/covers/cover-label.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-label.js +29 -0
- package/es/ele-pro-form-builder/components/covers/cover-mention.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-mention.js +50 -0
- package/es/ele-pro-form-builder/components/covers/cover-multiple-cascader.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-multiple-cascader.js +127 -0
- package/es/ele-pro-form-builder/components/covers/cover-multiple-check-card.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-multiple-check-card.js +28 -0
- package/es/ele-pro-form-builder/components/covers/cover-multiple-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-multiple-select.js +73 -0
- package/es/ele-pro-form-builder/components/covers/cover-pro-table.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-pro-table.js +13 -0
- package/es/ele-pro-form-builder/components/covers/cover-radio-button.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-radio-button.js +35 -0
- package/es/ele-pro-form-builder/components/covers/cover-radio.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-radio.js +42 -0
- package/es/ele-pro-form-builder/components/covers/cover-rate.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-rate.js +32 -0
- package/es/ele-pro-form-builder/components/covers/cover-row.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-row.js +37 -0
- package/es/ele-pro-form-builder/components/covers/cover-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-select.js +42 -0
- package/es/ele-pro-form-builder/components/covers/cover-slider-range.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-slider-range.js +17 -0
- package/es/ele-pro-form-builder/components/covers/cover-slider.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-slider.js +48 -0
- package/es/ele-pro-form-builder/components/covers/cover-steps.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-steps.js +109 -0
- package/es/ele-pro-form-builder/components/covers/cover-switch.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-switch.js +33 -0
- package/es/ele-pro-form-builder/components/covers/cover-table-multiple-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-table-multiple-select.js +48 -0
- package/es/ele-pro-form-builder/components/covers/cover-table-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-table-select.js +37 -0
- package/es/ele-pro-form-builder/components/covers/cover-table.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-table.js +43 -0
- package/es/ele-pro-form-builder/components/covers/cover-tabs.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-tabs.js +58 -0
- package/es/ele-pro-form-builder/components/covers/cover-text.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-text.js +29 -0
- package/es/ele-pro-form-builder/components/covers/cover-textarea.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-textarea.js +26 -0
- package/es/ele-pro-form-builder/components/covers/cover-time-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-time-select.js +42 -0
- package/es/ele-pro-form-builder/components/covers/cover-time.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-time.js +72 -0
- package/es/ele-pro-form-builder/components/covers/cover-timerange.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-timerange.js +69 -0
- package/es/ele-pro-form-builder/components/covers/cover-transfer.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-transfer.js +122 -0
- package/es/ele-pro-form-builder/components/covers/cover-tree-multiple-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-tree-multiple-select.js +95 -0
- package/es/ele-pro-form-builder/components/covers/cover-tree-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-tree-select.js +73 -0
- package/es/ele-pro-form-builder/components/covers/cover-virtual-tree-multiple-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-virtual-tree-multiple-select.js +110 -0
- package/es/ele-pro-form-builder/components/covers/cover-virtual-tree-select.d.ts +2 -0
- package/es/ele-pro-form-builder/components/covers/cover-virtual-tree-select.js +88 -0
- package/es/ele-pro-form-builder/components/covers/index.d.ts +54 -0
- package/es/ele-pro-form-builder/components/covers/index.js +109 -0
- package/es/ele-pro-form-builder/components/icons/icon-arrow.d.ts +19 -0
- package/es/ele-pro-form-builder/components/icons/icon-arrow.js +51 -0
- package/es/ele-pro-form-builder/components/icons/icon-button.d.ts +19 -0
- package/es/ele-pro-form-builder/components/icons/icon-button.js +44 -0
- package/es/ele-pro-form-builder/components/icons/icon-calendar.d.ts +15 -0
- package/es/ele-pro-form-builder/components/icons/icon-calendar.js +25 -0
- package/es/ele-pro-form-builder/components/icons/icon-card.d.ts +17 -0
- package/es/ele-pro-form-builder/components/icons/icon-card.js +47 -0
- package/es/ele-pro-form-builder/components/icons/icon-checkbox.d.ts +17 -0
- package/es/ele-pro-form-builder/components/icons/icon-checkbox.js +53 -0
- package/es/ele-pro-form-builder/components/icons/icon-cursor.d.ts +2 -0
- package/es/ele-pro-form-builder/components/icons/icon-cursor.js +37 -0
- package/es/ele-pro-form-builder/components/icons/icon-image.d.ts +15 -0
- package/es/ele-pro-form-builder/components/icons/icon-image.js +48 -0
- package/es/ele-pro-form-builder/components/icons/icon-input.d.ts +24 -0
- package/es/ele-pro-form-builder/components/icons/icon-input.js +29 -0
- package/es/ele-pro-form-builder/components/icons/icon-panel.d.ts +24 -0
- package/es/ele-pro-form-builder/components/icons/icon-panel.js +26 -0
- package/es/ele-pro-form-builder/components/icons/icon-radio-button.d.ts +23 -0
- package/es/ele-pro-form-builder/components/icons/icon-radio-button.js +38 -0
- package/es/ele-pro-form-builder/components/icons/icon-radio.d.ts +26 -0
- package/es/ele-pro-form-builder/components/icons/icon-radio.js +43 -0
- package/es/ele-pro-form-builder/components/icons/icon-range-skeleton.d.ts +15 -0
- package/es/ele-pro-form-builder/components/icons/icon-range-skeleton.js +35 -0
- package/es/ele-pro-form-builder/components/icons/icon-skeleton.d.ts +26 -0
- package/es/ele-pro-form-builder/components/icons/icon-skeleton.js +28 -0
- package/es/ele-pro-form-builder/components/icons/icon-table-row.d.ts +32 -0
- package/es/ele-pro-form-builder/components/icons/icon-table-row.js +63 -0
- package/es/ele-pro-form-builder/components/icons/icon-table.d.ts +17 -0
- package/es/ele-pro-form-builder/components/icons/icon-table.js +65 -0
- package/es/ele-pro-form-builder/components/icons/index.d.ts +16 -0
- package/es/ele-pro-form-builder/components/icons/index.js +34 -0
- package/es/ele-pro-form-builder/components/icons/svg-icon.d.ts +32 -0
- package/es/ele-pro-form-builder/components/icons/svg-icon.js +66 -0
- package/es/ele-pro-form-builder/components/json-input.d.ts +22 -0
- package/es/ele-pro-form-builder/components/json-input.js +63 -0
- package/es/ele-pro-form-builder/components/options-edit.d.ts +61 -0
- package/es/ele-pro-form-builder/components/options-edit.js +496 -0
- package/es/ele-pro-form-builder/components/outline-list.d.ts +56 -0
- package/es/ele-pro-form-builder/components/outline-list.js +226 -0
- package/es/ele-pro-form-builder/components/outline-tree.d.ts +38 -0
- package/es/ele-pro-form-builder/components/outline-tree.js +143 -0
- package/es/ele-pro-form-builder/components/preview-modal.d.ts +46 -0
- package/es/ele-pro-form-builder/components/preview-modal.js +134 -0
- package/es/ele-pro-form-builder/components/props-form.d.ts +58 -0
- package/es/ele-pro-form-builder/components/props-form.js +187 -0
- package/es/ele-pro-form-builder/components/style-edit.d.ts +25 -0
- package/es/ele-pro-form-builder/components/style-edit.js +188 -0
- package/es/ele-pro-form-builder/components/table-tool-menu.d.ts +26 -0
- package/es/ele-pro-form-builder/components/table-tool-menu.js +166 -0
- package/es/ele-pro-form-builder/components/table-util.d.ts +145 -0
- package/es/ele-pro-form-builder/components/table-util.js +617 -0
- package/es/ele-pro-form-builder/components/template-list.d.ts +23 -0
- package/es/ele-pro-form-builder/components/template-list.js +52 -0
- package/es/ele-pro-form-builder/components/tool-button.d.ts +36 -0
- package/es/ele-pro-form-builder/components/tool-button.js +34 -0
- package/es/ele-pro-form-builder/components/tree-table.d.ts +3253 -0
- package/es/ele-pro-form-builder/components/tree-table.js +239 -0
- package/es/ele-pro-form-builder/index.d.ts +34 -0
- package/es/ele-pro-form-builder/index.js +427 -0
- package/es/ele-pro-form-builder/props.d.ts +32 -0
- package/es/ele-pro-form-builder/props.js +24 -0
- package/es/ele-pro-form-builder/style/css-var.scss +8 -0
- package/es/ele-pro-form-builder/style/index.d.ts +1 -0
- package/es/ele-pro-form-builder/style/index.js +3 -0
- package/es/ele-pro-form-builder/style/index.scss +1162 -0
- package/es/ele-pro-form-builder/types.d.ts +178 -0
- package/es/ele-pro-form-builder/util.d.ts +92 -0
- package/es/ele-pro-form-builder/util.js +277 -0
- package/es/ele-pro-table/index.d.ts +6 -0
- package/es/ele-pro-table/index.js +16 -1
- package/es/ele-pro-table/props.d.ts +3 -0
- package/es/ele-pro-table/props.js +3 -2
- package/es/ele-segmented/types.d.ts +2 -3
- package/es/ele-select/index.d.ts +208 -0
- package/es/ele-select/index.js +80 -0
- package/es/ele-select/props.d.ts +98 -0
- package/es/ele-select/props.js +19 -0
- package/es/ele-select/style/index.d.ts +1 -0
- package/es/ele-select/style/index.js +3 -0
- package/es/ele-select/types.d.ts +20 -0
- package/es/ele-tab-wrap/index.js +2 -2
- package/es/ele-text/types.d.ts +2 -2
- package/es/ele-timeline/index.d.ts +26 -0
- package/es/ele-timeline/index.js +169 -0
- package/es/ele-timeline/props.d.ts +22 -0
- package/es/ele-timeline/props.js +16 -0
- package/es/ele-timeline/style/css-var.scss +8 -0
- package/es/ele-timeline/style/index.d.ts +1 -0
- package/es/ele-timeline/style/index.js +2 -0
- package/es/ele-timeline/style/index.scss +116 -0
- package/es/ele-timeline/types.d.ts +62 -0
- package/es/ele-virtual-table/index.d.ts +8 -0
- package/es/ele-virtual-table/index.js +13 -2
- package/es/ele-virtual-table/props.d.ts +4 -0
- package/es/ele-virtual-table/props.js +4 -1
- package/es/ele-virtual-table/util.js +2 -2
- package/es/ele-watermark/util.js +2 -2
- package/es/style/plus.scss +3 -0
- package/es/style/themes/default.scss +40 -0
- package/es/style/themes/theme-util.scss +6 -0
- package/es/style/util.scss +11 -0
- package/es/utils/hook.d.ts +24 -0
- package/es/utils/hook.js +40 -0
- package/es/utils/menu-util.js +2 -2
- package/lib/components.cjs +6 -2
- package/lib/components.d.ts +2 -0
- package/lib/core-components.cjs +92 -86
- package/lib/core-components.d.ts +3 -0
- package/lib/ele-app/el.d.ts +13 -0
- package/lib/ele-app/plus.d.ts +6 -0
- package/lib/ele-breadcrumb/types.d.ts +2 -3
- package/lib/ele-cascader/index.cjs +94 -0
- package/lib/ele-cascader/index.d.ts +196 -0
- package/lib/ele-cascader/props.cjs +13 -0
- package/lib/ele-cascader/props.d.ts +75 -0
- package/lib/ele-cascader/style/index.cjs +2 -0
- package/lib/ele-cascader/style/index.d.ts +1 -0
- package/lib/ele-config-provider/components/receiver-view.cjs +1 -1
- package/lib/ele-copyable/types.d.ts +2 -2
- package/lib/ele-edit-tag/index.cjs +9 -5
- package/lib/ele-edit-tag/index.d.ts +4 -1
- package/lib/ele-edit-tag/props.cjs +3 -1
- package/lib/ele-edit-tag/props.d.ts +2 -0
- package/lib/ele-icon/index.cjs +55 -0
- package/lib/ele-icon/index.d.ts +11 -0
- package/lib/ele-icon/props.cjs +7 -0
- package/lib/ele-icon/props.d.ts +11 -0
- package/lib/ele-icon/style/index.cjs +2 -0
- package/lib/ele-icon/style/index.d.ts +1 -0
- package/lib/ele-icon-select/index.d.ts +3 -9
- package/lib/ele-icon-select/props.cjs +1 -4
- package/lib/ele-icon-select/props.d.ts +1 -4
- package/lib/ele-menus/types.d.ts +3 -4
- package/lib/ele-menus/util.cjs +1 -1
- package/lib/ele-pro-form/components/builder-wrapper.cjs +66 -0
- package/lib/ele-pro-form/components/builder-wrapper.d.ts +48 -0
- package/lib/ele-pro-form/components/item-type-data.cjs +692 -0
- package/lib/ele-pro-form/components/item-type-data.d.ts +6 -0
- package/lib/ele-pro-form/components/pro-form-footer.cjs +147 -0
- package/lib/ele-pro-form/components/pro-form-footer.d.ts +71 -0
- package/lib/ele-pro-form/components/render-util.cjs +442 -0
- package/lib/ele-pro-form/components/render-util.d.ts +105 -0
- package/lib/ele-pro-form/index.cjs +244 -0
- package/lib/ele-pro-form/index.d.ts +217 -0
- package/lib/ele-pro-form/props.cjs +112 -0
- package/lib/ele-pro-form/props.d.ts +176 -0
- package/lib/ele-pro-form/style/css-var.scss +8 -0
- package/lib/ele-pro-form/style/index.cjs +50 -0
- package/lib/ele-pro-form/style/index.d.ts +1 -0
- package/lib/ele-pro-form/style/index.scss +183 -0
- package/lib/ele-pro-form/types.d.ts +132 -0
- package/lib/ele-pro-form/util.cjs +17 -0
- package/lib/ele-pro-form/util.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/body-form.cjs +180 -0
- package/lib/ele-pro-form-builder/components/body-form.d.ts +58 -0
- package/lib/ele-pro-form-builder/components/body-header.cjs +138 -0
- package/lib/ele-pro-form-builder/components/body-header.d.ts +62 -0
- package/lib/ele-pro-form-builder/components/build-util.cjs +99 -0
- package/lib/ele-pro-form-builder/components/build-util.d.ts +27 -0
- package/lib/ele-pro-form-builder/components/builder-tools.cjs +120 -0
- package/lib/ele-pro-form-builder/components/builder-tools.d.ts +31 -0
- package/lib/ele-pro-form-builder/components/children-edit.cjs +117 -0
- package/lib/ele-pro-form-builder/components/children-edit.d.ts +40 -0
- package/lib/ele-pro-form-builder/components/code-js-var.cjs +147 -0
- package/lib/ele-pro-form-builder/components/code-js-var.d.ts +44 -0
- package/lib/ele-pro-form-builder/components/code-template.cjs +602 -0
- package/lib/ele-pro-form-builder/components/code-template.d.ts +130 -0
- package/lib/ele-pro-form-builder/components/code-util.cjs +225 -0
- package/lib/ele-pro-form-builder/components/code-util.d.ts +46 -0
- package/lib/ele-pro-form-builder/components/component-data.cjs +8922 -0
- package/lib/ele-pro-form-builder/components/component-data.d.ts +6 -0
- package/lib/ele-pro-form-builder/components/component-list.cjs +106 -0
- package/lib/ele-pro-form-builder/components/component-list.d.ts +36 -0
- package/lib/ele-pro-form-builder/components/component-name.cjs +22 -0
- package/lib/ele-pro-form-builder/components/component-name.d.ts +23 -0
- package/lib/ele-pro-form-builder/components/config-form.cjs +68 -0
- package/lib/ele-pro-form-builder/components/config-form.d.ts +48 -0
- package/lib/ele-pro-form-builder/components/covers/cover-alert.cjs +70 -0
- package/lib/ele-pro-form-builder/components/covers/cover-alert.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-autocomplete.cjs +37 -0
- package/lib/ele-pro-form-builder/components/covers/cover-autocomplete.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-button.cjs +20 -0
- package/lib/ele-pro-form-builder/components/covers/cover-button.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-card.cjs +43 -0
- package/lib/ele-pro-form-builder/components/covers/cover-card.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-carousel.cjs +71 -0
- package/lib/ele-pro-form-builder/components/covers/cover-carousel.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-cascader.cjs +103 -0
- package/lib/ele-pro-form-builder/components/covers/cover-cascader.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-check-card.cjs +26 -0
- package/lib/ele-pro-form-builder/components/covers/cover-check-card.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-checkbox-button.cjs +36 -0
- package/lib/ele-pro-form-builder/components/covers/cover-checkbox-button.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-checkbox.cjs +41 -0
- package/lib/ele-pro-form-builder/components/covers/cover-checkbox.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-collapse.cjs +68 -0
- package/lib/ele-pro-form-builder/components/covers/cover-collapse.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-color-picker.cjs +33 -0
- package/lib/ele-pro-form-builder/components/covers/cover-color-picker.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-date.cjs +33 -0
- package/lib/ele-pro-form-builder/components/covers/cover-date.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-daterange.cjs +30 -0
- package/lib/ele-pro-form-builder/components/covers/cover-daterange.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-datetime.cjs +33 -0
- package/lib/ele-pro-form-builder/components/covers/cover-datetime.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-datetimerange.cjs +30 -0
- package/lib/ele-pro-form-builder/components/covers/cover-datetimerange.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-descriptions.cjs +49 -0
- package/lib/ele-pro-form-builder/components/covers/cover-descriptions.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-div.cjs +31 -0
- package/lib/ele-pro-form-builder/components/covers/cover-div.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-divider.cjs +35 -0
- package/lib/ele-pro-form-builder/components/covers/cover-divider.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-edit-tag.cjs +29 -0
- package/lib/ele-pro-form-builder/components/covers/cover-edit-tag.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-icon.cjs +28 -0
- package/lib/ele-pro-form-builder/components/covers/cover-icon.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-image.cjs +12 -0
- package/lib/ele-pro-form-builder/components/covers/cover-image.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-input-number.cjs +51 -0
- package/lib/ele-pro-form-builder/components/covers/cover-input-number.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-input.cjs +21 -0
- package/lib/ele-pro-form-builder/components/covers/cover-input.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-label.cjs +28 -0
- package/lib/ele-pro-form-builder/components/covers/cover-label.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-mention.cjs +49 -0
- package/lib/ele-pro-form-builder/components/covers/cover-mention.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-multiple-cascader.cjs +126 -0
- package/lib/ele-pro-form-builder/components/covers/cover-multiple-cascader.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-multiple-check-card.cjs +27 -0
- package/lib/ele-pro-form-builder/components/covers/cover-multiple-check-card.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-multiple-select.cjs +72 -0
- package/lib/ele-pro-form-builder/components/covers/cover-multiple-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-pro-table.cjs +12 -0
- package/lib/ele-pro-form-builder/components/covers/cover-pro-table.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-radio-button.cjs +34 -0
- package/lib/ele-pro-form-builder/components/covers/cover-radio-button.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-radio.cjs +41 -0
- package/lib/ele-pro-form-builder/components/covers/cover-radio.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-rate.cjs +31 -0
- package/lib/ele-pro-form-builder/components/covers/cover-rate.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-row.cjs +36 -0
- package/lib/ele-pro-form-builder/components/covers/cover-row.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-select.cjs +41 -0
- package/lib/ele-pro-form-builder/components/covers/cover-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-slider-range.cjs +16 -0
- package/lib/ele-pro-form-builder/components/covers/cover-slider-range.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-slider.cjs +47 -0
- package/lib/ele-pro-form-builder/components/covers/cover-slider.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-steps.cjs +108 -0
- package/lib/ele-pro-form-builder/components/covers/cover-steps.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-switch.cjs +32 -0
- package/lib/ele-pro-form-builder/components/covers/cover-switch.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-table-multiple-select.cjs +47 -0
- package/lib/ele-pro-form-builder/components/covers/cover-table-multiple-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-table-select.cjs +36 -0
- package/lib/ele-pro-form-builder/components/covers/cover-table-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-table.cjs +42 -0
- package/lib/ele-pro-form-builder/components/covers/cover-table.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-tabs.cjs +57 -0
- package/lib/ele-pro-form-builder/components/covers/cover-tabs.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-text.cjs +28 -0
- package/lib/ele-pro-form-builder/components/covers/cover-text.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-textarea.cjs +25 -0
- package/lib/ele-pro-form-builder/components/covers/cover-textarea.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-time-select.cjs +41 -0
- package/lib/ele-pro-form-builder/components/covers/cover-time-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-time.cjs +71 -0
- package/lib/ele-pro-form-builder/components/covers/cover-time.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-timerange.cjs +68 -0
- package/lib/ele-pro-form-builder/components/covers/cover-timerange.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-transfer.cjs +121 -0
- package/lib/ele-pro-form-builder/components/covers/cover-transfer.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-tree-multiple-select.cjs +94 -0
- package/lib/ele-pro-form-builder/components/covers/cover-tree-multiple-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-tree-select.cjs +72 -0
- package/lib/ele-pro-form-builder/components/covers/cover-tree-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-virtual-tree-multiple-select.cjs +109 -0
- package/lib/ele-pro-form-builder/components/covers/cover-virtual-tree-multiple-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/cover-virtual-tree-select.cjs +87 -0
- package/lib/ele-pro-form-builder/components/covers/cover-virtual-tree-select.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/covers/index.cjs +109 -0
- package/lib/ele-pro-form-builder/components/covers/index.d.ts +54 -0
- package/lib/ele-pro-form-builder/components/icons/icon-arrow.cjs +50 -0
- package/lib/ele-pro-form-builder/components/icons/icon-arrow.d.ts +19 -0
- package/lib/ele-pro-form-builder/components/icons/icon-button.cjs +43 -0
- package/lib/ele-pro-form-builder/components/icons/icon-button.d.ts +19 -0
- package/lib/ele-pro-form-builder/components/icons/icon-calendar.cjs +24 -0
- package/lib/ele-pro-form-builder/components/icons/icon-calendar.d.ts +15 -0
- package/lib/ele-pro-form-builder/components/icons/icon-card.cjs +46 -0
- package/lib/ele-pro-form-builder/components/icons/icon-card.d.ts +17 -0
- package/lib/ele-pro-form-builder/components/icons/icon-checkbox.cjs +52 -0
- package/lib/ele-pro-form-builder/components/icons/icon-checkbox.d.ts +17 -0
- package/lib/ele-pro-form-builder/components/icons/icon-cursor.cjs +36 -0
- package/lib/ele-pro-form-builder/components/icons/icon-cursor.d.ts +2 -0
- package/lib/ele-pro-form-builder/components/icons/icon-image.cjs +47 -0
- package/lib/ele-pro-form-builder/components/icons/icon-image.d.ts +15 -0
- package/lib/ele-pro-form-builder/components/icons/icon-input.cjs +28 -0
- package/lib/ele-pro-form-builder/components/icons/icon-input.d.ts +24 -0
- package/lib/ele-pro-form-builder/components/icons/icon-panel.cjs +25 -0
- package/lib/ele-pro-form-builder/components/icons/icon-panel.d.ts +24 -0
- package/lib/ele-pro-form-builder/components/icons/icon-radio-button.cjs +37 -0
- package/lib/ele-pro-form-builder/components/icons/icon-radio-button.d.ts +23 -0
- package/lib/ele-pro-form-builder/components/icons/icon-radio.cjs +42 -0
- package/lib/ele-pro-form-builder/components/icons/icon-radio.d.ts +26 -0
- package/lib/ele-pro-form-builder/components/icons/icon-range-skeleton.cjs +34 -0
- package/lib/ele-pro-form-builder/components/icons/icon-range-skeleton.d.ts +15 -0
- package/lib/ele-pro-form-builder/components/icons/icon-skeleton.cjs +27 -0
- package/lib/ele-pro-form-builder/components/icons/icon-skeleton.d.ts +26 -0
- package/lib/ele-pro-form-builder/components/icons/icon-table-row.cjs +62 -0
- package/lib/ele-pro-form-builder/components/icons/icon-table-row.d.ts +32 -0
- package/lib/ele-pro-form-builder/components/icons/icon-table.cjs +64 -0
- package/lib/ele-pro-form-builder/components/icons/icon-table.d.ts +17 -0
- package/lib/ele-pro-form-builder/components/icons/index.cjs +34 -0
- package/lib/ele-pro-form-builder/components/icons/index.d.ts +16 -0
- package/lib/ele-pro-form-builder/components/icons/svg-icon.cjs +65 -0
- package/lib/ele-pro-form-builder/components/icons/svg-icon.d.ts +32 -0
- package/lib/ele-pro-form-builder/components/json-input.cjs +62 -0
- package/lib/ele-pro-form-builder/components/json-input.d.ts +22 -0
- package/lib/ele-pro-form-builder/components/options-edit.cjs +495 -0
- package/lib/ele-pro-form-builder/components/options-edit.d.ts +61 -0
- package/lib/ele-pro-form-builder/components/outline-list.cjs +225 -0
- package/lib/ele-pro-form-builder/components/outline-list.d.ts +56 -0
- package/lib/ele-pro-form-builder/components/outline-tree.cjs +142 -0
- package/lib/ele-pro-form-builder/components/outline-tree.d.ts +38 -0
- package/lib/ele-pro-form-builder/components/preview-modal.cjs +133 -0
- package/lib/ele-pro-form-builder/components/preview-modal.d.ts +46 -0
- package/lib/ele-pro-form-builder/components/props-form.cjs +186 -0
- package/lib/ele-pro-form-builder/components/props-form.d.ts +58 -0
- package/lib/ele-pro-form-builder/components/style-edit.cjs +187 -0
- package/lib/ele-pro-form-builder/components/style-edit.d.ts +25 -0
- package/lib/ele-pro-form-builder/components/table-tool-menu.cjs +165 -0
- package/lib/ele-pro-form-builder/components/table-tool-menu.d.ts +26 -0
- package/lib/ele-pro-form-builder/components/table-util.cjs +617 -0
- package/lib/ele-pro-form-builder/components/table-util.d.ts +145 -0
- package/lib/ele-pro-form-builder/components/template-list.cjs +51 -0
- package/lib/ele-pro-form-builder/components/template-list.d.ts +23 -0
- package/lib/ele-pro-form-builder/components/tool-button.cjs +33 -0
- package/lib/ele-pro-form-builder/components/tool-button.d.ts +36 -0
- package/lib/ele-pro-form-builder/components/tree-table.cjs +238 -0
- package/lib/ele-pro-form-builder/components/tree-table.d.ts +3253 -0
- package/lib/ele-pro-form-builder/index.cjs +426 -0
- package/lib/ele-pro-form-builder/index.d.ts +34 -0
- package/lib/ele-pro-form-builder/props.cjs +24 -0
- package/lib/ele-pro-form-builder/props.d.ts +32 -0
- package/lib/ele-pro-form-builder/style/css-var.scss +8 -0
- package/lib/ele-pro-form-builder/style/index.cjs +4 -0
- package/lib/ele-pro-form-builder/style/index.d.ts +1 -0
- package/lib/ele-pro-form-builder/style/index.scss +1162 -0
- package/lib/ele-pro-form-builder/types.d.ts +178 -0
- package/lib/ele-pro-form-builder/util.cjs +280 -0
- package/lib/ele-pro-form-builder/util.d.ts +92 -0
- package/lib/ele-pro-table/index.cjs +16 -1
- package/lib/ele-pro-table/index.d.ts +6 -0
- package/lib/ele-pro-table/props.cjs +2 -1
- package/lib/ele-pro-table/props.d.ts +3 -0
- package/lib/ele-segmented/types.d.ts +2 -3
- package/lib/ele-select/index.cjs +79 -0
- package/lib/ele-select/index.d.ts +208 -0
- package/lib/ele-select/props.cjs +19 -0
- package/lib/ele-select/props.d.ts +98 -0
- package/lib/ele-select/style/index.cjs +4 -0
- package/lib/ele-select/style/index.d.ts +1 -0
- package/lib/ele-select/types.d.ts +20 -0
- package/lib/ele-tab-wrap/index.cjs +1 -1
- package/lib/ele-text/types.d.ts +2 -2
- package/lib/ele-timeline/index.cjs +168 -0
- package/lib/ele-timeline/index.d.ts +26 -0
- package/lib/ele-timeline/props.cjs +16 -0
- package/lib/ele-timeline/props.d.ts +22 -0
- package/lib/ele-timeline/style/css-var.scss +8 -0
- package/lib/ele-timeline/style/index.cjs +3 -0
- package/lib/ele-timeline/style/index.d.ts +1 -0
- package/lib/ele-timeline/style/index.scss +116 -0
- package/lib/ele-timeline/types.d.ts +62 -0
- package/lib/ele-virtual-table/index.cjs +13 -2
- package/lib/ele-virtual-table/index.d.ts +8 -0
- package/lib/ele-virtual-table/props.cjs +4 -1
- package/lib/ele-virtual-table/props.d.ts +4 -0
- package/lib/ele-virtual-table/util.cjs +1 -1
- package/lib/ele-watermark/util.cjs +1 -1
- package/lib/style/plus.scss +3 -0
- package/lib/style/themes/default.scss +40 -0
- package/lib/style/themes/theme-util.scss +6 -0
- package/lib/style/util.scss +11 -0
- package/lib/utils/hook.cjs +40 -0
- package/lib/utils/hook.d.ts +24 -0
- package/lib/utils/menu-util.cjs +2 -2
- package/package.json +1 -1
- package/typings/global.d.ts +6 -0
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const vue = require("vue");
|
|
3
|
+
const elementPlus = require("element-plus");
|
|
4
|
+
const core = require("../../utils/core");
|
|
5
|
+
const util = require("../../ele-pro-form/util");
|
|
6
|
+
const EleProForm = require("../../ele-pro-form/index");
|
|
7
|
+
const util$1 = require("../util");
|
|
8
|
+
const buildUtil = require("./build-util");
|
|
9
|
+
const ComponentName = require("./component-name");
|
|
10
|
+
const BuilderTools = require("./builder-tools");
|
|
11
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
12
|
+
__name: "body-form",
|
|
13
|
+
props: {
|
|
14
|
+
formProps: {},
|
|
15
|
+
currentFormItemId: {},
|
|
16
|
+
currentScreen: {},
|
|
17
|
+
componentData: {},
|
|
18
|
+
proFormComponent: {},
|
|
19
|
+
itemTypeData: {}
|
|
20
|
+
},
|
|
21
|
+
emits: ["update:currentFormItemId", "updateItems", "openTableTool", "updateFormItems"],
|
|
22
|
+
setup(__props, { emit: __emit }) {
|
|
23
|
+
const ownSlots = ["builderItemHandleContent", "builderItemTools"];
|
|
24
|
+
const props = __props;
|
|
25
|
+
const emit = __emit;
|
|
26
|
+
const proFormRef = vue.ref(null);
|
|
27
|
+
const formData = vue.reactive({});
|
|
28
|
+
const cachebuilderFormData = vue.reactive({});
|
|
29
|
+
const handleUpdateItems = (result) => {
|
|
30
|
+
emit("updateItems", result);
|
|
31
|
+
};
|
|
32
|
+
const handleUpdateCurrentFormItemId = (formItemId) => {
|
|
33
|
+
emit("update:currentFormItemId", formItemId);
|
|
34
|
+
};
|
|
35
|
+
const handleDeleteItem = (item) => {
|
|
36
|
+
if (item.key != null) {
|
|
37
|
+
handleUpdateItems({
|
|
38
|
+
deleteItemIds: [item.key],
|
|
39
|
+
addItems: [],
|
|
40
|
+
updateItems: []
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
const handleAddChildrenItem = (formItem, action) => {
|
|
45
|
+
var _a;
|
|
46
|
+
if (formItem.key != null) {
|
|
47
|
+
core.eachTree((_a = props.formProps) == null ? void 0 : _a.items, (item, cIndex, parent) => {
|
|
48
|
+
var _a2;
|
|
49
|
+
if (item.key === formItem.key) {
|
|
50
|
+
const result = buildUtil.generateAddChildData(
|
|
51
|
+
item,
|
|
52
|
+
parent,
|
|
53
|
+
cIndex,
|
|
54
|
+
action,
|
|
55
|
+
(_a2 = props.formProps) == null ? void 0 : _a2.items
|
|
56
|
+
);
|
|
57
|
+
handleUpdateItems(result);
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const handleCopyItem = (item) => {
|
|
64
|
+
var _a;
|
|
65
|
+
if (item.key != null) {
|
|
66
|
+
handleUpdateItems(
|
|
67
|
+
buildUtil.generateCopyItemData(item.key, (_a = props.formProps) == null ? void 0 : _a.items)
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
const handleOpenTableTool = (item, e) => {
|
|
72
|
+
if (item.key != null) {
|
|
73
|
+
emit("openTableTool", item.key, e.currentTarget);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
const setBuilderFormDataFieldValue = (field, value) => {
|
|
77
|
+
util.setValue(formData, field, value);
|
|
78
|
+
util.setValue(cachebuilderFormData, field, value);
|
|
79
|
+
};
|
|
80
|
+
const handleUpdateFormItems = (items) => {
|
|
81
|
+
emit("updateFormItems", items);
|
|
82
|
+
};
|
|
83
|
+
vue.watch(
|
|
84
|
+
() => props.currentFormItemId,
|
|
85
|
+
(currentFormItemId) => {
|
|
86
|
+
var _a;
|
|
87
|
+
core.eachTree((_a = props.formProps) == null ? void 0 : _a.items, (item, _cIndex, parent) => {
|
|
88
|
+
if (item.key === currentFormItemId) {
|
|
89
|
+
if (item.type && ["tabPane", "collapseItem"].includes(item.type) && parent) {
|
|
90
|
+
setBuilderFormDataFieldValue(parent.prop, item.prop);
|
|
91
|
+
}
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
);
|
|
97
|
+
vue.watch(
|
|
98
|
+
() => props.formProps,
|
|
99
|
+
() => {
|
|
100
|
+
var _a;
|
|
101
|
+
Object.keys(formData).forEach((k) => {
|
|
102
|
+
formData[k] = void 0;
|
|
103
|
+
});
|
|
104
|
+
util.mergeValue(
|
|
105
|
+
formData,
|
|
106
|
+
util$1.getFormInitValue((_a = props.formProps) == null ? void 0 : _a.items, props.itemTypeData),
|
|
107
|
+
cachebuilderFormData
|
|
108
|
+
);
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
deep: true,
|
|
112
|
+
immediate: true
|
|
113
|
+
}
|
|
114
|
+
);
|
|
115
|
+
return (_ctx, _cache) => {
|
|
116
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
117
|
+
class: vue.normalizeClass([
|
|
118
|
+
"ele-pro-form-builder-body",
|
|
119
|
+
{ "is-pc": _ctx.currentScreen === "pc" },
|
|
120
|
+
{ "is-pad": _ctx.currentScreen === "pad" },
|
|
121
|
+
{ "is-phone": _ctx.currentScreen === "phone" }
|
|
122
|
+
])
|
|
123
|
+
}, [
|
|
124
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.proFormComponent || EleProForm), vue.mergeProps(_ctx.formProps || {}, {
|
|
125
|
+
ref_key: "proFormRef",
|
|
126
|
+
ref: proFormRef,
|
|
127
|
+
model: formData,
|
|
128
|
+
searchExpand: formData.searchExpand,
|
|
129
|
+
"onUpdate:searchExpand": _cache[0] || (_cache[0] = ($event) => formData.searchExpand = $event),
|
|
130
|
+
activeItemKey: _ctx.currentFormItemId,
|
|
131
|
+
editable: true,
|
|
132
|
+
footer: false,
|
|
133
|
+
validateOnRuleChange: false,
|
|
134
|
+
scrollToError: false,
|
|
135
|
+
showMessage: false,
|
|
136
|
+
itemTypeData: _ctx.itemTypeData,
|
|
137
|
+
class: "ele-pro-form-builder-body-form",
|
|
138
|
+
onUpdateValue: setBuilderFormDataFieldValue,
|
|
139
|
+
"onUpdate:items": handleUpdateFormItems,
|
|
140
|
+
"onUpdate:activeItemKey": handleUpdateCurrentFormItemId
|
|
141
|
+
}), vue.createSlots({
|
|
142
|
+
builderItemHandleContent: vue.withCtx(({ item }) => [
|
|
143
|
+
vue.createVNode(ComponentName, {
|
|
144
|
+
itemType: item.type,
|
|
145
|
+
componentData: _ctx.componentData
|
|
146
|
+
}, null, 8, ["itemType", "componentData"])
|
|
147
|
+
]),
|
|
148
|
+
builderItemTools: vue.withCtx(({ item }) => [
|
|
149
|
+
vue.createVNode(BuilderTools, {
|
|
150
|
+
itemType: item.type,
|
|
151
|
+
onDelete: ($event) => handleDeleteItem(item),
|
|
152
|
+
onCopy: ($event) => handleCopyItem(item),
|
|
153
|
+
onAdd: ($event) => handleAddChildrenItem(item),
|
|
154
|
+
onAddTableRow: ($event) => handleAddChildrenItem(item, "addTableRow"),
|
|
155
|
+
onAddTableCol: ($event) => handleAddChildrenItem(item, "addTableCol"),
|
|
156
|
+
onOpenTableTool: (e) => handleOpenTableTool(item, e)
|
|
157
|
+
}, null, 8, ["itemType", "onDelete", "onCopy", "onAdd", "onAddTableRow", "onAddTableCol", "onOpenTableTool"])
|
|
158
|
+
]),
|
|
159
|
+
_: 2
|
|
160
|
+
}, [
|
|
161
|
+
vue.renderList(Object.keys(_ctx.$slots).filter((k) => !ownSlots.includes(k)), (name) => {
|
|
162
|
+
return {
|
|
163
|
+
name,
|
|
164
|
+
fn: vue.withCtx((slotProps) => [
|
|
165
|
+
vue.renderSlot(_ctx.$slots, name, vue.normalizeProps(vue.guardReactiveProps(slotProps || {})))
|
|
166
|
+
])
|
|
167
|
+
};
|
|
168
|
+
})
|
|
169
|
+
]), 1040, ["model", "searchExpand", "activeItemKey", "itemTypeData"])),
|
|
170
|
+
!_ctx.formProps || !_ctx.formProps.items || !_ctx.formProps.items.length ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElEmpty), {
|
|
171
|
+
key: 0,
|
|
172
|
+
imageSize: 80,
|
|
173
|
+
description: "拖拽左侧组件到此",
|
|
174
|
+
class: "ele-pro-form-builder-form-empty"
|
|
175
|
+
})) : vue.createCommentVNode("", true)
|
|
176
|
+
], 2);
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
module.exports = _sfc_main;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { UserComponent } from '../../ele-app/types';
|
|
2
|
+
import { ProFormItemKey, ProFormItemProps, ProFormItemTypeData } from '../../ele-pro-form/types';
|
|
3
|
+
import { TemplateFormConfig, ComponentGroup, UpdateItemsResult } from '../types';
|
|
4
|
+
|
|
5
|
+
declare function __VLS_template(): Partial<Record<string, (_: any) => any>>;
|
|
6
|
+
declare const __VLS_component: import('vue').DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
7
|
+
/** 表单属性 */
|
|
8
|
+
formProps?: TemplateFormConfig;
|
|
9
|
+
/** 选中的表单项 id */
|
|
10
|
+
currentFormItemId?: ProFormItemKey;
|
|
11
|
+
/** 当前选中屏幕尺寸 */
|
|
12
|
+
currentScreen?: string;
|
|
13
|
+
/** 组件库数据 */
|
|
14
|
+
componentData?: ComponentGroup[];
|
|
15
|
+
/** 高级表单组件 */
|
|
16
|
+
proFormComponent?: UserComponent;
|
|
17
|
+
/** 高级表单组件类型数据 */
|
|
18
|
+
itemTypeData?: ProFormItemTypeData[];
|
|
19
|
+
}>, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
20
|
+
"update:currentFormItemId": (formItemId?: string | number | symbol | undefined) => void;
|
|
21
|
+
updateItems: (result: UpdateItemsResult) => void;
|
|
22
|
+
openTableTool: (formItemId: string, el: HTMLElement) => void;
|
|
23
|
+
updateFormItems: (items: ProFormItemProps[]) => void;
|
|
24
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
25
|
+
/** 表单属性 */
|
|
26
|
+
formProps?: TemplateFormConfig;
|
|
27
|
+
/** 选中的表单项 id */
|
|
28
|
+
currentFormItemId?: ProFormItemKey;
|
|
29
|
+
/** 当前选中屏幕尺寸 */
|
|
30
|
+
currentScreen?: string;
|
|
31
|
+
/** 组件库数据 */
|
|
32
|
+
componentData?: ComponentGroup[];
|
|
33
|
+
/** 高级表单组件 */
|
|
34
|
+
proFormComponent?: UserComponent;
|
|
35
|
+
/** 高级表单组件类型数据 */
|
|
36
|
+
itemTypeData?: ProFormItemTypeData[];
|
|
37
|
+
}>>> & {
|
|
38
|
+
onUpdateItems?: ((result: UpdateItemsResult) => any) | undefined;
|
|
39
|
+
onOpenTableTool?: ((formItemId: string, el: HTMLElement) => any) | undefined;
|
|
40
|
+
"onUpdate:currentFormItemId"?: ((formItemId?: string | number | symbol | undefined) => any) | undefined;
|
|
41
|
+
onUpdateFormItems?: ((items: ProFormItemProps[]) => any) | undefined;
|
|
42
|
+
}, {}, {}>;
|
|
43
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
44
|
+
export default _default;
|
|
45
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
46
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
47
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
48
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
49
|
+
} : {
|
|
50
|
+
type: import('vue').PropType<T[K]>;
|
|
51
|
+
required: true;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
55
|
+
new (): {
|
|
56
|
+
$slots: S;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const vue = require("vue");
|
|
3
|
+
const elementPlus = require("element-plus");
|
|
4
|
+
const icons = require("../../icons");
|
|
5
|
+
const util = require("../util");
|
|
6
|
+
const PreviewModal = require("./preview-modal");
|
|
7
|
+
const _hoisted_1 = { class: "ele-pro-form-builder-header" };
|
|
8
|
+
const _hoisted_2 = { class: "ele-pro-form-builder-screen-radio" };
|
|
9
|
+
const _hoisted_3 = { class: "ele-pro-form-builder-header-left" };
|
|
10
|
+
const _hoisted_4 = { class: "ele-pro-form-builder-header-tools" };
|
|
11
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
12
|
+
__name: "body-header",
|
|
13
|
+
props: {
|
|
14
|
+
currentScreen: {},
|
|
15
|
+
undoDisabled: { type: Boolean },
|
|
16
|
+
redoDisabled: { type: Boolean },
|
|
17
|
+
formProps: {},
|
|
18
|
+
proFormComponent: {},
|
|
19
|
+
itemTypeData: {}
|
|
20
|
+
},
|
|
21
|
+
emits: ["update:currentScreen", "undo", "redo", "clear", "previewFormSubmit"],
|
|
22
|
+
setup(__props, { emit: __emit }) {
|
|
23
|
+
const props = __props;
|
|
24
|
+
const emit = __emit;
|
|
25
|
+
const previewVisible = vue.ref(false);
|
|
26
|
+
const handleUpdateScreen = (size) => {
|
|
27
|
+
emit("update:currentScreen", size);
|
|
28
|
+
};
|
|
29
|
+
const handleUndo = () => {
|
|
30
|
+
if (!props.undoDisabled) {
|
|
31
|
+
emit("undo");
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const handleRedo = () => {
|
|
35
|
+
if (!props.redoDisabled) {
|
|
36
|
+
emit("redo");
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const handleClear = () => {
|
|
40
|
+
emit("clear");
|
|
41
|
+
};
|
|
42
|
+
const handleOpenPreview = () => {
|
|
43
|
+
previewVisible.value = true;
|
|
44
|
+
};
|
|
45
|
+
const handlePreviewFormSubmit = (data) => {
|
|
46
|
+
emit("previewFormSubmit", data);
|
|
47
|
+
};
|
|
48
|
+
return (_ctx, _cache) => {
|
|
49
|
+
const _component_ElButton = vue.resolveComponent("ElButton");
|
|
50
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
|
51
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
52
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(util.screenItems), (item) => {
|
|
53
|
+
return vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElIcon), {
|
|
54
|
+
key: item.value,
|
|
55
|
+
class: vue.normalizeClass([
|
|
56
|
+
"ele-pro-form-builder-header-tool",
|
|
57
|
+
"ele-pro-form-builder-screen-icon",
|
|
58
|
+
{ "is-active": item.value === _ctx.currentScreen }
|
|
59
|
+
]),
|
|
60
|
+
onClick: ($event) => handleUpdateScreen(item.value)
|
|
61
|
+
}, {
|
|
62
|
+
default: vue.withCtx(() => [
|
|
63
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(item.icon), {
|
|
64
|
+
style: vue.normalizeStyle(item.iconStyle)
|
|
65
|
+
}, null, 8, ["style"]))
|
|
66
|
+
]),
|
|
67
|
+
_: 2
|
|
68
|
+
}, 1032, ["class", "onClick"]);
|
|
69
|
+
}), 128))
|
|
70
|
+
]),
|
|
71
|
+
vue.createElementVNode("div", _hoisted_3, [
|
|
72
|
+
vue.createVNode(vue.unref(elementPlus.ElIcon), {
|
|
73
|
+
class: vue.normalizeClass([
|
|
74
|
+
"ele-pro-form-builder-header-tool",
|
|
75
|
+
"ele-pro-form-builder-header-tool-undo",
|
|
76
|
+
{ "is-disabled": _ctx.undoDisabled }
|
|
77
|
+
]),
|
|
78
|
+
title: "撤销",
|
|
79
|
+
onClick: handleUndo
|
|
80
|
+
}, {
|
|
81
|
+
default: vue.withCtx(() => [
|
|
82
|
+
vue.createVNode(vue.unref(icons.RollbackOutlined))
|
|
83
|
+
]),
|
|
84
|
+
_: 1
|
|
85
|
+
}, 8, ["class"]),
|
|
86
|
+
vue.createVNode(vue.unref(elementPlus.ElIcon), {
|
|
87
|
+
class: vue.normalizeClass([
|
|
88
|
+
"ele-pro-form-builder-header-tool",
|
|
89
|
+
"ele-pro-form-builder-header-tool-redo",
|
|
90
|
+
{ "is-disabled": _ctx.redoDisabled }
|
|
91
|
+
]),
|
|
92
|
+
title: "恢复",
|
|
93
|
+
onClick: handleRedo
|
|
94
|
+
}, {
|
|
95
|
+
default: vue.withCtx(() => [
|
|
96
|
+
vue.createVNode(vue.unref(icons.RecoverOutlined))
|
|
97
|
+
]),
|
|
98
|
+
_: 1
|
|
99
|
+
}, 8, ["class"])
|
|
100
|
+
]),
|
|
101
|
+
vue.createElementVNode("div", _hoisted_4, [
|
|
102
|
+
vue.createVNode(_component_ElButton, {
|
|
103
|
+
text: true,
|
|
104
|
+
type: "danger",
|
|
105
|
+
icon: vue.unref(icons.DeleteOutlined),
|
|
106
|
+
onClick: handleClear
|
|
107
|
+
}, {
|
|
108
|
+
default: vue.withCtx(() => [
|
|
109
|
+
vue.createTextVNode(" 清空 ")
|
|
110
|
+
]),
|
|
111
|
+
_: 1
|
|
112
|
+
}, 8, ["icon"]),
|
|
113
|
+
vue.createVNode(_component_ElButton, {
|
|
114
|
+
text: true,
|
|
115
|
+
type: "primary",
|
|
116
|
+
icon: vue.unref(icons.EyeOutlined),
|
|
117
|
+
onClick: handleOpenPreview
|
|
118
|
+
}, {
|
|
119
|
+
default: vue.withCtx(() => [
|
|
120
|
+
vue.createTextVNode(" 预览 ")
|
|
121
|
+
]),
|
|
122
|
+
_: 1
|
|
123
|
+
}, 8, ["icon"]),
|
|
124
|
+
vue.renderSlot(_ctx.$slots, "headerTools")
|
|
125
|
+
]),
|
|
126
|
+
vue.createVNode(PreviewModal, {
|
|
127
|
+
modelValue: previewVisible.value,
|
|
128
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => previewVisible.value = $event),
|
|
129
|
+
formProps: _ctx.formProps,
|
|
130
|
+
proFormComponent: _ctx.proFormComponent,
|
|
131
|
+
itemTypeData: _ctx.itemTypeData,
|
|
132
|
+
onPreviewFormSubmit: handlePreviewFormSubmit
|
|
133
|
+
}, null, 8, ["modelValue", "formProps", "proFormComponent", "itemTypeData"])
|
|
134
|
+
]);
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
module.exports = _sfc_main;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { UserComponent } from '../../ele-app/types';
|
|
2
|
+
import { ProFormItemTypeData } from '../../ele-pro-form/types';
|
|
3
|
+
import { TemplateFormConfig } from '../types';
|
|
4
|
+
|
|
5
|
+
declare function __VLS_template(): {
|
|
6
|
+
headerTools?(_: {}): any;
|
|
7
|
+
};
|
|
8
|
+
declare const __VLS_component: import('vue').DefineComponent<__VLS_TypePropsToRuntimeProps<{
|
|
9
|
+
/** 当前选中屏幕尺寸 */
|
|
10
|
+
currentScreen?: string;
|
|
11
|
+
/** 是否禁用撤销 */
|
|
12
|
+
undoDisabled?: boolean;
|
|
13
|
+
/** 是否禁用恢复 */
|
|
14
|
+
redoDisabled?: boolean;
|
|
15
|
+
/** 表单属性 */
|
|
16
|
+
formProps?: TemplateFormConfig;
|
|
17
|
+
/** 高级表单组件 */
|
|
18
|
+
proFormComponent?: UserComponent;
|
|
19
|
+
/** 高级表单组件类型数据 */
|
|
20
|
+
itemTypeData?: ProFormItemTypeData[];
|
|
21
|
+
}>, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
22
|
+
"update:currentScreen": (size?: string | undefined) => void;
|
|
23
|
+
undo: () => void;
|
|
24
|
+
redo: () => void;
|
|
25
|
+
clear: () => void;
|
|
26
|
+
previewFormSubmit: (data: Record<string, any>) => void;
|
|
27
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
28
|
+
/** 当前选中屏幕尺寸 */
|
|
29
|
+
currentScreen?: string;
|
|
30
|
+
/** 是否禁用撤销 */
|
|
31
|
+
undoDisabled?: boolean;
|
|
32
|
+
/** 是否禁用恢复 */
|
|
33
|
+
redoDisabled?: boolean;
|
|
34
|
+
/** 表单属性 */
|
|
35
|
+
formProps?: TemplateFormConfig;
|
|
36
|
+
/** 高级表单组件 */
|
|
37
|
+
proFormComponent?: UserComponent;
|
|
38
|
+
/** 高级表单组件类型数据 */
|
|
39
|
+
itemTypeData?: ProFormItemTypeData[];
|
|
40
|
+
}>>> & {
|
|
41
|
+
onClear?: (() => any) | undefined;
|
|
42
|
+
onPreviewFormSubmit?: ((data: Record<string, any>) => any) | undefined;
|
|
43
|
+
"onUpdate:currentScreen"?: ((size?: string | undefined) => any) | undefined;
|
|
44
|
+
onUndo?: (() => any) | undefined;
|
|
45
|
+
onRedo?: (() => any) | undefined;
|
|
46
|
+
}, {}, {}>;
|
|
47
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
48
|
+
export default _default;
|
|
49
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
50
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
51
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
52
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
53
|
+
} : {
|
|
54
|
+
type: import('vue').PropType<T[K]>;
|
|
55
|
+
required: true;
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
59
|
+
new (): {
|
|
60
|
+
$slots: S;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const core = require("../../utils/core");
|
|
4
|
+
const util = require("../util");
|
|
5
|
+
const tableUtil = require("./table-util");
|
|
6
|
+
function generateAddChildData(triggerItem, triggerParent, triggerItemIndex, actionType, formItems, position) {
|
|
7
|
+
if (!triggerItem.type) {
|
|
8
|
+
return { addItems: [], updateItems: [], deleteItemIds: [] };
|
|
9
|
+
}
|
|
10
|
+
const parentItemId = triggerParent == null ? void 0 : triggerParent.key;
|
|
11
|
+
const afterIndex = triggerItemIndex == null ? void 0 : triggerItemIndex + 1;
|
|
12
|
+
if ([
|
|
13
|
+
"tabPane",
|
|
14
|
+
"collapseItem",
|
|
15
|
+
"col",
|
|
16
|
+
"carouselItem",
|
|
17
|
+
"descriptionsItem"
|
|
18
|
+
].includes(triggerItem.type)) {
|
|
19
|
+
const item = util.generateChildFormItem(
|
|
20
|
+
{
|
|
21
|
+
tabPane: "tabs",
|
|
22
|
+
collapseItem: "collapse",
|
|
23
|
+
col: "row",
|
|
24
|
+
carouselItem: "carousel",
|
|
25
|
+
descriptionsItem: "descriptions"
|
|
26
|
+
}[triggerItem.type]
|
|
27
|
+
);
|
|
28
|
+
itemsGenerateNewKey(item, formItems, true);
|
|
29
|
+
return {
|
|
30
|
+
addItems: [{ item, parentItemId, index: afterIndex }],
|
|
31
|
+
updateItems: [],
|
|
32
|
+
deleteItemIds: []
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
if (triggerItem.type === "tableCell") {
|
|
36
|
+
const result = {
|
|
37
|
+
addItems: [],
|
|
38
|
+
updateItems: [],
|
|
39
|
+
deleteItemIds: []
|
|
40
|
+
};
|
|
41
|
+
core.eachTree(formItems, (trItem, _trIndex, tableItem) => {
|
|
42
|
+
if (triggerParent && trItem.key === triggerParent.key && tableItem) {
|
|
43
|
+
const { addItems, updateItems, deleteItemIds } = (actionType === "addTableCol" ? tableUtil.generateAddTableColData : tableUtil.generateAddTableRowData)(tableItem, formItems, triggerItem, position);
|
|
44
|
+
result.addItems = addItems;
|
|
45
|
+
result.updateItems = updateItems;
|
|
46
|
+
result.deleteItemIds = deleteItemIds;
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
if (triggerItem.type === "table") {
|
|
53
|
+
return (actionType === "addTableCol" ? tableUtil.generateAddTableColData : tableUtil.generateAddTableRowData)(triggerItem, formItems);
|
|
54
|
+
}
|
|
55
|
+
const child = util.generateChildFormItem(triggerItem.type);
|
|
56
|
+
itemsGenerateNewKey(child, formItems, true);
|
|
57
|
+
return {
|
|
58
|
+
addItems: [{ item: child, parentItemId: triggerItem.key }],
|
|
59
|
+
updateItems: [],
|
|
60
|
+
deleteItemIds: []
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
function itemsGenerateNewKey(items, formItems, overwriteProp) {
|
|
64
|
+
if (!items) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
const addedKeys = [];
|
|
68
|
+
core.eachTree(Array.isArray(items) ? items : [items], (item) => {
|
|
69
|
+
const itemKey = util.generateUniqueItemKey(formItems, addedKeys);
|
|
70
|
+
addedKeys.push(itemKey);
|
|
71
|
+
item.key = itemKey;
|
|
72
|
+
if (overwriteProp) {
|
|
73
|
+
item.prop = itemKey;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
function generateCopyItemData(formItemId, formItems) {
|
|
78
|
+
const result = {
|
|
79
|
+
addItems: [],
|
|
80
|
+
updateItems: [],
|
|
81
|
+
deleteItemIds: []
|
|
82
|
+
};
|
|
83
|
+
core.eachTree(formItems, (item, index, parent) => {
|
|
84
|
+
if (item.key === formItemId) {
|
|
85
|
+
const newItem = JSON.parse(JSON.stringify(item));
|
|
86
|
+
itemsGenerateNewKey(newItem, formItems, true);
|
|
87
|
+
result.addItems.push({
|
|
88
|
+
item: newItem,
|
|
89
|
+
parentItemId: parent == null ? void 0 : parent.key,
|
|
90
|
+
index: index + 1
|
|
91
|
+
});
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
return result;
|
|
96
|
+
}
|
|
97
|
+
exports.generateAddChildData = generateAddChildData;
|
|
98
|
+
exports.generateCopyItemData = generateCopyItemData;
|
|
99
|
+
exports.itemsGenerateNewKey = itemsGenerateNewKey;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ProFormItemKey, ProFormItemProps } from '../../ele-pro-form/types';
|
|
2
|
+
import { UpdateItemsResult, AddChildrenItemAction } from '../types';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* 添加子级时生成需要的数据
|
|
6
|
+
* @param triggerItem 触发添加的表单项
|
|
7
|
+
* @param triggerParent 触发添加的表单项父级
|
|
8
|
+
* @param triggerItemIndex 触发添加的表单项在父级中的位置
|
|
9
|
+
* @param actionType 添加类型
|
|
10
|
+
* @param formItems 当前的全部表单项数据
|
|
11
|
+
* @param position 触发位置的上方(左侧)或下方(右侧)添加, 默认下方(左侧)
|
|
12
|
+
*/
|
|
13
|
+
export declare function generateAddChildData(triggerItem: ProFormItemProps, triggerParent: ProFormItemProps | undefined, triggerItemIndex: number | undefined, actionType: AddChildrenItemAction | undefined, formItems?: ProFormItemProps[], position?: -1): UpdateItemsResult;
|
|
14
|
+
/**
|
|
15
|
+
* 表单项数据生成新的 id
|
|
16
|
+
* @param items 表单项数据
|
|
17
|
+
* @param formItems 当前的全部表单项数据
|
|
18
|
+
* @param overwriteProp prop 是否也重新生成
|
|
19
|
+
* @param generateTypeName 是否生成类型名称到数据
|
|
20
|
+
*/
|
|
21
|
+
export declare function itemsGenerateNewKey(items?: ProFormItemProps[] | ProFormItemProps, formItems?: ProFormItemProps[], overwriteProp?: boolean): void;
|
|
22
|
+
/**
|
|
23
|
+
* 复制表单项时生成需要的数据
|
|
24
|
+
* @param formItemId 表单项 id
|
|
25
|
+
* @param formItems 当前的全部表单项数据
|
|
26
|
+
*/
|
|
27
|
+
export declare function generateCopyItemData(formItemId: ProFormItemKey, formItems?: ProFormItemProps[]): UpdateItemsResult;
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const vue = require("vue");
|
|
3
|
+
const icons = require("../../icons");
|
|
4
|
+
const ToolButton = require("./tool-button");
|
|
5
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
6
|
+
__name: "builder-tools",
|
|
7
|
+
props: {
|
|
8
|
+
itemType: {}
|
|
9
|
+
},
|
|
10
|
+
emits: ["delete", "copy", "add", "addTableRow", "addTableCol", "openTableTool"],
|
|
11
|
+
setup(__props, { emit: __emit }) {
|
|
12
|
+
const emit = __emit;
|
|
13
|
+
const handleDelete = (e) => {
|
|
14
|
+
emit("delete", e);
|
|
15
|
+
};
|
|
16
|
+
const handleCopy = (e) => {
|
|
17
|
+
emit("copy", e);
|
|
18
|
+
};
|
|
19
|
+
const handleAdd = (e) => {
|
|
20
|
+
emit("add", e);
|
|
21
|
+
};
|
|
22
|
+
const handleAddTableRow = (e) => {
|
|
23
|
+
emit("addTableRow", e);
|
|
24
|
+
};
|
|
25
|
+
const handleAddTableCol = (e) => {
|
|
26
|
+
emit("addTableCol", e);
|
|
27
|
+
};
|
|
28
|
+
const handleOpenTableTool = (e) => {
|
|
29
|
+
emit("openTableTool", e);
|
|
30
|
+
};
|
|
31
|
+
return (_ctx, _cache) => {
|
|
32
|
+
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
|
|
33
|
+
_ctx.itemType && ["table", "tableCell"].includes(_ctx.itemType) ? (vue.openBlock(), vue.createBlock(ToolButton, {
|
|
34
|
+
key: 0,
|
|
35
|
+
buttonProps: {
|
|
36
|
+
size: "small",
|
|
37
|
+
type: "primary",
|
|
38
|
+
icon: vue.unref(icons.InsertRowOutlined)
|
|
39
|
+
},
|
|
40
|
+
tooltip: _ctx.itemType === "tableCell" ? "插入行" : "新增行",
|
|
41
|
+
onClick: handleAddTableRow
|
|
42
|
+
}, null, 8, ["buttonProps", "tooltip"])) : vue.createCommentVNode("", true),
|
|
43
|
+
_ctx.itemType && ["table", "tableCell"].includes(_ctx.itemType) ? (vue.openBlock(), vue.createBlock(ToolButton, {
|
|
44
|
+
key: 1,
|
|
45
|
+
buttonProps: {
|
|
46
|
+
size: "small",
|
|
47
|
+
type: "primary",
|
|
48
|
+
icon: vue.unref(icons.InsertColumnOutlined)
|
|
49
|
+
},
|
|
50
|
+
tooltip: _ctx.itemType === "tableCell" ? "插入列" : "新增列",
|
|
51
|
+
onClick: handleAddTableCol
|
|
52
|
+
}, null, 8, ["buttonProps", "tooltip"])) : vue.createCommentVNode("", true),
|
|
53
|
+
_ctx.itemType && [
|
|
54
|
+
"tabs",
|
|
55
|
+
"tabPane",
|
|
56
|
+
"collapse",
|
|
57
|
+
"collapseItem",
|
|
58
|
+
"row",
|
|
59
|
+
"col",
|
|
60
|
+
"carousel",
|
|
61
|
+
"carouselItem",
|
|
62
|
+
"descriptions",
|
|
63
|
+
"descriptionsItem"
|
|
64
|
+
].includes(_ctx.itemType) ? (vue.openBlock(), vue.createBlock(ToolButton, {
|
|
65
|
+
key: 2,
|
|
66
|
+
buttonProps: {
|
|
67
|
+
size: "small",
|
|
68
|
+
type: "primary",
|
|
69
|
+
icon: vue.unref(icons.PlusSquareDashOutlined)
|
|
70
|
+
},
|
|
71
|
+
tooltip: {
|
|
72
|
+
tabs: "添加选项卡",
|
|
73
|
+
tabPane: "插入选项卡",
|
|
74
|
+
collapse: "添加折叠面板",
|
|
75
|
+
collapseItem: "插入折叠面板",
|
|
76
|
+
row: "添加栅格列",
|
|
77
|
+
col: "插入栅格列",
|
|
78
|
+
carousel: "添加走马灯",
|
|
79
|
+
carouselItem: "插入走马灯",
|
|
80
|
+
descriptions: "添加描述列表",
|
|
81
|
+
descriptionsItem: "插入描述列表"
|
|
82
|
+
}[_ctx.itemType] || "添加",
|
|
83
|
+
onClick: handleAdd
|
|
84
|
+
}, null, 8, ["buttonProps", "tooltip"])) : vue.createCommentVNode("", true),
|
|
85
|
+
_ctx.itemType !== "tableCell" ? (vue.openBlock(), vue.createBlock(ToolButton, {
|
|
86
|
+
key: 3,
|
|
87
|
+
buttonProps: {
|
|
88
|
+
size: "small",
|
|
89
|
+
type: "primary",
|
|
90
|
+
icon: vue.unref(icons.CopyOutlined)
|
|
91
|
+
},
|
|
92
|
+
tooltip: "复制",
|
|
93
|
+
onClick: handleCopy
|
|
94
|
+
}, null, 8, ["buttonProps"])) : vue.createCommentVNode("", true),
|
|
95
|
+
_ctx.itemType !== "tableCell" ? (vue.openBlock(), vue.createBlock(ToolButton, {
|
|
96
|
+
key: 4,
|
|
97
|
+
buttonProps: {
|
|
98
|
+
size: "small",
|
|
99
|
+
type: "danger",
|
|
100
|
+
icon: vue.unref(icons.DeleteOutlined)
|
|
101
|
+
},
|
|
102
|
+
tooltip: "删除",
|
|
103
|
+
onClick: handleDelete
|
|
104
|
+
}, null, 8, ["buttonProps"])) : vue.createCommentVNode("", true),
|
|
105
|
+
_ctx.itemType === "tableCell" ? (vue.openBlock(), vue.createBlock(ToolButton, {
|
|
106
|
+
key: 5,
|
|
107
|
+
buttonProps: {
|
|
108
|
+
size: "small",
|
|
109
|
+
type: "primary",
|
|
110
|
+
icon: vue.unref(icons.AppstoreAddOutlined),
|
|
111
|
+
style: { fontSize: "14px" }
|
|
112
|
+
},
|
|
113
|
+
tooltip: "更多",
|
|
114
|
+
onClick: handleOpenTableTool
|
|
115
|
+
}, null, 8, ["buttonProps"])) : vue.createCommentVNode("", true)
|
|
116
|
+
], 64);
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
module.exports = _sfc_main;
|