ll-plus 2.3.20 → 2.4.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.
Files changed (51) hide show
  1. package/es/components/advanced-filtering/index.d.ts +6 -0
  2. package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +3 -0
  3. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +3 -0
  4. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs +5 -1
  5. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs.map +1 -1
  6. package/es/components/form/index.d.ts +2 -0
  7. package/es/components/form/src/form.vue.d.ts +23 -20
  8. package/es/components/form/src/form.vue2.mjs +9 -1
  9. package/es/components/form/src/form.vue2.mjs.map +1 -1
  10. package/es/components/key-value/index.d.ts +26 -11
  11. package/es/components/key-value/src/components/key-value-item.vue.d.ts +44 -38
  12. package/es/components/key-value/src/components/key-value-item.vue2.mjs +7 -2
  13. package/es/components/key-value/src/components/key-value-item.vue2.mjs.map +1 -1
  14. package/es/components/key-value/src/config/key-value-item.d.ts +1 -0
  15. package/es/components/key-value/src/config/key-value-item.mjs.map +1 -1
  16. package/es/components/key-value/src/key-value.vue.d.ts +26 -11
  17. package/index.full.js +21 -4
  18. package/index.full.min.js +23 -23
  19. package/index.full.min.js.map +1 -1
  20. package/index.full.min.mjs +23 -23
  21. package/index.full.min.mjs.map +1 -1
  22. package/index.full.mjs +21 -4
  23. package/lib/components/advanced-filtering/index.d.ts +6 -0
  24. package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +3 -0
  25. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +3 -0
  26. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js +5 -1
  27. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js.map +1 -1
  28. package/lib/components/form/index.d.ts +2 -0
  29. package/lib/components/form/src/form.vue.d.ts +23 -20
  30. package/lib/components/form/src/form.vue2.js +9 -1
  31. package/lib/components/form/src/form.vue2.js.map +1 -1
  32. package/lib/components/key-value/index.d.ts +26 -11
  33. package/lib/components/key-value/src/components/key-value-item.vue.d.ts +44 -38
  34. package/lib/components/key-value/src/components/key-value-item.vue2.js +7 -2
  35. package/lib/components/key-value/src/components/key-value-item.vue2.js.map +1 -1
  36. package/lib/components/key-value/src/config/key-value-item.d.ts +1 -0
  37. package/lib/components/key-value/src/config/key-value-item.js.map +1 -1
  38. package/lib/components/key-value/src/key-value.vue.d.ts +26 -11
  39. package/package.json +1 -1
  40. package/theme-chalk/css/index.css +1 -1
  41. package/theme-chalk/css/modal.css +1 -1
  42. package/theme-chalk/css/operate-icon.css +1 -1
  43. package/types/packages/components/advanced-filtering/index.d.ts +6 -0
  44. package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +3 -0
  45. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +3 -0
  46. package/types/packages/components/form/index.d.ts +2 -0
  47. package/types/packages/components/form/src/form.vue.d.ts +23 -20
  48. package/types/packages/components/key-value/index.d.ts +26 -11
  49. package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +44 -38
  50. package/types/packages/components/key-value/src/config/key-value-item.d.ts +1 -0
  51. package/types/packages/components/key-value/src/key-value.vue.d.ts +26 -11
@@ -2734,6 +2734,7 @@ export declare const LlAdvancedFiltering: import("ll-plus/es/utils").SFCWithInst
2734
2734
  is: (name?: string) => string;
2735
2735
  };
2736
2736
  innerValue: import("vue").Ref<{}>;
2737
+ key: import("vue").Ref<number>;
2737
2738
  computeFormColumns: import("vue").ComputedRef<import("./src/advanced-filtering").FilterColumn[]>;
2738
2739
  handleClose: () => void;
2739
2740
  handleAdvancedFilterConfirm: () => void;
@@ -4118,6 +4119,8 @@ export declare const LlAdvancedFiltering: import("ll-plus/es/utils").SFCWithInst
4118
4119
  formRef: import("vue").Ref<any>;
4119
4120
  validate: () => Promise<any>;
4120
4121
  resetFields: () => Promise<any>;
4122
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
4123
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
4121
4124
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
4122
4125
  getFormItemClass: (item?: any) => string;
4123
4126
  readonly isEmpty: {
@@ -11238,6 +11241,7 @@ export declare const LlAdvancedFilteringParams: import("ll-plus/es/utils").SFCWi
11238
11241
  is: (name?: string) => string;
11239
11242
  };
11240
11243
  innerValue: import("vue").Ref<{}>;
11244
+ key: import("vue").Ref<number>;
11241
11245
  computeFormColumns: import("vue").ComputedRef<import("./src/advanced-filtering").FilterColumn[]>;
11242
11246
  handleClose: () => void;
11243
11247
  handleAdvancedFilterConfirm: () => void;
@@ -12622,6 +12626,8 @@ export declare const LlAdvancedFilteringParams: import("ll-plus/es/utils").SFCWi
12622
12626
  formRef: import("vue").Ref<any>;
12623
12627
  validate: () => Promise<any>;
12624
12628
  resetFields: () => Promise<any>;
12629
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
12630
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
12625
12631
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
12626
12632
  getFormItemClass: (item?: any) => string;
12627
12633
  readonly isEmpty: {
@@ -2731,6 +2731,7 @@ declare const _default: import("vue").DefineComponent<{
2731
2731
  is: (name?: string) => string;
2732
2732
  };
2733
2733
  innerValue: import("vue").Ref<{}>;
2734
+ key: import("vue").Ref<number>;
2734
2735
  computeFormColumns: import("vue").ComputedRef<import("ll-plus/es/components").FilterColumn[]>;
2735
2736
  handleClose: () => void;
2736
2737
  handleAdvancedFilterConfirm: () => void;
@@ -4115,6 +4116,8 @@ declare const _default: import("vue").DefineComponent<{
4115
4116
  formRef: import("vue").Ref<any>;
4116
4117
  validate: () => Promise<any>;
4117
4118
  resetFields: () => Promise<any>;
4119
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
4120
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
4118
4121
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
4119
4122
  getFormItemClass: (item?: any) => string;
4120
4123
  readonly isEmpty: {
@@ -1143,6 +1143,7 @@ declare const _default: import("vue").DefineComponent<{
1143
1143
  is: (name?: string) => string;
1144
1144
  };
1145
1145
  innerValue: import("vue").Ref<{}>;
1146
+ key: import("vue").Ref<number>;
1146
1147
  computeFormColumns: import("vue").ComputedRef<import("ll-plus/es/components").FilterColumn[]>;
1147
1148
  handleClose: () => void;
1148
1149
  handleAdvancedFilterConfirm: () => void;
@@ -2527,6 +2528,8 @@ declare const _default: import("vue").DefineComponent<{
2527
2528
  formRef: import("vue").Ref<any>;
2528
2529
  validate: () => Promise<any>;
2529
2530
  resetFields: () => Promise<any>;
2531
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
2532
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
2530
2533
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
2531
2534
  getFormItemClass: (item?: any) => string;
2532
2535
  readonly isEmpty: {
@@ -27,11 +27,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
27
27
  const emits = __emit;
28
28
  const bem = createNamespace("advanced-filtering-params");
29
29
  const innerValue = ref({});
30
+ const key = ref(0);
30
31
  const computeFormColumns = computed(() => {
31
32
  return props.filterColumns.map((column) => {
32
33
  if (has(column, "options")) {
33
34
  if (column.options.length && column.options[0].value === ALL_VALUE || column.unUseDefaultOption) {
34
- console.log({ column });
35
35
  return column;
36
36
  }
37
37
  column.options = [
@@ -79,6 +79,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
79
79
  if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {
80
80
  innerValue.value = cloneDeep(obj);
81
81
  }
82
+ if (key.value === 0) {
83
+ innerValue.value = cloneDeep(obj);
84
+ key.value++;
85
+ }
82
86
  },
83
87
  {
84
88
  deep: true,
@@ -1 +1 @@
1
- {"version":3,"file":"advanced-filtering-params.vue2.mjs","sources":["../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-params.vue"],"sourcesContent":["<template>\n <a-card\n title=\"高级筛选\"\n :class=\"bem.b()\"\n onselectstart=\"return false\"\n :bordered=\"false\"\n >\n <template #extra>\n <ll-icon\n icon-name=\"icon-close2\"\n :style=\"{\n cursor: 'pointer'\n }\"\n @click=\"handleClose\"\n />\n </template>\n <div :class=\"bem.m('content')\">\n <ll-form\n v-if=\"props.filterColumns.length > 0\"\n v-bind=\"$attrs\"\n :form-columns=\"computeFormColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"innerValue\"\n @change=\"handleChange\"\n />\n <div v-else :class=\"bem.m('empty')\">\n <p>暂无数据</p>\n </div>\n </div>\n <div v-if=\"props.showFooter\" :class=\"bem.m('footer')\">\n <ll-button\n type=\"primary\"\n style=\"margin-right: 8px\"\n @click=\"handleAdvancedFilterConfirm\"\n >\n 确定\n </ll-button>\n <ll-button @click=\"handleClose\">取消</ll-button>\n </div>\n </a-card>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch, computed } from 'vue'\nimport { has, cloneDeep } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits,\n ALL_VALUE,\n initValue,\n filterAllValue\n} from '../advanced-filtering'\n\ndefineOptions({ name: 'LlAdvancedFilteringParams' })\n\nconst props = defineProps(advancedFilteringParamsProps)\n\nconst emits = defineEmits(advancedFilteringParamsEmits)\n\nconst bem = createNamespace('advanced-filtering-params')\n\nconst innerValue = ref({})\n\nconst computeFormColumns = computed(() => {\n return props.filterColumns.map(column => {\n if (has(column, 'options')) {\n if (\n (column.options.length && column.options[0].value === ALL_VALUE) ||\n column.unUseDefaultOption\n ) {\n console.log({ column })\n return column\n }\n column.options = [\n {\n label: column?.defaultOptionLabel ?? '全部',\n value: ALL_VALUE\n },\n ...column.options\n ]\n }\n return column\n })\n})\n\nconst handleClose = () => {\n emits('close')\n}\n\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (val: Record<string, any>) => {\n setData(val)\n}\n\nconst setData = (val: Record<string, any>) => {\n const value = cloneDeep(val)\n const obj: Record<string, any> = {}\n for (const i in value) {\n obj[i] = filterAllValue(value[i])\n }\n emits('update:value', obj)\n emits('changeValue', obj)\n}\n\nwatch(\n () => props.value,\n val => {\n const value = cloneDeep(val)\n const cloneInnerValue = cloneDeep(innerValue.value)\n const obj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n obj[item.key] = initValue(item, value)\n })\n const comparedObj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n comparedObj[item.key] = initValue(item, cloneInnerValue)\n })\n\n if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {\n innerValue.value = cloneDeep(obj)\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n () => innerValue.value,\n val => {\n setData(val)\n },\n {\n deep: true,\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"advanced-filtering-params.vue2.mjs","sources":["../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-params.vue"],"sourcesContent":["<template>\n <a-card\n title=\"高级筛选\"\n :class=\"bem.b()\"\n onselectstart=\"return false\"\n :bordered=\"false\"\n >\n <template #extra>\n <ll-icon\n icon-name=\"icon-close2\"\n :style=\"{\n cursor: 'pointer'\n }\"\n @click=\"handleClose\"\n />\n </template>\n <div :class=\"bem.m('content')\">\n <ll-form\n v-if=\"props.filterColumns.length > 0\"\n v-bind=\"$attrs\"\n :form-columns=\"computeFormColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"innerValue\"\n @change=\"handleChange\"\n />\n <div v-else :class=\"bem.m('empty')\">\n <p>暂无数据</p>\n </div>\n </div>\n <div v-if=\"props.showFooter\" :class=\"bem.m('footer')\">\n <ll-button\n type=\"primary\"\n style=\"margin-right: 8px\"\n @click=\"handleAdvancedFilterConfirm\"\n >\n 确定\n </ll-button>\n <ll-button @click=\"handleClose\">取消</ll-button>\n </div>\n </a-card>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch, computed } from 'vue'\nimport { has, cloneDeep } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits,\n ALL_VALUE,\n initValue,\n filterAllValue\n} from '../advanced-filtering'\n\ndefineOptions({ name: 'LlAdvancedFilteringParams' })\n\nconst props = defineProps(advancedFilteringParamsProps)\n\nconst emits = defineEmits(advancedFilteringParamsEmits)\n\nconst bem = createNamespace('advanced-filtering-params')\n\nconst innerValue = ref({})\n\nconst key = ref(0)\n\nconst computeFormColumns = computed(() => {\n return props.filterColumns.map(column => {\n if (has(column, 'options')) {\n if (\n (column.options.length && column.options[0].value === ALL_VALUE) ||\n column.unUseDefaultOption\n ) {\n return column\n }\n column.options = [\n {\n label: column?.defaultOptionLabel ?? '全部',\n value: ALL_VALUE\n },\n ...column.options\n ]\n }\n return column\n })\n})\n\nconst handleClose = () => {\n emits('close')\n}\n\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (val: Record<string, any>) => {\n setData(val)\n}\n\nconst setData = (val: Record<string, any>) => {\n const value = cloneDeep(val)\n const obj: Record<string, any> = {}\n for (const i in value) {\n obj[i] = filterAllValue(value[i])\n }\n emits('update:value', obj)\n emits('changeValue', obj)\n}\n\nwatch(\n () => props.value,\n val => {\n const value = cloneDeep(val)\n const cloneInnerValue = cloneDeep(innerValue.value)\n const obj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n obj[item.key] = initValue(item, value)\n })\n const comparedObj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n comparedObj[item.key] = initValue(item, cloneInnerValue)\n })\n if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {\n innerValue.value = cloneDeep(obj)\n }\n if (key.value === 0) {\n innerValue.value = cloneDeep(obj)\n key.value++\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n () => innerValue.value,\n val => {\n setData(val)\n },\n {\n deep: true,\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":"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"}
@@ -1413,6 +1413,8 @@ export declare const LlForm: import("ll-plus/es/utils").SFCWithInstall<import("v
1413
1413
  formRef: import("vue").Ref<any>;
1414
1414
  validate: () => Promise<any>;
1415
1415
  resetFields: () => Promise<any>;
1416
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
1417
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
1416
1418
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
1417
1419
  getFormItemClass: (item?: any) => string;
1418
1420
  readonly isEmpty: {
@@ -1,4 +1,5 @@
1
1
  import { type FormColumn } from './config';
2
+ import type { NamePath } from 'ant-design-vue/es/form/interface';
2
3
  declare const _default: import("vue").DefineComponent<{
3
4
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
4
5
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
@@ -169,10 +170,10 @@ declare const _default: import("vue").DefineComponent<{
169
170
  };
170
171
  rules: {
171
172
  type: import("vue").PropType<{
172
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
173
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
173
174
  }>;
174
175
  default: {
175
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
176
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
176
177
  };
177
178
  };
178
179
  validateMessages: {
@@ -392,10 +393,10 @@ declare const _default: import("vue").DefineComponent<{
392
393
  };
393
394
  rules: {
394
395
  type: import("vue").PropType<{
395
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
396
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
396
397
  }>;
397
398
  default: {
398
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
399
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
399
400
  };
400
401
  };
401
402
  validateMessages: {
@@ -615,10 +616,10 @@ declare const _default: import("vue").DefineComponent<{
615
616
  };
616
617
  rules: {
617
618
  type: import("vue").PropType<{
618
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
619
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
619
620
  }>;
620
621
  default: {
621
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
622
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
622
623
  };
623
624
  };
624
625
  validateMessages: {
@@ -838,10 +839,10 @@ declare const _default: import("vue").DefineComponent<{
838
839
  };
839
840
  rules: {
840
841
  type: import("vue").PropType<{
841
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
842
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
842
843
  }>;
843
844
  default: {
844
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
845
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
845
846
  };
846
847
  };
847
848
  validateMessages: {
@@ -1255,10 +1256,10 @@ declare const _default: import("vue").DefineComponent<{
1255
1256
  };
1256
1257
  rules: {
1257
1258
  type: import("vue").PropType<{
1258
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
1259
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
1259
1260
  }>;
1260
1261
  default: {
1261
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
1262
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
1262
1263
  };
1263
1264
  };
1264
1265
  validateMessages: {
@@ -1378,6 +1379,8 @@ declare const _default: import("vue").DefineComponent<{
1378
1379
  formRef: import("vue").Ref<any>;
1379
1380
  validate: () => Promise<any>;
1380
1381
  resetFields: () => Promise<any>;
1382
+ clearValidate: (nameList?: NamePath[]) => Promise<any>;
1383
+ scrollToField: (name: NamePath, options?: ScrollOptions) => Promise<any>;
1381
1384
  getBindValue: (item: FormColumn) => import("lodash").Omit<any, "label">;
1382
1385
  getFormItemClass: (item?: any) => string;
1383
1386
  readonly isEmpty: {
@@ -1596,10 +1599,10 @@ declare const _default: import("vue").DefineComponent<{
1596
1599
  };
1597
1600
  rules: {
1598
1601
  type: import("vue").PropType<{
1599
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
1602
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
1600
1603
  }>;
1601
1604
  default: {
1602
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
1605
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
1603
1606
  };
1604
1607
  };
1605
1608
  validateMessages: {
@@ -1819,10 +1822,10 @@ declare const _default: import("vue").DefineComponent<{
1819
1822
  };
1820
1823
  rules: {
1821
1824
  type: import("vue").PropType<{
1822
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
1825
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
1823
1826
  }>;
1824
1827
  default: {
1825
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
1828
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
1826
1829
  };
1827
1830
  };
1828
1831
  validateMessages: {
@@ -2042,10 +2045,10 @@ declare const _default: import("vue").DefineComponent<{
2042
2045
  };
2043
2046
  rules: {
2044
2047
  type: import("vue").PropType<{
2045
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
2048
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
2046
2049
  }>;
2047
2050
  default: {
2048
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
2051
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
2049
2052
  };
2050
2053
  };
2051
2054
  validateMessages: {
@@ -2265,10 +2268,10 @@ declare const _default: import("vue").DefineComponent<{
2265
2268
  };
2266
2269
  rules: {
2267
2270
  type: import("vue").PropType<{
2268
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
2271
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
2269
2272
  }>;
2270
2273
  default: {
2271
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
2274
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
2272
2275
  };
2273
2276
  };
2274
2277
  validateMessages: {
@@ -2683,10 +2686,10 @@ declare const _default: import("vue").DefineComponent<{
2683
2686
  };
2684
2687
  rules: {
2685
2688
  type: import("vue").PropType<{
2686
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
2689
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
2687
2690
  }>;
2688
2691
  default: {
2689
- [k: string]: import("ant-design-vue/es/form").RuleObject | import("ant-design-vue/es/form").RuleObject[];
2692
+ [k: string]: import("ant-design-vue/es/form/interface").RuleObject | import("ant-design-vue/es/form/interface").RuleObject[];
2690
2693
  };
2691
2694
  };
2692
2695
  validateMessages: {
@@ -24,6 +24,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
24
24
  const resetFields = async () => {
25
25
  return await formRef.value.resetFields();
26
26
  };
27
+ const clearValidate = async (nameList) => {
28
+ return await formRef.value.clearValidate(nameList);
29
+ };
30
+ const scrollToField = async (name, options) => {
31
+ return await formRef.value.scrollToField(name, options);
32
+ };
27
33
  const getBindValue = (item) => {
28
34
  const obj = { ...item };
29
35
  return omit(obj, ["label"]);
@@ -61,7 +67,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
61
67
  );
62
68
  __expose({
63
69
  validate,
64
- resetFields
70
+ resetFields,
71
+ clearValidate,
72
+ scrollToField
65
73
  });
66
74
  return (_ctx, _cache) => {
67
75
  const _component_ll_tooltip = resolveComponent("ll-tooltip");
@@ -1 +1 @@
1
- {"version":3,"file":"form.vue2.mjs","sources":["../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-spin :spinning=\"props.loading\">\n <a-form ref=\"formRef\" v-bind=\"props.formOptions\" :model=\"props.formData\">\n <a-row v-bind=\"props.rowOptions\">\n <a-col\n v-for=\"(item, index) in props.formColumns\"\n :key=\"index\"\n v-bind=\"item?.colOptions ?? {}\"\n :span=\"item?.spanCol ?? 24\"\n >\n <slot name=\"formItem\" :item=\"item\" :index=\"index\">\n <ll-form-item\n :name=\"item?.key ?? index\"\n :class=\"getFormItemClass(item)\"\n v-bind=\"getBindValue(item)\"\n >\n <template #label>\n <slot name=\"label\" :item=\"item\" :index=\"index\">\n <span>{{ item.label }}</span>\n <span v-if=\"item?.tip\" :class=\"bem.e('tooltip-wrapper')\">\n <ll-tooltip\n style=\"margin-left: 8px\"\n :overlay-class-name=\"bem.e('tooltip')\"\n :arrow-point-at-center=\"true\"\n :max-width=\"item?.tipConfig?.maxWidth ?? 406\"\n :placement=\"item?.tipConfig?.placement ?? 'top'\"\n :tip=\"item.tip\"\n :font-size=\"'16px'\"\n v-bind=\"item?.tipConfig\"\n />\n </span>\n </slot>\n </template>\n <slot name=\"content\" :item=\"item\" :index=\"index\">\n <template v-if=\"!isEmpty(item.children)\">\n <a-row :gutter=\"5\" v-bind=\"item.rowOptions\">\n <a-col\n v-for=\"(child, childIndex) in item.children\"\n :key=\"childIndex\"\n :style=\"{\n display: 'flex',\n 'align-items': 'center'\n }\"\n v-bind=\"item?.colOptions ?? {}\"\n >\n <slot name=\"children\" :item=\"child\" :index=\"index\">\n <form-component :item=\"child\" :form-data=\"formData\" />\n </slot>\n </a-col>\n </a-row>\n </template>\n <form-component v-else :item=\"item\" :form-data=\"formData\" />\n </slot>\n </ll-form-item>\n </slot>\n </a-col>\n </a-row>\n </a-form>\n </a-spin>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { reactive, ref, watch } from 'vue'\nimport { omit, isEmpty } from 'lodash-es'\nimport { formProps, formEmits, type FormColumn } from './config'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport formComponent from './components/form-component.vue'\n\n// 定义组件名称\ndefineOptions({ name: 'LlForm' })\n\n// Props\nconst props = defineProps(formProps)\n\nconst emits = defineEmits(formEmits)\n\nconst bem = createNamespace('form')\n\nconst formData = reactive(props.formData)\n\nconst formRef = ref()\n\nconst validate = async () => {\n return await formRef.value.validateFields()\n}\n\nconst resetFields = async () => {\n return await formRef.value.resetFields()\n}\n\nconst getBindValue = (item: FormColumn) => {\n const obj = { ...item }\n return omit(obj, ['label'])\n}\n\nconst getFormItemClass = (item = {} as FormColumn) => {\n if (props.formOptions.layout === 'horizontal') {\n if (item?.labelCol) {\n return item.labelCol.span && item.labelCol.span >= 24\n ? bem.is('label-top')\n : bem.is('label-left')\n } else {\n return bem.is('label-left')\n }\n }\n return bem.is('label-top')\n}\n\nwatch(\n () => formData,\n val => {\n emits('change', val)\n },\n {\n deep: true\n }\n)\n\nwatch(\n () => props.formData,\n async val => {\n for (const i in val) {\n formData[i] = val[i]\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n\ndefineExpose({\n validate,\n resetFields\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AA2EA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAM,gBAAgB,MAAM,CAAA,CAAA;AAElC,IAAM,MAAA,QAAA,GAAW,QAAS,CAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAExC,IAAA,MAAM,UAAU,GAAI,EAAA,CAAA;AAEpB,IAAA,MAAM,WAAW,YAAY;AAC3B,MAAO,OAAA,MAAM,OAAQ,CAAA,KAAA,CAAM,cAAe,EAAA,CAAA;AAAA,KAC5C,CAAA;AAEA,IAAA,MAAM,cAAc,YAAY;AAC9B,MAAO,OAAA,MAAM,OAAQ,CAAA,KAAA,CAAM,WAAY,EAAA,CAAA;AAAA,KACzC,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,IAAqB,KAAA;AACzC,MAAM,MAAA,GAAA,GAAM,EAAE,GAAG,IAAK,EAAA,CAAA;AACtB,MAAA,OAAO,IAAK,CAAA,GAAA,EAAK,CAAC,OAAO,CAAC,CAAA,CAAA;AAAA,KAC5B,CAAA;AAEA,IAAA,MAAM,gBAAmB,GAAA,CAAC,IAAO,GAAA,EAAqB,KAAA;AACpD,MAAI,IAAA,KAAA,CAAM,WAAY,CAAA,MAAA,KAAW,YAAc,EAAA;AAC7C,QAAA,IAAI,MAAM,QAAU,EAAA;AAClB,UAAA,OAAO,IAAK,CAAA,QAAA,CAAS,IAAQ,IAAA,IAAA,CAAK,QAAS,CAAA,IAAA,IAAQ,EAC/C,GAAA,GAAA,CAAI,EAAG,CAAA,WAAW,CAClB,GAAA,GAAA,CAAI,GAAG,YAAY,CAAA,CAAA;AAAA,SAClB,MAAA;AACL,UAAO,OAAA,GAAA,CAAI,GAAG,YAAY,CAAA,CAAA;AAAA,SAC5B;AAAA,OACF;AACA,MAAO,OAAA,GAAA,CAAI,GAAG,WAAW,CAAA,CAAA;AAAA,KAC3B,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,MAAM,QAAA;AAAA,MACN,CAAO,GAAA,KAAA;AACL,QAAA,KAAA,CAAM,UAAU,GAAG,CAAA,CAAA;AAAA,OACrB;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,QAAA;AAAA,MACZ,OAAM,GAAO,KAAA;AACX,QAAA,KAAA,MAAW,KAAK,GAAK,EAAA;AACnB,UAAS,QAAA,CAAA,CAAC,CAAI,GAAA,GAAA,CAAI,CAAC,CAAA,CAAA;AAAA,SACrB;AAAA,OACF;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,QACN,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACX,QAAA;AAAA,MACA,WAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"form.vue2.mjs","sources":["../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-spin :spinning=\"props.loading\">\n <a-form ref=\"formRef\" v-bind=\"props.formOptions\" :model=\"props.formData\">\n <a-row v-bind=\"props.rowOptions\">\n <a-col\n v-for=\"(item, index) in props.formColumns\"\n :key=\"index\"\n v-bind=\"item?.colOptions ?? {}\"\n :span=\"item?.spanCol ?? 24\"\n >\n <slot name=\"formItem\" :item=\"item\" :index=\"index\">\n <ll-form-item\n :name=\"item?.key ?? index\"\n :class=\"getFormItemClass(item)\"\n v-bind=\"getBindValue(item)\"\n >\n <template #label>\n <slot name=\"label\" :item=\"item\" :index=\"index\">\n <span>{{ item.label }}</span>\n <span v-if=\"item?.tip\" :class=\"bem.e('tooltip-wrapper')\">\n <ll-tooltip\n style=\"margin-left: 8px\"\n :overlay-class-name=\"bem.e('tooltip')\"\n :arrow-point-at-center=\"true\"\n :max-width=\"item?.tipConfig?.maxWidth ?? 406\"\n :placement=\"item?.tipConfig?.placement ?? 'top'\"\n :tip=\"item.tip\"\n :font-size=\"'16px'\"\n v-bind=\"item?.tipConfig\"\n />\n </span>\n </slot>\n </template>\n <slot name=\"content\" :item=\"item\" :index=\"index\">\n <template v-if=\"!isEmpty(item.children)\">\n <a-row :gutter=\"5\" v-bind=\"item.rowOptions\">\n <a-col\n v-for=\"(child, childIndex) in item.children\"\n :key=\"childIndex\"\n :style=\"{\n display: 'flex',\n 'align-items': 'center'\n }\"\n v-bind=\"item?.colOptions ?? {}\"\n >\n <slot name=\"children\" :item=\"child\" :index=\"index\">\n <form-component :item=\"child\" :form-data=\"formData\" />\n </slot>\n </a-col>\n </a-row>\n </template>\n <form-component v-else :item=\"item\" :form-data=\"formData\" />\n </slot>\n </ll-form-item>\n </slot>\n </a-col>\n </a-row>\n </a-form>\n </a-spin>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { reactive, ref, watch } from 'vue'\nimport { omit, isEmpty } from 'lodash-es'\nimport { formProps, formEmits, type FormColumn } from './config'\n\nimport type { NamePath } from 'ant-design-vue/es/form/interface'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport formComponent from './components/form-component.vue'\n\n// 定义组件名称\ndefineOptions({ name: 'LlForm' })\n\n// Props\nconst props = defineProps(formProps)\n\nconst emits = defineEmits(formEmits)\n\nconst bem = createNamespace('form')\n\nconst formData = reactive(props.formData)\n\nconst formRef = ref()\n\nconst validate = async () => {\n return await formRef.value.validateFields()\n}\n\nconst resetFields = async () => {\n return await formRef.value.resetFields()\n}\n\nconst clearValidate = async (nameList?: NamePath[]) => {\n return await formRef.value.clearValidate(nameList)\n}\n\nconst scrollToField = async (name: NamePath, options?: ScrollOptions) => {\n return await formRef.value.scrollToField(name, options)\n}\n\nconst getBindValue = (item: FormColumn) => {\n const obj = { ...item }\n return omit(obj, ['label'])\n}\n\nconst getFormItemClass = (item = {} as FormColumn) => {\n if (props.formOptions.layout === 'horizontal') {\n if (item?.labelCol) {\n return item.labelCol.span && item.labelCol.span >= 24\n ? bem.is('label-top')\n : bem.is('label-left')\n } else {\n return bem.is('label-left')\n }\n }\n return bem.is('label-top')\n}\n\nwatch(\n () => formData,\n val => {\n emits('change', val)\n },\n {\n deep: true\n }\n)\n\nwatch(\n () => props.formData,\n async val => {\n for (const i in val) {\n formData[i] = val[i]\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n\ndefineExpose({\n validate,\n resetFields,\n clearValidate,\n scrollToField\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -116,7 +116,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
116
116
  __epPropKey: true;
117
117
  };
118
118
  readonly keyTypes: {
119
- readonly type: import("vue").PropType<KeyType[]>;
119
+ readonly type: import("vue").PropType<import("./src/config").KeyType[]>;
120
120
  readonly required: false;
121
121
  readonly validator: ((val: unknown) => boolean) | undefined;
122
122
  __epPropKey: true;
@@ -152,7 +152,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
152
152
  readonly disabled?: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
153
153
  readonly keyValueType?: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => "single" | "doubt") | (() => "single" | "doubt") | ((new (...args: any[]) => "single" | "doubt") | (() => "single" | "doubt"))[], unknown, unknown> | undefined;
154
154
  readonly keyType?: any;
155
- readonly keyTypes?: KeyType[] | undefined;
155
+ readonly keyTypes?: import("./src/config").KeyType[] | undefined;
156
156
  readonly valueType?: any;
157
157
  readonly disabledValue?: number[] | undefined;
158
158
  readonly disabledKey?: number[] | undefined;
@@ -1560,6 +1560,8 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
1560
1560
  formRef: import("vue").Ref<any>;
1561
1561
  validate: () => Promise<any>;
1562
1562
  resetFields: () => Promise<any>;
1563
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
1564
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
1563
1565
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
1564
1566
  getFormItemClass: (item?: any) => string;
1565
1567
  readonly isEmpty: {
@@ -4359,6 +4361,8 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
4359
4361
  formRef: import("vue").Ref<any>;
4360
4362
  validate: () => Promise<any>;
4361
4363
  resetFields: () => Promise<any>;
4364
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
4365
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
4362
4366
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
4363
4367
  getFormItemClass: (item?: any) => string;
4364
4368
  readonly isEmpty: {
@@ -4687,9 +4691,10 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
4687
4691
  getValueDisabled: import("vue").ComputedRef<any>;
4688
4692
  getDeleteDisabled: import("vue").ComputedRef<import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined>;
4689
4693
  handleDelete: () => void;
4690
- handleChange: () => void;
4694
+ handleChange: () => Promise<void>;
4691
4695
  validate: () => Promise<any>;
4692
4696
  resetFields: () => Promise<any>;
4697
+ clearValidate: (namePath?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
4693
4698
  readonly isEmpty: {
4694
4699
  <T extends {
4695
4700
  __trapAny: any;
@@ -4972,7 +4977,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
4972
4977
  __epPropKey: true;
4973
4978
  };
4974
4979
  readonly keyTypes: {
4975
- readonly type: import("vue").PropType<KeyType[]>;
4980
+ readonly type: import("vue").PropType<import("./src/config").KeyType[]>;
4976
4981
  readonly required: false;
4977
4982
  readonly validator: ((val: unknown) => boolean) | undefined;
4978
4983
  __epPropKey: true;
@@ -5048,7 +5053,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
5048
5053
  __epPropKey: true;
5049
5054
  };
5050
5055
  readonly keyTypes: {
5051
- readonly type: import("vue").PropType<KeyType[]>;
5056
+ readonly type: import("vue").PropType<import("./src/config").KeyType[]>;
5052
5057
  readonly required: false;
5053
5058
  readonly validator: ((val: unknown) => boolean) | undefined;
5054
5059
  __epPropKey: true;
@@ -5084,7 +5089,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
5084
5089
  readonly disabled?: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
5085
5090
  readonly keyValueType?: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => "single" | "doubt") | (() => "single" | "doubt") | ((new (...args: any[]) => "single" | "doubt") | (() => "single" | "doubt"))[], unknown, unknown> | undefined;
5086
5091
  readonly keyType?: any;
5087
- readonly keyTypes?: KeyType[] | undefined;
5092
+ readonly keyTypes?: import("./src/config").KeyType[] | undefined;
5088
5093
  readonly valueType?: any;
5089
5094
  readonly disabledValue?: number[] | undefined;
5090
5095
  readonly disabledKey?: number[] | undefined;
@@ -6492,6 +6497,8 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
6492
6497
  formRef: import("vue").Ref<any>;
6493
6498
  validate: () => Promise<any>;
6494
6499
  resetFields: () => Promise<any>;
6500
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
6501
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
6495
6502
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
6496
6503
  getFormItemClass: (item?: any) => string;
6497
6504
  readonly isEmpty: {
@@ -9291,6 +9298,8 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
9291
9298
  formRef: import("vue").Ref<any>;
9292
9299
  validate: () => Promise<any>;
9293
9300
  resetFields: () => Promise<any>;
9301
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
9302
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
9294
9303
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
9295
9304
  getFormItemClass: (item?: any) => string;
9296
9305
  readonly isEmpty: {
@@ -9619,9 +9628,10 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
9619
9628
  getValueDisabled: import("vue").ComputedRef<any>;
9620
9629
  getDeleteDisabled: import("vue").ComputedRef<import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined>;
9621
9630
  handleDelete: () => void;
9622
- handleChange: () => void;
9631
+ handleChange: () => Promise<void>;
9623
9632
  validate: () => Promise<any>;
9624
9633
  resetFields: () => Promise<any>;
9634
+ clearValidate: (namePath?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
9625
9635
  readonly isEmpty: {
9626
9636
  <T extends {
9627
9637
  __trapAny: any;
@@ -9911,7 +9921,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
9911
9921
  __epPropKey: true;
9912
9922
  };
9913
9923
  readonly keyTypes: {
9914
- readonly type: import("vue").PropType<KeyType[]>;
9924
+ readonly type: import("vue").PropType<import("./src/config").KeyType[]>;
9915
9925
  readonly required: false;
9916
9926
  readonly validator: ((val: unknown) => boolean) | undefined;
9917
9927
  __epPropKey: true;
@@ -9943,7 +9953,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
9943
9953
  readonly disabled?: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
9944
9954
  readonly keyValueType?: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => "single" | "doubt") | (() => "single" | "doubt") | ((new (...args: any[]) => "single" | "doubt") | (() => "single" | "doubt"))[], unknown, unknown> | undefined;
9945
9955
  readonly keyType?: any;
9946
- readonly keyTypes?: KeyType[] | undefined;
9956
+ readonly keyTypes?: import("./src/config").KeyType[] | undefined;
9947
9957
  readonly valueType?: any;
9948
9958
  readonly disabledValue?: number[] | undefined;
9949
9959
  readonly disabledKey?: number[] | undefined;
@@ -11351,6 +11361,8 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
11351
11361
  formRef: import("vue").Ref<any>;
11352
11362
  validate: () => Promise<any>;
11353
11363
  resetFields: () => Promise<any>;
11364
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
11365
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
11354
11366
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
11355
11367
  getFormItemClass: (item?: any) => string;
11356
11368
  readonly isEmpty: {
@@ -14150,6 +14162,8 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
14150
14162
  formRef: import("vue").Ref<any>;
14151
14163
  validate: () => Promise<any>;
14152
14164
  resetFields: () => Promise<any>;
14165
+ clearValidate: (nameList?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
14166
+ scrollToField: (name: import("ant-design-vue/es/form/interface").NamePath, options?: ScrollOptions | undefined) => Promise<any>;
14153
14167
  getBindValue: (item: any) => import("lodash").Omit<any, "label">;
14154
14168
  getFormItemClass: (item?: any) => string;
14155
14169
  readonly isEmpty: {
@@ -14478,9 +14492,10 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
14478
14492
  getValueDisabled: import("vue").ComputedRef<any>;
14479
14493
  getDeleteDisabled: import("vue").ComputedRef<import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined>;
14480
14494
  handleDelete: () => void;
14481
- handleChange: () => void;
14495
+ handleChange: () => Promise<void>;
14482
14496
  validate: () => Promise<any>;
14483
14497
  resetFields: () => Promise<any>;
14498
+ clearValidate: (namePath?: import("ant-design-vue/es/form/interface").NamePath[] | undefined) => Promise<any>;
14484
14499
  readonly isEmpty: {
14485
14500
  <T extends {
14486
14501
  __trapAny: any;
@@ -14763,7 +14778,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
14763
14778
  __epPropKey: true;
14764
14779
  };
14765
14780
  readonly keyTypes: {
14766
- readonly type: import("vue").PropType<KeyType[]>;
14781
+ readonly type: import("vue").PropType<import("./src/config").KeyType[]>;
14767
14782
  readonly required: false;
14768
14783
  readonly validator: ((val: unknown) => boolean) | undefined;
14769
14784
  __epPropKey: true;