cloud-web-corejs 1.0.276 → 1.0.277
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/package.json +28 -24
- package/src/App.vue +73 -71
- package/src/api/user.js +21 -0
- package/src/components/baseArea/index.vue +82 -27
- package/src/components/baseTabs/mixins.js +5 -1
- package/src/components/luckysheet/dialog.vue +1 -1
- package/src/components/micro-view-host/contract.js +66 -0
- package/src/components/micro-view-host/index.vue +148 -0
- package/src/components/table/tableForm.vue +16 -5
- package/src/components/table/tableFormMixin.js +35 -7
- package/src/components/vb-tabs/x-tabs.vue +167 -143
- package/src/components/wf/content.vue +14 -0
- package/src/components/wf/content2.vue +4 -2
- package/src/components/wf/wf.js +74 -23
- package/src/components/wf/wfActionDropdown.vue +85 -0
- package/src/components/wf/wfActionItems.js +136 -0
- package/src/components/wf/wfAutoConfirm.js +55 -0
- package/src/components/wf/wfButtonName.js +60 -0
- package/src/components/wf/wfUserRange.js +53 -0
- package/src/components/wf/wfUtil.js +373 -295
- package/src/components/xform/XFormTabContainer//346/226/260/345/242/236/351/241/265/347/255/276/346/250/241/345/274/217-/346/234/200/347/273/210/345/256/236/347/216/260.md +195 -0
- package/src/components/xform/docs/2026-07 table/344/270/216excelExport/344/277/256/345/244/215/345/217/212/345/257/274/345/207/272/344/274/230/345/214/226.md" +57 -0
- package/src/components/xform/docs/2026-07 /346/216/222/346/237/245/344/277/256/345/244/215/350/256/260/345/275/225.md" +73 -0
- package/src/components/xform/docs/autocomplete /350/207/252/345/212/250/345/256/214/346/210/220/347/273/204/344/273/266/350/257/264/346/230/216.md" +126 -0
- package/src/components/xform/docs//345/257/271/346/257/224/345/212/237/350/203/275/350/220/275/345/234/260/346/226/271/346/241/210.md +986 -0
- package/src/components/xform/docs//346/225/260/346/215/256/350/241/250/346/240/274/345/212/250/346/200/201/345/210/227 JSON /350/257/264/346/230/216.md" +657 -0
- package/src/components/xform/docs//346/240/221/350/241/250rowField/346/224/266/346/225/233-/350/220/275/345/234/260/346/226/207/346/241/243.md +1427 -0
- package/src/components/xform/form-designer/designer.js +2085 -2025
- package/src/components/xform/form-designer/form-widget/container-widget/containerMixin.js +9 -11
- package/src/components/xform/form-designer/form-widget/container-widget/data-table-mixin.js +76 -75
- package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +10 -4
- package/src/components/xform/form-designer/form-widget/container-widget/detail-plain-widget.vue +76 -0
- package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +59 -5
- package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +38 -17
- package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +138 -13
- package/src/components/xform/form-designer/form-widget/dialog/formFieldDialog.vue +1 -1
- package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +1774 -1772
- package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +2 -3
- package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +66 -53
- package/src/components/xform/form-designer/form-widget/field-widget/baseAttachment-widget.vue +287 -214
- package/src/components/xform/form-designer/form-widget/field-widget/button-widget.vue +76 -66
- package/src/components/xform/form-designer/form-widget/field-widget/cascader-widget.vue +208 -124
- package/src/components/xform/form-designer/form-widget/field-widget/census-widget.vue +3 -9
- package/src/components/xform/form-designer/form-widget/field-widget/copy_button-widget.vue +11 -2
- package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +7 -6
- package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +43 -19
- package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +680 -372
- package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +879 -763
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +17 -2
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/echart-bar-mixin.js +3 -9
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/echart-category-mixin.js +3 -9
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/echart-pie-mixin.js +3 -9
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/relative-default-mixin.js +107 -0
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/relativeDateUtil.js +321 -0
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/time-limit-mixin.js +77 -0
- package/src/components/xform/form-designer/form-widget/field-widget/mixins/vabsearch-mixin.js +13 -0
- package/src/components/xform/form-designer/form-widget/field-widget/number-widget.vue +13 -8
- package/src/components/xform/form-designer/form-widget/field-widget/project-tag-widget.vue +4 -9
- package/src/components/xform/form-designer/form-widget/field-widget/save_submit_wf_button-widget.vue +3 -0
- package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +120 -120
- package/src/components/xform/form-designer/form-widget/field-widget/static-content-wrapper.vue +4 -0
- package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +11 -0
- package/src/components/xform/form-designer/form-widget/field-widget/switch-widget.vue +9 -1
- package/src/components/xform/form-designer/form-widget/field-widget/tempStorage-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/text-widget.vue +7 -3
- package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +4 -2
- package/src/components/xform/form-designer/form-widget/field-widget/time-widget.vue +36 -5
- package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +338 -374
- package/src/components/xform/form-designer/form-widget/index.vue +6 -1
- package/src/components/xform/form-designer/form-widget/indexMixin.js +29 -25
- package/src/components/xform/form-designer/index.vue +194 -191
- package/src/components/xform/form-designer/indexMixin.js +860 -847
- package/src/components/xform/form-designer/setting-panel/dataSource-setting.vue +397 -397
- package/src/components/xform/form-designer/setting-panel/form-dynamicField-setting.vue +602 -601
- package/src/components/xform/form-designer/setting-panel/form-setting.vue +1790 -1483
- package/src/components/xform/form-designer/setting-panel/index.vue +2 -7
- package/src/components/xform/form-designer/setting-panel/indexMixin.js +370 -335
- package/src/components/xform/form-designer/setting-panel/option-items-setting.vue +585 -544
- package/src/components/xform/form-designer/setting-panel/property-editor/a-link-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/a-text-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/alignType-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/buttonIcon-editor.vue +14 -15
- package/src/components/xform/form-designer/setting-panel/property-editor/censusClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/colorClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/commonAttributeEnabled-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/columnRenderDialog.vue +124 -125
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +1151 -957
- package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-editor.vue +96 -74
- package/src/components/xform/form-designer/setting-panel/property-editor/container-detail-plain/detail-plain-editor.vue +75 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/colHeight-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +14 -13
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-height-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-offset-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-pull-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-push-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-grid-col/grid-col-span-editor.vue +4 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/container-h5-card/h5-card-editor.vue +124 -124
- package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +26 -31
- package/src/components/xform/form-designer/setting-panel/property-editor/container-panel/height-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-panel/width-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-tab/tab-customClass-editor.vue +119 -119
- package/src/components/xform/form-designer/setting-panel/property-editor/container-tab/tabClass-editor.vue +45 -45
- package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +340 -342
- package/src/components/xform/form-designer/setting-panel/property-editor/container-table-cell/cellHeight-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-table-cell/cellWidth-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-tree/tree-customClass-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/container-tree-pane/tree-pane-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-vf-dialog/cancelButtonLabel-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-vf-dialog/okButtonLabel-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-vf-dialog/title-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-vf-dialog/width-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/containerClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/customClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/defaultValue-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/descriptionsItems-editor.vue +4 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/downloadButtonFlag-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +6 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/dsName-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/echartHeight-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/endPlaceholder-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-accessUrl/accessUrl-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/field-area-select/areaDataType-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-area-select/areaMinLevel-editor.vue +50 -50
- package/src/components/xform/form-designer/setting-panel/property-editor/field-area-select/areaName-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-autocomplete/autocomplete-vabSearchName-editor.vue +7 -7
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/addTableData-event-editor.vue +84 -85
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/button-type-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/clickBindActions.js +262 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/clickBindEvent-editor.vue +97 -88
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/form-host-event-editor.vue +188 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/icon-editor.vue +14 -15
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +27 -10
- package/src/components/xform/form-designer/setting-panel/property-editor/field-cascader/checkStrictly-editor.vue +11 -13
- package/src/components/xform/form-designer/setting-panel/property-editor/field-common/keyName-editor.vue +74 -67
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-dateLimit-editor.vue +27 -5
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +35 -18
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-format-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-type-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-valueFormat-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultTime-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +35 -18
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-format-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-type-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-valueFormat-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-divider/contentPosition-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-dropdown-menu/dropdown-menu-editor.vue +59 -59
- package/src/components/xform/form-designer/setting-panel/property-editor/field-echart/echart-bar-editor.vue +11 -11
- package/src/components/xform/form-designer/setting-panel/property-editor/field-echart/echart-category-editor.vue +10 -10
- package/src/components/xform/form-designer/setting-panel/property-editor/field-echart/echart-pie-editor.vue +12 -12
- package/src/components/xform/form-designer/setting-panel/property-editor/field-file-upload/file-upload-fileTypes-editor.vue +44 -44
- package/src/components/xform/form-designer/setting-panel/property-editor/field-html-text/htmlContent-editor.vue +29 -29
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +6 -6
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +4 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/field-number/controlsPosition-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-picture-upload/picture-upload-fileTypes-editor.vue +44 -44
- package/src/components/xform/form-designer/setting-panel/property-editor/field-print-button/print-button-editor.vue +115 -115
- package/src/components/xform/form-designer/setting-panel/property-editor/field-print-button/print-detail-button-editor.vue +115 -115
- package/src/components/xform/form-designer/setting-panel/property-editor/field-rate/highThreshold-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-rate/lowThreshold-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-rate/rate-defaultValue-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-rate/rate-max-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-script/script-editor.vue +4 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/field-script-input/script-input-editor.vue +4 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/field-static-text/fontSize-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-static-text/textContent-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-status/field-status-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/field-switch/activeText-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-switch/inactiveText-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-switch/switchWidth-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-button-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-item-button-editor.vue +74 -74
- package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/table-export-button-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +34 -18
- package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-format-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-timeLimit-editor.vue +53 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +35 -18
- package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-format-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vabSearch/vabSearchField-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vabSearch/vabSearchName-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vabUpload/field-vabUpload-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vabUpload2/field-vabUpload2-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vue-page/vue-page-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/fileMaxSize-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/fileTypesSelect.vue +176 -176
- package/src/components/xform/form-designer/setting-panel/property-editor/fixedQuery-editor.vue +39 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +41 -6
- package/src/components/xform/form-designer/setting-panel/property-editor/formatType-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/formula-editor.vue +972 -972
- package/src/components/xform/form-designer/setting-panel/property-editor/iconClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/label-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelAlign-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelColor-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelWidth-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/limit-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/max-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/maxLength-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/min-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/minLength-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/multipleLimit-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +15 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/oplog-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/placeholder-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/precision-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/prefixIcon-editor.vue +14 -15
- package/src/components/xform/form-designer/setting-panel/property-editor/project-tag-editor.vue +6 -6
- package/src/components/xform/form-designer/setting-panel/property-editor/relative-default-block.vue +369 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/requiredHint-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/rows-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/space-editor-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/startPlaceholder-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/step-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/styleTableClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/styleTitClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/suffixIcon-editor.vue +14 -15
- package/src/components/xform/form-designer/setting-panel/property-editor/tempStorage-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +2 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/type-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/uploadTip-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/uploadURL-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/urlValueEnabled-editor.vue +91 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/validation-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/validationHint-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/widgetWidth-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/propertyRegister.js +374 -351
- package/src/components/xform/form-designer/toolbar-panel/index.vue +266 -103
- package/src/components/xform/form-designer/toolbar-panel/indexMixin.js +655 -589
- package/src/components/xform/form-designer/widget-panel/index.vue +391 -341
- package/src/components/xform/form-designer/widget-panel/indexMixin.js +351 -308
- package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +4642 -4028
- package/src/components/xform/form-render/container-item/containerItemMixin.js +76 -61
- package/src/components/xform/form-render/container-item/data-table-item.vue +24 -13
- package/src/components/xform/form-render/container-item/data-table-mixin.js +5927 -3400
- package/src/components/xform/form-render/container-item/detail-h5-item.vue +173 -173
- package/src/components/xform/form-render/container-item/detail-item.vue +446 -224
- package/src/components/xform/form-render/container-item/detail-plain-item.vue +92 -0
- package/src/components/xform/form-render/container-item/list-h5-item.vue +1186 -411
- package/src/components/xform/form-render/container-item/tab-item.vue +129 -125
- package/src/components/xform/form-render/container-item/table-item.vue +0 -3
- package/src/components/xform/form-render/container-item/table2-item.vue +18 -10
- package/src/components/xform/form-render/dynamicDialogRender.js +140 -99
- package/src/components/xform/form-render/index.vue +8 -8
- package/src/components/xform/form-render/indexMixin.js +5299 -3766
- package/src/components/xform/form-render/refMixin.js +14 -11
- package/src/components/xform/lang/en-US.js +473 -438
- package/src/components/xform/lang/en-US_extension.js +4 -0
- package/src/components/xform/lang/zh-CN.js +646 -620
- package/src/components/xform/mixins/defaultHandle.js +363 -26
- package/src/components/xform/mixins/scriptHttp.js +54 -51
- package/src/components/xform/utils/attachmentValueUtil.js +239 -0
- package/src/components/xform/utils/fixedQueryUtil.js +93 -0
- package/src/components/xform/utils/format.js +195 -169
- package/src/components/xform/utils/queryParamUtil.js +84 -0
- package/src/components/xform/utils/tableColumnHelper.js +7 -8
- package/src/components/xform/utils/util.js +1663 -1551
- package/src/components/xform/utils/validators.js +100 -48
- package/src/index.js +403 -89
- package/src/layout/components/AppMain.vue +147 -119
- package/src/layout/components/Sidebar/default.vue +109 -59
- package/src/layout/components/TagsView/index.vue +1 -1
- package/src/layout/components/extractedCode/queryDialog.vue +33 -26
- package/src/layout/components/extractedCode/viewDialog.vue +207 -193
- package/src/layout/components/langTool.vue +128 -123
- package/src/layout/defaultLayout.vue +170 -158
- package/src/mixins/wf/index.js +40 -38
- package/src/public-path.js +38 -0
- package/src/router/modules/system.js +4 -0
- package/src/store/config/index.js +945 -669
- package/src/utils/pdfUtil.js +428 -70
- package/src/views/bd/setting/bd_company_env/dialog.vue +1 -1
- package/src/views/bd/setting/formVersion/button.vue +5 -0
- package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +21 -10
- package/src/views/bd/setting/formVersion/link.vue +5 -0
- package/src/views/bd/setting/form_script/edit.vue +1 -0
- package/src/views/bd/setting/form_script/edit1.vue +1 -0
- package/src/views/bd/setting/form_script/form_list.vue +1 -0
- package/src/views/bd/setting/form_script/list.vue +1 -0
- package/src/views/bd/setting/form_script/list1.vue +2 -0
- package/src/views/bd/setting/form_template/edit.vue +1 -0
- package/src/views/bd/setting/form_template/list.vue +2 -0
- package/src/views/bd/setting/form_template/mixins/edit.js +77 -74
- package/src/views/bd/setting/table_model/edit.vue +16 -29
- package/src/views/bd/setting/table_model/list.vue +1 -0
- package/src/views/bd/setting/table_model/mixins/edit.js +295 -149
- package/src/views/bd/setting/table_model/mixins/zdDialog.js +32 -0
- package/src/views/support/export_template/list.vue +1 -1
- package/src/views/user/company_info/edit.vue +149 -88
- package/src/views/user/form/form_template/dialog.vue +1 -1
- package/src/views/user/form/form_template/itemList.vue +1 -1
- package/src/views/user/form/form_template/list.vue +1 -1
- package/src/views/user/form/form_template_field/dialog.vue +1 -1
- package/src/views/user/form/form_type/dialog.vue +1 -1
- package/src/views/user/form/form_type/list.vue +1 -1
- package/src/views/user/form/report_requestaccess/dialog.vue +1 -1
- package/src/views/user/form/report_requestaccess/list.vue +1 -1
- package/src/views/user/form/vform/designer.vue +51 -22
- package/src/views/user/form/vform/render.vue +21 -23
- package/src/views/user/form/view/list.vue +134 -37
- package/src/views/user/wf/wfReport/index.vue +24 -1
- package/src/views/user/wf/wf_manage/list.vue +8 -4
- package/src/components/xform/form-designer/form-widget/dialog/formDrawer.vue +0 -209
- package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin - /345/211/257/346/234/254.js" +0 -1639
- package/src/views/bd/setting/table_model/mixins/edit copy.js +0 -903
- package/src/views/user/menu/voc_list.vue +0 -686
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cloud-web-corejs",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.277",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "vue-cli-service serve",
|
|
7
7
|
"lint": "eslint --ext .js,.vue src",
|
|
@@ -16,73 +16,79 @@
|
|
|
16
16
|
"publishDev": "npm publish --tag dev"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
+
"@claviska/jquery-minicolors": "2.3.6",
|
|
19
20
|
"@codemirror/lang-javascript": "^6.1.9",
|
|
21
|
+
"@codemirror/state": "^6.5.4",
|
|
22
|
+
"@codemirror/view": "^6.39.13",
|
|
20
23
|
"@formulajs/formulajs": "^4.3.1",
|
|
21
|
-
"@vue/
|
|
24
|
+
"@vue/composition-api": "1.0.5",
|
|
25
|
+
"ace-builds": "1.11.0",
|
|
22
26
|
"axios": "0.18.1",
|
|
27
|
+
"canvg": "3.0.10",
|
|
28
|
+
"clipboard": "2.0.8",
|
|
23
29
|
"codemirror": "^6.0.1",
|
|
24
30
|
"concurrent-tasks": "1.0.7",
|
|
25
|
-
"copy-webpack-plugin": "5.1.2",
|
|
26
31
|
"core-js": "^3.8.3",
|
|
27
|
-
"
|
|
32
|
+
"crypto-js": "^4.2.0",
|
|
28
33
|
"dhtmlx-gantt": "^9.1.1",
|
|
34
|
+
"dompurify": "^3.3.1",
|
|
35
|
+
"echarts": "5.1.2",
|
|
29
36
|
"element-ui": "^2.15.14",
|
|
30
37
|
"esdk-obs-browserjs": "^3.25.6",
|
|
31
38
|
"exceljs": "^4.4.0",
|
|
32
|
-
"
|
|
39
|
+
"file-saver": "2.0.5",
|
|
33
40
|
"html2canvas": "^1.4.1",
|
|
41
|
+
"jquery": "3.6.0",
|
|
34
42
|
"js-base64": "^3.7.7",
|
|
35
43
|
"js-cookie": "2.2.0",
|
|
44
|
+
"jsbarcode": "3.11.5",
|
|
36
45
|
"jspdf": "^3.0.1",
|
|
37
46
|
"jsqr": "^1.4.0",
|
|
38
47
|
"lodash": "4.17.21",
|
|
39
48
|
"luckyexcel": "^1.0.1",
|
|
40
49
|
"moment": "2.29.4",
|
|
41
|
-
"node-polyfill-webpack-plugin": "^4.0.0",
|
|
42
50
|
"normalize.css": "7.0.0",
|
|
43
51
|
"nprogress": "0.2.0",
|
|
52
|
+
"nzh": "1.0.8",
|
|
44
53
|
"qiankun": "^2.10.16",
|
|
45
54
|
"qrcode": "^1.5.1",
|
|
46
55
|
"qs": "6.10.3",
|
|
47
|
-
"
|
|
56
|
+
"socket.io-client": "4.5.1",
|
|
57
|
+
"sortablejs": "^1.8.4",
|
|
48
58
|
"spark-md5": "^3.0.1",
|
|
49
59
|
"swiper": "4.0.7",
|
|
50
60
|
"vue": "2.6.12",
|
|
61
|
+
"vue-echarts": "6.0.0",
|
|
51
62
|
"vue-i18n": "^8.22.2",
|
|
52
63
|
"vue-ls": "^4.2.0",
|
|
53
64
|
"vue-router": "3.0.2",
|
|
65
|
+
"vuedraggable": "2.24.3",
|
|
54
66
|
"vuex": "3.1.0",
|
|
55
67
|
"vxe-table": "3.5.9",
|
|
68
|
+
"xe-utils": "3.5.2",
|
|
56
69
|
"xlsx": "^0.14.1"
|
|
57
70
|
},
|
|
58
71
|
"devDependencies": {
|
|
59
72
|
"@babel/core": "^7.12.16",
|
|
60
73
|
"@babel/eslint-parser": "^7.12.16",
|
|
61
74
|
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
|
|
62
|
-
"@claviska/jquery-minicolors": "2.3.6",
|
|
63
75
|
"@vue/cli-plugin-babel": "~5.0.0",
|
|
64
76
|
"@vue/cli-plugin-eslint": "~5.0.0",
|
|
77
|
+
"@vue/cli-plugin-unit-jest": "~5.0.9",
|
|
65
78
|
"@vue/cli-service": "~5.0.0",
|
|
66
|
-
"@vue/
|
|
67
|
-
"
|
|
79
|
+
"@vue/test-utils": "^1.3.6",
|
|
80
|
+
"@vue/vue2-jest": "^27.0.0",
|
|
68
81
|
"autoprefixer": "9.5.1",
|
|
69
82
|
"babel-plugin-dynamic-import-node": "2.3.3",
|
|
70
|
-
"canvg": "3.0.10",
|
|
71
83
|
"chalk": "2.4.2",
|
|
72
|
-
"clipboard": "2.0.8",
|
|
73
84
|
"compression-webpack-plugin": "5.0.2",
|
|
74
85
|
"connect": "3.6.6",
|
|
75
|
-
"crypto-js": "^4.2.0",
|
|
76
|
-
"echarts": "5.1.2",
|
|
77
86
|
"eslint": "^7.32.0",
|
|
78
87
|
"eslint-plugin-vue": "^8.0.3",
|
|
79
|
-
"file-saver": "2.0.5",
|
|
80
88
|
"html-webpack-plugin": "~5.0.0",
|
|
81
89
|
"husky": "1.3.1",
|
|
82
|
-
"jquery": "3.6.0",
|
|
83
|
-
"jsbarcode": "3.11.5",
|
|
84
90
|
"lint-staged": "8.1.5",
|
|
85
|
-
"
|
|
91
|
+
"node-polyfill-webpack-plugin": "^4.0.0",
|
|
86
92
|
"plop": "2.3.0",
|
|
87
93
|
"postcss": "^8.2.8",
|
|
88
94
|
"postcss-loader": "^4.0.4",
|
|
@@ -90,15 +96,11 @@
|
|
|
90
96
|
"sass": "^1.32.7",
|
|
91
97
|
"sass-loader": "^12.0.0",
|
|
92
98
|
"serve-static": "1.13.2",
|
|
93
|
-
"socket.io-client": "4.5.1",
|
|
94
99
|
"speed-measure-webpack-plugin": "^1.5.0",
|
|
95
100
|
"svg-sprite-loader": "^6.0.11",
|
|
96
101
|
"svgo": "1.2.0",
|
|
97
|
-
"vue-echarts": "6.0.0",
|
|
98
102
|
"vue-template-compiler": "2.6.12",
|
|
99
|
-
"
|
|
100
|
-
"webpack-bundle-analyzer": "^4.9.1",
|
|
101
|
-
"xe-utils": "3.5.2"
|
|
103
|
+
"webpack-bundle-analyzer": "^4.9.1"
|
|
102
104
|
},
|
|
103
105
|
"eslintConfig": {
|
|
104
106
|
"root": true,
|
|
@@ -121,8 +123,8 @@
|
|
|
121
123
|
"files": [
|
|
122
124
|
"src/components/advancedSearchDialog",
|
|
123
125
|
"src/components/baseAlert",
|
|
124
|
-
"src/components/baseArea",
|
|
125
126
|
"src/components/baseAttachment",
|
|
127
|
+
"src/components/baseArea",
|
|
126
128
|
"src/components/baseInputBatch",
|
|
127
129
|
"src/components/baseInputExport",
|
|
128
130
|
"src/components/baseInputNumber",
|
|
@@ -142,6 +144,7 @@
|
|
|
142
144
|
"src/components/jdPrint",
|
|
143
145
|
"src/components/jsonImport",
|
|
144
146
|
"src/components/langImport",
|
|
147
|
+
"src/components/micro-view-host",
|
|
145
148
|
"src/components/mobile",
|
|
146
149
|
"src/components/onlineTalk",
|
|
147
150
|
"src/components/oplogTable",
|
|
@@ -183,6 +186,7 @@
|
|
|
183
186
|
"src/router",
|
|
184
187
|
"src/permission.js",
|
|
185
188
|
"src/index.js",
|
|
189
|
+
"src/public-path.js",
|
|
186
190
|
"src/microRouter",
|
|
187
191
|
"src/App.vue"
|
|
188
192
|
],
|
package/src/App.vue
CHANGED
|
@@ -1,71 +1,73 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div id="app" :class="{ mobileApp: isMobile }">
|
|
3
|
-
<router-view />
|
|
4
|
-
</div>
|
|
5
|
-
</template>
|
|
6
|
-
|
|
7
|
-
<script>
|
|
8
|
-
import settting from "@/settings.js";
|
|
9
|
-
|
|
10
|
-
export default {
|
|
11
|
-
name: "App",
|
|
12
|
-
data() {
|
|
13
|
-
let isMobile = this.getIsMobile();
|
|
14
|
-
return {
|
|
15
|
-
isMobile: isMobile,
|
|
16
|
-
};
|
|
17
|
-
},
|
|
18
|
-
created() {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
this.$
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
currentPath != "/
|
|
44
|
-
currentPath != "/
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
1
|
+
<template>
|
|
2
|
+
<div id="app" :class="{ mobileApp: isMobile }">
|
|
3
|
+
<router-view />
|
|
4
|
+
</div>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script>
|
|
8
|
+
import settting from "@/settings.js";
|
|
9
|
+
|
|
10
|
+
export default {
|
|
11
|
+
name: "App",
|
|
12
|
+
data() {
|
|
13
|
+
let isMobile = this.getIsMobile();
|
|
14
|
+
return {
|
|
15
|
+
isMobile: isMobile,
|
|
16
|
+
};
|
|
17
|
+
},
|
|
18
|
+
created() {
|
|
19
|
+
// qiankun 子应用模式跳过:hashchange 事件在真实 window 派发,子应用的处理器会
|
|
20
|
+
// 干扰主应用导航;sessionStorage.toHome 同域共享,子应用写入会污染主应用
|
|
21
|
+
if (settting.reflushRouter!== true && process.env.NODE_ENV !== "development" && !window.__POWERED_BY_QIANKUN__) {
|
|
22
|
+
window.addEventListener(
|
|
23
|
+
"hashchange",
|
|
24
|
+
(event) => {
|
|
25
|
+
var currentPath = window.location.hash.slice(1).split("?")[0]; // 获取输入的路由
|
|
26
|
+
if (
|
|
27
|
+
currentPath != "/404" &&
|
|
28
|
+
currentPath != "/login" &&
|
|
29
|
+
this.$route.path !== currentPath
|
|
30
|
+
) {
|
|
31
|
+
this.$store.dispatch("tagsView/delAllViews").then((visitedViews) => {
|
|
32
|
+
this.$router.replace({ path: "/redirect" + "/home" });
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
false
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
window.addEventListener("beforeunload", async (event) => {
|
|
40
|
+
// 如果按下的键是 F5,则执行相应的操作
|
|
41
|
+
var currentPath = window.location.hash.slice(1).split("?")[0]; // 获取输入的路由
|
|
42
|
+
if (
|
|
43
|
+
currentPath != "/home" &&
|
|
44
|
+
currentPath != "/" &&
|
|
45
|
+
currentPath != "/login" &&
|
|
46
|
+
currentPath != "/404"
|
|
47
|
+
) {
|
|
48
|
+
sessionStorage.setItem("toHome", "1");
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
document.title = settting.title;
|
|
54
|
+
},
|
|
55
|
+
mounted() {},
|
|
56
|
+
methods: {
|
|
57
|
+
getIsMobile() {
|
|
58
|
+
const userAgent = navigator.userAgent;
|
|
59
|
+
const mobileRegex = /Android|webOS|iPhone|iPad|iPod|BlackBerry|Windows Phone/i;
|
|
60
|
+
return mobileRegex.test(userAgent);
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
</script>
|
|
65
|
+
<style>
|
|
66
|
+
.inner-dialog .el-dialog__wrapper {
|
|
67
|
+
top: 0;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/* #app .el-submenu .el-menu {
|
|
71
|
+
height: 500px;
|
|
72
|
+
} */
|
|
73
|
+
</style>
|
package/src/api/user.js
CHANGED
|
@@ -32,6 +32,19 @@ export function saveAccessMenuLog(option) {
|
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
export function saveUserLog(option) {
|
|
36
|
+
let data = {
|
|
37
|
+
logType: "operationLog",
|
|
38
|
+
...option.data,
|
|
39
|
+
};
|
|
40
|
+
return request({
|
|
41
|
+
url: USER_PREFIX + "/user_log/save",
|
|
42
|
+
method: "post",
|
|
43
|
+
...option,
|
|
44
|
+
data,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
35
48
|
export function getLoginTp(duration, option) {
|
|
36
49
|
return request({
|
|
37
50
|
url: USER_PREFIX + "/thirdparty_auth/getTp",
|
|
@@ -113,3 +126,11 @@ export function getLogicParamValue(option) {
|
|
|
113
126
|
...option,
|
|
114
127
|
});
|
|
115
128
|
}
|
|
129
|
+
|
|
130
|
+
export function getIdmLoginUrl(option) {
|
|
131
|
+
return request({
|
|
132
|
+
url: USER_PREFIX + "/auth/idmLoginUrl",
|
|
133
|
+
method: "post",
|
|
134
|
+
...option,
|
|
135
|
+
});
|
|
136
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="base-area">
|
|
3
3
|
<el-popover
|
|
4
|
+
ref="popoverRef"
|
|
4
5
|
v-model="popoverVisible"
|
|
5
6
|
placement="bottom-start"
|
|
6
7
|
trigger="click"
|
|
@@ -268,13 +269,28 @@ export default {
|
|
|
268
269
|
if (this.labelValue) {
|
|
269
270
|
return this.labelValue;
|
|
270
271
|
}
|
|
271
|
-
|
|
272
|
+
/* 弹层浏览中的选择未确认,输入框只回显打开弹层时的已提交值 */
|
|
273
|
+
if (this.popoverVisible) {
|
|
274
|
+
return this.committedPathLabel;
|
|
275
|
+
}
|
|
276
|
+
if (!this.selectedPath.length) {
|
|
277
|
+
return "";
|
|
278
|
+
}
|
|
279
|
+
/* 外部未回传 label 时的兜底:仅当浏览路径与已绑定值一致才回显 */
|
|
280
|
+
const leafId = this.getLeafIdFromValue(this.value);
|
|
281
|
+
return this.isValueSynced(leafId)
|
|
272
282
|
? this.buildPathLabel(this.selectedPath)
|
|
273
283
|
: "";
|
|
274
|
-
|
|
275
|
-
|
|
284
|
+
},
|
|
285
|
+
committedPathLabel() {
|
|
286
|
+
const snapshot = this.committedBrowseSnapshot;
|
|
287
|
+
if (!snapshot || !snapshot.selectedPath || !snapshot.selectedPath.length) {
|
|
288
|
+
return "";
|
|
276
289
|
}
|
|
277
|
-
|
|
290
|
+
if (!this.isSameBoundValue(this.value, snapshot.boundValue)) {
|
|
291
|
+
return "";
|
|
292
|
+
}
|
|
293
|
+
return this.buildPathLabel(snapshot.selectedPath);
|
|
278
294
|
},
|
|
279
295
|
tabs() {
|
|
280
296
|
const tabs = [];
|
|
@@ -336,8 +352,43 @@ export default {
|
|
|
336
352
|
},
|
|
337
353
|
beforeDestroy() {
|
|
338
354
|
clearTimeout(this.searchTimer);
|
|
355
|
+
this.unbindOutsideClick();
|
|
339
356
|
},
|
|
340
357
|
methods: {
|
|
358
|
+
bindOutsideClick() {
|
|
359
|
+
/* 捕获阶段监听:外层若阻止了 click 冒泡,el-popover 自带的 document 监听收不到,弹层不会关闭 */
|
|
360
|
+
document.addEventListener("mousedown", this.handleOutsideClick, true);
|
|
361
|
+
},
|
|
362
|
+
unbindOutsideClick() {
|
|
363
|
+
document.removeEventListener("mousedown", this.handleOutsideClick, true);
|
|
364
|
+
},
|
|
365
|
+
isInsidePopover(target) {
|
|
366
|
+
if (!target || !target.nodeType) {
|
|
367
|
+
return false;
|
|
368
|
+
}
|
|
369
|
+
/* 触发器(含输入框)在组件根节点内 */
|
|
370
|
+
if (this.$el && this.$el.contains(target)) {
|
|
371
|
+
return true;
|
|
372
|
+
}
|
|
373
|
+
/* 弹层默认 append 到 body,需单独判断 */
|
|
374
|
+
const popoverRef = this.$refs.popoverRef;
|
|
375
|
+
const popper = popoverRef && popoverRef.$refs && popoverRef.$refs.popper;
|
|
376
|
+
return !!(popper && popper.contains(target));
|
|
377
|
+
},
|
|
378
|
+
handleOutsideClick(evt) {
|
|
379
|
+
if (!this.popoverVisible) {
|
|
380
|
+
return;
|
|
381
|
+
}
|
|
382
|
+
const target = evt.target;
|
|
383
|
+
/* 已从文档移除的节点无法判断归属,不做处理 */
|
|
384
|
+
if (!target || !document.contains(target)) {
|
|
385
|
+
return;
|
|
386
|
+
}
|
|
387
|
+
if (this.isInsidePopover(target)) {
|
|
388
|
+
return;
|
|
389
|
+
}
|
|
390
|
+
this.popoverVisible = false;
|
|
391
|
+
},
|
|
341
392
|
getResolveDepthLimit(item) {
|
|
342
393
|
if (item && item.treePath) {
|
|
343
394
|
const ids = this.parseTreePathIds(item.treePath);
|
|
@@ -565,6 +616,7 @@ export default {
|
|
|
565
616
|
},
|
|
566
617
|
handlePopoverShow() {
|
|
567
618
|
this.pendingLeaf = false;
|
|
619
|
+
this.bindOutsideClick();
|
|
568
620
|
this.saveCommittedBrowseSnapshot();
|
|
569
621
|
this.$emit("popover-open");
|
|
570
622
|
this.$nextTick(() => {
|
|
@@ -1060,6 +1112,7 @@ export default {
|
|
|
1060
1112
|
this.emitResolvedLabelIfNeeded();
|
|
1061
1113
|
},
|
|
1062
1114
|
handlePopoverHide() {
|
|
1115
|
+
this.unbindOutsideClick();
|
|
1063
1116
|
this.searchKeyword = "";
|
|
1064
1117
|
this.searchList = [];
|
|
1065
1118
|
this.searchDropdownVisible = false;
|
|
@@ -1299,13 +1352,13 @@ export default {
|
|
|
1299
1352
|
}
|
|
1300
1353
|
|
|
1301
1354
|
.base-area-panel {
|
|
1302
|
-
padding:
|
|
1355
|
+
padding: 0;
|
|
1303
1356
|
overflow: visible;
|
|
1304
1357
|
}
|
|
1305
1358
|
|
|
1306
1359
|
.base-area-search {
|
|
1307
1360
|
position: relative;
|
|
1308
|
-
margin-bottom:
|
|
1361
|
+
margin-bottom: 6px;
|
|
1309
1362
|
z-index: 2;
|
|
1310
1363
|
}
|
|
1311
1364
|
|
|
@@ -1360,8 +1413,8 @@ export default {
|
|
|
1360
1413
|
}
|
|
1361
1414
|
|
|
1362
1415
|
.base-area-path {
|
|
1363
|
-
padding:
|
|
1364
|
-
margin-bottom:
|
|
1416
|
+
padding: 3px 8px;
|
|
1417
|
+
margin-bottom: 6px;
|
|
1365
1418
|
background: #f5f7fa;
|
|
1366
1419
|
border: 1px solid #ebeef5;
|
|
1367
1420
|
border-radius: 4px;
|
|
@@ -1380,7 +1433,7 @@ export default {
|
|
|
1380
1433
|
padding: 0 2px;
|
|
1381
1434
|
font-size: 12px;
|
|
1382
1435
|
color: #c0c4cc;
|
|
1383
|
-
line-height:
|
|
1436
|
+
line-height: 22px;
|
|
1384
1437
|
user-select: none;
|
|
1385
1438
|
}
|
|
1386
1439
|
|
|
@@ -1389,8 +1442,8 @@ export default {
|
|
|
1389
1442
|
min-width: 0;
|
|
1390
1443
|
max-width: 100%;
|
|
1391
1444
|
padding: 0 4px;
|
|
1392
|
-
height:
|
|
1393
|
-
line-height:
|
|
1445
|
+
height: 22px;
|
|
1446
|
+
line-height: 22px;
|
|
1394
1447
|
border: none;
|
|
1395
1448
|
border-bottom: 2px solid transparent;
|
|
1396
1449
|
border-radius: 0;
|
|
@@ -1427,7 +1480,7 @@ export default {
|
|
|
1427
1480
|
}
|
|
1428
1481
|
|
|
1429
1482
|
.base-area-grid-wrap {
|
|
1430
|
-
padding:
|
|
1483
|
+
padding: 6px;
|
|
1431
1484
|
background: #fff;
|
|
1432
1485
|
border: 1px solid #eee;
|
|
1433
1486
|
border-radius: 8px;
|
|
@@ -1436,20 +1489,22 @@ export default {
|
|
|
1436
1489
|
.base-area-grid {
|
|
1437
1490
|
display: flex;
|
|
1438
1491
|
flex-wrap: wrap;
|
|
1439
|
-
|
|
1440
|
-
|
|
1492
|
+
align-content: flex-start;
|
|
1493
|
+
min-height: 82px;
|
|
1494
|
+
/* 5 行:(28 + 6) * 5 + 4 */
|
|
1495
|
+
max-height: 174px;
|
|
1441
1496
|
overflow-y: auto;
|
|
1442
1497
|
margin: 0 -4px;
|
|
1443
1498
|
}
|
|
1444
1499
|
|
|
1445
1500
|
.base-area-item {
|
|
1446
1501
|
width: calc(25% - 8px);
|
|
1447
|
-
margin: 0 4px
|
|
1502
|
+
margin: 0 4px 6px;
|
|
1448
1503
|
padding: 0 10px;
|
|
1449
|
-
height:
|
|
1450
|
-
line-height:
|
|
1504
|
+
height: 28px;
|
|
1505
|
+
line-height: 28px;
|
|
1451
1506
|
border: 1px solid #eee;
|
|
1452
|
-
border-radius:
|
|
1507
|
+
border-radius: 6px;
|
|
1453
1508
|
font-size: 12px;
|
|
1454
1509
|
cursor: pointer;
|
|
1455
1510
|
overflow: hidden;
|
|
@@ -1470,7 +1525,7 @@ export default {
|
|
|
1470
1525
|
|
|
1471
1526
|
.base-area-empty {
|
|
1472
1527
|
width: 100%;
|
|
1473
|
-
padding:
|
|
1528
|
+
padding: 16px 0;
|
|
1474
1529
|
text-align: center;
|
|
1475
1530
|
color: #909399;
|
|
1476
1531
|
font-size: 12px;
|
|
@@ -1480,12 +1535,12 @@ export default {
|
|
|
1480
1535
|
display: flex;
|
|
1481
1536
|
align-items: center;
|
|
1482
1537
|
justify-content: space-between;
|
|
1483
|
-
margin-top:
|
|
1538
|
+
margin-top: 6px;
|
|
1484
1539
|
|
|
1485
1540
|
.base-area-nav-btn {
|
|
1486
1541
|
min-width: 32px;
|
|
1487
|
-
padding:
|
|
1488
|
-
border-radius:
|
|
1542
|
+
padding: 5px 10px;
|
|
1543
|
+
border-radius: 6px;
|
|
1489
1544
|
color: #fff;
|
|
1490
1545
|
border-color: $baseColor;
|
|
1491
1546
|
background-color: $baseColor;
|
|
@@ -1522,7 +1577,7 @@ export default {
|
|
|
1522
1577
|
text-align: center;
|
|
1523
1578
|
font-size: 12px;
|
|
1524
1579
|
color: #606266;
|
|
1525
|
-
line-height:
|
|
1580
|
+
line-height: 24px;
|
|
1526
1581
|
user-select: none;
|
|
1527
1582
|
}
|
|
1528
1583
|
}
|
|
@@ -1531,8 +1586,8 @@ export default {
|
|
|
1531
1586
|
display: flex;
|
|
1532
1587
|
align-items: center;
|
|
1533
1588
|
justify-content: flex-end;
|
|
1534
|
-
margin-top:
|
|
1535
|
-
padding-top:
|
|
1589
|
+
margin-top: 6px;
|
|
1590
|
+
padding-top: 6px;
|
|
1536
1591
|
border-top: 1px solid #ebeef5;
|
|
1537
1592
|
}
|
|
1538
1593
|
</style>
|
|
@@ -1577,7 +1632,7 @@ export default {
|
|
|
1577
1632
|
}
|
|
1578
1633
|
|
|
1579
1634
|
.base-area-popover {
|
|
1580
|
-
padding: 10px
|
|
1635
|
+
padding: 8px 10px;
|
|
1581
1636
|
overflow: visible;
|
|
1582
1637
|
box-sizing: border-box;
|
|
1583
1638
|
|
|
@@ -1599,7 +1654,7 @@ export default {
|
|
|
1599
1654
|
}
|
|
1600
1655
|
|
|
1601
1656
|
.base-area-nav-btn.el-button {
|
|
1602
|
-
border-radius:
|
|
1657
|
+
border-radius: 6px;
|
|
1603
1658
|
color: #fff;
|
|
1604
1659
|
border-color: $baseColor;
|
|
1605
1660
|
background-color: $baseColor;
|
|
@@ -122,7 +122,11 @@ baseTabPaneMixin = {
|
|
|
122
122
|
}
|
|
123
123
|
},
|
|
124
124
|
beforeDestroy() {
|
|
125
|
-
|
|
125
|
+
//getParent() 只认 baseTabs 父级/祖父级,拿不到就是没被 baseTabs 包着(如设计期画布、
|
|
126
|
+
//或中间隔了 draggable),此时没有 navList 可维护,直接跳过——原来这里直接取 .navList 会崩。
|
|
127
|
+
let parentPanel = this.getParent();
|
|
128
|
+
if (!parentPanel) return;
|
|
129
|
+
let navList = parentPanel.navList;
|
|
126
130
|
if (navList.length <= 1) {
|
|
127
131
|
this.updateNav();
|
|
128
132
|
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 详情承载契约(纯常量 + props 构造,无副作用,可完整单测)。
|
|
3
|
+
* micro-view-host(主/渲染方)与子应用「详情承载入口」共同遵守。
|
|
4
|
+
* 完整设计见 docs/qiankun动态详情页承载方案.md 第 5 节。
|
|
5
|
+
*
|
|
6
|
+
* 关键前提:qiankun loadMicroApp 的 props 是同一 JS realm 内的普通对象,
|
|
7
|
+
* 函数可直接传入并被子应用调用——故上行回调用函数 props,不需事件总线;
|
|
8
|
+
* 真正跨不过去的是 Vue 实例(parentVue)与 $parent 链,由子应用侧用 shim 合成。
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
// props 标志:子应用 mount 时据此进入「详情承载」分支(而非常规整站渲染)
|
|
12
|
+
export const DETAIL_HOST_MODE = "microDetailHost";
|
|
13
|
+
|
|
14
|
+
// 上行回调字段名(函数 props)。子应用承载入口据此把详情页的
|
|
15
|
+
// $baseReload / _handleCallback / 关闭 / outParam.sync / 任意 listeners
|
|
16
|
+
// 转调回渲染方(见方案 §5.2 / §5.3 的 parentVue shim)。
|
|
17
|
+
export const DETAIL_HOST_CALLBACKS = [
|
|
18
|
+
"onReload",
|
|
19
|
+
"onHandleCallback",
|
|
20
|
+
"onClose",
|
|
21
|
+
"onUpdateOutParam",
|
|
22
|
+
"onEmit",
|
|
23
|
+
];
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* 构造下发给子应用的 props。
|
|
27
|
+
*
|
|
28
|
+
* @param {object} input
|
|
29
|
+
* @param {string} input.appCode 归属子应用 appCode
|
|
30
|
+
* @param {string} input.targetPath 剥掉 /micro/<appCode> 后的子应用内路径
|
|
31
|
+
* @param {object} input.bizParams 业务字段整包(objTypeCode/formCode/dataId/param/queryParam…)
|
|
32
|
+
* @param {object} input.viewMeta 承载元数据(visibleKey/defaultShowWfContent/viewType)
|
|
33
|
+
* @param {*} input.initialOutParam outParam 初值(替代 .sync 入向)
|
|
34
|
+
* @param {object} input.baseProps 基础 props(token/lang/userInfo/mainAdapter…)
|
|
35
|
+
* @param {object} input.callbacks 上行回调;仅函数值会被收录
|
|
36
|
+
* @returns {object} 传给 loadMicroApp 的 props
|
|
37
|
+
*/
|
|
38
|
+
export function buildDetailHostProps(input = {}) {
|
|
39
|
+
const {
|
|
40
|
+
appCode,
|
|
41
|
+
targetPath,
|
|
42
|
+
bizParams,
|
|
43
|
+
viewMeta,
|
|
44
|
+
initialOutParam,
|
|
45
|
+
baseProps,
|
|
46
|
+
callbacks,
|
|
47
|
+
} = input;
|
|
48
|
+
|
|
49
|
+
const props = Object.assign({}, baseProps, {
|
|
50
|
+
[DETAIL_HOST_MODE]: true,
|
|
51
|
+
appCode: appCode || "",
|
|
52
|
+
targetPath: targetPath || "",
|
|
53
|
+
bizParams: bizParams || {},
|
|
54
|
+
viewMeta: viewMeta || {},
|
|
55
|
+
initialOutParam: initialOutParam,
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
const cb = callbacks || {};
|
|
59
|
+
DETAIL_HOST_CALLBACKS.forEach((name) => {
|
|
60
|
+
if (typeof cb[name] === "function") {
|
|
61
|
+
props[name] = cb[name];
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
return props;
|
|
66
|
+
}
|