plain-design 1.0.0-beta.49 → 1.0.0-beta.50
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/plain-design.commonjs.min.js +3 -3
- package/dist/plain-design.min.js +3 -3
- package/dist/report.html +2 -2
- package/package.json +1 -1
- package/src/packages/components/$file/index.tsx +1 -1
- package/src/packages/components/$message/image.service.utils.tsx +2 -2
- package/src/packages/components/$object/createObjectService.tsx +3 -3
- package/src/packages/components/$upload/createUploadService.tsx +1 -1
- package/src/packages/components/Application/theme/theme.ts +1 -1
- package/src/packages/components/AutoTable/filter/useTableOption.filter.form.tsx +3 -3
- package/src/packages/components/AutoTable/filter/useTableOption.filter.search.tsx +2 -2
- package/src/packages/components/AutoTable/setting/useTableOption.setting.all.fitler.tsx +4 -4
- package/src/packages/components/AutoTable/setting/useTableOption.setting.cache.tsx +16 -16
- package/src/packages/components/AutoTable/setting/useTableOption.setting.config.tsx +11 -11
- package/src/packages/components/AutoTable/setting/useTableOption.setting.export.tsx +20 -20
- package/src/packages/components/AutoTable/setting/useTableOption.setting.import.tsx +1 -1
- package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.filter.tsx +10 -10
- package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.sort.tsx +7 -7
- package/src/packages/components/AutoTable/setting/useTableOption.setting.tsx +2 -2
- package/src/packages/components/AutoTable/use/useTableOption.buttons.tsx +18 -18
- package/src/packages/components/AutoTable/use/useTableOption.cache.ts +1 -1
- package/src/packages/components/AutoTable/use/useTableOption.check.tsx +1 -1
- package/src/packages/components/AutoTable/use/useTableOption.column.popper.tsx +8 -8
- package/src/packages/components/AutoTable/use/useTableOption.confirm.tsx +3 -3
- package/src/packages/components/AutoTable/use/useTableOption.loading.tsx +1 -1
- package/src/packages/components/AutoTable/use/useTableOption.methods.tsx +17 -17
- package/src/packages/components/AutoTable/use/useTableOption.pagination.tsx +3 -3
- package/src/packages/components/AutoTable/use/useTableOption.sort.ts +5 -5
- package/src/packages/components/AutoTable/use/useTableOption.tips.tsx +1 -1
- package/src/packages/components/Cascade/createMultipleCascadeRender.tsx +1 -1
- package/src/packages/components/Cascade/createSingleCascadeRender.tsx +1 -1
- package/src/packages/components/CascadePanel/flat/createCascadeFlatRender.tsx +1 -1
- package/src/packages/components/Checkbox/index.tsx +1 -1
- package/src/packages/components/CheckboxGroup/index.tsx +2 -2
- package/src/packages/components/DatePicker/date.utils.tsx +2 -2
- package/src/packages/components/DatePicker/panel/DatePanelDate.tsx +7 -7
- package/src/packages/components/DatePicker/panel/DatePanelMonth.tsx +12 -12
- package/src/packages/components/Dialog/index.tsx +3 -3
- package/src/packages/components/Empty/index.tsx +1 -1
- package/src/packages/components/FilterFormMultiple/index.tsx +2 -2
- package/src/packages/components/FilterFormSingle/index.tsx +2 -2
- package/src/packages/components/FilterService/filter/filter.city.tsx +4 -4
- package/src/packages/components/FilterService/filter/filter.date.tsx +4 -4
- package/src/packages/components/FilterService/filter/filter.datetime.tsx +2 -2
- package/src/packages/components/FilterService/filter/filter.district.tsx +4 -4
- package/src/packages/components/FilterService/filter/filter.number.tsx +1 -1
- package/src/packages/components/FilterService/filter/filter.province.tsx +4 -4
- package/src/packages/components/FilterService/filter/filter.select.tsx +3 -3
- package/src/packages/components/FilterService/filter/filter.text.tsx +4 -4
- package/src/packages/components/FilterService/filter/fitler.object.tsx +4 -4
- package/src/packages/components/FilterService/index.tsx +7 -7
- package/src/packages/components/Form/types/any.tsx +6 -6
- package/src/packages/components/Form/types/array.tsx +7 -7
- package/src/packages/components/Form/types/date.tsx +6 -6
- package/src/packages/components/Form/types/email.tsx +1 -1
- package/src/packages/components/Form/types/idcard.tsx +1 -1
- package/src/packages/components/Form/types/number.tsx +7 -7
- package/src/packages/components/Form/types/phone.tsx +1 -1
- package/src/packages/components/Form/types/qq.tsx +1 -1
- package/src/packages/components/Form/types/string.tsx +7 -7
- package/src/packages/components/Formatter/index.tsx +1 -1
- package/src/packages/components/Image/index.tsx +3 -3
- package/src/packages/components/ImageUploader/index.tsx +2 -2
- package/src/packages/components/Object/createObjectRender.multiple.tsx +1 -1
- package/src/packages/components/Object/createObjectRender.single.tsx +1 -1
- package/src/packages/components/PageThemeUtils/deepmerge.ts +21 -0
- package/src/packages/components/PageThemeUtils/index.tsx +108 -53
- package/src/packages/components/Pagination/index.tsx +4 -4
- package/src/packages/components/Select/SelectPanel.tsx +1 -1
- package/src/packages/components/Select/createMultipleSelectRender.tsx +4 -4
- package/src/packages/components/Table/editor/PlcAddress.tsx +4 -4
- package/src/packages/components/Table/standard/PlcCheck/PlcCheck.multiple.tsx +4 -4
- package/src/packages/components/Table/standard/PlcExpand.tsx +2 -2
- package/src/packages/components/Table/standard/PlcIndex.tsx +1 -1
- package/src/packages/components/Table/standard/PlcOperation/OuterOperation.tsx +1 -1
- package/src/packages/components/Table/standard/PlcOperation/PlcOperation.tsx +4 -4
- package/src/packages/components/Table/standard/PlcTree/PlcTree.renderNode.tsx +4 -4
- package/src/packages/components/Table/table/use/useTableFormEditor.tsx +2 -2
- package/src/packages/components/Table/table/use/useTableModifyEditor.tsx +6 -6
- package/src/packages/components/ThemeEditor/index.tsx +32 -27
- package/src/packages/components/Tree/RenderTreeNode.tsx +1 -1
- package/src/packages/components/Upload/index.tsx +12 -12
- package/src/packages/components/VirtualTable/index.tsx +1 -1
- package/src/packages/components/useDialog/DialogService.tsx +2 -2
- package/src/packages/components/useImage/ImageService.tsx +8 -8
- package/src/packages/components/useNotice/index.tsx +1 -1
- package/src/packages/i18n/i18n.utils.ts +172 -120
- package/src/packages/i18n/index.ts +4 -3
- package/src/packages/i18n/lang/en-us.ts +4 -3
- package/src/packages/i18n/lang/zh-cn.ts +1 -0
@@ -39,7 +39,7 @@ export const Empty = designComponent({
|
|
39
39
|
p-id="22465"/>
|
40
40
|
</svg>
|
41
41
|
)}
|
42
|
-
{slots.default(props.label || (props.noMatch ? i18n('base.noMatch').d('暂无匹配') : i18n('base.noData').d('暂无数据')))}
|
42
|
+
{slots.default(props.label || (props.noMatch ? i18n.$it('base.noMatch').d('暂无匹配') : i18n.$it('base.noData').d('暂无数据')))}
|
43
43
|
</div>
|
44
44
|
);
|
45
45
|
},
|
@@ -255,7 +255,7 @@ export const FilterFormMultiple = designComponent({
|
|
255
255
|
{slots.operation()}
|
256
256
|
{!props.hideResetButton && (
|
257
257
|
<Button {...mergeAttrs({
|
258
|
-
label: i18n('base.reset').d('重置'),
|
258
|
+
label: i18n.$it('base.reset').d('重置'),
|
259
259
|
icon: "pi-delete",
|
260
260
|
onClick: methods.reset
|
261
261
|
}, props.resetButtonAttrs)}/>
|
@@ -263,7 +263,7 @@ export const FilterFormMultiple = designComponent({
|
|
263
263
|
{!props.hideSearchButton && (
|
264
264
|
<Button
|
265
265
|
{...mergeAttrs({
|
266
|
-
label: i18n('base.query').d('查询'),
|
266
|
+
label: i18n.$it('base.query').d('查询'),
|
267
267
|
icon: "pi-search",
|
268
268
|
onClick: methods.search,
|
269
269
|
}, props.searchButtonAttrs)}
|
@@ -38,7 +38,7 @@ export const FilterFormSingle = designComponent({
|
|
38
38
|
|
39
39
|
const utils = {
|
40
40
|
createState: ({ defaultField, filterOptions }: { defaultField?: string, filterOptions: iFilterOption[] }): iFilterFormSingleState => {
|
41
|
-
const defaultOption = filterOptions.find(i => !!defaultField ? i?.field === defaultField : i?.defaultSearch) || (filterOptions[0] as iFilterOption | undefined) || { label: i18n('base.id').d('编号'), filterType: 'text', filterHandler: 'like', field: 'id' };
|
41
|
+
const defaultOption = filterOptions.find(i => !!defaultField ? i?.field === defaultField : i?.defaultSearch) || (filterOptions[0] as iFilterOption | undefined) || { label: i18n.$it('base.id').d('编号'), filterType: 'text', filterHandler: 'like', field: 'id' };
|
42
42
|
const formData = FilterService.getDefaultFormData(filterOptions);
|
43
43
|
return {
|
44
44
|
field: defaultOption.field,
|
@@ -161,7 +161,7 @@ export const FilterFormSingle = designComponent({
|
|
161
161
|
)}
|
162
162
|
{FilterService.getHandler(usingFilterOption.value)!.render({ formData: state.formData, option: usingFilterOption.value, confirm: methods.search })}
|
163
163
|
{!props.hideSearchButton && (
|
164
|
-
<Button label={i18n('base.query').d('查询')} icon="pi-search" mode="fill" asyncHandler={methods.search}/>
|
164
|
+
<Button label={i18n.$it('base.query').d('查询')} icon="pi-search" mode="fill" asyncHandler={methods.search}/>
|
165
165
|
)}
|
166
166
|
{slots.append()}
|
167
167
|
</InputGroup>
|
@@ -22,7 +22,7 @@ export function installFilterCity(
|
|
22
22
|
}: iFilterService) {
|
23
23
|
touch('city')
|
24
24
|
.setHandler('like', {
|
25
|
-
label: i18n('base.filter.like').d('约等于'),
|
25
|
+
label: i18n.$it('base.filter.like').d('约等于'),
|
26
26
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} onEnter={confirm}/>),
|
27
27
|
getQueryParam: async ({ formData, option }) => {
|
28
28
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -33,7 +33,7 @@ export function installFilterCity(
|
|
33
33
|
},
|
34
34
|
})
|
35
35
|
.setHandler('eq', {
|
36
|
-
label: i18n('base.filter.equal').d('等于'),
|
36
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
37
37
|
getDescription: ({ formData, option }: { formData: PlainObject, option: iFilterOption }) => {
|
38
38
|
const val = formData[option.field]?.city;
|
39
39
|
const service = $configuration.get('address')!;
|
@@ -60,7 +60,7 @@ export function installFilterCity(
|
|
60
60
|
},
|
61
61
|
})
|
62
62
|
.setHandler('in', {
|
63
|
-
label: i18n('base.filter.include').d('包含'),
|
63
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
64
64
|
getDescription: createAddressDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
65
65
|
render: ({ formData, option }) => (<AddressCascade v-model={formData[option.field!]} types="pc" multiple valueType="arraystring"/>),
|
66
66
|
getQueryParam: async ({ formData, option }) => {
|
@@ -70,7 +70,7 @@ export function installFilterCity(
|
|
70
70
|
},
|
71
71
|
})
|
72
72
|
.setHandler('not_in', {
|
73
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
73
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
74
74
|
getDescription: createAddressDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
75
75
|
render: ({ formData, option }) => (<AddressCascade v-model={formData[option.field!]} types="pc" multiple valueType="arraystring"/>),
|
76
76
|
getQueryParam: async ({ formData, option }) => {
|
@@ -23,7 +23,7 @@ export function installFilterDate(
|
|
23
23
|
}: iFilterService) {
|
24
24
|
touch<iFilterConfigDate>('date')
|
25
25
|
.setHandler('range', {
|
26
|
-
label: i18n('base.filter.range').d('范围'),
|
26
|
+
label: i18n.$it('base.filter.range').d('范围'),
|
27
27
|
getDescription: defaultRangeGetDescription,
|
28
28
|
...defaultRangeHandlerAttrs,
|
29
29
|
render: ({ formData, option }) => <DatePicker
|
@@ -54,7 +54,7 @@ export function installFilterDate(
|
|
54
54
|
},
|
55
55
|
})
|
56
56
|
.setHandler('eq', {
|
57
|
-
label: i18n('base.filter.equal').d('等于'),
|
57
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
58
58
|
render: ({ formData, option }) => <DatePicker v-model={formData[option.field!]}/>,
|
59
59
|
getQueryParam: ({ formData, option }) => {
|
60
60
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -63,7 +63,7 @@ export function installFilterDate(
|
|
63
63
|
},
|
64
64
|
})
|
65
65
|
.setHandler('in', {
|
66
|
-
label: i18n('base.filter.include').d('包含'),
|
66
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
67
67
|
render: ({ formData, option }) => <DatePicker v-model={formData[option.field!]} multiple valueType="arraystring"/>,
|
68
68
|
getQueryParam: ({ formData, option }) => {
|
69
69
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -72,7 +72,7 @@ export function installFilterDate(
|
|
72
72
|
},
|
73
73
|
})
|
74
74
|
.setHandler('not_in', {
|
75
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
75
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
76
76
|
render: ({ formData, option }) => <DatePicker v-model={formData[option.field!]} multiple valueType="arraystring"/>,
|
77
77
|
getQueryParam: ({ formData, option }) => {
|
78
78
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -23,7 +23,7 @@ export function installFilterDatetime(
|
|
23
23
|
}: iFilterService) {
|
24
24
|
touch<iFilterConfigDate>('datetime')
|
25
25
|
.setHandler('range', {
|
26
|
-
label: i18n('base.filter.range').d('范围'),
|
26
|
+
label: i18n.$it('base.filter.range').d('范围'),
|
27
27
|
getDescription: defaultRangeGetDescription,
|
28
28
|
...defaultRangeHandlerAttrs,
|
29
29
|
render: ({ formData, option }) => <DatePicker
|
@@ -55,7 +55,7 @@ export function installFilterDatetime(
|
|
55
55
|
},
|
56
56
|
})
|
57
57
|
.setHandler('eq', {
|
58
|
-
label: i18n('base.filter.equal').d('等于'),
|
58
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
59
59
|
render: ({ formData, option }) => <DatePicker v-model={formData[option.field!]} datetime/>,
|
60
60
|
getQueryParam: ({ formData, option }) => {
|
61
61
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -22,7 +22,7 @@ export function installFilterDistrict(
|
|
22
22
|
}: iFilterService) {
|
23
23
|
touch('district')
|
24
24
|
.setHandler('like', {
|
25
|
-
label: i18n('base.filter.like').d('约等于'),
|
25
|
+
label: i18n.$it('base.filter.like').d('约等于'),
|
26
26
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} onEnter={confirm}/>),
|
27
27
|
getQueryParam: async ({ formData, option }) => {
|
28
28
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -33,7 +33,7 @@ export function installFilterDistrict(
|
|
33
33
|
},
|
34
34
|
})
|
35
35
|
.setHandler('eq', {
|
36
|
-
label: i18n('base.filter.equal').d('等于'),
|
36
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
37
37
|
getDescription: ({ formData, option }: { formData: PlainObject, option: iFilterOption }) => {
|
38
38
|
const val = formData[option.field]?.district;
|
39
39
|
const service = $configuration.get('address')!;
|
@@ -61,7 +61,7 @@ export function installFilterDistrict(
|
|
61
61
|
},
|
62
62
|
})
|
63
63
|
.setHandler('in', {
|
64
|
-
label: i18n('base.filter.include').d('包含'),
|
64
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
65
65
|
getDescription: createAddressDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
66
66
|
render: ({ formData, option }) => (<AddressCascade v-model={formData[option.field!]} types="pcd" multiple valueType="arraystring"/>),
|
67
67
|
getQueryParam: async ({ formData, option }) => {
|
@@ -71,7 +71,7 @@ export function installFilterDistrict(
|
|
71
71
|
},
|
72
72
|
})
|
73
73
|
.setHandler('not_in', {
|
74
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
74
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
75
75
|
getDescription: createAddressDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
76
76
|
render: ({ formData, option }) => (<AddressCascade v-model={formData[option.field!]} types="pcd" multiple valueType="arraystring"/>),
|
77
77
|
getQueryParam: async ({ formData, option }) => {
|
@@ -23,7 +23,7 @@ export function installFilterNumber(
|
|
23
23
|
|
24
24
|
touch<iFilterConfigNumber>('number')
|
25
25
|
.setHandler('range', {
|
26
|
-
label: i18n('base.filter.range').d('范围'),
|
26
|
+
label: i18n.$it('base.filter.range').d('范围'),
|
27
27
|
...defaultRangeHandlerAttrs,
|
28
28
|
getDescription: defaultRangeGetDescription,
|
29
29
|
render: ({ formData, option, confirm }) => (
|
@@ -46,7 +46,7 @@ export function installFilterProvince(
|
|
46
46
|
}: iFilterService) {
|
47
47
|
touch('province')
|
48
48
|
.setHandler('like', {
|
49
|
-
label: i18n('base.filter.like').d('约等于'),
|
49
|
+
label: i18n.$it('base.filter.like').d('约等于'),
|
50
50
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} onEnter={confirm}/>),
|
51
51
|
getQueryParam: async ({ formData, option }) => {
|
52
52
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -57,7 +57,7 @@ export function installFilterProvince(
|
|
57
57
|
},
|
58
58
|
})
|
59
59
|
.setHandler('eq', {
|
60
|
-
label: i18n('base.filter.equal').d('等于'),
|
60
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
61
61
|
getDescription: createAddressDescriptionGetter({ multiple: false, valueType: undefined }),
|
62
62
|
render: ({ formData, option }) => (<AddressCascade v-model:province={formData[option.field!]} types="p"/>),
|
63
63
|
getQueryParam: async ({ formData, option }) => {
|
@@ -67,7 +67,7 @@ export function installFilterProvince(
|
|
67
67
|
},
|
68
68
|
})
|
69
69
|
.setHandler('in', {
|
70
|
-
label: i18n('base.filter.include').d('包含'),
|
70
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
71
71
|
getDescription: createAddressDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
72
72
|
render: ({ formData, option }) => (<AddressCascade v-model={formData[option.field!]} types="p" multiple valueType="arraystring"/>),
|
73
73
|
getQueryParam: async ({ formData, option }) => {
|
@@ -77,7 +77,7 @@ export function installFilterProvince(
|
|
77
77
|
},
|
78
78
|
})
|
79
79
|
.setHandler('not_in', {
|
80
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
80
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
81
81
|
getDescription: createAddressDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
82
82
|
render: ({ formData, option }) => (<AddressCascade v-model={formData[option.field!]} types="p" multiple valueType="arraystring"/>),
|
83
83
|
getQueryParam: async ({ formData, option }) => {
|
@@ -32,7 +32,7 @@ export function installFilterSelect(
|
|
32
32
|
}: iFilterService) {
|
33
33
|
touch<iFilterConfigSelect>('select')
|
34
34
|
.setHandler('eq', {
|
35
|
-
label: i18n('base.filter.equal').d('等于'),
|
35
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
36
36
|
getDescription: createDescriptionGetter({ multiple: false, valueType: undefined }),
|
37
37
|
render: ({ formData, option }) => (<Select v-model={formData[option.field]}>{option.filterConfig.renderOptions()}</Select>),
|
38
38
|
getQueryParam: ({ formData, option }) => {
|
@@ -42,7 +42,7 @@ export function installFilterSelect(
|
|
42
42
|
},
|
43
43
|
})
|
44
44
|
.setHandler('in', {
|
45
|
-
label: i18n('base.filter.include').d('包含'),
|
45
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
46
46
|
getDescription: createDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
47
47
|
render: ({ formData, option }) => (<Select v-model={formData[option.field]} multiple valueType="arraystring">{option.filterConfig.renderOptions()}</Select>),
|
48
48
|
getQueryParam: ({ formData, option }) => {
|
@@ -52,7 +52,7 @@ export function installFilterSelect(
|
|
52
52
|
},
|
53
53
|
})
|
54
54
|
.setHandler('not_in', {
|
55
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
55
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
56
56
|
getDescription: createDescriptionGetter({ multiple: true, valueType: 'arraystring' }),
|
57
57
|
render: ({ formData, option }) => (<Select v-model={formData[option.field]} multiple valueType="arraystring">{option.filterConfig.renderOptions()}</Select>),
|
58
58
|
getQueryParam: ({ formData, option }) => {
|
@@ -17,7 +17,7 @@ export function installFilterText(
|
|
17
17
|
}: iFilterService) {
|
18
18
|
touch('text')
|
19
19
|
.setHandler('like', {
|
20
|
-
label: i18n('base.filter.like').d('约等于'),
|
20
|
+
label: i18n.$it('base.filter.like').d('约等于'),
|
21
21
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} onEnter={confirm}/>),
|
22
22
|
getQueryParam: ({ formData, option }) => {
|
23
23
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -26,7 +26,7 @@ export function installFilterText(
|
|
26
26
|
},
|
27
27
|
})
|
28
28
|
.setHandler('eq', {
|
29
|
-
label: i18n('base.filter.equal').d('等于'),
|
29
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
30
30
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} onEnter={confirm}/>),
|
31
31
|
getQueryParam: ({ formData, option }) => {
|
32
32
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -35,7 +35,7 @@ export function installFilterText(
|
|
35
35
|
},
|
36
36
|
})
|
37
37
|
.setHandler('in_like', {
|
38
|
-
label: i18n('base.filter.include').d('包含'),
|
38
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
39
39
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} multiple valueType="arraystring"/>),
|
40
40
|
getQueryParam: ({ formData, option }) => {
|
41
41
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -44,7 +44,7 @@ export function installFilterText(
|
|
44
44
|
},
|
45
45
|
})
|
46
46
|
.setHandler('not_in_like', {
|
47
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
47
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
48
48
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} multiple valueType="arraystring"/>),
|
49
49
|
getQueryParam: ({ formData, option }) => {
|
50
50
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -40,7 +40,7 @@ export function installFilterObject(
|
|
40
40
|
}: iFilterService) {
|
41
41
|
touch<iFilterConfigObject>('object')
|
42
42
|
.setHandler('like', {
|
43
|
-
label: i18n('base.filter.like').d('约等于'),
|
43
|
+
label: i18n.$it('base.filter.like').d('约等于'),
|
44
44
|
render: ({ formData, option, confirm }) => (<Input v-model={formData[option.field!]} onEnter={confirm}/>),
|
45
45
|
getQueryParam: async ({ formData, option }) => {
|
46
46
|
const { isEmpty, value, field } = checkEmpty(formData, option);
|
@@ -49,7 +49,7 @@ export function installFilterObject(
|
|
49
49
|
},
|
50
50
|
})
|
51
51
|
.setHandler('eq', {
|
52
|
-
label: i18n('base.filter.equal').d('等于'),
|
52
|
+
label: i18n.$it('base.filter.equal').d('等于'),
|
53
53
|
render: ({ formData, option, confirm }) => (
|
54
54
|
<_Object
|
55
55
|
v-model={formData[option.field]}
|
@@ -69,7 +69,7 @@ export function installFilterObject(
|
|
69
69
|
},
|
70
70
|
})
|
71
71
|
.setHandler('in', {
|
72
|
-
label: i18n('base.filter.include').d('包含'),
|
72
|
+
label: i18n.$it('base.filter.include').d('包含'),
|
73
73
|
getDescription: createDescriptionGetter(),
|
74
74
|
render: ({ formData, option, confirm }) => (
|
75
75
|
<_Object
|
@@ -90,7 +90,7 @@ export function installFilterObject(
|
|
90
90
|
},
|
91
91
|
})
|
92
92
|
.setHandler('not_in', {
|
93
|
-
label: i18n('base.filter.notInclude').d('不包含'),
|
93
|
+
label: i18n.$it('base.filter.notInclude').d('不包含'),
|
94
94
|
getDescription: createDescriptionGetter(),
|
95
95
|
render: ({ formData, option, confirm }) => (
|
96
96
|
<_Object
|
@@ -168,9 +168,9 @@ export const FilterService = (() => {
|
|
168
168
|
const defaultNullHandler: Parameters<iFilterType<any>['setHandler']> = [
|
169
169
|
'is_null',
|
170
170
|
{
|
171
|
-
label: i18n('base.isEmpty').d('为空'),
|
171
|
+
label: i18n.$it('base.isEmpty').d('为空'),
|
172
172
|
getDescription: () => undefined,
|
173
|
-
render: () => (<Input placeholder={i18n('base.isEmpty').d('为空')} disabled/>),
|
173
|
+
render: () => (<Input placeholder={i18n.$it('base.isEmpty').d('为空')} disabled/>),
|
174
174
|
getQueryParam: ({ formData, option }) => {
|
175
175
|
const { value, field } = checkEmpty(formData, option);
|
176
176
|
if (!field) {return null;}
|
@@ -182,9 +182,9 @@ export const FilterService = (() => {
|
|
182
182
|
const defaultNotnullHandler: Parameters<iFilterType<any>['setHandler']> = [
|
183
183
|
'is_not_null',
|
184
184
|
{
|
185
|
-
label: i18n('base.isNotEmpty').d('不为空'),
|
185
|
+
label: i18n.$it('base.isNotEmpty').d('不为空'),
|
186
186
|
getDescription: () => undefined,
|
187
|
-
render: () => (<Input placeholder={i18n('base.isNotEmpty').d('不为空')} disabled/>),
|
187
|
+
render: () => (<Input placeholder={i18n.$it('base.isNotEmpty').d('不为空')} disabled/>),
|
188
188
|
getQueryParam: ({ formData, option }) => {
|
189
189
|
const { value, field } = checkEmpty(formData, option);
|
190
190
|
if (!field) {return null;}
|
@@ -214,10 +214,10 @@ export const FilterService = (() => {
|
|
214
214
|
* @date 2023.1.14 23:52
|
215
215
|
*/
|
216
216
|
const defaultRangeGetDescription = ({ formData, option }: { formData: PlainObject, option: iFilterOption }) => {
|
217
|
-
const start = !formData[option.startField] ? null : `${i18n('base.largerThan').d('大于')}${formData[option.startField]}`;
|
218
|
-
const end = !formData[option.endField] ? null : `${i18n('base.lessThan').d('小于')}${formData[option.endField]}`;
|
217
|
+
const start = !formData[option.startField] ? null : `${i18n.$it('base.largerThan').d('大于')}${formData[option.startField]}`;
|
218
|
+
const end = !formData[option.endField] ? null : `${i18n.$it('base.lessThan').d('小于')}${formData[option.endField]}`;
|
219
219
|
if (!start && !end) {return null;}
|
220
|
-
return [start, end].filter(Boolean).join(` ${i18n('base.and').d('并且')} `);
|
220
|
+
return [start, end].filter(Boolean).join(` ${i18n.$it('base.and').d('并且')} `);
|
221
221
|
};
|
222
222
|
|
223
223
|
return {
|
@@ -18,7 +18,7 @@ export function registryAnyValidationType(Validation: iValidation) {
|
|
18
18
|
/*any值的必填校验*/
|
19
19
|
if (required) {
|
20
20
|
if (isEmpty) {
|
21
|
-
return getMessage(i18n('base.validate.require').d('必填'));
|
21
|
+
return getMessage(i18n.$it('base.validate.require').d('必填'));
|
22
22
|
}
|
23
23
|
}
|
24
24
|
|
@@ -26,28 +26,28 @@ export function registryAnyValidationType(Validation: iValidation) {
|
|
26
26
|
const pattern = rule.pattern as RegExp;
|
27
27
|
if (!!pattern && !isEmpty) {
|
28
28
|
if (!pattern.test(String(value))) {
|
29
|
-
return getMessage(`${i18n('base.validate.notMatchPattern').d('不符合表达式')}:${pattern.source}`);
|
29
|
+
return getMessage(`${i18n.$it('base.validate.notMatchPattern').d('不符合表达式')}:${pattern.source}`);
|
30
30
|
}
|
31
31
|
}
|
32
32
|
|
33
33
|
/*最小值*/
|
34
34
|
if (rule.min != null) {
|
35
|
-
return getMessage(i18n('base.validate.canNotUseMinInAnyType').d('any类型无法使用min校验'));
|
35
|
+
return getMessage(i18n.$it('base.validate.canNotUseMinInAnyType').d('any类型无法使用min校验'));
|
36
36
|
}
|
37
37
|
/*最大值*/
|
38
38
|
if (rule.max != null) {
|
39
|
-
return getMessage(i18n('base.validate.canNotUseMaxInAnyType').d('any类型无法使用max校验'));
|
39
|
+
return getMessage(i18n.$it('base.validate.canNotUseMaxInAnyType').d('any类型无法使用max校验'));
|
40
40
|
}
|
41
41
|
/*固定长度*/
|
42
42
|
if (rule.len != null) {
|
43
|
-
return getMessage(i18n('base.validate.canNotUseLenInAnyType').d('any类型无法使用len校验'));
|
43
|
+
return getMessage(i18n.$it('base.validate.canNotUseLenInAnyType').d('any类型无法使用len校验'));
|
44
44
|
}
|
45
45
|
|
46
46
|
/*枚举范围(取值范围)*/
|
47
47
|
const _enum = rule.enum;
|
48
48
|
if (_enum && !isEmpty) {
|
49
49
|
if (toArray(value).some(i => _enum.indexOf(i) === -1)) {
|
50
|
-
return getMessage(i18n('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
50
|
+
return getMessage(i18n.$it('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
51
51
|
}
|
52
52
|
}
|
53
53
|
});
|
@@ -9,7 +9,7 @@ export function registryArrayValidationType(Validation: iValidation) {
|
|
9
9
|
|
10
10
|
export const validateArray: iRegistrationValidator = async ({ value, rule, required, getMessage }) => {
|
11
11
|
if (value != null && !Array.isArray(value)) {
|
12
|
-
return getMessage(i18n('base.validate.pleaseEnterArrayValue').d('请输入数组'));
|
12
|
+
return getMessage(i18n.$it('base.validate.pleaseEnterArrayValue').d('请输入数组'));
|
13
13
|
}
|
14
14
|
|
15
15
|
/*是否没有值*/
|
@@ -22,34 +22,34 @@ export const validateArray: iRegistrationValidator = async ({ value, rule, requi
|
|
22
22
|
/*any值的必填校验*/
|
23
23
|
if (required) {
|
24
24
|
if (isEmpty) {
|
25
|
-
return getMessage(i18n('base.validate.require').d('必填'));
|
25
|
+
return getMessage(i18n.$it('base.validate.require').d('必填'));
|
26
26
|
}
|
27
27
|
}
|
28
28
|
|
29
29
|
/*正则匹配*/
|
30
30
|
const pattern = rule.pattern as RegExp;
|
31
31
|
if (!!pattern && !isEmpty) {
|
32
|
-
return getMessage(i18n('base.validate.arrayCannotUsePatternValidation').d('数组不能使用正则校验'));
|
32
|
+
return getMessage(i18n.$it('base.validate.arrayCannotUsePatternValidation').d('数组不能使用正则校验'));
|
33
33
|
}
|
34
34
|
|
35
35
|
/*最小值*/
|
36
36
|
if (rule.min != null && !isEmpty && value.length < rule.min) {
|
37
|
-
return getMessage(i18n('base.validate.minimunValues', { num: rule.min }).d(`最少${rule.min}个值`));
|
37
|
+
return getMessage(i18n.$it('base.validate.minimunValues', { num: rule.min }).d(`最少${rule.min}个值`));
|
38
38
|
}
|
39
39
|
/*最大值*/
|
40
40
|
if (rule.max != null && !isEmpty && value.length > rule.max) {
|
41
|
-
return getMessage(i18n('base.validate.maximunValues', { num: rule.max }).d(`最多${rule.max}个值`));
|
41
|
+
return getMessage(i18n.$it('base.validate.maximunValues', { num: rule.max }).d(`最多${rule.max}个值`));
|
42
42
|
}
|
43
43
|
/*固定长度*/
|
44
44
|
if (rule.len != null && !isEmpty && value.length !== rule.len) {
|
45
|
-
return getMessage(i18n('base.validate.fixedValues', { num: rule.len }).d(`固定${rule.len}个值`));
|
45
|
+
return getMessage(i18n.$it('base.validate.fixedValues', { num: rule.len }).d(`固定${rule.len}个值`));
|
46
46
|
}
|
47
47
|
|
48
48
|
/*枚举范围(取值范围)*/
|
49
49
|
const _enum = rule.enum;
|
50
50
|
if (_enum && !isEmpty) {
|
51
51
|
if (toArray(value).some(i => _enum.indexOf(i) === -1)) {
|
52
|
-
return getMessage(i18n('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
52
|
+
return getMessage(i18n.$it('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
53
53
|
}
|
54
54
|
}
|
55
55
|
};
|
@@ -27,7 +27,7 @@ export const validateDatetimeValue = async ({ value, rule, required, getMessage
|
|
27
27
|
/*any值的必填校验*/
|
28
28
|
if (required) {
|
29
29
|
if (isEmpty) {
|
30
|
-
return getMessage(i18n('base.validate.require').d('必填'));
|
30
|
+
return getMessage(i18n.$it('base.validate.require').d('必填'));
|
31
31
|
}
|
32
32
|
}
|
33
33
|
|
@@ -37,7 +37,7 @@ export const validateDatetimeValue = async ({ value, rule, required, getMessage
|
|
37
37
|
}
|
38
38
|
if (!!pattern && !isEmpty) {
|
39
39
|
if (!pattern.test(String(value))) {
|
40
|
-
return getMessage(`${i18n('base.validate.notMatchPattern').d('不符合表达式')}:${pattern.source}`);
|
40
|
+
return getMessage(`${i18n.$it('base.validate.notMatchPattern').d('不符合表达式')}:${pattern.source}`);
|
41
41
|
}
|
42
42
|
}
|
43
43
|
|
@@ -46,7 +46,7 @@ export const validateDatetimeValue = async ({ value, rule, required, getMessage
|
|
46
46
|
const minPd = plainDate(String(rule.min), { displayFormat: format, valueFormat: format });
|
47
47
|
const invalid = toArray(value).find(i => plainDate(String(i), { displayFormat: format, valueFormat: format })[unit] < minPd[unit]);
|
48
48
|
if (!!invalid) {
|
49
|
-
return getMessage(i18n('base.validate.notLessThan', { num: rule.min }).d(`不能小于:${rule.min}`));
|
49
|
+
return getMessage(i18n.$it('base.validate.notLessThan', { num: rule.min }).d(`不能小于:${rule.min}`));
|
50
50
|
}
|
51
51
|
}
|
52
52
|
/*最大值*/
|
@@ -54,19 +54,19 @@ export const validateDatetimeValue = async ({ value, rule, required, getMessage
|
|
54
54
|
const maxPd = plainDate(String(rule.max), { displayFormat: format, valueFormat: format });
|
55
55
|
const invalid = toArray(value).find(i => plainDate(String(i), { displayFormat: format, valueFormat: format })[unit] > maxPd[unit]);
|
56
56
|
if (!!invalid) {
|
57
|
-
return getMessage(i18n('base.validate.notLargerThan', { num: rule.max }).d(`不能大于:${rule.max}`));
|
57
|
+
return getMessage(i18n.$it('base.validate.notLargerThan', { num: rule.max }).d(`不能大于:${rule.max}`));
|
58
58
|
}
|
59
59
|
}
|
60
60
|
/*固定长度*/
|
61
61
|
if (rule.len != null && Array.isArray(value) && value.length !== rule.len) {
|
62
|
-
return getMessage(i18n('base.validate.fixedValues', { num: rule.len }).d(`固定${rule.len}个值`));
|
62
|
+
return getMessage(i18n.$it('base.validate.fixedValues', { num: rule.len }).d(`固定${rule.len}个值`));
|
63
63
|
}
|
64
64
|
|
65
65
|
/*枚举范围(取值范围)*/
|
66
66
|
const _enum = rule.enum;
|
67
67
|
if (_enum && !isEmpty) {
|
68
68
|
if (toArray(value).some(i => _enum.indexOf(i) === -1)) {
|
69
|
-
return getMessage(i18n('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
69
|
+
return getMessage(i18n.$it('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
70
70
|
}
|
71
71
|
}
|
72
72
|
};
|
@@ -6,6 +6,6 @@ const defaultPattern = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-
|
|
6
6
|
|
7
7
|
export function registryEmailValidationType(Validation: iValidation) {
|
8
8
|
Validation.registryValidateType('email', async (param) => {
|
9
|
-
return checkStringValidation(param, { defaultPattern, patternMessage: i18n('base.validate.pleaseEnterCorrectEmail').d('请输入正确的邮箱地址') });
|
9
|
+
return checkStringValidation(param, { defaultPattern, patternMessage: i18n.$it('base.validate.pleaseEnterCorrectEmail').d('请输入正确的邮箱地址') });
|
10
10
|
});
|
11
11
|
}
|
@@ -8,6 +8,6 @@ const regexp18 =
|
|
8
8
|
|
9
9
|
export function registryIdcardValidationType(Validation: iValidation) {
|
10
10
|
Validation.registryValidateType('idcard', async (param) => {
|
11
|
-
return checkStringValidation(param, { defaultPattern: [regexp15, regexp18], patternMessage: i18n('base.validate.pleaseEnterCorrectIdCard').d('请输入正确的身份证号') });
|
11
|
+
return checkStringValidation(param, { defaultPattern: [regexp15, regexp18], patternMessage: i18n.$it('base.validate.pleaseEnterCorrectIdCard').d('请输入正确的身份证号') });
|
12
12
|
});
|
13
13
|
}
|
@@ -16,14 +16,14 @@ export function registryNumberValidationType(Validation: iValidation) {
|
|
16
16
|
value = Number(value);
|
17
17
|
}
|
18
18
|
if (typeof value !== "number" || isNaN(value)) {
|
19
|
-
return getMessage(i18n('base.validate.pleaseEnterNumber').d('请输入数字'));
|
19
|
+
return getMessage(i18n.$it('base.validate.pleaseEnterNumber').d('请输入数字'));
|
20
20
|
}
|
21
21
|
}
|
22
22
|
|
23
23
|
/*any值的必填校验*/
|
24
24
|
if (required) {
|
25
25
|
if (isEmpty) {
|
26
|
-
return getMessage(i18n('base.validate.require').d('必填'));
|
26
|
+
return getMessage(i18n.$it('base.validate.require').d('必填'));
|
27
27
|
}
|
28
28
|
}
|
29
29
|
|
@@ -31,28 +31,28 @@ export function registryNumberValidationType(Validation: iValidation) {
|
|
31
31
|
const pattern = rule.pattern as RegExp;
|
32
32
|
if (!!pattern && !isEmpty) {
|
33
33
|
if (!pattern.test(String(value))) {
|
34
|
-
return getMessage(`${i18n('base.validate.notMatchPattern').d('不符合表达式')}:${pattern.source}`);
|
34
|
+
return getMessage(`${i18n.$it('base.validate.notMatchPattern').d('不符合表达式')}:${pattern.source}`);
|
35
35
|
}
|
36
36
|
}
|
37
37
|
|
38
38
|
/*最小值*/
|
39
39
|
if (rule.min != null && !isEmpty && value < rule.min) {
|
40
|
-
return getMessage(i18n('base.validate.minValue', { num: rule.min }).d(`最小值${rule.min}`));
|
40
|
+
return getMessage(i18n.$it('base.validate.minValue', { num: rule.min }).d(`最小值${rule.min}`));
|
41
41
|
}
|
42
42
|
/*最大值*/
|
43
43
|
if (rule.max != null && !isEmpty && value > rule.max) {
|
44
|
-
return getMessage(i18n('base.validate.maxValue', { num: rule.max }).d(`最大值${rule.max}`));
|
44
|
+
return getMessage(i18n.$it('base.validate.maxValue', { num: rule.max }).d(`最大值${rule.max}`));
|
45
45
|
}
|
46
46
|
/*固定长度*/
|
47
47
|
if (rule.len != null && !isEmpty && String(value).length !== rule.len) {
|
48
|
-
return getMessage(i18n('base.validate.fixedLength', { num: rule.len }).d(`固定长度${rule.len}个字符`));
|
48
|
+
return getMessage(i18n.$it('base.validate.fixedLength', { num: rule.len }).d(`固定长度${rule.len}个字符`));
|
49
49
|
}
|
50
50
|
|
51
51
|
/*枚举范围(取值范围)*/
|
52
52
|
const _enum = rule.enum;
|
53
53
|
if (_enum && !isEmpty) {
|
54
54
|
if (toArray(value).some(i => _enum.indexOf(i) === -1)) {
|
55
|
-
return getMessage(i18n('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
55
|
+
return getMessage(i18n.$it('base.validate.outOfRange', { value, range: _enum }).d(`值${value}超出了范围${_enum}`));
|
56
56
|
}
|
57
57
|
}
|
58
58
|
});
|
@@ -6,6 +6,6 @@ const defaultPattern = /^1[3456789]\d{9}$/;
|
|
6
6
|
|
7
7
|
export function registryPhoneValidationType(Validation: iValidation) {
|
8
8
|
Validation.registryValidateType('phone', async (param) => {
|
9
|
-
return checkStringValidation(param, { defaultPattern, patternMessage: i18n('base.validate.pleaseEnterCorrectPhoneNumber').d('请输入正确的手机号码') });
|
9
|
+
return checkStringValidation(param, { defaultPattern, patternMessage: i18n.$it('base.validate.pleaseEnterCorrectPhoneNumber').d('请输入正确的手机号码') });
|
10
10
|
});
|
11
11
|
}
|
@@ -6,6 +6,6 @@ const defaultPattern = /^[1-9][0-9]{4,9}$/;
|
|
6
6
|
|
7
7
|
export function registryQQValidationType(Validation: iValidation) {
|
8
8
|
Validation.registryValidateType('qq', async (param) => {
|
9
|
-
return checkStringValidation(param, { defaultPattern, patternMessage: i18n('base.validate.pleaseEnterCorrectQQNum').d('请输入正确的QQ号码') });
|
9
|
+
return checkStringValidation(param, { defaultPattern, patternMessage: i18n.$it('base.validate.pleaseEnterCorrectQQNum').d('请输入正确的QQ号码') });
|
10
10
|
});
|
11
11
|
}
|