@kp-ui/lowcode 1.0.56 → 1.0.57
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/_virtual/virtual_svg-icons-register.js +2 -2
- package/_virtual/virtual_svg-icons-register.js.map +1 -1
- package/designer.js.map +1 -1
- package/package.json +2 -2
- package/render.js +6 -4
- package/render.js.map +1 -1
- package/src/api/useFilesystemApi/filesystem/index.js +1 -2
- package/src/api/useFilesystemApi/filesystem/index.js.map +1 -1
- package/src/components/code-editor/code-modal-editor.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/container-wrapper.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/grid-col-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/grid-sub-form-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/grid-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/sub-form-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/tab-widget.vue.js +2 -1
- package/src/components/form-designer/form-widget/container-widget/tab-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/table-cell-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/table-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/vf-box-item.vue.js +3 -3
- package/src/components/form-designer/form-widget/container-widget/vf-box-item.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/vf-box-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/vf-collapse-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/vf-dialog-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/vf-drawer-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/attachment-render-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/bpmn-editor-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/button-list-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/button-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/cascader-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/checkbox-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/code-editor-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/color-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/date-range-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/date-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/divider-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/diy-compontent-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/dropdown-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/file-upload-widget.vue.js +1 -1
- package/src/components/form-designer/form-widget/field-widget/file-upload-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/html-text-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/input-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/number-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/radio-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/rate-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/select-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/slider-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/slot-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/static-text-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/switch-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/textarea-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/time-range-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/time-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/treeSelect-widget.vue.js.map +1 -1
- package/src/components/form-designer/form-widget/index.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/form-crud-setting.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/form-setting.vue.js +4 -4
- package/src/components/form-designer/setting-panel/form-setting.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/index.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/option-items-setting.vue.js +19 -22
- package/src/components/form-designer/setting-panel/option-items-setting.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/accept-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/actionColumnPosition-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/addonAfter-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/addonBefore-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/allowClear-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/appendButton-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/appendButtonDisabled-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/autoFullWidth-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/border-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/button-list-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/button-list-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/button-postion-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/buttonIcon-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/buttonStyle-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/code-editor/code-editor-mode.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/columnWidth-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/customRowEvent/data-table-customRow-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-colorRow-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-customClass-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-dsEnabled-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-pagination-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-pagination-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-rowKey-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-selections-editor.vue.js +3 -3
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-selections-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-showButtonsColumn-editor.vue.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-showButtonsColumn-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-showIndex-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-stripe-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-tableColumns-editor.vue.js +11 -11
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-tableColumns-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-tableHeight-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-tableSize-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-tableWidth-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-treeDataEnabled-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid/colHeight-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-offset-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-pull-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-push-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-responsive-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-span-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-sub-form/showBlankRow-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-sub-form/showRowNumber-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-tab/tab-customClass-editor.vue.js +4 -6
- package/src/components/form-designer/setting-panel/property-editor/container-tab/tab-customClass-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-tab/tab-tabBarGutter-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-tab/tab-tabPosition-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-tab/tab-type-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-table-cell/cellHeight-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-table-cell/cellWidth-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/bodyStyle-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/bodyStyle-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/cancelButtonHidden-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/cancelButtonLabel-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/closeOnClickModal-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/closeOnPressEscape-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/collapseIcon-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/disabledMode-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/formCode-editor.vue.js +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/formCode-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/fullscreen-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/height-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/isCollapse-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/line-height-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/okButtonHidden-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/okButtonLabel-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/readMode-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/showClose-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/title-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/unCollapseIcon-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/width-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue.js +8 -8
- package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-direction-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-drawer/vf-drawer-size-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/customClass-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/disabled-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/disabled-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/displayStyle-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/diy-compontent-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/editable-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/endPlaceholder-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onAppendButtonClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onBeforeUpload-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onBlur-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onCancelButtonClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onCellClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onCellDoubleClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onChange-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onClickIcon-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onCreated-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onCurrentPageChange-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onDialogBeforeClose-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onDialogOpened-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onDisableOperationButton-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onDrawerBeforeClose-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onDrawerOpened-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onFileRemove.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onFocus-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onGetOperationButtonLabel-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onGetRowClassName-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onGetSpanMethod-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onHeaderClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onHideOperationButton-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onInput-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onMenuClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onMounted-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onOkButtonClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onOperationButtonClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onPageSizeChange-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onRemoteQuery-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onRowClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onRowDoubleClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onSelectionChange-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowAdd-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowChange-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowDelete-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowInsert-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onTabClick-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onTableChange-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onUploadError-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onUploadSuccess-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onValidate-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onVformAdd-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/circle-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/danger-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/ghost-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/icon-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/plain-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/round-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/shape-editor.vue.js +6 -6
- package/src/components/form-designer/setting-panel/property-editor/field-button/shape-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-button/type-editor.vue.js +12 -12
- package/src/components/form-designer/setting-panel/property-editor/field-button/type-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-cascader/cascader-multiple-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-color/color-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-format-editor.vue.js +8 -8
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-format-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-type-editor.vue.js +10 -10
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-type-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-valueFormat-editor.vue.js +8 -8
- package/src/components/form-designer/setting-panel/property-editor/field-date/date-valueFormat-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-format-editor.vue.js +10 -10
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-format-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-type-editor.vue.js +6 -6
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-type-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-valueFormat-editor.vue.js +8 -8
- package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-valueFormat-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-divider/contentPosition-editor.vue.js +6 -6
- package/src/components/form-designer/setting-panel/property-editor/field-divider/contentPosition-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-divider/divider-direction-editor.vue.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/field-divider/divider-direction-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-dropdown/dropdown-menuList-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-file-upload/file-upload-fileTypes-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-html-text/htmlContent-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-number/controlsPosition-editor.vue.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/field-number/controlsPosition-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-number/number-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-picture-upload/picture-upload-fileTypes-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/allowHalf-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/highThreshold-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/lowThreshold-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/rate-count-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/rate-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/showScore-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rate/showText-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-rich-editor/rich-editor-contentHeight-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-select/mode-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-slider/range-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-slider/vertical-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-static-text/textContent-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-switch/activeColor-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-switch/checkedValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-switch/inactiveColor-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-switch/switch-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-switch/switchWidth-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-switch/unCheckedValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-time/time-format-editor.vue.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/field-time/time-format-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-time-range/time-range-format-editor.vue.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/field-time-range/time-range-format-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/field-treeSelect/treeSelect-treeDefaultExpandAll-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/flex-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/hidden-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/hidden-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/label-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelHidden-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelIconClass-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelTooltip-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/labelWidth-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/limit-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/loadingPage-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/max-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/maxLength-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/maxSize-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/min-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/minLength-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/multiple-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/multipleSelect-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/name-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/optionItems-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/placeholder-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/placement-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/precision-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/readonly-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/required-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/requiredHint-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/rightSlotCss-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/rows-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/showCount-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/showFileList-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/showPassword-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/showSearch-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/showTime-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/size-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/slot-compontent-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/startPlaceholder-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/step-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/type-editor.vue.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/type-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/uploadListType-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/uploadTip-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/uploadURL-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/useModel-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/validation-editor.vue.js +1 -1
- package/src/components/form-designer/setting-panel/property-editor/validation-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/validationHint-editor.vue.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/withCredentials-editor.vue.js.map +1 -1
- package/src/components/form-designer/toolbar-panel/index.vue.js +4 -4
- package/src/components/form-designer/toolbar-panel/index.vue.js.map +1 -1
- package/src/components/form-designer/widget-panel/containers/data-table.js +1 -1
- package/src/components/form-designer/widget-panel/containers/data-table.js.map +1 -1
- package/src/components/form-designer/widget-panel/index.vue.js.map +1 -1
- package/src/components/form-render/SubmitButtonRender.vue.js +16 -2
- package/src/components/form-render/SubmitButtonRender.vue.js.map +1 -1
- package/src/components/form-render/container-item/container-item-wrapper.vue.js.map +1 -1
- package/src/components/form-render/container-item/data-table-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/grid-col-item.vue.js +3 -3
- package/src/components/form-render/container-item/grid-col-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/grid-item.vue.js +2 -2
- package/src/components/form-render/container-item/grid-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/grid-sub-form-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/sub-form-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/tab-item.vue.js +3 -3
- package/src/components/form-render/container-item/tab-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/table-cell-item.vue.js +3 -3
- package/src/components/form-render/container-item/table-cell-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/table-item.vue.js +2 -2
- package/src/components/form-render/container-item/table-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/vf-collapse-item.vue.js +5 -5
- package/src/components/form-render/container-item/vf-collapse-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/vf-dialog-item.vue.js.map +1 -1
- package/src/components/form-render/container-item/vf-drawer-item.vue.js.map +1 -1
- package/src/components/form-render/dynamic-dialog.vue.js +4 -4
- package/src/components/form-render/dynamic-dialog.vue.js.map +1 -1
- package/src/components/form-render/dynamic-drawer.vue.js.map +1 -1
- package/src/components/http-editor/index.vue.js +18 -18
- package/src/components/http-editor/index.vue.js.map +1 -1
- package/src/components/http-editor/index.vue2.js +2 -2
- package/src/components/public/ActionButtonListDialog.vue.js +22 -22
- package/src/components/public/ActionButtonListDialog.vue.js.map +1 -1
- package/src/components/public/ActionButtonListRender.vue.js.map +1 -1
- package/src/components/svg-icon/index.vue.js.map +1 -1
- package/src/mixins/useDataTableMixin.js +9 -3
- package/src/mixins/useDataTableMixin.js.map +1 -1
- package/src/utils/request/http.js +4 -1
- package/src/utils/request/http.js.map +1 -1
- package/styles/style.css +1 -1
- package/types/src/components/CustomRender/components/AttachmentRender.d.ts +3 -24
- package/types/src/components/CustomRender/components/AttachmentRender.d.ts.map +1 -1
- package/types/src/components/code-editor/code-modal-editor.d.ts +8 -6
- package/types/src/components/code-editor/index.d.ts +7 -14
- package/types/src/components/code-editor/index.d.ts.map +1 -1
- package/types/src/components/form-designer/setting-panel/form-crud-setting.d.ts +121 -5
- package/types/src/components/form-designer/toolbar-panel/index.d.ts +437 -7
- package/types/src/components/form-designer/toolbar-panel/index.d.ts.map +1 -1
- package/types/src/components/form-designer/widget-panel/index.d.ts +80 -5
- package/types/src/components/form-render/SubmitButtonRender.d.ts +4 -13
- package/types/src/components/form-render/SubmitButtonRender.d.ts.map +1 -1
- package/types/src/components/form-render/index.d.ts +117 -65
- package/types/src/components/form-render/index.d.ts.map +1 -1
- package/types/src/components/http-editor/index.d.ts +54 -6
- package/types/src/components/svg-icon/index.d.ts +8 -8
- package/types/src/hooks/useFilePreview.d.ts +4 -4
- package/types/src/utils/request/http.d.ts +1 -2
- package/types/src/utils/request/http.d.ts.map +1 -1
- package/types/src/components/form-designer/form-widget/index.d.ts +0 -55
- package/types/src/components/form-designer/form-widget/index.d.ts.map +0 -1
- package/types/src/components/form-designer/index.d.ts +0 -263
- package/types/src/components/form-designer/index.d.ts.map +0 -1
- package/types/src/components/form-designer/setting-panel/index.d.ts +0 -248
- package/types/src/components/form-designer/setting-panel/index.d.ts.map +0 -1
- package/types/src/components/form-render/dynamic-dialog.d.ts +0 -127
- package/types/src/components/form-render/dynamic-dialog.d.ts.map +0 -1
package/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sources":["../src/components/form-render/index.vue"],"sourcesContent":["<template>\n <a-config-provider :component-size=\"size\" :input=\"{ autocomplete: 'off' }\">\n <a-spin :spinning=\"isLoading\">\n <div :style=\"isLoading ? 'min-height: 260px' : ''\">\n <a-form\n :layout=\"labelPosition\"\n :class=\"[customClass, readModeFlag ? 'readonly-mode-form' : '']\"\n class=\"render-form tpf-form\"\n :label-width=\"labelWidth\"\n :validate-on-rule-change=\"false\"\n :model=\"formDataModel\"\n ref=\"renderForm\"\n @submit.prevent\n >\n <template v-for=\"(widget, index) in widgetList\">\n <template v-if=\"'container' === widget.category\">\n <component\n :is=\"getContainerWidgetName(widget)\"\n :widget=\"widget\"\n :key=\"widget.id\"\n :data=\"formDataModel[widget.options.name]\"\n :parent-list=\"widgetList\"\n :index-of-parent-list=\"index\"\n :parent-widget=\"null\"\n >\n <!-- 递归传递插槽!!! -->\n <template v-for=\"slot in Object.keys($slots)\" v-slot:[slot]=\"scope\">\n <slot :name=\"slot\" v-bind=\"scope\"></slot>\n </template>\n </component>\n </template>\n <template v-else>\n <component\n :is=\"getWidgetName(widget)\"\n :field=\"widget\"\n :form-model=\"formDataModel\"\n :designer=\"null\"\n :key=\"widget.id\"\n :parent-list=\"widgetList\"\n :index-of-parent-list=\"index\"\n :parent-widget=\"null\"\n >\n <!-- 递归传递插槽!!! -->\n <template v-for=\"slot in Object.keys($slots)\" v-slot:[slot]=\"scope\">\n <slot :name=\"slot\" v-bind=\"scope\"></slot>\n </template>\n </component>\n </template>\n </template>\n </a-form>\n </div>\n </a-spin>\n </a-config-provider>\n</template>\n\n<script>\n import { createVNode, render, h } from 'vue';\n import emitter from '@/utils/emitter';\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n\n import {\n generateId,\n deepClone,\n insertCustomCssToHead,\n insertGlobalFunctionsToHtml,\n getAllContainerWidgets,\n getAllFieldWidgets,\n traverseFieldWidgets,\n buildDefaultFormJson,\n getDSByName,\n runDataSourceRequest,\n getFieldWidgetByName,\n overwriteObj,\n getContainerWidgetByName,\n traverseFieldWidgetsOfContainer,\n cloneFormConfigWithoutEventHandler,\n getDefaultFormConfig\n } from '@/utils/util';\n\n import i18n, { changeLocale } from '@/utils/i18n';\n import DynamicDialog from './dynamic-dialog';\n import DynamicDrawer from './dynamic-drawer';\n import { fmtHttpParams } from '@/utils/request/fmtHttpParams';\n\n export default {\n name: 'VFormRender',\n componentName: 'VFormRender',\n mixins: [emitter, i18n],\n components: {\n ...FieldComponents\n },\n props: {\n vfCtx: {\n type: Object,\n default: () => ({})\n },\n formJson: {\n //prop传入的表单JSON配置\n type: Object,\n default: () => buildDefaultFormJson()\n },\n formData: {\n //prop传入的表单数据\n type: Object,\n default: () => ({})\n },\n optionData: {\n //prop传入的选项数据\n type: Object,\n default: () => ({})\n },\n previewState: {\n //是否表单预览状态\n type: Boolean,\n default: false\n },\n disabledMode: {\n //表单禁止编辑模式\n type: Boolean,\n default: false\n },\n renderConfig: {\n //渲染配置对象\n type: Object,\n default: () => {\n return {\n languageName: 'zh-CN' //界面语言,默认显示中文\n };\n }\n },\n globalDsv: {\n // 全局数据源变量\n type: Object,\n default: () => ({})\n },\n parentForm: {\n type: Object,\n default: null\n },\n dynamicCreation: {\n //是否弹窗、抽屉动态创建的VFormRender\n type: Boolean,\n default: false\n }\n },\n provide() {\n return {\n refList: this.widgetRefList,\n sfRefList: this.subFormRefList, //收集SubForm引用\n getFormConfig: () =>\n this.formJsonObj\n .formConfig /* 解决provide传递formConfig属性的响应式更新问题!! */,\n getGlobalDsv: () => this.globalDsv, // 全局数据源变量\n globalOptionData: this.optionData,\n getOptionData: () =>\n this.optionData /* 该方法用于在异步更新option-data之后重新获取到最新值 */,\n globalModel: {\n formModel: this.formDataModel\n },\n previewState: this.previewState,\n getReadMode: () => this.readModeFlag,\n getSubFormFieldFlag: () => false,\n getSubFormName: () => '',\n getDSResultCache: () => this.dsResultCache\n };\n },\n data() {\n return {\n isClosing: false, //是否正在关闭\n isSubmitting: false, //是否正在提交中\n formJsonObj: this.formJson,\n\n formDataModel: {\n //\n },\n isLoading: false, //是否正在加载中\n widgetRefList: {},\n subFormRefList: {},\n formId: null, //表单唯一Id,用于区分页面上的多个v-form-render组件!!\n\n externalComponents: {}, //外部组件实例集合\n readModeFlag: false, //是否只读查看模式\n dialogOrDrawerRef: null, //保存子级VFormRender的包裹弹窗组件或抽屉组件的ref\n childFormRef: null, //保存子级VFormRender组件的ref\n\n dsResultCache: {} //数据源请求结果缓存\n };\n },\n computed: {\n formConfig() {\n return this.formJsonObj.formConfig;\n },\n cancelBtnLabel() {\n return this.formConfig.cancelButtonLabel || this.i18nt('designer.hint.cancel');\n },\n\n okBtnLabel() {\n return this.formConfig.okButtonLabel || this.i18nt('designer.hint.confirm');\n },\n\n widgetList() {\n return this.formJsonObj.widgetList;\n },\n\n labelPosition() {\n if (!!this.formConfig && !!this.formConfig.labelPosition) {\n return this.formConfig.labelPosition;\n }\n\n return 'horizontal';\n },\n\n labelWidth() {\n if (!!this.formConfig && !!this.formConfig.labelWidth) {\n return this.formConfig.labelWidth + 'px';\n }\n\n return '80px';\n },\n\n size() {\n if (!!this.formConfig && !!this.formConfig.size) {\n return this.formConfig.size;\n }\n\n return 'default';\n },\n\n customClass() {\n return !!this.formConfig && !!this.formConfig.customClass\n ? this.formConfig.customClass\n : '';\n }\n },\n watch: {\n //\n },\n created() {\n this.isLoading = false;\n this.buildFormModel(!this.formJsonObj ? null : this.formJsonObj.widgetList);\n this.initFormObject();\n },\n mounted() {\n this.initLocale();\n this.initDataSetRequest();\n // this.handleOnMounted();\n },\n methods: {\n setLoading(flag) {\n this.isLoading = flag;\n },\n\n handleCancelClick() {\n if (this.isClosing) return; // 防止重复关闭\n if (!this.handleBeforeClose()) return;\n try {\n this.isClosing = true;\n if (!!this.formConfig.onCancelButtonClick) {\n const customFn = new Function(this.formConfig.onCancelButtonClick);\n const clickResult = customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n async handleOkClick() {\n if (this.isSubmitting) return; // 防止重复提交\n\n try {\n this.isSubmitting = true;\n if (!!this.formConfig.onOkButtonClick) {\n const customFn = new Function(this.formConfig.onOkButtonClick);\n const clickResult = await customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n async onFormDetail() {\n const serveList = this.formConfig.serveList;\n if (serveList.vformDetail.http?.url) {\n const res = await fmtHttpParams.call(this, serveList.vformDetail, {\n vfCtx: this.vfCtx\n });\n console.log('res: ', res);\n return res;\n }\n },\n async onFormUpdate() {\n const modelForm = await this.getFormData();\n const serveList = this.formConfig.serveList;\n if (serveList.vformDetail.http?.url) {\n const res = await fmtHttpParams.call(this, serveList.vformUpdate, {\n data: modelForm,\n vfCtx: this.vfCtx\n });\n console.log('res: ', res);\n return res;\n }\n },\n\n initFormObject(insertHtmlCodeFlag = true) {\n this.formId = 'vfRender' + generateId();\n if (!!insertHtmlCodeFlag && !this.dynamicCreation) {\n // 弹窗、抽屉动态创建的VFormRender不重新插入全局CSS和全局函数节点!!\n this.insertCustomStyleAndScriptNode();\n }\n this.addFieldChangeEventHandler();\n this.addFieldValidateEventHandler();\n this.registerFormToRefList();\n this.handleOnCreated();\n\n if (this.disabledMode) {\n //禁止表单编辑\n this.$nextTick(() => {\n this.disableForm();\n });\n }\n },\n\n getContainerWidgetName(widget) {\n if (widget.type === 'grid') {\n //grid-item跟VueGridLayout全局注册组件重名,故特殊处理!!\n return 'vf-grid-item';\n }\n\n return widget.type + '-item';\n },\n\n getWidgetName(widget) {\n return widget.type + '-widget';\n },\n\n initLocale() {\n const curLocale = localStorage.getItem('lowcode_local') || 'zh-CN';\n this.changeLanguage(curLocale);\n },\n\n insertCustomStyleAndScriptNode() {\n if (!!this.formConfig && !!this.formConfig.cssCode) {\n insertCustomCssToHead(\n this.formConfig.cssCode,\n !!this.previewState ? '' : this.formId\n );\n }\n\n if (!!this.formConfig && !!this.formConfig.functions) {\n insertGlobalFunctionsToHtml(\n this.formConfig.functions,\n !!this.previewState ? '' : this.formId\n );\n }\n },\n\n buildFormModel(widgetList) {\n if (!!widgetList && widgetList.length > 0) {\n widgetList.forEach(wItem => {\n this.buildDataFromWidget(wItem);\n });\n }\n },\n\n buildDataFromWidget(wItem) {\n if (wItem.category === 'container') {\n if (wItem.type === 'data-table') {\n const { name } = wItem.options;\n this.formDataModel[name] = deepClone(wItem.options.dataSource);\n return;\n }\n if (wItem.type === 'vf-dialog' || wItem.type === 'vf-drawer') {\n // 什么也不做,不处理弹窗、抽屉内部组件!!\n } else if (wItem.type === 'grid') {\n if (!!wItem.cols && wItem.cols.length > 0) {\n wItem.cols.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n } else if (wItem.type === 'table') {\n if (!!wItem.rows && wItem.rows.length > 0) {\n wItem.rows.forEach(rowItem => {\n if (!!rowItem.cols && rowItem.cols.length > 0) {\n rowItem.cols.forEach(colItem => {\n this.buildDataFromWidget(colItem);\n });\n }\n });\n }\n } else if (wItem.type === 'tab') {\n if (!!wItem.tabs && wItem.tabs.length > 0) {\n wItem.tabs.forEach(tabItem => {\n if (!!tabItem.widgetList && tabItem.widgetList.length > 0) {\n tabItem.widgetList.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n });\n }\n } else if (wItem.type === 'sub-form') {\n const subFormName = wItem.options.name;\n if (!this.formData.hasOwnProperty(subFormName)) {\n const subFormDataRow = {};\n if (wItem.options.showBlankRow) {\n wItem.widgetList.forEach(subFormItem => {\n if (!!subFormItem.formItemFlag) {\n subFormDataRow[subFormItem.options.name] =\n subFormItem.options.defaultValue;\n }\n });\n\n this.formDataModel[subFormName] = [subFormDataRow];\n } else {\n this.formDataModel[subFormName] = [];\n }\n } else {\n const initialValue = this.formData[subFormName];\n this.formDataModel[subFormName] = deepClone(initialValue);\n }\n } else if (wItem.type === 'grid-sub-form') {\n const gridSubFormName = wItem.options.name;\n if (!this.formData.hasOwnProperty(gridSubFormName)) {\n const gsfFWList = [];\n const fieldListFn = fw => {\n gsfFWList.push(fw);\n };\n traverseFieldWidgetsOfContainer(wItem, fieldListFn);\n\n const gridSubFormDataRow = {};\n if (wItem.options.showBlankRow) {\n gsfFWList.forEach(gridSubFormItem => {\n gridSubFormDataRow[gridSubFormItem.options.name] =\n gridSubFormItem.options.defaultValue;\n });\n this.formDataModel[gridSubFormName] = [gridSubFormDataRow];\n } else {\n this.formDataModel[gridSubFormName] = [];\n }\n } else {\n const initialValue = this.formData[gridSubFormName];\n this.formDataModel[gridSubFormName] = deepClone(initialValue);\n }\n } else if (wItem.type === 'grid-col' || wItem.type === 'table-cell') {\n if (!!wItem.widgetList && wItem.widgetList.length > 0) {\n wItem.widgetList.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n } else {\n //自定义容器组件\n if (!!wItem.widgetList && wItem.widgetList.length > 0) {\n wItem.widgetList.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n }\n } else if (!!wItem.formItemFlag) {\n if (!this.formData.hasOwnProperty(wItem.options.name)) {\n this.formDataModel[wItem.options.name] = wItem.options.defaultValue;\n } else {\n const initialValue = this.formData[wItem.options.name];\n this.formDataModel[wItem.options.name] = deepClone(initialValue);\n }\n }\n },\n\n addFieldChangeEventHandler() {\n this.off$('fieldChange'); //移除原有事件监听\n this.on$(\n 'fieldChange',\n (fieldName, newValue, oldValue, subFormName, subFormRowIndex) => {\n this.handleFieldDataChange(\n fieldName,\n newValue,\n oldValue,\n subFormName,\n subFormRowIndex\n );\n this.$emit(\n 'formChange',\n fieldName,\n newValue,\n oldValue,\n this.formDataModel,\n subFormName,\n subFormRowIndex\n );\n }\n );\n },\n\n addFieldValidateEventHandler() {\n this.off$('fieldValidation'); //移除原有事件监听\n this.on$('fieldValidation', fieldName => {\n if (!!this.$refs.renderForm) {\n this.$refs.renderForm.validateFields(fieldName);\n }\n });\n },\n\n registerFormToRefList() {\n this.widgetRefList['v_form_ref'] = this;\n },\n\n handleFieldDataChange(fieldName, newValue, oldValue, subFormName, subFormRowIndex) {\n if (!!this.formConfig && !!this.formConfig.onFormDataChange) {\n const customFunc = new Function(\n 'fieldName',\n 'newValue',\n 'oldValue',\n 'formModel',\n 'subFormName',\n 'subFormRowIndex',\n this.formConfig.onFormDataChange\n );\n customFunc.call(\n this,\n fieldName,\n newValue,\n oldValue,\n this.formDataModel,\n subFormName,\n subFormRowIndex\n );\n }\n },\n\n handleOnCreated() {\n if (!!this.formConfig && !!this.formConfig.onFormCreated) {\n const customFunc = new Function(this.formConfig.onFormCreated);\n customFunc.call(this);\n }\n },\n\n handleOnSubmit() {\n if (!!this.formConfig && !!this.formConfig.handleOnSubmit) {\n const customFunc = new Function(this.formConfig.handleOnSubmit);\n customFunc.call(this);\n }\n },\n\n handleOnMounted() {\n if (!!this.formConfig && !!this.formConfig.onFormMounted) {\n const customFunc = new Function(this.formConfig.onFormMounted);\n customFunc.call(this);\n }\n },\n\n findWidgetAndSetDisabled(widgetName, disabledFlag) {\n const foundW = this.getWidgetRef(widgetName);\n if (!!foundW && !!foundW.setDisabled) {\n foundW.setDisabled(disabledFlag);\n } else {\n //没找到,可能是子表单中的组件\n this.findWidgetOfSubFormAndSetDisabled(widgetName, disabledFlag);\n }\n },\n\n findWidgetOfSubFormAndSetDisabled(widgetName, disabledFlag) {\n const widgetSchema = getFieldWidgetByName(\n this.formJsonObj.widgetList,\n widgetName,\n true\n );\n if (\n !!widgetSchema &&\n !!widgetSchema.options &&\n widgetSchema.options.hasOwnProperty('disabled')\n ) {\n widgetSchema.options.disabled = disabledFlag;\n }\n\n this.findWidgetNameInSubForm(widgetName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.setDisabled) {\n sw.setDisabled(disabledFlag);\n }\n });\n },\n\n findWidgetAndSetHidden(widgetName, hiddenFlag) {\n const foundW = this.getWidgetRef(widgetName);\n if (!!foundW && !!foundW.setDisabled) {\n foundW.setHidden(hiddenFlag);\n } else {\n //没找到,可能是子表单中的组件\n this.findWidgetOfSubFormAndSetHidden(widgetName, hiddenFlag);\n }\n },\n\n findWidgetOfSubFormAndSetHidden(widgetName, hiddenFlag) {\n const widgetSchema = getFieldWidgetByName(\n this.formJsonObj.widgetList,\n widgetName,\n true\n );\n if (\n !!widgetSchema &&\n !!widgetSchema.options &&\n widgetSchema.options.hasOwnProperty('hidden')\n ) {\n widgetSchema.options.hidden = hiddenFlag;\n }\n\n this.findWidgetNameInSubForm(widgetName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.setDisabled) {\n sw.setHidden(hiddenFlag);\n }\n });\n },\n\n findWidgetNameInSubForm(widgetName) {\n const result = [];\n let subFormName = null;\n const handlerFn = (field, parent) => {\n if (!!field.options && field.options.name === widgetName) {\n subFormName = parent.options.name;\n }\n };\n traverseFieldWidgets(this.widgetList, handlerFn);\n\n if (!!subFormName) {\n const subFormRef = this.getWidgetRef(subFormName);\n if (!!subFormRef) {\n const rowIds = subFormRef.getRowIdData();\n if (!!rowIds && rowIds.length > 0) {\n rowIds.forEach(rid => {\n result.push(widgetName + '@row' + rid);\n });\n }\n }\n }\n\n return result;\n },\n\n initDataSetRequest() {\n const dsNameSet = new Set();\n this.getFieldWidgets().forEach(fw => {\n if (\n !!fw.field.options.dsEnabled &&\n !!fw.field.options.dsName &&\n !!fw.field.options.dataSetName\n ) {\n dsNameSet.add(fw.field.options.dsName);\n }\n });\n\n if (dsNameSet.size > 0) {\n dsNameSet.forEach(async dsName => {\n const curDS = getDSByName(this.formConfig, dsName);\n if (!!curDS) {\n const localDsv = new Object({});\n overwriteObj(localDsv, this.globalDsv || {});\n let dsResult = null;\n try {\n dsResult = await runDataSourceRequest(\n curDS,\n localDsv,\n this,\n false,\n this.$message\n );\n this.dsResultCache[dsName] = dsResult;\n this.broadcast('FieldWidget', 'loadOptionItemsFromDataSet', dsName); //注意:跟Vue2不同,事件参数不需要包含在数组中传递!!\n } catch (err) {\n this.$message.error(err.message);\n }\n }\n });\n }\n },\n\n //--------------------- 以下为组件支持外部调用的API方法 begin ------------------//\n /* 提示:用户可自行扩充这些方法!!! */\n\n changeLanguage(langName) {\n changeLocale(langName);\n },\n\n getLanguageName() {\n return localStorage.getItem('lowcode_local') || 'zh-CN';\n },\n\n getNativeForm() {\n //获取原生form引用\n return this.$refs['renderForm'];\n },\n\n getFormRef() {\n return this;\n },\n\n getWidgetRef(widgetName, showError = false) {\n const foundRef = this.widgetRefList[widgetName];\n if (!foundRef && !!showError) {\n this.$message.error(this.i18nt('render.hint.refNotFound') + widgetName);\n }\n return foundRef;\n },\n\n clearFormDataModel() {\n for (const pkey in this.formDataModel) {\n delete this.formDataModel[pkey];\n }\n },\n\n getFormJson() {\n return this.formJsonObj;\n },\n\n /**\n * 动态加载表单JSON\n * @param newFormJson\n */\n setFormJson(newFormJson) {\n if (!!newFormJson) {\n if (typeof newFormJson === 'string' || newFormJson.constructor === Object) {\n let newFormJsonObj = null;\n if (typeof newFormJson === 'string') {\n newFormJsonObj = JSON.parse(newFormJson);\n } else {\n newFormJsonObj = newFormJson;\n }\n\n if (!newFormJsonObj.formConfig || !newFormJsonObj.widgetList) {\n this.$message.error('Invalid format of form json.');\n return;\n }\n\n /* formDataModel必须在widgetList赋值完成初始化,因为widgetList赋值意味着子组件开始创建!!! */\n //this.formDataModel = {} //清空表单数据对象(有bug,会导致表单校验失败!!)\n this.clearFormDataModel(); //上行代码有问题,会导致表单校验失败,故保留原对象引用只清空对象属性!!\n this.buildFormModel(newFormJsonObj.widgetList);\n const defaultFormConfig = deepClone(getDefaultFormConfig());\n\n overwriteObj(defaultFormConfig, newFormJsonObj.formConfig); //\n\n this.formJsonObj['formConfig'] = defaultFormConfig; //newFormJsonObj.formConfig;\n this.formJsonObj['widgetList'] = newFormJsonObj.widgetList;\n\n this.insertCustomStyleAndScriptNode(); /* 必须先插入表单全局函数,否则VForm内部引用全局函数会报错!!! */\n this.$nextTick(() => {\n this.initFormObject(false);\n this.initDataSetRequest();\n this.handleOnMounted();\n });\n } else {\n this.$message.error('Set form json failed.');\n }\n }\n },\n\n /**\n * 重新加载选项数据\n * @param widgetNames 指定重新加载的组件名称或组件名数组,不传则重新加载所有选项字段\n */\n reloadOptionData(widgetNames) {\n let eventParams = [];\n if (!!widgetNames && typeof widgetNames === 'string') {\n eventParams = [widgetNames];\n } else if (!!widgetNames && Array.isArray(widgetNames)) {\n eventParams = [...widgetNames];\n }\n this.broadcast('FieldWidget', 'reloadOptionItems', eventParams);\n },\n\n getFormData(needValidation = true) {\n if (!needValidation) {\n return this.formDataModel;\n }\n\n let callback = function nullFunc() {};\n const promise = new window.Promise(function (resolve, reject) {\n callback = function (formData, error) {\n !error ? resolve(formData) : reject(error);\n };\n });\n\n console.log(this.formDataModel);\n this.$refs['renderForm']\n .validate()\n .then(res => {\n console.log(this.formDataModel);\n callback(this.formDataModel);\n })\n .catch(() => {\n callback(this.formDataModel, this.i18nt('render.hint.validationFailed'));\n });\n return promise;\n },\n\n setFormData(formData) {\n console.log('setFormData: ', formData);\n //设置表单数据\n Object.keys(this.formDataModel).forEach(propName => {\n if (!!formData && formData.hasOwnProperty(propName)) {\n this.formDataModel[propName] = deepClone(formData[propName]);\n }\n });\n\n // 通知SubForm组件:表单数据更新事件!!\n this.broadcast('ContainerItem', 'setFormData', this.formDataModel);\n // 通知FieldWidget组件:表单数据更新事件!!\n this.broadcast('FieldWidget', 'setFormData', this.formDataModel);\n },\n\n getFieldValue(fieldName) {\n //单个字段获取值\n const fieldRef = this.getWidgetRef(fieldName);\n if (!!fieldRef && !!fieldRef.getValue) {\n return fieldRef.getValue();\n }\n\n if (!fieldRef) {\n //如果是子表单字段\n const result = [];\n this.findWidgetNameInSubForm(fieldName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.getValue) {\n result.push(sw.getValue());\n }\n });\n\n return result;\n }\n },\n setTableRowDataValue(name, scope, value) {\n const {\n recordIndexs,\n column: { dataIndex }\n } = scope;\n this.formDataModel[name][recordIndexs[0]][dataIndex] = value;\n },\n setTableValue(name, value) {\n this.formDataModel[name] = value;\n },\n setFieldValue(fieldName, fieldValue, disableChangeEvent = false) {\n //单个更新字段值\n const fieldRef = this.getWidgetRef(fieldName);\n if (!!fieldRef && !!fieldRef.setValue) {\n fieldRef.setValue(fieldValue, disableChangeEvent);\n }\n\n if (!fieldRef) {\n //如果是子表单字段\n this.findWidgetNameInSubForm(fieldName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.setValue) {\n sw.setValue(fieldValue, disableChangeEvent);\n }\n });\n }\n },\n\n getSubFormValues(subFormName, needValidation = true) {\n const foundSFRef = this.subFormRefList[subFormName];\n // if (!foundSFRef) {\n // return this.formDataModel[subFormName]\n // }\n return foundSFRef.getSubFormValues(needValidation);\n },\n\n disableForm() {\n const wNameList = Object.keys(this.widgetRefList);\n wNameList.forEach(wName => {\n const foundW = this.getWidgetRef(wName);\n if (!!foundW) {\n if (!!foundW.widget && foundW.widget.type === 'sub-form') {\n foundW.disableSubForm();\n } else if (!!foundW.widget && foundW.widget.type === 'grid-sub-form') {\n foundW.disableGridSubForm();\n } else {\n !!foundW.setDisabled && foundW.setDisabled(true);\n }\n }\n });\n },\n\n enableForm() {\n const wNameList = Object.keys(this.widgetRefList);\n wNameList.forEach(wName => {\n const foundW = this.getWidgetRef(wName);\n if (!!foundW) {\n if (!!foundW.widget && foundW.widget.type === 'sub-form') {\n foundW.enableSubForm();\n } else if (!!foundW.widget && foundW.widget.type === 'grid-sub-form') {\n foundW.enableGridSubForm();\n } else {\n !!foundW.setDisabled && foundW.setDisabled(false);\n }\n }\n });\n },\n\n resetForm() {\n //重置表单\n const subFormNames = Object.keys(this.subFormRefList);\n subFormNames.forEach(sfName => {\n if (!!this.subFormRefList[sfName].resetSubForm) {\n this.subFormRefList[sfName].resetSubForm();\n }\n });\n\n const wNameList = Object.keys(this.widgetRefList);\n wNameList.forEach(wName => {\n const foundW = this.getWidgetRef(wName);\n if (!!foundW && !foundW.subFormItemFlag && !!foundW.resetField) {\n // 跳过子表单字段!!\n foundW.resetField();\n }\n });\n\n this.$nextTick(() => {\n this.clearValidate(); /* 清除resetField方法触发的校验错误提示 */\n });\n },\n\n clearValidate(props) {\n this.$refs.renderForm.clearValidate(props);\n },\n\n /**\n * 校验表单\n * @param callback 回调函数\n */\n validateForm(callback) {\n this.$refs['renderForm'].validate(valid => {\n callback(valid);\n });\n },\n\n validateFields() {\n //TODO\n },\n\n disableWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetDisabled(widgetNames, true);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetDisabled(wn, true);\n });\n }\n }\n },\n\n enableWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetDisabled(widgetNames, false);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetDisabled(wn, false);\n });\n }\n }\n },\n\n hideWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetHidden(widgetNames, true);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetHidden(wn, true);\n });\n }\n }\n },\n\n showWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetHidden(widgetNames, false);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetHidden(wn, false);\n });\n }\n }\n },\n\n /**\n * 获取所有字段组件\n * @param staticWidgetsIncluded 是否包含按钮等静态组件,默认不包含\n * @returns {*[]}\n */\n getFieldWidgets(staticWidgetsIncluded = false) {\n return getAllFieldWidgets(this.formJsonObj.widgetList, staticWidgetsIncluded);\n },\n\n /**\n * 获取所有容器组件\n * @returns {*[]}\n */\n getContainerWidgets() {\n return getAllContainerWidgets(this.formJsonObj.widgetList);\n },\n\n /**\n * 增加外部组件引用,可通过getEC()方法获取外部组件,以便在VForm内部调用外部组件方法\n * @param componentName 外部组件名称\n * @param externalComponent 外部组件实例\n */\n addEC(componentName, externalComponent) {\n this.externalComponents[componentName] = externalComponent;\n },\n\n /**\n * 判断外部组件是否可获取\n * @param componentName 外部组件名称\n * @returns {boolean}\n */\n hasEC(componentName) {\n return this.externalComponents.hasOwnProperty(componentName);\n },\n\n /**\n * 获取外部组件实例\n * @param componentName\n * @returns {*}\n */\n getEC(componentName) {\n return this.externalComponents[componentName];\n },\n\n /**\n * 设置或取消设置表单为只读查看模式\n * @param readonlyFlag\n */\n setReadMode(readonlyFlag = true) {\n this.readModeFlag = readonlyFlag;\n },\n\n /**\n * 获取表单当前是否只读查看模式\n * @returns {boolean}\n */\n getReadMode() {\n return this.readModeFlag;\n },\n\n /**\n * 获取globalDsv对象\n * @returns {*}\n */\n getGlobalDsv() {\n return this.globalDsv;\n },\n\n /**\n * 执行数据源请求\n * @param dsName\n * @param localDsv\n */\n async executeDataSource(dsName, localDsv) {\n const ds = getDSByName(this.formJsonObj.formConfig, dsName);\n const newDsv = new Object({});\n overwriteObj(newDsv, this.globalDsv);\n overwriteObj(newDsv, localDsv);\n return await runDataSourceRequest(ds, newDsv, this, false, this.$message);\n },\n\n /**\n * 获取父级VFormRender组件实例\n * @returns {object}\n */\n getParentFormRef() {\n return this.parentForm;\n },\n\n /**\n * 当显示多级嵌套弹窗或抽屉时,获取最顶层VFormRender组件实例\n * @returns {object}\n */\n getTopFormRef() {\n if (!this.parentForm) {\n return this;\n }\n\n let topFormRef = this.parentForm;\n while (topFormRef.parentForm) {\n topFormRef = topFormRef.parentForm;\n }\n\n return topFormRef;\n },\n setChildFormRef(childFormRef) {\n this.childFormRef = childFormRef;\n },\n\n getChildFormRef() {\n return this.childFormRef;\n },\n\n /**\n * 是否弹窗、抽屉组件动态创建的v-form-render\n * @returns {boolean}\n */\n isDynamicCreation() {\n return this.dynamicCreation;\n },\n\n setDialogOrDrawerRef(ddRef) {\n this.dialogOrDrawerRef = ddRef;\n },\n\n /**\n * 获取子级VFormRender的包裹弹窗组件或抽屉组件实例ref\n * @returns {object}\n */\n getDialogOrDrawerRef() {\n return this.dialogOrDrawerRef;\n },\n\n /**\n * 显示弹窗表单,动态创建v-form-render组件,option-data、global-dsv等属性继承父级表单\n * @param dialogName\n * @param formData\n * @param extraData\n */\n showDialog(dialogName, formData = {}, extraData = {}) {\n const topFormRef = this.getTopFormRef();\n const dialogCon = getContainerWidgetByName(topFormRef.widgetList, dialogName);\n if (!dialogName || dialogCon.type !== 'vf-dialog') {\n this.$message.error(this.i18nt('render.hint.refNotFound') + dialogName);\n return;\n }\n const dFormJson = {\n widgetList: deepClone(dialogCon.widgetList),\n formConfig: cloneFormConfigWithoutEventHandler(topFormRef.formConfig)\n };\n\n const wrapperDivId = generateId() + '';\n const dialogInstance = h(DynamicDialog, {\n options: dialogCon.options,\n formJson: dFormJson,\n formData: { ...formData },\n optionData: topFormRef.optionData,\n globalDsv: topFormRef.globalDsv,\n parentFormRef: this,\n extraData: extraData,\n wrapperId: wrapperDivId,\n vfCtx: { ...formData }\n });\n dialogInstance.appContext = this.$root.$.appContext; //非常重要, 覆盖应用上下文!!\n\n const wrapperDiv = document.createElement('div');\n wrapperDiv.id = 'vf-dynamic-dialog-wrapper' + wrapperDivId;\n document.body.appendChild(wrapperDiv);\n render(dialogInstance, wrapperDiv);\n document.body.appendChild(dialogInstance.el);\n dialogInstance.component.ctx.show();\n },\n\n showDrawer(drawerName, formData = {}, extraData = {}) {\n const topFormRef = this.getTopFormRef();\n const drawerCon = getContainerWidgetByName(topFormRef.widgetList, drawerName);\n if (!drawerCon || drawerCon.type !== 'vf-drawer') {\n this.$message.error(this.i18nt('render.hint.refNotFound') + drawerName);\n return;\n }\n const dFormJson = {\n widgetList: deepClone(drawerCon.widgetList),\n formConfig: cloneFormConfigWithoutEventHandler(topFormRef.formConfig)\n };\n\n const wrapperDivId = generateId() + '';\n const drawerInstance = createVNode(DynamicDrawer, {\n options: drawerCon.options,\n formJson: dFormJson,\n formData: formData || {},\n optionData: topFormRef.optionData,\n globalDsv: topFormRef.globalDsv,\n parentFormRef: this,\n extraData: extraData,\n wrapperId: wrapperDivId\n });\n drawerInstance.appContext = this.$root.$.appContext; //非常重要, 覆盖应用上下文!!\n\n const wrapperDiv = document.createElement('div');\n wrapperDiv.id = 'vf-dynamic-drawer-wrapper' + wrapperDivId;\n document.body.appendChild(wrapperDiv);\n render(drawerInstance, wrapperDiv);\n document.body.appendChild(drawerInstance.el);\n drawerInstance.component.ctx.show();\n },\n\n /**\n * 判断表单是否处于设计器预览状态\n * @return {boolean}\n */\n isPreviewState() {\n return this.previewState;\n }\n\n //--------------------- 以上为组件支持外部调用的API方法 end ------------------//\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .ant-form {\n &.render-form {\n height: 100%;\n overflow: auto;\n }\n }\n</style>\n"],"names":["FieldComponents","_createBlock","_createVNode","_createElementVNode","_normalizeClass","_openBlock","_createElementBlock","_Fragment","_renderList","index","_resolveDynamicComponent","_withCtx","_renderSlot","_normalizeProps","_guardReactiveProps"],"mappings":";;;;;;;;;;AAoFI,MAAK,YAAU;AAAA,EACX,MAAM;AAAA,EACN,eAAe;AAAA,EACf,QAAQ,CAAC,SAAS,IAAI;AAAA,EACtB,YAAY;AAAA,IACR,GAAGA;AAAAA,EACN;AAAA,EACD,OAAO;AAAA,IACH,OAAO;AAAA,MACH,MAAM;AAAA,MACN,SAAS,OAAO,CAAE;AAAA,IACrB;AAAA,IACD,UAAU;AAAA;AAAA,MAEN,MAAM;AAAA,MACN,SAAS,MAAM,qBAAoB;AAAA,IACtC;AAAA,IACD,UAAU;AAAA;AAAA,MAEN,MAAM;AAAA,MACN,SAAS,OAAO,CAAE;AAAA,IACrB;AAAA,IACD,YAAY;AAAA;AAAA,MAER,MAAM;AAAA,MACN,SAAS,OAAO,CAAE;AAAA,IACrB;AAAA,IACD,cAAc;AAAA;AAAA,MAEV,MAAM;AAAA,MACN,SAAS;AAAA,IACZ;AAAA,IACD,cAAc;AAAA;AAAA,MAEV,MAAM;AAAA,MACN,SAAS;AAAA,IACZ;AAAA,IACD,cAAc;AAAA;AAAA,MAEV,MAAM;AAAA,MACN,SAAS,MAAM;AACX,eAAO;AAAA,UACH,cAAc;AAAA;AAAA,QACjB;AAAA,MACL;AAAA,IACH;AAAA,IACD,WAAW;AAAA;AAAA,MAEP,MAAM;AAAA,MACN,SAAS,OAAO,CAAE;AAAA,IACrB;AAAA,IACD,YAAY;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACZ;AAAA,IACD,iBAAiB;AAAA;AAAA,MAEb,MAAM;AAAA,MACN,SAAS;AAAA,IACb;AAAA,EACH;AAAA,EACD,UAAU;AACN,WAAO;AAAA,MACH,SAAS,KAAK;AAAA,MACd,WAAW,KAAK;AAAA;AAAA,MAChB,eAAe,MACX,KAAK,YACA;AAAA,MACT,cAAc,MAAM,KAAK;AAAA;AAAA,MACzB,kBAAkB,KAAK;AAAA,MACvB,eAAe,MACX,KAAK;AAAA,MACT,aAAa;AAAA,QACT,WAAW,KAAK;AAAA,MACnB;AAAA,MACD,cAAc,KAAK;AAAA,MACnB,aAAa,MAAM,KAAK;AAAA,MACxB,qBAAqB,MAAM;AAAA,MAC3B,gBAAgB,MAAM;AAAA,MACtB,kBAAkB,MAAM,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EACD,OAAO;AACH,WAAO;AAAA,MACH,WAAW;AAAA;AAAA,MACX,cAAc;AAAA;AAAA,MACd,aAAa,KAAK;AAAA,MAElB,eAAe;AAAA;AAAA,MAEd;AAAA,MACD,WAAW;AAAA;AAAA,MACX,eAAe,CAAE;AAAA,MACjB,gBAAgB,CAAE;AAAA,MAClB,QAAQ;AAAA;AAAA,MAER,oBAAoB,CAAE;AAAA;AAAA,MACtB,cAAc;AAAA;AAAA,MACd,mBAAmB;AAAA;AAAA,MACnB,cAAc;AAAA;AAAA,MAEd,eAAe,CAAC;AAAA;AAAA,IACnB;AAAA,EACJ;AAAA,EACD,UAAU;AAAA,IACN,aAAa;AACT,aAAO,KAAK,YAAY;AAAA,IAC3B;AAAA,IACD,iBAAiB;AACb,aAAO,KAAK,WAAW,qBAAqB,KAAK,MAAM,sBAAsB;AAAA,IAChF;AAAA,IAED,aAAa;AACT,aAAO,KAAK,WAAW,iBAAiB,KAAK,MAAM,uBAAuB;AAAA,IAC7E;AAAA,IAED,aAAa;AACT,aAAO,KAAK,YAAY;AAAA,IAC3B;AAAA,IAED,gBAAgB;AACZ,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,eAAe;AACtD,eAAO,KAAK,WAAW;AAAA,MAC3B;AAEA,aAAO;AAAA,IACV;AAAA,IAED,aAAa;AACT,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,YAAY;AACnD,eAAO,KAAK,WAAW,aAAa;AAAA,MACxC;AAEA,aAAO;AAAA,IACV;AAAA,IAED,OAAO;AACH,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,MAAM;AAC7C,eAAO,KAAK,WAAW;AAAA,MAC3B;AAEA,aAAO;AAAA,IACV;AAAA,IAED,cAAc;AACV,aAAO,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,cACxC,KAAK,WAAW,cAChB;AAAA,IACV;AAAA,EACH;AAAA,EACD,OAAO;AAAA;AAAA,EAEN;AAAA,EACD,UAAU;AACN,SAAK,YAAY;AACjB,SAAK,eAAe,CAAC,KAAK,cAAc,OAAO,KAAK,YAAY,UAAU;AAC1E,SAAK,eAAgB;AAAA,EACxB;AAAA,EACD,UAAU;AACN,SAAK,WAAY;AACjB,SAAK,mBAAoB;AAAA,EAE5B;AAAA,EACD,SAAS;AAAA,IACL,WAAW,MAAM;AACb,WAAK,YAAY;AAAA,IACpB;AAAA,IAED,oBAAoB;AAChB,UAAI,KAAK,UAAW;AACpB,UAAI,CAAC,KAAK,oBAAqB;AAC/B,UAAI;AACA,aAAK,YAAY;AACjB,YAAI,CAAC,CAAC,KAAK,WAAW,qBAAqB;AACvC,gBAAM,WAAW,IAAI,SAAS,KAAK,WAAW,mBAAmB;AACjE,gBAAM,cAAc,SAAS,KAAK,IAAI;AACtC,cAAI,gBAAgB,OAAO;AACvB;AAAA,UACJ;AAAA,QACJ;AAEA,aAAK,gBAAgB;AACrB,mBAAW,KAAK,mBAAmB,GAAG;AAAA,MACxC,SAAO,OAAO;AACZ,gBAAQ,IAAI,WAAW,KAAK;AAAA,MAChC,UAAU;AACN,aAAK,YAAY;AAAA,MACrB;AAAA,IACH;AAAA,IAED,MAAM,gBAAgB;AAClB,UAAI,KAAK,aAAc;AAEvB,UAAI;AACA,aAAK,eAAe;AACpB,YAAI,CAAC,CAAC,KAAK,WAAW,iBAAiB;AACnC,gBAAM,WAAW,IAAI,SAAS,KAAK,WAAW,eAAe;AAC7D,gBAAM,cAAc,MAAM,SAAS,KAAK,IAAI;AAC5C,cAAI,gBAAgB,OAAO;AACvB;AAAA,UACJ;AAAA,QACJ;AACA,aAAK,gBAAgB;AACrB,mBAAW,KAAK,mBAAmB,GAAG;AAAA,MACxC,SAAO,OAAO;AACZ,gBAAQ,IAAI,WAAW,KAAK;AAAA,MAChC,UAAU;AACN,aAAK,YAAY;AAAA,MACrB;AAAA,IACH;AAAA,IAED,MAAM,eAAe;;AACjB,YAAM,YAAY,KAAK,WAAW;AAClC,WAAI,eAAU,YAAY,SAAtB,mBAA4B,KAAK;AACjC,cAAM,MAAM,MAAM,cAAc,KAAK,MAAM,UAAU,aAAa;AAAA,UAC9D,OAAO,KAAK;AAAA,QAChB,CAAC;AACD,gBAAQ,IAAI,SAAS,GAAG;AACxB,eAAO;AAAA,MACX;AAAA,IACH;AAAA,IACD,MAAM,eAAe;;AACjB,YAAM,YAAY,MAAM,KAAK,YAAa;AAC1C,YAAM,YAAY,KAAK,WAAW;AAClC,WAAI,eAAU,YAAY,SAAtB,mBAA4B,KAAK;AACjC,cAAM,MAAM,MAAM,cAAc,KAAK,MAAM,UAAU,aAAa;AAAA,UAC9D,MAAM;AAAA,UACN,OAAO,KAAK;AAAA,QAChB,CAAC;AACD,gBAAQ,IAAI,SAAS,GAAG;AACxB,eAAO;AAAA,MACX;AAAA,IACH;AAAA,IAED,eAAe,qBAAqB,MAAM;AACtC,WAAK,SAAS,aAAa,WAAY;AACvC,UAAI,CAAC,CAAC,sBAAsB,CAAC,KAAK,iBAAiB;AAE/C,aAAK,+BAAgC;AAAA,MACzC;AACA,WAAK,2BAA4B;AACjC,WAAK,6BAA8B;AACnC,WAAK,sBAAuB;AAC5B,WAAK,gBAAiB;AAEtB,UAAI,KAAK,cAAc;AAEnB,aAAK,UAAU,MAAM;AACjB,eAAK,YAAa;AAAA,QACtB,CAAC;AAAA,MACL;AAAA,IACH;AAAA,IAED,uBAAuB,QAAQ;AAC3B,UAAI,OAAO,SAAS,QAAQ;AAExB,eAAO;AAAA,MACX;AAEA,aAAO,OAAO,OAAO;AAAA,IACxB;AAAA,IAED,cAAc,QAAQ;AAClB,aAAO,OAAO,OAAO;AAAA,IACxB;AAAA,IAED,aAAa;AACT,YAAM,YAAY,aAAa,QAAQ,eAAe,KAAK;AAC3D,WAAK,eAAe,SAAS;AAAA,IAChC;AAAA,IAED,iCAAiC;AAC7B,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,SAAS;AAChD;AAAA,UACI,KAAK,WAAW;AAAA,UAChB,CAAC,CAAC,KAAK,eAAe,KAAK,KAAK;AAAA,QACnC;AAAA,MACL;AAEA,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,WAAW;AAClD;AAAA,UACI,KAAK,WAAW;AAAA,UAChB,CAAC,CAAC,KAAK,eAAe,KAAK,KAAK;AAAA,QACnC;AAAA,MACL;AAAA,IACH;AAAA,IAED,eAAe,YAAY;AACvB,UAAI,CAAC,CAAC,cAAc,WAAW,SAAS,GAAG;AACvC,mBAAW,QAAQ,WAAS;AACxB,eAAK,oBAAoB,KAAK;AAAA,QAClC,CAAC;AAAA,MACL;AAAA,IACH;AAAA,IAED,oBAAoB,OAAO;AACvB,UAAI,MAAM,aAAa,aAAa;AAChC,YAAI,MAAM,SAAS,cAAc;AAC7B,gBAAM,EAAE,SAAS,MAAM;AACvB,eAAK,cAAc,IAAI,IAAI,UAAU,MAAM,QAAQ,UAAU;AAC7D;AAAA,QACJ;AACA,YAAI,MAAM,SAAS,eAAe,MAAM,SAAS,YAAa;AAAA,iBAEnD,MAAM,SAAS,QAAQ;AAC9B,cAAI,CAAC,CAAC,MAAM,QAAQ,MAAM,KAAK,SAAS,GAAG;AACvC,kBAAM,KAAK,QAAQ,eAAa;AAC5B,mBAAK,oBAAoB,SAAS;AAAA,YACtC,CAAC;AAAA,UACL;AAAA,mBACO,MAAM,SAAS,SAAS;AAC/B,cAAI,CAAC,CAAC,MAAM,QAAQ,MAAM,KAAK,SAAS,GAAG;AACvC,kBAAM,KAAK,QAAQ,aAAW;AAC1B,kBAAI,CAAC,CAAC,QAAQ,QAAQ,QAAQ,KAAK,SAAS,GAAG;AAC3C,wBAAQ,KAAK,QAAQ,aAAW;AAC5B,uBAAK,oBAAoB,OAAO;AAAA,gBACpC,CAAC;AAAA,cACL;AAAA,YACJ,CAAC;AAAA,UACL;AAAA,mBACO,MAAM,SAAS,OAAO;AAC7B,cAAI,CAAC,CAAC,MAAM,QAAQ,MAAM,KAAK,SAAS,GAAG;AACvC,kBAAM,KAAK,QAAQ,aAAW;AAC1B,kBAAI,CAAC,CAAC,QAAQ,cAAc,QAAQ,WAAW,SAAS,GAAG;AACvD,wBAAQ,WAAW,QAAQ,eAAa;AACpC,uBAAK,oBAAoB,SAAS;AAAA,gBACtC,CAAC;AAAA,cACL;AAAA,YACJ,CAAC;AAAA,UACL;AAAA,QACJ,WAAW,MAAM,SAAS,YAAY;AAClC,gBAAM,cAAc,MAAM,QAAQ;AAClC,cAAI,CAAC,KAAK,SAAS,eAAe,WAAW,GAAG;AAC5C,kBAAM,iBAAiB,CAAE;AACzB,gBAAI,MAAM,QAAQ,cAAc;AAC5B,oBAAM,WAAW,QAAQ,iBAAe;AACpC,oBAAI,CAAC,CAAC,YAAY,cAAc;AAC5B,iCAAe,YAAY,QAAQ,IAAI,IACnC,YAAY,QAAQ;AAAA,gBAC5B;AAAA,cACJ,CAAC;AAED,mBAAK,cAAc,WAAW,IAAI,CAAC,cAAc;AAAA,mBAC9C;AACH,mBAAK,cAAc,WAAW,IAAI,CAAE;AAAA,YACxC;AAAA,iBACG;AACH,kBAAM,eAAe,KAAK,SAAS,WAAW;AAC9C,iBAAK,cAAc,WAAW,IAAI,UAAU,YAAY;AAAA,UAC5D;AAAA,QACJ,WAAW,MAAM,SAAS,iBAAiB;AACvC,gBAAM,kBAAkB,MAAM,QAAQ;AACtC,cAAI,CAAC,KAAK,SAAS,eAAe,eAAe,GAAG;AAChD,kBAAM,YAAY,CAAE;AACpB,kBAAM,cAAc,QAAM;AACtB,wBAAU,KAAK,EAAE;AAAA,YACpB;AACD,4CAAgC,OAAO,WAAW;AAElD,kBAAM,qBAAqB,CAAE;AAC7B,gBAAI,MAAM,QAAQ,cAAc;AAC5B,wBAAU,QAAQ,qBAAmB;AACjC,mCAAmB,gBAAgB,QAAQ,IAAI,IAC3C,gBAAgB,QAAQ;AAAA,cAChC,CAAC;AACD,mBAAK,cAAc,eAAe,IAAI,CAAC,kBAAkB;AAAA,mBACtD;AACH,mBAAK,cAAc,eAAe,IAAI,CAAE;AAAA,YAC5C;AAAA,iBACG;AACH,kBAAM,eAAe,KAAK,SAAS,eAAe;AAClD,iBAAK,cAAc,eAAe,IAAI,UAAU,YAAY;AAAA,UAChE;AAAA,mBACO,MAAM,SAAS,cAAc,MAAM,SAAS,cAAc;AACjE,cAAI,CAAC,CAAC,MAAM,cAAc,MAAM,WAAW,SAAS,GAAG;AACnD,kBAAM,WAAW,QAAQ,eAAa;AAClC,mBAAK,oBAAoB,SAAS;AAAA,YACtC,CAAC;AAAA,UACL;AAAA,eACG;AAEH,cAAI,CAAC,CAAC,MAAM,cAAc,MAAM,WAAW,SAAS,GAAG;AACnD,kBAAM,WAAW,QAAQ,eAAa;AAClC,mBAAK,oBAAoB,SAAS;AAAA,YACtC,CAAC;AAAA,UACL;AAAA,QACJ;AAAA,iBACO,CAAC,CAAC,MAAM,cAAc;AAC7B,YAAI,CAAC,KAAK,SAAS,eAAe,MAAM,QAAQ,IAAI,GAAG;AACnD,eAAK,cAAc,MAAM,QAAQ,IAAI,IAAI,MAAM,QAAQ;AAAA,eACpD;AACH,gBAAM,eAAe,KAAK,SAAS,MAAM,QAAQ,IAAI;AACrD,eAAK,cAAc,MAAM,QAAQ,IAAI,IAAI,UAAU,YAAY;AAAA,QACnE;AAAA,MACJ;AAAA,IACH;AAAA,IAED,6BAA6B;AACzB,WAAK,KAAK,aAAa;AACvB,WAAK;AAAA,QACD;AAAA,QACA,CAAC,WAAW,UAAU,UAAU,aAAa,oBAAoB;AAC7D,eAAK;AAAA,YACD;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACH;AACD,eAAK;AAAA,YACD;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,KAAK;AAAA,YACL;AAAA,YACA;AAAA,UACH;AAAA,QACL;AAAA,MACH;AAAA,IACJ;AAAA,IAED,+BAA+B;AAC3B,WAAK,KAAK,iBAAiB;AAC3B,WAAK,IAAI,mBAAmB,eAAa;AACrC,YAAI,CAAC,CAAC,KAAK,MAAM,YAAY;AACzB,eAAK,MAAM,WAAW,eAAe,SAAS;AAAA,QAClD;AAAA,MACJ,CAAC;AAAA,IACJ;AAAA,IAED,wBAAwB;AACpB,WAAK,cAAc,YAAY,IAAI;AAAA,IACtC;AAAA,IAED,sBAAsB,WAAW,UAAU,UAAU,aAAa,iBAAiB;AAC/E,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,kBAAkB;AACzD,cAAM,aAAa,IAAI;AAAA,UACnB;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,KAAK,WAAW;AAAA,QACnB;AACD,mBAAW;AAAA,UACP;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,KAAK;AAAA,UACL;AAAA,UACA;AAAA,QACH;AAAA,MACL;AAAA,IACH;AAAA,IAED,kBAAkB;AACd,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,eAAe;AACtD,cAAM,aAAa,IAAI,SAAS,KAAK,WAAW,aAAa;AAC7D,mBAAW,KAAK,IAAI;AAAA,MACxB;AAAA,IACH;AAAA,IAED,iBAAiB;AACb,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,gBAAgB;AACvD,cAAM,aAAa,IAAI,SAAS,KAAK,WAAW,cAAc;AAC9D,mBAAW,KAAK,IAAI;AAAA,MACxB;AAAA,IACH;AAAA,IAED,kBAAkB;AACd,UAAI,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,KAAK,WAAW,eAAe;AACtD,cAAM,aAAa,IAAI,SAAS,KAAK,WAAW,aAAa;AAC7D,mBAAW,KAAK,IAAI;AAAA,MACxB;AAAA,IACH;AAAA,IAED,yBAAyB,YAAY,cAAc;AAC/C,YAAM,SAAS,KAAK,aAAa,UAAU;AAC3C,UAAI,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,aAAa;AAClC,eAAO,YAAY,YAAY;AAAA,aAC5B;AAEH,aAAK,kCAAkC,YAAY,YAAY;AAAA,MACnE;AAAA,IACH;AAAA,IAED,kCAAkC,YAAY,cAAc;AACxD,YAAM,eAAe;AAAA,QACjB,KAAK,YAAY;AAAA,QACjB;AAAA,QACA;AAAA,MACH;AACD,UACI,CAAC,CAAC,gBACF,CAAC,CAAC,aAAa,WACf,aAAa,QAAQ,eAAe,UAAU,GAChD;AACE,qBAAa,QAAQ,WAAW;AAAA,MACpC;AAEA,WAAK,wBAAwB,UAAU,EAAE,QAAQ,QAAM;AACnD,cAAM,KAAK,KAAK,aAAa,EAAE;AAC/B,YAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa;AAC1B,aAAG,YAAY,YAAY;AAAA,QAC/B;AAAA,MACJ,CAAC;AAAA,IACJ;AAAA,IAED,uBAAuB,YAAY,YAAY;AAC3C,YAAM,SAAS,KAAK,aAAa,UAAU;AAC3C,UAAI,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,aAAa;AAClC,eAAO,UAAU,UAAU;AAAA,aACxB;AAEH,aAAK,gCAAgC,YAAY,UAAU;AAAA,MAC/D;AAAA,IACH;AAAA,IAED,gCAAgC,YAAY,YAAY;AACpD,YAAM,eAAe;AAAA,QACjB,KAAK,YAAY;AAAA,QACjB;AAAA,QACA;AAAA,MACH;AACD,UACI,CAAC,CAAC,gBACF,CAAC,CAAC,aAAa,WACf,aAAa,QAAQ,eAAe,QAAQ,GAC9C;AACE,qBAAa,QAAQ,SAAS;AAAA,MAClC;AAEA,WAAK,wBAAwB,UAAU,EAAE,QAAQ,QAAM;AACnD,cAAM,KAAK,KAAK,aAAa,EAAE;AAC/B,YAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa;AAC1B,aAAG,UAAU,UAAU;AAAA,QAC3B;AAAA,MACJ,CAAC;AAAA,IACJ;AAAA,IAED,wBAAwB,YAAY;AAChC,YAAM,SAAS,CAAE;AACjB,UAAI,cAAc;AAClB,YAAM,YAAY,CAAC,OAAO,WAAW;AACjC,YAAI,CAAC,CAAC,MAAM,WAAW,MAAM,QAAQ,SAAS,YAAY;AACtD,wBAAc,OAAO,QAAQ;AAAA,QACjC;AAAA,MACH;AACD,2BAAqB,KAAK,YAAY,SAAS;AAE/C,UAAI,CAAC,CAAC,aAAa;AACf,cAAM,aAAa,KAAK,aAAa,WAAW;AAChD,YAAI,CAAC,CAAC,YAAY;AACd,gBAAM,SAAS,WAAW,aAAc;AACxC,cAAI,CAAC,CAAC,UAAU,OAAO,SAAS,GAAG;AAC/B,mBAAO,QAAQ,SAAO;AAClB,qBAAO,KAAK,aAAa,SAAS,GAAG;AAAA,YACzC,CAAC;AAAA,UACL;AAAA,QACJ;AAAA,MACJ;AAEA,aAAO;AAAA,IACV;AAAA,IAED,qBAAqB;AACjB,YAAM,YAAY,oBAAI,IAAK;AAC3B,WAAK,gBAAe,EAAG,QAAQ,QAAM;AACjC,YACI,CAAC,CAAC,GAAG,MAAM,QAAQ,aACnB,CAAC,CAAC,GAAG,MAAM,QAAQ,UACnB,CAAC,CAAC,GAAG,MAAM,QAAQ,aACrB;AACE,oBAAU,IAAI,GAAG,MAAM,QAAQ,MAAM;AAAA,QACzC;AAAA,MACJ,CAAC;AAED,UAAI,UAAU,OAAO,GAAG;AACpB,kBAAU,QAAQ,OAAM,WAAU;AAC9B,gBAAM,QAAQ,YAAY,KAAK,YAAY,MAAM;AACjD,cAAI,CAAC,CAAC,OAAO;AACT,kBAAM,WAAW,IAAI,OAAO,EAAE;AAC9B,yBAAa,UAAU,KAAK,aAAa,CAAA,CAAE;AAC3C,gBAAI,WAAW;AACf,gBAAI;AACA,yBAAW,MAAM;AAAA,gBACb;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA,KAAK;AAAA,cACR;AACD,mBAAK,cAAc,MAAM,IAAI;AAC7B,mBAAK,UAAU,eAAe,8BAA8B,MAAM;AAAA,YACpE,SAAO,KAAK;AACV,mBAAK,SAAS,MAAM,IAAI,OAAO;AAAA,YACnC;AAAA,UACJ;AAAA,QACJ,CAAC;AAAA,MACL;AAAA,IACH;AAAA;AAAA;AAAA,IAKD,eAAe,UAAU;AACrB,mBAAa,QAAQ;AAAA,IACxB;AAAA,IAED,kBAAkB;AACd,aAAO,aAAa,QAAQ,eAAe,KAAK;AAAA,IACnD;AAAA,IAED,gBAAgB;AAEZ,aAAO,KAAK,MAAM,YAAY;AAAA,IACjC;AAAA,IAED,aAAa;AACT,aAAO;AAAA,IACV;AAAA,IAED,aAAa,YAAY,YAAY,OAAO;AACxC,YAAM,WAAW,KAAK,cAAc,UAAU;AAC9C,UAAI,CAAC,YAAY,CAAC,CAAC,WAAW;AAC1B,aAAK,SAAS,MAAM,KAAK,MAAM,yBAAyB,IAAI,UAAU;AAAA,MAC1E;AACA,aAAO;AAAA,IACV;AAAA,IAED,qBAAqB;AACjB,iBAAW,QAAQ,KAAK,eAAe;AACnC,eAAO,KAAK,cAAc,IAAI;AAAA,MAClC;AAAA,IACH;AAAA,IAED,cAAc;AACV,aAAO,KAAK;AAAA,IACf;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY,aAAa;AACrB,UAAI,CAAC,CAAC,aAAa;AACf,YAAI,OAAO,gBAAgB,YAAY,YAAY,gBAAgB,QAAQ;AACvE,cAAI,iBAAiB;AACrB,cAAI,OAAO,gBAAgB,UAAU;AACjC,6BAAiB,KAAK,MAAM,WAAW;AAAA,iBACpC;AACH,6BAAiB;AAAA,UACrB;AAEA,cAAI,CAAC,eAAe,cAAc,CAAC,eAAe,YAAY;AAC1D,iBAAK,SAAS,MAAM,8BAA8B;AAClD;AAAA,UACJ;AAIA,eAAK,mBAAkB;AACvB,eAAK,eAAe,eAAe,UAAU;AAC7C,gBAAM,oBAAoB,UAAU,sBAAsB;AAE1D,uBAAa,mBAAmB,eAAe,UAAU;AAEzD,eAAK,YAAY,YAAY,IAAI;AACjC,eAAK,YAAY,YAAY,IAAI,eAAe;AAEhD,eAAK,+BAA8B;AACnC,eAAK,UAAU,MAAM;AACjB,iBAAK,eAAe,KAAK;AACzB,iBAAK,mBAAoB;AACzB,iBAAK,gBAAiB;AAAA,UAC1B,CAAC;AAAA,eACE;AACH,eAAK,SAAS,MAAM,uBAAuB;AAAA,QAC/C;AAAA,MACJ;AAAA,IACH;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,iBAAiB,aAAa;AAC1B,UAAI,cAAc,CAAE;AACpB,UAAI,CAAC,CAAC,eAAe,OAAO,gBAAgB,UAAU;AAClD,sBAAc,CAAC,WAAW;AAAA,iBACnB,CAAC,CAAC,eAAe,MAAM,QAAQ,WAAW,GAAG;AACpD,sBAAc,CAAC,GAAG,WAAW;AAAA,MACjC;AACA,WAAK,UAAU,eAAe,qBAAqB,WAAW;AAAA,IACjE;AAAA,IAED,YAAY,iBAAiB,MAAM;AAC/B,UAAI,CAAC,gBAAgB;AACjB,eAAO,KAAK;AAAA,MAChB;AAEA,UAAI,WAAW,SAAS,WAAW;AAAA,MAAE;AACrC,YAAM,UAAU,IAAI,OAAO,QAAQ,SAAU,SAAS,QAAQ;AAC1D,mBAAW,SAAU,UAAU,OAAO;AAClC,WAAC,QAAQ,QAAQ,QAAQ,IAAI,OAAO,KAAK;AAAA,QAC5C;AAAA,MACL,CAAC;AAED,cAAQ,IAAI,KAAK,aAAa;AAC9B,WAAK,MAAM,YAAY,EAClB,SAAQ,EACR,KAAK,SAAO;AACT,gBAAQ,IAAI,KAAK,aAAa;AAC9B,iBAAS,KAAK,aAAa;AAAA,MAC9B,CAAA,EACA,MAAM,MAAM;AACT,iBAAS,KAAK,eAAe,KAAK,MAAM,8BAA8B,CAAC;AAAA,MAC3E,CAAC;AACL,aAAO;AAAA,IACV;AAAA,IAED,YAAY,UAAU;AAClB,cAAQ,IAAI,iBAAiB,QAAQ;AAErC,aAAO,KAAK,KAAK,aAAa,EAAE,QAAQ,cAAY;AAChD,YAAI,CAAC,CAAC,YAAY,SAAS,eAAe,QAAQ,GAAG;AACjD,eAAK,cAAc,QAAQ,IAAI,UAAU,SAAS,QAAQ,CAAC;AAAA,QAC/D;AAAA,MACJ,CAAC;AAGD,WAAK,UAAU,iBAAiB,eAAe,KAAK,aAAa;AAEjE,WAAK,UAAU,eAAe,eAAe,KAAK,aAAa;AAAA,IAClE;AAAA,IAED,cAAc,WAAW;AAErB,YAAM,WAAW,KAAK,aAAa,SAAS;AAC5C,UAAI,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,UAAU;AACnC,eAAO,SAAS,SAAU;AAAA,MAC9B;AAEA,UAAI,CAAC,UAAU;AAEX,cAAM,SAAS,CAAE;AACjB,aAAK,wBAAwB,SAAS,EAAE,QAAQ,QAAM;AAClD,gBAAM,KAAK,KAAK,aAAa,EAAE;AAC/B,cAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU;AACvB,mBAAO,KAAK,GAAG,UAAU;AAAA,UAC7B;AAAA,QACJ,CAAC;AAED,eAAO;AAAA,MACX;AAAA,IACH;AAAA,IACD,qBAAqB,MAAM,OAAO,OAAO;AACrC,YAAM;AAAA,QACF;AAAA,QACA,QAAQ,EAAE,UAAU;AAAA,MACxB,IAAI;AACJ,WAAK,cAAc,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,SAAS,IAAI;AAAA,IAC1D;AAAA,IACD,cAAc,MAAM,OAAO;AACvB,WAAK,cAAc,IAAI,IAAI;AAAA,IAC9B;AAAA,IACD,cAAc,WAAW,YAAY,qBAAqB,OAAO;AAE7D,YAAM,WAAW,KAAK,aAAa,SAAS;AAC5C,UAAI,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,UAAU;AACnC,iBAAS,SAAS,YAAY,kBAAkB;AAAA,MACpD;AAEA,UAAI,CAAC,UAAU;AAEX,aAAK,wBAAwB,SAAS,EAAE,QAAQ,QAAM;AAClD,gBAAM,KAAK,KAAK,aAAa,EAAE;AAC/B,cAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU;AACvB,eAAG,SAAS,YAAY,kBAAkB;AAAA,UAC9C;AAAA,QACJ,CAAC;AAAA,MACL;AAAA,IACH;AAAA,IAED,iBAAiB,aAAa,iBAAiB,MAAM;AACjD,YAAM,aAAa,KAAK,eAAe,WAAW;AAIlD,aAAO,WAAW,iBAAiB,cAAc;AAAA,IACpD;AAAA,IAED,cAAc;AACV,YAAM,YAAY,OAAO,KAAK,KAAK,aAAa;AAChD,gBAAU,QAAQ,WAAS;AACvB,cAAM,SAAS,KAAK,aAAa,KAAK;AACtC,YAAI,CAAC,CAAC,QAAQ;AACV,cAAI,CAAC,CAAC,OAAO,UAAU,OAAO,OAAO,SAAS,YAAY;AACtD,mBAAO,eAAgB;AAAA,UAC3B,WAAW,CAAC,CAAC,OAAO,UAAU,OAAO,OAAO,SAAS,iBAAiB;AAClE,mBAAO,mBAAoB;AAAA,iBACxB;AACH,aAAC,CAAC,OAAO,eAAe,OAAO,YAAY,IAAI;AAAA,UACnD;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IACJ;AAAA,IAED,aAAa;AACT,YAAM,YAAY,OAAO,KAAK,KAAK,aAAa;AAChD,gBAAU,QAAQ,WAAS;AACvB,cAAM,SAAS,KAAK,aAAa,KAAK;AACtC,YAAI,CAAC,CAAC,QAAQ;AACV,cAAI,CAAC,CAAC,OAAO,UAAU,OAAO,OAAO,SAAS,YAAY;AACtD,mBAAO,cAAe;AAAA,UAC1B,WAAW,CAAC,CAAC,OAAO,UAAU,OAAO,OAAO,SAAS,iBAAiB;AAClE,mBAAO,kBAAmB;AAAA,iBACvB;AACH,aAAC,CAAC,OAAO,eAAe,OAAO,YAAY,KAAK;AAAA,UACpD;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IACJ;AAAA,IAED,YAAY;AAER,YAAM,eAAe,OAAO,KAAK,KAAK,cAAc;AACpD,mBAAa,QAAQ,YAAU;AAC3B,YAAI,CAAC,CAAC,KAAK,eAAe,MAAM,EAAE,cAAc;AAC5C,eAAK,eAAe,MAAM,EAAE,aAAc;AAAA,QAC9C;AAAA,MACJ,CAAC;AAED,YAAM,YAAY,OAAO,KAAK,KAAK,aAAa;AAChD,gBAAU,QAAQ,WAAS;AACvB,cAAM,SAAS,KAAK,aAAa,KAAK;AACtC,YAAI,CAAC,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,OAAO,YAAY;AAE5D,iBAAO,WAAY;AAAA,QACvB;AAAA,MACJ,CAAC;AAED,WAAK,UAAU,MAAM;AACjB,aAAK,cAAa;AAAA,MACtB,CAAC;AAAA,IACJ;AAAA,IAED,cAAc,OAAO;AACjB,WAAK,MAAM,WAAW,cAAc,KAAK;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,aAAa,UAAU;AACnB,WAAK,MAAM,YAAY,EAAE,SAAS,WAAS;AACvC,iBAAS,KAAK;AAAA,MAClB,CAAC;AAAA,IACJ;AAAA,IAED,iBAAiB;AAAA,IAEhB;AAAA,IAED,eAAe,aAAa;AACxB,UAAI,CAAC,CAAC,aAAa;AACf,YAAI,OAAO,gBAAgB,UAAU;AACjC,eAAK,yBAAyB,aAAa,IAAI;AAAA,QACnD,WAAW,MAAM,QAAQ,WAAW,GAAG;AACnC,sBAAY,QAAQ,QAAM;AACtB,iBAAK,yBAAyB,IAAI,IAAI;AAAA,UAC1C,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACH;AAAA,IAED,cAAc,aAAa;AACvB,UAAI,CAAC,CAAC,aAAa;AACf,YAAI,OAAO,gBAAgB,UAAU;AACjC,eAAK,yBAAyB,aAAa,KAAK;AAAA,QACpD,WAAW,MAAM,QAAQ,WAAW,GAAG;AACnC,sBAAY,QAAQ,QAAM;AACtB,iBAAK,yBAAyB,IAAI,KAAK;AAAA,UAC3C,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACH;AAAA,IAED,YAAY,aAAa;AACrB,UAAI,CAAC,CAAC,aAAa;AACf,YAAI,OAAO,gBAAgB,UAAU;AACjC,eAAK,uBAAuB,aAAa,IAAI;AAAA,QACjD,WAAW,MAAM,QAAQ,WAAW,GAAG;AACnC,sBAAY,QAAQ,QAAM;AACtB,iBAAK,uBAAuB,IAAI,IAAI;AAAA,UACxC,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACH;AAAA,IAED,YAAY,aAAa;AACrB,UAAI,CAAC,CAAC,aAAa;AACf,YAAI,OAAO,gBAAgB,UAAU;AACjC,eAAK,uBAAuB,aAAa,KAAK;AAAA,QAClD,WAAW,MAAM,QAAQ,WAAW,GAAG;AACnC,sBAAY,QAAQ,QAAM;AACtB,iBAAK,uBAAuB,IAAI,KAAK;AAAA,UACzC,CAAC;AAAA,QACL;AAAA,MACJ;AAAA,IACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,gBAAgB,wBAAwB,OAAO;AAC3C,aAAO,mBAAmB,KAAK,YAAY,YAAY,qBAAqB;AAAA,IAC/E;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,sBAAsB;AAClB,aAAO,uBAAuB,KAAK,YAAY,UAAU;AAAA,IAC5D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,MAAM,eAAe,mBAAmB;AACpC,WAAK,mBAAmB,aAAa,IAAI;AAAA,IAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,MAAM,eAAe;AACjB,aAAO,KAAK,mBAAmB,eAAe,aAAa;AAAA,IAC9D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,MAAM,eAAe;AACjB,aAAO,KAAK,mBAAmB,aAAa;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,YAAY,eAAe,MAAM;AAC7B,WAAK,eAAe;AAAA,IACvB;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,cAAc;AACV,aAAO,KAAK;AAAA,IACf;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,eAAe;AACX,aAAO,KAAK;AAAA,IACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,MAAM,kBAAkB,QAAQ,UAAU;AACtC,YAAM,KAAK,YAAY,KAAK,YAAY,YAAY,MAAM;AAC1D,YAAM,SAAS,IAAI,OAAO,EAAE;AAC5B,mBAAa,QAAQ,KAAK,SAAS;AACnC,mBAAa,QAAQ,QAAQ;AAC7B,aAAO,MAAM,qBAAqB,IAAI,QAAQ,MAAM,OAAO,KAAK,QAAQ;AAAA,IAC3E;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,mBAAmB;AACf,aAAO,KAAK;AAAA,IACf;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,gBAAgB;AACZ,UAAI,CAAC,KAAK,YAAY;AAClB,eAAO;AAAA,MACX;AAEA,UAAI,aAAa,KAAK;AACtB,aAAO,WAAW,YAAY;AAC1B,qBAAa,WAAW;AAAA,MAC5B;AAEA,aAAO;AAAA,IACV;AAAA,IACD,gBAAgB,cAAc;AAC1B,WAAK,eAAe;AAAA,IACvB;AAAA,IAED,kBAAkB;AACd,aAAO,KAAK;AAAA,IACf;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,oBAAoB;AAChB,aAAO,KAAK;AAAA,IACf;AAAA,IAED,qBAAqB,OAAO;AACxB,WAAK,oBAAoB;AAAA,IAC5B;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,uBAAuB;AACnB,aAAO,KAAK;AAAA,IACf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQD,WAAW,YAAY,WAAW,CAAA,GAAI,YAAY,CAAA,GAAI;AAClD,YAAM,aAAa,KAAK,cAAe;AACvC,YAAM,YAAY,yBAAyB,WAAW,YAAY,UAAU;AAC5E,UAAI,CAAC,cAAc,UAAU,SAAS,aAAa;AAC/C,aAAK,SAAS,MAAM,KAAK,MAAM,yBAAyB,IAAI,UAAU;AACtE;AAAA,MACJ;AACA,YAAM,YAAY;AAAA,QACd,YAAY,UAAU,UAAU,UAAU;AAAA,QAC1C,YAAY,mCAAmC,WAAW,UAAU;AAAA,MACvE;AAED,YAAM,eAAe,WAAU,IAAK;AACpC,YAAM,iBAAiB,EAAE,eAAe;AAAA,QACpC,SAAS,UAAU;AAAA,QACnB,UAAU;AAAA,QACV,UAAU,EAAE,GAAG,SAAU;AAAA,QACzB,YAAY,WAAW;AAAA,QACvB,WAAW,WAAW;AAAA,QACtB,eAAe;AAAA,QACf;AAAA,QACA,WAAW;AAAA,QACX,OAAO,EAAE,GAAG,SAAS;AAAA,MACzB,CAAC;AACD,qBAAe,aAAa,KAAK,MAAM,EAAE;AAEzC,YAAM,aAAa,SAAS,cAAc,KAAK;AAC/C,iBAAW,KAAK,8BAA8B;AAC9C,eAAS,KAAK,YAAY,UAAU;AACpC,aAAO,gBAAgB,UAAU;AACjC,eAAS,KAAK,YAAY,eAAe,EAAE;AAC3C,qBAAe,UAAU,IAAI,KAAM;AAAA,IACtC;AAAA,IAED,WAAW,YAAY,WAAW,CAAA,GAAI,YAAY,CAAA,GAAI;AAClD,YAAM,aAAa,KAAK,cAAe;AACvC,YAAM,YAAY,yBAAyB,WAAW,YAAY,UAAU;AAC5E,UAAI,CAAC,aAAa,UAAU,SAAS,aAAa;AAC9C,aAAK,SAAS,MAAM,KAAK,MAAM,yBAAyB,IAAI,UAAU;AACtE;AAAA,MACJ;AACA,YAAM,YAAY;AAAA,QACd,YAAY,UAAU,UAAU,UAAU;AAAA,QAC1C,YAAY,mCAAmC,WAAW,UAAU;AAAA,MACvE;AAED,YAAM,eAAe,WAAU,IAAK;AACpC,YAAM,iBAAiB,YAAY,eAAe;AAAA,QAC9C,SAAS,UAAU;AAAA,QACnB,UAAU;AAAA,QACV,UAAU,YAAY,CAAE;AAAA,QACxB,YAAY,WAAW;AAAA,QACvB,WAAW,WAAW;AAAA,QACtB,eAAe;AAAA,QACf;AAAA,QACA,WAAW;AAAA,MACf,CAAC;AACD,qBAAe,aAAa,KAAK,MAAM,EAAE;AAEzC,YAAM,aAAa,SAAS,cAAc,KAAK;AAC/C,iBAAW,KAAK,8BAA8B;AAC9C,eAAS,KAAK,YAAY,UAAU;AACpC,aAAO,gBAAgB,UAAU;AACjC,eAAS,KAAK,YAAY,eAAe,EAAE;AAC3C,qBAAe,UAAU,IAAI,KAAM;AAAA,IACtC;AAAA;AAAA;AAAA;AAAA;AAAA,IAMD,iBAAiB;AACb,aAAO,KAAK;AAAA,IAChB;AAAA;AAAA,EAGJ;AACH;;;;;sBA/rCDC,YAmDoB,8BAAA;AAAA,IAnDA,kBAAgB,SAAI;AAAA,IAAG,OAAO,EAAuB,cAAA,MAAA;AAAA;qBACrE,MAiDS;AAAA,MAjDTC,YAiDS,mBAAA,EAjDA,UAAU,MAAS,UAAA,GAAA;AAAA,yBACxB,MA+CM;AAAA,UA/CNC,mBA+CM,OAAA;AAAA,YA/CA,sBAAO,MAAS,YAAA,sBAAA,EAAA;AAAA;YAClBD,YA6CS,mBAAA;AAAA,cA5CJ,QAAQ,SAAa;AAAA,cACrB,OAAQE,eAAA,CAAA,CAAA,SAAA,aAAa,MAAA,2CAChB,sBAAsB,CAAA;AAAA,cAC3B,eAAa,SAAU;AAAA,cACvB,2BAAyB;AAAA,cACzB,OAAO,MAAa;AAAA,cACrB,KAAI;AAAA,cACH,kDAAD,MAAe;AAAA,cAAA,GAAA,CAAA,SAAA,CAAA;AAAA;+BAEL,MAAqC;AAAA,iBAA/CC,UAAA,IAAA,GAAAC,mBAkCWC,UAlCyB,MAAAC,WAAA,SAAA,YAAlB,CAAA,QAAQC,WAAK;;oBACK,gBAAA,OAAO,yBACnCR,YAaYS,wBAZH,SAAsB,uBAAC,MAAM,CAAA,GAAA;AAAA,sBACjC;AAAA,sBACA,KAAK,OAAO;AAAA,sBACZ,MAAM,MAAa,cAAC,OAAO,QAAQ,IAAI;AAAA,sBACvC,eAAa,SAAU;AAAA,sBACvB,wBAAsBD;AAAA,sBACtB,iBAAe;AAAA;sBAGSD,WAAA,OAAO,KAAK,KAAA,MAAM,IAA1B,SAAI;;gCAAgC;AAAA,0BACjD,IAAAG,QAAA,CADyD,UAAK;AAAA,4BAC9DC,WAAyC,KAAA,QAA5B,MAAIC,eAAAC,mBAAU,KAAK,CAAA,GAAA,QAAA,IAAA;AAAA;;;0GAKxCb,YAcYS,wBAbH,SAAa,cAAC,MAAM,CAAA,GAAA;AAAA,sBACxB,OAAO;AAAA,sBACP,cAAY,MAAa;AAAA,sBACzB,UAAU;AAAA,sBACV,KAAK,OAAO;AAAA,sBACZ,eAAa,SAAU;AAAA,sBACvB,wBAAsBD;AAAA,sBACtB,iBAAe;AAAA;sBAGSD,WAAA,OAAO,KAAK,KAAA,MAAM,IAA1B,SAAI;;gCAAgC;AAAA,0BACjD,IAAAG,QAAA,CADyD,UAAK;AAAA,4BAC9DC,WAAyC,KAAA,QAA5B,MAAIC,eAAAC,mBAAU,KAAK,CAAA,GAAA,QAAA,IAAA;AAAA;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"render.js","sources":["../src/components/form-render/index.vue"],"sourcesContent":["<template>\n <a-config-provider :component-size=\"size\" :input=\"{ autocomplete: 'off' }\">\n <a-spin :spinning=\"isLoading\">\n <div :style=\"isLoading ? 'min-height: 260px' : ''\">\n <a-form\n :layout=\"labelPosition\"\n :class=\"[customClass, readModeFlag ? 'readonly-mode-form' : '']\"\n class=\"render-form tpf-form\"\n :label-width=\"labelWidth\"\n :validate-on-rule-change=\"false\"\n :model=\"formDataModel\"\n ref=\"renderForm\"\n @submit.prevent\n >\n <template v-for=\"(widget, index) in widgetList\">\n <template v-if=\"'container' === widget.category\">\n <component\n :is=\"getContainerWidgetName(widget)\"\n :widget=\"widget\"\n :key=\"widget.id\"\n :data=\"formDataModel[widget.options.name]\"\n :parent-list=\"widgetList\"\n :index-of-parent-list=\"index\"\n :parent-widget=\"null\"\n >\n <!-- 递归传递插槽!!! -->\n <template v-for=\"slot in Object.keys($slots)\" v-slot:[slot]=\"scope\">\n <slot :name=\"slot\" v-bind=\"scope\"></slot>\n </template>\n </component>\n </template>\n <template v-else>\n <component\n :is=\"getWidgetName(widget)\"\n :field=\"widget\"\n :form-model=\"formDataModel\"\n :designer=\"null\"\n :key=\"widget.id\"\n :parent-list=\"widgetList\"\n :index-of-parent-list=\"index\"\n :parent-widget=\"null\"\n >\n <!-- 递归传递插槽!!! -->\n <template v-for=\"slot in Object.keys($slots)\" v-slot:[slot]=\"scope\">\n <slot :name=\"slot\" v-bind=\"scope\"></slot>\n </template>\n </component>\n </template>\n </template>\n </a-form>\n </div>\n </a-spin>\n </a-config-provider>\n</template>\n\n<script>\n import { createVNode, render, h } from 'vue';\n import emitter from '@/utils/emitter';\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n\n import {\n generateId,\n deepClone,\n insertCustomCssToHead,\n insertGlobalFunctionsToHtml,\n getAllContainerWidgets,\n getAllFieldWidgets,\n traverseFieldWidgets,\n buildDefaultFormJson,\n getDSByName,\n runDataSourceRequest,\n getFieldWidgetByName,\n overwriteObj,\n getContainerWidgetByName,\n traverseFieldWidgetsOfContainer,\n cloneFormConfigWithoutEventHandler,\n getDefaultFormConfig\n } from '@/utils/util';\n\n import i18n, { changeLocale } from '@/utils/i18n';\n import DynamicDialog from './dynamic-dialog';\n import DynamicDrawer from './dynamic-drawer';\n import { fmtHttpParams } from '@/utils/request/fmtHttpParams';\n\n export default {\n name: 'VFormRender',\n componentName: 'VFormRender',\n mixins: [emitter, i18n],\n components: {\n ...FieldComponents\n },\n props: {\n vfCtx: {\n type: Object,\n default: () => ({})\n },\n formJson: {\n //prop传入的表单JSON配置\n type: Object,\n default: () => buildDefaultFormJson()\n },\n formData: {\n //prop传入的表单数据\n type: Object,\n default: () => ({})\n },\n optionData: {\n //prop传入的选项数据\n type: Object,\n default: () => ({})\n },\n previewState: {\n //是否表单预览状态\n type: Boolean,\n default: false\n },\n disabledMode: {\n //表单禁止编辑模式\n type: Boolean,\n default: false\n },\n renderConfig: {\n //渲染配置对象\n type: Object,\n default: () => {\n return {\n languageName: 'zh-CN' //界面语言,默认显示中文\n };\n }\n },\n globalDsv: {\n // 全局数据源变量\n type: Object,\n default: () => ({})\n },\n parentForm: {\n type: Object,\n default: null\n },\n dynamicCreation: {\n //是否弹窗、抽屉动态创建的VFormRender\n type: Boolean,\n default: false\n }\n },\n provide() {\n return {\n refList: this.widgetRefList,\n sfRefList: this.subFormRefList, //收集SubForm引用\n getFormConfig: () =>\n this.formJsonObj\n .formConfig /* 解决provide传递formConfig属性的响应式更新问题!! */,\n getGlobalDsv: () => this.globalDsv, // 全局数据源变量\n globalOptionData: this.optionData,\n getOptionData: () =>\n this.optionData /* 该方法用于在异步更新option-data之后重新获取到最新值 */,\n globalModel: {\n formModel: this.formDataModel\n },\n previewState: this.previewState,\n getReadMode: () => this.readModeFlag,\n getSubFormFieldFlag: () => false,\n getSubFormName: () => '',\n getDSResultCache: () => this.dsResultCache\n };\n },\n data() {\n return {\n isClosing: false, //是否正在关闭\n isSubmitting: false, //是否正在提交中\n formJsonObj: this.formJson,\n\n formDataModel: {\n //\n },\n isLoading: false, //是否正在加载中\n widgetRefList: {},\n subFormRefList: {},\n formId: null, //表单唯一Id,用于区分页面上的多个v-form-render组件!!\n\n externalComponents: {}, //外部组件实例集合\n readModeFlag: false, //是否只读查看模式\n dialogOrDrawerRef: null, //保存子级VFormRender的包裹弹窗组件或抽屉组件的ref\n childFormRef: null, //保存子级VFormRender组件的ref\n\n dsResultCache: {} //数据源请求结果缓存\n };\n },\n computed: {\n formConfig() {\n return this.formJsonObj.formConfig;\n },\n cancelBtnLabel() {\n return this.formConfig.cancelButtonLabel || this.i18nt('designer.hint.cancel');\n },\n\n okBtnLabel() {\n return this.formConfig.okButtonLabel || this.i18nt('designer.hint.confirm');\n },\n\n widgetList() {\n return this.formJsonObj.widgetList;\n },\n\n labelPosition() {\n if (!!this.formConfig && !!this.formConfig.labelPosition) {\n return this.formConfig.labelPosition;\n }\n\n return 'horizontal';\n },\n\n labelWidth() {\n if (!!this.formConfig && !!this.formConfig.labelWidth) {\n return this.formConfig.labelWidth + 'px';\n }\n\n return '80px';\n },\n\n size() {\n if (!!this.formConfig && !!this.formConfig.size) {\n return this.formConfig.size;\n }\n\n return 'default';\n },\n\n customClass() {\n return !!this.formConfig && !!this.formConfig.customClass\n ? this.formConfig.customClass\n : '';\n }\n },\n watch: {\n //\n },\n created() {\n this.isLoading = false;\n this.buildFormModel(!this.formJsonObj ? null : this.formJsonObj.widgetList);\n this.initFormObject();\n },\n mounted() {\n this.initLocale();\n this.initDataSetRequest();\n // this.handleOnMounted();\n },\n methods: {\n setLoading(flag) {\n this.isLoading = flag;\n },\n\n handleCancelClick() {\n if (this.isClosing) return; // 防止重复关闭\n if (!this.handleBeforeClose()) return;\n try {\n this.isClosing = true;\n if (!!this.formConfig.onCancelButtonClick) {\n const customFn = new Function(this.formConfig.onCancelButtonClick);\n const clickResult = customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n async handleOkClick() {\n if (this.isSubmitting) return; // 防止重复提交\n\n try {\n this.isSubmitting = true;\n if (!!this.formConfig.onOkButtonClick) {\n const customFn = new Function(this.formConfig.onOkButtonClick);\n const clickResult = await customFn.call(this);\n if (clickResult === false) {\n return;\n }\n }\n this.dialogVisible = false;\n setTimeout(this.deleteWrapperNode, 150);\n } catch (error) {\n console.log('error: ', error);\n } finally {\n this.isClosing = false;\n }\n },\n\n async onFormDetail() {\n const serveList = this.formConfig.serveList;\n if (serveList.vformDetail.http?.url) {\n const res = await fmtHttpParams.call(this, serveList.vformDetail, {\n vfCtx: this.vfCtx\n });\n console.log('res: ', res);\n return res;\n }\n },\n async onFormUpdate() {\n const modelForm = await this.getFormData();\n const serveList = this.formConfig.serveList;\n if (serveList.vformDetail.http?.url) {\n const res = await fmtHttpParams.call(this, serveList.vformUpdate, {\n data: modelForm,\n vfCtx: this.vfCtx\n });\n console.log('res: ', res);\n return res;\n }\n },\n\n initFormObject(insertHtmlCodeFlag = true) {\n this.formId = 'vfRender' + generateId();\n if (!!insertHtmlCodeFlag && !this.dynamicCreation) {\n // 弹窗、抽屉动态创建的VFormRender不重新插入全局CSS和全局函数节点!!\n this.insertCustomStyleAndScriptNode();\n }\n this.addFieldChangeEventHandler();\n this.addFieldValidateEventHandler();\n this.registerFormToRefList();\n this.handleOnCreated();\n\n if (this.disabledMode) {\n //禁止表单编辑\n this.$nextTick(() => {\n this.disableForm();\n });\n }\n },\n\n getContainerWidgetName(widget) {\n if (widget.type === 'grid') {\n //grid-item跟VueGridLayout全局注册组件重名,故特殊处理!!\n return 'vf-grid-item';\n }\n\n return widget.type + '-item';\n },\n\n getWidgetName(widget) {\n return widget.type + '-widget';\n },\n\n initLocale() {\n const curLocale = localStorage.getItem('lowcode_local') || 'zh-CN';\n this.changeLanguage(curLocale);\n },\n\n insertCustomStyleAndScriptNode() {\n if (!!this.formConfig && !!this.formConfig.cssCode) {\n insertCustomCssToHead(\n this.formConfig.cssCode,\n !!this.previewState ? '' : this.formId\n );\n }\n\n if (!!this.formConfig && !!this.formConfig.functions) {\n insertGlobalFunctionsToHtml(\n this.formConfig.functions,\n !!this.previewState ? '' : this.formId\n );\n }\n },\n\n buildFormModel(widgetList) {\n if (!!widgetList && widgetList.length > 0) {\n widgetList.forEach(wItem => {\n this.buildDataFromWidget(wItem);\n });\n }\n },\n\n buildDataFromWidget(wItem) {\n if (wItem.category === 'container') {\n if (wItem.type === 'data-table') {\n const { name } = wItem.options;\n this.formDataModel[name] = deepClone(wItem.options.dataSource);\n return;\n }\n if (wItem.type === 'vf-dialog' || wItem.type === 'vf-drawer') {\n // 什么也不做,不处理弹窗、抽屉内部组件!!\n } else if (wItem.type === 'grid') {\n if (!!wItem.cols && wItem.cols.length > 0) {\n wItem.cols.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n } else if (wItem.type === 'table') {\n if (!!wItem.rows && wItem.rows.length > 0) {\n wItem.rows.forEach(rowItem => {\n if (!!rowItem.cols && rowItem.cols.length > 0) {\n rowItem.cols.forEach(colItem => {\n this.buildDataFromWidget(colItem);\n });\n }\n });\n }\n } else if (wItem.type === 'tab') {\n if (!!wItem.tabs && wItem.tabs.length > 0) {\n wItem.tabs.forEach(tabItem => {\n if (!!tabItem.widgetList && tabItem.widgetList.length > 0) {\n tabItem.widgetList.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n });\n }\n } else if (wItem.type === 'sub-form') {\n const subFormName = wItem.options.name;\n if (!this.formData.hasOwnProperty(subFormName)) {\n const subFormDataRow = {};\n if (wItem.options.showBlankRow) {\n wItem.widgetList.forEach(subFormItem => {\n if (!!subFormItem.formItemFlag) {\n subFormDataRow[subFormItem.options.name] =\n subFormItem.options.defaultValue;\n }\n });\n\n this.formDataModel[subFormName] = [subFormDataRow];\n } else {\n this.formDataModel[subFormName] = [];\n }\n } else {\n const initialValue = this.formData[subFormName];\n this.formDataModel[subFormName] = deepClone(initialValue);\n }\n } else if (wItem.type === 'grid-sub-form') {\n const gridSubFormName = wItem.options.name;\n if (!this.formData.hasOwnProperty(gridSubFormName)) {\n const gsfFWList = [];\n const fieldListFn = fw => {\n gsfFWList.push(fw);\n };\n traverseFieldWidgetsOfContainer(wItem, fieldListFn);\n\n const gridSubFormDataRow = {};\n if (wItem.options.showBlankRow) {\n gsfFWList.forEach(gridSubFormItem => {\n gridSubFormDataRow[gridSubFormItem.options.name] =\n gridSubFormItem.options.defaultValue;\n });\n this.formDataModel[gridSubFormName] = [gridSubFormDataRow];\n } else {\n this.formDataModel[gridSubFormName] = [];\n }\n } else {\n const initialValue = this.formData[gridSubFormName];\n this.formDataModel[gridSubFormName] = deepClone(initialValue);\n }\n } else if (wItem.type === 'grid-col' || wItem.type === 'table-cell') {\n if (!!wItem.widgetList && wItem.widgetList.length > 0) {\n wItem.widgetList.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n } else {\n //自定义容器组件\n if (!!wItem.widgetList && wItem.widgetList.length > 0) {\n wItem.widgetList.forEach(childItem => {\n this.buildDataFromWidget(childItem);\n });\n }\n }\n } else if (!!wItem.formItemFlag) {\n if (!this.formData.hasOwnProperty(wItem.options.name)) {\n this.formDataModel[wItem.options.name] = wItem.options.defaultValue;\n } else {\n const initialValue = this.formData[wItem.options.name];\n this.formDataModel[wItem.options.name] = deepClone(initialValue);\n }\n }\n },\n\n addFieldChangeEventHandler() {\n this.off$('fieldChange'); //移除原有事件监听\n this.on$(\n 'fieldChange',\n (fieldName, newValue, oldValue, subFormName, subFormRowIndex) => {\n this.handleFieldDataChange(\n fieldName,\n newValue,\n oldValue,\n subFormName,\n subFormRowIndex\n );\n this.$emit(\n 'formChange',\n fieldName,\n newValue,\n oldValue,\n this.formDataModel,\n subFormName,\n subFormRowIndex\n );\n }\n );\n },\n\n addFieldValidateEventHandler() {\n this.off$('fieldValidation'); //移除原有事件监听\n this.on$('fieldValidation', fieldName => {\n if (!!this.$refs.renderForm) {\n this.$refs.renderForm.validateFields(fieldName);\n }\n });\n },\n\n registerFormToRefList() {\n this.widgetRefList['v_form_ref'] = this;\n },\n\n handleFieldDataChange(fieldName, newValue, oldValue, subFormName, subFormRowIndex) {\n if (!!this.formConfig && !!this.formConfig.onFormDataChange) {\n const customFunc = new Function(\n 'fieldName',\n 'newValue',\n 'oldValue',\n 'formModel',\n 'subFormName',\n 'subFormRowIndex',\n this.formConfig.onFormDataChange\n );\n customFunc.call(\n this,\n fieldName,\n newValue,\n oldValue,\n this.formDataModel,\n subFormName,\n subFormRowIndex\n );\n }\n },\n\n handleOnCreated() {\n if (!!this.formConfig && !!this.formConfig.onFormCreated) {\n const customFunc = new Function(this.formConfig.onFormCreated);\n customFunc.call(this);\n }\n },\n\n handleOnSubmit() {\n if (!!this.formConfig && !!this.formConfig.handleOnSubmit) {\n const customFunc = new Function(this.formConfig.handleOnSubmit);\n customFunc.call(this);\n }\n },\n\n handleOnMounted() {\n if (!!this.formConfig && !!this.formConfig.onFormMounted) {\n const customFunc = new Function(this.formConfig.onFormMounted);\n customFunc.call(this);\n }\n },\n\n findWidgetAndSetDisabled(widgetName, disabledFlag) {\n const foundW = this.getWidgetRef(widgetName);\n if (!!foundW && !!foundW.setDisabled) {\n foundW.setDisabled(disabledFlag);\n } else {\n //没找到,可能是子表单中的组件\n this.findWidgetOfSubFormAndSetDisabled(widgetName, disabledFlag);\n }\n },\n\n findWidgetOfSubFormAndSetDisabled(widgetName, disabledFlag) {\n const widgetSchema = getFieldWidgetByName(\n this.formJsonObj.widgetList,\n widgetName,\n true\n );\n if (\n !!widgetSchema &&\n !!widgetSchema.options &&\n widgetSchema.options.hasOwnProperty('disabled')\n ) {\n widgetSchema.options.disabled = disabledFlag;\n }\n\n this.findWidgetNameInSubForm(widgetName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.setDisabled) {\n sw.setDisabled(disabledFlag);\n }\n });\n },\n\n findWidgetAndSetHidden(widgetName, hiddenFlag) {\n const foundW = this.getWidgetRef(widgetName);\n if (!!foundW && !!foundW.setDisabled) {\n foundW.setHidden(hiddenFlag);\n } else {\n //没找到,可能是子表单中的组件\n this.findWidgetOfSubFormAndSetHidden(widgetName, hiddenFlag);\n }\n },\n\n findWidgetOfSubFormAndSetHidden(widgetName, hiddenFlag) {\n const widgetSchema = getFieldWidgetByName(\n this.formJsonObj.widgetList,\n widgetName,\n true\n );\n if (\n !!widgetSchema &&\n !!widgetSchema.options &&\n widgetSchema.options.hasOwnProperty('hidden')\n ) {\n widgetSchema.options.hidden = hiddenFlag;\n }\n\n this.findWidgetNameInSubForm(widgetName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.setDisabled) {\n sw.setHidden(hiddenFlag);\n }\n });\n },\n\n findWidgetNameInSubForm(widgetName) {\n const result = [];\n let subFormName = null;\n const handlerFn = (field, parent) => {\n if (!!field.options && field.options.name === widgetName) {\n subFormName = parent.options.name;\n }\n };\n traverseFieldWidgets(this.widgetList, handlerFn);\n\n if (!!subFormName) {\n const subFormRef = this.getWidgetRef(subFormName);\n if (!!subFormRef) {\n const rowIds = subFormRef.getRowIdData();\n if (!!rowIds && rowIds.length > 0) {\n rowIds.forEach(rid => {\n result.push(widgetName + '@row' + rid);\n });\n }\n }\n }\n\n return result;\n },\n\n initDataSetRequest() {\n const dsNameSet = new Set();\n this.getFieldWidgets().forEach(fw => {\n if (\n !!fw.field.options.dsEnabled &&\n !!fw.field.options.dsName &&\n !!fw.field.options.dataSetName\n ) {\n dsNameSet.add(fw.field.options.dsName);\n }\n });\n\n if (dsNameSet.size > 0) {\n dsNameSet.forEach(async dsName => {\n const curDS = getDSByName(this.formConfig, dsName);\n if (!!curDS) {\n const localDsv = new Object({});\n overwriteObj(localDsv, this.globalDsv || {});\n let dsResult = null;\n try {\n dsResult = await runDataSourceRequest(\n curDS,\n localDsv,\n this,\n false,\n this.$message\n );\n this.dsResultCache[dsName] = dsResult;\n this.broadcast('FieldWidget', 'loadOptionItemsFromDataSet', dsName); //注意:跟Vue2不同,事件参数不需要包含在数组中传递!!\n } catch (err) {\n this.$message.error(err.message);\n }\n }\n });\n }\n },\n\n //--------------------- 以下为组件支持外部调用的API方法 begin ------------------//\n /* 提示:用户可自行扩充这些方法!!! */\n\n changeLanguage(langName) {\n changeLocale(langName);\n },\n\n getLanguageName() {\n return localStorage.getItem('lowcode_local') || 'zh-CN';\n },\n\n getNativeForm() {\n //获取原生form引用\n return this.$refs['renderForm'];\n },\n\n getFormRef() {\n return this;\n },\n\n getWidgetRef(widgetName, showError = false) {\n const foundRef = this.widgetRefList[widgetName];\n if (!foundRef && !!showError) {\n this.$message.error(this.i18nt('render.hint.refNotFound') + widgetName);\n }\n return foundRef;\n },\n\n clearFormDataModel() {\n for (const pkey in this.formDataModel) {\n delete this.formDataModel[pkey];\n }\n },\n\n getFormJson() {\n return this.formJsonObj;\n },\n\n /**\n * 动态加载表单JSON\n * @param newFormJson\n */\n setFormJson(newFormJson) {\n if (!!newFormJson) {\n if (typeof newFormJson === 'string' || newFormJson.constructor === Object) {\n let newFormJsonObj = null;\n if (typeof newFormJson === 'string') {\n newFormJsonObj = JSON.parse(newFormJson);\n } else {\n newFormJsonObj = newFormJson;\n }\n\n if (!newFormJsonObj.formConfig || !newFormJsonObj.widgetList) {\n this.$message.error('Invalid format of form json.');\n return;\n }\n\n /* formDataModel必须在widgetList赋值完成初始化,因为widgetList赋值意味着子组件开始创建!!! */\n //this.formDataModel = {} //清空表单数据对象(有bug,会导致表单校验失败!!)\n this.clearFormDataModel(); //上行代码有问题,会导致表单校验失败,故保留原对象引用只清空对象属性!!\n this.buildFormModel(newFormJsonObj.widgetList);\n const defaultFormConfig = deepClone(getDefaultFormConfig());\n\n overwriteObj(defaultFormConfig, newFormJsonObj.formConfig); //\n\n this.formJsonObj['formConfig'] = defaultFormConfig; //newFormJsonObj.formConfig;\n this.formJsonObj['widgetList'] = newFormJsonObj.widgetList;\n\n this.insertCustomStyleAndScriptNode(); /* 必须先插入表单全局函数,否则VForm内部引用全局函数会报错!!! */\n this.$nextTick(() => {\n this.initFormObject(false);\n this.initDataSetRequest();\n this.handleOnMounted();\n });\n } else {\n this.$message.error('Set form json failed.');\n }\n }\n },\n\n /**\n * 重新加载选项数据\n * @param widgetNames 指定重新加载的组件名称或组件名数组,不传则重新加载所有选项字段\n */\n reloadOptionData(widgetNames) {\n let eventParams = [];\n if (!!widgetNames && typeof widgetNames === 'string') {\n eventParams = [widgetNames];\n } else if (!!widgetNames && Array.isArray(widgetNames)) {\n eventParams = [...widgetNames];\n }\n this.broadcast('FieldWidget', 'reloadOptionItems', eventParams);\n },\n\n getFormData(needValidation = true) {\n if (!needValidation) {\n return this.formDataModel;\n }\n\n let callback = function nullFunc() {};\n const promise = new window.Promise(function (resolve, reject) {\n callback = function (formData, error) {\n !error ? resolve(formData) : reject(error);\n };\n });\n\n console.log(this.formDataModel);\n this.$refs['renderForm']\n .validate()\n .then(res => {\n console.log(this.formDataModel);\n callback(this.formDataModel);\n })\n .catch(() => {\n callback(this.formDataModel, this.i18nt('render.hint.validationFailed'));\n });\n return promise;\n },\n\n setFormData(formData) {\n console.log('setFormData: ', formData);\n //设置表单数据\n Object.keys(this.formDataModel).forEach(propName => {\n if (!!formData && formData.hasOwnProperty(propName)) {\n this.formDataModel[propName] = deepClone(formData[propName]);\n }\n });\n\n // 通知SubForm组件:表单数据更新事件!!\n this.broadcast('ContainerItem', 'setFormData', this.formDataModel);\n // 通知FieldWidget组件:表单数据更新事件!!\n this.broadcast('FieldWidget', 'setFormData', this.formDataModel);\n },\n\n getFieldValue(fieldName) {\n //单个字段获取值\n const fieldRef = this.getWidgetRef(fieldName);\n if (!!fieldRef && !!fieldRef.getValue) {\n return fieldRef.getValue();\n }\n\n if (!fieldRef) {\n //如果是子表单字段\n const result = [];\n this.findWidgetNameInSubForm(fieldName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.getValue) {\n result.push(sw.getValue());\n }\n });\n\n return result;\n }\n },\n setTableRowDataValue(name, scope, value) {\n const {\n recordIndexs,\n column: { dataIndex }\n } = scope;\n this.formDataModel[name][recordIndexs[0]][dataIndex] = value;\n },\n setTableValue(name, value) {\n this.formDataModel[name] = value;\n },\n setFieldValue(fieldName, fieldValue, disableChangeEvent = false) {\n //单个更新字段值\n const fieldRef = this.getWidgetRef(fieldName);\n if (!!fieldRef && !!fieldRef.setValue) {\n fieldRef.setValue(fieldValue, disableChangeEvent);\n }\n\n if (!fieldRef) {\n //如果是子表单字段\n this.findWidgetNameInSubForm(fieldName).forEach(wn => {\n const sw = this.getWidgetRef(wn);\n if (!!sw && !!sw.setValue) {\n sw.setValue(fieldValue, disableChangeEvent);\n }\n });\n }\n },\n\n getSubFormValues(subFormName, needValidation = true) {\n const foundSFRef = this.subFormRefList[subFormName];\n // if (!foundSFRef) {\n // return this.formDataModel[subFormName]\n // }\n return foundSFRef.getSubFormValues(needValidation);\n },\n\n disableForm() {\n const wNameList = Object.keys(this.widgetRefList);\n wNameList.forEach(wName => {\n const foundW = this.getWidgetRef(wName);\n if (!!foundW) {\n if (!!foundW.widget && foundW.widget.type === 'sub-form') {\n foundW.disableSubForm();\n } else if (!!foundW.widget && foundW.widget.type === 'grid-sub-form') {\n foundW.disableGridSubForm();\n } else {\n !!foundW.setDisabled && foundW.setDisabled(true);\n }\n }\n });\n },\n\n enableForm() {\n const wNameList = Object.keys(this.widgetRefList);\n wNameList.forEach(wName => {\n const foundW = this.getWidgetRef(wName);\n if (!!foundW) {\n if (!!foundW.widget && foundW.widget.type === 'sub-form') {\n foundW.enableSubForm();\n } else if (!!foundW.widget && foundW.widget.type === 'grid-sub-form') {\n foundW.enableGridSubForm();\n } else {\n !!foundW.setDisabled && foundW.setDisabled(false);\n }\n }\n });\n },\n\n resetForm() {\n //重置表单\n const subFormNames = Object.keys(this.subFormRefList);\n subFormNames.forEach(sfName => {\n if (!!this.subFormRefList[sfName].resetSubForm) {\n this.subFormRefList[sfName].resetSubForm();\n }\n });\n\n const wNameList = Object.keys(this.widgetRefList);\n wNameList.forEach(wName => {\n const foundW = this.getWidgetRef(wName);\n if (!!foundW && !foundW.subFormItemFlag && !!foundW.resetField) {\n // 跳过子表单字段!!\n foundW.resetField();\n }\n });\n\n this.$nextTick(() => {\n this.clearValidate(); /* 清除resetField方法触发的校验错误提示 */\n });\n },\n\n clearValidate(props) {\n this.$refs.renderForm.clearValidate(props);\n },\n\n /**\n * 校验表单\n * @param callback 回调函数\n */\n validateForm(callback) {\n this.$refs['renderForm'].validate(valid => {\n callback(valid);\n });\n },\n\n validateFields() {\n //TODO\n },\n\n disableWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetDisabled(widgetNames, true);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetDisabled(wn, true);\n });\n }\n }\n },\n\n enableWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetDisabled(widgetNames, false);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetDisabled(wn, false);\n });\n }\n }\n },\n\n hideWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetHidden(widgetNames, true);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetHidden(wn, true);\n });\n }\n }\n },\n\n showWidgets(widgetNames) {\n if (!!widgetNames) {\n if (typeof widgetNames === 'string') {\n this.findWidgetAndSetHidden(widgetNames, false);\n } else if (Array.isArray(widgetNames)) {\n widgetNames.forEach(wn => {\n this.findWidgetAndSetHidden(wn, false);\n });\n }\n }\n },\n\n /**\n * 获取所有字段组件\n * @param staticWidgetsIncluded 是否包含按钮等静态组件,默认不包含\n * @returns {*[]}\n */\n getFieldWidgets(staticWidgetsIncluded = false) {\n return getAllFieldWidgets(this.formJsonObj.widgetList, staticWidgetsIncluded);\n },\n\n /**\n * 获取所有容器组件\n * @returns {*[]}\n */\n getContainerWidgets() {\n return getAllContainerWidgets(this.formJsonObj.widgetList);\n },\n\n /**\n * 增加外部组件引用,可通过getEC()方法获取外部组件,以便在VForm内部调用外部组件方法\n * @param componentName 外部组件名称\n * @param externalComponent 外部组件实例\n */\n addEC(componentName, externalComponent) {\n this.externalComponents[componentName] = externalComponent;\n },\n\n /**\n * 判断外部组件是否可获取\n * @param componentName 外部组件名称\n * @returns {boolean}\n */\n hasEC(componentName) {\n return this.externalComponents.hasOwnProperty(componentName);\n },\n\n /**\n * 获取外部组件实例\n * @param componentName\n * @returns {*}\n */\n getEC(componentName) {\n return this.externalComponents[componentName];\n },\n\n /**\n * 设置或取消设置表单为只读查看模式\n * @param readonlyFlag\n */\n setReadMode(readonlyFlag = true) {\n this.readModeFlag = readonlyFlag;\n },\n\n /**\n * 获取表单当前是否只读查看模式\n * @returns {boolean}\n */\n getReadMode() {\n return this.readModeFlag;\n },\n\n /**\n * 获取globalDsv对象\n * @returns {*}\n */\n getGlobalDsv() {\n return this.globalDsv;\n },\n\n /**\n * 执行数据源请求\n * @param dsName\n * @param localDsv\n */\n async executeDataSource(dsName, localDsv) {\n const ds = getDSByName(this.formJsonObj.formConfig, dsName);\n const newDsv = new Object({});\n overwriteObj(newDsv, this.globalDsv);\n overwriteObj(newDsv, localDsv);\n return await runDataSourceRequest(ds, newDsv, this, false, this.$message);\n },\n\n /**\n * 获取父级VFormRender组件实例\n * @returns {object}\n */\n getParentFormRef() {\n return this.parentForm;\n },\n\n /**\n * 当显示多级嵌套弹窗或抽屉时,获取最顶层VFormRender组件实例\n * @returns {object}\n */\n getTopFormRef() {\n if (!this.parentForm) {\n return this;\n }\n\n let topFormRef = this.parentForm;\n while (topFormRef.parentForm) {\n topFormRef = topFormRef.parentForm;\n }\n\n return topFormRef;\n },\n setChildFormRef(childFormRef) {\n this.childFormRef = childFormRef;\n },\n\n getChildFormRef() {\n return this.childFormRef;\n },\n\n /**\n * 是否弹窗、抽屉组件动态创建的v-form-render\n * @returns {boolean}\n */\n isDynamicCreation() {\n return this.dynamicCreation;\n },\n\n setDialogOrDrawerRef(ddRef) {\n this.dialogOrDrawerRef = ddRef;\n },\n\n /**\n * 获取子级VFormRender的包裹弹窗组件或抽屉组件实例ref\n * @returns {object}\n */\n getDialogOrDrawerRef() {\n return this.dialogOrDrawerRef;\n },\n\n /**\n * 显示弹窗表单,动态创建v-form-render组件,option-data、global-dsv等属性继承父级表单\n * @param dialogName\n * @param formData\n * @param extraData\n */\n showDialog(dialogName, formData = {}, extraData = {}) {\n const topFormRef = this.getTopFormRef();\n console.log({ topFormRef });\n const dialogCon = getContainerWidgetByName(topFormRef.widgetList, dialogName);\n console.log({ dialogCon });\n if (!dialogName || dialogCon.type !== 'vf-dialog') {\n this.$message.error(this.i18nt('render.hint.refNotFound') + dialogName);\n return;\n }\n const dFormJson = {\n widgetList: deepClone(dialogCon.widgetList),\n formConfig: cloneFormConfigWithoutEventHandler(topFormRef.formConfig)\n };\n\n const wrapperDivId = generateId() + '';\n const dialogInstance = h(DynamicDialog, {\n options: dialogCon.options,\n formJson: dFormJson,\n formData: { ...formData },\n optionData: topFormRef.optionData,\n globalDsv: topFormRef.globalDsv,\n parentFormRef: this,\n extraData: extraData,\n wrapperId: wrapperDivId,\n vfCtx: { ...formData }\n });\n dialogInstance.appContext = this.$root.$.appContext; //非常重要, 覆盖应用上下文!!\n\n const wrapperDiv = document.createElement('div');\n wrapperDiv.id = 'vf-dynamic-dialog-wrapper' + wrapperDivId;\n document.body.appendChild(wrapperDiv);\n render(dialogInstance, wrapperDiv);\n document.body.appendChild(dialogInstance.el);\n dialogInstance.component.ctx.show();\n },\n\n showDrawer(drawerName, formData = {}, extraData = {}) {\n const topFormRef = this.getTopFormRef();\n const drawerCon = getContainerWidgetByName(topFormRef.widgetList, drawerName);\n if (!drawerCon || drawerCon.type !== 'vf-drawer') {\n this.$message.error(this.i18nt('render.hint.refNotFound') + drawerName);\n return;\n }\n const dFormJson = {\n widgetList: deepClone(drawerCon.widgetList),\n formConfig: cloneFormConfigWithoutEventHandler(topFormRef.formConfig)\n };\n\n const wrapperDivId = generateId() + '';\n const drawerInstance = createVNode(DynamicDrawer, {\n options: drawerCon.options,\n formJson: dFormJson,\n formData: formData || {},\n optionData: topFormRef.optionData,\n globalDsv: topFormRef.globalDsv,\n parentFormRef: this,\n extraData: extraData,\n wrapperId: wrapperDivId\n });\n drawerInstance.appContext = this.$root.$.appContext; //非常重要, 覆盖应用上下文!!\n\n const wrapperDiv = document.createElement('div');\n wrapperDiv.id = 'vf-dynamic-drawer-wrapper' + wrapperDivId;\n document.body.appendChild(wrapperDiv);\n render(drawerInstance, wrapperDiv);\n document.body.appendChild(drawerInstance.el);\n drawerInstance.component.ctx.show();\n },\n\n /**\n * 判断表单是否处于设计器预览状态\n * @return {boolean}\n */\n isPreviewState() {\n return this.previewState;\n }\n\n //--------------------- 以上为组件支持外部调用的API方法 end ------------------//\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .ant-form {\n &.render-form {\n height: 100%;\n overflow: auto;\n }\n }\n</style>\n"],"names":["FieldComponents","_createBlock","_withCtx","_createVNode","_createElementVNode","_normalizeStyle","_normalizeClass","_withModifiers","_openBlock","_createElementBlock","_Fragment","_renderList","index","_resolveDynamicComponent","_createSlots","_renderSlot","_mergeProps"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import "../../../utils/request/http.js";
|
|
1
|
+
import { getHttp } from "../../../utils/request/http.js";
|
|
2
2
|
import { saveAs } from "file-saver";
|
|
3
|
-
import { getHttp } from "@kp-ui/tool";
|
|
4
3
|
const useFilesystemApi = () => {
|
|
5
4
|
const http = getHttp();
|
|
6
5
|
const tmgc2Filesystem = "/api/tmgc2-filesystem/";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/api/useFilesystemApi/filesystem/index.js"],"sourcesContent":["import { getHttp } from '@/utils/request/http';\n\nimport { saveAs } from 'file-saver';\n\nexport const useFilesystemApi = () => {\n const http = getHttp();\n\n const tmgc2Filesystem = '/api/tmgc2-filesystem/';\n\n /* 下载文件 */\n const downloadFileObjectApi = async params => {\n const response = await http.get(`${tmgc2Filesystem}/fileObject/downloadFileObject`, {\n params,\n responseType: 'blob'\n });\n\n const fileName = window.decodeURI(response.headers['filename']);\n saveAs(new Blob([response.data], { type: 'application/vnd.ms-excel;' }), fileName);\n };\n\n return {\n /**\n * 上传文件获取 fileCode\n */\n uploadFileObject: params => {\n return http.postForm(`${tmgc2Filesystem}/fileObject/uploadFileObject`, params, {\n timeout: 600000\n });\n },\n /**\n * 根据 fileCode下载文件\n */\n downloadFileObject: downloadFileObjectApi,\n\n /**\n * 下载模版\n */\n downloadTemplateObject: async params => {\n const response = await http.get(`${tmgc2Filesystem}/fileObject/downloadTemplateObject`, {\n params,\n responseType: 'blob'\n });\n\n const fileName = window.decodeURI(response.headers['filename']);\n saveAs(new Blob([response.data], { type: 'application/vnd.ms-excel;' }), fileName);\n },\n\n /**\n * 展示文件\n * @param params\n * @returns\n */\n getPreviewFileUrl: params => {\n return http.get(`${tmgc2Filesystem}/fileObject/getPreviewFileUrl`, {\n params\n });\n }\n };\n};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/api/useFilesystemApi/filesystem/index.js"],"sourcesContent":["import { getHttp } from '@/utils/request/http';\n\nimport { saveAs } from 'file-saver';\n\nexport const useFilesystemApi = () => {\n const http = getHttp();\n\n const tmgc2Filesystem = '/api/tmgc2-filesystem/';\n\n /* 下载文件 */\n const downloadFileObjectApi = async params => {\n const response = await http.get(`${tmgc2Filesystem}/fileObject/downloadFileObject`, {\n params,\n responseType: 'blob'\n });\n\n const fileName = window.decodeURI(response.headers['filename']);\n saveAs(new Blob([response.data], { type: 'application/vnd.ms-excel;' }), fileName);\n };\n\n return {\n /**\n * 上传文件获取 fileCode\n */\n uploadFileObject: params => {\n return http.postForm(`${tmgc2Filesystem}/fileObject/uploadFileObject`, params, {\n timeout: 600000\n });\n },\n /**\n * 根据 fileCode下载文件\n */\n downloadFileObject: downloadFileObjectApi,\n\n /**\n * 下载模版\n */\n downloadTemplateObject: async params => {\n const response = await http.get(`${tmgc2Filesystem}/fileObject/downloadTemplateObject`, {\n params,\n responseType: 'blob'\n });\n\n const fileName = window.decodeURI(response.headers['filename']);\n saveAs(new Blob([response.data], { type: 'application/vnd.ms-excel;' }), fileName);\n },\n\n /**\n * 展示文件\n * @param params\n * @returns\n */\n getPreviewFileUrl: params => {\n return http.get(`${tmgc2Filesystem}/fileObject/getPreviewFileUrl`, {\n params\n });\n }\n };\n};\n"],"names":[],"mappings":";;AAIY,MAAC,mBAAmB,MAAM;AACpC,QAAM,OAAO,QAAS;AAEtB,QAAM,kBAAkB;AAGxB,QAAM,wBAAwB,OAAM,WAAU;AAC5C,UAAM,WAAW,MAAM,KAAK,IAAI,GAAG,eAAe,kCAAkC;AAAA,MAClF;AAAA,MACA,cAAc;AAAA,IACpB,CAAK;AAED,UAAM,WAAW,OAAO,UAAU,SAAS,QAAQ,UAAU,CAAC;AAC9D,WAAO,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,EAAE,MAAM,6BAA6B,GAAG,QAAQ;AAAA,EAClF;AAED,SAAO;AAAA;AAAA;AAAA;AAAA,IAIL,kBAAkB,YAAU;AAC1B,aAAO,KAAK,SAAS,GAAG,eAAe,gCAAgC,QAAQ;AAAA,QAC7E,SAAS;AAAA,MACjB,CAAO;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAID,oBAAoB;AAAA;AAAA;AAAA;AAAA,IAKpB,wBAAwB,OAAM,WAAU;AACtC,YAAM,WAAW,MAAM,KAAK,IAAI,GAAG,eAAe,sCAAsC;AAAA,QACtF;AAAA,QACA,cAAc;AAAA,MACtB,CAAO;AAED,YAAM,WAAW,OAAO,UAAU,SAAS,QAAQ,UAAU,CAAC;AAC9D,aAAO,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,EAAE,MAAM,6BAA6B,GAAG,QAAQ;AAAA,IAClF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOD,mBAAmB,YAAU;AAC3B,aAAO,KAAK,IAAI,GAAG,eAAe,iCAAiC;AAAA,QACjE;AAAA,MACR,CAAO;AAAA,IACP;AAAA,EACG;AACH;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-modal-editor.vue.js","sources":["../../../../src/components/code-editor/code-modal-editor.vue"],"sourcesContent":["<template>\n <a-modal\n :title=\"title\"\n v-model:visible=\"showWidgetEventDialogFlag\"\n :show-close=\"true\"\n :centered=\"true\"\n append-to-body\n :close-on-click-modal=\"false\"\n :close-on-press-escape=\"false\"\n :destroy-on-close=\"true\"\n :width=\"800\"\n >\n <a-alert type=\"info\" :closable=\"false\" :message=\"eventHeader\" v-if=\"eventHeader\" />\n <CodeEditor :mode=\"mode\" :readonly=\"readonly\" v-model=\"eventHandlerCode\" ref=\"ecEditor\" />\n <a-alert type=\"info\" :closable=\"false\" message=\"}\" v-if=\"eventHeader\" />\n <template #footer>\n <div class=\"dialog-footer\">\n <a-button @click=\"showWidgetEventDialogFlag = false\">\n {{ i18nt('designer.hint.cancel') }}\n </a-button>\n <a-button type=\"primary\" @click=\"saveEventHandler\">\n {{ i18nt('designer.hint.confirm') }}\n </a-button>\n </div>\n </template>\n </a-modal>\n</template>\n\n<script lang=\"jsx\">\n import CodeEditor from './index';\n import i18n from '@/utils/i18n';\n\n export default {\n name: 'code-modal-editor',\n mixins: [i18n],\n components: { CodeEditor },\n props: {\n eventHeader: String,\n title: {\n type: String,\n default: '事件处理函数'\n },\n readonly: {\n type: Boolean,\n default: false\n },\n mode: {\n type: String,\n default: 'javascript'\n }\n },\n data() {\n return {\n showWidgetEventDialogFlag: false,\n eventHandlerCode: ''\n };\n },\n methods: {\n open(val) {\n const value = val;\n this.showWidgetEventDialogFlag = true;\n this.eventHandlerCode = value.trim();\n },\n saveEventHandler() {\n const val = this.eventHandlerCode.trim();\n this.showWidgetEventDialogFlag = false;\n this.$emit('save', val);\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_createBlock","_createElementVNode","_createVNode"],"mappings":";;;AAgBiB,MAAA,aAAA,EAAA,OAAM,gBAAe;;;;;;sBAflCA,YAwBU,oBAAA;AAAA,IAvBL,OAAO,OAAK;AAAA,IACL,SAAS,MAAyB;AAAA,
|
|
1
|
+
{"version":3,"file":"code-modal-editor.vue.js","sources":["../../../../src/components/code-editor/code-modal-editor.vue"],"sourcesContent":["<template>\n <a-modal\n :title=\"title\"\n v-model:visible=\"showWidgetEventDialogFlag\"\n :show-close=\"true\"\n :centered=\"true\"\n append-to-body\n :close-on-click-modal=\"false\"\n :close-on-press-escape=\"false\"\n :destroy-on-close=\"true\"\n :width=\"800\"\n >\n <a-alert type=\"info\" :closable=\"false\" :message=\"eventHeader\" v-if=\"eventHeader\" />\n <CodeEditor :mode=\"mode\" :readonly=\"readonly\" v-model=\"eventHandlerCode\" ref=\"ecEditor\" />\n <a-alert type=\"info\" :closable=\"false\" message=\"}\" v-if=\"eventHeader\" />\n <template #footer>\n <div class=\"dialog-footer\">\n <a-button @click=\"showWidgetEventDialogFlag = false\">\n {{ i18nt('designer.hint.cancel') }}\n </a-button>\n <a-button type=\"primary\" @click=\"saveEventHandler\">\n {{ i18nt('designer.hint.confirm') }}\n </a-button>\n </div>\n </template>\n </a-modal>\n</template>\n\n<script lang=\"jsx\">\n import CodeEditor from './index';\n import i18n from '@/utils/i18n';\n\n export default {\n name: 'code-modal-editor',\n mixins: [i18n],\n components: { CodeEditor },\n props: {\n eventHeader: String,\n title: {\n type: String,\n default: '事件处理函数'\n },\n readonly: {\n type: Boolean,\n default: false\n },\n mode: {\n type: String,\n default: 'javascript'\n }\n },\n data() {\n return {\n showWidgetEventDialogFlag: false,\n eventHandlerCode: ''\n };\n },\n methods: {\n open(val) {\n const value = val;\n this.showWidgetEventDialogFlag = true;\n this.eventHandlerCode = value.trim();\n },\n saveEventHandler() {\n const val = this.eventHandlerCode.trim();\n this.showWidgetEventDialogFlag = false;\n this.$emit('save', val);\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped></style>\n"],"names":["_createBlock","_createElementVNode","_createVNode","_withCtx","_createTextVNode","_toDisplayString","_createCommentVNode"],"mappings":";;;AAgBiB,MAAA,aAAA,EAAA,OAAM,gBAAe;;;;;;sBAflCA,YAwBU,oBAAA;AAAA,IAvBL,OAAO,OAAK;AAAA,IACL,SAAS,MAAyB;AAAA,IAHlD,oBAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAGyB,MAAyB,4BAAA;AAAA,IACzC,cAAY;AAAA,IACZ,UAAU;AAAA,IACX,kBAAA;AAAA,IACC,wBAAsB;AAAA,IACtB,yBAAuB;AAAA,IACvB,oBAAkB;AAAA,IAClB,OAAO;AAAA;IAKG,gBACP,MAOM;AAAA,MAPNC,mBAOM,OAPN,YAOM;AAAA,QANFC,YAEW,qBAAA;AAAA,UAFA,+CAAO,MAAyB,4BAAA;AAAA;UAjB3D,SAAAC,QAkBoB,MAAmC;AAAA,YAlBvDC,gBAAAC,gBAkBuB,KAAK,MAAA,sBAAA,CAAA,GAAA,CAAA;AAAA;UAlB5B,GAAA;AAAA;QAoBgBH,YAEW,qBAAA;AAAA,UAFD,MAAK;AAAA,UAAW,SAAO,SAAgB;AAAA;UApBjE,SAAAC,QAqBoB,MAAoC;AAAA,YArBxDC,gBAAAC,gBAqBuB,KAAK,MAAA,uBAAA,CAAA,GAAA,CAAA;AAAA;UArB5B,GAAA;AAAA;;;IAAA,SAAAF,QAYQ,MAAmF;AAAA,MAAf,OAAW,4BAA/EH,YAAmF,oBAAA;AAAA,QAZ3F,KAAA;AAAA,QAYiB,MAAK;AAAA,QAAQ,UAAU;AAAA,QAAQ,SAAS,OAAW;AAAA,kCAZpEM,mBAAA,IAAA,IAAA;AAAA,MAaQJ,YAA0F,uBAAA;AAAA,QAA7E,MAAM,OAAI;AAAA,QAAG,UAAU,OAAQ;AAAA,QAbpD,YAa+D,MAAgB;AAAA,QAb/E,uBAAA,OAAA,CAAA,MAAA,OAAA,CAAA,IAAA,YAa+D,MAAgB,mBAAA;AAAA,QAAE,KAAI;AAAA;MACpB,OAAW,4BAApEF,YAAwE,oBAAA;AAAA,QAdhF,KAAA;AAAA,QAciB,MAAK;AAAA,QAAQ,UAAU;AAAA,QAAO,SAAQ;AAAA,YAdvDM,mBAAA,IAAA,IAAA;AAAA;IAAA,GAAA;AAAA;;;"}
|
package/src/components/form-designer/form-widget/container-widget/container-wrapper.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-wrapper.vue.js","sources":["../../../../../../src/components/form-designer/form-widget/container-widget/container-wrapper.vue"],"sourcesContent":["<template>\n <div class=\"container-wrapper\" :class=\"[customClass]\">\n <slot></slot>\n\n <div class=\"container-action\" v-if=\"designer.selectedId === widget.id && !widget.internal\">\n <i\n :title=\"i18nt('designer.hint.selectParentWidget')\"\n @click.stop=\"selectParentWidget(widget)\"\n >\n <svg-icon icon-class=\"el-back\" />\n </i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveUpWidget')\"\n @click.stop=\"moveUpWidget()\"\n ><svg-icon icon-class=\"el-move-up\"\n /></i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveDownWidget')\"\n @click.stop=\"moveDownWidget()\"\n ><svg-icon icon-class=\"el-move-down\"\n /></i>\n <i\n v-if=\"widget.type === 'table'\"\n :title=\"i18nt('designer.hint.insertRow')\"\n @click.stop=\"appendTableRow(widget)\"\n >\n <svg-icon icon-class=\"el-insert-row\" />\n </i>\n <i\n v-if=\"widget.type === 'table'\"\n :title=\"i18nt('designer.hint.insertColumn')\"\n @click.stop=\"appendTableCol(widget)\"\n >\n <svg-icon icon-class=\"el-insert-column\" />\n </i>\n <i\n v-if=\"widget.type === 'grid' || widget.type === 'table'\"\n :title=\"i18nt('designer.hint.cloneWidget')\"\n @click.stop=\"cloneContainer(widget)\"\n >\n <svg-icon icon-class=\"el-clone\" />\n </i>\n <i :title=\"i18nt('designer.hint.remove')\" @click.stop=\"removeWidget\">\n <svg-icon icon-class=\"el-delete\" />\n </i>\n </div>\n\n <div class=\"drag-handler\" v-if=\"designer.selectedId === widget.id && !widget.internal\">\n <i :title=\"i18nt('designer.hint.dragHandler')\"><svg-icon icon-class=\"el-drag-move\" /></i>\n <i>\n {{\n widget.showName ||\n i18n2t(`designer.widgetLabel.${widget.type}`, `extension.widgetLabel.${widget.type}`)\n }}\n </i>\n <i v-if=\"widget.options.hidden === true\"><svg-icon icon-class=\"el-hide\" /></i>\n </div>\n </div>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n import containerMixin from '@/components/form-designer/form-widget/container-widget/containerMixin';\n import SvgIcon from '@/components/svg-icon';\n\n export default {\n name: 'container-wrapper',\n mixins: [i18n, containerMixin],\n components: {\n SvgIcon\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n designer: Object\n },\n computed: {\n customClass() {\n return !!this.widget.options.customClass ? this.widget.options.customClass.join(' ') : '';\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .container-wrapper {\n position: relative;\n margin-bottom: 5px;\n\n .container-action {\n position: absolute;\n //bottom: -30px;\n bottom: 0;\n right: -2px;\n height: 28px;\n line-height: 28px;\n background: var(--ant-primary-4); //$--color-primary;\n z-index: 999;\n\n i {\n font-size: 14px;\n color: #fff;\n margin: 0 5px;\n cursor: pointer;\n }\n }\n\n .drag-handler {\n position: absolute;\n top: -2px;\n //bottom: -24px; /* 拖拽手柄位于组件下方,有时无法正常拖动,原因未明?? */\n left: -2px;\n height: 22px;\n line-height: 22px;\n background: var(--ant-primary-4); //$--color-primary;\n z-index: 9;\n\n i {\n font-size: 14px;\n font-style: normal;\n color: #fff;\n margin: 4px;\n cursor: move;\n }\n }\n }\n\n .container-action,\n .drag-handler {\n :deep(.svg-icon) {\n margin-left: 0.1em;\n margin-right: 0.1em;\n }\n }\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot","_openBlock","_createElementVNode","_withModifiers","_createVNode","_toDisplayString"],"mappings":";;;;;;AAmEE,MAAK,YAAU;AAAA,EACb,MAAM;AAAA,EACN,QAAQ,CAAC,MAAM,cAAc;AAAA,EAC7B,YAAY;AAAA,IACV;AAAA,EACD;AAAA,EACD,OAAO;AAAA,IACL,QAAQ;AAAA,IACR,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,mBAAmB;AAAA,IACnB,UAAU;AAAA,EACX;AAAA,EACD,UAAU;AAAA,IACR,cAAc;AACZ,aAAO,CAAC,CAAC,KAAK,OAAO,QAAQ,cAAc,KAAK,OAAO,QAAQ,YAAY,KAAK,GAAG,IAAI;AAAA,IACzF;AAAA,EACF;AACD
|
|
1
|
+
{"version":3,"file":"container-wrapper.vue.js","sources":["../../../../../../src/components/form-designer/form-widget/container-widget/container-wrapper.vue"],"sourcesContent":["<template>\n <div class=\"container-wrapper\" :class=\"[customClass]\">\n <slot></slot>\n\n <div class=\"container-action\" v-if=\"designer.selectedId === widget.id && !widget.internal\">\n <i\n :title=\"i18nt('designer.hint.selectParentWidget')\"\n @click.stop=\"selectParentWidget(widget)\"\n >\n <svg-icon icon-class=\"el-back\" />\n </i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveUpWidget')\"\n @click.stop=\"moveUpWidget()\"\n ><svg-icon icon-class=\"el-move-up\"\n /></i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveDownWidget')\"\n @click.stop=\"moveDownWidget()\"\n ><svg-icon icon-class=\"el-move-down\"\n /></i>\n <i\n v-if=\"widget.type === 'table'\"\n :title=\"i18nt('designer.hint.insertRow')\"\n @click.stop=\"appendTableRow(widget)\"\n >\n <svg-icon icon-class=\"el-insert-row\" />\n </i>\n <i\n v-if=\"widget.type === 'table'\"\n :title=\"i18nt('designer.hint.insertColumn')\"\n @click.stop=\"appendTableCol(widget)\"\n >\n <svg-icon icon-class=\"el-insert-column\" />\n </i>\n <i\n v-if=\"widget.type === 'grid' || widget.type === 'table'\"\n :title=\"i18nt('designer.hint.cloneWidget')\"\n @click.stop=\"cloneContainer(widget)\"\n >\n <svg-icon icon-class=\"el-clone\" />\n </i>\n <i :title=\"i18nt('designer.hint.remove')\" @click.stop=\"removeWidget\">\n <svg-icon icon-class=\"el-delete\" />\n </i>\n </div>\n\n <div class=\"drag-handler\" v-if=\"designer.selectedId === widget.id && !widget.internal\">\n <i :title=\"i18nt('designer.hint.dragHandler')\"><svg-icon icon-class=\"el-drag-move\" /></i>\n <i>\n {{\n widget.showName ||\n i18n2t(`designer.widgetLabel.${widget.type}`, `extension.widgetLabel.${widget.type}`)\n }}\n </i>\n <i v-if=\"widget.options.hidden === true\"><svg-icon icon-class=\"el-hide\" /></i>\n </div>\n </div>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n import containerMixin from '@/components/form-designer/form-widget/container-widget/containerMixin';\n import SvgIcon from '@/components/svg-icon';\n\n export default {\n name: 'container-wrapper',\n mixins: [i18n, containerMixin],\n components: {\n SvgIcon\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n designer: Object\n },\n computed: {\n customClass() {\n return !!this.widget.options.customClass ? this.widget.options.customClass.join(' ') : '';\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .container-wrapper {\n position: relative;\n margin-bottom: 5px;\n\n .container-action {\n position: absolute;\n //bottom: -30px;\n bottom: 0;\n right: -2px;\n height: 28px;\n line-height: 28px;\n background: var(--ant-primary-4); //$--color-primary;\n z-index: 999;\n\n i {\n font-size: 14px;\n color: #fff;\n margin: 0 5px;\n cursor: pointer;\n }\n }\n\n .drag-handler {\n position: absolute;\n top: -2px;\n //bottom: -24px; /* 拖拽手柄位于组件下方,有时无法正常拖动,原因未明?? */\n left: -2px;\n height: 22px;\n line-height: 22px;\n background: var(--ant-primary-4); //$--color-primary;\n z-index: 9;\n\n i {\n font-size: 14px;\n font-style: normal;\n color: #fff;\n margin: 4px;\n cursor: move;\n }\n }\n }\n\n .container-action,\n .drag-handler {\n :deep(.svg-icon) {\n margin-left: 0.1em;\n margin-right: 0.1em;\n }\n }\n</style>\n"],"names":["_createElementBlock","_normalizeClass","_renderSlot","_openBlock","_createElementVNode","_withModifiers","_createVNode","_createCommentVNode","_toDisplayString"],"mappings":"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"}
|
package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table-widget.vue.js","sources":["../../../../../../src/components/form-designer/form-widget/container-widget/data-table-widget.vue"],"sourcesContent":["<template>\n <container-wrapper\n :designer=\"designer\"\n :widget=\"widget\"\n :parent-widget=\"parentWidget\"\n :parent-list=\"parentList\"\n :index-of-parent-list=\"indexOfParentList\"\n :style=\"{ display: 'flex', height: parseFloat(tableHeight || 0) + 'px' }\"\n >\n <div\n :key=\"widget.id\"\n class=\"collapse-container data-table-container\"\n :class=\"{ selected: selected }\"\n @click.stop=\"selectWidget(widget)\"\n >\n <s-table\n class=\"tpf-surely-table\"\n ref=\"dataTable2\"\n :columns=\"columns.columns\"\n :class=\"[customClass]\"\n :size=\"widgetSize\"\n :dataSource=\"data\"\n :rowKey=\"record => record[widget.options.rowKey]\"\n :scroll=\"{ y: parseFloat(tableHeight || 0), x: 300 }\"\n :bordered=\"widget.options.border\"\n :style=\"{ width: widget.options.tableWidth }\"\n :row-class-name=\"rowClassName\"\n :rowSelection=\"handleRowSelection()\"\n :pagination=\"fmtPagination\"\n :customRow=\"handleCustomRow\"\n :rowClassName=\"rowClassName\"\n @change=\"handleTablePageChange\"\n @resizeColumn=\"handleResizeColumn\"\n :loading=\"loading\"\n :row-height=\"lineHeight\"\n >\n <template #emptyText>\n <a-empty />\n </template>\n <template #bodyCell=\"scope\">\n <template v-if=\"isShowBodyCell(scope.column.dataIndex)\">\n <RenderBodyCell :bodyCell=\"columns.bodyCell\" :scope=\"scope\" />\n </template>\n </template>\n </s-table>\n </div>\n </container-wrapper>\n</template>\n\n<script lang=\"jsx\">\n import ContainerWrapper from '@/components/form-designer/form-widget/container-widget/container-wrapper';\n import emitter from '@/utils/emitter';\n import i18n from '@/utils/i18n';\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n import containerMixin from '@/components/form-designer/form-widget/container-widget/containerMixin';\n import refMixinDesign from '@/components/form-designer/refMixinDesign';\n import useDataTableMixin from '@/mixins/useDataTableMixin';\n export default {\n name: 'DataTableWidget',\n componentName: 'DataTableWidget',\n mixins: [i18n, containerMixin, refMixinDesign, emitter, useDataTableMixin],\n inject: ['refList'],\n components: {\n ContainerWrapper,\n ...FieldComponents\n },\n data() {\n return {\n // selectAllFlag: false\n };\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n designer: Object,\n\n subFormRowIndex: {\n /* 子表单组件行索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormColIndex: {\n /* 子表单组件列索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormRowId: {\n /* 子表单组件行Id,唯一id且不可变 */ type: String,\n default: ''\n }\n },\n created() {\n this.initRefList();\n },\n mounted() {\n this.loadDataTableDataSource();\n },\n beforeUnmount() {\n //\n },\n computed: {\n data() {\n return this.widget.options.dataSource;\n },\n selected() {\n return this.widget.id === this.designer.selectedId;\n }\n },\n methods: {\n selectWidget(widget) {\n this.designer.setSelected(widget);\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .collapse-container {\n display: flex;\n margin: 2px;\n height: 100%;\n width: 100%;\n flex: 1 0 0;\n\n .form-widget-list {\n min-height: 28px;\n :deep(.tpf-surely-table) {\n min-height: 280px;\n }\n }\n }\n\n .collapse-container.selected {\n outline: 2px solid $--color-primary !important;\n }\n\n :deep(.ant-table) .table-striped td {\n background-color: #fafafa;\n }\n</style>\n"],"names":["_createBlock","_normalizeStyle","_createElementBlock","_normalizeClass","_withModifiers","_createVNode","
|
|
1
|
+
{"version":3,"file":"data-table-widget.vue.js","sources":["../../../../../../src/components/form-designer/form-widget/container-widget/data-table-widget.vue"],"sourcesContent":["<template>\n <container-wrapper\n :designer=\"designer\"\n :widget=\"widget\"\n :parent-widget=\"parentWidget\"\n :parent-list=\"parentList\"\n :index-of-parent-list=\"indexOfParentList\"\n :style=\"{ display: 'flex', height: parseFloat(tableHeight || 0) + 'px' }\"\n >\n <div\n :key=\"widget.id\"\n class=\"collapse-container data-table-container\"\n :class=\"{ selected: selected }\"\n @click.stop=\"selectWidget(widget)\"\n >\n <s-table\n class=\"tpf-surely-table\"\n ref=\"dataTable2\"\n :columns=\"columns.columns\"\n :class=\"[customClass]\"\n :size=\"widgetSize\"\n :dataSource=\"data\"\n :rowKey=\"record => record[widget.options.rowKey]\"\n :scroll=\"{ y: parseFloat(tableHeight || 0), x: 300 }\"\n :bordered=\"widget.options.border\"\n :style=\"{ width: widget.options.tableWidth }\"\n :row-class-name=\"rowClassName\"\n :rowSelection=\"handleRowSelection()\"\n :pagination=\"fmtPagination\"\n :customRow=\"handleCustomRow\"\n :rowClassName=\"rowClassName\"\n @change=\"handleTablePageChange\"\n @resizeColumn=\"handleResizeColumn\"\n :loading=\"loading\"\n :row-height=\"lineHeight\"\n >\n <template #emptyText>\n <a-empty />\n </template>\n <template #bodyCell=\"scope\">\n <template v-if=\"isShowBodyCell(scope.column.dataIndex)\">\n <RenderBodyCell :bodyCell=\"columns.bodyCell\" :scope=\"scope\" />\n </template>\n </template>\n </s-table>\n </div>\n </container-wrapper>\n</template>\n\n<script lang=\"jsx\">\n import ContainerWrapper from '@/components/form-designer/form-widget/container-widget/container-wrapper';\n import emitter from '@/utils/emitter';\n import i18n from '@/utils/i18n';\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n import containerMixin from '@/components/form-designer/form-widget/container-widget/containerMixin';\n import refMixinDesign from '@/components/form-designer/refMixinDesign';\n import useDataTableMixin from '@/mixins/useDataTableMixin';\n export default {\n name: 'DataTableWidget',\n componentName: 'DataTableWidget',\n mixins: [i18n, containerMixin, refMixinDesign, emitter, useDataTableMixin],\n inject: ['refList'],\n components: {\n ContainerWrapper,\n ...FieldComponents\n },\n data() {\n return {\n // selectAllFlag: false\n };\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n designer: Object,\n\n subFormRowIndex: {\n /* 子表单组件行索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormColIndex: {\n /* 子表单组件列索引,从0开始计数 */ type: Number,\n default: -1\n },\n subFormRowId: {\n /* 子表单组件行Id,唯一id且不可变 */ type: String,\n default: ''\n }\n },\n created() {\n this.initRefList();\n },\n mounted() {\n this.loadDataTableDataSource();\n },\n beforeUnmount() {\n //\n },\n computed: {\n data() {\n return this.widget.options.dataSource;\n },\n selected() {\n return this.widget.id === this.designer.selectedId;\n }\n },\n methods: {\n selectWidget(widget) {\n this.designer.setSelected(widget);\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .collapse-container {\n display: flex;\n margin: 2px;\n height: 100%;\n width: 100%;\n flex: 1 0 0;\n\n .form-widget-list {\n min-height: 28px;\n :deep(.tpf-surely-table) {\n min-height: 280px;\n }\n }\n }\n\n .collapse-container.selected {\n outline: 2px solid $--color-primary !important;\n }\n\n :deep(.ant-table) .table-striped td {\n background-color: #fafafa;\n }\n</style>\n"],"names":["_createBlock","_normalizeStyle","_withCtx","_createElementBlock","_normalizeClass","_withModifiers","_createVNode","_createCommentVNode"],"mappings":";;;;;;;;;sBACIA,YA6CoB,8BAAA;AAAA,IA5Cf,UAAU,OAAQ;AAAA,IAClB,QAAQ,OAAM;AAAA,IACd,iBAAe,OAAY;AAAA,IAC3B,eAAa,OAAU;AAAA,IACvB,wBAAsB,OAAiB;AAAA,IACvC,OAPTC,eAAA,EAAA,SAAA,QAAA,QAO2C,WAAW,KAAW,eAAA,CAAA,IAAA,KAAA,CAAA;AAAA;IAPjE,SAAAC,QASQ,MAoCM;AAAA,oBApCNC,mBAoCM,OAAA;AAAA,QAnCD,KAAK,OAAM,OAAC;AAAA,QACb,OAXZC,eAAA,CAWkB,2CAAyC,EAAA,UAC3B,SAAQ,SAAA,CAAA,CAAA;AAAA,QAC3B,SAbb,OAAA,CAAA,MAAA,OAAA,CAAA,IAAAC,cAAA,YAayB,SAAY,aAAC,OAAM,MAAA,GAAA,CAAA,MAAA,CAAA;AAAA;QAEhCC,YA6BU,oBAAA;AAAA,UA5BN,OAhBhBF,eAAA,CAgBsB,oBAAkB,CAGf,KAAW,WAAA,CAAA,CAAA;AAAA,UAFpB,KAAI;AAAA,UACH,SAAS,KAAO,QAAC;AAAA,UAEjB,MAAM,KAAU;AAAA,UAChB,YAAY,SAAI;AAAA,UAChB,QAAQ,YAAU,OAAO,OAAM,OAAC,QAAQ,MAAM;AAAA,UAC9C,QAAM,EAAA,GAAO,WAAW,KAAW,eAAA,CAAA,GAAA,GAAA,IAAA;AAAA,UACnC,UAAU,OAAA,OAAO,QAAQ;AAAA,UACzB,OAzBjBH,eAyBiC,EAAA,OAAA,OAAA,OAAO,QAAQ,YAAU;AAAA,UACzC,kBAAgB,KAAY;AAAA,UAC5B,cAAc,KAAkB,mBAAA;AAAA,UAChC,YAAY,KAAa;AAAA,UACzB,WAAW,KAAe;AAAA,UAC1B,cAAc,KAAY;AAAA,UAC1B,UAAQ,KAAqB;AAAA,UAC7B,gBAAc,KAAkB;AAAA,UAChC,SAAS,KAAO;AAAA,UAChB,cAAY,KAAU;AAAA;UAEZ,mBACP,MAAW;AAAA,YAAXK,YAAW,kBAAA;AAAA;UAEJ,UAAQJ,QACf,CADiB,UAAK;AAAA,YACN,KAAA,eAAe,MAAM,OAAO,SAAS,kBACjDF,YAA8D,2BAAA;AAAA,cAzCtF,KAAA;AAAA,cAyCyC,UAAU,KAAO,QAAC;AAAA,cAAW;AAAA,kDAzCtEO,mBAAA,IAAA,IAAA;AAAA;UAAA,GAAA;AAAA;;;IAAA,GAAA;AAAA;;;"}
|
package/src/components/form-designer/form-widget/container-widget/grid-col-widget.vue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-col-widget.vue.js","sources":["../../../../../../src/components/form-designer/form-widget/container-widget/grid-col-widget.vue"],"sourcesContent":["<template>\n <a-col\n v-if=\"widget.type === 'grid-col'\"\n class=\"grid-cell\"\n v-bind=\"layoutProps\"\n :class=\"[selected ? 'selected' : '', customClass]\"\n :style=\"colHeightStyle\"\n :key=\"widget.id\"\n @click.stop=\"selectWidget(widget)\"\n >\n <draggable\n :list=\"widget.widgetList\"\n item-key=\"id\"\n v-bind=\"{ group: 'dragGroup', ghostClass: 'ghost', animation: 200 }\"\n tag=\"transition-group\"\n :component-data=\"{ name: 'fade' }\"\n handle=\".drag-handler\"\n @end=\"evt => onGridDragEnd(evt, widget.widgetList)\"\n @add=\"evt => onGridDragAdd(evt, widget.widgetList)\"\n @update=\"onGridDragUpdate\"\n :move=\"checkContainerMove\"\n >\n <template #item=\"{ element: subWidget, index: swIdx }\">\n <div class=\"form-widget-list\">\n <template v-if=\"'container' === subWidget.category\">\n <component\n :is=\"subWidget.type + '-widget'\"\n :widget=\"subWidget\"\n :designer=\"designer\"\n :key=\"subWidget.id\"\n :parent-list=\"widget.widgetList\"\n :index-of-parent-list=\"swIdx\"\n :parent-widget=\"widget\"\n />\n </template>\n <template v-else>\n <component\n :is=\"subWidget.type + '-widget'\"\n :field=\"subWidget\"\n :designer=\"designer\"\n :key=\"subWidget.id\"\n :parent-list=\"widget.widgetList\"\n :index-of-parent-list=\"swIdx\"\n :parent-widget=\"widget\"\n :design-state=\"true\"\n />\n </template>\n </div>\n </template>\n </draggable>\n\n <div\n class=\"grid-col-action\"\n v-if=\"designer.selectedId === widget.id && widget.type === 'grid-col'\"\n >\n <i\n :title=\"i18nt('designer.hint.selectParentWidget')\"\n @click.stop=\"selectParentWidget(widget)\"\n >\n <svg-icon icon-class=\"el-back\" />\n </i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveUpWidget')\"\n @click.stop=\"moveUpWidget()\"\n >\n <svg-icon icon-class=\"el-move-up\" />\n </i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveDownWidget')\"\n @click.stop=\"moveDownWidget()\"\n >\n <svg-icon icon-class=\"el-move-down\" />\n </i>\n <i :title=\"i18nt('designer.hint.cloneWidget')\" @click.stop=\"cloneGridCol(widget)\">\n <svg-icon icon-class=\"el-clone\" />\n </i>\n <i :title=\"i18nt('designer.hint.remove')\" @click.stop=\"removeWidget\">\n <svg-icon icon-class=\"el-delete\" />\n </i>\n </div>\n\n <div\n class=\"grid-col-handler\"\n v-if=\"designer.selectedId === widget.id && widget.type === 'grid-col'\"\n >\n <i>{{ i18nt('designer.widgetLabel.' + widget.type) }}</i>\n </div>\n </a-col>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n import SvgIcon from '@/components/svg-icon';\n import refMixinDesign from '@/components/form-designer/refMixinDesign';\n import Draggable from '@/lib/vuedraggable/src/vuedraggable';\n\n export default {\n name: 'GridColWidget',\n componentName: 'GridColWidget',\n mixins: [i18n, refMixinDesign],\n inject: ['refList'],\n components: {\n Draggable,\n ...FieldComponents,\n SvgIcon\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n designer: Object,\n\n colHeight: {\n type: String,\n default: null\n }\n },\n data() {\n return {\n layoutProps: {\n span: this.widget.options.span || 12,\n // md: this.widget.options.md || 12,\n // sm: this.widget.options.sm || 12,\n // xs: this.widget.options.xs || 12,\n offset: this.widget.options.offset || 0,\n push: this.widget.options.push || 0,\n pull: this.widget.options.pull || 0\n }\n };\n },\n computed: {\n selected() {\n return this.widget.id === this.designer.selectedId;\n },\n\n customClass() {\n return this.widget.options.customClass || '';\n },\n\n colHeightStyle() {\n return !!this.colHeight ? { height: this.colHeight + 'px' } : {};\n }\n },\n watch: {\n 'designer.formConfig.layoutType': {\n handler(val) {\n if (!!this.widget.options.responsive) {\n if (val === 'H5') {\n this.layoutProps.span = this.widget.options.xs || 12;\n } else if (val === 'Pad') {\n this.layoutProps.span = this.widget.options.sm || 12;\n } else {\n this.layoutProps.span = this.widget.options.md || 12;\n }\n } else {\n this.layoutProps.span = this.widget.options.span || 12;\n }\n }\n },\n\n 'widget.options.responsive': {\n handler(val) {\n const lyType = this.designer.formConfig.layoutType;\n if (!!val) {\n if (lyType === 'H5') {\n this.layoutProps.span = this.widget.options.xs || 12;\n } else if (lyType === 'Pad') {\n this.layoutProps.span = this.widget.options.sm || 12;\n } else {\n this.layoutProps.span = this.widget.options.md || 12;\n }\n } else {\n this.layoutProps.span = this.widget.options.span || 12;\n }\n }\n },\n\n 'widget.options.span': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.md': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.sm': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.xs': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.offset': {\n handler(val) {\n this.layoutProps.offset = val;\n }\n },\n\n 'widget.options.push': {\n handler(val) {\n this.layoutProps.push = val;\n }\n },\n\n 'widget.options.pull': {\n handler(val) {\n this.layoutProps.pull = val;\n }\n }\n },\n created() {\n this.initRefList();\n this.initLayoutProps();\n },\n methods: {\n initLayoutProps() {\n if (!!this.widget.options.responsive) {\n const lyType = this.designer.formConfig.layoutType;\n if (lyType === 'H5') {\n this.layoutProps.span = this.widget.options.xs || 12;\n } else if (lyType === 'Pad') {\n this.layoutProps.span = this.widget.options.sm || 12;\n } else {\n this.layoutProps.span = this.widget.options.md || 12;\n }\n } else {\n this.layoutProps.spn = this.widget.options.span;\n }\n },\n\n onGridDragEnd(evt, subList) {\n //\n },\n\n onGridDragAdd(evt, subList) {\n const newIndex = evt.newIndex;\n if (!!subList[newIndex]) {\n this.designer.setSelected(subList[newIndex]);\n }\n\n this.designer.emitHistoryChange();\n this.designer.emitEvent('field-selected', this.widget);\n },\n\n onGridDragUpdate() {\n this.designer.emitHistoryChange();\n },\n\n selectWidget(widget) {\n console.log('id: ' + widget.id);\n this.designer.setSelected(widget);\n },\n\n checkContainerMove(evt) {\n return this.designer.checkWidgetMove(evt);\n },\n\n selectParentWidget() {\n if (this.parentWidget) {\n this.designer.setSelected(this.parentWidget);\n } else {\n this.designer.clearSelected();\n }\n },\n\n moveUpWidget() {\n this.designer.moveUpWidget(this.parentList, this.indexOfParentList);\n },\n\n moveDownWidget() {\n this.designer.moveDownWidget(this.parentList, this.indexOfParentList);\n },\n\n cloneGridCol(widget) {\n this.designer.cloneGridCol(widget, this.parentWidget);\n },\n\n removeWidget() {\n if (!!this.parentList) {\n let nextSelected = null;\n if (this.parentList.length === 1) {\n if (!!this.parentWidget) {\n nextSelected = this.parentWidget;\n }\n } else if (this.parentList.length === 1 + this.indexOfParentList) {\n nextSelected = this.parentList[this.indexOfParentList - 1];\n } else {\n nextSelected = this.parentList[this.indexOfParentList + 1];\n }\n\n this.$nextTick(() => {\n this.parentList.splice(this.indexOfParentList, 1);\n //if (!!nextSelected) {\n this.designer.setSelected(nextSelected);\n //}\n\n this.designer.emitHistoryChange();\n });\n }\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .grid-cell {\n min-height: 38px !important;\n //margin: 6px 0; /* 设置了margin,栅格列的offset、push、pull会失效!! */\n padding: 3px;\n outline: 1px dashed #336699;\n position: relative;\n\n .form-widget-list {\n min-height: 28px;\n }\n\n .grid-col-action {\n position: absolute;\n bottom: 0;\n right: -2px;\n height: 28px;\n line-height: 28px;\n background: $--color-primary;\n z-index: 999;\n\n i {\n font-size: 14px;\n color: #fff;\n margin: 0 5px;\n cursor: pointer;\n }\n }\n\n .grid-col-handler {\n position: absolute;\n top: -2px;\n left: -2px;\n height: 22px;\n line-height: 22px;\n background: $--color-primary;\n z-index: 9;\n\n i {\n font-size: 14px;\n font-style: normal;\n color: #fff;\n margin: 4px;\n cursor: default;\n }\n }\n }\n\n .grid-col-action,\n .grid-col-handler {\n :deep(.svg-icon) {\n margin-left: 0.1em;\n margin-right: 0.1em;\n }\n }\n</style>\n"],"names":["Draggable","FieldComponents","_openBlock","_createBlock","_mergeProps","_withModifiers","_createVNode","_withCtx","_createElementVNode","_resolveDynamicComponent","_createElementBlock","_toDisplayString"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"grid-col-widget.vue.js","sources":["../../../../../../src/components/form-designer/form-widget/container-widget/grid-col-widget.vue"],"sourcesContent":["<template>\n <a-col\n v-if=\"widget.type === 'grid-col'\"\n class=\"grid-cell\"\n v-bind=\"layoutProps\"\n :class=\"[selected ? 'selected' : '', customClass]\"\n :style=\"colHeightStyle\"\n :key=\"widget.id\"\n @click.stop=\"selectWidget(widget)\"\n >\n <draggable\n :list=\"widget.widgetList\"\n item-key=\"id\"\n v-bind=\"{ group: 'dragGroup', ghostClass: 'ghost', animation: 200 }\"\n tag=\"transition-group\"\n :component-data=\"{ name: 'fade' }\"\n handle=\".drag-handler\"\n @end=\"evt => onGridDragEnd(evt, widget.widgetList)\"\n @add=\"evt => onGridDragAdd(evt, widget.widgetList)\"\n @update=\"onGridDragUpdate\"\n :move=\"checkContainerMove\"\n >\n <template #item=\"{ element: subWidget, index: swIdx }\">\n <div class=\"form-widget-list\">\n <template v-if=\"'container' === subWidget.category\">\n <component\n :is=\"subWidget.type + '-widget'\"\n :widget=\"subWidget\"\n :designer=\"designer\"\n :key=\"subWidget.id\"\n :parent-list=\"widget.widgetList\"\n :index-of-parent-list=\"swIdx\"\n :parent-widget=\"widget\"\n />\n </template>\n <template v-else>\n <component\n :is=\"subWidget.type + '-widget'\"\n :field=\"subWidget\"\n :designer=\"designer\"\n :key=\"subWidget.id\"\n :parent-list=\"widget.widgetList\"\n :index-of-parent-list=\"swIdx\"\n :parent-widget=\"widget\"\n :design-state=\"true\"\n />\n </template>\n </div>\n </template>\n </draggable>\n\n <div\n class=\"grid-col-action\"\n v-if=\"designer.selectedId === widget.id && widget.type === 'grid-col'\"\n >\n <i\n :title=\"i18nt('designer.hint.selectParentWidget')\"\n @click.stop=\"selectParentWidget(widget)\"\n >\n <svg-icon icon-class=\"el-back\" />\n </i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveUpWidget')\"\n @click.stop=\"moveUpWidget()\"\n >\n <svg-icon icon-class=\"el-move-up\" />\n </i>\n <i\n v-if=\"!!parentList && parentList.length > 1\"\n :title=\"i18nt('designer.hint.moveDownWidget')\"\n @click.stop=\"moveDownWidget()\"\n >\n <svg-icon icon-class=\"el-move-down\" />\n </i>\n <i :title=\"i18nt('designer.hint.cloneWidget')\" @click.stop=\"cloneGridCol(widget)\">\n <svg-icon icon-class=\"el-clone\" />\n </i>\n <i :title=\"i18nt('designer.hint.remove')\" @click.stop=\"removeWidget\">\n <svg-icon icon-class=\"el-delete\" />\n </i>\n </div>\n\n <div\n class=\"grid-col-handler\"\n v-if=\"designer.selectedId === widget.id && widget.type === 'grid-col'\"\n >\n <i>{{ i18nt('designer.widgetLabel.' + widget.type) }}</i>\n </div>\n </a-col>\n</template>\n\n<script>\n import i18n from '@/utils/i18n';\n import FieldComponents from '@/components/form-designer/form-widget/field-widget/index';\n import SvgIcon from '@/components/svg-icon';\n import refMixinDesign from '@/components/form-designer/refMixinDesign';\n import Draggable from '@/lib/vuedraggable/src/vuedraggable';\n\n export default {\n name: 'GridColWidget',\n componentName: 'GridColWidget',\n mixins: [i18n, refMixinDesign],\n inject: ['refList'],\n components: {\n Draggable,\n ...FieldComponents,\n SvgIcon\n },\n props: {\n widget: Object,\n parentWidget: Object,\n parentList: Array,\n indexOfParentList: Number,\n designer: Object,\n\n colHeight: {\n type: String,\n default: null\n }\n },\n data() {\n return {\n layoutProps: {\n span: this.widget.options.span || 12,\n // md: this.widget.options.md || 12,\n // sm: this.widget.options.sm || 12,\n // xs: this.widget.options.xs || 12,\n offset: this.widget.options.offset || 0,\n push: this.widget.options.push || 0,\n pull: this.widget.options.pull || 0\n }\n };\n },\n computed: {\n selected() {\n return this.widget.id === this.designer.selectedId;\n },\n\n customClass() {\n return this.widget.options.customClass || '';\n },\n\n colHeightStyle() {\n return !!this.colHeight ? { height: this.colHeight + 'px' } : {};\n }\n },\n watch: {\n 'designer.formConfig.layoutType': {\n handler(val) {\n if (!!this.widget.options.responsive) {\n if (val === 'H5') {\n this.layoutProps.span = this.widget.options.xs || 12;\n } else if (val === 'Pad') {\n this.layoutProps.span = this.widget.options.sm || 12;\n } else {\n this.layoutProps.span = this.widget.options.md || 12;\n }\n } else {\n this.layoutProps.span = this.widget.options.span || 12;\n }\n }\n },\n\n 'widget.options.responsive': {\n handler(val) {\n const lyType = this.designer.formConfig.layoutType;\n if (!!val) {\n if (lyType === 'H5') {\n this.layoutProps.span = this.widget.options.xs || 12;\n } else if (lyType === 'Pad') {\n this.layoutProps.span = this.widget.options.sm || 12;\n } else {\n this.layoutProps.span = this.widget.options.md || 12;\n }\n } else {\n this.layoutProps.span = this.widget.options.span || 12;\n }\n }\n },\n\n 'widget.options.span': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.md': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.sm': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.xs': {\n handler(val) {\n this.layoutProps.span = val;\n }\n },\n\n 'widget.options.offset': {\n handler(val) {\n this.layoutProps.offset = val;\n }\n },\n\n 'widget.options.push': {\n handler(val) {\n this.layoutProps.push = val;\n }\n },\n\n 'widget.options.pull': {\n handler(val) {\n this.layoutProps.pull = val;\n }\n }\n },\n created() {\n this.initRefList();\n this.initLayoutProps();\n },\n methods: {\n initLayoutProps() {\n if (!!this.widget.options.responsive) {\n const lyType = this.designer.formConfig.layoutType;\n if (lyType === 'H5') {\n this.layoutProps.span = this.widget.options.xs || 12;\n } else if (lyType === 'Pad') {\n this.layoutProps.span = this.widget.options.sm || 12;\n } else {\n this.layoutProps.span = this.widget.options.md || 12;\n }\n } else {\n this.layoutProps.spn = this.widget.options.span;\n }\n },\n\n onGridDragEnd(evt, subList) {\n //\n },\n\n onGridDragAdd(evt, subList) {\n const newIndex = evt.newIndex;\n if (!!subList[newIndex]) {\n this.designer.setSelected(subList[newIndex]);\n }\n\n this.designer.emitHistoryChange();\n this.designer.emitEvent('field-selected', this.widget);\n },\n\n onGridDragUpdate() {\n this.designer.emitHistoryChange();\n },\n\n selectWidget(widget) {\n console.log('id: ' + widget.id);\n this.designer.setSelected(widget);\n },\n\n checkContainerMove(evt) {\n return this.designer.checkWidgetMove(evt);\n },\n\n selectParentWidget() {\n if (this.parentWidget) {\n this.designer.setSelected(this.parentWidget);\n } else {\n this.designer.clearSelected();\n }\n },\n\n moveUpWidget() {\n this.designer.moveUpWidget(this.parentList, this.indexOfParentList);\n },\n\n moveDownWidget() {\n this.designer.moveDownWidget(this.parentList, this.indexOfParentList);\n },\n\n cloneGridCol(widget) {\n this.designer.cloneGridCol(widget, this.parentWidget);\n },\n\n removeWidget() {\n if (!!this.parentList) {\n let nextSelected = null;\n if (this.parentList.length === 1) {\n if (!!this.parentWidget) {\n nextSelected = this.parentWidget;\n }\n } else if (this.parentList.length === 1 + this.indexOfParentList) {\n nextSelected = this.parentList[this.indexOfParentList - 1];\n } else {\n nextSelected = this.parentList[this.indexOfParentList + 1];\n }\n\n this.$nextTick(() => {\n this.parentList.splice(this.indexOfParentList, 1);\n //if (!!nextSelected) {\n this.designer.setSelected(nextSelected);\n //}\n\n this.designer.emitHistoryChange();\n });\n }\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n .grid-cell {\n min-height: 38px !important;\n //margin: 6px 0; /* 设置了margin,栅格列的offset、push、pull会失效!! */\n padding: 3px;\n outline: 1px dashed #336699;\n position: relative;\n\n .form-widget-list {\n min-height: 28px;\n }\n\n .grid-col-action {\n position: absolute;\n bottom: 0;\n right: -2px;\n height: 28px;\n line-height: 28px;\n background: $--color-primary;\n z-index: 999;\n\n i {\n font-size: 14px;\n color: #fff;\n margin: 0 5px;\n cursor: pointer;\n }\n }\n\n .grid-col-handler {\n position: absolute;\n top: -2px;\n left: -2px;\n height: 22px;\n line-height: 22px;\n background: $--color-primary;\n z-index: 9;\n\n i {\n font-size: 14px;\n font-style: normal;\n color: #fff;\n margin: 4px;\n cursor: default;\n }\n }\n }\n\n .grid-col-action,\n .grid-col-handler {\n :deep(.svg-icon) {\n margin-left: 0.1em;\n margin-right: 0.1em;\n }\n }\n</style>\n"],"names":["Draggable","FieldComponents","_openBlock","_createBlock","_mergeProps","_withModifiers","_withCtx","_createVNode","_createElementVNode","_resolveDynamicComponent","_createElementBlock","_createCommentVNode","_toDisplayString"],"mappings":"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"}
|