@cloudbase/weda-ui 3.9.8 → 3.10.1
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/dataView.d.ts +31 -0
- package/dist/configs/components/dataView.js +53 -16
- package/dist/configs/components/grid/col.d.ts +1 -1
- package/dist/configs/components/grid/col.js +1 -1
- package/dist/configs/components/grid/grid.d.ts +1 -1
- package/dist/configs/components/grid/grid.js +1 -1
- package/dist/configs/components/grid/row.d.ts +1 -1
- package/dist/configs/components/grid/row.js +1 -1
- package/dist/configs/components/listView.d.ts +148 -444
- package/dist/configs/components/listView.js +991 -703
- package/dist/configs/components/wd-bubble.d.ts +6 -6
- package/dist/configs/components/wd-cascader.d.ts +1 -1
- package/dist/configs/components/wd-checkbox.d.ts +1 -1
- package/dist/configs/components/wd-code-editor.d.ts +1 -1
- package/dist/configs/components/wd-date-range.d.ts +1 -1
- package/dist/configs/components/wd-date.d.ts +1 -1
- package/dist/configs/components/wd-department.d.ts +1 -1
- package/dist/configs/components/wd-form-arr.d.ts +1 -1
- package/dist/configs/components/wd-form-detail.d.ts +1 -1
- package/dist/configs/components/wd-form-obj.d.ts +1 -1
- package/dist/configs/components/wd-form.js +2 -1
- package/dist/configs/components/wd-input-email.d.ts +4 -3
- package/dist/configs/components/wd-input-number.d.ts +2 -2
- package/dist/configs/components/wd-input-phone.d.ts +4 -3
- package/dist/configs/components/wd-input-url.d.ts +4 -3
- package/dist/configs/components/wd-input.d.ts +3 -1
- package/dist/configs/components/wd-layout.d.ts +4 -0
- package/dist/configs/components/wd-layout.js +12 -0
- package/dist/configs/components/wd-location.d.ts +1 -1
- package/dist/configs/components/wd-member.d.ts +1 -1
- package/dist/configs/components/wd-menu-layout.d.ts +3 -0
- package/dist/configs/components/wd-menu-layout.js +6 -0
- package/dist/configs/components/wd-menu-list.d.ts +2 -0
- package/dist/configs/components/wd-menu-list.js +6 -0
- package/dist/configs/components/wd-modal.js +2 -0
- package/dist/configs/components/wd-progress.d.ts +2 -2
- package/dist/configs/components/wd-radio.d.ts +1 -1
- package/dist/configs/components/wd-rating.d.ts +2 -2
- package/dist/configs/components/wd-region.d.ts +1 -1
- package/dist/configs/components/wd-rich-text.d.ts +1 -1
- package/dist/configs/components/wd-select-multiple.d.ts +18 -1
- package/dist/configs/components/wd-select-multiple.js +17 -1
- package/dist/configs/components/wd-select.d.ts +18 -1
- package/dist/configs/components/wd-select.js +16 -0
- package/dist/configs/components/wd-side-tab.d.ts +12 -0
- package/dist/configs/components/wd-side-tab.js +47 -3
- package/dist/configs/components/wd-switch.d.ts +2 -2
- package/dist/configs/components/wd-table.d.ts +4 -4
- package/dist/configs/components/wd-table.js +2 -1
- package/dist/configs/components/wd-tag-select.d.ts +3 -3
- package/dist/configs/components/wd-tag.d.ts +21 -21
- package/dist/configs/components/wd-textarea.d.ts +8 -1
- package/dist/configs/components/wd-textarea.js +1 -0
- package/dist/configs/components/wd-time.d.ts +1 -1
- package/dist/configs/components/wd-top-tab.d.ts +12 -0
- package/dist/configs/components/wd-top-tab.js +47 -3
- package/dist/configs/components/wd-upload-file.d.ts +5 -1
- package/dist/configs/components/wd-upload-file.js +15 -0
- package/dist/configs/components/wd-upload-image.d.ts +1 -1
- package/dist/configs/index.d.ts +891 -1407
- package/dist/configs/type-utils/index.d.ts +1 -1
- package/dist/configs/type-utils/type-form.d.ts +29 -14
- package/dist/configs/type-utils/type-form.js +43 -10
- package/dist/configs/type-utils/x-runtime-default.d.ts +6 -0
- package/dist/configs/type-utils/x-runtime-default.js +6 -0
- package/dist/configs/utils/constants.d.ts +2 -0
- package/dist/configs/utils/constants.js +3 -0
- package/dist/configs/utils/get-combinations.d.ts +1 -0
- package/dist/configs/utils/get-combinations.js +13 -0
- package/dist/style/index.css +10478 -0
- package/dist/style/index.scss +1 -1
- package/dist/style/weda-ui.min.css +4 -0
- package/dist/web/actions/showMessage/index.js +5 -0
- package/dist/web/components/carousel/index.js +5 -0
- package/dist/web/components/chart/common/core/eChartBase.js +5 -0
- package/dist/web/components/chart/statisticsCard/index.js +6 -1
- package/dist/web/components/flow/process/constants.d.ts +10 -5
- package/dist/web/components/flow/process/constants.js +3 -2
- package/dist/web/components/flow/process/process.js +1 -1
- package/dist/web/components/form/form/index.js +9 -1
- package/dist/web/components/form/location/common/mapChoose.js +17 -3
- package/dist/web/components/form/location/common/mapView.js +18 -5
- package/dist/web/components/form/select/dropdown-select/h5.d.ts +3 -1
- package/dist/web/components/form/select/dropdown-select/h5.js +20 -20
- package/dist/web/components/form/select/dropdown-select/index.css +8 -0
- package/dist/web/components/form/select/dropdown-select/index.d.ts +6 -1
- package/dist/web/components/form/select/dropdown-select/index.js +64 -30
- package/dist/web/components/form/select/dropdown-select/pc.d.ts +2 -1
- package/dist/web/components/form/select/dropdown-select/pc.js +3 -3
- package/dist/web/components/form/select/dropdown-select/ui.d.ts +5 -0
- package/dist/web/components/form/select/dropdown-select/ui.js +8 -4
- package/dist/web/components/form/select/formats-util.d.ts +1 -0
- package/dist/web/components/form/select/formats-util.js +8 -0
- package/dist/web/components/form/select/h5.d.ts +1 -1
- package/dist/web/components/form/select/h5.js +6 -3
- package/dist/web/components/form/select/index.css +34 -3
- package/dist/web/components/form/select/index.d.ts +3 -0
- package/dist/web/components/form/select/index.js +6 -3
- package/dist/web/components/form/select/region/index.js +5 -1
- package/dist/web/components/form/select/request.js +2 -1
- package/dist/web/components/form/select/status/index.d.ts +2 -0
- package/dist/web/components/form/select/status/index.js +2 -0
- package/dist/web/components/form/selectMultiple/dropdown-select/h5.d.ts +3 -1
- package/dist/web/components/form/selectMultiple/dropdown-select/h5.js +31 -31
- package/dist/web/components/form/selectMultiple/dropdown-select/index.css +23 -0
- package/dist/web/components/form/selectMultiple/dropdown-select/index.d.ts +6 -1
- package/dist/web/components/form/selectMultiple/dropdown-select/index.js +58 -24
- package/dist/web/components/form/selectMultiple/dropdown-select/pc.d.ts +2 -1
- package/dist/web/components/form/selectMultiple/dropdown-select/pc.js +2 -2
- package/dist/web/components/form/selectMultiple/dropdown-select/ui.d.ts +5 -0
- package/dist/web/components/form/selectMultiple/dropdown-select/ui.js +7 -5
- package/dist/web/components/form/selectMultiple/h5.d.ts +1 -1
- package/dist/web/components/form/selectMultiple/h5.js +6 -3
- package/dist/web/components/form/selectMultiple/index.d.ts +5 -0
- package/dist/web/components/form/selectMultiple/index.js +7 -4
- package/dist/web/components/form/selectMultiple/request.js +2 -1
- package/dist/web/components/form/selectMultiple/status/index.d.ts +2 -0
- package/dist/web/components/form/selectMultiple/status/index.js +2 -0
- package/dist/web/components/form/uploader/index.css +26 -0
- package/dist/web/components/form/uploader/uploader.h5.d.ts +11 -3
- package/dist/web/components/form/uploader/uploader.h5.js +32 -96
- package/dist/web/components/form/uploader/uploader.pc.d.ts +9 -0
- package/dist/web/components/form/uploader/uploader.pc.js +38 -102
- package/dist/web/components/form/uploader/useUploadFile.d.ts +16 -0
- package/dist/web/components/form/uploader/useUploadFile.js +99 -0
- package/dist/web/components/form/uploader/util.d.ts +2 -0
- package/dist/web/components/form/uploader/util.js +87 -0
- package/dist/web/components/form/uploaderFile/uploadFile.h5.d.ts +2 -1
- package/dist/web/components/form/uploaderFile/uploadFile.h5.js +14 -4
- package/dist/web/components/form/uploaderFile/uploadFile.pc.d.ts +2 -1
- package/dist/web/components/form/uploaderFile/uploadFile.pc.js +21 -5
- package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-model.js +5 -0
- package/dist/web/components/form/userOrgSelect/component/userOrgSelect.css +8 -0
- package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.js +6 -0
- package/dist/web/components/form-date/index.d.ts +9 -10
- package/dist/web/components/form-depart-tree-select/index.d.ts +8 -8
- package/dist/web/components/form-email/index.d.ts +12 -19
- package/dist/web/components/form-image-uploader/index.d.ts +10 -13
- package/dist/web/components/form-input/index.d.ts +4 -4
- package/dist/web/components/form-input-hooks/index.js +7 -1
- package/dist/web/components/form-location/index.d.ts +8 -7
- package/dist/web/components/form-multi-region/index.d.ts +9 -10
- package/dist/web/components/form-phone/index.d.ts +12 -19
- package/dist/web/components/form-radio/index.d.ts +7 -6
- package/dist/web/components/form-region/index.d.ts +9 -10
- package/dist/web/components/form-rich-text/index.d.ts +8 -9
- package/dist/web/components/form-select/index.d.ts +12 -16
- package/dist/web/components/form-select-multiple/index.d.ts +9 -10
- package/dist/web/components/form-switch/index.d.ts +8 -7
- package/dist/web/components/form-text-area/index.d.ts +12 -19
- package/dist/web/components/form-time/index.d.ts +9 -10
- package/dist/web/components/form-upload-file/index.d.ts +10 -13
- package/dist/web/components/form-url/index.d.ts +12 -19
- package/dist/web/components/form-user-tree-select/index.d.ts +8 -8
- package/dist/web/components/grid/col.d.ts +6 -9
- package/dist/web/components/grid/grid.d.ts +6 -14
- package/dist/web/components/grid/row.d.ts +6 -12
- package/dist/web/components/listView/index.d.ts +21 -2
- package/dist/web/components/listView/index.js +0 -3
- package/dist/web/components/listView/interface.d.ts +4 -4
- package/dist/web/components/lottery/index.d.ts +13 -15
- package/dist/web/components/navigationBar/index.css +2 -1
- package/dist/web/components/richText/index.js +6 -0
- package/dist/web/components/richTextView/useImgTransform.js +6 -1
- package/dist/web/components/table/ImportFileModalByApi/index.js +6 -1
- package/dist/web/components/table/ImportFileModalByApi/uploadCSVFile.js +6 -1
- package/dist/web/components/wd-audio/wd-audio.js +5 -0
- package/dist/web/components/wd-canvas/wd-canvas.js +6 -1
- package/dist/web/components/wd-code-editor/wd-code-editor.js +7 -2
- package/dist/web/components/wd-date/elements/WheelPicker.js +7 -1
- package/dist/web/components/wd-form/index.d.ts +26 -40
- package/dist/web/components/wd-form/index.js +9 -2
- package/dist/web/components/wd-form-item/wd-form-item-read-only.d.ts +2 -0
- package/dist/web/components/wd-form-item/wd-form-item-read-only.js +15 -2
- package/dist/web/components/wd-form-item/wd-form-item.js +4 -3
- package/dist/web/components/wd-input/wd-input.d.ts +20 -42
- package/dist/web/components/wd-input-email/wd-input-email.d.ts +19 -41
- package/dist/web/components/wd-input-phone/wd-input-phone.d.ts +20 -42
- package/dist/web/components/wd-input-url/wd-input-url.d.ts +19 -41
- package/dist/web/components/wd-layout/wd-layout.d.ts +1 -1
- package/dist/web/components/wd-layout/wd-layout.js +2 -2
- package/dist/web/components/wd-markdown/wd-markdown.js +1 -1
- package/dist/web/components/wd-menu-layout/components/PlantMenu.js +1 -1
- package/dist/web/components/wd-menu-list/CommonMenuList.js +7 -1
- package/dist/web/components/wd-menu-list/HorizontalMenuList.js +7 -1
- package/dist/web/components/wd-select/relationalSetting.d.ts +7 -0
- package/dist/web/components/wd-select/relationalSetting.js +15 -0
- package/dist/web/components/wd-select/wd-select.css +43 -0
- package/dist/web/components/wd-select/wd-select.d.ts +2 -0
- package/dist/web/components/wd-select/wd-select.js +25 -6
- package/dist/web/components/wd-select-multiple/wd-select-multiple.css +4 -0
- package/dist/web/components/wd-select-multiple/wd-select-multiple.d.ts +6 -0
- package/dist/web/components/wd-select-multiple/wd-select-multiple.js +25 -6
- package/dist/web/components/wd-table/components/FieldRender/Form/Enum.js +18 -4
- package/dist/web/components/wd-table/components/FieldRender/index.js +34 -5
- package/dist/web/components/wd-table/utils/index.js +18 -4
- package/dist/web/components/wd-tabs/tabs-h5.js +2 -3
- package/dist/web/components/wd-tabs/tabs-pc.js +2 -3
- package/dist/web/components/wd-tabs/util.d.ts +1 -0
- package/dist/web/components/wd-tabs/util.js +21 -0
- package/dist/web/components/wd-textarea/wd-textarea.js +11 -1
- package/dist/web/components/wd-unified-link/utils.js +1 -1
- package/dist/web/components/wd-upload-file/wd-upload-file.js +2 -2
- package/dist/web/components/web-view/web-view.d.ts +14 -20
- package/dist/web/utils/color.js +5 -0
- package/dist/web/utils/datasource.js +30 -20
- package/dist/web/utils/error.d.ts +3 -1
- package/dist/web/utils/error.js +9 -4
- package/dist/web/utils/file.js +4 -1
- package/dist/web/utils/getModelParams.js +27 -2
- package/dist/web/utils/hooks/EnumHoc.js +3 -1
- package/dist/web/utils/hooks/useRecycle.d.ts +4 -0
- package/dist/web/utils/loadIconCss.js +2 -1
- package/dist/web/utils/moment.js +2 -1
- package/dist/web/utils/platform.js +5 -2
- package/dist/web/utils/tcb.js +5 -3
- package/dist/web/weda-ui.css +8 -4
- package/package.json +8 -3
|
@@ -2,6 +2,7 @@ import { getDataSourceFieldsWithAuth } from '../../../utils/datasource';
|
|
|
2
2
|
import { TABLE_SLOT_PREFIX, GLOBAL_BUTTON, REL_DICT, } from '../../../utils/constant';
|
|
3
3
|
import { callWedaApi, appCloudGetWedaUserId, getIsExitApi, } from '../../../utils/tcb';
|
|
4
4
|
import { isObj, deepClone } from '../../../utils/tool';
|
|
5
|
+
import { errorHandler } from '../../../utils/error';
|
|
5
6
|
// 新接口没有返回关联表的主列字段,从旧接口中查询出来
|
|
6
7
|
const getPrimaryColumn = (fields, dataViewPropertiesList, selectedView) => {
|
|
7
8
|
var _a, _b;
|
|
@@ -81,7 +82,10 @@ export const whereList = (whereProxy) => {
|
|
|
81
82
|
return [];
|
|
82
83
|
}
|
|
83
84
|
catch (error) {
|
|
84
|
-
|
|
85
|
+
errorHandler({
|
|
86
|
+
code: 'GetWhereListError',
|
|
87
|
+
error,
|
|
88
|
+
});
|
|
85
89
|
return [];
|
|
86
90
|
}
|
|
87
91
|
};
|
|
@@ -396,8 +400,11 @@ export const getViews = async (dbName, selectedView) => {
|
|
|
396
400
|
};
|
|
397
401
|
}
|
|
398
402
|
}
|
|
399
|
-
catch (
|
|
400
|
-
|
|
403
|
+
catch (error) {
|
|
404
|
+
errorHandler({
|
|
405
|
+
code: 'GetViewsError',
|
|
406
|
+
error,
|
|
407
|
+
});
|
|
401
408
|
}
|
|
402
409
|
};
|
|
403
410
|
// 获取选中的筛选字段
|
|
@@ -441,6 +448,10 @@ export const getFilterFields = (filterFields, authFields) => {
|
|
|
441
448
|
}
|
|
442
449
|
}
|
|
443
450
|
catch (error) {
|
|
451
|
+
errorHandler({
|
|
452
|
+
code: 'GetFilterFieldsError',
|
|
453
|
+
error,
|
|
454
|
+
});
|
|
444
455
|
result = [];
|
|
445
456
|
}
|
|
446
457
|
result = result.filter((i) => !!i);
|
|
@@ -496,7 +507,10 @@ export const mapTableDataWithView = (viewFieldsData, records) => {
|
|
|
496
507
|
return records;
|
|
497
508
|
}
|
|
498
509
|
catch (error) {
|
|
499
|
-
|
|
510
|
+
errorHandler({
|
|
511
|
+
code: 'MapTableDataWithViewError',
|
|
512
|
+
error,
|
|
513
|
+
});
|
|
500
514
|
return records;
|
|
501
515
|
}
|
|
502
516
|
};
|
|
@@ -4,6 +4,7 @@ import { useConfig } from '../../utils/config-context';
|
|
|
4
4
|
import { usePlatform } from '../../utils/platform';
|
|
5
5
|
import WdIcon from '../wd-icon';
|
|
6
6
|
import { useSyncedRef } from '@react-hookz/web';
|
|
7
|
+
import { renderSlot } from './util';
|
|
7
8
|
export const WdTabsH5 = ({ isMultipleSlot, tabsDatas, selectedIndex, ...restProps }) => {
|
|
8
9
|
const { classPrefix } = useConfig();
|
|
9
10
|
const $node = useSyncedRef(restProps.$node);
|
|
@@ -96,7 +97,5 @@ export const WdTabsH5 = ({ isMultipleSlot, tabsDatas, selectedIndex, ...restProp
|
|
|
96
97
|
var _a;
|
|
97
98
|
//滚动条高度
|
|
98
99
|
setItemOffset((_a = event === null || event === void 0 ? void 0 : event.currentTarget) === null || _a === void 0 ? void 0 : _a.scrollLeft);
|
|
99
|
-
}, children: tabsDatas === null || tabsDatas === void 0 ? void 0 : tabsDatas.map((item, index) => RenderTabItem(index, item)) }), showMask && restProps.direction !== 'vertical' && (_jsx("div", { className: `${classPrefix}-tabs__header-item-mask` }))] }) }), _jsx("div", { className: `${classPrefix}-tabs__body`, children: _jsx("div", { className: `${classPrefix}-tabs__body-content`, children: isMultipleSlot
|
|
100
|
-
? restProps[`panel${selectedTab + Number('1')}`]
|
|
101
|
-
: restProps[`panel1`] }) })] }));
|
|
100
|
+
}, children: tabsDatas === null || tabsDatas === void 0 ? void 0 : tabsDatas.map((item, index) => RenderTabItem(index, item)) }), showMask && restProps.direction !== 'vertical' && (_jsx("div", { className: `${classPrefix}-tabs__header-item-mask` }))] }) }), _jsx("div", { className: `${classPrefix}-tabs__body`, children: _jsx("div", { className: `${classPrefix}-tabs__body-content`, children: renderSlot({ ...restProps, selectedTab, tabsDatas, isMultipleSlot }) }) })] }));
|
|
102
101
|
};
|
|
@@ -4,6 +4,7 @@ import { useConfig } from '../../utils/config-context';
|
|
|
4
4
|
import { usePlatform } from '../../utils/platform';
|
|
5
5
|
import WdIcon from '../wd-icon';
|
|
6
6
|
import { useSyncedRef } from '@react-hookz/web';
|
|
7
|
+
import { renderSlot } from './util';
|
|
7
8
|
export const WdTabsPc = ({ isMultipleSlot, tabsDatas, selectedIndex, ...restProps }) => {
|
|
8
9
|
const { classPrefix } = useConfig();
|
|
9
10
|
const $node = useSyncedRef(restProps.$node);
|
|
@@ -115,7 +116,5 @@ export const WdTabsPc = ({ isMultipleSlot, tabsDatas, selectedIndex, ...restProp
|
|
|
115
116
|
index: position.index + Number('1'),
|
|
116
117
|
offset: result,
|
|
117
118
|
});
|
|
118
|
-
} }))] }), _jsx("div", { className: `${classPrefix}-tabs__body`, children: _jsx("div", { className: `${classPrefix}-tabs__body-content`, children: isMultipleSlot
|
|
119
|
-
? restProps[`panel${selectedTab + Number('1')}`]
|
|
120
|
-
: restProps[`panel1`] }) })] }));
|
|
119
|
+
} }))] }), _jsx("div", { className: `${classPrefix}-tabs__body`, children: _jsx("div", { className: `${classPrefix}-tabs__body-content`, children: renderSlot({ ...restProps, selectedTab, tabsDatas, isMultipleSlot }) }) })] }));
|
|
121
120
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const renderSlot: (props: any) => any;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const TAB_SLOT_PREFIX = 'autoPanel';
|
|
2
|
+
const getSlots = (props) => Object.keys(props).reduce((acc, key) => {
|
|
3
|
+
if (key.startsWith(TAB_SLOT_PREFIX)) {
|
|
4
|
+
acc[key] = props[key];
|
|
5
|
+
}
|
|
6
|
+
return acc;
|
|
7
|
+
}, {});
|
|
8
|
+
export const renderSlot = (props) => {
|
|
9
|
+
var _a;
|
|
10
|
+
const { tabsDatas, selectedTab, isMultipleSlot } = props;
|
|
11
|
+
if (props.isSlotAuto) {
|
|
12
|
+
const slot = getSlots(props);
|
|
13
|
+
const slotKey = ((_a = tabsDatas[selectedTab]) === null || _a === void 0 ? void 0 : _a.slotKey) || '1';
|
|
14
|
+
return slot[`${TAB_SLOT_PREFIX}_${slotKey}`];
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return isMultipleSlot
|
|
18
|
+
? props[`panel${selectedTab + Number('1')}`]
|
|
19
|
+
: props[`panel1`];
|
|
20
|
+
}
|
|
21
|
+
};
|
|
@@ -84,6 +84,16 @@ export const WdTextarea = forwardRef(function WdTextarea(props, ref) {
|
|
|
84
84
|
zhRef.current = false;
|
|
85
85
|
onChange(e);
|
|
86
86
|
};
|
|
87
|
+
const handleKeyDown = (e) => {
|
|
88
|
+
var _a;
|
|
89
|
+
if (e.key === 'Enter' && !e.shiftKey) {
|
|
90
|
+
// 判断输入法是否正在输入中文字符
|
|
91
|
+
if (!e.target.isComposing) {
|
|
92
|
+
e.preventDefault();
|
|
93
|
+
(_a = events.confirm) === null || _a === void 0 ? void 0 : _a.call(events, { value: e.target.value }, { originEvent: e });
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
};
|
|
87
97
|
/** widgets */
|
|
88
98
|
useImperativeHandle(ref, () => ({
|
|
89
99
|
...innerHandle,
|
|
@@ -95,5 +105,5 @@ export const WdTextarea = forwardRef(function WdTextarea(props, ref) {
|
|
|
95
105
|
disabled,
|
|
96
106
|
readOnly,
|
|
97
107
|
}), [innerHandle, name, value, label, required, visible, disabled, readOnly]);
|
|
98
|
-
return (visible && (_jsx(WdFormItem, { ...props, validateErrorMsg: validateErrorMsg, validateState: validateState, readOnly: readOnly, disabled: disabled, readValue: value, classRoot: classRoot, inputId: inputId, layout: props.layout, children: _jsxs("div", { className: cls, ref: wrapRef, onFocus: () => wrapRef.current.classList.add('is-focused'), onBlur: () => wrapRef.current.classList.remove('is-focused'), children: [_jsx("textarea", { id: inputId, ref: textareaRef, rows: 2, placeholder: placeholder, name: name, value: displayValue, maxLength: maxLength, autoFocus: focus, disabled: disabled, readOnly: readOnly, onChange: onChange, onFocus: onFocus, onBlur: onBlur, onCompositionStart: handleZhStart, onCompositionEnd: handleZhEnd, ...startWithOnProps }), counterVisible && (_jsxs("label", { className: countCls, children: [counter, "/", maxLength] }))] }) })));
|
|
108
|
+
return (visible && (_jsx(WdFormItem, { ...props, validateErrorMsg: validateErrorMsg, validateState: validateState, readOnly: readOnly, disabled: disabled, readValue: value, classRoot: classRoot, inputId: inputId, layout: props.layout, children: _jsxs("div", { className: cls, ref: wrapRef, onFocus: () => wrapRef.current.classList.add('is-focused'), onBlur: () => wrapRef.current.classList.remove('is-focused'), children: [_jsx("textarea", { id: inputId, ref: textareaRef, rows: 2, placeholder: placeholder, name: name, value: displayValue, maxLength: maxLength, autoFocus: focus, disabled: disabled, readOnly: readOnly, onChange: onChange, onFocus: onFocus, onBlur: onBlur, onKeyDown: handleKeyDown, onCompositionStart: handleZhStart, onCompositionEnd: handleZhEnd, ...startWithOnProps }), counterVisible && (_jsxs("label", { className: countCls, children: [counter, "/", maxLength] }))] }) })));
|
|
99
109
|
});
|
|
@@ -13,7 +13,7 @@ export const getOnClick = (props) => {
|
|
|
13
13
|
if (!e.defaultPrevented) {
|
|
14
14
|
e.preventDefault();
|
|
15
15
|
const URL_REG = /^(weda-page|plugin|miniprogram):\/\/([0-9.\-A-Za-z]+)(?:\/([^?#]*))?(?:\?([^#]*))?$/;
|
|
16
|
-
const matched = url.match(URL_REG);
|
|
16
|
+
const matched = url === null || url === void 0 ? void 0 : url.match(URL_REG);
|
|
17
17
|
if (matched) {
|
|
18
18
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
19
19
|
const [_, protocol, ...restOpts] = matched;
|
|
@@ -12,7 +12,7 @@ import './style';
|
|
|
12
12
|
* 文件上传-标准化
|
|
13
13
|
*/
|
|
14
14
|
export const WdUploadFile = forwardRef(function WdUploadFile(props, ref) {
|
|
15
|
-
const { classRoot = 'upload-file', acceptTypes: _acceptTypes = X_RUNTIME_DEFAULT._acceptTypesInFile, maxSize = X_RUNTIME_DEFAULT.maxSize, single = X_RUNTIME_DEFAULT.single, maxUploadCount = X_RUNTIME_DEFAULT.maxUploadCount, events = emptyObject, deleteVisible = X_RUNTIME_DEFAULT.deleteVisible, downloadVisible = X_RUNTIME_DEFAULT.downloadVisible, callbacks, } = props;
|
|
15
|
+
const { classRoot = 'upload-file', acceptTypes: _acceptTypes = X_RUNTIME_DEFAULT._acceptTypesInFile, maxSize = X_RUNTIME_DEFAULT.maxSize, single = X_RUNTIME_DEFAULT.single, maxUploadCount = X_RUNTIME_DEFAULT.maxUploadCount, events = emptyObject, deleteVisible = X_RUNTIME_DEFAULT.deleteVisible, downloadVisible = X_RUNTIME_DEFAULT.downloadVisible, callbacks, uploadButtonText = X_RUNTIME_DEFAULT._uploadButtonText, uploadTipText = X_RUNTIME_DEFAULT._uploadTipText, } = props;
|
|
16
16
|
const acceptTypes = useMemo(() => convertAcceptTypes(_acceptTypes), [_acceptTypes]);
|
|
17
17
|
// 强制转换初始值
|
|
18
18
|
const initRef = useRef(false);
|
|
@@ -34,5 +34,5 @@ export const WdUploadFile = forwardRef(function WdUploadFile(props, ref) {
|
|
|
34
34
|
};
|
|
35
35
|
if (!visible)
|
|
36
36
|
return null;
|
|
37
|
-
return (_jsx(WdFormItem, { ...formItemProps, children: _jsx(UploaderFile, { events: events, labelVisible: false, acceptTypes: acceptTypes, defaultValue: value, deleteVisible: deleteVisible, downloadVisible: downloadVisible, maxSize: maxSize, maxUploadCount: maxUploadCount, single: single, readOnly: readOnly, disabled: disabled, decorator: null, onChange: onChange, callbacks: callbacks }) }));
|
|
37
|
+
return (_jsx(WdFormItem, { ...formItemProps, children: _jsx(UploaderFile, { btnTitle: uploadButtonText, uploadTipText: uploadTipText, events: events, labelVisible: false, acceptTypes: acceptTypes, defaultValue: value, deleteVisible: deleteVisible, downloadVisible: downloadVisible, maxSize: maxSize, maxUploadCount: maxUploadCount, single: single, readOnly: readOnly, disabled: disabled, decorator: null, onChange: onChange, callbacks: callbacks }) }));
|
|
38
38
|
});
|
|
@@ -2,25 +2,19 @@ import React from 'react';
|
|
|
2
2
|
import type { CommonPropsType } from '../../types';
|
|
3
3
|
import type { DataType, EventsType } from '../../../configs/components/web-view';
|
|
4
4
|
import './style';
|
|
5
|
-
export declare const WebView: React.ForwardRefExoticComponent<CommonPropsType &
|
|
5
|
+
export declare const WebView: React.ForwardRefExoticComponent<CommonPropsType & {
|
|
6
6
|
link: string;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
readonly name: "message";
|
|
21
|
-
readonly title: "接收网页消息";
|
|
22
|
-
readonly detail: import("@sinclair/typebox").TObject<{
|
|
23
|
-
data: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>;
|
|
24
|
-
}>;
|
|
25
|
-
}]>> & React.RefAttributes<unknown>>;
|
|
7
|
+
} & {
|
|
8
|
+
events: {
|
|
9
|
+
load: (eventDetail: {
|
|
10
|
+
src: string;
|
|
11
|
+
}, ...args: unknown[]) => unknown;
|
|
12
|
+
error: (eventDetail: {
|
|
13
|
+
src: string;
|
|
14
|
+
}, ...args: unknown[]) => unknown;
|
|
15
|
+
message: (eventDetail: {
|
|
16
|
+
data: Record<string, any>;
|
|
17
|
+
}, ...args: unknown[]) => unknown;
|
|
18
|
+
};
|
|
19
|
+
} & React.RefAttributes<unknown>>;
|
|
26
20
|
export type WdWebViewProps = CommonPropsType & DataType & EventsType;
|
package/dist/web/utils/color.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { errorHandler } from './error';
|
|
1
2
|
/**
|
|
2
3
|
* 十六进制、rgba、rgb、hsl、hsla 都换算成 rgba
|
|
3
4
|
*/
|
|
@@ -50,6 +51,10 @@ export function colorToRgba(color, alpha = 1) {
|
|
|
50
51
|
return `rgba(${r},${g},${b},${a})`;
|
|
51
52
|
}
|
|
52
53
|
catch (e) {
|
|
54
|
+
errorHandler({
|
|
55
|
+
code: 'ColorsToRgbaError',
|
|
56
|
+
error: e,
|
|
57
|
+
});
|
|
53
58
|
return color;
|
|
54
59
|
}
|
|
55
60
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { isInIde,
|
|
1
|
+
import { isInIde, isSystemField } from './platform';
|
|
2
2
|
import { callDataSource, callConnector, callWedaApi } from './tcb';
|
|
3
|
-
import { WdCompError } from './error';
|
|
3
|
+
import { WdCompError, errorHandler } from './error';
|
|
4
4
|
import { getUuid } from './tool';
|
|
5
5
|
/* **** 数据源相关方法 **** */
|
|
6
6
|
export class DataSource {
|
|
@@ -26,12 +26,12 @@ export class DataSource {
|
|
|
26
26
|
return res;
|
|
27
27
|
}
|
|
28
28
|
catch (error) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
29
|
+
errorHandler({
|
|
30
|
+
code: 'WedaGetRecordsError',
|
|
31
|
+
error,
|
|
32
|
+
message: `获取数据源字段失败,错误信息:${error.message}`,
|
|
33
|
+
showTip: true,
|
|
34
|
+
});
|
|
35
35
|
return {};
|
|
36
36
|
}
|
|
37
37
|
}
|
|
@@ -65,12 +65,12 @@ export class DataSource {
|
|
|
65
65
|
return res;
|
|
66
66
|
}
|
|
67
67
|
catch (error) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
68
|
+
errorHandler({
|
|
69
|
+
code: 'WedaGetRecordsV2Error',
|
|
70
|
+
error,
|
|
71
|
+
message: `获取数据源字段失败,错误信息:${error.message}`,
|
|
72
|
+
showTip: true,
|
|
73
|
+
});
|
|
74
74
|
return {};
|
|
75
75
|
}
|
|
76
76
|
}
|
|
@@ -212,8 +212,12 @@ export const getDataSourceByName = async (dbName, GetColumnAuth = true, swrMode
|
|
|
212
212
|
return datasource;
|
|
213
213
|
}
|
|
214
214
|
catch (error) {
|
|
215
|
-
|
|
216
|
-
|
|
215
|
+
errorHandler({
|
|
216
|
+
code: 'GetDataSourceByNameError',
|
|
217
|
+
error,
|
|
218
|
+
message: `获取数据源字段失败,错误信息:${error.message}`,
|
|
219
|
+
showTip: true,
|
|
220
|
+
});
|
|
217
221
|
return {};
|
|
218
222
|
}
|
|
219
223
|
};
|
|
@@ -227,8 +231,12 @@ export const getDataSourceByNameCompatibleProvite = async (dbName) => {
|
|
|
227
231
|
return datasource;
|
|
228
232
|
}
|
|
229
233
|
catch (error) {
|
|
230
|
-
|
|
231
|
-
|
|
234
|
+
errorHandler({
|
|
235
|
+
code: 'GetDataSourceProfileError',
|
|
236
|
+
error,
|
|
237
|
+
message: `获取数据源字段失败,错误信息:${error.message}`,
|
|
238
|
+
showTip: true,
|
|
239
|
+
});
|
|
232
240
|
return {};
|
|
233
241
|
}
|
|
234
242
|
};
|
|
@@ -263,6 +271,7 @@ export const getAuthFieldsByName = async (dbName) => {
|
|
|
263
271
|
}
|
|
264
272
|
catch (e) {
|
|
265
273
|
console.error('模型:请求权限出错.', e);
|
|
274
|
+
errorHandler({ code: 'GetAuthFieldsByNameError', error: e });
|
|
266
275
|
}
|
|
267
276
|
return fieldsAuthObj;
|
|
268
277
|
};
|
|
@@ -305,7 +314,7 @@ export const getDataSourceFieldsWithAuth = (authList, resourceCheckInfos) => {
|
|
|
305
314
|
return authList;
|
|
306
315
|
}
|
|
307
316
|
catch (err) {
|
|
308
|
-
|
|
317
|
+
errorHandler({ code: 'getDataSourceFieldsWithAuthError', error: err });
|
|
309
318
|
}
|
|
310
319
|
};
|
|
311
320
|
/**
|
|
@@ -455,7 +464,8 @@ export const getPrimaryField = (_data) => {
|
|
|
455
464
|
data = { ..._data, ...data };
|
|
456
465
|
}
|
|
457
466
|
catch (error) {
|
|
458
|
-
console.error('
|
|
467
|
+
console.error('模型:主列字段转换错误.', error);
|
|
468
|
+
errorHandler({ code: 'GetPrimaryFieldError', error });
|
|
459
469
|
return _data;
|
|
460
470
|
}
|
|
461
471
|
return data;
|
|
@@ -8,10 +8,12 @@ export declare class WdCompError extends Error {
|
|
|
8
8
|
original?: Error;
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
-
export declare const errorHandler: ({ id, code, error }: {
|
|
11
|
+
export declare const errorHandler: ({ id, code, error, message, showTip, }: {
|
|
12
12
|
id?: string;
|
|
13
13
|
code: any;
|
|
14
14
|
error: any;
|
|
15
|
+
message?: string;
|
|
16
|
+
showTip?: boolean;
|
|
15
17
|
}) => {
|
|
16
18
|
compError: WdCompError;
|
|
17
19
|
comErrorInfo: {
|
package/dist/web/utils/error.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { alertErrorMessage } from './platform';
|
|
1
2
|
export class WdCompError extends Error {
|
|
2
3
|
constructor(message, context = {}) {
|
|
3
4
|
super(message);
|
|
@@ -25,14 +26,18 @@ export class WdCompError extends Error {
|
|
|
25
26
|
this.original = context === null || context === void 0 ? void 0 : context.original;
|
|
26
27
|
}
|
|
27
28
|
}
|
|
28
|
-
export const errorHandler = ({ id = '', code, error }) => {
|
|
29
|
+
export const errorHandler = ({ id = '', code, error, message = '', showTip = false, }) => {
|
|
30
|
+
const _message = message || `[组件${id}:${code}]${(error === null || error === void 0 ? void 0 : error.message) || code}`;
|
|
29
31
|
const comErrorInfo = {
|
|
30
|
-
code:
|
|
32
|
+
code: code,
|
|
31
33
|
requestId: error === null || error === void 0 ? void 0 : error.requestId,
|
|
32
34
|
original: error,
|
|
33
|
-
message:
|
|
35
|
+
message: _message,
|
|
34
36
|
};
|
|
37
|
+
if (showTip) {
|
|
38
|
+
alertErrorMessage({ message: _message });
|
|
39
|
+
}
|
|
35
40
|
const compError = new WdCompError(comErrorInfo.message, comErrorInfo);
|
|
36
|
-
console.error(comErrorInfo);
|
|
41
|
+
console.error(`${comErrorInfo.code}:`, comErrorInfo);
|
|
37
42
|
return { compError, comErrorInfo };
|
|
38
43
|
};
|
package/dist/web/utils/file.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import jsonExport from 'jsonexport/dist';
|
|
2
2
|
import moment from 'moment';
|
|
3
3
|
import { utils, writeFile, SSF, readFile } from 'xlsx';
|
|
4
|
+
import { errorHandler } from './error';
|
|
4
5
|
/**
|
|
5
6
|
* 将数据导出为 CSV 或 JSON
|
|
6
7
|
*/
|
|
@@ -27,7 +28,9 @@ export const exportData = async (data, fileType = 'csv', name = 'weda-data-expor
|
|
|
27
28
|
await saveFile(new Blob([csv], { type: 'text/csv,charset=utf-8' }), title);
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
|
-
catch (e) {
|
|
31
|
+
catch (e) {
|
|
32
|
+
errorHandler({ code: 'ExportDataError', error: e });
|
|
33
|
+
}
|
|
31
34
|
};
|
|
32
35
|
/**
|
|
33
36
|
* 取每列最大宽度,实现excel列宽自适应
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getWhereList, getParseValue } from './platform';
|
|
2
|
+
import { errorHandler } from './error';
|
|
2
3
|
/**
|
|
3
4
|
* 兼容新旧查询条件协议
|
|
4
5
|
*/
|
|
@@ -14,7 +15,9 @@ export const convertWhere = (props, supportManyRelated) => {
|
|
|
14
15
|
where = props.queryCondition || getWhereList(props.where);
|
|
15
16
|
where = getParseValue(where);
|
|
16
17
|
}
|
|
17
|
-
catch (e) {
|
|
18
|
+
catch (e) {
|
|
19
|
+
errorHandler({ code: 'ConvertQueryError', error: e });
|
|
20
|
+
}
|
|
18
21
|
const isEmptyObj = (obj) => Object.keys(obj).length === 0;
|
|
19
22
|
return Array.isArray(where) ? where === null || where === void 0 ? void 0 : where.filter((i) => !isEmptyObj(i)) : [];
|
|
20
23
|
};
|
|
@@ -93,6 +96,14 @@ export const getModelParams = (props) => {
|
|
|
93
96
|
params['filter'] = getFilter(props.queryCondition);
|
|
94
97
|
}
|
|
95
98
|
params.select = getSelectFields(props);
|
|
99
|
+
// 处理排序字段
|
|
100
|
+
if (params.orderBy && ['asc', 'desc'].includes(params.orderType)) {
|
|
101
|
+
params.orderBy = [{ [params.orderBy]: params.orderType }];
|
|
102
|
+
}
|
|
103
|
+
// 支持多字段排序
|
|
104
|
+
if (props.isSupportMultipleSort) {
|
|
105
|
+
params.orderBy = transformSorter(props.sorter);
|
|
106
|
+
}
|
|
96
107
|
}
|
|
97
108
|
else {
|
|
98
109
|
const where = convertWhere(props);
|
|
@@ -102,7 +113,21 @@ export const getModelParams = (props) => {
|
|
|
102
113
|
}
|
|
103
114
|
}
|
|
104
115
|
catch (e) {
|
|
105
|
-
|
|
116
|
+
errorHandler({ code: 'GetModelParamsError', error: e });
|
|
106
117
|
}
|
|
107
118
|
return params;
|
|
108
119
|
};
|
|
120
|
+
const transformSorter = (sorter = []) => {
|
|
121
|
+
var _a;
|
|
122
|
+
return (_a = sorter === null || sorter === void 0 ? void 0 : sorter.filter((n) => (n.orderBy && n.orderType) || n.relationalTableName)) === null || _a === void 0 ? void 0 : _a.map((i) => {
|
|
123
|
+
var _a, _b;
|
|
124
|
+
if (i.relationalTableName) {
|
|
125
|
+
return {
|
|
126
|
+
[i.relationalTableName]: (_b = (_a = i.sorter) === null || _a === void 0 ? void 0 : _a.filter((j) => j.orderBy && j.orderType)) === null || _b === void 0 ? void 0 : _b.map((k) => ({ [k.orderBy]: k.orderType })),
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
return { [i.orderBy]: i.orderType };
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
};
|
|
@@ -4,6 +4,7 @@ import { callWedaApi } from '../tcb';
|
|
|
4
4
|
import { EnumContext } from './context';
|
|
5
5
|
import isObjectEqual from '../isObjectEqual';
|
|
6
6
|
import { useSyncValue } from './useSyncValue';
|
|
7
|
+
import { errorHandler } from '../error';
|
|
7
8
|
/**
|
|
8
9
|
* 选项集高阶组件,提供 loading 状态
|
|
9
10
|
*/
|
|
@@ -57,7 +58,7 @@ async function getEnumOptions(fields) {
|
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
60
|
catch (e) {
|
|
60
|
-
|
|
61
|
+
errorHandler({ code: 'GetEnumOptions', error: e });
|
|
61
62
|
}
|
|
62
63
|
return result;
|
|
63
64
|
}
|
|
@@ -77,6 +78,7 @@ function flattenFields(fields, result = []) {
|
|
|
77
78
|
}
|
|
78
79
|
catch (e) {
|
|
79
80
|
result = fields;
|
|
81
|
+
errorHandler({ code: 'GetEnumOptions', error: e });
|
|
80
82
|
}
|
|
81
83
|
return result;
|
|
82
84
|
}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { AttachContainer } from 'tea-component/lib/_util/get-overlay-root';
|
|
2
3
|
interface IRecycle {
|
|
4
|
+
format?: string;
|
|
3
5
|
version?: 'wd';
|
|
4
6
|
readOnly?: boolean;
|
|
5
7
|
children?: any;
|
|
6
8
|
recycleBack?: (v: any) => void;
|
|
9
|
+
onRelationTagClick?: (v: any) => void;
|
|
10
|
+
portalContainer?: AttachContainer;
|
|
7
11
|
}
|
|
8
12
|
export declare const useRecycle: () => IRecycle;
|
|
9
13
|
/**
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import cfg from '../../iconConfig.json';
|
|
2
2
|
import { getUrlPath } from './tool';
|
|
3
|
+
import { errorHandler } from './error';
|
|
3
4
|
// 加载样式,失败抛出错误
|
|
4
5
|
function loadLink(url, className) {
|
|
5
6
|
return new Promise((resolve, reject) => {
|
|
@@ -26,6 +27,6 @@ function loadLink(url, className) {
|
|
|
26
27
|
loadLink(getUrlPath(cfg.path, cfg.cssFile), 'wd-load-remote-icon');
|
|
27
28
|
}
|
|
28
29
|
catch (e) {
|
|
29
|
-
|
|
30
|
+
errorHandler({ code: 'LoadIconResourceError', error: e });
|
|
30
31
|
}
|
|
31
32
|
})();
|
package/dist/web/utils/moment.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as _moment from 'moment';
|
|
2
|
+
import { errorHandler } from './error';
|
|
2
3
|
const moment = typeof _moment === 'function' ? _moment : _moment.default;
|
|
3
4
|
// 将时间值转 moment 类型
|
|
4
5
|
export const convertMoment = (val) => {
|
|
@@ -11,7 +12,7 @@ export const convertMoment = (val) => {
|
|
|
11
12
|
return null;
|
|
12
13
|
}
|
|
13
14
|
catch (e) {
|
|
14
|
-
|
|
15
|
+
errorHandler({ code: 'ConvertMomentError', error: e });
|
|
15
16
|
}
|
|
16
17
|
return m;
|
|
17
18
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { REL_DICT, SystemDefaultFields } from './constant';
|
|
2
2
|
import { message as TeaMessage } from 'tea-component';
|
|
3
|
+
import { errorHandler } from './error';
|
|
3
4
|
/**
|
|
4
5
|
* 当前环境是否为 H5 端
|
|
5
6
|
*/
|
|
@@ -15,6 +16,7 @@ export const isH5Platform = () => {
|
|
|
15
16
|
is = /Android|webOS|BlackBerry|iPhone|iPad|iPod|iOS/i.test(ua);
|
|
16
17
|
}
|
|
17
18
|
catch (e) {
|
|
19
|
+
errorHandler({ code: 'H5PlatformCheckError', error: e });
|
|
18
20
|
null;
|
|
19
21
|
}
|
|
20
22
|
return is;
|
|
@@ -57,7 +59,7 @@ export function inH5IsMobile() {
|
|
|
57
59
|
return is_mobile_ua;
|
|
58
60
|
}
|
|
59
61
|
catch (e) {
|
|
60
|
-
|
|
62
|
+
errorHandler({ code: 'MobileCheckError', error: e });
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
65
|
/**
|
|
@@ -166,6 +168,7 @@ export const resolveStaticResourceUrl = (path) => {
|
|
|
166
168
|
return resourceUrl;
|
|
167
169
|
}
|
|
168
170
|
catch (error) {
|
|
171
|
+
errorHandler({ code: 'ResolveStaticResourceUrl', error });
|
|
169
172
|
return '';
|
|
170
173
|
}
|
|
171
174
|
};
|
|
@@ -263,7 +266,7 @@ export const getWhereList = (where) => {
|
|
|
263
266
|
return [];
|
|
264
267
|
}
|
|
265
268
|
catch (error) {
|
|
266
|
-
|
|
269
|
+
errorHandler({ code: 'GetWhereListError', error });
|
|
267
270
|
return [];
|
|
268
271
|
}
|
|
269
272
|
};
|
package/dist/web/utils/tcb.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { isInIde } from './platform';
|
|
2
2
|
import { deepClone } from './tool';
|
|
3
|
+
import { errorHandler } from './error';
|
|
3
4
|
// 默认使用swr的methodName
|
|
4
5
|
const SWR_METHOD_DEFAULT = [
|
|
5
6
|
'wedaGetItem',
|
|
@@ -79,7 +80,7 @@ export async function callDataSource(param, throwError = false) {
|
|
|
79
80
|
return res;
|
|
80
81
|
}
|
|
81
82
|
catch (error) {
|
|
82
|
-
|
|
83
|
+
errorHandler({ code: 'callDataSource', error });
|
|
83
84
|
if (throwError)
|
|
84
85
|
throw error;
|
|
85
86
|
return {};
|
|
@@ -100,7 +101,7 @@ export async function callConnector(param, throwError = false) {
|
|
|
100
101
|
return res;
|
|
101
102
|
}
|
|
102
103
|
catch (error) {
|
|
103
|
-
|
|
104
|
+
errorHandler({ code: 'CallConnector', error });
|
|
104
105
|
if (throwError)
|
|
105
106
|
throw error;
|
|
106
107
|
return {};
|
|
@@ -129,7 +130,7 @@ export async function getAppCustomNav() {
|
|
|
129
130
|
return res;
|
|
130
131
|
}
|
|
131
132
|
catch (error) {
|
|
132
|
-
|
|
133
|
+
errorHandler({ code: 'GetAppCustomNav', error });
|
|
133
134
|
return {};
|
|
134
135
|
}
|
|
135
136
|
}
|
|
@@ -146,6 +147,7 @@ export const getIsExitApi = async (params) => {
|
|
|
146
147
|
const message = (_b = (_a = error === null || error === void 0 ? void 0 : error.original) === null || _a === void 0 ? void 0 : _a.result) === null || _b === void 0 ? void 0 : _b.message;
|
|
147
148
|
const status = (message === null || message === void 0 ? void 0 : message.indexOf('Action不存在')) != -1 ||
|
|
148
149
|
(message === null || message === void 0 ? void 0 : message.indexOf('接口不存在')) != -1;
|
|
150
|
+
errorHandler({ code: 'GetIsExitApi', error });
|
|
149
151
|
return !status;
|
|
150
152
|
}
|
|
151
153
|
};
|
package/dist/web/weda-ui.css
CHANGED
|
@@ -510,21 +510,25 @@ NED }}}
|
|
|
510
510
|
}
|
|
511
511
|
|
|
512
512
|
/* ---- theme start */
|
|
513
|
-
:root .wd-btn__margin-right
|
|
513
|
+
:root .wd-btn__margin-right,
|
|
514
|
+
:host .wd-btn__margin-right {
|
|
514
515
|
margin-right: 5px;
|
|
515
516
|
}
|
|
516
|
-
:root .wedatea2td-dropdown-box .wedatea2td-list--option > li.is-selected
|
|
517
|
+
:root .wedatea2td-dropdown-box .wedatea2td-list--option > li.is-selected,
|
|
518
|
+
:host .wedatea2td-dropdown-box .wedatea2td-list--option > li.is-selected {
|
|
517
519
|
color: var(--wd-color-brand, #0052d9);
|
|
518
520
|
background-color: var(--wd-color-brand-light, #ecf2fe);
|
|
519
521
|
}
|
|
520
522
|
|
|
521
|
-
:root .weda-picker .weui-btn
|
|
523
|
+
:root .weda-picker .weui-btn,
|
|
524
|
+
:host .weda-picker .weui-btn {
|
|
522
525
|
background-color: var(--wd-color-brand, #006eff);
|
|
523
526
|
border-color: var(--wd-color-brand);
|
|
524
527
|
color: var(--wd-color-text-inverse, #fff);
|
|
525
528
|
}
|
|
526
529
|
|
|
527
|
-
:root .weda-ui.weda-picker .weui-btn_primary:not(.weui-btn_disabled):active
|
|
530
|
+
:root .weda-ui.weda-picker .weui-btn_primary:not(.weui-btn_disabled):active,
|
|
531
|
+
:host .weda-ui.weda-picker .weui-btn_primary:not(.weui-btn_disabled):active {
|
|
528
532
|
background-color: var(--wd-color-brand-active);
|
|
529
533
|
}
|
|
530
534
|
/* ---- theme end */
|