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
@@ -2716,8 +2716,9 @@ declare const _default: import("vue").DefineComponent<{
2716
2716
  readonly showFooter: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
2717
2717
  readonly onClose?: (() => any) | undefined;
2718
2718
  readonly onConfirm?: (() => any) | undefined;
2719
+ readonly onChangeValue?: ((value: Record<string, any>) => any) | undefined;
2719
2720
  } & {}>;
2720
- emits: ((event: "close") => void) & ((event: "confirm") => void);
2721
+ emits: ((event: "close") => void) & ((event: "confirm") => void) & ((event: "changeValue", value: Record<string, any>) => void);
2721
2722
  bem: {
2722
2723
  b: (blockSuffix?: string) => string;
2723
2724
  e: (element?: string) => string;
@@ -2731,6 +2732,7 @@ declare const _default: import("vue").DefineComponent<{
2731
2732
  key: import("vue").Ref<number>;
2732
2733
  handleClose: () => void;
2733
2734
  handleAdvancedFilterConfirm: () => void;
2735
+ handleChange: (val: Record<string, any>) => void;
2734
2736
  readonly LlForm: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
2735
2737
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
2736
2738
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
@@ -4093,7 +4095,9 @@ declare const _default: import("vue").DefineComponent<{
4093
4095
  }>>;
4094
4096
  readonly formColumns: any[];
4095
4097
  readonly formData: import("ll-plus/es/components").FormData;
4098
+ readonly onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
4096
4099
  } & {}>;
4100
+ emits: (event: "change", value: import("ll-plus/es/components").FormData) => void;
4097
4101
  bem: {
4098
4102
  b: (blockSuffix?: string) => string;
4099
4103
  e: (element?: string) => string;
@@ -4154,7 +4158,9 @@ declare const _default: import("vue").DefineComponent<{
4154
4158
  readonly formData: import("ll-plus/es/components").FormData;
4155
4159
  readonly item: any;
4156
4160
  }, {}>;
4157
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
4161
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
4162
+ change: (value: import("ll-plus/es/components").FormData) => boolean;
4163
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
4158
4164
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
4159
4165
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
4160
4166
  layout: import("vue-types").VueTypeDef<string>;
@@ -5240,7 +5246,9 @@ declare const _default: import("vue").DefineComponent<{
5240
5246
  gutter: number;
5241
5247
  }, boolean>;
5242
5248
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
5243
- }>>, {
5249
+ }>> & {
5250
+ onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
5251
+ }, {
5244
5252
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
5245
5253
  layout: import("vue-types").VueTypeDef<string>;
5246
5254
  labelCol: {
@@ -5519,6 +5527,7 @@ declare const _default: import("vue").DefineComponent<{
5519
5527
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5520
5528
  close: () => boolean;
5521
5529
  confirm: () => boolean;
5530
+ changeValue: (value: Record<string, any>) => boolean;
5522
5531
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5523
5532
  readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
5524
5533
  readonly value: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
@@ -6421,6 +6430,7 @@ declare const _default: import("vue").DefineComponent<{
6421
6430
  }>> & {
6422
6431
  onClose?: (() => any) | undefined;
6423
6432
  onConfirm?: (() => any) | undefined;
6433
+ onChangeValue?: ((value: Record<string, any>) => any) | undefined;
6424
6434
  }, {
6425
6435
  readonly filterColumns: any[];
6426
6436
  readonly value: Record<string, any>;
@@ -1128,8 +1128,9 @@ declare const _default: import("vue").DefineComponent<{
1128
1128
  readonly showFooter: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
1129
1129
  readonly onClose?: (() => any) | undefined;
1130
1130
  readonly onConfirm?: (() => any) | undefined;
1131
+ readonly onChangeValue?: ((value: Record<string, any>) => any) | undefined;
1131
1132
  } & {}>;
1132
- emits: ((event: "close") => void) & ((event: "confirm") => void);
1133
+ emits: ((event: "close") => void) & ((event: "confirm") => void) & ((event: "changeValue", value: Record<string, any>) => void);
1133
1134
  bem: {
1134
1135
  b: (blockSuffix?: string) => string;
1135
1136
  e: (element?: string) => string;
@@ -1143,6 +1144,7 @@ declare const _default: import("vue").DefineComponent<{
1143
1144
  key: import("vue").Ref<number>;
1144
1145
  handleClose: () => void;
1145
1146
  handleAdvancedFilterConfirm: () => void;
1147
+ handleChange: (val: Record<string, any>) => void;
1146
1148
  readonly LlForm: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
1147
1149
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1148
1150
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
@@ -2505,7 +2507,9 @@ declare const _default: import("vue").DefineComponent<{
2505
2507
  }>>;
2506
2508
  readonly formColumns: any[];
2507
2509
  readonly formData: import("ll-plus/es/components").FormData;
2510
+ readonly onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
2508
2511
  } & {}>;
2512
+ emits: (event: "change", value: import("ll-plus/es/components").FormData) => void;
2509
2513
  bem: {
2510
2514
  b: (blockSuffix?: string) => string;
2511
2515
  e: (element?: string) => string;
@@ -2566,7 +2570,9 @@ declare const _default: import("vue").DefineComponent<{
2566
2570
  readonly formData: import("ll-plus/es/components").FormData;
2567
2571
  readonly item: any;
2568
2572
  }, {}>;
2569
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2573
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
2574
+ change: (value: import("ll-plus/es/components").FormData) => boolean;
2575
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
2570
2576
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
2571
2577
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
2572
2578
  layout: import("vue-types").VueTypeDef<string>;
@@ -3652,7 +3658,9 @@ declare const _default: import("vue").DefineComponent<{
3652
3658
  gutter: number;
3653
3659
  }, boolean>;
3654
3660
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
3655
- }>>, {
3661
+ }>> & {
3662
+ onChange?: ((value: import("ll-plus/es/components").FormData) => any) | undefined;
3663
+ }, {
3656
3664
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
3657
3665
  layout: import("vue-types").VueTypeDef<string>;
3658
3666
  labelCol: {
@@ -3931,6 +3939,7 @@ declare const _default: import("vue").DefineComponent<{
3931
3939
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
3932
3940
  close: () => boolean;
3933
3941
  confirm: () => boolean;
3942
+ changeValue: (value: Record<string, any>) => boolean;
3934
3943
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
3935
3944
  readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
3936
3945
  readonly value: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
@@ -4833,6 +4842,7 @@ declare const _default: import("vue").DefineComponent<{
4833
4842
  }>> & {
4834
4843
  onClose?: (() => any) | undefined;
4835
4844
  onConfirm?: (() => any) | undefined;
4845
+ onChangeValue?: ((value: Record<string, any>) => any) | undefined;
4836
4846
  }, {
4837
4847
  readonly filterColumns: any[];
4838
4848
  readonly value: Record<string, any>;
@@ -36,6 +36,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
36
36
  const handleAdvancedFilterConfirm = () => {
37
37
  emits("confirm");
38
38
  };
39
+ const handleChange = (val) => {
40
+ emits("changeValue", val);
41
+ };
39
42
  vue.watch(
40
43
  () => props.value,
41
44
  () => {
@@ -72,7 +75,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
72
75
  key: key.value,
73
76
  "form-columns": props.filterColumns,
74
77
  "form-options": props.formOptions,
75
- "form-data": props.value
78
+ "form-data": props.value,
79
+ onChange: handleChange
76
80
  }, null, 8, ["form-columns", "form-options", "form-data"])) : (vue.openBlock(), vue.createElementBlock(
77
81
  "div",
78
82
  {
@@ -1 +1 @@
1
- {"version":3,"file":"advanced-filtering-params.vue2.js","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 :key=\"key\"\n :form-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"props.value\"\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 } from 'vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits\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 key = ref(0)\n\nconst handleClose = () => {\n emits('close')\n}\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nwatch(\n () => props.value,\n () => {\n key.value++\n }\n)\n</script>\n"],"names":["createNamespace","ref","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,2BAA2B,CAAA,CAAA;AAEvD,IAAM,MAAA,GAAA,GAAMC,QAAI,CAAC,CAAA,CAAA;AAEjB,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AAAA,KACf,CAAA;AACA,IAAA,MAAM,8BAA8B,MAAM;AACxC,MAAA,KAAA,CAAM,SAAS,CAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,MAAM;AACJ,QAAI,GAAA,CAAA,KAAA,EAAA,CAAA;AAAA,OACN;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"advanced-filtering-params.vue2.js","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 :key=\"key\"\n :form-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"props.value\"\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 } from 'vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits\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 key = ref(0)\n\nconst handleClose = () => {\n emits('close')\n}\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (val: Record<string, any>) => {\n emits('changeValue', val)\n}\n\nwatch(\n () => props.value,\n () => {\n key.value++\n }\n)\n</script>\n"],"names":["createNamespace","ref","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,2BAA2B,CAAA,CAAA;AAEvD,IAAM,MAAA,GAAA,GAAMC,QAAI,CAAC,CAAA,CAAA;AAEjB,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AAAA,KACf,CAAA;AACA,IAAA,MAAM,8BAA8B,MAAM;AACxC,MAAA,KAAA,CAAM,SAAS,CAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,GAA6B,KAAA;AACjD,MAAA,KAAA,CAAM,eAAe,GAAG,CAAA,CAAA;AAAA,KAC1B,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,MAAM;AACJ,QAAI,GAAA,CAAA,KAAA,EAAA,CAAA;AAAA,OACN;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -41,8 +41,8 @@ export declare const LlDrawer: import("ll-plus/es/utils").SFCWithInstall<import(
41
41
  bem: (blockSuffix: string, element: string, modifier: string) => string;
42
42
  is: (name?: string) => string;
43
43
  };
44
- content: import("vue").Ref<HTMLElement | undefined>;
45
44
  hasScroll: import("vue").Ref<boolean>;
45
+ scrollTop: import("vue").Ref<number>;
46
46
  symbolClass: import("vue").Ref<string>;
47
47
  symbolComparedClass: import("vue").Ref<string>;
48
48
  getBindValue: import("vue").ComputedRef<{
@@ -56,6 +56,7 @@ export declare const LlDrawer: import("ll-plus/es/utils").SFCWithInstall<import(
56
56
  handleCancel: () => void;
57
57
  handleConfirm: () => void;
58
58
  handleResize: (value: boolean) => Promise<void>;
59
+ onScrollTop: () => Promise<void>;
59
60
  readonly Drawer: {
60
61
  new (...args: any[]): import("@vue/runtime-core").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
61
62
  autofocus: {
@@ -89,12 +89,14 @@ export declare const LlSecondConfirmation: import("ll-plus/es/utils").SFCWithIns
89
89
  };
90
90
  modal: import("vue").Ref<HTMLElement | undefined>;
91
91
  hasScroll: import("vue").Ref<boolean>;
92
+ scrollTop: import("vue").Ref<number>;
92
93
  symbolClass: import("vue").Ref<string>;
93
94
  symbolComparedClass: import("vue").Ref<string>;
94
95
  getBindValue: import("vue").ComputedRef<import("ll-plus/es/index").IResultType>;
95
96
  handleCancel: () => void;
96
97
  handleOk: () => void;
97
98
  handleResize: (value: boolean) => Promise<void>;
99
+ onScrollTop: () => Promise<void>;
98
100
  readonly Modal: {
99
101
  new (...args: any[]): import("@vue/runtime-core").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
100
102
  prefixCls: StringConstructor;
@@ -88,12 +88,14 @@ declare const _default: import("vue").DefineComponent<{
88
88
  };
89
89
  modal: import("vue").Ref<HTMLElement | undefined>;
90
90
  hasScroll: import("vue").Ref<boolean>;
91
+ scrollTop: import("vue").Ref<number>;
91
92
  symbolClass: import("vue").Ref<string>;
92
93
  symbolComparedClass: import("vue").Ref<string>;
93
94
  getBindValue: import("vue").ComputedRef<import("ll-plus/es/components").IResultType>;
94
95
  handleCancel: () => void;
95
96
  handleOk: () => void;
96
97
  handleResize: (value: boolean) => Promise<void>;
98
+ onScrollTop: () => Promise<void>;
97
99
  readonly Modal: {
98
100
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
99
101
  prefixCls: StringConstructor;
@@ -40,8 +40,8 @@ declare const _default: import("vue").DefineComponent<{
40
40
  bem: (blockSuffix: string, element: string, modifier: string) => string;
41
41
  is: (name?: string) => string;
42
42
  };
43
- content: import("vue").Ref<HTMLElement | undefined>;
44
43
  hasScroll: import("vue").Ref<boolean>;
44
+ scrollTop: import("vue").Ref<number>;
45
45
  symbolClass: import("vue").Ref<string>;
46
46
  symbolComparedClass: import("vue").Ref<string>;
47
47
  getBindValue: import("vue").ComputedRef<{
@@ -55,6 +55,7 @@ declare const _default: import("vue").DefineComponent<{
55
55
  handleCancel: () => void;
56
56
  handleConfirm: () => void;
57
57
  handleResize: (value: boolean) => Promise<void>;
58
+ onScrollTop: () => Promise<void>;
58
59
  readonly Drawer: {
59
60
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
60
61
  autofocus: {
@@ -17,13 +17,13 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
17
17
  __name: "drawer",
18
18
  props: drawer.drawerProps,
19
19
  emits: drawer.drawerEmits,
20
- setup(__props, { emit: __emit }) {
20
+ setup(__props, { expose: __expose, emit: __emit }) {
21
21
  const props = __props;
22
22
  const emits = __emit;
23
23
  const attrs = vue.useAttrs();
24
24
  const bem = createNamespace.createNamespace("drawer");
25
- const content = vue.ref();
26
25
  const hasScroll = vue.ref(false);
26
+ const scrollTop = vue.ref(0);
27
27
  const symbolClass = vue.ref(`ll-darwer-${(/* @__PURE__ */ new Date()).getTime()}`);
28
28
  const symbolComparedClass = vue.ref(`model-content-${(/* @__PURE__ */ new Date()).getTime()}`);
29
29
  const getBindValue = vue.computed(() => ({
@@ -64,20 +64,35 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
64
64
  const { clientHeight } = entries[0].target;
65
65
  const scrollHeight = ele.clientHeight;
66
66
  hasScroll.value = clientHeight > scrollHeight;
67
- console.log(clientHeight, scrollHeight, hasScroll.value);
68
67
  });
69
68
  if (value) {
70
69
  resizeObserver.observe(modalBody);
70
+ ele.addEventListener("scroll", () => {
71
+ scrollTop.value = ele.scrollTop;
72
+ });
71
73
  } else {
72
74
  resizeObserver.unobserve(modalBody);
75
+ ele.removeEventListener("scroll", () => {
76
+ scrollTop.value = 0;
77
+ });
73
78
  }
74
79
  };
80
+ const onScrollTop = async () => {
81
+ await vue.nextTick();
82
+ if (!hasScroll.value)
83
+ return;
84
+ const ele = document.getElementsByClassName(symbolClass.value)[0];
85
+ ele.scrollTop = 0;
86
+ };
75
87
  vue.watch(
76
88
  () => props.open,
77
89
  (val) => {
78
90
  handleResize(val);
79
91
  }
80
92
  );
93
+ __expose({
94
+ onScrollTop
95
+ });
81
96
  return (_ctx, _cache) => {
82
97
  const _component_ll_button = vue.resolveComponent("ll-button");
83
98
  return vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Drawer), vue.mergeProps(getBindValue.value, {
@@ -99,19 +114,38 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
99
114
  class: vue.normalizeClass([vue.unref(bem).e("container"), hasScroll.value ? vue.unref(bem).is("has-scroll") : ""])
100
115
  },
101
116
  [
117
+ _ctx.$slots.step ? (vue.openBlock(), vue.createElementBlock(
118
+ "div",
119
+ {
120
+ key: 0,
121
+ class: vue.normalizeClass(vue.unref(bem).e("step"))
122
+ },
123
+ [
124
+ vue.renderSlot(_ctx.$slots, "step")
125
+ ],
126
+ 2
127
+ /* CLASS */
128
+ )) : vue.createCommentVNode("v-if", true),
102
129
  vue.createElementVNode(
103
130
  "div",
104
131
  {
105
- ref_key: "content",
106
- ref: content,
107
132
  class: vue.normalizeClass([vue.unref(bem).e("content"), symbolClass.value])
108
133
  },
109
134
  [
110
- vue.createCommentVNode(` <div v-if="hasScroll" :class="bem.e('shandow')" /> `),
135
+ hasScroll.value && scrollTop.value > 0 ? (vue.openBlock(), vue.createElementBlock(
136
+ "div",
137
+ {
138
+ key: 0,
139
+ class: vue.normalizeClass(vue.unref(bem).e("shadow"))
140
+ },
141
+ null,
142
+ 2
143
+ /* CLASS */
144
+ )) : vue.createCommentVNode("v-if", true),
111
145
  vue.createElementVNode(
112
146
  "div",
113
147
  {
114
- class: vue.normalizeClass([symbolComparedClass.value])
148
+ class: vue.normalizeClass([symbolComparedClass.value, vue.unref(bem).e("scroll")])
115
149
  },
116
150
  [
117
151
  vue.renderSlot(_ctx.$slots, "default")
@@ -126,7 +160,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
126
160
  props.showFooter ? (vue.openBlock(), vue.createElementBlock(
127
161
  "div",
128
162
  {
129
- key: 0,
163
+ key: 1,
130
164
  class: vue.normalizeClass([vue.unref(bem).e("footer"), hasScroll.value ? vue.unref(bem).is("has-scroll") : ""])
131
165
  },
132
166
  [
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.vue2.js","sources":["../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<template>\n <Drawer\n v-bind=\"getBindValue\"\n :title=\"props.title\"\n :open=\"props.open\"\n :root-class-name=\"bem.b()\"\n @close=\"handleClose\"\n >\n <template #title>\n <slot name=\"title\" />\n </template>\n <template #extra>\n <slot name=\"extra\" />\n </template>\n <div :class=\"[bem.e('container'), hasScroll ? bem.is('has-scroll') : '']\">\n <div ref=\"content\" :class=\"[bem.e('content'), symbolClass]\">\n <!-- <div v-if=\"hasScroll\" :class=\"bem.e('shandow')\" /> -->\n <div :class=\"[symbolComparedClass]\">\n <slot />\n </div>\n </div>\n <div\n v-if=\"props.showFooter\"\n :class=\"[bem.e('footer'), hasScroll ? bem.is('has-scroll') : '']\"\n >\n <slot name=\"footer\">\n <div :class=\"bem.e('footer-left')\">\n <slot name=\"footer-left\" />\n </div>\n <div :class=\"bem.e('footer-right')\">\n <slot name=\"footer-right\">\n <ll-button\n v-if=\"showCancel\"\n :class=\"bem.m('cancel')\"\n :label=\"props.cancelText\"\n @click=\"handleCancel\"\n >\n </ll-button>\n <ll-button\n type=\"primary\"\n :loading=\"props.loading\"\n :label=\"props.confirmText\"\n @click=\"handleConfirm\"\n >\n </ll-button>\n </slot>\n </div>\n </slot>\n </div>\n </div>\n </Drawer>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, nextTick, useAttrs } from 'vue'\nimport { Drawer } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { omit } from 'lodash-es'\nimport { drawerProps, drawerEmits, drawerOptions } from './drawer'\nimport { useSecondConfirmation } from './components/second-confirmation'\n\ndefineOptions({ name: 'LlDrawer' })\n\nconst props = defineProps(drawerProps)\n\nconst emits = defineEmits(drawerEmits)\n\nconst attrs = useAttrs()\n\nconst bem = createNamespace('drawer')\n\nconst content = ref<HTMLElement>()\n\nconst hasScroll = ref(false)\n\nconst symbolClass = ref(`ll-darwer-${new Date().getTime()}`)\n\nconst symbolComparedClass = ref(`model-content-${new Date().getTime()}`)\n\nconst getBindValue = computed(() => ({\n ...drawerOptions,\n ...omit({ ...attrs }, [...Object.keys(drawerProps), 'rootClassName'])\n}))\n\nconst handleClose = (): void => {\n if (props.useClose) {\n emits('close')\n } else {\n handleCancel()\n return\n }\n emits('update:open')\n}\nconst handleCancel = (): void => {\n if (props.cancelConfirm) {\n useSecondConfirmation(\n props.cancelConfirmOptions || {\n title: '温馨提示',\n message: '你有未保存的更改,确定关闭?'\n }\n ).then(async () => {\n // 点击保存按钮则关闭弹窗和抽屉\n emits('cancel')\n })\n return\n }\n emits('cancel')\n}\nconst handleConfirm = (): void => {\n emits('confirm')\n}\n// const handleResize = async () => {\n// await nextTick()\n// const ele = document.getElementsByClassName(symbolClass.value)[0]\n// if (ele) {\n// setTimeout(() => {\n// hasScroll.value = ele.scrollHeight > ele.clientHeight\n// }, 0)\n// }\n// }\n\nconst handleResize = async (value: boolean) => {\n await nextTick()\n const ele = document.getElementsByClassName(symbolClass.value)[0]\n const modalBody = ele.getElementsByClassName(symbolComparedClass.value)[0]\n const resizeObserver = new ResizeObserver(entries => {\n // 处理大小变化的回调函数\n const { clientHeight } = entries[0].target\n const scrollHeight = ele.clientHeight\n hasScroll.value = clientHeight > scrollHeight\n console.log(clientHeight, scrollHeight, hasScroll.value)\n })\n if (value) {\n resizeObserver.observe(modalBody)\n } else {\n resizeObserver.unobserve(modalBody)\n }\n}\n\nwatch(\n () => props.open,\n val => {\n handleResize(val)\n }\n)\n</script>\n"],"names":["useAttrs","createNamespace","ref","computed","drawerOptions","omit","drawerProps","useSecondConfirmation","nextTick","watch"],"mappings":"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"}
1
+ {"version":3,"file":"drawer.vue2.js","sources":["../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<template>\n <Drawer\n v-bind=\"getBindValue\"\n :title=\"props.title\"\n :open=\"props.open\"\n :root-class-name=\"bem.b()\"\n @close=\"handleClose\"\n >\n <template #title>\n <slot name=\"title\" />\n </template>\n <template #extra>\n <slot name=\"extra\" />\n </template>\n <div :class=\"[bem.e('container'), hasScroll ? bem.is('has-scroll') : '']\">\n <div v-if=\"$slots.step\" :class=\"bem.e('step')\">\n <slot name=\"step\" />\n </div>\n <div :class=\"[bem.e('content'), symbolClass]\">\n <div v-if=\"hasScroll && scrollTop > 0\" :class=\"bem.e('shadow')\"></div>\n <div :class=\"[symbolComparedClass, bem.e('scroll')]\">\n <slot />\n </div>\n </div>\n <div\n v-if=\"props.showFooter\"\n :class=\"[bem.e('footer'), hasScroll ? bem.is('has-scroll') : '']\"\n >\n <slot name=\"footer\">\n <div :class=\"bem.e('footer-left')\">\n <slot name=\"footer-left\" />\n </div>\n <div :class=\"bem.e('footer-right')\">\n <slot name=\"footer-right\">\n <ll-button\n v-if=\"showCancel\"\n :class=\"bem.m('cancel')\"\n :label=\"props.cancelText\"\n @click=\"handleCancel\"\n >\n </ll-button>\n <ll-button\n type=\"primary\"\n :loading=\"props.loading\"\n :label=\"props.confirmText\"\n @click=\"handleConfirm\"\n >\n </ll-button>\n </slot>\n </div>\n </slot>\n </div>\n </div>\n </Drawer>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, nextTick, useAttrs } from 'vue'\nimport { Drawer } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { omit } from 'lodash-es'\nimport { drawerProps, drawerEmits, drawerOptions } from './drawer'\nimport { useSecondConfirmation } from './components/second-confirmation'\n\ndefineOptions({ name: 'LlDrawer' })\n\nconst props = defineProps(drawerProps)\n\nconst emits = defineEmits(drawerEmits)\n\nconst attrs = useAttrs()\n\nconst bem = createNamespace('drawer')\n\nconst hasScroll = ref(false)\n\nconst scrollTop = ref(0)\n\nconst symbolClass = ref(`ll-darwer-${new Date().getTime()}`)\n\nconst symbolComparedClass = ref(`model-content-${new Date().getTime()}`)\n\nconst getBindValue = computed(() => ({\n ...drawerOptions,\n ...omit({ ...attrs }, [...Object.keys(drawerProps), 'rootClassName'])\n}))\n\nconst handleClose = (): void => {\n if (props.useClose) {\n emits('close')\n } else {\n handleCancel()\n return\n }\n emits('update:open')\n}\nconst handleCancel = (): void => {\n if (props.cancelConfirm) {\n useSecondConfirmation(\n props.cancelConfirmOptions || {\n title: '温馨提示',\n message: '你有未保存的更改,确定关闭?'\n }\n ).then(async () => {\n // 点击保存按钮则关闭弹窗和抽屉\n emits('cancel')\n })\n return\n }\n emits('cancel')\n}\nconst handleConfirm = (): void => {\n emits('confirm')\n}\n\nconst handleResize = async (value: boolean) => {\n await nextTick()\n const ele = document.getElementsByClassName(symbolClass.value)[0]\n const modalBody = ele.getElementsByClassName(symbolComparedClass.value)[0]\n const resizeObserver = new ResizeObserver(entries => {\n // 处理大小变化的回调函数\n const { clientHeight } = entries[0].target\n const scrollHeight = ele.clientHeight\n hasScroll.value = clientHeight > scrollHeight\n })\n if (value) {\n resizeObserver.observe(modalBody)\n ele.addEventListener('scroll', () => {\n scrollTop.value = ele.scrollTop\n })\n } else {\n resizeObserver.unobserve(modalBody)\n ele.removeEventListener('scroll', () => {\n scrollTop.value = 0\n })\n }\n}\n\nconst onScrollTop = async () => {\n await nextTick()\n if (!hasScroll.value) return\n const ele = document.getElementsByClassName(symbolClass.value)[0]\n ele.scrollTop = 0\n}\n\nwatch(\n () => props.open,\n val => {\n handleResize(val)\n }\n)\n\ndefineExpose({\n onScrollTop\n})\n</script>\n"],"names":["useAttrs","createNamespace","ref","computed","drawerOptions","omit","drawerProps","useSecondConfirmation","nextTick","watch"],"mappings":"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"}
@@ -1396,7 +1396,9 @@ export declare const LlForm: import("ll-plus/es/utils").SFCWithInstall<import("v
1396
1396
  }>>;
1397
1397
  readonly formColumns: any[];
1398
1398
  readonly formData: import("./src/config").FormData;
1399
+ readonly onChange?: ((value: import("./src/config").FormData) => any) | undefined;
1399
1400
  } & {}>;
1401
+ emits: (event: "change", value: import("./src/config").FormData) => void;
1400
1402
  bem: {
1401
1403
  b: (blockSuffix?: string) => string;
1402
1404
  e: (element?: string) => string;
@@ -1457,7 +1459,9 @@ export declare const LlForm: import("ll-plus/es/utils").SFCWithInstall<import("v
1457
1459
  readonly formData: import("./src/config").FormData;
1458
1460
  readonly item: any;
1459
1461
  }, {}>;
1460
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1462
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1463
+ change: (value: import("./src/config").FormData) => boolean;
1464
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1461
1465
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1462
1466
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
1463
1467
  layout: import("vue-types").VueTypeDef<string>;
@@ -2543,7 +2547,9 @@ export declare const LlForm: import("ll-plus/es/utils").SFCWithInstall<import("v
2543
2547
  gutter: number;
2544
2548
  }, boolean>;
2545
2549
  readonly loading: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
2546
- }>>, {
2550
+ }>> & {
2551
+ onChange?: ((value: import("./src/config").FormData) => any) | undefined;
2552
+ }, {
2547
2553
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
2548
2554
  layout: import("vue-types").VueTypeDef<string>;
2549
2555
  labelCol: {
@@ -15,6 +15,7 @@ var formComponent = require('./src/config/form-component.js');
15
15
  const LlFormComponent = withInstall.withInstall(formComponent$1.default);
16
16
  const LlForm = withInstall.withInstall(form$1.default);
17
17
 
18
+ exports.formEmits = form.formEmits;
18
19
  exports.formProps = form.formProps;
19
20
  exports.checkedType = components.checkedType;
20
21
  exports.formComponentProps = formComponent.formComponentProps;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../packages/components/form/index.ts"],"sourcesContent":["import { withInstall } from '@ll-plus/utils'\n\nimport FormComponent from './src/components/form-component.vue'\nimport Form from './src/form.vue'\n\nexport const LlFormComponent = withInstall(FormComponent)\nexport const LlForm = withInstall(Form)\nexport default LlForm\nexport * from './src/config'\n\ndeclare module 'vue' {\n export interface GlobalComponents {\n LlFormComponent: typeof FormComponent\n LlForm: typeof Form\n }\n}\n"],"names":["withInstall","FormComponent","Form"],"mappings":";;;;;;;;;;;;;;AAKa,MAAA,eAAA,GAAkBA,wBAAYC,uBAAa,EAAA;AAC3C,MAAA,MAAA,GAASD,wBAAYE,cAAI;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../packages/components/form/index.ts"],"sourcesContent":["import { withInstall } from '@ll-plus/utils'\n\nimport FormComponent from './src/components/form-component.vue'\nimport Form from './src/form.vue'\n\nexport const LlFormComponent = withInstall(FormComponent)\nexport const LlForm = withInstall(Form)\nexport default LlForm\nexport * from './src/config'\n\ndeclare module 'vue' {\n export interface GlobalComponents {\n LlFormComponent: typeof FormComponent\n LlForm: typeof Form\n }\n}\n"],"names":["withInstall","FormComponent","Form"],"mappings":";;;;;;;;;;;;;;AAKa,MAAA,eAAA,GAAkBA,wBAAYC,uBAAa,EAAA;AAC3C,MAAA,MAAA,GAASD,wBAAYE,cAAI;;;;;;;;;;"}
@@ -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 {};
@@ -45,6 +45,13 @@ const formProps = runtime.buildProps({
45
45
  default: false
46
46
  }
47
47
  });
48
+ const formEmits = {
49
+ /**
50
+ * @description 表单项值改变时触发
51
+ */
52
+ change: (value) => !!value
53
+ };
48
54
 
55
+ exports.formEmits = formEmits;
49
56
  exports.formProps = formProps;
50
57
  //# sourceMappingURL=form.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","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":["buildProps","definePropType"],"mappings":";;;;;;AAmDO,MAAM,YAAYA,kBAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIlC,WAAa,EAAA;AAAA,IACX,IAAA,EAAMC,uBAA6B,KAAK,CAAA;AAAA,IACxC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAA6B,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,EAAMA,uBAAyB,MAAM,CAAA;AAAA,IACrC,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAMA,uBAAyB,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.js","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":["buildProps","definePropType"],"mappings":";;;;;;AAmDO,MAAM,YAAYA,kBAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIlC,WAAa,EAAA;AAAA,IACX,IAAA,EAAMC,uBAA6B,KAAK,CAAA;AAAA,IACxC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAA6B,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,EAAMA,uBAAyB,MAAM,CAAA;AAAA,IACrC,OAAA,EAAS,OAAO,EAAC,CAAA;AAAA,GACnB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAMA,uBAAyB,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;;;;;"}
@@ -6,6 +6,7 @@ var formComponent = require('./form-component.js');
6
6
 
7
7
  "use strict";
8
8
 
9
+ exports.formEmits = form.formEmits;
9
10
  exports.formProps = form.formProps;
10
11
  exports.checkedType = components.checkedType;
11
12
  exports.formComponentProps = formComponent.formComponentProps;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -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: {
@@ -15,8 +15,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
15
15
  ...{ name: "LlForm" },
16
16
  __name: "form",
17
17
  props: form.formProps,
18
- setup(__props, { expose: __expose }) {
18
+ emits: form.formEmits,
19
+ setup(__props, { expose: __expose, emit: __emit }) {
19
20
  const props = __props;
21
+ const emits = __emit;
20
22
  const bem = createNamespace.createNamespace("form");
21
23
  const formData = vue.reactive(props.formData);
22
24
  const formRef = vue.ref();
@@ -40,6 +42,15 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
40
42
  }
41
43
  return bem.is("label-top");
42
44
  };
45
+ vue.watch(
46
+ () => formData,
47
+ (val) => {
48
+ emits("change", val);
49
+ },
50
+ {
51
+ deep: true
52
+ }
53
+ );
43
54
  __expose({
44
55
  validate,
45
56
  resetFields
@@ -1 +1 @@
1
- {"version":3,"file":"form.vue2.js","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":["createNamespace","reactive","ref","omit"],"mappings":";;;;;;;;;;;;;;;;;;AA+EA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,MAAM,CAAA,CAAA;AAElC,IAAM,MAAA,QAAA,GAAWC,YAAS,CAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAExC,IAAA,MAAM,UAAUC,OAAI,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,OAAOC,aAAK,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.js","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":["createNamespace","reactive","ref","omit","watch"],"mappings":";;;;;;;;;;;;;;;;;;;AA2EA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,MAAM,CAAA,CAAA;AAElC,IAAM,MAAA,QAAA,GAAWC,YAAS,CAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAExC,IAAA,MAAM,UAAUC,OAAI,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,OAAOC,aAAK,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,IAAAC,SAAA;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -234,6 +234,7 @@ exports.useTabProps = useTabMixin.useTabProps;
234
234
  exports.useTabSetup = useTabMixin.useTabSetup;
235
235
  exports.emptyProps = empty.emptyProps;
236
236
  exports.url = empty.url;
237
+ exports.formEmits = form.formEmits;
237
238
  exports.formProps = form.formProps;
238
239
  exports.checkedType = components.checkedType;
239
240
  exports.formComponentProps = formComponent.formComponentProps;
@@ -267,6 +268,7 @@ exports.operateTreeEmits = operateTree.operateTreeEmits;
267
268
  exports.operateTreeProps = operateTree.operateTreeProps;
268
269
  exports.selectOptGroupProps = select.selectOptGroupProps;
269
270
  exports.selectOptionProps = select.selectOptionProps;
271
+ exports.LEFT_SELECT_MIN_WIDTH = selectGroup.LEFT_SELECT_MIN_WIDTH;
270
272
  exports.selectGroupData = selectGroup.selectGroupData;
271
273
  exports.selectGroupEmits = selectGroup.selectGroupEmits;
272
274
  exports.selectGroupFormType = selectGroup.selectGroupFormType;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}