cnhis-design-vue 3.1.10 → 3.1.11-beta.2
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/.versionrc.json +32 -0
- package/es/packages/big-table/src/BigTable.vue.d.ts +16 -1
- package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.js +2 -4
- package/es/packages/big-table/src/components/edit-form/edit-select.js +3 -1
- package/es/packages/fabric-chart/index.d.ts +1 -32
- package/es/packages/fabric-chart/src/FabricChart.vue.d.ts +1 -33
- package/es/packages/fabric-chart/src/FabricChart.vue_vue_type_script_setup_true_lang.js +2 -131
- package/es/packages/fabric-chart/src/hooks/useCenter.d.ts +0 -4
- package/es/packages/fabric-chart/src/hooks/useCenter.js +0 -6
- package/es/packages/fabric-chart/src/hooks/useDraw.d.ts +0 -42
- package/es/packages/fabric-chart/src/hooks/useDraw.js +0 -75
- package/es/packages/fabric-chart/src/hooks/useGrid.d.ts +0 -4
- package/es/packages/fabric-chart/src/hooks/useGrid.js +0 -44
- package/es/packages/fabric-chart/src/hooks/useLeft.d.ts +0 -4
- package/es/packages/fabric-chart/src/hooks/useLeft.js +0 -65
- package/es/packages/fabric-chart/src/hooks/useRight.d.ts +0 -0
- package/es/packages/fabric-chart/src/hooks/useRight.js +1 -0
- package/es/packages/fabric-chart/src/hooks/useTop.d.ts +0 -4
- package/es/packages/fabric-chart/src/hooks/useTop.js +0 -123
- package/es/packages/fabric-chart/src/interface.d.ts +0 -88
- package/es/packages/fabric-chart/src/interface.js +0 -3
- package/es/packages/form-render/index.d.ts +724 -3
- package/es/packages/form-render/index.js +2 -0
- package/es/packages/form-render/src/FormRender.vue.d.ts +724 -3
- package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.js +90 -58
- package/es/packages/form-render/src/components/index.d.ts +0 -16
- package/es/packages/form-render/src/components/index.js +1 -16
- package/es/packages/form-render/src/components/{cascader.d.ts → renderer/cascader.d.ts} +2 -2
- package/es/packages/form-render/src/components/{cascader.js → renderer/cascader.js} +3 -3
- package/es/packages/form-render/src/components/{checkbox.d.ts → renderer/checkbox.d.ts} +1 -1
- package/es/packages/form-render/src/components/{checkbox.js → renderer/checkbox.js} +1 -1
- package/es/packages/form-render/src/components/{combination.d.ts → renderer/combination.d.ts} +1 -1
- package/es/packages/form-render/src/components/{combination.js → renderer/combination.js} +3 -3
- package/es/packages/form-render/src/components/{complex.d.ts → renderer/complex.d.ts} +0 -0
- package/es/packages/form-render/src/components/{complex.js → renderer/complex.js} +1 -1
- package/es/packages/form-render/src/components/{date.d.ts → renderer/date.d.ts} +0 -0
- package/es/packages/form-render/src/components/{date.js → renderer/date.js} +0 -0
- package/es/packages/form-render/src/components/{formItem.d.ts → renderer/formItem.d.ts} +0 -0
- package/es/packages/form-render/src/components/{formItem.js → renderer/formItem.js} +0 -0
- package/es/packages/form-render/src/components/renderer/index.d.ts +16 -0
- package/es/packages/form-render/src/components/renderer/index.js +16 -0
- package/es/packages/form-render/src/components/{input.d.ts → renderer/input.d.ts} +0 -0
- package/es/packages/form-render/src/components/{input.js → renderer/input.js} +1 -1
- package/es/packages/form-render/src/components/{inputGroup.d.ts → renderer/inputGroup.d.ts} +0 -0
- package/es/packages/form-render/src/components/{inputGroup.js → renderer/inputGroup.js} +0 -0
- package/es/packages/form-render/src/components/{inputNumber.d.ts → renderer/inputNumber.d.ts} +0 -0
- package/es/packages/form-render/src/components/{inputNumber.js → renderer/inputNumber.js} +1 -1
- package/es/packages/form-render/src/components/{labelSelect.d.ts → renderer/labelSelect.d.ts} +0 -0
- package/es/packages/form-render/src/components/{labelSelect.js → renderer/labelSelect.js} +0 -0
- package/es/packages/form-render/src/components/{collapse.d.ts → renderer/linebar.d.ts} +1 -1
- package/es/packages/form-render/src/components/{collapse.js → renderer/linebar.js} +17 -8
- package/es/packages/form-render/src/components/{radio.d.ts → renderer/radio.d.ts} +1 -1
- package/es/packages/form-render/src/components/{radio.js → renderer/radio.js} +1 -1
- package/es/packages/form-render/src/components/{select.d.ts → renderer/select.d.ts} +2 -2
- package/es/packages/form-render/src/components/{select.js → renderer/select.js} +3 -3
- package/es/packages/form-render/src/components/{slider.d.ts → renderer/slider.d.ts} +0 -0
- package/es/packages/form-render/src/components/{slider.js → renderer/slider.js} +1 -1
- package/es/packages/form-render/src/components/{switch.d.ts → renderer/switch.d.ts} +0 -0
- package/es/packages/form-render/src/components/{switch.js → renderer/switch.js} +1 -1
- package/es/packages/form-render/src/components/{textarea.d.ts → renderer/textarea.d.ts} +0 -0
- package/es/packages/form-render/src/components/{textarea.js → renderer/textarea.js} +1 -1
- package/es/packages/form-render/src/constants/index.d.ts +1 -0
- package/es/packages/form-render/src/constants/index.js +2 -1
- package/es/packages/form-render/src/hooks/index.d.ts +2 -0
- package/es/packages/form-render/src/hooks/index.js +2 -0
- package/es/packages/form-render/src/hooks/useAnchor.d.ts +16 -0
- package/es/packages/form-render/src/hooks/useAnchor.js +81 -0
- package/es/packages/form-render/src/hooks/useAsyncQueue.js +1 -2
- package/es/packages/form-render/src/hooks/useChangeContext.d.ts +1 -1
- package/es/packages/form-render/src/hooks/useFieldList2Schema.d.ts +1 -1
- package/es/packages/form-render/src/hooks/useFieldList2Schema.js +11 -11
- package/es/packages/form-render/src/hooks/useFormContext.d.ts +8 -0
- package/es/packages/form-render/src/hooks/useFormContext.js +26 -0
- package/es/packages/form-render/src/hooks/useFormItemDeps.d.ts +1 -1
- package/es/packages/form-render/src/hooks/useFormItemDeps.js +2 -2
- package/es/packages/form-render/src/hooks/useInitialData.d.ts +1 -1
- package/es/packages/form-render/src/types/index.d.ts +1 -0
- package/es/packages/form-render/src/utils/index.d.ts +2 -0
- package/es/packages/form-render/src/utils/index.js +10 -1
- package/es/packages/form-render/style/index.css +6 -3
- package/es/packages/index.css +6 -3
- package/es/packages/index.js +2 -0
- package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.js +8 -3
- package/es/packages/scale-view/src/hooks/scaleview-init.js +1 -3
- package/es/packages/scale-view/src/hooks/scaleview-validate.js +2 -2
- package/es/packages/select-person/index.d.ts +1 -1
- package/es/packages/select-person/src/SelectPerson.vue.d.ts +6 -6
- package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.js +14 -3
- package/es/src/utils/anime.d.ts +1 -1
- package/es/src/utils/anime.js +4 -1
- package/package.json +1 -1
- package/es/packages/fabric-chart/src/utils/index.d.ts +0 -2
- package/es/packages/fabric-chart/src/utils/index.js +0 -15334
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { doAnimation } from '../../../../src/utils/anime';
|
|
2
|
+
import { useDebounceFn } from '@vueuse/core';
|
|
3
|
+
import { isNumber } from 'lodash-es';
|
|
4
|
+
import { ref, computed, nextTick, watch } from 'vue';
|
|
5
|
+
import { FormItemLineBarDepKeyPrepend } from '../../../../packages/form-render/src/constants';
|
|
6
|
+
import { traverseSchema } from '../../../../packages/form-render/src/utils';
|
|
7
|
+
|
|
8
|
+
function useAnchor(props, collector) {
|
|
9
|
+
const currentAnchor = ref("");
|
|
10
|
+
async function updateCurrentAnchor(id) {
|
|
11
|
+
currentAnchor.value = id;
|
|
12
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
13
|
+
await scrollTo(id);
|
|
14
|
+
}
|
|
15
|
+
const formHeight = computed(() => {
|
|
16
|
+
if (isNumber(props.maxHeight))
|
|
17
|
+
return props.maxHeight + "px";
|
|
18
|
+
return props.maxHeight;
|
|
19
|
+
});
|
|
20
|
+
const anchorIdList = ref([]);
|
|
21
|
+
function generateAnchorList(schema) {
|
|
22
|
+
anchorIdList.value.length = 0;
|
|
23
|
+
traverseSchema(schema, (_schema) => {
|
|
24
|
+
var _a;
|
|
25
|
+
if (_schema["x-component"] === "LINEBAR") {
|
|
26
|
+
anchorIdList.value.push({ title: _schema.title, name: ((_a = _schema.name) == null ? void 0 : _a.toString()) || "" });
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
const scrollbarRef = ref();
|
|
31
|
+
let scrollLock = false;
|
|
32
|
+
async function scrollTo(id) {
|
|
33
|
+
scrollLock = true;
|
|
34
|
+
try {
|
|
35
|
+
if (!scrollbarRef.value)
|
|
36
|
+
return;
|
|
37
|
+
collector.trigger(FormItemLineBarDepKeyPrepend + id, true);
|
|
38
|
+
await nextTick();
|
|
39
|
+
const targetAnchor = scrollbarRef.value.querySelector(`#${id}`);
|
|
40
|
+
if (!targetAnchor)
|
|
41
|
+
return;
|
|
42
|
+
await new Promise((resolve) => {
|
|
43
|
+
doAnimation(scrollbarRef.value.scrollTop, targetAnchor.offsetTop, 300, (top) => {
|
|
44
|
+
var _a;
|
|
45
|
+
(_a = scrollbarRef.value) == null ? void 0 : _a.scrollTo({ top });
|
|
46
|
+
}, "easeInBounce", resolve);
|
|
47
|
+
});
|
|
48
|
+
} finally {
|
|
49
|
+
scrollLock = false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const onScroll = useDebounceFn(async function() {
|
|
53
|
+
var _a;
|
|
54
|
+
if (scrollLock || !scrollbarRef.value)
|
|
55
|
+
return;
|
|
56
|
+
const { scrollTop, clientHeight } = scrollbarRef.value;
|
|
57
|
+
const result = anchorIdList.value.find((anchor) => {
|
|
58
|
+
const node = scrollbarRef.value.querySelector(`#${anchor.name}`);
|
|
59
|
+
if (!node)
|
|
60
|
+
return;
|
|
61
|
+
return node.offsetTop >= scrollTop || node.offsetTop < scrollTop && node.clientHeight + node.offsetTop > scrollTop + clientHeight;
|
|
62
|
+
}) || anchorIdList.value[anchorIdList.value.length - 1];
|
|
63
|
+
currentAnchor.value = (_a = result == null ? void 0 : result.name) != null ? _a : "";
|
|
64
|
+
}, 300);
|
|
65
|
+
watch(anchorIdList, (anchorIdList2) => {
|
|
66
|
+
var _a, _b;
|
|
67
|
+
currentAnchor.value = (_b = (_a = anchorIdList2[0]) == null ? void 0 : _a.name) != null ? _b : "";
|
|
68
|
+
}, { deep: true, immediate: true });
|
|
69
|
+
return {
|
|
70
|
+
currentAnchor,
|
|
71
|
+
updateCurrentAnchor,
|
|
72
|
+
onScroll,
|
|
73
|
+
formHeight,
|
|
74
|
+
anchorIdList,
|
|
75
|
+
generateAnchorList,
|
|
76
|
+
scrollbarRef,
|
|
77
|
+
scrollTo
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export { useAnchor };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FormChangeContext } from '
|
|
1
|
+
import { FormChangeContext } from '../types';
|
|
2
2
|
export declare class ContextCollector {
|
|
3
3
|
private readonly contextMap;
|
|
4
4
|
setContext(key: string, prop: keyof FormChangeContext, value: any): void;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { arrayed, transformDateFormat } from '../utils/index.js';
|
|
2
|
-
import { useFormValidator } from '
|
|
2
|
+
import { useFormValidator, useTypeNormalize } from '../../../../packages/form-render';
|
|
3
3
|
import { isObject } from '@vueuse/core';
|
|
4
|
-
import { useTypeNormalize } from './useTypeNormalize.js';
|
|
5
4
|
|
|
6
5
|
function useFieldList2Schema(collector) {
|
|
7
6
|
const { createValidatorSchema } = useFormValidator();
|
|
@@ -115,14 +114,15 @@ function useFieldList2Schema(collector) {
|
|
|
115
114
|
});
|
|
116
115
|
return schema;
|
|
117
116
|
};
|
|
118
|
-
const
|
|
117
|
+
const createLinebarSchema = (item) => {
|
|
119
118
|
return {
|
|
120
119
|
name: item.val_key,
|
|
121
120
|
type: "void",
|
|
122
121
|
title: item.alias || item.name,
|
|
123
|
-
"x-component": "
|
|
122
|
+
"x-component": "LINEBAR",
|
|
124
123
|
"x-component-props": {
|
|
125
124
|
disabled: item.is_not_fold === "1",
|
|
125
|
+
id: item.val_key,
|
|
126
126
|
show: !!item.is_show
|
|
127
127
|
}
|
|
128
128
|
};
|
|
@@ -135,7 +135,7 @@ function useFieldList2Schema(collector) {
|
|
|
135
135
|
return schema;
|
|
136
136
|
};
|
|
137
137
|
const creatorMap = /* @__PURE__ */ new Map([
|
|
138
|
-
["LINEBAR",
|
|
138
|
+
["LINEBAR", createLinebarSchema],
|
|
139
139
|
["INPUT", createInputSchema],
|
|
140
140
|
["INPUT_NUMBER", createInputNumberSchema],
|
|
141
141
|
["SELECT", createSelectSchema],
|
|
@@ -169,19 +169,19 @@ function useFieldList2Schema(collector) {
|
|
|
169
169
|
};
|
|
170
170
|
const { normalize } = useTypeNormalize();
|
|
171
171
|
function transform(fieldList) {
|
|
172
|
-
let
|
|
172
|
+
let prevLinebar = null;
|
|
173
173
|
return fieldList.reduce((fin, cur) => {
|
|
174
174
|
var _a;
|
|
175
175
|
normalize(cur);
|
|
176
176
|
const obj_type = (_a = cur.validate) == null ? void 0 : _a.obj_type;
|
|
177
177
|
obj_type && collector.collect(obj_type, cur.val_key);
|
|
178
178
|
if (cur.html_type === "LINEBAR") {
|
|
179
|
-
fin[cur.val_key] =
|
|
180
|
-
|
|
181
|
-
} else if (
|
|
182
|
-
|
|
179
|
+
fin[cur.val_key] = createLinebarSchema(cur);
|
|
180
|
+
prevLinebar = fin[cur.val_key].properties = {};
|
|
181
|
+
} else if (prevLinebar) {
|
|
182
|
+
prevLinebar[cur.val_key] = createWidgetSchema(cur);
|
|
183
183
|
} else {
|
|
184
|
-
|
|
184
|
+
prevLinebar = null;
|
|
185
185
|
fin[cur.val_key] = createWidgetSchema(cur);
|
|
186
186
|
}
|
|
187
187
|
return fin;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AnyObject } from '../../../../../es/src/types';
|
|
2
|
+
export declare function useFormContext(props: AnyObject): {
|
|
3
|
+
asyncQueue: import("../../../../../es/packages/form-render").FormAsyncQueue;
|
|
4
|
+
SchemaField: import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
5
|
+
businessCollector: import("../../../../../es/packages/form-render").BusinessCollector;
|
|
6
|
+
changeContextCollector: import("../../../../../es/packages/form-render").ContextCollector;
|
|
7
|
+
formItemDepsCollector: import("../../../../../es/packages/form-render").FormItemDepsCollector;
|
|
8
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { provide } from 'vue';
|
|
2
|
+
import { createSchemaField } from '@formily/vue';
|
|
3
|
+
import { useAsyncQueue, useBusinessBinding, useChangeContext, useFormItemDeps } from '../../../../packages/form-render';
|
|
4
|
+
import * as components from '../../../../packages/form-render/src/components/renderer';
|
|
5
|
+
import { injectOrProvide } from '../../../../packages/form-render/src/utils';
|
|
6
|
+
import { InjectAsyncQueue, InjectionSchemaField, InjectionBusinessCollector, InjectionChangeContextCollector, InjectionFormItemDepsCollector } from '../../../../packages/form-render/src/constants';
|
|
7
|
+
|
|
8
|
+
function useFormContext(props) {
|
|
9
|
+
const asyncQueue = injectOrProvide(InjectAsyncQueue, () => useAsyncQueue().create(props.parallelism));
|
|
10
|
+
const SchemaField = injectOrProvide(InjectionSchemaField, () => createSchemaField({
|
|
11
|
+
components: {
|
|
12
|
+
...components,
|
|
13
|
+
...props.components
|
|
14
|
+
},
|
|
15
|
+
scope: props.scope
|
|
16
|
+
}).SchemaField);
|
|
17
|
+
const businessCollector = useBusinessBinding().create();
|
|
18
|
+
provide(InjectionBusinessCollector, businessCollector);
|
|
19
|
+
const changeContextCollector = useChangeContext().create();
|
|
20
|
+
provide(InjectionChangeContextCollector, changeContextCollector);
|
|
21
|
+
const formItemDepsCollector = useFormItemDeps().create();
|
|
22
|
+
provide(InjectionFormItemDepsCollector, formItemDepsCollector);
|
|
23
|
+
return { asyncQueue, SchemaField, businessCollector, changeContextCollector, formItemDepsCollector };
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export { useFormContext };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare class FormItemDepsCollector {
|
|
2
2
|
private readonly collector;
|
|
3
3
|
setDeps(key: string, dependKey: string | string[], callback: Function): void;
|
|
4
|
-
trigger(dependKey: string): void;
|
|
4
|
+
trigger(dependKey: string, payload?: any): void;
|
|
5
5
|
}
|
|
6
6
|
export declare function useFormItemDeps(): {
|
|
7
7
|
create: () => FormItemDepsCollector;
|
|
@@ -12,10 +12,10 @@ class FormItemDepsCollector {
|
|
|
12
12
|
this.collector.set(dependKey2, map);
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
|
-
trigger(dependKey) {
|
|
15
|
+
trigger(dependKey, payload) {
|
|
16
16
|
const map = this.collector.get(dependKey);
|
|
17
17
|
map && map.forEach((cb) => {
|
|
18
|
-
typeof cb === "function" && cb();
|
|
18
|
+
typeof cb === "function" && cb(payload);
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AnyObject } from '../../../../../es/src/types';
|
|
2
|
-
import { FieldItem } from '
|
|
2
|
+
import { FieldItem } from '../types';
|
|
3
3
|
export declare function useInitialData(): {
|
|
4
4
|
assignInitialData: (initialData?: AnyObject, fieldList?: FieldItem[]) => AnyObject;
|
|
5
5
|
};
|
|
@@ -23,6 +23,7 @@ export declare type FormRenderExpose = {
|
|
|
23
23
|
validate(): Promise<void>;
|
|
24
24
|
getFormValues(): AnyObject;
|
|
25
25
|
setFieldState(path: string, setter: (field: Field) => void): void;
|
|
26
|
+
resetFields(path?: string): void;
|
|
26
27
|
};
|
|
27
28
|
export declare type FormChangeContext = Partial<{
|
|
28
29
|
currentOption: AnyObject;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AnyObject } from '../../../../../es/src/types';
|
|
2
|
+
import { ISchema } from '@formily/json-schema/esm/types';
|
|
2
3
|
import { GeneralField } from '@formily/core';
|
|
3
4
|
import { InjectionKey } from 'vue';
|
|
4
5
|
import { IdCardParseInfo } from '../types';
|
|
@@ -12,3 +13,4 @@ export declare function isIdCard(idCardNo: string): boolean;
|
|
|
12
13
|
export declare function parseIdCard(idCardNo: string): IdCardParseInfo;
|
|
13
14
|
export declare function injectOrProvide<T>(key: InjectionKey<T>, creator: () => T): T;
|
|
14
15
|
export declare function generateUrlParams(field: GeneralField, dependKeys?: string | string[]): AnyObject;
|
|
16
|
+
export declare function traverseSchema(schema: ISchema, handler: (_s: ISchema) => void): void;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isObject } from 'lodash-es';
|
|
1
2
|
import { FIELD_SEX_VALUE } from '../constants/index.js';
|
|
2
3
|
import { isField } from '@formily/core';
|
|
3
4
|
import differenceInDays from '../../../../node_modules/date-fns/esm/differenceInDays/index.js';
|
|
@@ -67,5 +68,13 @@ function generateUrlParams(field, dependKeys) {
|
|
|
67
68
|
}
|
|
68
69
|
return result;
|
|
69
70
|
}
|
|
71
|
+
function traverseSchema(schema, handler) {
|
|
72
|
+
handler(schema);
|
|
73
|
+
if (isObject(schema.properties)) {
|
|
74
|
+
Object.values(schema.properties).forEach((_s) => {
|
|
75
|
+
traverseSchema(_s, handler);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}
|
|
70
79
|
|
|
71
|
-
export { arrayed, assignUpdateValue, formRenderLog, generateUrlParams, injectOrProvide, isIdCard, parseIdCard, transformDateFormat };
|
|
80
|
+
export { arrayed, assignUpdateValue, formRenderLog, generateUrlParams, injectOrProvide, isIdCard, parseIdCard, transformDateFormat, traverseSchema };
|
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
display: grid !important;
|
|
3
3
|
grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
|
|
4
4
|
gap: 0 8px;
|
|
5
|
+
max-height: var(--form-height);
|
|
6
|
+
overflow-y: auto;
|
|
7
|
+
position: relative;
|
|
5
8
|
}
|
|
6
9
|
.form-render__formItem {
|
|
7
10
|
grid-column: span var(--form-item-column) / span var(--form-item-column);
|
|
@@ -9,10 +12,10 @@
|
|
|
9
12
|
.form-render__formItem .n-date-picker {
|
|
10
13
|
width: 100%;
|
|
11
14
|
}
|
|
12
|
-
.form-
|
|
15
|
+
.form-render__linebar {
|
|
13
16
|
grid-column: span var(--column) / span var(--column);
|
|
14
17
|
}
|
|
15
|
-
.form-
|
|
18
|
+
.form-render__linebarHeader {
|
|
16
19
|
cursor: pointer;
|
|
17
20
|
display: flex;
|
|
18
21
|
background: #fafafa;
|
|
@@ -22,7 +25,7 @@
|
|
|
22
25
|
margin-bottom: 8px;
|
|
23
26
|
border: 1px solid #d9d9d9;
|
|
24
27
|
}
|
|
25
|
-
.form-
|
|
28
|
+
.form-render__linebarItem {
|
|
26
29
|
display: grid !important;
|
|
27
30
|
grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
|
|
28
31
|
gap: 0 8px;
|
package/es/packages/index.css
CHANGED
|
@@ -2618,6 +2618,9 @@ body > .vxe-table--tooltip-wrapper {
|
|
|
2618
2618
|
display: grid !important;
|
|
2619
2619
|
grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
|
|
2620
2620
|
gap: 0 8px;
|
|
2621
|
+
max-height: var(--form-height);
|
|
2622
|
+
overflow-y: auto;
|
|
2623
|
+
position: relative;
|
|
2621
2624
|
}
|
|
2622
2625
|
.form-render__formItem {
|
|
2623
2626
|
grid-column: span var(--form-item-column) / span var(--form-item-column);
|
|
@@ -2625,10 +2628,10 @@ body > .vxe-table--tooltip-wrapper {
|
|
|
2625
2628
|
.form-render__formItem .n-date-picker {
|
|
2626
2629
|
width: 100%;
|
|
2627
2630
|
}
|
|
2628
|
-
.form-
|
|
2631
|
+
.form-render__linebar {
|
|
2629
2632
|
grid-column: span var(--column) / span var(--column);
|
|
2630
2633
|
}
|
|
2631
|
-
.form-
|
|
2634
|
+
.form-render__linebarHeader {
|
|
2632
2635
|
cursor: pointer;
|
|
2633
2636
|
display: flex;
|
|
2634
2637
|
background: #fafafa;
|
|
@@ -2638,7 +2641,7 @@ body > .vxe-table--tooltip-wrapper {
|
|
|
2638
2641
|
margin-bottom: 8px;
|
|
2639
2642
|
border: 1px solid #d9d9d9;
|
|
2640
2643
|
}
|
|
2641
|
-
.form-
|
|
2644
|
+
.form-render__linebarItem {
|
|
2642
2645
|
display: grid !important;
|
|
2643
2646
|
grid-template-columns: repeat(var(--column), minmax(0px, 1fr));
|
|
2644
2647
|
gap: 0 8px;
|
package/es/packages/index.js
CHANGED
|
@@ -44,6 +44,8 @@ export { BusinessCollector, useBusinessBinding } from './form-render/src/hooks/u
|
|
|
44
44
|
export { ContextCollector, useChangeContext } from './form-render/src/hooks/useChangeContext.js';
|
|
45
45
|
export { FormItemDepsCollector, useFormItemDeps } from './form-render/src/hooks/useFormItemDeps.js';
|
|
46
46
|
export { useInitialData } from './form-render/src/hooks/useInitialData.js';
|
|
47
|
+
export { useAnchor } from './form-render/src/hooks/useAnchor.js';
|
|
48
|
+
export { useFormContext } from './form-render/src/hooks/useFormContext.js';
|
|
47
49
|
|
|
48
50
|
const components = {
|
|
49
51
|
CGrid: Grid,
|
|
@@ -264,6 +264,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
264
264
|
positiveText: "\u786E\u5B9A",
|
|
265
265
|
negativeText: "\u53D6\u6D88",
|
|
266
266
|
maskClosable: false,
|
|
267
|
+
closable: false,
|
|
267
268
|
onPositiveClick: () => {
|
|
268
269
|
onSubmitForm();
|
|
269
270
|
},
|
|
@@ -380,14 +381,18 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
380
381
|
}, 8, ["model", "rules"])
|
|
381
382
|
], 6),
|
|
382
383
|
unref(showSaveBtn) ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
|
383
|
-
|
|
384
|
+
createCommentVNode(" \u5206\u4EAB\u7684\u94FE\u63A5 \u9690\u85CF\u53D6\u6D88\u6309\u94AE "),
|
|
385
|
+
props.sourceType !== "guage" ? (openBlock(), createBlock(unref(NButton), {
|
|
386
|
+
key: 0,
|
|
387
|
+
onClick: cancel
|
|
388
|
+
}, {
|
|
384
389
|
default: withCtx(() => [
|
|
385
390
|
_hoisted_7
|
|
386
391
|
]),
|
|
387
392
|
_: 1
|
|
388
|
-
}),
|
|
393
|
+
})) : createCommentVNode("v-if", true),
|
|
389
394
|
!props.isLock ? (openBlock(), createBlock(unref(NButton), {
|
|
390
|
-
key:
|
|
395
|
+
key: 1,
|
|
391
396
|
onClick: onSubmit,
|
|
392
397
|
disabled: state.banSubmit,
|
|
393
398
|
type: "primary"
|
|
@@ -127,9 +127,7 @@ const ScaleViewInit = (props, state, emit, config) => {
|
|
|
127
127
|
list = list.filter((v) => !filterArr.includes(v.type));
|
|
128
128
|
state.formArray = formatArray(list || []);
|
|
129
129
|
state.form = defaultFormValue(state.formArray);
|
|
130
|
-
|
|
131
|
-
state.rules = formatRules(state.formArray);
|
|
132
|
-
}
|
|
130
|
+
state.rules = formatRules(state.formArray);
|
|
133
131
|
state.fontSize = data.fontSize;
|
|
134
132
|
state.spinning = false;
|
|
135
133
|
state.hasFrontAddress = false;
|
|
@@ -165,13 +165,13 @@ const ScaleViewValidate = (props, state, config) => {
|
|
|
165
165
|
state.choiceComObj[formKey(item)] = {};
|
|
166
166
|
rules[newTitle].push({
|
|
167
167
|
validator: (rule, value) => checkRadio(rule, value, item),
|
|
168
|
-
trigger: "change"
|
|
168
|
+
trigger: ["change", "blur"]
|
|
169
169
|
});
|
|
170
170
|
} else if (item.type === "CHECKBOX_BLOCK") {
|
|
171
171
|
state.choiceComObj[formKey(item)] = {};
|
|
172
172
|
rules[newTitle].push({
|
|
173
173
|
validator: (rule, value) => checkCheckbox(rule, value, item),
|
|
174
|
-
trigger: "change"
|
|
174
|
+
trigger: ["change", "blur"]
|
|
175
175
|
});
|
|
176
176
|
}
|
|
177
177
|
});
|
|
@@ -183,7 +183,7 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
183
183
|
staticDataSearch: () => void;
|
|
184
184
|
onExpand: (expandedKeys: any) => void;
|
|
185
185
|
searchClick: () => void;
|
|
186
|
-
isAllCheck: (checkedKeys?: never[]) => void;
|
|
186
|
+
isAllCheck: (checkedKeys?: never[], isTo?: boolean) => void;
|
|
187
187
|
addCheckedkeysMain: (keys: any) => void;
|
|
188
188
|
getParentKey: (key: any, tree: any) => any;
|
|
189
189
|
radioChange: (checked: any) => void;
|
|
@@ -182,7 +182,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
182
182
|
staticDataSearch: () => void;
|
|
183
183
|
onExpand: (expandedKeys: any) => void;
|
|
184
184
|
searchClick: () => void;
|
|
185
|
-
isAllCheck: (checkedKeys?: never[]) => void;
|
|
185
|
+
isAllCheck: (checkedKeys?: never[], isTo?: boolean) => void;
|
|
186
186
|
addCheckedkeysMain: (keys: any) => void;
|
|
187
187
|
getParentKey: (key: any, tree: any) => any;
|
|
188
188
|
radioChange: (checked: any) => void;
|
|
@@ -1676,7 +1676,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1676
1676
|
onBlur: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: FocusEvent) => void>>;
|
|
1677
1677
|
onClick: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: MouseEvent) => void>>;
|
|
1678
1678
|
onChange: import("vue").PropType<import("naive-ui/es/input/src/interface").OnUpdateValue>;
|
|
1679
|
-
onClear: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: MouseEvent) => void>>;
|
|
1679
|
+
onClear: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<(e: MouseEvent) => void>>; /**
|
|
1680
|
+
* 过滤默认值的右边展示
|
|
1681
|
+
*/
|
|
1680
1682
|
status: import("vue").PropType<import("naive-ui/es/form/src/interface").FormValidationStatus>;
|
|
1681
1683
|
'onUpdate:value': import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/input/src/interface").OnUpdateValue>>;
|
|
1682
1684
|
onUpdateValue: import("vue").PropType<import("naive-ui/es/_utils").MaybeArray<import("naive-ui/es/input/src/interface").OnUpdateValue>>;
|
|
@@ -2138,7 +2140,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2138
2140
|
'--n-box-shadow-focus-warning': string;
|
|
2139
2141
|
'--n-border-warning': string;
|
|
2140
2142
|
'--n-border-focus-warning': string;
|
|
2141
|
-
'--n-border-hover-warning': string;
|
|
2143
|
+
'--n-border-hover-warning': string;
|
|
2142
2144
|
'--n-loading-color-warning': string;
|
|
2143
2145
|
'--n-caret-color-error': string;
|
|
2144
2146
|
'--n-color-focus-error': string;
|
|
@@ -2794,9 +2796,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2794
2796
|
tableColorHover: string;
|
|
2795
2797
|
tableColorStriped: string;
|
|
2796
2798
|
pressedColor: string;
|
|
2797
|
-
opacityDisabled: string;
|
|
2798
|
-
* 过滤默认值的右边展示
|
|
2799
|
-
*/
|
|
2799
|
+
opacityDisabled: string;
|
|
2800
2800
|
inputColorDisabled: string;
|
|
2801
2801
|
buttonColor2: string;
|
|
2802
2802
|
buttonColor2Hover: string;
|
|
@@ -236,6 +236,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
236
236
|
return;
|
|
237
237
|
state.treeData.main = JSON.parse(JSON.stringify(props.data));
|
|
238
238
|
generateDataList(state.treeData.main, state.dataList.main);
|
|
239
|
+
generateDataList(state.treeData.main, state.dataList.other);
|
|
239
240
|
};
|
|
240
241
|
const getcheckedKeys = () => {
|
|
241
242
|
let checkedKeysMain = [], checkedKeysOther = [];
|
|
@@ -508,7 +509,9 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
508
509
|
state.expandedKeys = [];
|
|
509
510
|
if (!state.title) {
|
|
510
511
|
state.treeData.main = JSON.parse(JSON.stringify(props.data));
|
|
512
|
+
state.dataList.main = [];
|
|
511
513
|
generateDataList(state.treeData.main, state.dataList.main);
|
|
514
|
+
state.checkedKeys.main = state.checkedKeys.other.slice();
|
|
512
515
|
isAllCheck();
|
|
513
516
|
return;
|
|
514
517
|
}
|
|
@@ -525,7 +528,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
525
528
|
}) || [];
|
|
526
529
|
state.dataList.main = [];
|
|
527
530
|
generateDataList(state.treeData.main, state.dataList.main);
|
|
528
|
-
const currentKeys = state.checkedKeys.
|
|
531
|
+
const currentKeys = state.checkedKeys.other.slice();
|
|
529
532
|
state.checkedKeys.main = [];
|
|
530
533
|
const setCheckedKeys = (data) => {
|
|
531
534
|
if (!(data == null ? void 0 : data.length))
|
|
@@ -537,6 +540,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
537
540
|
});
|
|
538
541
|
};
|
|
539
542
|
setCheckedKeys(state.treeData.main);
|
|
543
|
+
state.checkedKeys.other = currentKeys;
|
|
540
544
|
};
|
|
541
545
|
const onExpand = (expandedKeys) => {
|
|
542
546
|
state.expandedKeys = expandedKeys;
|
|
@@ -552,8 +556,8 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
552
556
|
state.searchPage = 1;
|
|
553
557
|
searchFetch();
|
|
554
558
|
};
|
|
555
|
-
const isAllCheck = (checkedKeys = []) => {
|
|
556
|
-
if (!checkedKeys || checkedKeys.length == 0) {
|
|
559
|
+
const isAllCheck = (checkedKeys = [], isTo = false) => {
|
|
560
|
+
if (!checkedKeys || checkedKeys.length == 0 && !isTo) {
|
|
557
561
|
state.indeterminate = false;
|
|
558
562
|
state.singleChecked = false;
|
|
559
563
|
} else {
|
|
@@ -574,6 +578,12 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
574
578
|
let keys = getAllKeys(state.treeData.main);
|
|
575
579
|
state.indeterminate = !(keys == state.checkedKeys.main.length);
|
|
576
580
|
state.singleChecked = keys == state.checkedKeys.main.length;
|
|
581
|
+
if (typeof props.queryTreeSearch !== "function") {
|
|
582
|
+
state.checkedKeys.other = [...new Set(state.checkedKeys.other.concat(state.checkedKeys.main))];
|
|
583
|
+
state.checkedKeys.other = state.checkedKeys.other.filter((v) => {
|
|
584
|
+
return state.checkedKeys.main.includes(v) || !state.checkedKeys.main.includes(v) && state.dataList.main.findIndex((item) => item.key == v) == -1;
|
|
585
|
+
});
|
|
586
|
+
}
|
|
577
587
|
}
|
|
578
588
|
};
|
|
579
589
|
const addCheckedkeysMain = (keys) => {
|
|
@@ -631,6 +641,7 @@ var script = /* @__PURE__ */ defineComponent({
|
|
|
631
641
|
} else if (type == 2) {
|
|
632
642
|
state.checkedKeys.main = [];
|
|
633
643
|
state.autoExpandParent = true;
|
|
644
|
+
isAllCheck([], true);
|
|
634
645
|
}
|
|
635
646
|
};
|
|
636
647
|
const checkAllSearchTree = (type) => {
|
package/es/src/utils/anime.d.ts
CHANGED
|
@@ -31,5 +31,5 @@ declare const animeType: {
|
|
|
31
31
|
easeOutBounce: typeof bounceOut;
|
|
32
32
|
easeInOutBounce: (x: number) => number;
|
|
33
33
|
};
|
|
34
|
-
export declare const doAnimation: (startValue: number, endValue: number, during: number | undefined, callback: (v: number) => any, type?: keyof typeof animeType) => void;
|
|
34
|
+
export declare const doAnimation: (startValue: number, endValue: number, during: number | undefined, callback: (v: number) => any, type?: keyof typeof animeType, onAnimationEnd?: () => void) => void;
|
|
35
35
|
export {};
|
package/es/src/utils/anime.js
CHANGED
|
@@ -101,7 +101,7 @@ const animeType = {
|
|
|
101
101
|
return x < 0.5 ? (1 - bounceOut(1 - 2 * x)) / 2 : (1 + bounceOut(2 * x - 1)) / 2;
|
|
102
102
|
}
|
|
103
103
|
};
|
|
104
|
-
const doAnimation = (startValue, endValue, during = 1e3, callback, type = "easeInBack") => {
|
|
104
|
+
const doAnimation = (startValue, endValue, during = 1e3, callback, type = "easeInBack", onAnimationEnd) => {
|
|
105
105
|
const changeValue = endValue - startValue;
|
|
106
106
|
const updateTime = 1e3 / 60;
|
|
107
107
|
const updateCount = during / updateTime;
|
|
@@ -118,6 +118,9 @@ const doAnimation = (startValue, endValue, during = 1e3, callback, type = "easeI
|
|
|
118
118
|
position += perUpdateDistance;
|
|
119
119
|
if (position < endPosition) {
|
|
120
120
|
rAF(step);
|
|
121
|
+
} else {
|
|
122
|
+
rAF(() => callback(endValue));
|
|
123
|
+
onAnimationEnd == null ? void 0 : onAnimationEnd();
|
|
121
124
|
}
|
|
122
125
|
}
|
|
123
126
|
step();
|
package/package.json
CHANGED