@cloudbase/weda-ui 3.4.8 → 3.4.9
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/README.md +65 -30
- package/dist/configs/components/carousel.json +12 -2
- package/dist/configs/components/chart/bar.json +2 -2
- package/dist/configs/components/chart/line.js +2 -2
- package/dist/configs/components/chart/pie.json +2 -2
- package/dist/configs/components/chart/statisticsCard.json +1 -1
- package/dist/configs/components/common/form-input-required.js +176 -0
- package/dist/configs/components/container.js +1 -1
- package/dist/configs/components/customer-service.js +262 -0
- package/dist/configs/components/dataView.js +10 -66
- package/dist/configs/components/flowgraph.json +22 -0
- package/dist/configs/components/form/departTreeSelect.json +10 -0
- package/dist/configs/components/form-checkbox.js +261 -0
- package/dist/configs/components/form-date.js +268 -0
- package/dist/configs/components/form-depart-tree-select.js +237 -0
- package/dist/configs/components/form-email.js +258 -0
- package/dist/configs/components/form-image-uploader.js +326 -0
- package/dist/configs/components/form-input.js +477 -0
- package/dist/configs/components/form-location.js +328 -0
- package/dist/configs/components/form-multi-region.js +202 -0
- package/dist/configs/components/form-phone.js +250 -0
- package/dist/configs/components/form-radio.js +261 -0
- package/dist/configs/components/form-region.js +198 -0
- package/dist/configs/components/form-rich-text.js +212 -0
- package/dist/configs/components/form-select.js +368 -0
- package/dist/configs/components/form-switch.js +153 -0
- package/dist/configs/components/form-text-area.js +241 -0
- package/dist/configs/components/form-time.js +221 -0
- package/dist/configs/components/form-upload-file.js +269 -0
- package/dist/configs/components/form-url.js +259 -0
- package/dist/configs/components/form-user-tree-select.js +315 -0
- package/dist/configs/components/formdetail.json +8 -0
- package/dist/configs/components/grid/col.js +6 -0
- package/dist/configs/components/listView.js +34 -92
- package/dist/configs/components/modal.js +2 -3
- package/dist/configs/components/navigationBar.json +2 -4
- package/dist/configs/components/pagelayout.json +1 -1
- package/dist/configs/components/qr_code.js +117 -0
- package/dist/configs/components/repeater.js +3 -2
- package/dist/configs/components/scrollVeiw.json +3 -1
- package/dist/configs/components/table.json +14 -4
- package/dist/configs/components/tabs.js +1 -1
- package/dist/configs/components/wd-bubble.js +2 -2
- package/dist/configs/components/wd-button.js +5 -5
- package/dist/configs/components/wd-divider.js +3 -3
- package/dist/configs/components/wd-form-detail.js +229 -0
- package/dist/configs/components/wd-form.js +394 -0
- package/dist/configs/components/wd-icon.js +4 -4
- package/dist/configs/components/wd-image.js +5 -0
- package/dist/configs/components/wd-link.js +5 -5
- package/dist/configs/components/wd-table.js +1110 -24
- package/dist/configs/components/wd-text.js +4 -3
- package/dist/configs/components/web-view.js +152 -0
- package/dist/configs/components/wedaVideo.json +4 -2
- package/dist/configs/components/wxOpenApi/share.js +1 -0
- package/dist/configs/index.js +50 -0
- package/dist/configs/type-utils/index.js +0 -1
- package/dist/docs/common/componentList.js +8 -37
- package/dist/docs/common/components/classes-view.js +2 -32
- package/dist/docs/common/components/event-view.js +2 -43
- package/dist/docs/common/components/json-schema-view.js +4 -8
- package/dist/docs/common/components/methods-view.js +2 -30
- package/dist/docs/common/components/properties-view.js +4 -43
- package/dist/docs/common/tableView.js +15 -94
- package/dist/enum/index.js +53 -0
- package/dist/setupTests.js +4 -0
- package/dist/style/index.scss +1 -1
- package/dist/web/actions/showModal/index.js +15 -21
- package/dist/web/components/button/index.css +1 -0
- package/dist/web/components/button/index.js +3 -6
- package/dist/web/components/calendar/index.js +19 -45
- package/dist/web/components/carousel/index.js +35 -45
- package/dist/web/components/chart/bar/index.js +6 -7
- package/dist/web/components/chart/bar/index.old.js +3 -2
- package/dist/web/components/chart/common/Chart.js +3 -2
- package/dist/web/components/chart/common/chart-custom-connector.js +3 -7
- package/dist/web/components/chart/common/core/eChartLine.js +12 -1
- package/dist/web/components/chart/common/data-transform.js +13 -9
- package/dist/web/components/chart/line/index.js +6 -7
- package/dist/web/components/chart/line/index.old.js +5 -3
- package/dist/web/components/chart/pie/index.js +6 -7
- package/dist/web/components/chart/pie/index.old.js +3 -2
- package/dist/web/components/chart/statisticsCard/index.js +3 -9
- package/dist/web/components/common/error-boundary.js +13 -15
- package/dist/web/components/common/form-item-wrapper.js +4 -0
- package/dist/web/components/common/use-loop-render-detect.js +2 -2
- package/dist/web/components/container/index.js +2 -2
- package/dist/web/components/customer-service/convert-legacy-props.js +14 -0
- package/dist/web/components/customer-service/customer-service.js +13 -0
- package/dist/web/components/customer-service/index.js +3 -0
- package/dist/web/components/dataView/index.js +5 -1
- package/dist/web/components/drawer/index.js +2 -3
- package/dist/web/components/flow/common/components/container.js +12 -0
- package/dist/web/components/flow/common/components/index.js +2 -0
- package/dist/web/components/flow/common/components/text/index.js +62 -0
- package/dist/web/components/flow/common/constants.js +14 -0
- package/dist/web/components/flow/common/hooks/index.js +2 -0
- package/dist/web/components/flow/common/hooks/useCommonFlowData/flow-get.js +83 -0
- package/dist/web/components/flow/common/hooks/useCommonFlowData/index.js +67 -0
- package/dist/web/components/flow/common/hooks/useCommonFlowData/preview-data.js +45 -0
- package/dist/web/components/flow/common/hooks/useCommonFlowData/request-hub.js +125 -0
- package/dist/web/components/flow/common/hooks/useCommonFlowData/types.js +1 -0
- package/dist/web/components/flow/common/hooks/useElementMediaQuery.js +23 -0
- package/dist/web/components/flow/common/hooks/useFlowConfig.js +44 -0
- package/dist/web/components/flow/common/hooks/useFlowFormLoad.js +64 -0
- package/dist/web/components/flow/common/hooks/useFlowPageType.js +49 -0
- package/dist/web/components/flow/common/index.js +6 -0
- package/dist/web/components/flow/common/request.js +47 -0
- package/dist/web/components/flow/common/types.js +1 -0
- package/dist/web/components/flow/common/utils.js +15 -0
- package/dist/web/components/flow/modules/basic/Basic.js +14 -22
- package/dist/web/components/flow/modules/basic/BasicMobile.js +12 -30
- package/dist/web/components/flow/modules/basic/index.js +19 -11
- package/dist/web/components/flow/modules/basic/status-text.js +37 -0
- package/dist/web/components/flow/modules/basic/utils.js +17 -8
- package/dist/web/components/flow/modules/chart/Chart.js +22 -41
- package/dist/web/components/flow/modules/chart/index.js +49 -5
- package/dist/web/components/flow/modules/chart/preview-data.js +88 -0
- package/dist/web/components/flow/modules/chart/utils.js +111 -0
- package/dist/web/components/flow/modules/combination/index.js +4 -6
- package/dist/web/components/flow/modules/layout/index.css +2 -2
- package/dist/web/components/flow/modules/layout/index.js +11 -15
- package/dist/web/components/flow/modules/operations/components/button/index.js +2 -4
- package/dist/web/components/flow/modules/operations/components/popup/index.js +11 -15
- package/dist/web/components/flow/modules/operations/components/user-select/index.js +4 -5
- package/dist/web/components/flow/modules/operations/config/approval-form-config.js +8 -9
- package/dist/web/components/flow/modules/operations/config/control-config.js +38 -33
- package/dist/web/components/flow/modules/operations/control.js +21 -15
- package/dist/web/components/flow/modules/operations/controls-items/add-assignee-btn.js +8 -8
- package/dist/web/components/flow/modules/operations/controls-items/apply-cc-btn.js +2 -2
- package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comment/index.js +3 -6
- package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/drawer-form/index.js +25 -32
- package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/field/index.js +2 -6
- package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/index.js +15 -7
- package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/style.css +1 -0
- package/dist/web/components/flow/modules/operations/controls-items/cancel-apply-btn.js +2 -2
- package/dist/web/components/flow/modules/operations/controls-items/check-list-popup/index.js +2 -4
- package/dist/web/components/flow/modules/operations/controls-items/flow-task-info-modal/index.js +20 -0
- package/dist/web/components/flow/modules/operations/controls-items/flow-task-info-modal/view-model.js +119 -0
- package/dist/web/components/flow/modules/operations/controls-items/initiation-btn.js +6 -3
- package/dist/web/components/flow/modules/operations/controls-items/revoke-modal/index.js +13 -22
- package/dist/web/components/flow/modules/operations/controls-items/roll-back-modal.js +18 -26
- package/dist/web/components/flow/modules/operations/view-model.js +95 -70
- package/dist/web/components/flow/process/components/comment-text/index.js +24 -0
- package/dist/web/components/flow/process/components/comment-text/style.css +33 -0
- package/dist/web/components/flow/process/components/descriptions/index.js +19 -0
- package/dist/web/components/flow/process/components/descriptions/style.css +31 -0
- package/dist/web/components/flow/process/components/index.js +4 -0
- package/dist/web/components/flow/process/components/timeline/index.js +13 -0
- package/dist/web/components/flow/process/components/timeline/style.css +75 -0
- package/dist/web/components/flow/process/constants.js +46 -0
- package/dist/web/components/flow/process/index.js +2 -0
- package/dist/web/components/flow/process/process.js +113 -0
- package/dist/web/components/flow/process/style.css +17 -0
- package/dist/web/components/flow/process/types.js +1 -0
- package/dist/web/components/flow/process/view-model.js +135 -0
- package/dist/web/components/flow-graph/constants.js +28 -0
- package/dist/web/components/flow-graph/graph.js +267 -0
- package/dist/web/components/flow-graph/index.js +2 -0
- package/dist/web/components/flow-graph/style.css +109 -0
- package/dist/web/components/flow-graph/types.js +1 -0
- package/dist/web/components/form/checkbox/index.js +18 -19
- package/dist/web/components/form/enumSelect/MultipleSelect.js +4 -5
- package/dist/web/components/form/enumSelect/NormalSelect.js +4 -5
- package/dist/web/components/form/enumSelect/SelectContainer.js +2 -2
- package/dist/web/components/form/form/index.js +8 -14
- package/dist/web/components/form/formcell/index.js +12 -18
- package/dist/web/components/form/input/index.js +17 -16
- package/dist/web/components/form/location/common/mapChoose.js +37 -69
- package/dist/web/components/form/location/common/mapView.js +2 -1
- package/dist/web/components/form/location/common/selectModal.js +3 -7
- package/dist/web/components/form/location/components/LocationH5/location.h5.js +22 -34
- package/dist/web/components/form/location/components/LocationPC/Header.js +6 -15
- package/dist/web/components/form/location/components/LocationPC/location.PC.js +13 -15
- package/dist/web/components/form/location/index.js +5 -7
- package/dist/web/components/form/radio/index.js +8 -12
- package/dist/web/components/form/renderDecorator.js +3 -2
- package/dist/web/components/form/select/allTimePicker/calendar.js +27 -28
- package/dist/web/components/form/select/allTimePicker/index.js +66 -91
- package/dist/web/components/form/select/dropdown-select/h5.js +30 -53
- package/dist/web/components/form/select/dropdown-select/index.css +4 -0
- package/dist/web/components/form/select/dropdown-select/index.js +7 -3
- package/dist/web/components/form/select/dropdown-select/pc.js +27 -29
- package/dist/web/components/form/select/dropdown-select/ui.js +4 -8
- package/dist/web/components/form/select/h5.js +8 -6
- package/dist/web/components/form/select/index.js +19 -20
- package/dist/web/components/form/select/region/index.js +2 -2
- package/dist/web/components/form/select/request.js +10 -10
- package/dist/web/components/form/select/status/allEmpty.js +2 -2
- package/dist/web/components/form/select/status/empty.js +3 -2
- package/dist/web/components/form/select/status/loading.js +3 -4
- package/dist/web/components/form/select/status/retry.js +3 -4
- package/dist/web/components/form/select/year.js +16 -31
- package/dist/web/components/form/switch/index.js +11 -15
- package/dist/web/components/form/textarea/index.js +5 -10
- package/dist/web/components/form/tips/index.js +2 -2
- package/dist/web/components/form/uploader/index.js +5 -4
- package/dist/web/components/form/uploader/uploader.h5.js +29 -54
- package/dist/web/components/form/uploader/uploader.pc.js +18 -44
- package/dist/web/components/form/uploaderFile/index.js +4 -5
- package/dist/web/components/form/uploaderFile/uploadFile.h5.js +58 -104
- package/dist/web/components/form/uploaderFile/uploadFile.pc.js +42 -69
- package/dist/web/components/form/userOrgSelect/common/fetch-data-service.js +44 -62
- package/dist/web/components/form/userOrgSelect/common/utils.js +225 -0
- package/dist/web/components/form/userOrgSelect/component/OrgPaths.js +12 -0
- package/dist/web/components/form/userOrgSelect/component/depart-breadcrumb.js +5 -10
- package/dist/web/components/form/userOrgSelect/component/depart-select/depart-select-pc.js +9 -19
- package/dist/web/components/form/userOrgSelect/component/depart-select/departTreeSelect.h5.js +156 -0
- package/dist/web/components/form/userOrgSelect/component/depart-select/index.js +58 -21
- package/dist/web/components/form/userOrgSelect/component/depart-select/org-modal-pc.js +29 -35
- package/dist/web/components/form/userOrgSelect/component/error-tips.js +4 -4
- package/dist/web/components/form/userOrgSelect/component/index.css +52 -0
- package/dist/web/components/form/userOrgSelect/component/input-tags.js +4 -18
- package/dist/web/components/form/userOrgSelect/component/modal-search-h5.js +11 -19
- package/dist/web/components/form/userOrgSelect/component/modal-search.js +2 -5
- package/dist/web/components/form/userOrgSelect/component/modal-select-h5.js +49 -35
- package/dist/web/components/form/userOrgSelect/component/org-tree-h5.js +7 -13
- package/dist/web/components/form/userOrgSelect/component/org-tree.js +26 -18
- package/dist/web/components/form/userOrgSelect/component/selected-list-h5.js +23 -40
- package/dist/web/components/form/userOrgSelect/component/selected-list.js +8 -5
- package/dist/web/components/form/userOrgSelect/component/user-org-list.js +35 -35
- package/dist/web/components/form/userOrgSelect/component/user-select-h5/index.js +30 -4
- package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-list-h5.js +36 -50
- package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-select-h5.js +9 -11
- package/dist/web/components/form/userOrgSelect/component/user-select-pc/error-tips.js +4 -4
- package/dist/web/components/form/userOrgSelect/component/user-select-pc/model-user-list.js +24 -17
- package/dist/web/components/form/userOrgSelect/component/user-select-pc/org-tree.js +2 -2
- package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-model.js +12 -30
- package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-select-pc.js +8 -8
- package/dist/web/components/form/userOrgSelect/component/userOrgSelect.css +20 -2
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.js +68 -158
- package/dist/web/components/form/userOrgSelect/hooks/use-depart-data.js +4 -2
- package/dist/web/components/form-checkbox/index.js +36 -0
- package/dist/web/components/form-date/index.js +52 -0
- package/dist/web/components/form-depart-tree-select/index.js +22 -0
- package/dist/web/components/form-email/index.js +31 -0
- package/dist/web/components/form-image-uploader/index.js +50 -0
- package/dist/web/components/form-input/index.js +25 -0
- package/dist/web/components/form-input-hooks/index.js +284 -0
- package/dist/web/components/form-input-hooks/validator.js +124 -0
- package/dist/web/components/form-location/index.js +24 -0
- package/dist/web/components/form-multi-region/index.js +22 -0
- package/dist/web/components/form-phone/index.js +32 -0
- package/dist/web/components/form-radio/index.js +38 -0
- package/dist/web/components/form-region/index.js +24 -0
- package/dist/web/components/form-rich-text/index.js +22 -0
- package/dist/web/components/form-select/index.js +21 -0
- package/dist/web/components/form-switch/index.js +22 -0
- package/dist/web/components/form-text-area/index.js +22 -0
- package/dist/web/components/form-time/index.js +22 -0
- package/dist/web/components/form-upload-file/index.js +47 -0
- package/dist/web/components/form-url/index.js +31 -0
- package/dist/web/components/form-user-tree-select/index.js +24 -0
- package/dist/web/components/formdetail/index.css +213 -3
- package/dist/web/components/formdetail/index.js +156 -30
- package/dist/web/components/graphicCard/index.js +13 -25
- package/dist/web/components/grid/col.js +3 -2
- package/dist/web/components/grid/grid.js +4 -3
- package/dist/web/components/grid/row.js +3 -2
- package/dist/web/components/image/image.js +52 -57
- package/dist/web/components/image/index.js +2 -2
- package/dist/web/components/index.js +46 -3
- package/dist/web/components/link/index.js +3 -5
- package/dist/web/components/listView/index.js +29 -49
- package/dist/web/components/lottery/index.js +123 -143
- package/dist/web/components/modal/h5.css +3 -0
- package/dist/web/components/modal/index.js +3 -2
- package/dist/web/components/modal/modal.h5.js +8 -14
- package/dist/web/components/modal/modal.pc.js +5 -7
- package/dist/web/components/navLayout/index.js +13 -20
- package/dist/web/components/navigationBar/common.js +12 -14
- package/dist/web/components/navigationBar/h5Menu.js +18 -37
- package/dist/web/components/navigationBar/horizontalMenu.js +33 -50
- package/dist/web/components/navigationBar/index.css +2 -1
- package/dist/web/components/navigationBar/index.js +5 -10
- package/dist/web/components/navigationBar/verticalMenu.js +11 -13
- package/dist/web/components/pageLayout/PageContent/index.js +7 -14
- package/dist/web/components/pageLayout/index.css +10 -0
- package/dist/web/components/pageLayout/index.js +7 -12
- package/dist/web/components/phone/index.js +2 -4
- package/dist/web/components/phoneCode/index.js +2 -4
- package/dist/web/components/picker/datePicker.js +2 -2
- package/dist/web/components/picker/picker.js +2 -2
- package/dist/web/components/picker/timePicker.js +2 -2
- package/dist/web/components/qrcode/index.js +3 -0
- package/dist/web/components/qrcode/qr-code.js +26 -0
- package/dist/web/components/repeater/index.js +2 -2
- package/dist/web/components/repeater-item/index.js +2 -2
- package/dist/web/components/richText/index.js +74 -93
- package/dist/web/components/richTextView/index.js +3 -3
- package/dist/web/components/scrollView/index.js +4 -3
- package/dist/web/components/share/index.js +2 -4
- package/dist/web/components/slot/index.js +2 -2
- package/dist/web/components/statusContent/index.css +39 -0
- package/dist/web/components/statusContent/index.js +9 -0
- package/dist/web/components/swiper/index.js +44 -48
- package/dist/web/components/table/BaseTable.js +142 -190
- package/dist/web/components/table/ExportFileModalByApi/index.js +29 -60
- package/dist/web/components/table/FieldRender.js +47 -51
- package/dist/web/components/table/FilterFields.js +45 -71
- package/dist/web/components/table/Form/Enum.js +4 -4
- package/dist/web/components/table/Form/Location.js +9 -9
- package/dist/web/components/table/ImportFileModal/index.css +261 -0
- package/dist/web/components/table/ImportFileModal/index.js +47 -107
- package/dist/web/components/table/ImportFileModal/validate.js +9 -9
- package/dist/web/components/table/ImportFileModalByApi/index.css +35 -3
- package/dist/web/components/table/ImportFileModalByApi/index.js +96 -113
- package/dist/web/components/table/ImportFileModalByApi/uploadCSVFile.js +23 -47
- package/dist/web/components/table/InOrOutRecordModeal.js +26 -47
- package/dist/web/components/table/QuoteModal.js +3 -5
- package/dist/web/components/table/SelectableBlock/index.js +23 -27
- package/dist/web/components/table/UserDepartment/ViewCell.js +3 -3
- package/dist/web/components/table/UserDepartment/utils.js +4 -4
- package/dist/web/components/table/baseTable.css +0 -10
- package/dist/web/components/table/index.js +3 -5
- package/dist/web/components/tabs/index.js +5 -6
- package/dist/web/components/tabs/tabs.h5.js +12 -14
- package/dist/web/components/tabs/tabs.pc.js +15 -14
- package/dist/web/components/text/index.js +3 -2
- package/dist/web/components/uploaderFileView/index.js +4 -3
- package/dist/web/components/uploaderView/index.js +12 -16
- package/dist/web/components/userInfo/index.js +2 -4
- package/dist/web/components/wd-bubble/wd-bubble.js +10 -11
- package/dist/web/components/wd-button/wd-button.js +24 -8
- package/dist/web/components/wd-config-provider/wd-config-provider.js +3 -2
- package/dist/web/components/wd-divider/wd-divider.js +3 -2
- package/dist/web/components/wd-form/hooks/use-auth-value.js +43 -0
- package/dist/web/components/wd-form/hooks/use-remote-value.js +79 -0
- package/dist/web/components/wd-form/index.js +382 -0
- package/dist/web/components/wd-icon/wd-icon.js +3 -2
- package/dist/web/components/wd-image/image.js +98 -96
- package/dist/web/components/wd-image/index.js +4 -3
- package/dist/web/components/wd-link/wd-link.js +4 -8
- package/dist/web/components/wd-table/components/ExportFileModalByApi/ExportFileModalByApi.js +7 -0
- package/dist/web/components/wd-table/components/ExportFileModalByApi/index.css +9 -0
- package/dist/web/components/wd-table/components/ExportFileModalByApi/index.js +74 -0
- package/dist/web/components/wd-table/components/FieldRender/Form/Enum.js +56 -0
- package/dist/web/components/wd-table/components/FieldRender/Form/Location.css +11 -0
- package/dist/web/components/wd-table/components/FieldRender/Form/Location.js +127 -0
- package/dist/web/components/wd-table/components/FieldRender/ImagePreview.js +8 -0
- package/dist/web/components/wd-table/components/FieldRender/QuoteModal.js +17 -0
- package/dist/web/components/wd-table/components/FieldRender/UserDepartment/ViewCell.js +11 -0
- package/dist/web/components/wd-table/components/FieldRender/UserDepartment/utils.js +82 -0
- package/dist/web/components/wd-table/components/FieldRender/UserDepartment/viewCell.css +11 -0
- package/dist/web/components/wd-table/components/FieldRender/index.js +702 -0
- package/dist/web/components/wd-table/components/FilterFieldsPanel/Fields.js +82 -0
- package/dist/web/components/wd-table/components/FilterFieldsPanel/FilterFieldItem.js +86 -0
- package/dist/web/components/wd-table/components/FilterFieldsPanel/InputAdornment.js +9 -0
- package/dist/web/components/wd-table/components/FilterFieldsPanel/SelectSearch.js +44 -0
- package/dist/web/components/wd-table/components/FilterFieldsPanel/filterFieldsGenerate.js +113 -0
- package/dist/web/components/wd-table/components/FilterFieldsPanel/index.js +169 -0
- package/dist/web/components/wd-table/components/ImportFileModalByApi/index.js +44 -0
- package/dist/web/components/wd-table/components/InOrOutRecordModal.js +14 -0
- package/dist/web/components/wd-table/components/Pagination/index.js +11 -0
- package/dist/web/components/wd-table/components/SearchBox/index.js +45 -0
- package/dist/web/components/wd-table/components/Table/index.js +172 -0
- package/dist/web/components/wd-table/components/Table/util.js +63 -0
- package/dist/web/components/wd-table/components/ToolBar/index.js +34 -0
- package/dist/web/components/wd-table/components/deleteModal.js +40 -0
- package/dist/web/components/wd-table/components/index.js +10 -0
- package/dist/web/components/wd-table/hooks/useAuthFields.js +13 -0
- package/dist/web/components/wd-table/hooks/useChooseList.js +70 -0
- package/dist/web/components/wd-table/hooks/useDataSource.js +5 -0
- package/dist/web/components/wd-table/hooks/useQueryParams.js +41 -0
- package/dist/web/components/wd-table/hooks/useTableData.js +42 -0
- package/dist/web/components/wd-table/hooks/useViewFields.js +20 -0
- package/dist/web/components/wd-table/mock/index.js +202 -0
- package/dist/web/components/wd-table/utils/index.js +326 -0
- package/dist/web/components/wd-table/wd-table.js +459 -21
- package/dist/web/components/wd-text/wd-text.js +15 -14
- package/dist/web/components/web-view/index.css +5 -0
- package/dist/web/components/web-view/index.js +3 -0
- package/dist/web/components/web-view/web-view.js +61 -0
- package/dist/web/components/wedaVideo/index.js +2 -5
- package/dist/web/utils/constant.js +1 -0
- package/dist/web/utils/datasource.js +3 -1
- package/dist/web/utils/getModelParams.js +32 -0
- package/dist/web/utils/hooks/CreatePortal.js +3 -2
- package/dist/web/utils/hooks/EnumHoc.js +3 -2
- package/dist/web/utils/hooks/globalConnect.js +2 -3
- package/dist/web/utils/hooks/use-cloud-id-temp-url.js +6 -6
- package/dist/web/utils/hooks/useDataSource.js +22 -0
- package/dist/web/utils/loading-fallback.js +2 -2
- package/dist/web/utils/platform.js +21 -0
- package/dist/web/utils/tcb.js +0 -13
- package/dist/web/utils/tool.js +14 -0
- package/dist/web/utils/widget-api/index.js +39 -7
- package/package.json +32 -25
- package/dist/web/components/emptyContent/index.css +0 -26
- package/dist/web/components/flow/components/FlowModuleText/index.css +0 -4
- package/dist/web/components/flow/modules/process/index.css +0 -194
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState, useRef } from 'react';
|
|
3
|
+
import ReactDOM from 'react-dom';
|
|
4
|
+
import G6 from '@antv/g6';
|
|
5
|
+
import { Status, Modal, Button, ConfigProvider } from 'tea-component';
|
|
6
|
+
import moment from 'moment';
|
|
7
|
+
import { getUuid } from '../../utils/tool';
|
|
8
|
+
import { STATUS_COLOR_MAP, APPROVE_MAP } from './constants';
|
|
9
|
+
import './style.css';
|
|
10
|
+
/** 流程图组件 */
|
|
11
|
+
export const FlowGraph = (props) => {
|
|
12
|
+
const { processCanvasInfo, ...restProps } = props;
|
|
13
|
+
const containerIdRef = useRef(getUuid());
|
|
14
|
+
// 节点审批详情弹窗显示状态
|
|
15
|
+
const [modalVisible, setModalVisible] = useState(false);
|
|
16
|
+
// 节点审批详情弹窗显示数据
|
|
17
|
+
const [modalData, setModalData] = useState({
|
|
18
|
+
nodeName: '',
|
|
19
|
+
confData: null,
|
|
20
|
+
});
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
var _a;
|
|
23
|
+
if (((_a = processCanvasInfo === null || processCanvasInfo === void 0 ? void 0 : processCanvasInfo.Nodes) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
24
|
+
renderGraph({
|
|
25
|
+
data: processCanvasInfo,
|
|
26
|
+
containerIdRef,
|
|
27
|
+
setModalData,
|
|
28
|
+
onOpenModal,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}, [processCanvasInfo]);
|
|
32
|
+
const onOpenModal = () => setModalVisible(true);
|
|
33
|
+
const onCloseModal = () => setModalVisible(false);
|
|
34
|
+
// antv注册节点
|
|
35
|
+
registerNode();
|
|
36
|
+
return (_jsx(ConfigProvider, { classPrefix: "wedatea2td", children: _jsx("div", { ...restProps, children: _jsxs("div", { id: containerIdRef.current, children: [renderStatus(!processCanvasInfo), renderTooltipContentModal({
|
|
37
|
+
modalData,
|
|
38
|
+
visible: modalVisible,
|
|
39
|
+
onClose: onCloseModal,
|
|
40
|
+
})] }) }) }));
|
|
41
|
+
};
|
|
42
|
+
// 渲染当前状态
|
|
43
|
+
const renderStatus = (isEmpty) => {
|
|
44
|
+
if (isEmpty) {
|
|
45
|
+
return _jsx(Status, { icon: "blank", size: "l", title: "\u6682\u65E0\u6D41\u8F6C\u8282\u70B9" });
|
|
46
|
+
}
|
|
47
|
+
return null;
|
|
48
|
+
};
|
|
49
|
+
// 渲染图示内容
|
|
50
|
+
const renderGraph = (config) => {
|
|
51
|
+
const { data, containerIdRef, onOpenModal, setModalData } = config;
|
|
52
|
+
const container = document.getElementById(containerIdRef.current);
|
|
53
|
+
if (!container)
|
|
54
|
+
return;
|
|
55
|
+
const width = container.scrollWidth;
|
|
56
|
+
const height = document.documentElement.clientHeight;
|
|
57
|
+
const tooltip = new G6.Tooltip({
|
|
58
|
+
offsetX: 60,
|
|
59
|
+
offsetY: -20,
|
|
60
|
+
trigger: 'click',
|
|
61
|
+
itemTypes: ['node'],
|
|
62
|
+
getContent: (e) => {
|
|
63
|
+
return renderTooltipContent(e, onOpenModal, setModalData);
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
const graphData = getGraphData(data);
|
|
67
|
+
const graph = new G6.Graph({
|
|
68
|
+
container: containerIdRef.current,
|
|
69
|
+
width,
|
|
70
|
+
height: height - 300,
|
|
71
|
+
fitView: true,
|
|
72
|
+
fitViewPadding: [20, 40, 50, 20],
|
|
73
|
+
layout: {
|
|
74
|
+
type: 'dagre',
|
|
75
|
+
ranksep: 30,
|
|
76
|
+
controlPoints: true,
|
|
77
|
+
},
|
|
78
|
+
defaultNode: {
|
|
79
|
+
type: 'sql',
|
|
80
|
+
},
|
|
81
|
+
plugins: [tooltip],
|
|
82
|
+
defaultEdge: {
|
|
83
|
+
type: 'polyline',
|
|
84
|
+
style: {
|
|
85
|
+
endArrow: true,
|
|
86
|
+
lineWidth: 2,
|
|
87
|
+
stroke: '#C2C8D5',
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
nodeStateStyles: {
|
|
91
|
+
selected: {
|
|
92
|
+
stroke: '#000',
|
|
93
|
+
fill: '#5394ef',
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
modes: {
|
|
97
|
+
default: ['drag-canvas', 'zoom-canvas'],
|
|
98
|
+
},
|
|
99
|
+
});
|
|
100
|
+
graph.data(graphData);
|
|
101
|
+
graph.render();
|
|
102
|
+
if (typeof window !== 'undefined') {
|
|
103
|
+
window.onresize = () => {
|
|
104
|
+
if (!graph || graph.get('destroyed'))
|
|
105
|
+
return;
|
|
106
|
+
if (!container || !container.scrollWidth || !container.scrollHeight)
|
|
107
|
+
return;
|
|
108
|
+
graph.changeSize(container.scrollWidth, container.scrollHeight);
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
// 渲染提示内容
|
|
113
|
+
const renderTooltipContent = (e, onOpenModal, setModalData) => {
|
|
114
|
+
var _a;
|
|
115
|
+
const outDiv = document.createElement('div');
|
|
116
|
+
outDiv.style.width = 'auto';
|
|
117
|
+
const modelData = e.item.getModel();
|
|
118
|
+
const dataSource = modelData === null || modelData === void 0 ? void 0 : modelData.dataSource;
|
|
119
|
+
let vDomContent = null;
|
|
120
|
+
if ((_a = dataSource === null || dataSource === void 0 ? void 0 : dataSource.Conf) === null || _a === void 0 ? void 0 : _a.length) {
|
|
121
|
+
const contentHtml = dataSource === null || dataSource === void 0 ? void 0 : dataSource.Conf.map((info, index) => {
|
|
122
|
+
// 区分处理节点和审批节点的 待审批/待处理 文案
|
|
123
|
+
if (modelData.dataType === 23 && info.Status === 0) {
|
|
124
|
+
info.Status = 10;
|
|
125
|
+
}
|
|
126
|
+
return (_jsxs("li", { className: "weda-flow-graph-info-item", onClick: () => {
|
|
127
|
+
onOpenModal();
|
|
128
|
+
setModalData({
|
|
129
|
+
nodeName: dataSource === null || dataSource === void 0 ? void 0 : dataSource.Name,
|
|
130
|
+
confData: info,
|
|
131
|
+
});
|
|
132
|
+
}, children: [_jsxs("div", { className: "first-line", children: [_jsx("i", { className: info.Status ? 'tootip-will_do' : '' }), _jsx("span", { className: "tootip-name", children: info.Name }), _jsx("span", { style: {
|
|
133
|
+
color: APPROVE_MAP[info.Status ? info.Status : 0].color,
|
|
134
|
+
paddingLeft: '8px',
|
|
135
|
+
}, children: APPROVE_MAP[info.Status ? info.Status : 0].txt })] }), info.Status && info.OpTime ? (_jsx("p", { className: "tooltip-time", children: moment(info.OpTime).format('YYYY-MM-DD HH:mm:ss') })) : null] }, `conf-${index}`));
|
|
136
|
+
});
|
|
137
|
+
vDomContent = (_jsxs("div", { className: "weda-flow-graph-info", children: [_jsx("h4", { children: "\u8282\u70B9\u5BA1\u6279\u4FE1\u606F" }), _jsx("ul", { className: "weda-flow-graph-info-content", children: contentHtml })] }));
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
vDomContent = _jsx("p", { children: "\u6682\u65E0\u4FE1\u606F" });
|
|
141
|
+
}
|
|
142
|
+
ReactDOM.render(vDomContent, outDiv);
|
|
143
|
+
return outDiv;
|
|
144
|
+
};
|
|
145
|
+
// 渲染提示内容弹窗
|
|
146
|
+
const renderTooltipContentModal = (config) => {
|
|
147
|
+
var _a, _b;
|
|
148
|
+
const { visible, onClose, modalData: { nodeName, confData }, } = config;
|
|
149
|
+
const showData = [
|
|
150
|
+
{
|
|
151
|
+
label: '审批节点',
|
|
152
|
+
content: nodeName,
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
label: '审批人',
|
|
156
|
+
content: confData === null || confData === void 0 ? void 0 : confData.Name,
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
label: '审批操作',
|
|
160
|
+
content: (_jsx("span", { style: {
|
|
161
|
+
color: (_a = APPROVE_MAP === null || APPROVE_MAP === void 0 ? void 0 : APPROVE_MAP[confData === null || confData === void 0 ? void 0 : confData.Status]) === null || _a === void 0 ? void 0 : _a.color,
|
|
162
|
+
}, children: (_b = APPROVE_MAP === null || APPROVE_MAP === void 0 ? void 0 : APPROVE_MAP[confData === null || confData === void 0 ? void 0 : confData.Status]) === null || _b === void 0 ? void 0 : _b.txt })),
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
label: '操作时间',
|
|
166
|
+
content: (confData === null || confData === void 0 ? void 0 : confData.OpTime)
|
|
167
|
+
? moment(confData === null || confData === void 0 ? void 0 : confData.OpTime).format('YYYY-MM-DD HH:mm:ss')
|
|
168
|
+
: undefined,
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
label: '审批意见',
|
|
172
|
+
content: confData === null || confData === void 0 ? void 0 : confData.Comment,
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
label: '操作详情',
|
|
176
|
+
content: confData === null || confData === void 0 ? void 0 : confData.NewProcessors,
|
|
177
|
+
},
|
|
178
|
+
];
|
|
179
|
+
if (!visible)
|
|
180
|
+
return null;
|
|
181
|
+
return (_jsxs(Modal, { visible: true, caption: '审批详情', onClose: onClose, className: "weda-flow-graph-info-modal", destroyOnClose: true, children: [_jsx(Modal.Body, { children: _jsx("div", { className: "weda-flow-graph-info-modal_content", children: showData
|
|
182
|
+
.filter(({ content }) => content)
|
|
183
|
+
.map(({ label, content }, index) => (_jsxs("div", { children: [_jsx("span", { className: "weda-flow-graph-info-modal_content-label", children: label }), _jsx("span", { className: "weda-flow-graph-info-modal_content-content", children: content })] }, index))) }) }), _jsx(Modal.Footer, { children: _jsx(Button, { type: "weak", onClick: onClose, children: "\u5173\u95ED" }) })] }));
|
|
184
|
+
};
|
|
185
|
+
// 获取图示数据
|
|
186
|
+
const getGraphData = (data) => {
|
|
187
|
+
var _a;
|
|
188
|
+
const graphNodes = data.Nodes.map((node) => {
|
|
189
|
+
const { ElementId, Status } = node;
|
|
190
|
+
const graphNode = {
|
|
191
|
+
style: {
|
|
192
|
+
lineWidth: 3,
|
|
193
|
+
stroke: STATUS_COLOR_MAP[node.Status].lineColor,
|
|
194
|
+
fill: STATUS_COLOR_MAP[node.Status].bgColor,
|
|
195
|
+
},
|
|
196
|
+
id: `${node.ElementId}`,
|
|
197
|
+
label: node.Name,
|
|
198
|
+
labelCfg: {
|
|
199
|
+
style: {
|
|
200
|
+
fontSize: 14,
|
|
201
|
+
fill: '#00287E',
|
|
202
|
+
fontWeight: 'bold',
|
|
203
|
+
},
|
|
204
|
+
},
|
|
205
|
+
dataSource: node,
|
|
206
|
+
};
|
|
207
|
+
if ((ElementId === null || ElementId === void 0 ? void 0 : ElementId.startsWith('startNode')) || (ElementId === null || ElementId === void 0 ? void 0 : ElementId.startsWith('end'))) {
|
|
208
|
+
graphNode.type = 'circle';
|
|
209
|
+
graphNode.size = 80;
|
|
210
|
+
if (Status === 3) {
|
|
211
|
+
graphNode.style.lineDash = [5];
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
if (ElementId.startsWith('exclusiveGateway')) {
|
|
215
|
+
graphNode.type = 'diamond';
|
|
216
|
+
graphNode.size = [160, 80];
|
|
217
|
+
graphNode.anchorPoints = [
|
|
218
|
+
[0.5, 0],
|
|
219
|
+
[0, 0.5],
|
|
220
|
+
[0.5, 1],
|
|
221
|
+
[1, 0.5],
|
|
222
|
+
];
|
|
223
|
+
}
|
|
224
|
+
return graphNode;
|
|
225
|
+
});
|
|
226
|
+
const graphEdges = (_a = data.Edges) === null || _a === void 0 ? void 0 : _a.map((edge) => {
|
|
227
|
+
const graphEdge = {
|
|
228
|
+
source: edge.Source,
|
|
229
|
+
target: edge.Target,
|
|
230
|
+
label: edge.Label,
|
|
231
|
+
};
|
|
232
|
+
if (edge.Status === 1) {
|
|
233
|
+
graphEdge.style = {
|
|
234
|
+
stroke: '#0ABF5B',
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
return graphEdge;
|
|
238
|
+
});
|
|
239
|
+
return {
|
|
240
|
+
nodes: graphNodes,
|
|
241
|
+
edges: graphEdges,
|
|
242
|
+
};
|
|
243
|
+
};
|
|
244
|
+
// 注册节点
|
|
245
|
+
const registerNode = () => {
|
|
246
|
+
G6.registerNode('sql', {
|
|
247
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
248
|
+
drawShape(cfg, group) {
|
|
249
|
+
var _a, _b;
|
|
250
|
+
const rect = group.addShape('rect', {
|
|
251
|
+
attrs: {
|
|
252
|
+
x: -75,
|
|
253
|
+
y: -25,
|
|
254
|
+
width: 150,
|
|
255
|
+
height: 50,
|
|
256
|
+
radius: 10,
|
|
257
|
+
stroke: (_a = STATUS_COLOR_MAP === null || STATUS_COLOR_MAP === void 0 ? void 0 : STATUS_COLOR_MAP[cfg === null || cfg === void 0 ? void 0 : cfg.dataSource.Status]) === null || _a === void 0 ? void 0 : _a.lineColor,
|
|
258
|
+
fill: (_b = STATUS_COLOR_MAP === null || STATUS_COLOR_MAP === void 0 ? void 0 : STATUS_COLOR_MAP[cfg === null || cfg === void 0 ? void 0 : cfg.dataSource.Status]) === null || _b === void 0 ? void 0 : _b.bgColor,
|
|
259
|
+
lineWidth: 3,
|
|
260
|
+
lineDash: (cfg === null || cfg === void 0 ? void 0 : cfg.dataSource.Status) === 3 ? [5] : undefined,
|
|
261
|
+
},
|
|
262
|
+
name: cfg === null || cfg === void 0 ? void 0 : cfg.dataSource.Name,
|
|
263
|
+
});
|
|
264
|
+
return rect;
|
|
265
|
+
},
|
|
266
|
+
}, 'single-node');
|
|
267
|
+
};
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
.weda-flow-graph-info {
|
|
2
|
+
padding: 2px 4px;
|
|
3
|
+
}
|
|
4
|
+
.weda-flow-graph-info h4 {
|
|
5
|
+
margin-bottom: 4px;
|
|
6
|
+
font-size: 14px;
|
|
7
|
+
border-bottom: 1px solid #eee;
|
|
8
|
+
color: #000;
|
|
9
|
+
}
|
|
10
|
+
.weda-flow-graph-info .weda-flow-graph-info-content {
|
|
11
|
+
max-height: 160px;
|
|
12
|
+
overflow: auto;
|
|
13
|
+
}
|
|
14
|
+
.weda-flow-graph-info .weda-flow-graph-info-content .weda-flow-graph-info-item {
|
|
15
|
+
padding: 8px 0;
|
|
16
|
+
border-bottom: 1px solid #e5e8ed;
|
|
17
|
+
cursor: pointer;
|
|
18
|
+
}
|
|
19
|
+
.weda-flow-graph-info
|
|
20
|
+
.weda-flow-graph-info-content
|
|
21
|
+
.weda-flow-graph-info-item
|
|
22
|
+
.first-line {
|
|
23
|
+
height: 20px;
|
|
24
|
+
display: flex;
|
|
25
|
+
justify-content: flex-start nowrap;
|
|
26
|
+
align-items: center;
|
|
27
|
+
}
|
|
28
|
+
.weda-flow-graph-info
|
|
29
|
+
.weda-flow-graph-info-content
|
|
30
|
+
.weda-flow-graph-info-item
|
|
31
|
+
.first-line
|
|
32
|
+
i {
|
|
33
|
+
width: 16px;
|
|
34
|
+
height: 16px;
|
|
35
|
+
position: relative;
|
|
36
|
+
border-radius: 50%;
|
|
37
|
+
background: rgba(36, 115, 242, 0.15);
|
|
38
|
+
}
|
|
39
|
+
.weda-flow-graph-info
|
|
40
|
+
.weda-flow-graph-info-content
|
|
41
|
+
.weda-flow-graph-info-item
|
|
42
|
+
.first-line
|
|
43
|
+
i.tooltip-will_do {
|
|
44
|
+
background: rgba(162, 172, 189, 0.15);
|
|
45
|
+
}
|
|
46
|
+
.weda-flow-graph-info
|
|
47
|
+
.weda-flow-graph-info-content
|
|
48
|
+
.weda-flow-graph-info-item
|
|
49
|
+
.first-line
|
|
50
|
+
i.tooltip-will_do:after {
|
|
51
|
+
background: #a2acbd;
|
|
52
|
+
}
|
|
53
|
+
.weda-flow-graph-info
|
|
54
|
+
.weda-flow-graph-info-content
|
|
55
|
+
.weda-flow-graph-info-item
|
|
56
|
+
.first-line
|
|
57
|
+
i:after {
|
|
58
|
+
content: '';
|
|
59
|
+
position: absolute;
|
|
60
|
+
top: 4px;
|
|
61
|
+
left: 4px;
|
|
62
|
+
width: 8px;
|
|
63
|
+
height: 8px;
|
|
64
|
+
background-color: var(--co-common-main-color);
|
|
65
|
+
border-radius: 50%;
|
|
66
|
+
}
|
|
67
|
+
.weda-flow-graph-info
|
|
68
|
+
.weda-flow-graph-info-content
|
|
69
|
+
.weda-flow-graph-info-item
|
|
70
|
+
.first-line
|
|
71
|
+
.tootip-name {
|
|
72
|
+
padding-left: 8px;
|
|
73
|
+
}
|
|
74
|
+
.weda-flow-graph-info
|
|
75
|
+
.weda-flow-graph-info-content
|
|
76
|
+
.weda-flow-graph-info-item
|
|
77
|
+
.tooltip-time {
|
|
78
|
+
padding-left: 24px;
|
|
79
|
+
color: #999;
|
|
80
|
+
font-size: 12px;
|
|
81
|
+
height: 18px;
|
|
82
|
+
line-height: 18px;
|
|
83
|
+
}
|
|
84
|
+
.weda-flow-graph-info-modal_content > div {
|
|
85
|
+
display: flex;
|
|
86
|
+
margin-bottom: 8px;
|
|
87
|
+
}
|
|
88
|
+
.weda-flow-graph-info-modal_content
|
|
89
|
+
> div
|
|
90
|
+
.weda-flow-graph-info-modal_content-label {
|
|
91
|
+
min-width: 60px;
|
|
92
|
+
margin-right: 28px;
|
|
93
|
+
color: #999;
|
|
94
|
+
}
|
|
95
|
+
.weda-flow-graph-info-modal_content
|
|
96
|
+
> div
|
|
97
|
+
.weda-flow-graph-info-modal_content-content {
|
|
98
|
+
color: #333;
|
|
99
|
+
}
|
|
100
|
+
.weda-flow-graph-info-modal_content
|
|
101
|
+
> div
|
|
102
|
+
.weda-flow-graph-info-modal_content_link
|
|
103
|
+
> button {
|
|
104
|
+
display: block;
|
|
105
|
+
}
|
|
106
|
+
.weda-flow-graph-info-modal .tea-dialog__body {
|
|
107
|
+
max-height: 200px;
|
|
108
|
+
overflow: auto;
|
|
109
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import React, { useEffect, useState } from 'react';
|
|
2
3
|
import { Checkbox as TeaCheckbox, ConfigProvider } from 'tea-component';
|
|
3
4
|
import classNames from '../../../utils/classnames';
|
|
@@ -13,7 +14,7 @@ export default function Checkbox({
|
|
|
13
14
|
// 系统属性
|
|
14
15
|
id, className, style, events = emptyObject,
|
|
15
16
|
// 组件属性
|
|
16
|
-
name = 'formCheckbox', label = '标题', labelVisible = true, format = '', enumName = '', range = emptyArray, layout = 'horizontal', disabled = false, requiredFlag = false, decorator, controlValue, }) {
|
|
17
|
+
name = 'formCheckbox', label = '标题', labelVisible = true, format = '', enumName = '', range = emptyArray, layout = 'horizontal', disabled = false, requiredFlag = false, decorator, controlValue, onChange: outerOnChange, }) {
|
|
17
18
|
const cls = classNames({
|
|
18
19
|
'weda-ui': true,
|
|
19
20
|
'weda-checkbox': true,
|
|
@@ -103,11 +104,13 @@ name = 'formCheckbox', label = '标题', labelVisible = true, format = '', enumN
|
|
|
103
104
|
const newMap = Object.assign({}, checkedItems, { [value]: checked });
|
|
104
105
|
if (!disabled) {
|
|
105
106
|
setCheckedItems(newMap);
|
|
107
|
+
const value = Object.entries(newMap)
|
|
108
|
+
.filter(([, checked]) => checked)
|
|
109
|
+
.map(([value]) => value);
|
|
106
110
|
events.change({
|
|
107
|
-
value
|
|
108
|
-
.filter(([, checked]) => checked)
|
|
109
|
-
.map(([value]) => value),
|
|
111
|
+
value,
|
|
110
112
|
}, { originEvent: e });
|
|
113
|
+
outerOnChange === null || outerOnChange === void 0 ? void 0 : outerOnChange(value);
|
|
111
114
|
}
|
|
112
115
|
};
|
|
113
116
|
return onChange;
|
|
@@ -119,17 +122,11 @@ name = 'formCheckbox', label = '标题', labelVisible = true, format = '', enumN
|
|
|
119
122
|
checkboxElement = option.map(({ label, value }, index) => {
|
|
120
123
|
const _id = `checkbox-${hashcode}-${index}`;
|
|
121
124
|
const _name = `checkbox-${hashcode}-${name}`;
|
|
122
|
-
return (
|
|
123
|
-
React.createElement("div", { className: "weui-cell__hd" },
|
|
124
|
-
React.createElement("input", { type: "checkbox", className: "weui-check", value: value, id: _id, name: _name, checked: checkedItems[value], disabled: disabled }),
|
|
125
|
-
React.createElement("i", { className: "weui-icon-checked" })),
|
|
126
|
-
React.createElement("div", { className: "weui-cell__bd" },
|
|
127
|
-
React.createElement("p", null, label))));
|
|
125
|
+
return (_jsxs("div", { onClickCapture: getChangeHandler(value), className: subCls, children: [_jsxs("div", { className: "weui-cell__hd", children: [_jsx("input", { type: "checkbox", className: "weui-check", value: value, id: _id, name: _name, checked: checkedItems[value], disabled: disabled }), _jsx("i", { className: "weui-icon-checked" })] }), _jsx("div", { className: "weui-cell__bd", children: _jsx("p", { children: label }) })] }, _id));
|
|
128
126
|
});
|
|
129
127
|
}
|
|
130
128
|
else {
|
|
131
|
-
checkboxElement = (
|
|
132
|
-
React.createElement(TeaCheckbox.Group, { disabled: disabled, value: Object.entries(checkedItems)
|
|
129
|
+
checkboxElement = (_jsx(ConfigProvider, { classPrefix: "wedatea2td", children: _jsx(TeaCheckbox.Group, { disabled: disabled, value: Object.entries(checkedItems)
|
|
133
130
|
.filter(([, checked]) => checked)
|
|
134
131
|
.map(([value]) => value), onChange: (value) => {
|
|
135
132
|
const newMap = option
|
|
@@ -145,15 +142,17 @@ name = 'formCheckbox', label = '标题', labelVisible = true, format = '', enumN
|
|
|
145
142
|
return acc;
|
|
146
143
|
}, {});
|
|
147
144
|
setCheckedItems(newMap);
|
|
145
|
+
const newVal = Object.entries(newMap)
|
|
146
|
+
.filter(([, checked]) => checked)
|
|
147
|
+
.map(([value]) => value);
|
|
148
148
|
events.change({
|
|
149
|
-
value:
|
|
150
|
-
.filter(([, checked]) => checked)
|
|
151
|
-
.map(([value]) => value),
|
|
149
|
+
value: newVal,
|
|
152
150
|
});
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
151
|
+
outerOnChange === null || outerOnChange === void 0 ? void 0 : outerOnChange(newVal);
|
|
152
|
+
}, children: option.map(({ value, label }, index) => {
|
|
153
|
+
const _id = `checkbox-${hashcode}-${index}`;
|
|
154
|
+
return (_jsx(TeaCheckbox, { name: value, id: _id, children: label }, _id));
|
|
155
|
+
}) }) }));
|
|
157
156
|
}
|
|
158
157
|
return renderDecorator(checkboxElement, decorator)({
|
|
159
158
|
id,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { SelectMultiple } from 'tea-component';
|
|
3
3
|
import SelectContainer from './SelectContainer';
|
|
4
4
|
import { normalProps } from './props/defaultProps';
|
|
@@ -36,12 +36,11 @@ isModelApp, }) => {
|
|
|
36
36
|
virtual,
|
|
37
37
|
};
|
|
38
38
|
if (isModelApp) {
|
|
39
|
-
return
|
|
39
|
+
return _jsx(SelectMultiple, { ...multipleSelectProps });
|
|
40
40
|
}
|
|
41
|
-
return (
|
|
41
|
+
return (_jsx(SelectContainer, { style: style, className: className, label: label, labelVisible: labelVisible, layout: layout,
|
|
42
42
|
// @ts-ignore jsx
|
|
43
|
-
multiCell: false, requiredFlag: requiredFlag, decorator: decorator, id: id }
|
|
44
|
-
React.createElement(SelectMultiple, { ...multipleSelectProps })));
|
|
43
|
+
multiCell: false, requiredFlag: requiredFlag, decorator: decorator, id: id, children: _jsx(SelectMultiple, { ...multipleSelectProps }) }));
|
|
45
44
|
};
|
|
46
45
|
MultipleSelect.propTypes = {
|
|
47
46
|
...propTypes,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Select } from 'tea-component';
|
|
3
3
|
import SelectContainer from './SelectContainer';
|
|
4
4
|
import { multipleProps } from './props/defaultProps';
|
|
@@ -36,12 +36,11 @@ isModelApp, }) => {
|
|
|
36
36
|
size,
|
|
37
37
|
};
|
|
38
38
|
if (isModelApp) {
|
|
39
|
-
return
|
|
39
|
+
return _jsx(Select, { ...singleSelectProps });
|
|
40
40
|
}
|
|
41
|
-
return (
|
|
41
|
+
return (_jsx(SelectContainer, { style: style, className: className, label: label, labelVisible: labelVisible, layout: layout,
|
|
42
42
|
// @ts-expect-error selectcontainer type inorrect
|
|
43
|
-
multiCell: false, requiredFlag: requiredFlag, decorator: decorator, id: id }
|
|
44
|
-
React.createElement(Select, { ...singleSelectProps })));
|
|
43
|
+
multiCell: false, requiredFlag: requiredFlag, decorator: decorator, id: id, children: _jsx(Select, { ...singleSelectProps }) }));
|
|
45
44
|
};
|
|
46
45
|
NormalSelect.propTypes = {
|
|
47
46
|
...propTypes,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import classNames from '../../../utils/classnames';
|
|
3
3
|
import { selectContainerPropsTypes } from './props/propsTypes';
|
|
4
4
|
import { renderDecorator } from '../renderDecorator';
|
|
@@ -15,7 +15,7 @@ id, label, labelVisible, layout, requiredFlag, decorator, children, }) => {
|
|
|
15
15
|
'weui-cell_form': true,
|
|
16
16
|
'weui-cell_disabled': true,
|
|
17
17
|
});
|
|
18
|
-
const SelectComponent =
|
|
18
|
+
const SelectComponent = _jsx("div", { className: subCls, children: children });
|
|
19
19
|
return renderDecorator(SelectComponent, decorator)({
|
|
20
20
|
id,
|
|
21
21
|
className: cls,
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
2
|
import * as React from 'react';
|
|
2
3
|
import classNames from '../../../utils/classnames';
|
|
3
4
|
import { ConfigProvider, Form as TeaForm, message as TeaMessage, } from 'tea-component';
|
|
4
5
|
import { usePlatform, isInIde } from '../../../utils/platform';
|
|
5
|
-
import { callDataSource, callConnector
|
|
6
|
+
import { callDataSource, callConnector } from '../../../utils/tcb';
|
|
6
7
|
import './index.css';
|
|
7
8
|
import isObjectEqual from '../../../utils/isObjectEqual';
|
|
9
|
+
import { getDataSourceByName } from '../../../utils/datasource';
|
|
8
10
|
const formTypeWithInitValue = ['edit', 'read'];
|
|
9
11
|
/**
|
|
10
12
|
* 表单容器组件
|
|
@@ -97,7 +99,7 @@ export default function Form({ className, contentSlot, style, id, layout, formTy
|
|
|
97
99
|
paramGetItem,
|
|
98
100
|
]);
|
|
99
101
|
React.useEffect(() => {
|
|
100
|
-
var _a
|
|
102
|
+
var _a;
|
|
101
103
|
// 获取字段权限
|
|
102
104
|
const authValue = {
|
|
103
105
|
isDataModel,
|
|
@@ -122,36 +124,28 @@ export default function Form({ className, contentSlot, style, id, layout, formTy
|
|
|
122
124
|
console.error('getDataSourceFieldsWithAuth err', err);
|
|
123
125
|
}
|
|
124
126
|
};
|
|
125
|
-
// 兼容私有环境,新接口不存在的情况,产品策略完善后移除
|
|
126
|
-
if ((window === null || window === void 0 ? void 0 : window['_isPrivate']) &&
|
|
127
|
-
!((_b = (_a = window === null || window === void 0 ? void 0 : window.app) === null || _a === void 0 ? void 0 : _a.cloud) === null || _b === void 0 ? void 0 : _b.getDataSourceProfileAsync)) {
|
|
128
|
-
(_c = events === null || events === void 0 ? void 0 : events.onInitDataSourceFieldsWithAuth) === null || _c === void 0 ? void 0 : _c.call(events, { isDataModel });
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
127
|
if (isDataModel && dataSourceName) {
|
|
132
128
|
getDataSourceFieldsWithAuth();
|
|
133
129
|
}
|
|
134
130
|
else {
|
|
135
131
|
// 在表单容器里面的表单元素 if 默认是 false,需要通过onInitDataSourceFieldsWithAuth设置为true
|
|
136
|
-
(
|
|
132
|
+
(_a = events === null || events === void 0 ? void 0 : events.onInitDataSourceFieldsWithAuth) === null || _a === void 0 ? void 0 : _a.call(events, { isDataModel });
|
|
137
133
|
}
|
|
138
134
|
}, [isDataModel, dataSourceName]);
|
|
139
135
|
// pc 渲染
|
|
140
136
|
const renderPc = () => {
|
|
141
|
-
return (
|
|
142
|
-
React.createElement(TeaForm, { layout: layout, className: cls, style: style, id: id }, contentSlot)));
|
|
137
|
+
return (_jsx(ConfigProvider, { classPrefix: "wedatea2td", children: _jsx(TeaForm, { layout: layout, className: cls, style: style, id: id, children: contentSlot }) }));
|
|
143
138
|
};
|
|
144
139
|
// h5 渲染
|
|
145
140
|
const renderH5 = () => {
|
|
146
|
-
return (
|
|
147
|
-
React.createElement("div", { className: "weui-cells__group weui-cells__group_form" }, contentSlot)));
|
|
141
|
+
return (_jsx("div", { className: cls, style: style, id: id, children: _jsx("div", { className: "weui-cells__group weui-cells__group_form", children: contentSlot }) }));
|
|
148
142
|
};
|
|
149
143
|
return platform === 'pc' ? renderPc() : renderH5();
|
|
150
144
|
}
|
|
151
145
|
/**
|
|
152
146
|
* 根据平台不同,展示不同的错误提示消息
|
|
153
147
|
*/
|
|
154
|
-
function alertError(platform = 'h5', message) {
|
|
148
|
+
export function alertError(platform = 'h5', message) {
|
|
155
149
|
var _a;
|
|
156
150
|
if (isInIde())
|
|
157
151
|
return;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import classNames from '../../../utils/classnames';
|
|
3
3
|
import './index.css';
|
|
4
4
|
import { usePlatform } from '../../../utils/platform';
|
|
@@ -7,8 +7,7 @@ export default function FormCell({ className, style, label, layout, children, mu
|
|
|
7
7
|
const platform = usePlatform();
|
|
8
8
|
const isFlex = layout !== 'vertical';
|
|
9
9
|
if (platform === 'pc') {
|
|
10
|
-
return (
|
|
11
|
-
React.createElement(TeaForm.Item, { style: style, className: classNames({
|
|
10
|
+
return (_jsx(ConfigProvider, { classPrefix: "wedatea2td", children: _jsx(TeaForm.Item, { style: style, className: classNames({
|
|
12
11
|
'weda-ui': true,
|
|
13
12
|
'weui-cells_forms': !multiCell,
|
|
14
13
|
'weui-cells_checkbox': multiCell,
|
|
@@ -16,25 +15,20 @@ export default function FormCell({ className, style, label, layout, children, mu
|
|
|
16
15
|
'weda-formcells__full-width': size === 'full',
|
|
17
16
|
[layout]: layout,
|
|
18
17
|
[className]: [className],
|
|
19
|
-
}), label: label, required: requiredFlag
|
|
18
|
+
}), label: label, required: requiredFlag, children: children }) }));
|
|
20
19
|
}
|
|
21
|
-
return (
|
|
22
|
-
React.createElement("div", { className: classNames({
|
|
20
|
+
return (_jsx("div", { className: className, style: style, children: _jsxs("div", { className: classNames({
|
|
23
21
|
'weda-formcells': true,
|
|
24
22
|
'weui-cells': true,
|
|
25
23
|
'weui-cells_forms': !multiCell,
|
|
26
24
|
'weui-cells_checkbox': multiCell,
|
|
27
25
|
'weui-flex': isFlex,
|
|
28
|
-
})
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
React.createElement("div", { className: classNames({
|
|
37
|
-
'weda-formcells__content': true,
|
|
38
|
-
'weui-flex__item': isFlex,
|
|
39
|
-
}) }, children))));
|
|
26
|
+
}), children: [label ? (_jsxs("div", { className: classNames({
|
|
27
|
+
'weda-formcells__label': true,
|
|
28
|
+
// 标题也采用使用weui-cell的样式
|
|
29
|
+
'weui-cell': true,
|
|
30
|
+
}), children: [_jsx("label", { children: label }), requiredFlag ? (_jsx("label", { className: "weda-formcells__flag", children: "*" })) : null] })) : null, _jsx("div", { className: classNames({
|
|
31
|
+
'weda-formcells__content': true,
|
|
32
|
+
'weui-flex__item': isFlex,
|
|
33
|
+
}), children: children })] }) }));
|
|
40
34
|
}
|