@cloudbase/weda-ui 3.4.2 → 3.4.3
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/dist/configs/components/auth.json +2 -1
- package/dist/configs/components/button.js +240 -0
- package/dist/configs/components/calendar.json +4 -2
- package/dist/configs/components/carousel.json +2 -1
- package/dist/configs/components/chart/bar.json +3 -2
- package/dist/configs/components/chart/line.js +868 -0
- package/dist/configs/components/chart/pie.json +3 -2
- package/dist/configs/components/chart/statisticsCard.json +3 -2
- package/dist/configs/components/container.js +64 -0
- package/dist/configs/components/dataView.json +16 -1
- package/dist/configs/components/drawer.json +2 -1
- package/dist/configs/components/flow/flow.json +26 -0
- package/dist/configs/components/flow/flowbasic.json +122 -0
- package/dist/configs/components/flow/flowchart.json +22 -0
- package/dist/configs/components/flow/flowcontrol.json +66 -0
- package/dist/configs/components/flow/flowlayout.json +31 -0
- package/dist/configs/components/flow/flowprocess.json +122 -0
- package/dist/configs/components/form/checkbox.json +2 -1
- package/dist/configs/components/form/departTreeSelect.json +2 -1
- package/dist/configs/components/form/form.json +2 -1
- package/dist/configs/components/form/input.json +2 -1
- package/dist/configs/components/form/location.json +2 -1
- package/dist/configs/components/form/radio.json +2 -1
- package/dist/configs/components/form/richText.json +2 -1
- package/dist/configs/components/form/select.json +6 -1
- package/dist/configs/components/form/switch.json +2 -1
- package/dist/configs/components/form/textarea.json +2 -1
- package/dist/configs/components/form/tips.json +2 -1
- package/dist/configs/components/form/uploader.json +2 -1
- package/dist/configs/components/form/uploaderFile.json +2 -1
- package/dist/configs/components/form/userTreeSelect.json +2 -1
- package/dist/configs/components/formdetail.json +4 -2
- package/dist/configs/components/graphicCard.json +2 -1
- package/dist/configs/components/image.js +195 -0
- package/dist/configs/components/link.js +68 -0
- package/dist/configs/components/listView.json +33 -1
- package/dist/configs/components/lottery.json +6 -2
- package/dist/configs/components/modal.js +72 -0
- package/dist/configs/components/navLayout.json +3 -2
- package/dist/configs/components/navigationBar.json +3 -2
- package/dist/configs/components/pagelayout.json +31 -0
- package/dist/configs/components/richtextview.json +4 -3
- package/dist/configs/components/scrollVeiw.json +5 -3
- package/dist/configs/components/slot.json +2 -1
- package/dist/configs/components/swiper.json +3 -2
- package/dist/configs/components/table.json +734 -0
- package/dist/configs/components/tabs.js +120 -0
- package/dist/configs/components/text.js +109 -0
- package/dist/configs/components/wd-bubble.json +170 -0
- package/dist/configs/components/wedaVideo.json +7 -2
- package/dist/configs/components/wxOpenApi/phone.js +126 -0
- package/dist/configs/components/wxOpenApi/phoneCode.js +117 -0
- package/dist/configs/components/wxOpenApi/share.js +164 -0
- package/dist/configs/components/wxOpenApi/userInfo.js +168 -0
- package/dist/configs/index.js +30 -12
- package/dist/configs/type-utils/index.js +89 -0
- package/dist/web/components/button/index.js +1 -1
- package/dist/web/components/carousel/index.js +10 -5
- package/dist/web/components/flow/components/FlowModuleText/Content.js +6 -0
- package/dist/web/components/flow/components/FlowModuleText/Title.js +16 -0
- package/dist/web/components/flow/components/FlowModuleText/index.css +7 -0
- package/dist/web/components/flow/components/FlowModuleText/index.js +7 -0
- package/dist/web/components/flow/components/FlowModuleText/utils.js +34 -0
- package/dist/web/components/flow/components/FlowStatusText/index.js +37 -0
- package/dist/web/components/flow/components/FlowUserSelect/index.css +119 -0
- package/dist/web/components/flow/components/FlowUserSelect/index.js +115 -0
- package/dist/web/components/flow/components/HighLightComment/index.js +31 -0
- package/dist/web/components/flow/components/HighlightTextarea/index.css +45 -0
- package/dist/web/components/flow/components/HighlightTextarea/index.js +131 -0
- package/dist/web/components/flow/components/UserSelectModel/UserSelect.js +71 -0
- package/dist/web/components/flow/components/UserSelectModel/UserSelectMobile.css +11 -0
- package/dist/web/components/flow/components/UserSelectModel/UserSelectMobile.js +83 -0
- package/dist/web/components/flow/components/UserSelectModel/index.js +18 -0
- package/dist/web/components/flow/components/WedaUserTransfer/index.css +6 -0
- package/dist/web/components/flow/components/WedaUserTransfer/index.js +162 -0
- package/dist/web/components/flow/components/index.js +7 -0
- package/dist/web/components/flow/constants/index.js +65 -0
- package/dist/web/components/flow/frame/getCommonFlowData.js +78 -0
- package/dist/web/components/flow/frame/hooks/index.js +2 -0
- package/dist/web/components/flow/frame/hooks/useCommonFlowRequest.js +148 -0
- package/dist/web/components/flow/frame/hooks/useElementMediaQuery.js +15 -0
- package/dist/web/components/flow/frame/index.js +58 -0
- package/dist/web/components/flow/frame/types.js +265 -0
- package/dist/web/components/flow/frame/utils.js +81 -0
- package/dist/web/components/flow/modules/basic/Basic.css +19 -0
- package/dist/web/components/flow/modules/basic/Basic.js +48 -0
- package/dist/web/components/flow/modules/basic/BasicMobile.css +32 -0
- package/dist/web/components/flow/modules/basic/BasicMobile.js +41 -0
- package/dist/web/components/flow/modules/basic/index.js +13 -0
- package/dist/web/components/flow/modules/basic/utils.js +20 -0
- package/dist/web/components/flow/modules/chart/Chart.js +302 -0
- package/dist/web/components/flow/modules/chart/constants.js +28 -0
- package/dist/web/components/flow/modules/chart/index.css +90 -0
- package/dist/web/components/flow/modules/chart/index.js +5 -0
- package/dist/web/components/flow/modules/combination/index.js +21 -0
- package/dist/web/components/flow/modules/control/ApprovalDrawer.css +147 -0
- package/dist/web/components/flow/modules/control/ApprovalDrawer.js +178 -0
- package/dist/web/components/flow/modules/control/ApprovalPopup.css +118 -0
- package/dist/web/components/flow/modules/control/ApprovalPopup.js +237 -0
- package/dist/web/components/flow/modules/control/Control.css +32 -0
- package/dist/web/components/flow/modules/control/Control.js +90 -0
- package/dist/web/components/flow/modules/control/ControlMobile.css +72 -0
- package/dist/web/components/flow/modules/control/ControlMobile.js +133 -0
- package/dist/web/components/flow/modules/control/FlowTaskInfoModal.css +6 -0
- package/dist/web/components/flow/modules/control/FlowTaskInfoModal.js +31 -0
- package/dist/web/components/flow/modules/control/constants/index.js +35 -0
- package/dist/web/components/flow/modules/control/index.js +15 -0
- package/dist/web/components/flow/modules/control/provider/index.js +17 -0
- package/dist/web/components/flow/modules/control/provider/useControlModel.js +243 -0
- package/dist/web/components/flow/modules/control/provider/useMobileModel.js +86 -0
- package/dist/web/components/flow/modules/control/provider/useRevokeAndBackHook.js +82 -0
- package/dist/web/components/flow/modules/control/utils/ControlModelUtils.js +57 -0
- package/dist/web/components/flow/modules/control/utils/index.js +2 -0
- package/dist/web/components/flow/modules/layout/index.css +9 -0
- package/dist/web/components/flow/modules/layout/index.js +22 -0
- package/dist/web/components/flow/modules/process/Process.js +73 -0
- package/dist/web/components/flow/modules/process/ProcessMobile.js +81 -0
- package/dist/web/components/flow/modules/process/index.css +188 -0
- package/dist/web/components/flow/modules/process/index.js +14 -0
- package/dist/web/components/flow/modules/process/utils/index.js +32 -0
- package/dist/web/components/flow/services/flow.js +111 -0
- package/dist/web/components/flow/services/ideData/chart.js +88 -0
- package/dist/web/components/flow/services/ideData/index.js +5 -0
- package/dist/web/components/flow/services/ideData/instance.js +23 -0
- package/dist/web/components/flow/services/ideData/pageDetail.js +41 -0
- package/dist/web/components/flow/services/ideData/process.js +27 -0
- package/dist/web/components/flow/services/index.js +2 -0
- package/dist/web/components/flow/services/user.js +23 -0
- package/dist/web/components/flow/services/utils.js +28 -0
- package/dist/web/components/form/enumSelect/NormalSelect.js +1 -1
- package/dist/web/components/form/form/index.js +4 -3
- package/dist/web/components/form/input/index.css +6 -1
- package/dist/web/components/form/input/index.js +1 -1
- package/dist/web/components/form/select/allTimePicker/dataUtils.js +10 -0
- package/dist/web/components/form/select/allTimePicker/index.js +36 -27
- package/dist/web/components/form/select/dropdown-select/h5.js +130 -0
- package/dist/web/components/form/select/dropdown-select/index.css +159 -0
- package/dist/web/components/form/select/dropdown-select/index.js +173 -0
- package/dist/web/components/form/select/dropdown-select/pc.js +73 -0
- package/dist/web/components/form/select/dropdown-select/ui.js +42 -40
- package/dist/web/components/form/select/h5.js +16 -6
- package/dist/web/components/form/select/index.css +8 -1
- package/dist/web/components/form/select/index.js +5 -7
- package/dist/web/components/form/select/request.js +106 -0
- package/dist/web/components/form/select/status/allEmpty.js +5 -0
- package/dist/web/components/form/select/status/empty.js +18 -0
- package/dist/web/components/form/select/status/index.css +66 -0
- package/dist/web/components/form/select/status/index.js +7 -0
- package/dist/web/components/form/select/status/loading.js +20 -0
- package/dist/web/components/form/select/status/propsType.js +1 -0
- package/dist/web/components/form/select/status/retry.js +20 -0
- package/dist/web/components/form/switch/index.js +1 -1
- package/dist/web/components/form/textarea/index.js +1 -1
- package/dist/web/components/form/uploader/uploader.h5.js +4 -4
- package/dist/web/components/form/uploader/uploader.pc.js +1 -1
- package/dist/web/components/form/uploaderFile/uploadFile.h5.js +1 -1
- package/dist/web/components/form/uploaderFile/uploadFile.pc.js +1 -1
- package/dist/web/components/form/userOrgSelect/common/fetch-data-service.js +194 -0
- package/dist/web/components/form/userOrgSelect/common/types.js +1 -0
- package/dist/web/components/form/userOrgSelect/common/utils.js +15 -0
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.pc.js +1 -1
- package/dist/web/components/form/userOrgSelect/getUserService.js +10 -5
- package/dist/web/components/form/userOrgSelect/hooks/use-depart-data.js +93 -0
- package/dist/web/components/form/userOrgSelect/index.js +1 -1
- package/dist/web/components/form/userOrgSelect/user-select-pc/error-tips.js +11 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/index.css +216 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/index.js +195 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/model-user-list.js +99 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/org-tree.js +15 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/search-user.js +80 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/selected-user-list.js +12 -0
- package/dist/web/components/form/userOrgSelect/user-select-pc/user-model.js +36 -0
- package/dist/web/components/form/userOrgSelect/userTreeSelect.h5.js +71 -47
- package/dist/web/components/image/index.js +1 -1
- package/dist/web/components/index.js +17 -0
- package/dist/web/components/listView/index.css +9 -1
- package/dist/web/components/listView/index.js +66 -50
- package/dist/web/components/modal/modal.h5.js +1 -1
- package/dist/web/components/modal/modal.pc.js +1 -1
- package/dist/web/components/navigationBar/index.css +2 -1
- package/dist/web/components/pageLayout/PageContent/index.css +28 -0
- package/dist/web/components/pageLayout/PageContent/index.js +81 -0
- package/dist/web/components/pageLayout/index.css +7 -0
- package/dist/web/components/pageLayout/index.js +21 -0
- package/dist/web/components/phoneCode/index.js +1 -0
- package/dist/web/components/richText/index.css +5 -1
- package/dist/web/components/richText/index.js +2 -2
- package/dist/web/components/richText/richtext.module.css +2 -2
- package/dist/web/components/table/BaseTable.js +1171 -0
- package/dist/web/components/table/FieldRender.js +622 -0
- package/dist/web/components/table/FilterFields.js +512 -0
- package/dist/web/components/table/Form/Enum.js +56 -0
- package/dist/web/components/table/Form/Location.css +14 -0
- package/dist/web/components/table/Form/Location.js +126 -0
- package/dist/web/components/table/ImportFileModal/csvTemplate.json +547 -0
- package/dist/web/components/table/ImportFileModal/index.css +263 -0
- package/dist/web/components/table/ImportFileModal/index.js +310 -0
- package/dist/web/components/table/ImportFileModal/submitFormatter.js +32 -0
- package/dist/web/components/table/ImportFileModal/validate.js +127 -0
- package/dist/web/components/table/QuoteModal.js +16 -0
- package/dist/web/components/table/SelectableBlock/index.css +2 -0
- package/dist/web/components/table/SelectableBlock/index.js +81 -0
- package/dist/web/components/table/UserDepartment/ViewCell.js +11 -0
- package/dist/web/components/table/UserDepartment/utils.js +80 -0
- package/dist/web/components/table/UserDepartment/viewCell.css +14 -0
- package/dist/web/components/table/index.css +569 -0
- package/dist/web/components/table/index.js +109 -0
- package/dist/web/components/tabs/tabs.h5.js +1 -1
- package/dist/web/components/tabs/tabs.pc.js +1 -1
- package/dist/web/components/text/index.css +2 -1
- package/dist/web/components/text/index.js +2 -2
- package/dist/web/components/uploaderFileView/index.js +6 -5
- package/dist/web/components/wd-bubble/index.css +21 -0
- package/dist/web/components/wd-bubble/index.js +17 -0
- package/dist/web/components/wedaVideo/index.js +1 -1
- package/dist/web/index.js +1 -0
- package/dist/web/utils/constant.js +94 -1
- package/dist/web/utils/datasource.js +357 -0
- package/dist/web/utils/date.js +137 -0
- package/dist/web/utils/file.js +168 -0
- package/dist/web/utils/getPageQuery.js +16 -0
- package/dist/web/utils/hooks/EnumHoc.js +61 -0
- package/dist/web/utils/hooks/context.js +24 -0
- package/dist/web/utils/hooks/globalConnect.js +26 -0
- package/dist/web/utils/{use-cloud-id-temp-url.js → hooks/use-cloud-id-temp-url.js} +2 -2
- package/dist/web/utils/hooks/useRequest.js +25 -0
- package/dist/web/utils/{useSetState.js → hooks/useSetState.js} +0 -0
- package/dist/web/utils/{useSyncValue.js → hooks/useSyncValue.js} +0 -0
- package/dist/web/utils/platform.js +112 -23
- package/dist/web/utils/tcb.js +30 -8
- package/dist/web/utils/tool.js +21 -0
- package/package.json +18 -6
- package/dist/configs/components/button.json +0 -239
- package/dist/configs/components/chart/line.json +0 -881
- package/dist/configs/components/container.json +0 -64
- package/dist/configs/components/image.json +0 -190
- package/dist/configs/components/link.json +0 -82
- package/dist/configs/components/modal.json +0 -73
- package/dist/configs/components/tabs.json +0 -122
- package/dist/configs/components/text.json +0 -112
- package/dist/configs/components/wxOpenApi/phone.json +0 -127
- package/dist/configs/components/wxOpenApi/phoneCode.json +0 -109
- package/dist/configs/components/wxOpenApi/share.json +0 -161
- package/dist/configs/components/wxOpenApi/userInfo.json +0 -168
- package/dist/configs/index.d.ts +0 -105
- package/dist/docs/common/format.d.ts +0 -13
- package/dist/docs/common/tableView.d.ts +0 -30
- package/dist/index.d.ts +0 -2
- package/dist/setupTests.d.ts +0 -2
- package/dist/web/actions/index.d.ts +0 -3
- package/dist/web/actions/showMessage/index.d.ts +0 -17
- package/dist/web/actions/showModal/index.d.ts +0 -4
- package/dist/web/actions/showToast/index.d.ts +0 -1
- package/dist/web/components/button/index.d.ts +0 -33
- package/dist/web/components/calendar/index.d.ts +0 -19
- package/dist/web/components/calendar/util.d.ts +0 -13
- package/dist/web/components/carousel/index.d.ts +0 -41
- package/dist/web/components/chart/bar/index.d.ts +0 -3
- package/dist/web/components/chart/bar/index.old.d.ts +0 -40
- package/dist/web/components/chart/common/Chart.d.ts +0 -9
- package/dist/web/components/chart/common/chart-custom-connector.d.ts +0 -6
- package/dist/web/components/chart/common/chart-error.d.ts +0 -2
- package/dist/web/components/chart/common/config/bar.d.ts +0 -48
- package/dist/web/components/chart/common/config/global.d.ts +0 -13
- package/dist/web/components/chart/common/config/line.d.ts +0 -46
- package/dist/web/components/chart/common/config/pie.d.ts +0 -29
- package/dist/web/components/chart/common/core/eChartBar.d.ts +0 -66
- package/dist/web/components/chart/common/core/eChartBase.d.ts +0 -127
- package/dist/web/components/chart/common/core/eChartLine.d.ts +0 -60
- package/dist/web/components/chart/common/core/eChartPie.d.ts +0 -48
- package/dist/web/components/chart/common/core/type.d.ts +0 -35
- package/dist/web/components/chart/common/data-transform.d.ts +0 -8
- package/dist/web/components/chart/common/echarts.d.ts +0 -5
- package/dist/web/components/chart/common/useChart.d.ts +0 -8
- package/dist/web/components/chart/line/index.d.ts +0 -3
- package/dist/web/components/chart/line/index.old.d.ts +0 -38
- package/dist/web/components/chart/pie/index.d.ts +0 -3
- package/dist/web/components/chart/pie/index.old.d.ts +0 -27
- package/dist/web/components/chart/statisticsCard/index.d.ts +0 -85
- package/dist/web/components/chart/statisticsCard/interface.d.ts +0 -13
- package/dist/web/components/common/error-boundary.d.ts +0 -5
- package/dist/web/components/common/portal.d.ts +0 -7
- package/dist/web/components/common/use-loop-render-detect.d.ts +0 -11
- package/dist/web/components/container/index.d.ts +0 -6
- package/dist/web/components/dataView/index.d.ts +0 -6
- package/dist/web/components/dataView/interface.d.ts +0 -5
- package/dist/web/components/drawer/index.d.ts +0 -13
- package/dist/web/components/form/checkbox/index.d.ts +0 -13
- package/dist/web/components/form/enumSelect/MultipleSelect.d.ts +0 -78
- package/dist/web/components/form/enumSelect/NormalSelect.d.ts +0 -83
- package/dist/web/components/form/enumSelect/SelectContainer.d.ts +0 -16
- package/dist/web/components/form/enumSelect/index.d.ts +0 -82
- package/dist/web/components/form/enumSelect/props/defaultProps.d.ts +0 -34
- package/dist/web/components/form/enumSelect/props/propsTypes.d.ts +0 -39
- package/dist/web/components/form/form/index.d.ts +0 -32
- package/dist/web/components/form/formcell/index.d.ts +0 -8
- package/dist/web/components/form/input/index.d.ts +0 -14
- package/dist/web/components/form/location/common/mapChoose.d.ts +0 -15
- package/dist/web/components/form/location/common/mapView.d.ts +0 -19
- package/dist/web/components/form/location/common/propsConfig.d.ts +0 -59
- package/dist/web/components/form/location/common/selectModal.d.ts +0 -21
- package/dist/web/components/form/location/common/useLocationInfo.d.ts +0 -36
- package/dist/web/components/form/location/components/LocationH5/location.h5.d.ts +0 -8
- package/dist/web/components/form/location/components/LocationPC/Header.d.ts +0 -12
- package/dist/web/components/form/location/components/LocationPC/location.PC.d.ts +0 -8
- package/dist/web/components/form/location/constants.d.ts +0 -2
- package/dist/web/components/form/location/index.d.ts +0 -1
- package/dist/web/components/form/radio/index.d.ts +0 -11
- package/dist/web/components/form/renderDecorator.d.ts +0 -6
- package/dist/web/components/form/select/allTimePicker/calendar.d.ts +0 -13
- package/dist/web/components/form/select/allTimePicker/dataUtils.d.ts +0 -24
- package/dist/web/components/form/select/allTimePicker/index.d.ts +0 -14
- package/dist/web/components/form/select/dropdown-select/ui.d.ts +0 -15
- package/dist/web/components/form/select/h5.d.ts +0 -16
- package/dist/web/components/form/select/index.d.ts +0 -66
- package/dist/web/components/form/select/region/index.d.ts +0 -6
- package/dist/web/components/form/select/time.d.ts +0 -9
- package/dist/web/components/form/select/use-options.d.ts +0 -26
- package/dist/web/components/form/select/use-options.js +0 -103
- package/dist/web/components/form/select/year.d.ts +0 -7
- package/dist/web/components/form/switch/index.d.ts +0 -6
- package/dist/web/components/form/textarea/index.d.ts +0 -12
- package/dist/web/components/form/tips/index.d.ts +0 -8
- package/dist/web/components/form/uploader/index.d.ts +0 -3
- package/dist/web/components/form/uploader/uploader.h5.d.ts +0 -20
- package/dist/web/components/form/uploader/uploader.pc.d.ts +0 -30
- package/dist/web/components/form/uploaderFile/index.d.ts +0 -4
- package/dist/web/components/form/uploaderFile/uploadFile.h5.d.ts +0 -23
- package/dist/web/components/form/uploaderFile/uploadFile.pc.d.ts +0 -35
- package/dist/web/components/form/userOrgSelect/comTool.d.ts +0 -8
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.d.ts +0 -19
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.pc.d.ts +0 -4
- package/dist/web/components/form/userOrgSelect/departTreeSelect/index.d.ts +0 -2
- package/dist/web/components/form/userOrgSelect/getUserService.d.ts +0 -11
- package/dist/web/components/form/userOrgSelect/index.d.ts +0 -2
- package/dist/web/components/form/userOrgSelect/userTreeSelect.h5.d.ts +0 -27
- package/dist/web/components/form/userOrgSelect/userTreeSelect.pc.d.ts +0 -9
- package/dist/web/components/form/userOrgSelect/userTreeSelect.pc.js +0 -273
- package/dist/web/components/form/userOrgSelect/utils.d.ts +0 -37
- package/dist/web/components/formdetail/index.d.ts +0 -31
- package/dist/web/components/graphicCard/index.d.ts +0 -47
- package/dist/web/components/image/image.d.ts +0 -9
- package/dist/web/components/image/index.d.ts +0 -13
- package/dist/web/components/index.d.ts +0 -50
- package/dist/web/components/link/index.d.ts +0 -24
- package/dist/web/components/listView/index.d.ts +0 -7
- package/dist/web/components/listView/interface.d.ts +0 -127
- package/dist/web/components/lottery/index.d.ts +0 -22
- package/dist/web/components/lottery/lotteryUtil.d.ts +0 -23
- package/dist/web/components/modal/index.d.ts +0 -17
- package/dist/web/components/modal/modal.h5.d.ts +0 -4
- package/dist/web/components/modal/modal.pc.d.ts +0 -3
- package/dist/web/components/navLayout/index.d.ts +0 -65
- package/dist/web/components/navigationBar/common.d.ts +0 -15
- package/dist/web/components/navigationBar/h5Menu.d.ts +0 -14
- package/dist/web/components/navigationBar/horizontalMenu.d.ts +0 -12
- package/dist/web/components/navigationBar/index.d.ts +0 -13
- package/dist/web/components/navigationBar/verticalMenu.d.ts +0 -13
- package/dist/web/components/phone/index.d.ts +0 -18
- package/dist/web/components/phoneCode/index.d.ts +0 -18
- package/dist/web/components/picker/datePicker.d.ts +0 -10
- package/dist/web/components/picker/picker.d.ts +0 -6
- package/dist/web/components/picker/timePicker.d.ts +0 -7
- package/dist/web/components/richText/const.d.ts +0 -1
- package/dist/web/components/richText/index.d.ts +0 -50
- package/dist/web/components/richTextView/index.d.ts +0 -7
- package/dist/web/components/scrollView/index.d.ts +0 -25
- package/dist/web/components/share/index.d.ts +0 -34
- package/dist/web/components/slot/index.d.ts +0 -6
- package/dist/web/components/swiper/index.d.ts +0 -24
- package/dist/web/components/tabs/index.d.ts +0 -13
- package/dist/web/components/tabs/tabs.h5.d.ts +0 -4
- package/dist/web/components/tabs/tabs.pc.d.ts +0 -3
- package/dist/web/components/text/index.d.ts +0 -15
- package/dist/web/components/uploaderFileView/index.d.ts +0 -10
- package/dist/web/components/uploaderView/index.d.ts +0 -17
- package/dist/web/components/userInfo/index.d.ts +0 -26
- package/dist/web/components/wedaVideo/index.d.ts +0 -17
- package/dist/web/index.d.ts +0 -8
- package/dist/web/utils/classnames.d.ts +0 -2
- package/dist/web/utils/console.d.ts +0 -3
- package/dist/web/utils/constant.d.ts +0 -23
- package/dist/web/utils/debounce.d.ts +0 -2
- package/dist/web/utils/getLocalCounter.d.ts +0 -1
- package/dist/web/utils/isObjectEqual.d.ts +0 -2
- package/dist/web/utils/loading-fallback.d.ts +0 -2
- package/dist/web/utils/lodash.d.ts +0 -1
- package/dist/web/utils/platform.d.ts +0 -28
- package/dist/web/utils/tcb.d.ts +0 -33
- package/dist/web/utils/tmap.d.ts +0 -3
- package/dist/web/utils/use-cloud-id-temp-url.d.ts +0 -1
- package/dist/web/utils/useSetState.d.ts +0 -1
- package/dist/web/utils/useSyncValue.d.ts +0 -4
- package/dist/web/utils/weui.d.ts +0 -1
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
2
|
+
import { SelectPickerH5 } from './h5';
|
|
3
|
+
import { formatNeedDataFetch, PAGE_SIZE, requestEnumOption, requestFatherRelatedOption, RequestOptionType, transFormatTeaSelectKey, } from '../request';
|
|
4
|
+
import SelectPickerPc from './pc';
|
|
5
|
+
import { usePlatform } from '../../../../utils/platform';
|
|
6
|
+
import { Status } from '../status';
|
|
7
|
+
import { useDeepCompareEffect } from '@react-hookz/web';
|
|
8
|
+
export function PureSelect({ params, selectedValue, updateValue, placeholder, size, disabled, isShow, }) {
|
|
9
|
+
const isRequestingRef = useRef(false);
|
|
10
|
+
const [status, setStatus] = useState(Status.FINISH);
|
|
11
|
+
const [options, setOptions] = useState([]);
|
|
12
|
+
const [page, setPage] = useState(1);
|
|
13
|
+
const [searchOptions, setSearchOptions] = useState([]);
|
|
14
|
+
const [searchPage, setSearchPage] = useState(1);
|
|
15
|
+
const [searchValue, setSearchValue] = useState('');
|
|
16
|
+
const [searchStatus, setSearchStatus] = useState(Status.FINISH);
|
|
17
|
+
const [format, setFormat] = useState('');
|
|
18
|
+
const [isTurnPages, setIsTurnPages] = useState(false);
|
|
19
|
+
const platform = usePlatform();
|
|
20
|
+
const isSearch = useMemo(() => searchValue !== '', [searchValue]);
|
|
21
|
+
useDeepCompareEffect(() => {
|
|
22
|
+
const { format, controlledValue } = params || {
|
|
23
|
+
format: '',
|
|
24
|
+
controlledValue: [],
|
|
25
|
+
};
|
|
26
|
+
const isTurnPages = format === 'father-son' || format === 'related';
|
|
27
|
+
setFormat(format);
|
|
28
|
+
setIsTurnPages(isTurnPages);
|
|
29
|
+
// 手动配置
|
|
30
|
+
if (!formatNeedDataFetch.includes(format)) {
|
|
31
|
+
if (controlledValue.length === 0) {
|
|
32
|
+
setStatus(Status.ALl_EMPTY);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
setStatus(Status.FINISH);
|
|
36
|
+
}
|
|
37
|
+
setOptions(controlledValue);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
// 接口请求
|
|
41
|
+
if (isTurnPages) {
|
|
42
|
+
requestFatherRelatedOption(params, 1, RequestOptionType.ALL)
|
|
43
|
+
.then((value) => {
|
|
44
|
+
setOptions(value.option);
|
|
45
|
+
if (value.option.length === 0) {
|
|
46
|
+
setStatus(platform === 'pc' ? Status.EMPTY : Status.ALl_EMPTY);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
setStatus(value.isLoadMore ? Status.LOADING : Status.FINISH);
|
|
50
|
+
}
|
|
51
|
+
})
|
|
52
|
+
.catch(() => {
|
|
53
|
+
setStatus(Status.ERROR);
|
|
54
|
+
})
|
|
55
|
+
.finally(() => (isRequestingRef.current = false));
|
|
56
|
+
}
|
|
57
|
+
else if (format === 'x-enum') {
|
|
58
|
+
requestEnumOption(params).then((value) => {
|
|
59
|
+
setOptions(value);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}, [params]);
|
|
63
|
+
useEffect(() => {
|
|
64
|
+
if (page > 1) {
|
|
65
|
+
requestFatherRelated(page);
|
|
66
|
+
}
|
|
67
|
+
}, [page]);
|
|
68
|
+
useEffect(() => {
|
|
69
|
+
if (searchPage > 1) {
|
|
70
|
+
requestFatherRelated(searchPage, searchValue);
|
|
71
|
+
}
|
|
72
|
+
}, [searchPage]);
|
|
73
|
+
const requestFatherRelated = (pageNo, searchValue) => {
|
|
74
|
+
requestFatherRelatedOption(params, pageNo, RequestOptionType.SEARCH, searchValue)
|
|
75
|
+
.then((value) => {
|
|
76
|
+
if (isSearch) {
|
|
77
|
+
setSearchOptions((opt) => opt.concat(value.option));
|
|
78
|
+
if (pageNo === 1 && value.option.length === 0) {
|
|
79
|
+
setSearchStatus(Status.EMPTY);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
setSearchStatus(value.isLoadMore ? Status.LOADING : Status.FINISH);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
setOptions((opt) => opt.concat(value.option));
|
|
87
|
+
if (pageNo === 1 && value.option.length === 0) {
|
|
88
|
+
setStatus(Status.EMPTY);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
setStatus(value.isLoadMore ? Status.LOADING : Status.FINISH);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
})
|
|
95
|
+
.catch(() => isSearch ? setSearchStatus(Status.ERROR) : setStatus(Status.ERROR))
|
|
96
|
+
.finally(() => (isRequestingRef.current = false));
|
|
97
|
+
};
|
|
98
|
+
const currentStatus = useMemo(() => {
|
|
99
|
+
return isSearch ? searchStatus : status;
|
|
100
|
+
}, [isSearch, searchStatus, status]);
|
|
101
|
+
const currentOption = useMemo(() => {
|
|
102
|
+
const option = isSearch ? searchOptions : options;
|
|
103
|
+
return platform === 'h5' ? option : transFormatTeaSelectKey(option);
|
|
104
|
+
}, [isSearch, searchOptions, options, platform]);
|
|
105
|
+
useEffect(() => {
|
|
106
|
+
// 本地搜索
|
|
107
|
+
if (!isTurnPages || options.length < PAGE_SIZE) {
|
|
108
|
+
const searchOpt = options.filter((item) => {
|
|
109
|
+
if (item.label) {
|
|
110
|
+
return item.label.toString().includes(searchValue);
|
|
111
|
+
}
|
|
112
|
+
return false;
|
|
113
|
+
});
|
|
114
|
+
if (searchOpt.length > 0) {
|
|
115
|
+
setSearchOptions(searchOpt);
|
|
116
|
+
setSearchStatus(Status.FINISH);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
setSearchOptions([]);
|
|
120
|
+
setSearchStatus(Status.EMPTY);
|
|
121
|
+
}
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
// 远程搜索
|
|
125
|
+
if (searchValue.trim().length > 0) {
|
|
126
|
+
// eslint-disable-next-line rulesdir/no-timer
|
|
127
|
+
const timer = setTimeout(() => {
|
|
128
|
+
requestFatherRelated(1, searchValue);
|
|
129
|
+
}, 1000);
|
|
130
|
+
return () => clearTimeout(timer);
|
|
131
|
+
}
|
|
132
|
+
}, [searchValue]);
|
|
133
|
+
// 加载更多
|
|
134
|
+
const loadMore = () => {
|
|
135
|
+
if (!isRequestingRef.current &&
|
|
136
|
+
isTurnPages &&
|
|
137
|
+
currentStatus !== Status.FINISH) {
|
|
138
|
+
if (isSearch) {
|
|
139
|
+
if (searchOptions.length >= PAGE_SIZE) {
|
|
140
|
+
isRequestingRef.current = true;
|
|
141
|
+
setSearchPage((page) => page + 1);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
if (options.length >= PAGE_SIZE) {
|
|
146
|
+
isRequestingRef.current = true;
|
|
147
|
+
setPage((page) => page + 1);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
// 重试
|
|
153
|
+
const reTry = () => {
|
|
154
|
+
if (!isRequestingRef.current) {
|
|
155
|
+
isRequestingRef.current = true;
|
|
156
|
+
if (isSearch) {
|
|
157
|
+
setSearchStatus(Status.LOADING);
|
|
158
|
+
requestFatherRelated(searchPage, searchValue);
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
setStatus(Status.LOADING);
|
|
162
|
+
requestFatherRelated(page);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
const onSearchValue = (value) => {
|
|
167
|
+
setSearchPage(1);
|
|
168
|
+
setSearchStatus(Status.LOADING);
|
|
169
|
+
setSearchOptions([]);
|
|
170
|
+
setSearchValue(value);
|
|
171
|
+
};
|
|
172
|
+
return platform === 'h5' ? (React.createElement(SelectPickerH5, { updateValue: updateValue, options: currentOption, loadMore: loadMore, reTry: reTry, isTurnPages: isTurnPages, status: currentStatus, onSearchValue: onSearchValue, isShow: isShow, params: params, selectedValue: selectedValue })) : (React.createElement(SelectPickerPc, { placeholder: placeholder, size: size, selectedValue: selectedValue, disabled: disabled, updateValue: updateValue, reTry: reTry, loadMore: loadMore, format: format, status: currentStatus, options: currentOption, onSearchValue: onSearchValue, defaultSearchValue: '' }));
|
|
173
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import React, { useEffect, useMemo, useState } from 'react';
|
|
2
|
+
import { Select, ConfigProvider, Icon } from 'tea-component';
|
|
3
|
+
import Loading from '../status/loading';
|
|
4
|
+
import Retry from '../status/retry';
|
|
5
|
+
import { Status } from '../status';
|
|
6
|
+
import Empty from '../status/empty';
|
|
7
|
+
import './index.css';
|
|
8
|
+
export default function SelectPickerPc({ format, selectedValue, updateValue, placeholder, size, disabled, reTry, loadMore, status, options, onSearchValue, defaultSearchValue, }) {
|
|
9
|
+
const [value, setValue] = useState(selectedValue);
|
|
10
|
+
const [showDelete, setShowDelete] = useState(false);
|
|
11
|
+
useEffect(() => {
|
|
12
|
+
setValue(selectedValue);
|
|
13
|
+
}, [selectedValue]);
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
if (selectedValue) {
|
|
16
|
+
// 优先本地查找
|
|
17
|
+
const index = options === null || options === void 0 ? void 0 : options.findIndex((item) => item.value === selectedValue);
|
|
18
|
+
if (index === -1) {
|
|
19
|
+
// eslint-disable-next-line rulesdir/no-timer
|
|
20
|
+
setTimeout(() => {
|
|
21
|
+
loadMore();
|
|
22
|
+
}, 100);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
updateValue(options[index].value);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}, [options, selectedValue]);
|
|
29
|
+
const isShowBottomTips = useMemo(() => {
|
|
30
|
+
if (status === Status.LOADING) {
|
|
31
|
+
return React.createElement(Loading, null);
|
|
32
|
+
}
|
|
33
|
+
else if (status === Status.ERROR) {
|
|
34
|
+
return React.createElement(Retry, { reTry: reTry });
|
|
35
|
+
}
|
|
36
|
+
else if (status === Status.EMPTY) {
|
|
37
|
+
return React.createElement(Empty, null);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
return '';
|
|
41
|
+
}
|
|
42
|
+
}, [format, status, options]);
|
|
43
|
+
return (React.createElement(ConfigProvider, { classPrefix: "wedatea2td" },
|
|
44
|
+
React.createElement("div", { "data-testid": "form-select", className: 'form-select-pc', onMouseEnter: () => {
|
|
45
|
+
setShowDelete(true);
|
|
46
|
+
}, onMouseLeave: () => {
|
|
47
|
+
setShowDelete(false);
|
|
48
|
+
} },
|
|
49
|
+
React.createElement(Select, { searchable: true, matchButtonWidth: true, defaultSearchValue: defaultSearchValue, placeholder: placeholder, appearance: 'button', size: size, tips: "", disabled: disabled, autoClearSearchValue: true, options: options, value: value, bottomTips: isShowBottomTips, onChange: updateValue, onScrollBottom: loadMore, onOpen: () => {
|
|
50
|
+
onSearchValue('');
|
|
51
|
+
}, onSearch: (value, context) => {
|
|
52
|
+
const tValue = value.trim();
|
|
53
|
+
if (context.event.type === 'click') {
|
|
54
|
+
if (tValue !== '') {
|
|
55
|
+
// 手动点击搜索
|
|
56
|
+
onSearchValue(tValue);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
// 清空
|
|
60
|
+
onSearchValue('');
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
else if (tValue !== '') {
|
|
64
|
+
// 动态输入搜索
|
|
65
|
+
onSearchValue(tValue);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// 逐个删除
|
|
69
|
+
onSearchValue('');
|
|
70
|
+
}
|
|
71
|
+
} }),
|
|
72
|
+
value != null && value != '' && showDelete && !disabled && (React.createElement(Icon, { "data-testid": "weui-input-test-pc-clear", className: 'pc-clear', type: "dismiss", size: "s", onMouseDown: () => updateValue(null) })))));
|
|
73
|
+
}
|
|
@@ -1,55 +1,57 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
import { ConfigProvider, Select as TeaSelect, } from 'tea-component';
|
|
1
|
+
import React, { useRef, useState } from 'react';
|
|
3
2
|
import classNames from '../../../../utils/classnames';
|
|
4
3
|
import { noop } from '../../../../utils/constant';
|
|
5
|
-
import { useSyncValue } from '../../../../utils/useSyncValue';
|
|
6
|
-
import
|
|
4
|
+
import { useSyncValue } from '../../../../utils/hooks/useSyncValue';
|
|
5
|
+
import { PureSelect } from './index';
|
|
7
6
|
export function PureSelectPc(props) {
|
|
8
|
-
const { size, onChange = noop,
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}));
|
|
16
|
-
}, [props.options]);
|
|
17
|
-
return (React.createElement(ConfigProvider, { classPrefix: "wedatea2td" },
|
|
18
|
-
React.createElement("div", { "data-testid": "form-select" },
|
|
19
|
-
React.createElement(TeaSelect, { matchButtonWidth: true, size: size, onChange: (v) => {
|
|
20
|
-
onChange(v);
|
|
21
|
-
setValue(v);
|
|
22
|
-
}, disabled: disabled, value: value, type: "simulate", appearance: "button", placeholder: placeholder, options: options }))));
|
|
7
|
+
const { size, onChange = noop, value, placeholder, params, disabled } = props;
|
|
8
|
+
const previousValueRef = useRef();
|
|
9
|
+
return (React.createElement(PureSelect, { isShow: false, params: params, placeholder: placeholder, size: size, selectedValue: value, disabled: disabled, updateValue: (value) => {
|
|
10
|
+
if (previousValueRef.current !== value) {
|
|
11
|
+
onChange(value);
|
|
12
|
+
previousValueRef.current = value;
|
|
13
|
+
}
|
|
14
|
+
} }));
|
|
23
15
|
}
|
|
24
16
|
export function PureSelectH5(props) {
|
|
25
|
-
const { placeholder, name, disabled, onChange = noop,
|
|
17
|
+
const { placeholder, name, disabled, onChange = noop, layout, className, params, } = props;
|
|
26
18
|
const [value, setValue] = useSyncValue(props.value);
|
|
19
|
+
const [currentLabel, setCurrentLabel] = useState('');
|
|
20
|
+
const [isShow, setIsShow] = useState(false);
|
|
21
|
+
const previousValueRef = useRef();
|
|
27
22
|
const subCls = classNames({
|
|
28
23
|
'weui-cell': true,
|
|
29
24
|
'weui-cell_active': true,
|
|
30
25
|
'weui-cell_form': true,
|
|
31
26
|
'weui-flex__item': layout !== 'vertical',
|
|
32
27
|
'weui-cell_disabled': disabled,
|
|
33
|
-
});
|
|
28
|
+
}, className);
|
|
29
|
+
// 选择回调
|
|
30
|
+
const onChooseCallback = (option, isUpdate, dismiss) => {
|
|
31
|
+
if (dismiss) {
|
|
32
|
+
setIsShow(false);
|
|
33
|
+
}
|
|
34
|
+
if (isUpdate && previousValueRef.current !== (option === null || option === void 0 ? void 0 : option.value)) {
|
|
35
|
+
if (!option || Object.keys(option).length === 0) {
|
|
36
|
+
setValue('');
|
|
37
|
+
onChange('');
|
|
38
|
+
setCurrentLabel('');
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
setValue(option.value);
|
|
42
|
+
onChange(option.value);
|
|
43
|
+
setCurrentLabel(option.label);
|
|
44
|
+
}
|
|
45
|
+
previousValueRef.current = option === null || option === void 0 ? void 0 : option.value;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
34
48
|
const onClick = () => {
|
|
35
|
-
|
|
36
|
-
id: String(Date.now()),
|
|
37
|
-
defaultValue: [value || options[0].value],
|
|
38
|
-
onConfirm(result) {
|
|
39
|
-
const item = result[0];
|
|
40
|
-
setValue(item.value);
|
|
41
|
-
onChange(item.value);
|
|
42
|
-
},
|
|
43
|
-
className,
|
|
44
|
-
});
|
|
49
|
+
setIsShow(true);
|
|
45
50
|
};
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
return (React.createElement("div", { className: subCls },
|
|
53
|
-
React.createElement("div", { className: "weui-cell__bd weui-flex" },
|
|
54
|
-
React.createElement("input", { onClick: onClick, className: "weui-input", type: "select", name: name, placeholder: placeholder, value: currentLabel, disabled: disabled, autoComplete: 'off', readOnly: true, "data-testid": "form-item-select" }))));
|
|
51
|
+
return (React.createElement("div", null,
|
|
52
|
+
React.createElement("div", { className: subCls },
|
|
53
|
+
React.createElement("div", { className: "weui-cell__bd weui-flex select-picker", onClick: disabled ? null : onClick },
|
|
54
|
+
React.createElement("input", { className: "weui-input", type: "select", name: name, placeholder: placeholder, value: currentLabel, disabled: disabled, autoComplete: 'off', readOnly: true, "data-testid": "form-item-select" }),
|
|
55
|
+
React.createElement("span", { className: 'weui-input-arrow' }))),
|
|
56
|
+
React.createElement(PureSelect, { params: params, updateValue: onChooseCallback, selectedValue: value, isShow: isShow, size: undefined, disabled: undefined, placeholder: undefined })));
|
|
55
57
|
}
|
|
@@ -3,14 +3,13 @@ import ReactDOM from 'react-dom';
|
|
|
3
3
|
import weui from '../../../utils/weui';
|
|
4
4
|
import classNames from '../../../utils/classnames';
|
|
5
5
|
import isObjectEqual from '../../../utils/isObjectEqual';
|
|
6
|
-
import {
|
|
6
|
+
import { getAreaCode, getRegionTree, regionPicker } from './region/index';
|
|
7
7
|
import { defaultProps, moment } from './index';
|
|
8
|
-
import { timePicker, yearPicker
|
|
8
|
+
import { monthPicker, timePicker, yearPicker } from './time';
|
|
9
9
|
import { emptyObject } from '../../../utils/constant';
|
|
10
10
|
import { PureSelectH5 } from './dropdown-select/ui';
|
|
11
|
-
import { useOptions } from './use-options';
|
|
12
11
|
import AllTimePicker from './allTimePicker';
|
|
13
|
-
import { getIOSNotNaNDate } from './allTimePicker/dataUtils';
|
|
12
|
+
import { getIOSNotNaNDate, isTime } from './allTimePicker/dataUtils';
|
|
14
13
|
export default function Select({
|
|
15
14
|
// 系统属性
|
|
16
15
|
events = emptyObject,
|
|
@@ -197,6 +196,15 @@ defaultRegion, defaultMutiRegion, separator, regionType, onChange, }) {
|
|
|
197
196
|
});
|
|
198
197
|
}
|
|
199
198
|
};
|
|
199
|
+
// 默认日期设置表单事件,否则无法提交默认数据
|
|
200
|
+
React.useEffect(() => {
|
|
201
|
+
var _a;
|
|
202
|
+
if (isTime(defaultDate)) {
|
|
203
|
+
(_a = events === null || events === void 0 ? void 0 : events.change) === null || _a === void 0 ? void 0 : _a.call(events, {
|
|
204
|
+
value: new Date(getIOSNotNaNDate(defaultDate)).getTime(),
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
}, [defaultDate]);
|
|
200
208
|
const onTimeClick = function () {
|
|
201
209
|
const options = {
|
|
202
210
|
className: 'weda-ui weda-picker',
|
|
@@ -335,9 +343,8 @@ defaultRegion, defaultMutiRegion, separator, regionType, onChange, }) {
|
|
|
335
343
|
controlledValue: range,
|
|
336
344
|
};
|
|
337
345
|
}
|
|
338
|
-
const [options] = useOptions(params);
|
|
339
346
|
if (mode === 'selector') {
|
|
340
|
-
return (React.createElement(PureSelectH5, { className: "weda-ui weda-picker", name: name, value: selectedValue, placeholder: placeholder, disabled: disabled,
|
|
347
|
+
return (React.createElement(PureSelectH5, { className: "weda-ui weda-picker", name: name, value: selectedValue, placeholder: placeholder, disabled: disabled, params: params, onChange: (value) => {
|
|
341
348
|
var _a;
|
|
342
349
|
setSelectedValue(value);
|
|
343
350
|
(_a = events.change) === null || _a === void 0 ? void 0 : _a.call(events, { value });
|
|
@@ -386,6 +393,9 @@ export function decodeIsoDatetime(isoStringOrTimesnap, type, dateMode = 'day') {
|
|
|
386
393
|
// 添加默认的日期,防止格式化日期异常
|
|
387
394
|
isoStringOrTimesnap = isoStringOrTimesnap + '-01-01 08:00:00';
|
|
388
395
|
}
|
|
396
|
+
if (!isTime(isoStringOrTimesnap)) {
|
|
397
|
+
return null;
|
|
398
|
+
}
|
|
389
399
|
return moment(isoStringOrTimesnap).format(getDateModeFormat(dateMode));
|
|
390
400
|
}
|
|
391
401
|
}
|
|
@@ -26,5 +26,12 @@
|
|
|
26
26
|
padding-right: 1.14286rem;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
+
.select-picker .weui-input-arrow {
|
|
30
|
+
margin: auto 0;
|
|
31
|
+
width: 1.71429rem;
|
|
32
|
+
height: 1.71429rem;
|
|
33
|
+
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Crect opacity='0.01' width='24' height='24' fill='%23D8D8D8'/%3E %3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15.6003 12.5769L7.93943 20L6.99981 19.0875L14.3157 11.9986L6.99983 4.91249L7.93945 4L15.5754 11.3961C15.5858 11.4048 15.596 11.4139 15.6059 11.4235L15.8278 11.639C16.0302 11.8355 16.03 12.1605 15.8274 12.3568L15.6253 12.5526L15.6049 12.5725C15.6034 12.574 15.6018 12.5754 15.6003 12.5769Z' fill='black' fill-opacity='0.4'/%3E %3C/svg%3E ");
|
|
34
|
+
}
|
|
35
|
+
|
|
29
36
|
/*# sourceURL=webpack://./src/web/components/form/select/index.css */
|
|
30
|
-
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
37
|
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3NyYy93ZWIvY29tcG9uZW50cy9mb3JtL3NlbGVjdC9pbmRleC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixtQkFBbUI7RUFDbkIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsVUFBVTtFQUNWLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHdsQkFBd2xCO0FBQzFsQiIsInNvdXJjZXNDb250ZW50IjpbIi53ZWRhLXVpIC53ZXVpLWNlbGwud2V1aS1jaGVja19fbGFiZWwge1xuICBwYWRkaW5nOiAxLjE0Mjg2cmVtO1xufVxuXG4ud2VkYS11aSAud2V1aS1mbGV4X19pdGVtIC53ZXVpLWNlbGwud2V1aS1jaGVja19fbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi55ZWFyLXBpY2tlcl9fb3ZlcmxheSB7XG4gIHdpZHRoOiAyMS40Mjg1N3JlbTtcbn1cblxuLnllYXItcGlja2VyX19vdmVybGF5IC55ZWFyLXBpY2tlcl9faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ud2VkYS11aS53ZWRhLXNlbGVjdCAud2V1aS1jZWxsX2Zvcm0ge1xuICBwYWRkaW5nOiAwIDEuMTQyODZyZW07XG59XG5cbi53ZWRhLXVpLndlZGEtc2VsZWN0IC53ZXVpLWZsZXhfX2l0ZW0gLndldWktY2VsbF9mb3JtIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1yaWdodDogMS4xNDI4NnJlbTtcbn1cblxuLnNlbGVjdC1waWNrZXIgLndldWktaW5wdXQtYXJyb3cge1xuICBtYXJnaW46IGF1dG8gMDtcbiAgd2lkdGg6IDEuNzE0MjlyZW07XG4gIGhlaWdodDogMS43MTQyOXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSAlM0NyZWN0IG9wYWNpdHk9JzAuMDEnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgZmlsbD0nJTIzRDhEOEQ4Jy8lM0UgJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGNsaXAtcnVsZT0nZXZlbm9kZCcgZD0nTTE1LjYwMDMgMTIuNTc2OUw3LjkzOTQzIDIwTDYuOTk5ODEgMTkuMDg3NUwxNC4zMTU3IDExLjk5ODZMNi45OTk4MyA0LjkxMjQ5TDcuOTM5NDUgNEwxNS41NzU0IDExLjM5NjFDMTUuNTg1OCAxMS40MDQ4IDE1LjU5NiAxMS40MTM5IDE1LjYwNTkgMTEuNDIzNUwxNS44Mjc4IDExLjYzOUMxNi4wMzAyIDExLjgzNTUgMTYuMDMgMTIuMTYwNSAxNS44Mjc0IDEyLjM1NjhMMTUuNjI1MyAxMi41NTI2TDE1LjYwNDkgMTIuNTcyNUMxNS42MDM0IDEyLjU3NCAxNS42MDE4IDEyLjU3NTQgMTUuNjAwMyAxMi41NzY5WicgZmlsbD0nYmxhY2snIGZpbGwtb3BhY2l0eT0nMC40Jy8lM0UgJTNDL3N2ZyUzRSBcIik7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */
|
|
@@ -4,16 +4,15 @@ import 'moment/locale/zh-cn';
|
|
|
4
4
|
import { usePlatform } from '../../../utils/platform';
|
|
5
5
|
import SelectH5, { decodeIsoDatetime } from './h5';
|
|
6
6
|
import classNames from '../../../utils/classnames';
|
|
7
|
-
import {
|
|
7
|
+
import { Cascader, ConfigProvider, DatePicker, TimePicker, } from 'tea-component';
|
|
8
8
|
import isObjectEqual from '../../../utils/isObjectEqual';
|
|
9
9
|
import { renderDecorator } from '../renderDecorator';
|
|
10
10
|
import YearPicker from './year';
|
|
11
11
|
import { emptyObject } from '../../../utils/constant';
|
|
12
|
-
import {
|
|
13
|
-
import { useOptions } from './use-options';
|
|
14
|
-
import { getRegionTree, getAreaCode } from './region';
|
|
12
|
+
import { getAreaCode, getRegionTree } from './region';
|
|
15
13
|
import { CommonErrorBoundary } from '../../common/error-boundary';
|
|
16
14
|
import { useLoopRenderDetect } from '../../common/use-loop-render-detect';
|
|
15
|
+
import { PureSelectPc } from './dropdown-select/ui';
|
|
17
16
|
// @ts-ignore TODO: fix 与plugin构建阶段效果不同
|
|
18
17
|
export const moment = (typeof _moment === 'function' ? _moment : _moment.default);
|
|
19
18
|
export default function Select(props) {
|
|
@@ -98,7 +97,6 @@ function SelectPc({ where, dataSourceName, viewId, format, primaryField, enumNam
|
|
|
98
97
|
controlledValue: range,
|
|
99
98
|
};
|
|
100
99
|
}
|
|
101
|
-
const [options] = useOptions(params);
|
|
102
100
|
React.useEffect(() => {
|
|
103
101
|
var _a, _b, _c, _d, _e;
|
|
104
102
|
let hasChange = false;
|
|
@@ -182,12 +180,12 @@ function SelectPc({ where, dataSourceName, viewId, format, primaryField, enumNam
|
|
|
182
180
|
const createDropdown = () => {
|
|
183
181
|
switch (mode) {
|
|
184
182
|
case 'selector':
|
|
185
|
-
return (React.createElement(PureSelectPc, { disabled: disabled, size: size, onChange: (value) => {
|
|
183
|
+
return (React.createElement(PureSelectPc, { params: params, disabled: disabled, placeholder: placeholder, size: size, value: selectedValue, onChange: (value) => {
|
|
186
184
|
var _a;
|
|
187
185
|
onChange && onChange(value);
|
|
188
186
|
(_a = events === null || events === void 0 ? void 0 : events.change) === null || _a === void 0 ? void 0 : _a.call(events, { value });
|
|
189
187
|
setSelectedValue(value);
|
|
190
|
-
}
|
|
188
|
+
} }));
|
|
191
189
|
case 'date': {
|
|
192
190
|
const now = moment();
|
|
193
191
|
const start = startDate
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import destr from 'destr';
|
|
2
|
+
import { getWhereList } from '../../../utils/platform';
|
|
3
|
+
import { callDataSource, callWedaApi } from '../../../utils/tcb';
|
|
4
|
+
export const formatNeedDataFetch = [
|
|
5
|
+
'father-son',
|
|
6
|
+
'related',
|
|
7
|
+
'x-enum',
|
|
8
|
+
];
|
|
9
|
+
export const PAGE_SIZE = 200;
|
|
10
|
+
export const RequestOptionType = {
|
|
11
|
+
ALL: 0,
|
|
12
|
+
SEARCH: 1,
|
|
13
|
+
EQUAL: 2,
|
|
14
|
+
};
|
|
15
|
+
function isEmpty(s) {
|
|
16
|
+
if (s == null || s === '') {
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
export const requestFatherRelatedOption = async (params, pageNo, type, searchValue) => {
|
|
22
|
+
const { dataSourceName, viewId, where, primaryField } = params;
|
|
23
|
+
const empty = {
|
|
24
|
+
option: [],
|
|
25
|
+
isLoadMore: false,
|
|
26
|
+
};
|
|
27
|
+
if (isEmpty(dataSourceName) || isEmpty(viewId)) {
|
|
28
|
+
return empty;
|
|
29
|
+
}
|
|
30
|
+
let realWhere;
|
|
31
|
+
if (type === RequestOptionType.SEARCH) {
|
|
32
|
+
realWhere = [{ key: primaryField, val: searchValue, rel: 'search' }];
|
|
33
|
+
}
|
|
34
|
+
else if (type === RequestOptionType.EQUAL) {
|
|
35
|
+
realWhere = [{ key: '_id', val: searchValue, rel: 'eq' }];
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
realWhere = [].concat(getWhereList(where));
|
|
39
|
+
}
|
|
40
|
+
const data = await callDataSource({
|
|
41
|
+
dataSourceName: dataSourceName,
|
|
42
|
+
viewId: viewId,
|
|
43
|
+
methodName: 'wedaGetRecords',
|
|
44
|
+
params: {
|
|
45
|
+
pageNo: pageNo,
|
|
46
|
+
pageSize: PAGE_SIZE,
|
|
47
|
+
where: realWhere,
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
const results = data === null || data === void 0 ? void 0 : data.records;
|
|
51
|
+
if (primaryField) {
|
|
52
|
+
if (results && results.length !== 0) {
|
|
53
|
+
const option = results.map((item) => {
|
|
54
|
+
return {
|
|
55
|
+
label: item[primaryField] || item._id,
|
|
56
|
+
value: item._id,
|
|
57
|
+
};
|
|
58
|
+
});
|
|
59
|
+
return {
|
|
60
|
+
option,
|
|
61
|
+
isLoadMore: results.length === PAGE_SIZE,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
if (results && results.length === 0) {
|
|
65
|
+
return empty;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
const defaultData = results === null || results === void 0 ? void 0 : results.map((opt) => ({
|
|
69
|
+
option: [{ label: opt._id, value: opt._id }],
|
|
70
|
+
})); // 兜底 正常来说一定有primaryField
|
|
71
|
+
return !isEmpty(defaultData)
|
|
72
|
+
? { option: defaultData, isLoadMore: false }
|
|
73
|
+
: Promise.reject('network error');
|
|
74
|
+
};
|
|
75
|
+
export const requestEnumOption = async (params) => {
|
|
76
|
+
var _a, _b, _c;
|
|
77
|
+
// 如果绑定字段类型为枚举,且传入自定义选项集的名称则默认使用自定义选项集的内容作为选项
|
|
78
|
+
const { enumName } = params;
|
|
79
|
+
if (isEmpty(enumName)) {
|
|
80
|
+
return [];
|
|
81
|
+
}
|
|
82
|
+
const data = await callWedaApi({
|
|
83
|
+
action: 'DescribeGeneralOptionsDetailList',
|
|
84
|
+
data: {
|
|
85
|
+
OptNameList: [enumName],
|
|
86
|
+
PageIndex: 1,
|
|
87
|
+
PageSize: 10, // 表示选项集个数,不是每个选项集拉下来的数据,单个选项集所以数据都被返回
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
const config = (_c = destr((_b = (_a = data === null || data === void 0 ? void 0 : data.Items) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.Config)) !== null && _c !== void 0 ? _c : [];
|
|
91
|
+
const enumOption = config === null || config === void 0 ? void 0 : config.map((item) => {
|
|
92
|
+
return {
|
|
93
|
+
label: item.value,
|
|
94
|
+
value: item.key,
|
|
95
|
+
};
|
|
96
|
+
});
|
|
97
|
+
return enumOption || [];
|
|
98
|
+
};
|
|
99
|
+
export const transFormatTeaSelectKey = (options) => {
|
|
100
|
+
return options.map((item) => {
|
|
101
|
+
return {
|
|
102
|
+
value: item.value,
|
|
103
|
+
text: item.label,
|
|
104
|
+
};
|
|
105
|
+
});
|
|
106
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import './index.css';
|
|
3
|
+
import { usePlatform } from '../../../../utils/platform';
|
|
4
|
+
export default function Empty({ height }) {
|
|
5
|
+
const platform = usePlatform();
|
|
6
|
+
const loadingHeight = useMemo(() => {
|
|
7
|
+
if (height) {
|
|
8
|
+
return height;
|
|
9
|
+
}
|
|
10
|
+
if (platform === 'h5') {
|
|
11
|
+
return '48px';
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
return '21px';
|
|
15
|
+
}
|
|
16
|
+
}, [platform]);
|
|
17
|
+
return (React.createElement("div", { className: "weda-ui-custom-picker__status weda-ui-custom-picker__status--empty", style: { height: loadingHeight, lineHeight: loadingHeight } }, "\u6682\u65E0\u6570\u636E"));
|
|
18
|
+
}
|