ll-plus 2.3.15 → 2.3.17

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 (122) hide show
  1. package/es/components/advanced-filtering/index.d.ts +26 -6
  2. package/es/components/advanced-filtering/src/advanced-filtering.d.ts +1 -0
  3. package/es/components/advanced-filtering/src/advanced-filtering.mjs +2 -1
  4. package/es/components/advanced-filtering/src/advanced-filtering.mjs.map +1 -1
  5. package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +13 -3
  6. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +13 -3
  7. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs +5 -1
  8. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs.map +1 -1
  9. package/es/components/drawer/index.d.ts +2 -1
  10. package/es/components/drawer/src/components/second-confirmation/index.d.ts +2 -0
  11. package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -0
  12. package/es/components/drawer/src/drawer.vue.d.ts +2 -1
  13. package/es/components/drawer/src/drawer.vue2.mjs +43 -9
  14. package/es/components/drawer/src/drawer.vue2.mjs.map +1 -1
  15. package/es/components/form/index.d.ts +8 -2
  16. package/es/components/form/index.mjs +1 -1
  17. package/es/components/form/src/config/form.d.ts +6 -0
  18. package/es/components/form/src/config/form.mjs +7 -1
  19. package/es/components/form/src/config/form.mjs.map +1 -1
  20. package/es/components/form/src/config/index.mjs +1 -1
  21. package/es/components/form/src/form.vue.d.ts +8 -2
  22. package/es/components/form/src/form.vue2.mjs +14 -3
  23. package/es/components/form/src/form.vue2.mjs.map +1 -1
  24. package/es/components/index.mjs +2 -2
  25. package/es/components/key-value/index.d.ts +48 -12
  26. package/es/components/key-value/src/components/key-value-item.vue.d.ts +16 -4
  27. package/es/components/key-value/src/components/key-value-item.vue2.mjs +1 -0
  28. package/es/components/key-value/src/components/key-value-item.vue2.mjs.map +1 -1
  29. package/es/components/key-value/src/key-value.vue.d.ts +48 -12
  30. package/es/components/modal/index.d.ts +2 -0
  31. package/es/components/modal/src/modal.vue.d.ts +2 -0
  32. package/es/components/modal/src/modal.vue2.mjs +41 -2
  33. package/es/components/modal/src/modal.vue2.mjs.map +1 -1
  34. package/es/components/select-group/index.d.ts +18 -4
  35. package/es/components/select-group/index.mjs +1 -1
  36. package/es/components/select-group/src/select-group.d.ts +2 -1
  37. package/es/components/select-group/src/select-group.mjs +3 -2
  38. package/es/components/select-group/src/select-group.mjs.map +1 -1
  39. package/es/components/select-group/src/select-group.vue.d.ts +18 -4
  40. package/es/components/select-group/src/select-group.vue2.mjs +58 -14
  41. package/es/components/select-group/src/select-group.vue2.mjs.map +1 -1
  42. package/es/index.mjs +2 -2
  43. package/es/utils/props/runtime.d.ts +2 -2
  44. package/index.full.js +168 -25
  45. package/index.full.min.js +22 -22
  46. package/index.full.min.js.map +1 -1
  47. package/index.full.min.mjs +19 -19
  48. package/index.full.min.mjs.map +1 -1
  49. package/index.full.mjs +167 -26
  50. package/lib/components/advanced-filtering/index.d.ts +26 -6
  51. package/lib/components/advanced-filtering/src/advanced-filtering.d.ts +1 -0
  52. package/lib/components/advanced-filtering/src/advanced-filtering.js +2 -1
  53. package/lib/components/advanced-filtering/src/advanced-filtering.js.map +1 -1
  54. package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +13 -3
  55. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +13 -3
  56. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js +5 -1
  57. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js.map +1 -1
  58. package/lib/components/drawer/index.d.ts +2 -1
  59. package/lib/components/drawer/src/components/second-confirmation/index.d.ts +2 -0
  60. package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -0
  61. package/lib/components/drawer/src/drawer.vue.d.ts +2 -1
  62. package/lib/components/drawer/src/drawer.vue2.js +42 -8
  63. package/lib/components/drawer/src/drawer.vue2.js.map +1 -1
  64. package/lib/components/form/index.d.ts +8 -2
  65. package/lib/components/form/index.js +1 -0
  66. package/lib/components/form/index.js.map +1 -1
  67. package/lib/components/form/src/config/form.d.ts +6 -0
  68. package/lib/components/form/src/config/form.js +7 -0
  69. package/lib/components/form/src/config/form.js.map +1 -1
  70. package/lib/components/form/src/config/index.js +1 -0
  71. package/lib/components/form/src/config/index.js.map +1 -1
  72. package/lib/components/form/src/form.vue.d.ts +8 -2
  73. package/lib/components/form/src/form.vue2.js +12 -1
  74. package/lib/components/form/src/form.vue2.js.map +1 -1
  75. package/lib/components/index.js +2 -0
  76. package/lib/components/index.js.map +1 -1
  77. package/lib/components/key-value/index.d.ts +48 -12
  78. package/lib/components/key-value/src/components/key-value-item.vue.d.ts +16 -4
  79. package/lib/components/key-value/src/components/key-value-item.vue2.js +1 -0
  80. package/lib/components/key-value/src/components/key-value-item.vue2.js.map +1 -1
  81. package/lib/components/key-value/src/key-value.vue.d.ts +48 -12
  82. package/lib/components/modal/index.d.ts +2 -0
  83. package/lib/components/modal/src/modal.vue.d.ts +2 -0
  84. package/lib/components/modal/src/modal.vue2.js +40 -1
  85. package/lib/components/modal/src/modal.vue2.js.map +1 -1
  86. package/lib/components/select-group/index.d.ts +18 -4
  87. package/lib/components/select-group/index.js +1 -0
  88. package/lib/components/select-group/index.js.map +1 -1
  89. package/lib/components/select-group/src/select-group.d.ts +2 -1
  90. package/lib/components/select-group/src/select-group.js +3 -1
  91. package/lib/components/select-group/src/select-group.js.map +1 -1
  92. package/lib/components/select-group/src/select-group.vue.d.ts +18 -4
  93. package/lib/components/select-group/src/select-group.vue2.js +56 -12
  94. package/lib/components/select-group/src/select-group.vue2.js.map +1 -1
  95. package/lib/index.js +2 -0
  96. package/lib/index.js.map +1 -1
  97. package/lib/utils/props/runtime.d.ts +2 -2
  98. package/package.json +1 -1
  99. package/theme-chalk/css/drawer.css +1 -1
  100. package/theme-chalk/css/index.css +1 -1
  101. package/theme-chalk/css/modal.css +1 -1
  102. package/theme-chalk/css/select-group.css +1 -1
  103. package/types/packages/components/advanced-filtering/index.d.ts +26 -6
  104. package/types/packages/components/advanced-filtering/src/advanced-filtering.d.ts +1 -0
  105. package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +13 -3
  106. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +13 -3
  107. package/types/packages/components/drawer/index.d.ts +2 -1
  108. package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +2 -0
  109. package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -0
  110. package/types/packages/components/drawer/src/drawer.vue.d.ts +2 -1
  111. package/types/packages/components/form/index.d.ts +8 -2
  112. package/types/packages/components/form/src/config/form.d.ts +6 -0
  113. package/types/packages/components/form/src/form.vue.d.ts +8 -2
  114. package/types/packages/components/key-value/index.d.ts +48 -12
  115. package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +16 -4
  116. package/types/packages/components/key-value/src/key-value.vue.d.ts +48 -12
  117. package/types/packages/components/modal/index.d.ts +2 -0
  118. package/types/packages/components/modal/src/modal.vue.d.ts +2 -0
  119. package/types/packages/components/select-group/index.d.ts +18 -4
  120. package/types/packages/components/select-group/src/select-group.d.ts +2 -1
  121. package/types/packages/components/select-group/src/select-group.vue.d.ts +18 -4
  122. package/types/packages/utils/props/runtime.d.ts +2 -2
@@ -1106,6 +1106,12 @@ export declare const formProps: {
1106
1106
  }, boolean>;
1107
1107
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
1108
1108
  };
1109
+ export declare const formEmits: {
1110
+ /**
1111
+ * @description 表单项值改变时触发
1112
+ */
1113
+ change: (value: FormData) => boolean;
1114
+ };
1109
1115
  export type FormProps = ExtractPropTypes<typeof formProps>;
1110
1116
  export type FormInstance = InstanceType<typeof Form>;
1111
1117
  export {};
@@ -43,6 +43,12 @@ const formProps = buildProps({
43
43
  default: false
44
44
  }
45
45
  });
46
+ const formEmits = {
47
+ /**
48
+ * @description 表单项值改变时触发
49
+ */
50
+ change: (value) => !!value
51
+ };
46
52
 
47
- export { formProps };
53
+ export { formEmits, formProps };
48
54
  //# sourceMappingURL=form.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/config/form.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type {\n FormItemProps,\n RowProps,\n ColProps,\n FormProps as AntFormProps\n} from 'ant-design-vue'\nimport type { TooltipProps } from '@ll-plus/components'\nimport type Form from '../form.vue'\n\ntype FormType<T = any> = (\n | 'input'\n | 'input-number'\n | 'cascader'\n | 'checkbox'\n | 'checkbox-group'\n | 'code-editor'\n | 'date-picker'\n | 'time-picker'\n | 'date-range'\n | 'time-range'\n | 'radio'\n | 'radio-group'\n | 'select'\n | 'switch'\n | 'textarea'\n | 'upload-image'\n) &\n T\n\nexport interface BasicFormColumn extends FormItemProps {\n label?: string\n key: string\n spanCol?: number | 24 // 一行几条\n colOptions?: ColProps\n tip?: string\n tipConfig?: TooltipProps\n type: FormType\n unit?: string\n change?: () => void\n rowOptions?: RowProps\n children?: FormColumn[]\n [key: string]: any\n}\n\nexport type FormColumn<T = any> = BasicFormColumn & T\n\nexport type FormData = Record<string, any>\n\nexport const formProps = buildProps({\n /**\n * @description 表单项列表\n */\n formColumns: {\n type: definePropType<FormColumn[]>(Array),\n default: () => []\n },\n /**\n * @description 展开的行变化时触发\n */\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({\n layout: 'horizontal'\n })\n },\n /**\n * @description 展开的行变化时触发\n */\n formData: {\n type: definePropType<FormData>(Object),\n default: () => ({})\n },\n /**\n * @description 展开的行变化时触发\n */\n rowOptions: {\n type: definePropType<RowProps>(Object),\n default: () => ({\n gutter: 16\n })\n },\n /**\n * @description 表单加载状态\n */\n loading: {\n type: Boolean,\n default: false\n }\n} as const)\n\n// props\nexport type FormProps = ExtractPropTypes<typeof formProps>\n\n// instance\nexport type FormInstance = InstanceType<typeof Form>\n"],"names":[],"mappings":";;;;AAmDO,MAAM,YAAY,UAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIlC,WAAa,EAAA;AAAA,IACX,IAAA,EAAM,eAA6B,KAAK,CAAA;AAAA,IACxC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAA,EAAM,eAA6B,MAAM,CAAA;AAAA,IACzC,SAAS,OAAO;AAAA,MACd,MAAQ,EAAA,YAAA;AAAA,KACV,CAAA;AAAA,GACF;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAA,EAAM,eAAyB,MAAM,CAAA;AAAA,IACrC,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,eAAyB,MAAM,CAAA;AAAA,IACrC,SAAS,OAAO;AAAA,MACd,MAAQ,EAAA,EAAA;AAAA,KACV,CAAA;AAAA,GACF;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU;;;;"}
1
+ {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/config/form.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type {\n FormItemProps,\n RowProps,\n ColProps,\n FormProps as AntFormProps\n} from 'ant-design-vue'\nimport type { TooltipProps } from '@ll-plus/components'\nimport type Form from '../form.vue'\n\ntype FormType<T = any> = (\n | 'input'\n | 'input-number'\n | 'cascader'\n | 'checkbox'\n | 'checkbox-group'\n | 'code-editor'\n | 'date-picker'\n | 'time-picker'\n | 'date-range'\n | 'time-range'\n | 'radio'\n | 'radio-group'\n | 'select'\n | 'switch'\n | 'textarea'\n | 'upload-image'\n) &\n T\n\nexport interface BasicFormColumn extends FormItemProps {\n label?: string\n key: string\n spanCol?: number | 24 // 一行几条\n colOptions?: ColProps\n tip?: string\n tipConfig?: TooltipProps\n type: FormType\n unit?: string\n change?: () => void\n rowOptions?: RowProps\n children?: FormColumn[]\n [key: string]: any\n}\n\nexport type FormColumn<T = any> = BasicFormColumn & T\n\nexport type FormData = Record<string, any>\n\nexport const formProps = buildProps({\n /**\n * @description 表单项列表\n */\n formColumns: {\n type: definePropType<FormColumn[]>(Array),\n default: () => []\n },\n /**\n * @description 展开的行变化时触发\n */\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({\n layout: 'horizontal'\n })\n },\n /**\n * @description 展开的行变化时触发\n */\n formData: {\n type: definePropType<FormData>(Object),\n default: () => ({})\n },\n /**\n * @description 展开的行变化时触发\n */\n rowOptions: {\n type: definePropType<RowProps>(Object),\n default: () => ({\n gutter: 16\n })\n },\n /**\n * @description 表单加载状态\n */\n loading: {\n type: Boolean,\n default: false\n }\n} as const)\n\nexport const formEmits = {\n /**\n * @description 表单项值改变时触发\n */\n change: (value: FormData) => !!value\n}\n\n// props\nexport type FormProps = ExtractPropTypes<typeof formProps>\n\n// instance\nexport type FormInstance = InstanceType<typeof Form>\n"],"names":[],"mappings":";;;;AAmDO,MAAM,YAAY,UAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIlC,WAAa,EAAA;AAAA,IACX,IAAA,EAAM,eAA6B,KAAK,CAAA;AAAA,IACxC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAA,EAAM,eAA6B,MAAM,CAAA;AAAA,IACzC,SAAS,OAAO;AAAA,MACd,MAAQ,EAAA,YAAA;AAAA,KACV,CAAA;AAAA,GACF;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAA,EAAM,eAAyB,MAAM,CAAA;AAAA,IACrC,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,eAAyB,MAAM,CAAA;AAAA,IACrC,SAAS,OAAO;AAAA,MACd,MAAQ,EAAA,EAAA;AAAA,KACV,CAAA;AAAA,GACF;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAEH,MAAM,SAAY,GAAA;AAAA;AAAA;AAAA;AAAA,EAIvB,MAAQ,EAAA,CAAC,KAAoB,KAAA,CAAC,CAAC,KAAA;AACjC;;;;"}
@@ -1,4 +1,4 @@
1
- export { formProps } from './form.mjs';
1
+ export { formEmits, formProps } from './form.mjs';
2
2
  export { checkedType } from './components.mjs';
3
3
  export { formComponentProps } from './form-component.mjs';
4
4
 
@@ -1361,7 +1361,9 @@ declare const _default: import("vue").DefineComponent<{
1361
1361
  }>>;
1362
1362
  readonly formColumns: any[];
1363
1363
  readonly formData: import("./config").FormData;
1364
+ readonly onChange?: ((value: import("./config").FormData) => any) | undefined;
1364
1365
  } & {}>;
1366
+ emits: (event: "change", value: import("./config").FormData) => void;
1365
1367
  bem: {
1366
1368
  b: (blockSuffix?: string) => string;
1367
1369
  e: (element?: string) => string;
@@ -1422,7 +1424,9 @@ declare const _default: import("vue").DefineComponent<{
1422
1424
  readonly formData: import("./config").FormData;
1423
1425
  readonly item: any;
1424
1426
  }, {}>;
1425
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1427
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1428
+ change: (value: import("./config").FormData) => boolean;
1429
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1426
1430
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1427
1431
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
1428
1432
  layout: import("vue-types").VueTypeDef<string>;
@@ -2508,7 +2512,9 @@ declare const _default: import("vue").DefineComponent<{
2508
2512
  gutter: number;
2509
2513
  }, boolean>;
2510
2514
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
2511
- }>>, {
2515
+ }>> & {
2516
+ onChange?: ((value: import("./config").FormData) => any) | undefined;
2517
+ }, {
2512
2518
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
2513
2519
  layout: import("vue-types").VueTypeDef<string>;
2514
2520
  labelCol: {
@@ -1,9 +1,9 @@
1
- import { defineComponent, reactive, ref, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createVNode, withCtx, mergeProps, normalizeProps, guardReactiveProps, Fragment, renderList, createBlock, renderSlot, createElementVNode, toDisplayString, createCommentVNode } from 'vue';
1
+ import { defineComponent, reactive, ref, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createVNode, withCtx, mergeProps, normalizeProps, guardReactiveProps, Fragment, renderList, createBlock, renderSlot, createElementVNode, toDisplayString, createCommentVNode } from 'vue';
2
2
  import { omit, isEmpty } from 'lodash-es';
3
3
  import './config/index.mjs';
4
4
  import '../../../utils/index.mjs';
5
5
  import FormComponent from './components/form-component.vue.mjs';
6
- import { formProps } from './config/form.mjs';
6
+ import { formProps, formEmits } from './config/form.mjs';
7
7
  import { createNamespace } from '../../../utils/create-namespace.mjs';
8
8
 
9
9
  "use strict";
@@ -11,8 +11,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
11
11
  ...{ name: "LlForm" },
12
12
  __name: "form",
13
13
  props: formProps,
14
- setup(__props, { expose: __expose }) {
14
+ emits: formEmits,
15
+ setup(__props, { expose: __expose, emit: __emit }) {
15
16
  const props = __props;
17
+ const emits = __emit;
16
18
  const bem = createNamespace("form");
17
19
  const formData = reactive(props.formData);
18
20
  const formRef = ref();
@@ -36,6 +38,15 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
36
38
  }
37
39
  return bem.is("label-top");
38
40
  };
41
+ watch(
42
+ () => formData,
43
+ (val) => {
44
+ emits("change", val);
45
+ },
46
+ {
47
+ deep: true
48
+ }
49
+ );
39
50
  __expose({
40
51
  validate,
41
52
  resetFields
@@ -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 } from 'vue'\nimport { omit, isEmpty } from 'lodash-es'\nimport {\n formProps,\n // componentTypes,\n type FormColumn\n} 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 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\ndefineExpose({\n validate,\n resetFields\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;AA+EA,IAAA,MAAM,KAAQ,GAAA,OAAA,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,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 { 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\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,QAAA,CAAA;AAAA,MACX,QAAA;AAAA,MACA,WAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -70,7 +70,7 @@ export { easyCronEmits, easyCronProps } from './easy-cron/src/config/easy-cron.m
70
70
  export { dateUtil, formatToDate, formatToDateTime } from './easy-cron/src/config/date-utils.mjs';
71
71
  export { TypeEnum, useTabEmits, useTabProps, useTabSetup } from './easy-cron/src/config/use-tab-mixin.mjs';
72
72
  export { emptyProps, url } from './empty/src/empty.mjs';
73
- export { formProps } from './form/src/config/form.mjs';
73
+ export { formEmits, formProps } from './form/src/config/form.mjs';
74
74
  export { checkedType } from './form/src/config/components.mjs';
75
75
  export { formComponentProps } from './form/src/config/form-component.mjs';
76
76
  export { iconProps } from './icon/src/icon.mjs';
@@ -87,7 +87,7 @@ export { numberRangeEmits, numberRangeProps } from './number-range/src/number-ra
87
87
  export { operateIconEmits, operateIconProps } from './operate-icon/src/operate-icon.mjs';
88
88
  export { OperateTreeEmits, operateTreeEmits, operateTreeProps } from './operate-tree/src/operate-tree.mjs';
89
89
  export { selectOptGroupProps, selectOptionProps } from './select/src/select.mjs';
90
- export { selectGroupData, selectGroupEmits, selectGroupFormType, selectGroupProps } from './select-group/src/select-group.mjs';
90
+ export { LEFT_SELECT_MIN_WIDTH, selectGroupData, selectGroupEmits, selectGroupFormType, selectGroupProps } from './select-group/src/select-group.mjs';
91
91
  export { ImenuSwitchType, menuSwitchRadioList, tableHeaderSearchEmits, tableHeaderSearchProps } from './table/src/config/header-search.mjs';
92
92
  export { mainTableEmits, mainTableProps, tableContentType } from './table/src/config/main-table.mjs';
93
93
  export { tablePaginationProps } from './table/src/config/pagination.mjs';
@@ -1265,7 +1265,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
1265
1265
  gutter: number;
1266
1266
  }, boolean>;
1267
1267
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
1268
- }>>, {
1268
+ }>> & {
1269
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
1270
+ }, {
1269
1271
  props: import("@vue/shared").LooseRequired<{
1270
1272
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
1271
1273
  layout: import("vue-types").VueTypeDef<string>;
@@ -1541,7 +1543,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
1541
1543
  }>>;
1542
1544
  readonly formColumns: any[];
1543
1545
  readonly formData: import("ll-plus/es/index").FormData;
1546
+ readonly onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
1544
1547
  } & {}>;
1548
+ emits: (event: "change", value: import("ll-plus/es/index").FormData) => void;
1545
1549
  bem: {
1546
1550
  b: (blockSuffix?: string) => string;
1547
1551
  e: (element?: string) => string;
@@ -1602,7 +1606,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
1602
1606
  readonly formData: import("ll-plus/es/index").FormData;
1603
1607
  readonly item: any;
1604
1608
  }, {}>;
1605
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
1609
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1610
+ change: (value: import("ll-plus/es/index").FormData) => boolean;
1611
+ }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
1606
1612
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1607
1613
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
1608
1614
  layout: import("vue-types").VueTypeDef<string>;
@@ -2688,7 +2694,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
2688
2694
  gutter: number;
2689
2695
  }, boolean>;
2690
2696
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
2691
- }>>, {
2697
+ }>> & {
2698
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
2699
+ }, {
2692
2700
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
2693
2701
  layout: import("vue-types").VueTypeDef<string>;
2694
2702
  labelCol: {
@@ -4056,7 +4064,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
4056
4064
  gutter: number;
4057
4065
  }, boolean>;
4058
4066
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
4059
- }>>, {
4067
+ }>> & {
4068
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
4069
+ }, {
4060
4070
  props: import("@vue/shared").LooseRequired<{
4061
4071
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
4062
4072
  layout: import("vue-types").VueTypeDef<string>;
@@ -4332,7 +4342,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
4332
4342
  }>>;
4333
4343
  readonly formColumns: any[];
4334
4344
  readonly formData: import("ll-plus/es/index").FormData;
4345
+ readonly onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
4335
4346
  } & {}>;
4347
+ emits: (event: "change", value: import("ll-plus/es/index").FormData) => void;
4336
4348
  bem: {
4337
4349
  b: (blockSuffix?: string) => string;
4338
4350
  e: (element?: string) => string;
@@ -6185,7 +6197,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
6185
6197
  gutter: number;
6186
6198
  }, boolean>;
6187
6199
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
6188
- }>>, {
6200
+ }>> & {
6201
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
6202
+ }, {
6189
6203
  props: import("@vue/shared").LooseRequired<{
6190
6204
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
6191
6205
  layout: import("vue-types").VueTypeDef<string>;
@@ -6461,7 +6475,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
6461
6475
  }>>;
6462
6476
  readonly formColumns: any[];
6463
6477
  readonly formData: import("ll-plus/es/index").FormData;
6478
+ readonly onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
6464
6479
  } & {}>;
6480
+ emits: (event: "change", value: import("ll-plus/es/index").FormData) => void;
6465
6481
  bem: {
6466
6482
  b: (blockSuffix?: string) => string;
6467
6483
  e: (element?: string) => string;
@@ -6522,7 +6538,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
6522
6538
  readonly formData: import("ll-plus/es/index").FormData;
6523
6539
  readonly item: any;
6524
6540
  }, {}>;
6525
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
6541
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6542
+ change: (value: import("ll-plus/es/index").FormData) => boolean;
6543
+ }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
6526
6544
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
6527
6545
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
6528
6546
  layout: import("vue-types").VueTypeDef<string>;
@@ -7608,7 +7626,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
7608
7626
  gutter: number;
7609
7627
  }, boolean>;
7610
7628
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
7611
- }>>, {
7629
+ }>> & {
7630
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
7631
+ }, {
7612
7632
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
7613
7633
  layout: import("vue-types").VueTypeDef<string>;
7614
7634
  labelCol: {
@@ -8976,7 +8996,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
8976
8996
  gutter: number;
8977
8997
  }, boolean>;
8978
8998
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
8979
- }>>, {
8999
+ }>> & {
9000
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
9001
+ }, {
8980
9002
  props: import("@vue/shared").LooseRequired<{
8981
9003
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
8982
9004
  layout: import("vue-types").VueTypeDef<string>;
@@ -9252,7 +9274,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
9252
9274
  }>>;
9253
9275
  readonly formColumns: any[];
9254
9276
  readonly formData: import("ll-plus/es/index").FormData;
9277
+ readonly onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
9255
9278
  } & {}>;
9279
+ emits: (event: "change", value: import("ll-plus/es/index").FormData) => void;
9256
9280
  bem: {
9257
9281
  b: (blockSuffix?: string) => string;
9258
9282
  e: (element?: string) => string;
@@ -11032,7 +11056,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
11032
11056
  gutter: number;
11033
11057
  }, boolean>;
11034
11058
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
11035
- }>>, {
11059
+ }>> & {
11060
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
11061
+ }, {
11036
11062
  props: import("@vue/shared").LooseRequired<{
11037
11063
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
11038
11064
  layout: import("vue-types").VueTypeDef<string>;
@@ -11308,7 +11334,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
11308
11334
  }>>;
11309
11335
  readonly formColumns: any[];
11310
11336
  readonly formData: import("ll-plus/es/index").FormData;
11337
+ readonly onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
11311
11338
  } & {}>;
11339
+ emits: (event: "change", value: import("ll-plus/es/index").FormData) => void;
11312
11340
  bem: {
11313
11341
  b: (blockSuffix?: string) => string;
11314
11342
  e: (element?: string) => string;
@@ -11369,7 +11397,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
11369
11397
  readonly formData: import("ll-plus/es/index").FormData;
11370
11398
  readonly item: any;
11371
11399
  }, {}>;
11372
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
11400
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11401
+ change: (value: import("ll-plus/es/index").FormData) => boolean;
11402
+ }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
11373
11403
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
11374
11404
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
11375
11405
  layout: import("vue-types").VueTypeDef<string>;
@@ -12455,7 +12485,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
12455
12485
  gutter: number;
12456
12486
  }, boolean>;
12457
12487
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
12458
- }>>, {
12488
+ }>> & {
12489
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
12490
+ }, {
12459
12491
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
12460
12492
  layout: import("vue-types").VueTypeDef<string>;
12461
12493
  labelCol: {
@@ -13823,7 +13855,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
13823
13855
  gutter: number;
13824
13856
  }, boolean>;
13825
13857
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
13826
- }>>, {
13858
+ }>> & {
13859
+ onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
13860
+ }, {
13827
13861
  props: import("@vue/shared").LooseRequired<{
13828
13862
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
13829
13863
  layout: import("vue-types").VueTypeDef<string>;
@@ -14099,7 +14133,9 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
14099
14133
  }>>;
14100
14134
  readonly formColumns: any[];
14101
14135
  readonly formData: import("ll-plus/es/index").FormData;
14136
+ readonly onChange?: ((value: import("ll-plus/es/index").FormData) => any) | undefined;
14102
14137
  } & {}>;
14138
+ emits: (event: "change", value: import("ll-plus/es/index").FormData) => void;
14103
14139
  bem: {
14104
14140
  b: (blockSuffix?: string) => string;
14105
14141
  e: (element?: string) => string;
@@ -1181,7 +1181,9 @@ declare const _default: import("vue").DefineComponent<{
1181
1181
  gutter: number;
1182
1182
  }, boolean>;
1183
1183
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
1184
- }>>, {
1184
+ }>> & {
1185
+ onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
1186
+ }, {
1185
1187
  props: import("@vue/shared").LooseRequired<{
1186
1188
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
1187
1189
  layout: import("vue-types").VueTypeDef<string>;
@@ -1457,7 +1459,9 @@ declare const _default: import("vue").DefineComponent<{
1457
1459
  }>>;
1458
1460
  readonly formColumns: any[];
1459
1461
  readonly formData: import("ll-plus/es/components").FormData;
1462
+ readonly onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
1460
1463
  } & {}>;
1464
+ emits: (event: "change", value: import("ll-plus/es/components").FormData) => void;
1461
1465
  bem: {
1462
1466
  b: (blockSuffix?: string) => string;
1463
1467
  e: (element?: string) => string;
@@ -1518,7 +1522,9 @@ declare const _default: import("vue").DefineComponent<{
1518
1522
  readonly formData: import("ll-plus/es/components").FormData;
1519
1523
  readonly item: any;
1520
1524
  }, {}>;
1521
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
1525
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1526
+ change: (value: import("ll-plus/es/components").FormData) => boolean;
1527
+ }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
1522
1528
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1523
1529
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
1524
1530
  layout: import("vue-types").VueTypeDef<string>;
@@ -2604,7 +2610,9 @@ declare const _default: import("vue").DefineComponent<{
2604
2610
  gutter: number;
2605
2611
  }, boolean>;
2606
2612
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
2607
- }>>, {
2613
+ }>> & {
2614
+ onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
2615
+ }, {
2608
2616
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
2609
2617
  layout: import("vue-types").VueTypeDef<string>;
2610
2618
  labelCol: {
@@ -3972,7 +3980,9 @@ declare const _default: import("vue").DefineComponent<{
3972
3980
  gutter: number;
3973
3981
  }, boolean>;
3974
3982
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
3975
- }>>, {
3983
+ }>> & {
3984
+ onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
3985
+ }, {
3976
3986
  props: import("@vue/shared").LooseRequired<{
3977
3987
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
3978
3988
  layout: import("vue-types").VueTypeDef<string>;
@@ -4248,7 +4258,9 @@ declare const _default: import("vue").DefineComponent<{
4248
4258
  }>>;
4249
4259
  readonly formColumns: any[];
4250
4260
  readonly formData: import("ll-plus/es/components").FormData;
4261
+ readonly onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
4251
4262
  } & {}>;
4263
+ emits: (event: "change", value: import("ll-plus/es/components").FormData) => void;
4252
4264
  bem: {
4253
4265
  b: (blockSuffix?: string) => string;
4254
4266
  e: (element?: string) => string;
@@ -117,6 +117,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
117
117
  "onUpdate:value": _cache[0] || (_cache[0] = ($event) => innerValue.value["key"] = $event),
118
118
  options: props.keyTypes,
119
119
  disabled: getKeyDisabled.value,
120
+ style: { "width": "100%" },
120
121
  placeholder: "\u8BF7\u9009\u62E9",
121
122
  "allow-clear": "",
122
123
  onChange: handleChange
@@ -1 +1 @@
1
- {"version":3,"file":"key-value-item.vue2.mjs","sources":["../../../../../../packages/components/key-value/src/components/key-value-item.vue"],"sourcesContent":["<template>\n <ll-form\n ref=\"form\"\n :form-columns=\"formColumns\"\n :form-data=\"props.value\"\n :form-options=\"formOptions\"\n >\n <template #formItem=\"{ item }\">\n <template v-if=\"item.key === 'other'\">\n <div :class=\"bem.e('item')\">\n <div v-if=\"props.keyValueType !== 'single'\" :class=\"bem.m('left')\">\n <ll-form-item\n :label=\"attrs['key-label']\"\n :label-col=\"{\n span: 24\n }\"\n :rules=\"getKeyType.rules || []\"\n name=\"key\"\n >\n <slot name=\"key\">\n <ll-select\n v-if=\"!isEmpty(props.keyTypes)\"\n v-model:value=\"innerValue['key']\"\n :options=\"props.keyTypes\"\n :disabled=\"getKeyDisabled\"\n placeholder=\"请选择\"\n allow-clear\n @change=\"handleChange\"\n />\n <component\n :is=\"`ll-${getKeyType.type}`\"\n v-else\n v-model:value=\"innerValue['key']\"\n v-bind=\"getKeyType\"\n :disabled=\"getKeyDisabled\"\n style=\"width: 100%\"\n >\n <template\n v-for=\"_item in Object.keys($slots)\"\n :key=\"_item\"\n #[_item]=\"data\"\n >\n <slot\n :name=\"_item\"\n v-bind=\"data || {}\"\n content=\"key\"\n ></slot>\n </template>\n </component>\n </slot>\n </ll-form-item>\n </div>\n\n <div\n v-if=\"props.keyValueType !== 'single'\"\n :class=\"bem.m('separator')\"\n :style=\"{\n 'margin-top':\n !!attrs['key-label'] || !!attrs['value-label'] ? '26px' : '0px'\n }\"\n >\n <slot name=\"separator\">~</slot>\n </div>\n\n <div :class=\"bem.m('right')\">\n <ll-form-item\n :label=\"attrs['value-label']\"\n :label-col=\"{\n span: 24\n }\"\n :rules=\"getValueType.rules || []\"\n name=\"value\"\n >\n <slot name=\"value-warapper\" v-bind=\"getValueType\">\n <component\n :is=\"`ll-${getValueType.type}`\"\n v-model:value=\"innerValue['value']\"\n :disabled=\"getValueDisabled\"\n style=\"width: 100%\"\n v-bind=\"getValueType\"\n >\n <template\n v-for=\"_item in Object.keys($slots)\"\n :key=\"_item\"\n #[_item]=\"data\"\n >\n <slot\n :name=\"_item\"\n v-bind=\"data || {}\"\n content=\"value\"\n ></slot>\n </template>\n </component>\n </slot>\n </ll-form-item>\n </div>\n\n <a-popconfirm\n title=\"你确定要移除吗?\"\n ok-text=\"确认\"\n cancel-text=\"取消\"\n placement=\"topRight\"\n :overlay-class-name=\"bem.m('popconfirm')\"\n :get-popup-container=\"(trigger: Element) => trigger.parentNode\"\n destroy-tooltip-on-hide\n @confirm=\"handleDelete\"\n >\n <div\n v-if=\"props.showDelete\"\n :class=\"bem.m('delete')\"\n :style=\"{\n 'margin-top':\n !!attrs['key-label'] || !!attrs['value-label']\n ? '26px'\n : '0px'\n }\"\n >\n <ll-button type=\"link\" :disabled=\"getDeleteDisabled\">\n <slot name=\"delete-icon\">\n <ll-icon icon-name=\"icon-remove\" class=\"delete\" />\n </slot>\n </ll-button>\n </div>\n </a-popconfirm>\n </div>\n </template>\n </template>\n </ll-form>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, useAttrs, watch, nextTick } from 'vue'\nimport { isEmpty } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport type { FormInstance } from '@ll-plus/components'\nimport {\n keyValueItemProps,\n keyValueItemEmits,\n formColumns,\n formOptions\n} from '../config'\nimport { type FormColumn } from '@ll-plus/components'\n\ndefineOptions({\n name: 'LlKeyValueItem'\n})\n\nconst props = defineProps(keyValueItemProps)\nconst emits = defineEmits(keyValueItemEmits)\n\nconst attrs = useAttrs()\nconst bem = createNamespace('key-value')\nconst innerValue = ref(props.value)\n\nconst form = ref<FormInstance | null>()\n\nconst getKeyType = computed<FormColumn>(() => {\n const option = props.keyType\n return option\n})\nconst getValueType = computed<FormColumn>(() => {\n let option = props.valueType\n if (innerValue.value['key'] && !isEmpty(props.keyValueTypeDict)) {\n option = props.keyValueTypeDict[innerValue.value['key']]\n }\n return option\n})\n\nconst getKeyDisabled = computed(() => {\n return (\n props.disabledKey?.includes(props.idx) ||\n props.disabled ||\n getKeyType.value?.disabled\n )\n})\n\nconst getValueDisabled = computed(() => {\n return (\n props.disabledValue?.includes(props.idx) ||\n props.disabled ||\n getValueType.value?.disabled\n )\n})\n\nconst getDeleteDisabled = computed(() => {\n return props.disabledDelete?.includes(props.idx) || props.disabled\n})\n\nconst handleDelete = () => {\n emits('delete')\n}\n\nconst handleChange = () => {\n innerValue.value['value'] = null\n}\n\nconst validate = async () => {\n return await form.value?.validate()\n}\n\nconst resetFields = async () => {\n return await form.value?.resetFields()\n}\n\nwatch(\n innerValue,\n async val => {\n await nextTick().then(() => {\n try {\n emits('update:value', val)\n emits('change')\n } catch (error) {\n console.error(error)\n }\n })\n },\n {\n deep: true\n }\n)\n\ndefineExpose({\n validate,\n resetFields\n})\n</script>\n\n<style scoped></style>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-value-item.vue2.mjs","sources":["../../../../../../packages/components/key-value/src/components/key-value-item.vue"],"sourcesContent":["<template>\n <ll-form\n ref=\"form\"\n :form-columns=\"formColumns\"\n :form-data=\"props.value\"\n :form-options=\"formOptions\"\n >\n <template #formItem=\"{ item }\">\n <template v-if=\"item.key === 'other'\">\n <div :class=\"bem.e('item')\">\n <div v-if=\"props.keyValueType !== 'single'\" :class=\"bem.m('left')\">\n <ll-form-item\n :label=\"attrs['key-label']\"\n :label-col=\"{\n span: 24\n }\"\n :rules=\"getKeyType.rules || []\"\n name=\"key\"\n >\n <slot name=\"key\">\n <ll-select\n v-if=\"!isEmpty(props.keyTypes)\"\n v-model:value=\"innerValue['key']\"\n :options=\"props.keyTypes\"\n :disabled=\"getKeyDisabled\"\n style=\"width: 100%\"\n placeholder=\"请选择\"\n allow-clear\n @change=\"handleChange\"\n />\n <component\n :is=\"`ll-${getKeyType.type}`\"\n v-else\n v-model:value=\"innerValue['key']\"\n v-bind=\"getKeyType\"\n :disabled=\"getKeyDisabled\"\n style=\"width: 100%\"\n >\n <template\n v-for=\"_item in Object.keys($slots)\"\n :key=\"_item\"\n #[_item]=\"data\"\n >\n <slot\n :name=\"_item\"\n v-bind=\"data || {}\"\n content=\"key\"\n ></slot>\n </template>\n </component>\n </slot>\n </ll-form-item>\n </div>\n\n <div\n v-if=\"props.keyValueType !== 'single'\"\n :class=\"bem.m('separator')\"\n :style=\"{\n 'margin-top':\n !!attrs['key-label'] || !!attrs['value-label'] ? '26px' : '0px'\n }\"\n >\n <slot name=\"separator\">~</slot>\n </div>\n\n <div :class=\"bem.m('right')\">\n <ll-form-item\n :label=\"attrs['value-label']\"\n :label-col=\"{\n span: 24\n }\"\n :rules=\"getValueType.rules || []\"\n name=\"value\"\n >\n <slot name=\"value-warapper\" v-bind=\"getValueType\">\n <component\n :is=\"`ll-${getValueType.type}`\"\n v-model:value=\"innerValue['value']\"\n :disabled=\"getValueDisabled\"\n style=\"width: 100%\"\n v-bind=\"getValueType\"\n >\n <template\n v-for=\"_item in Object.keys($slots)\"\n :key=\"_item\"\n #[_item]=\"data\"\n >\n <slot\n :name=\"_item\"\n v-bind=\"data || {}\"\n content=\"value\"\n ></slot>\n </template>\n </component>\n </slot>\n </ll-form-item>\n </div>\n\n <a-popconfirm\n title=\"你确定要移除吗?\"\n ok-text=\"确认\"\n cancel-text=\"取消\"\n placement=\"topRight\"\n :overlay-class-name=\"bem.m('popconfirm')\"\n :get-popup-container=\"(trigger: Element) => trigger.parentNode\"\n destroy-tooltip-on-hide\n @confirm=\"handleDelete\"\n >\n <div\n v-if=\"props.showDelete\"\n :class=\"bem.m('delete')\"\n :style=\"{\n 'margin-top':\n !!attrs['key-label'] || !!attrs['value-label']\n ? '26px'\n : '0px'\n }\"\n >\n <ll-button type=\"link\" :disabled=\"getDeleteDisabled\">\n <slot name=\"delete-icon\">\n <ll-icon icon-name=\"icon-remove\" class=\"delete\" />\n </slot>\n </ll-button>\n </div>\n </a-popconfirm>\n </div>\n </template>\n </template>\n </ll-form>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, useAttrs, watch, nextTick } from 'vue'\nimport { isEmpty } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport type { FormInstance } from '@ll-plus/components'\nimport {\n keyValueItemProps,\n keyValueItemEmits,\n formColumns,\n formOptions\n} from '../config'\nimport { type FormColumn } from '@ll-plus/components'\n\ndefineOptions({\n name: 'LlKeyValueItem'\n})\n\nconst props = defineProps(keyValueItemProps)\nconst emits = defineEmits(keyValueItemEmits)\n\nconst attrs = useAttrs()\nconst bem = createNamespace('key-value')\nconst innerValue = ref(props.value)\n\nconst form = ref<FormInstance | null>()\n\nconst getKeyType = computed<FormColumn>(() => {\n const option = props.keyType\n return option\n})\nconst getValueType = computed<FormColumn>(() => {\n let option = props.valueType\n if (innerValue.value['key'] && !isEmpty(props.keyValueTypeDict)) {\n option = props.keyValueTypeDict[innerValue.value['key']]\n }\n return option\n})\n\nconst getKeyDisabled = computed(() => {\n return (\n props.disabledKey?.includes(props.idx) ||\n props.disabled ||\n getKeyType.value?.disabled\n )\n})\n\nconst getValueDisabled = computed(() => {\n return (\n props.disabledValue?.includes(props.idx) ||\n props.disabled ||\n getValueType.value?.disabled\n )\n})\n\nconst getDeleteDisabled = computed(() => {\n return props.disabledDelete?.includes(props.idx) || props.disabled\n})\n\nconst handleDelete = () => {\n emits('delete')\n}\n\nconst handleChange = () => {\n innerValue.value['value'] = null\n}\n\nconst validate = async () => {\n return await form.value?.validate()\n}\n\nconst resetFields = async () => {\n return await form.value?.resetFields()\n}\n\nwatch(\n innerValue,\n async val => {\n await nextTick().then(() => {\n try {\n emits('update:value', val)\n emits('change')\n } catch (error) {\n console.error(error)\n }\n })\n },\n {\n deep: true\n }\n)\n\ndefineExpose({\n validate,\n resetFields\n})\n</script>\n\n<style scoped></style>\n"],"names":[],"mappings":"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"}