@cloudbase/weda-ui 2.0.9 → 2.0.12
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 +1 -0
- package/package.json +13 -5
- package/src/configs/components/button.json +60 -13
- package/src/configs/components/calendar.json +3 -3
- package/src/configs/components/carousel.json +57 -47
- package/src/configs/components/chart/bar.json +4 -13
- package/src/configs/components/chart/line.json +4 -13
- package/src/configs/components/chart/pie.json +3 -10
- package/src/configs/components/chart/statisticsCard.json +1 -4
- package/src/configs/components/container.json +1 -3
- package/src/configs/components/dataView.json +7 -15
- package/src/configs/components/drawer.json +24 -6
- package/src/configs/components/form/form.json +19 -0
- package/src/configs/components/form/input.json +20 -5
- package/src/configs/components/form/location.json +51 -48
- package/src/configs/components/form/radio.json +1 -3
- package/src/configs/components/form/richText.json +14 -14
- package/src/configs/components/form/select.json +62 -82
- package/src/configs/components/form/textarea.json +6 -1
- package/src/configs/components/form/uploader.json +64 -64
- package/src/configs/components/form/uploaderFile.json +1 -2
- package/src/configs/components/graphicCard.json +43 -44
- package/src/configs/components/image.json +44 -40
- package/src/configs/components/link.json +5 -10
- package/src/configs/components/listView.json +2 -8
- package/src/configs/components/lottery.json +7 -3
- package/src/configs/components/modal.json +26 -21
- package/src/configs/components/navLayout.json +66 -67
- package/src/configs/components/navigationBar.json +4 -1
- package/src/configs/components/richtextview.json +1 -1
- package/src/configs/components/scrollVeiw.json +14 -42
- package/src/configs/components/swiper.json +9 -9
- package/src/configs/components/wedaVideo.json +86 -0
- package/src/configs/components/wxOpenApi/phone.json +7 -21
- package/src/configs/components/wxOpenApi/phoneCode.json +7 -19
- package/src/configs/components/wxOpenApi/share.json +14 -24
- package/src/configs/components/wxOpenApi/userInfo.json +9 -27
- package/src/configs/index.js +2 -0
- package/src/docs/common/format.tsx +4 -1
- package/src/docs/common/tableView.css +3 -3
- package/src/docs/common/tableView.tsx +18 -8
- package/src/docs/compsdocs/form/FormLocation.mdx +1 -1
- package/src/docs/compsdocs/form/FormSelect.mdx +0 -1
- package/src/docs/compsdocs/grid/Card.mdx +0 -1
- package/src/docs/compsdocs/grid/Container.mdx +0 -1
- package/src/docs/compsdocs/grid/GridLayout.mdx +0 -1
- package/src/docs/compsdocs/grid/ScrollView.mdx +2 -2
- package/src/docs/compsdocs/grid/Swiper.mdx +1 -2
- package/src/docs/compsdocs/media/Icon.mdx +1 -1
- package/src/docs/compsdocs/media/Image.mdx +6 -6
- package/src/docs/compsdocs/model/ModelCreate.mdx +24 -0
- package/src/docs/compsdocs/model/ModelDetail.mdx +24 -0
- package/src/docs/compsdocs/model/ModelTable.mdx +133 -1
- package/src/docs/compsdocs/model/ModelUpdate.mdx +24 -1
- package/src/docs/compsdocs/navmenu/Classification.mdx +2 -3
- package/src/docs/compsdocs/navmenu/NavBar.mdx +14 -5
- package/src/docs/compsdocs/navmenu/NavLayout.mdx +0 -1
- package/src/docs/compsdocs/navmenu/TabBar.mdx +3 -3
- package/src/docs/compsdocs/navmenu/TabBarItem.mdx +1 -1
- package/src/docs/compsdocs/senior/Lottery.mdx +3 -6
- package/src/docs/compsdocs/senior/Modal.mdx +2 -3
- package/src/docs/compsdocs/senior/SlotMachine.mdx +2 -5
- package/src/docs/compsdocs/senior/_category_.json +1 -1
- package/src/docs/compsdocs/show/GraphicCard.mdx +0 -1
- package/src/docs/compsdocs/show/Item.mdx +0 -1
- package/src/docs/compsdocs/show/ItemList.mdx +1 -0
- package/src/docs/compsdocs/show/Tabs.mdx +2 -3
- package/src/docs/compsdocs/text/Link.mdx +1 -1
- package/src/docs/compsdocs/text/RichTextView.mdx +1 -2
- package/src/docs/compsdocs/text/Text.mdx +1 -1
- package/src/docs/compsdocs/text/Title.mdx +1 -2
- package/src/docs/compsdocs/wxOpen/Phone.mdx +1 -2
- package/src/docs/compsdocs/wxOpen/Share.mdx +0 -1
- package/src/docs/compsdocs/wxOpen/UserInfo.mdx +1 -2
- package/src/mp/components/button/index.js +1 -1
- package/src/mp/components/button/index.wxml +19 -19
- package/src/mp/components/calendar/index.js +64 -37
- package/src/mp/components/calendar/index.json +1 -1
- package/src/mp/components/calendar/index.wxml +4 -6
- package/src/mp/components/carousel/index.json +1 -1
- package/src/mp/components/carousel/index.wxml +2 -2
- package/src/mp/components/chart/bar/index.js +1 -2
- package/src/mp/components/chart/bar/index.wxml +1 -1
- package/src/mp/components/chart/common/config/bar.js +1 -1
- package/src/mp/components/chart/common/core/eChartBar.js +29 -34
- package/src/mp/components/chart/common/core/eChartBase.js +46 -32
- package/src/mp/components/chart/common/core/eChartLine.js +34 -40
- package/src/mp/components/chart/common/core/eChartPie.js +12 -9
- package/src/mp/components/chart/ec-canvas/ec-canvas.json +1 -1
- package/src/mp/components/chart/ec-canvas/wx-canvas.js +24 -22
- package/src/mp/components/chart/line/index.js +2 -2
- package/src/mp/components/chart/line/index.wxml +1 -1
- package/src/mp/components/chart/pie/index.js +1 -1
- package/src/mp/components/chart/pie/index.wxml +1 -2
- package/src/mp/components/dataView/index.wxml +2 -14
- package/src/mp/components/form/checkbox/index.js +10 -6
- package/src/mp/components/form/checkbox/index.wxml +13 -25
- package/src/mp/components/form/form/index.wxml +3 -3
- package/src/mp/components/form/formcell/index.wxml +9 -9
- package/src/mp/components/form/formcell/index.wxss +6 -1
- package/src/mp/components/form/input/index.js +3 -3
- package/src/mp/components/form/input/index.wxml +24 -31
- package/src/mp/components/form/input/index.wxss +9 -3
- package/src/mp/components/form/location/components/mapChoose/index.json +1 -1
- package/src/mp/components/form/location/components/mapChoose/index.wxml +6 -6
- package/src/mp/components/form/location/index.js +7 -1
- package/src/mp/components/form/location/index.json +1 -1
- package/src/mp/components/form/location/index.wxml +6 -10
- package/src/mp/components/form/radio/index.js +9 -5
- package/src/mp/components/form/radio/index.wxml +12 -24
- package/src/mp/components/form/select/index.js +156 -97
- package/src/mp/components/form/select/index.wxml +11 -39
- package/src/mp/components/form/select/index.wxss +14 -3
- package/src/mp/components/form/select/region/index.js +18 -12
- package/src/mp/components/form/switch/index.wxml +11 -18
- package/src/mp/components/form/textarea/index.wxml +2 -17
- package/src/mp/components/form/textarea/index.wxss +5 -0
- package/src/mp/components/form/tips/index.wxml +1 -3
- package/src/mp/components/form/uploader/index.js +1 -1
- package/src/mp/components/form/uploader/index.wxml +3 -20
- package/src/mp/components/form/uploader/weui-uploader.js +210 -200
- package/src/mp/components/form/uploader/weui-uploader.json +6 -6
- package/src/mp/components/form/uploader/weui-uploader.wxml +38 -38
- package/src/mp/components/form/uploaderFile/index.js +5 -4
- package/src/mp/components/form/uploaderFile/index.wxml +40 -41
- package/src/mp/components/graphicCard/index.js +35 -35
- package/src/mp/components/graphicCard/index.wxml +2 -6
- package/src/mp/components/image/index.wxml +9 -20
- package/src/mp/components/image/index.wxss +3 -1
- package/src/mp/components/listView/index.wxml +5 -7
- package/src/mp/components/lottery/index.wxml +1 -3
- package/src/mp/components/lottery/index.wxss +31 -25
- package/src/mp/components/navLayout/index.js +9 -12
- package/src/mp/components/navLayout/index.wxml +2 -4
- package/src/mp/components/navigationBar/index.json +1 -2
- package/src/mp/components/navigationBar/index.wxml +43 -51
- package/src/mp/components/swiper/index.wxml +1 -9
- package/src/mp/components/tabs/index.js +14 -10
- package/src/mp/components/tabs/index.json +1 -1
- package/src/mp/components/tabs/index.wxml +3 -21
- package/src/mp/components/text/index.wxml +1 -6
- package/src/mp/components/text/index.wxss +1 -1
- package/src/mp/components/wedaVideo/index.js +86 -0
- package/src/mp/components/wedaVideo/index.json +4 -0
- package/src/mp/components/wedaVideo/index.wxml +4 -0
- package/src/mp/components/wedaVideo/index.wxss +20 -0
- package/src/mp/components/wxOpenApi/phone/index.js +1 -9
- package/src/mp/components/wxOpenApi/phone/index.wxml +3 -14
- package/src/mp/components/wxOpenApi/phoneCode/index.json +1 -1
- package/src/mp/components/wxOpenApi/phoneCode/index.wxml +3 -14
- package/src/mp/components/wxOpenApi/share/index.wxml +3 -14
- package/src/mp/components/wxOpenApi/userInfo/index.wxml +3 -13
- package/src/mp/index.json +1 -0
- package/src/mp/style/weda-ui.wxss +20 -7
- package/src/mp/utils/deepEqual.js +37 -37
- package/src/mp/utils/destr.js +41 -40
- package/src/mp/utils/dr_square_point.js +10 -6
- package/src/setupTests.js +13 -13
- package/src/web/actions/showModal/index.tsx +5 -4
- package/src/web/components/button/index.tsx +44 -40
- package/src/web/components/calendar/index.css +81 -34
- package/src/web/components/carousel/index.tsx +1 -1
- package/src/web/components/chart/common/config/bar.js +1 -1
- package/src/web/components/chart/common/core/eChartBar.js +28 -34
- package/src/web/components/chart/common/core/eChartBase.ts +55 -42
- package/src/web/components/chart/common/core/eChartLine.js +34 -40
- package/src/web/components/chart/common/core/eChartPie.js +12 -9
- package/src/web/components/chart/common/core/type.ts +23 -23
- package/src/web/components/chart/common/echart.css +12 -12
- package/src/web/components/chart/common/echarts.ts +3 -5
- package/src/web/components/chart/common/useChart.tsx +34 -16
- package/src/web/components/container/index.tsx +3 -4
- package/src/web/components/drawer/index.tsx +15 -4
- package/src/web/components/form/checkbox/index.tsx +32 -31
- package/src/web/components/form/enumSelect/NormalSelect.tsx +0 -2
- package/src/web/components/form/form/index.css +3 -6
- package/src/web/components/form/form/index.tsx +7 -6
- package/src/web/components/form/formcell/index.css +10 -4
- package/src/web/components/form/formcell/index.tsx +3 -7
- package/src/web/components/form/input/index.css +4 -4
- package/src/web/components/form/input/index.tsx +61 -53
- package/src/web/components/form/location/common/selectModal.jsx +2 -11
- package/src/web/components/form/location/common/useLocationInfo.js +4 -0
- package/src/web/components/form/location/components/LocationH5/index.css +0 -1
- package/src/web/components/form/location/components/LocationH5/location.h5.jsx +11 -1
- package/src/web/components/form/location/components/LocationPC/Header.jsx +0 -13
- package/src/web/components/form/location/components/LocationPC/location.PC.jsx +14 -5
- package/src/web/components/form/radio/index.tsx +32 -26
- package/src/web/components/form/renderDecorator.tsx +23 -26
- package/src/web/components/form/select/h5.tsx +154 -103
- package/src/web/components/form/select/index.css +9 -3
- package/src/web/components/form/select/index.tsx +75 -48
- package/src/web/components/form/select/region/index.ts +101 -80
- package/src/web/components/form/select/year.tsx +2 -0
- package/src/web/components/form/switch/index.tsx +40 -40
- package/src/web/components/form/textarea/index.css +4 -0
- package/src/web/components/form/textarea/index.tsx +27 -26
- package/src/web/components/form/types.d.ts +10 -10
- package/src/web/components/form/uploader/uploader.h5.tsx +26 -20
- package/src/web/components/form/uploaderFile/index.jsx +0 -5
- package/src/web/components/form/uploaderFile/uploadFile.h5.tsx +15 -11
- package/src/web/components/form/uploaderFile/uploadFile.pc.tsx +14 -9
- package/src/web/components/image/image.tsx +2 -2
- package/src/web/components/image/index.css +9 -7
- package/src/web/components/image/index.tsx +29 -12
- package/src/web/components/index.js +1 -0
- package/src/web/components/link/index.tsx +13 -13
- package/src/web/components/lottery/index.css +43 -37
- package/src/web/components/lottery/index.tsx +2 -2
- package/src/web/components/modal/index.tsx +34 -34
- package/src/web/components/navLayout/index.tsx +1 -1
- package/src/web/components/navigationBar/index.tsx +2 -2
- package/src/web/components/picker/datePicker.tsx +3 -3
- package/src/web/components/picker/picker.tsx +3 -3
- package/src/web/components/picker/timePicker.tsx +1 -1
- package/src/web/components/richText/index.jsx +41 -46
- package/src/web/components/richTextView/index.tsx +4 -6
- package/src/web/components/scrollView/index.tsx +2 -2
- package/src/web/components/slot/index.tsx +3 -4
- package/src/web/components/swiper/index.css +1 -1
- package/src/web/components/swiper/index.tsx +33 -15
- package/src/web/components/tabs/index.css +1 -1
- package/src/web/components/tabs/index.tsx +6 -6
- package/src/web/components/tabs/tabs.h5.tsx +17 -12
- package/src/web/components/tabs/tabs.pc.tsx +45 -34
- package/src/web/components/text/index.css +1 -1
- package/src/web/components/text/index.tsx +13 -14
- package/src/web/components/wedaVideo/index.css +42 -0
- package/src/web/components/wedaVideo/index.tsx +198 -0
- package/src/web/utils/constant.ts +2 -1
- package/src/web/utils/isObjectEqual.js +2 -1
- package/src/web/utils/loading-fallback.tsx +2 -2
- package/src/web/utils/lodash.ts +1 -1
- package/src/web/utils/useSetState.ts +6 -2
- package/src/web/weda-ui.css +17 -0
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
ConfigProvider,
|
|
12
12
|
} from 'tea-component';
|
|
13
13
|
import isObjectEqual from '../../../utils/isObjectEqual';
|
|
14
|
-
import { getRegionTree,getAreaCode } from './region';
|
|
14
|
+
import { getRegionTree, getAreaCode } from './region';
|
|
15
15
|
import { renderDecorator } from '../renderDecorator';
|
|
16
16
|
import type { CommonFormPropsType } from '../types';
|
|
17
17
|
import YearPicker from './year';
|
|
@@ -90,7 +90,7 @@ export default function Select(props) {
|
|
|
90
90
|
export interface PropsType extends CommonFormPropsType {
|
|
91
91
|
size: 's' | 'm' | 'l' | 'full';
|
|
92
92
|
placeholder: string;
|
|
93
|
-
mode: 'selector' | 'date' | 'time' | 'region'| 'mutiRegion';
|
|
93
|
+
mode: 'selector' | 'date' | 'time' | 'region' | 'mutiRegion';
|
|
94
94
|
dateMode: 'day' | 'month' | 'year';
|
|
95
95
|
// selector mode
|
|
96
96
|
range?: any[];
|
|
@@ -132,8 +132,8 @@ export interface PropsType extends CommonFormPropsType {
|
|
|
132
132
|
regionType?: 'levelOne' | 'levelTwo' | 'levelThree';
|
|
133
133
|
separator?: string;
|
|
134
134
|
requiredFlag?: boolean;
|
|
135
|
-
regionTree?:any[]
|
|
136
|
-
defaultMutiRegion?:string;
|
|
135
|
+
regionTree?: any[];
|
|
136
|
+
defaultMutiRegion?: string;
|
|
137
137
|
onChange?: (v: any) => void; // 配合 fomily 受控使用
|
|
138
138
|
}
|
|
139
139
|
|
|
@@ -170,7 +170,7 @@ function SelectPc({
|
|
|
170
170
|
placeholder = '请选择',
|
|
171
171
|
mode = 'selector',
|
|
172
172
|
dateMode = 'day',
|
|
173
|
-
events = {change: null },
|
|
173
|
+
events = { change: null },
|
|
174
174
|
disabled = false,
|
|
175
175
|
range = defaultProps.range,
|
|
176
176
|
startDate,
|
|
@@ -184,7 +184,7 @@ function SelectPc({
|
|
|
184
184
|
regionType,
|
|
185
185
|
separator = defaultProps.separator,
|
|
186
186
|
size = defaultProps.size,
|
|
187
|
-
onChange
|
|
187
|
+
onChange,
|
|
188
188
|
}: PropsType) {
|
|
189
189
|
// 两次默认值不同, 需要刷新
|
|
190
190
|
const prevDefaultRef = React.useRef<any>();
|
|
@@ -194,10 +194,12 @@ function SelectPc({
|
|
|
194
194
|
const [time, setTime] = React.useState(
|
|
195
195
|
decodeIsoDatetime(defaultTime, 'time')
|
|
196
196
|
);
|
|
197
|
-
const [regionTree,setRegionTree] = React.useState([]);
|
|
198
|
-
const [regionData,setRegionData] = React.useState([]);
|
|
197
|
+
const [regionTree, setRegionTree] = React.useState([]);
|
|
198
|
+
const [regionData, setRegionData] = React.useState([]);
|
|
199
199
|
const [region, setRegion] = React.useState(defaultRegion || undefined);
|
|
200
|
-
const [mutiRegion, setMutiRegion] = React.useState(
|
|
200
|
+
const [mutiRegion, setMutiRegion] = React.useState(
|
|
201
|
+
defaultMutiRegion != null ? defaultMutiRegion.split(',') : []
|
|
202
|
+
);
|
|
201
203
|
const [selectedValue, setSelectedValue] = React.useState(defaultValue);
|
|
202
204
|
|
|
203
205
|
const [option, setOption] = React.useState([]);
|
|
@@ -206,12 +208,16 @@ function SelectPc({
|
|
|
206
208
|
React.useEffect(() => {
|
|
207
209
|
// 筛选参数
|
|
208
210
|
const whereEffected = [].concat(getWhereList(where));
|
|
209
|
-
if (
|
|
211
|
+
if (
|
|
212
|
+
(format === 'father-son' || format === 'related') &&
|
|
213
|
+
dataSourceName &&
|
|
214
|
+
viewId
|
|
215
|
+
) {
|
|
210
216
|
fetchData({
|
|
211
217
|
dataSourceName: dataSourceName,
|
|
212
218
|
viewId: viewId,
|
|
213
219
|
methodName: 'wedaGetRecords',
|
|
214
|
-
params: whereEffected
|
|
220
|
+
params: whereEffected,
|
|
215
221
|
});
|
|
216
222
|
}
|
|
217
223
|
}, [where]);
|
|
@@ -219,10 +225,10 @@ function SelectPc({
|
|
|
219
225
|
// 获取数据列表中主列字段,将其作为选项
|
|
220
226
|
React.useEffect(() => {
|
|
221
227
|
if (records && records.length !== 0 && primaryField) {
|
|
222
|
-
const option = records.map(item => {
|
|
228
|
+
const option = records.map((item) => {
|
|
223
229
|
return {
|
|
224
230
|
label: item[primaryField],
|
|
225
|
-
value: item._id
|
|
231
|
+
value: item._id,
|
|
226
232
|
};
|
|
227
233
|
});
|
|
228
234
|
setOption(option);
|
|
@@ -231,10 +237,10 @@ function SelectPc({
|
|
|
231
237
|
|
|
232
238
|
// 获取数据源列表
|
|
233
239
|
const fetchData = async (param: {
|
|
234
|
-
dataSourceName?: string
|
|
235
|
-
viewId?: string
|
|
236
|
-
methodName?: string
|
|
237
|
-
params?: any
|
|
240
|
+
dataSourceName?: string;
|
|
241
|
+
viewId?: string;
|
|
242
|
+
methodName?: string;
|
|
243
|
+
params?: any;
|
|
238
244
|
}) => {
|
|
239
245
|
let pageNo = 1;
|
|
240
246
|
let pageSize = 200;
|
|
@@ -256,7 +262,6 @@ function SelectPc({
|
|
|
256
262
|
total = data?.total || 0;
|
|
257
263
|
records = records.concat(data?.records);
|
|
258
264
|
}
|
|
259
|
-
|
|
260
265
|
}
|
|
261
266
|
|
|
262
267
|
if (records) {
|
|
@@ -272,15 +277,17 @@ function SelectPc({
|
|
|
272
277
|
}, [enumName]);
|
|
273
278
|
|
|
274
279
|
// 获取自定义选项集
|
|
275
|
-
const fetchEnumData = async (param:
|
|
276
|
-
|
|
277
|
-
|
|
280
|
+
const fetchEnumData = async (param: {
|
|
281
|
+
OptNameList?: object;
|
|
282
|
+
PageIndex?: number;
|
|
283
|
+
PageSize?: number;
|
|
284
|
+
}) => {
|
|
278
285
|
let data = await callWedaApi({
|
|
279
286
|
action: 'DescribeGeneralOptionsDetailList',
|
|
280
287
|
data: param,
|
|
281
288
|
});
|
|
282
289
|
const config = destr(data?.Items?.[0]?.Config) ?? [];
|
|
283
|
-
const enumOption = config.map(item => {
|
|
290
|
+
const enumOption = config.map((item) => {
|
|
284
291
|
return {
|
|
285
292
|
label: item.value,
|
|
286
293
|
value: item.key,
|
|
@@ -308,8 +315,13 @@ function SelectPc({
|
|
|
308
315
|
setRegion(defaultRegion || []); // region 有可能是空串
|
|
309
316
|
hasChange = true;
|
|
310
317
|
}
|
|
311
|
-
if (
|
|
312
|
-
|
|
318
|
+
if (
|
|
319
|
+
!isObjectEqual(
|
|
320
|
+
prevDefaultRef.current?.defaultMutiRegion,
|
|
321
|
+
defaultMutiRegion
|
|
322
|
+
)
|
|
323
|
+
) {
|
|
324
|
+
setMutiRegion(defaultMutiRegion ? defaultMutiRegion.split(',') : []);
|
|
313
325
|
hasChange = true;
|
|
314
326
|
}
|
|
315
327
|
if (hasChange) {
|
|
@@ -317,29 +329,29 @@ function SelectPc({
|
|
|
317
329
|
defaultDate,
|
|
318
330
|
defaultTime,
|
|
319
331
|
defaultRegion,
|
|
320
|
-
defaultMutiRegion
|
|
332
|
+
defaultMutiRegion,
|
|
321
333
|
};
|
|
322
334
|
}
|
|
323
335
|
});
|
|
324
|
-
const regionTreeMode = React.useMemo(()=>{
|
|
325
|
-
if(mode=='region'||mode=='mutiRegion'){
|
|
326
|
-
if(regionData.length<1){
|
|
327
|
-
getAreaCode().then((value)=>{
|
|
336
|
+
const regionTreeMode = React.useMemo(() => {
|
|
337
|
+
if (mode == 'region' || mode == 'mutiRegion') {
|
|
338
|
+
if (regionData.length < 1) {
|
|
339
|
+
getAreaCode().then((value) => {
|
|
328
340
|
setRegionData(value);
|
|
329
|
-
getRegionTree(value,regionType,mode).then(tree=>{
|
|
341
|
+
getRegionTree(value, regionType, mode).then((tree) => {
|
|
330
342
|
setRegionTree(tree);
|
|
331
343
|
});
|
|
332
344
|
});
|
|
333
|
-
}else{
|
|
334
|
-
getRegionTree(regionData,regionType,mode).then(tree=>{
|
|
345
|
+
} else {
|
|
346
|
+
getRegionTree(regionData, regionType, mode).then((tree) => {
|
|
335
347
|
setRegionTree(tree);
|
|
336
348
|
});
|
|
337
349
|
}
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
},[regionType,mode,regionData]);
|
|
350
|
+
}
|
|
351
|
+
getRegionTree(regionData, regionType, mode).then((value) => {
|
|
352
|
+
setRegionTree(value);
|
|
353
|
+
});
|
|
354
|
+
}, [regionType, mode, regionData]);
|
|
343
355
|
const onDataChange = (value) => {
|
|
344
356
|
let finalVal;
|
|
345
357
|
if (mode === 'date') {
|
|
@@ -352,17 +364,21 @@ function SelectPc({
|
|
|
352
364
|
} else if (mode === 'mutiRegion') {
|
|
353
365
|
finalVal = value.join(',');
|
|
354
366
|
setMutiRegion(value);
|
|
355
|
-
}
|
|
367
|
+
} else {
|
|
356
368
|
finalVal = value;
|
|
357
369
|
}
|
|
358
370
|
onChange && onChange(finalVal);
|
|
359
371
|
events?.change?.({ value: finalVal });
|
|
360
372
|
};
|
|
373
|
+
const sizeClassName = classNames({
|
|
374
|
+
[`size-${size}`]: size,
|
|
375
|
+
});
|
|
376
|
+
|
|
361
377
|
const createDropdown = () => {
|
|
362
378
|
switch (mode) {
|
|
363
379
|
case 'selector':
|
|
364
380
|
return (
|
|
365
|
-
<div data-testid="form-select"
|
|
381
|
+
<div data-testid="form-select">
|
|
366
382
|
<TeaSelect
|
|
367
383
|
matchButtonWidth
|
|
368
384
|
size={size}
|
|
@@ -372,8 +388,15 @@ function SelectPc({
|
|
|
372
388
|
type="simulate"
|
|
373
389
|
appearance="button"
|
|
374
390
|
placeholder={placeholder}
|
|
375
|
-
options={
|
|
376
|
-
|
|
391
|
+
options={
|
|
392
|
+
format === 'father-son' ||
|
|
393
|
+
format === 'related' ||
|
|
394
|
+
format === 'x-enum'
|
|
395
|
+
? option.map((i) => ({ text: i.label, value: i.value }))
|
|
396
|
+
: range.map((i) => ({ text: i.label, value: i.value }))
|
|
397
|
+
}
|
|
398
|
+
/>
|
|
399
|
+
</div>
|
|
377
400
|
);
|
|
378
401
|
case 'date': {
|
|
379
402
|
const now = moment();
|
|
@@ -390,6 +413,7 @@ function SelectPc({
|
|
|
390
413
|
placeholder,
|
|
391
414
|
value: date ? moment(date) : undefined,
|
|
392
415
|
'data-testid': 'form-item-select',
|
|
416
|
+
size,
|
|
393
417
|
};
|
|
394
418
|
if (dateMode === 'year') {
|
|
395
419
|
return (
|
|
@@ -402,9 +426,11 @@ function SelectPc({
|
|
|
402
426
|
/>
|
|
403
427
|
);
|
|
404
428
|
} else if (dateMode === 'month') {
|
|
405
|
-
return
|
|
429
|
+
return (
|
|
430
|
+
<DatePicker.MonthPicker className={sizeClassName} {...dateProps} />
|
|
431
|
+
);
|
|
406
432
|
} else {
|
|
407
|
-
return <DatePicker {...dateProps} />;
|
|
433
|
+
return <DatePicker className={sizeClassName} {...dateProps} />;
|
|
408
434
|
}
|
|
409
435
|
}
|
|
410
436
|
case 'time': {
|
|
@@ -414,6 +440,7 @@ function SelectPc({
|
|
|
414
440
|
const end = endTime ? decodeIsoDatetime(endTime, 'time') : '23:59';
|
|
415
441
|
return (
|
|
416
442
|
<TimePicker
|
|
443
|
+
className={sizeClassName}
|
|
417
444
|
onChange={onDataChange}
|
|
418
445
|
disabled={disabled}
|
|
419
446
|
placeholder={placeholder}
|
|
@@ -433,6 +460,7 @@ function SelectPc({
|
|
|
433
460
|
data={regionTree}
|
|
434
461
|
multiple={false}
|
|
435
462
|
onChange={onDataChange}
|
|
463
|
+
className={sizeClassName}
|
|
436
464
|
valueRender={(options) =>
|
|
437
465
|
options.map(({ label, value }, index) => (
|
|
438
466
|
<React.Fragment key={`${value}-${index}`}>
|
|
@@ -444,24 +472,23 @@ function SelectPc({
|
|
|
444
472
|
value={region}
|
|
445
473
|
/>
|
|
446
474
|
);
|
|
447
|
-
|
|
475
|
+
case 'mutiRegion':
|
|
448
476
|
return (
|
|
449
477
|
<Cascader
|
|
450
478
|
clearable
|
|
451
479
|
searchable
|
|
480
|
+
className={sizeClassName}
|
|
452
481
|
type="menu"
|
|
453
482
|
disabled={disabled}
|
|
454
483
|
data={regionTree}
|
|
455
484
|
multiple={false}
|
|
456
485
|
onChange={onDataChange}
|
|
457
|
-
onLoad={(regionTree, options)=>{
|
|
486
|
+
onLoad={(regionTree, options) => {
|
|
458
487
|
return new Promise((resolve) => {
|
|
459
488
|
setTimeout(() => {
|
|
460
489
|
resolve();
|
|
461
|
-
|
|
462
|
-
},1000);
|
|
490
|
+
}, 1000);
|
|
463
491
|
});
|
|
464
|
-
|
|
465
492
|
}}
|
|
466
493
|
valueRender={(options) =>
|
|
467
494
|
options.map(({ label, value }, index) => (
|
|
@@ -3,24 +3,33 @@ import { callWedaApi } from '../../../../utils/tcb';
|
|
|
3
3
|
|
|
4
4
|
let tree;
|
|
5
5
|
|
|
6
|
-
export async function getRegionTree(regionData,regionType,regionMode) {
|
|
6
|
+
export async function getRegionTree(regionData, regionType, regionMode) {
|
|
7
7
|
tree = [];
|
|
8
|
-
tree = formatTreeData(regionData,regionType,regionMode);
|
|
8
|
+
tree = formatTreeData(regionData, regionType, regionMode);
|
|
9
9
|
return tree;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
export
|
|
13
|
-
const weRegionTree =
|
|
12
|
+
export function regionPicker(options, regionTree: any[]) {
|
|
13
|
+
const weRegionTree =
|
|
14
|
+
regionTree.length == 0
|
|
15
|
+
? [
|
|
16
|
+
{
|
|
17
|
+
label: '地区数据加载中,请关闭弹窗后重试',
|
|
18
|
+
value: null,
|
|
19
|
+
children: null,
|
|
20
|
+
},
|
|
21
|
+
]
|
|
22
|
+
: regionTree;
|
|
14
23
|
weui.picker(weRegionTree, options);
|
|
15
24
|
}
|
|
16
25
|
/**
|
|
17
26
|
* 获取运行态地区数据
|
|
18
27
|
*/
|
|
19
|
-
|
|
28
|
+
export async function getAreaCode() {
|
|
20
29
|
try {
|
|
21
30
|
const res = await callWedaApi({
|
|
22
31
|
action: 'QueryRuntimeAreaCode',
|
|
23
|
-
data: {Mask:
|
|
32
|
+
data: { Mask: '11100' },
|
|
24
33
|
});
|
|
25
34
|
return res?.AreaCodeList;
|
|
26
35
|
} catch (error) {
|
|
@@ -31,101 +40,113 @@ export function regionPicker(options,regionTree:any[]) {
|
|
|
31
40
|
/**
|
|
32
41
|
* 构建树形结构
|
|
33
42
|
*/
|
|
34
|
-
|
|
43
|
+
function formatTreeData(arr, regionType, regionMode) {
|
|
35
44
|
let provicesData = [];
|
|
36
|
-
|
|
45
|
+
arr.forEach((item) => {
|
|
37
46
|
//省数据集合
|
|
38
|
-
if(item?.Type==1&&item?.Deprecated==false){
|
|
47
|
+
if (item?.Type == 1 && item?.Deprecated == false) {
|
|
39
48
|
provicesData.push({
|
|
40
49
|
label: item.Value,
|
|
41
50
|
value: item.Value,
|
|
42
|
-
code:item.Code,
|
|
43
|
-
type:item.Type,
|
|
44
|
-
centralCity:item.CentralCity,
|
|
45
|
-
children:
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
code: item.Code,
|
|
52
|
+
type: item.Type,
|
|
53
|
+
centralCity: item.CentralCity,
|
|
54
|
+
children:
|
|
55
|
+
regionType != 'levelOne' || regionMode == 'region'
|
|
56
|
+
? [
|
|
57
|
+
{
|
|
58
|
+
label: item.Value,
|
|
59
|
+
value: item.Value,
|
|
60
|
+
code: item.Code,
|
|
61
|
+
type: item.Type,
|
|
62
|
+
children:
|
|
63
|
+
regionType != 'levelTwo' || regionMode == 'region'
|
|
64
|
+
? [
|
|
65
|
+
{
|
|
66
|
+
label: item.Value,
|
|
67
|
+
value: item.Value,
|
|
68
|
+
code: item.Code,
|
|
69
|
+
type: item.Type,
|
|
70
|
+
centralCity: item.CentralCity,
|
|
71
|
+
},
|
|
72
|
+
]
|
|
73
|
+
: null,
|
|
74
|
+
},
|
|
75
|
+
]
|
|
76
|
+
: null,
|
|
58
77
|
});
|
|
59
78
|
}
|
|
60
79
|
});
|
|
61
|
-
if(regionType!= 'levelOne'||regionMode=='region'){
|
|
62
|
-
arr.forEach(item=>{
|
|
80
|
+
if (regionType != 'levelOne' || regionMode == 'region') {
|
|
81
|
+
arr.forEach((item) => {
|
|
63
82
|
//市数据集合
|
|
64
|
-
if(item?.Type==2&&item?.Deprecated==false){
|
|
65
|
-
provicesData.map(provice=>{
|
|
66
|
-
if(provice.code.substr(0, 2) == item.Code.substr(0,2)){
|
|
67
|
-
if(provice['children'][0].type==1){
|
|
68
|
-
provice['children']=[];
|
|
83
|
+
if (item?.Type == 2 && item?.Deprecated == false) {
|
|
84
|
+
provicesData.map((provice) => {
|
|
85
|
+
if (provice.code.substr(0, 2) == item.Code.substr(0, 2)) {
|
|
86
|
+
if (provice['children'][0].type == 1) {
|
|
87
|
+
provice['children'] = [];
|
|
69
88
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
89
|
+
provice['children'].push({
|
|
90
|
+
label: item.Value,
|
|
91
|
+
value: item.Value,
|
|
92
|
+
code: item.Code,
|
|
93
|
+
type: item.Type,
|
|
94
|
+
centralCity: item.CentralCity,
|
|
95
|
+
children:
|
|
96
|
+
regionType != 'levelTwo' || regionMode == 'region'
|
|
97
|
+
? [
|
|
98
|
+
{
|
|
99
|
+
label: item.Value,
|
|
100
|
+
value: item.Value,
|
|
101
|
+
code: item.Code,
|
|
102
|
+
type: item.Type,
|
|
103
|
+
centralCity: item.CentralCity,
|
|
104
|
+
},
|
|
105
|
+
]
|
|
106
|
+
: null,
|
|
107
|
+
});
|
|
108
|
+
}
|
|
86
109
|
});
|
|
87
110
|
}
|
|
88
111
|
});
|
|
89
|
-
if(regionType != 'levelTwo'||regionMode=='region'){
|
|
90
|
-
arr.forEach(item=>{
|
|
112
|
+
if (regionType != 'levelTwo' || regionMode == 'region') {
|
|
113
|
+
arr.forEach((item) => {
|
|
91
114
|
//区数据集合
|
|
92
|
-
if(item?.Type==3&&item?.Deprecated==false){
|
|
93
|
-
provicesData.map(provice=>{
|
|
94
|
-
if(provice.centralCity){
|
|
95
|
-
provice.children.map(city=>{
|
|
96
|
-
if(city.code.substr(0, 2) == item.Code.substr(0,2)){
|
|
97
|
-
if(city['children'][0].type==1){
|
|
98
|
-
city['children']=[];
|
|
115
|
+
if (item?.Type == 3 && item?.Deprecated == false) {
|
|
116
|
+
provicesData.map((provice) => {
|
|
117
|
+
if (provice.centralCity) {
|
|
118
|
+
provice.children.map((city) => {
|
|
119
|
+
if (city.code.substr(0, 2) == item.Code.substr(0, 2)) {
|
|
120
|
+
if (city['children'][0].type == 1) {
|
|
121
|
+
city['children'] = [];
|
|
99
122
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}
|
|
108
|
-
}else{
|
|
109
|
-
provice.children.map(city=>{
|
|
110
|
-
if(city.code.substr(0, 4) == item.Code.substr(0,4)){
|
|
111
|
-
if(city['children'][0].type==2){
|
|
112
|
-
city['children']=[];
|
|
123
|
+
city['children'].push({
|
|
124
|
+
label: item.Value,
|
|
125
|
+
value: item.Value,
|
|
126
|
+
code: item.Code,
|
|
127
|
+
//type:item.Type
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
} else {
|
|
132
|
+
provice.children.map((city) => {
|
|
133
|
+
if (city.code.substr(0, 4) == item.Code.substr(0, 4)) {
|
|
134
|
+
if (city['children'][0].type == 2) {
|
|
135
|
+
city['children'] = [];
|
|
113
136
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
137
|
+
city['children'].push({
|
|
138
|
+
label: item.Value,
|
|
139
|
+
value: item.Value,
|
|
140
|
+
code: item.Code,
|
|
141
|
+
//type:item.Type
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
});
|
|
122
145
|
}
|
|
123
|
-
|
|
124
146
|
});
|
|
125
147
|
}
|
|
126
148
|
});
|
|
127
149
|
}
|
|
128
|
-
|
|
129
150
|
}
|
|
130
151
|
return provicesData;
|
|
131
152
|
}
|
|
@@ -23,6 +23,7 @@ export default function YearPicker(props) {
|
|
|
23
23
|
onChange,
|
|
24
24
|
className,
|
|
25
25
|
placeholder,
|
|
26
|
+
size,
|
|
26
27
|
...rest
|
|
27
28
|
} = props;
|
|
28
29
|
const { classPrefix } = useConfig();
|
|
@@ -135,6 +136,7 @@ export default function YearPicker(props) {
|
|
|
135
136
|
>
|
|
136
137
|
<div className={classNames(`${classPrefix}-datepicker__input`)}>
|
|
137
138
|
<Input
|
|
139
|
+
size={size}
|
|
138
140
|
ref={inputRef}
|
|
139
141
|
disabled={disabled}
|
|
140
142
|
placeholder={placeholder}
|
|
@@ -2,11 +2,11 @@ import * as React from 'react';
|
|
|
2
2
|
|
|
3
3
|
import classNames from '../../../utils/classnames';
|
|
4
4
|
import getLocalCounter from '../../../utils/getLocalCounter';
|
|
5
|
-
import {usePlatform} from '../../../utils/platform';
|
|
6
|
-
import {ConfigProvider, Switch as TeaSwitch} from 'tea-component';
|
|
5
|
+
import { usePlatform } from '../../../utils/platform';
|
|
6
|
+
import { ConfigProvider, Switch as TeaSwitch } from 'tea-component';
|
|
7
7
|
import { renderDecorator } from '../renderDecorator';
|
|
8
8
|
import { useSyncValue } from '../../../utils/useSyncValue';
|
|
9
|
-
import { CommonFormPropsType } from '../types';
|
|
9
|
+
import type { CommonFormPropsType } from '../types';
|
|
10
10
|
|
|
11
11
|
export default function Switch({
|
|
12
12
|
// 系统属性
|
|
@@ -21,7 +21,7 @@ export default function Switch({
|
|
|
21
21
|
layout = 'horizontal',
|
|
22
22
|
disabled = false,
|
|
23
23
|
requiredFlag = false,
|
|
24
|
-
decorator
|
|
24
|
+
decorator,
|
|
25
25
|
}: PropsType) {
|
|
26
26
|
const isFlex = layout !== 'vertical';
|
|
27
27
|
const cls = classNames({
|
|
@@ -40,51 +40,51 @@ export default function Switch({
|
|
|
40
40
|
const platform = usePlatform();
|
|
41
41
|
// 两次默认值不同时, 需要刷新
|
|
42
42
|
const [checked, setChecked] = useSyncValue(defaultChecked);
|
|
43
|
-
|
|
44
43
|
|
|
45
44
|
// 现在低码组件往源码组件传入的id不唯一, 暂时使用hashcode替代
|
|
46
45
|
const hashcode = getLocalCounter();
|
|
47
46
|
const _id = `switch-${hashcode}`;
|
|
48
|
-
const switchElement =
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
47
|
+
const switchElement =
|
|
48
|
+
platform === 'h5' ? (
|
|
49
|
+
<div className={subCls}>
|
|
50
|
+
{isFlex ? <div className="weui-cell__bd"></div> : null}
|
|
51
|
+
<div className={isFlex ? 'weui-cell__ft' : 'weui-cell__bd'}>
|
|
52
|
+
<label htmlFor={_id} key={_id} className="weui-switch-cp">
|
|
53
|
+
<input
|
|
54
|
+
id={_id}
|
|
55
|
+
className="weui-switch-cp__input"
|
|
56
|
+
type="checkbox"
|
|
57
|
+
checked={checked}
|
|
58
|
+
disabled={disabled}
|
|
59
|
+
onChange={(ev) => {
|
|
60
|
+
const value = ev.target.checked;
|
|
61
|
+
setChecked(value);
|
|
62
|
+
events.change({ value }, { orgianalEvent: ev });
|
|
63
|
+
}}
|
|
64
|
+
/>
|
|
65
|
+
<div className="weui-switch-cp__box"></div>
|
|
66
|
+
</label>
|
|
67
|
+
</div>
|
|
68
|
+
</div>
|
|
69
|
+
) : (
|
|
70
|
+
<ConfigProvider classPrefix="wedatea2td">
|
|
71
|
+
<TeaSwitch
|
|
55
72
|
id={_id}
|
|
56
|
-
|
|
57
|
-
type="checkbox"
|
|
58
|
-
checked={checked}
|
|
73
|
+
value={checked}
|
|
59
74
|
disabled={disabled}
|
|
60
|
-
onChange={(
|
|
61
|
-
const
|
|
75
|
+
onChange={(value, context) => {
|
|
76
|
+
const originEvent = context.event;
|
|
62
77
|
setChecked(value);
|
|
63
|
-
events.change({ value }, {
|
|
78
|
+
events.change({ value }, { originEvent });
|
|
64
79
|
}}
|
|
65
80
|
/>
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
</div>
|
|
69
|
-
</div>
|
|
70
|
-
) :
|
|
71
|
-
(
|
|
72
|
-
<ConfigProvider classPrefix="wedatea2td">
|
|
73
|
-
<TeaSwitch
|
|
74
|
-
id={_id}
|
|
75
|
-
value={checked}
|
|
76
|
-
disabled={disabled}
|
|
77
|
-
onChange={(value, context) => {
|
|
78
|
-
const originEvent = context.event;
|
|
79
|
-
setChecked(value);
|
|
80
|
-
events.change({ value }, {originEvent});
|
|
81
|
-
}}
|
|
82
|
-
/>
|
|
83
|
-
</ConfigProvider>
|
|
84
|
-
);
|
|
85
|
-
|
|
86
|
-
return renderDecorator(switchElement, decorator)({
|
|
81
|
+
</ConfigProvider>
|
|
82
|
+
);
|
|
87
83
|
|
|
84
|
+
return renderDecorator(
|
|
85
|
+
switchElement,
|
|
86
|
+
decorator
|
|
87
|
+
)({
|
|
88
88
|
id,
|
|
89
89
|
className: cls,
|
|
90
90
|
style,
|
|
@@ -97,4 +97,4 @@ export default function Switch({
|
|
|
97
97
|
|
|
98
98
|
export interface PropsType extends CommonFormPropsType {
|
|
99
99
|
checked?: boolean;
|
|
100
|
-
}
|
|
100
|
+
}
|