ll-plus 2.6.26 → 2.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/es/components/advanced-filtering/index.d.ts +288 -288
  2. package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +144 -144
  3. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +144 -144
  4. package/es/components/breadcrumb-card/index.d.ts +1 -1
  5. package/es/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
  6. package/es/components/cascader/index.d.ts +8 -8
  7. package/es/components/cascader/src/cascader.vue.d.ts +8 -8
  8. package/es/components/checkbox/index.d.ts +217 -217
  9. package/es/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
  10. package/es/components/checkbox/src/checkbox.d.ts +56 -56
  11. package/es/components/drawer/index.d.ts +5 -5
  12. package/es/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
  13. package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
  14. package/es/components/drawer/src/drawer.vue.d.ts +5 -5
  15. package/es/components/easy-cron/index.d.ts +88 -88
  16. package/es/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
  17. package/es/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
  18. package/es/components/easy-cron/src/easy-cron.vue.d.ts +88 -88
  19. package/es/components/form/index.d.ts +144 -144
  20. package/es/components/form/src/components/form-component.vue.d.ts +1 -1
  21. package/es/components/form/src/config/form.d.ts +56 -56
  22. package/es/components/form/src/form.vue.d.ts +143 -143
  23. package/es/components/icon-picker/index.d.ts +1 -1
  24. package/es/components/icon-picker/src/components/modal.vue.d.ts +1 -1
  25. package/es/components/icon-picker/src/icon-picker.vue.d.ts +1 -1
  26. package/es/components/input/index.d.ts +33 -33
  27. package/es/components/input/src/input.vue.d.ts +33 -33
  28. package/es/components/key-value/index.d.ts +697 -690
  29. package/es/components/key-value/src/components/key-value-item.vue.d.ts +231 -230
  30. package/es/components/key-value/src/config/key-value.d.ts +1 -0
  31. package/es/components/key-value/src/key-value.vue.d.ts +697 -690
  32. package/es/components/modal/index.d.ts +1 -1
  33. package/es/components/modal/src/modal.vue.d.ts +1 -1
  34. package/es/components/new-drawer/index.d.ts +7 -7
  35. package/es/components/new-drawer/src/drawer.vue.d.ts +7 -7
  36. package/es/components/new-modal/index.d.ts +2 -2
  37. package/es/components/new-modal/src/modal.vue.d.ts +2 -2
  38. package/es/components/rich-text-editor/index.d.ts +1 -1
  39. package/es/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
  40. package/es/components/select/index.d.ts +4 -4
  41. package/es/components/select/src/select.vue.d.ts +4 -4
  42. package/es/components/select-group/index.d.ts +2 -2
  43. package/es/components/select-group/src/select-group.d.ts +1 -1
  44. package/es/components/select-group/src/select-group.vue.d.ts +2 -2
  45. package/es/components/table/index.d.ts +6 -6
  46. package/es/components/table/src/components/main-table.vue.d.ts +2 -2
  47. package/es/components/table/src/config/table.d.ts +2 -2
  48. package/es/components/table/src/table.vue.d.ts +6 -6
  49. package/es/components/textarea/index.d.ts +5 -5
  50. package/es/components/textarea/src/textarea.vue.d.ts +5 -5
  51. package/es/components/tooltip/index.d.ts +4 -4
  52. package/es/components/tooltip/src/tooltip.d.ts +1 -1
  53. package/es/components/tooltip/src/tooltip.vue.d.ts +4 -4
  54. package/es/components/tree-search/index.d.ts +1 -1
  55. package/es/components/tree-search/src/tree-search.vue.d.ts +1 -1
  56. package/es/components/upload-drag/index.d.ts +2 -2
  57. package/es/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
  58. package/es/packages/components/input/src/input.vue2.mjs +7 -0
  59. package/es/packages/components/input/src/input.vue2.mjs.map +1 -1
  60. package/es/packages/components/key-value/src/components/key-value-item.vue2.mjs +60 -20
  61. package/es/packages/components/key-value/src/components/key-value-item.vue2.mjs.map +1 -1
  62. package/es/packages/components/key-value/src/config/key-value.mjs +4 -0
  63. package/es/packages/components/key-value/src/config/key-value.mjs.map +1 -1
  64. package/es/packages/components/key-value/src/key-value.vue2.mjs +7 -6
  65. package/es/packages/components/key-value/src/key-value.vue2.mjs.map +1 -1
  66. package/es/utils/props/runtime.d.ts +2 -2
  67. package/index.full.js +76 -24
  68. package/index.full.min.js +16 -16
  69. package/index.full.min.js.map +1 -1
  70. package/index.full.min.mjs +16 -16
  71. package/index.full.min.mjs.map +1 -1
  72. package/index.full.mjs +76 -24
  73. package/lib/components/advanced-filtering/index.d.ts +288 -288
  74. package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +144 -144
  75. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +144 -144
  76. package/lib/components/breadcrumb-card/index.d.ts +1 -1
  77. package/lib/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
  78. package/lib/components/cascader/index.d.ts +8 -8
  79. package/lib/components/cascader/src/cascader.vue.d.ts +8 -8
  80. package/lib/components/checkbox/index.d.ts +217 -217
  81. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
  82. package/lib/components/checkbox/src/checkbox.d.ts +56 -56
  83. package/lib/components/drawer/index.d.ts +5 -5
  84. package/lib/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
  85. package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
  86. package/lib/components/drawer/src/drawer.vue.d.ts +5 -5
  87. package/lib/components/easy-cron/index.d.ts +88 -88
  88. package/lib/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
  89. package/lib/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
  90. package/lib/components/easy-cron/src/easy-cron.vue.d.ts +88 -88
  91. package/lib/components/form/index.d.ts +144 -144
  92. package/lib/components/form/src/components/form-component.vue.d.ts +1 -1
  93. package/lib/components/form/src/config/form.d.ts +56 -56
  94. package/lib/components/form/src/form.vue.d.ts +143 -143
  95. package/lib/components/icon-picker/index.d.ts +1 -1
  96. package/lib/components/icon-picker/src/components/modal.vue.d.ts +1 -1
  97. package/lib/components/icon-picker/src/icon-picker.vue.d.ts +1 -1
  98. package/lib/components/input/index.d.ts +33 -33
  99. package/lib/components/input/src/input.vue.d.ts +33 -33
  100. package/lib/components/key-value/index.d.ts +697 -690
  101. package/lib/components/key-value/src/components/key-value-item.vue.d.ts +231 -230
  102. package/lib/components/key-value/src/config/key-value.d.ts +1 -0
  103. package/lib/components/key-value/src/key-value.vue.d.ts +697 -690
  104. package/lib/components/modal/index.d.ts +1 -1
  105. package/lib/components/modal/src/modal.vue.d.ts +1 -1
  106. package/lib/components/new-drawer/index.d.ts +7 -7
  107. package/lib/components/new-drawer/src/drawer.vue.d.ts +7 -7
  108. package/lib/components/new-modal/index.d.ts +2 -2
  109. package/lib/components/new-modal/src/modal.vue.d.ts +2 -2
  110. package/lib/components/rich-text-editor/index.d.ts +1 -1
  111. package/lib/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
  112. package/lib/components/select/index.d.ts +4 -4
  113. package/lib/components/select/src/select.vue.d.ts +4 -4
  114. package/lib/components/select-group/index.d.ts +2 -2
  115. package/lib/components/select-group/src/select-group.d.ts +1 -1
  116. package/lib/components/select-group/src/select-group.vue.d.ts +2 -2
  117. package/lib/components/table/index.d.ts +6 -6
  118. package/lib/components/table/src/components/main-table.vue.d.ts +2 -2
  119. package/lib/components/table/src/config/table.d.ts +2 -2
  120. package/lib/components/table/src/table.vue.d.ts +6 -6
  121. package/lib/components/textarea/index.d.ts +5 -5
  122. package/lib/components/textarea/src/textarea.vue.d.ts +5 -5
  123. package/lib/components/tooltip/index.d.ts +4 -4
  124. package/lib/components/tooltip/src/tooltip.d.ts +1 -1
  125. package/lib/components/tooltip/src/tooltip.vue.d.ts +4 -4
  126. package/lib/components/tree-search/index.d.ts +1 -1
  127. package/lib/components/tree-search/src/tree-search.vue.d.ts +1 -1
  128. package/lib/components/upload-drag/index.d.ts +2 -2
  129. package/lib/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
  130. package/lib/packages/components/input/src/input.vue2.js +7 -0
  131. package/lib/packages/components/input/src/input.vue2.js.map +1 -1
  132. package/lib/packages/components/key-value/src/components/key-value-item.vue2.js +59 -19
  133. package/lib/packages/components/key-value/src/components/key-value-item.vue2.js.map +1 -1
  134. package/lib/packages/components/key-value/src/config/key-value.js +4 -0
  135. package/lib/packages/components/key-value/src/config/key-value.js.map +1 -1
  136. package/lib/packages/components/key-value/src/key-value.vue2.js +6 -5
  137. package/lib/packages/components/key-value/src/key-value.vue2.js.map +1 -1
  138. package/lib/utils/props/runtime.d.ts +2 -2
  139. package/package.json +1 -1
  140. package/theme-chalk/fonts/iconfont.js +1 -1
  141. package/theme-chalk/fonts/iconfont.json +28 -0
  142. package/types/packages/components/advanced-filtering/index.d.ts +288 -288
  143. package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +144 -144
  144. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +144 -144
  145. package/types/packages/components/breadcrumb-card/index.d.ts +1 -1
  146. package/types/packages/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
  147. package/types/packages/components/cascader/index.d.ts +8 -8
  148. package/types/packages/components/cascader/src/cascader.vue.d.ts +8 -8
  149. package/types/packages/components/checkbox/index.d.ts +217 -217
  150. package/types/packages/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
  151. package/types/packages/components/checkbox/src/checkbox.d.ts +56 -56
  152. package/types/packages/components/drawer/index.d.ts +5 -5
  153. package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
  154. package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
  155. package/types/packages/components/drawer/src/drawer.vue.d.ts +5 -5
  156. package/types/packages/components/easy-cron/index.d.ts +88 -88
  157. package/types/packages/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
  158. package/types/packages/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
  159. package/types/packages/components/easy-cron/src/easy-cron.vue.d.ts +88 -88
  160. package/types/packages/components/form/index.d.ts +144 -144
  161. package/types/packages/components/form/src/components/form-component.vue.d.ts +1 -1
  162. package/types/packages/components/form/src/config/form.d.ts +56 -56
  163. package/types/packages/components/form/src/form.vue.d.ts +143 -143
  164. package/types/packages/components/icon-picker/index.d.ts +1 -1
  165. package/types/packages/components/icon-picker/src/components/modal.vue.d.ts +1 -1
  166. package/types/packages/components/icon-picker/src/icon-picker.vue.d.ts +1 -1
  167. package/types/packages/components/input/index.d.ts +33 -33
  168. package/types/packages/components/input/src/input.vue.d.ts +33 -33
  169. package/types/packages/components/key-value/index.d.ts +697 -690
  170. package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +231 -230
  171. package/types/packages/components/key-value/src/config/key-value.d.ts +1 -0
  172. package/types/packages/components/key-value/src/key-value.vue.d.ts +697 -690
  173. package/types/packages/components/modal/index.d.ts +1 -1
  174. package/types/packages/components/modal/src/modal.vue.d.ts +1 -1
  175. package/types/packages/components/new-drawer/index.d.ts +7 -7
  176. package/types/packages/components/new-drawer/src/drawer.vue.d.ts +7 -7
  177. package/types/packages/components/new-modal/index.d.ts +2 -2
  178. package/types/packages/components/new-modal/src/modal.vue.d.ts +2 -2
  179. package/types/packages/components/rich-text-editor/index.d.ts +1 -1
  180. package/types/packages/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
  181. package/types/packages/components/select/index.d.ts +4 -4
  182. package/types/packages/components/select/src/select.vue.d.ts +4 -4
  183. package/types/packages/components/select-group/index.d.ts +2 -2
  184. package/types/packages/components/select-group/src/select-group.d.ts +1 -1
  185. package/types/packages/components/select-group/src/select-group.vue.d.ts +2 -2
  186. package/types/packages/components/table/index.d.ts +6 -6
  187. package/types/packages/components/table/src/components/main-table.vue.d.ts +2 -2
  188. package/types/packages/components/table/src/config/table.d.ts +2 -2
  189. package/types/packages/components/table/src/table.vue.d.ts +6 -6
  190. package/types/packages/components/textarea/index.d.ts +5 -5
  191. package/types/packages/components/textarea/src/textarea.vue.d.ts +5 -5
  192. package/types/packages/components/tooltip/index.d.ts +4 -4
  193. package/types/packages/components/tooltip/src/tooltip.d.ts +1 -1
  194. package/types/packages/components/tooltip/src/tooltip.vue.d.ts +4 -4
  195. package/types/packages/components/tree-search/index.d.ts +1 -1
  196. package/types/packages/components/tree-search/src/tree-search.vue.d.ts +1 -1
  197. package/types/packages/components/upload-drag/index.d.ts +2 -2
  198. package/types/packages/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
  199. package/types/packages/utils/props/runtime.d.ts +2 -2
@@ -1,7 +1,7 @@
1
1
  import Tooltip from './src/tooltip.vue';
2
2
  export declare const LlTooltip: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
3
3
  readonly tip: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "提示", boolean>;
4
- readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
4
+ readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
5
5
  readonly maxWidth: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
6
6
  readonly tipEllipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
7
7
  readonly tipEllipsisLine: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
@@ -21,7 +21,7 @@ export declare const LlTooltip: import("ll-plus/es/utils").SFCWithInstall<import
21
21
  readonly width: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
22
22
  }, {
23
23
  props: import("@vue/shared").LooseRequired<{
24
- readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
24
+ readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
25
25
  readonly maxWidth: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
26
26
  readonly width: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
27
27
  readonly tip: string;
@@ -65,7 +65,7 @@ export declare const LlTooltip: import("ll-plus/es/utils").SFCWithInstall<import
65
65
  }>;
66
66
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
67
67
  readonly tip: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "提示", boolean>;
68
- readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
68
+ readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
69
69
  readonly maxWidth: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
70
70
  readonly tipEllipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
71
71
  readonly tipEllipsisLine: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
@@ -84,7 +84,7 @@ export declare const LlTooltip: import("ll-plus/es/utils").SFCWithInstall<import
84
84
  readonly ellipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
85
85
  readonly width: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
86
86
  }>>, {
87
- readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
87
+ readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
88
88
  readonly maxWidth: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
89
89
  readonly width: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
90
90
  readonly tip: string;
@@ -3,7 +3,7 @@ import type Tooltip from './tooltip.vue';
3
3
  export declare const placement: readonly ["top", "left", "right", "bottom", "topLeft", "topRight", "bottomLeft", "bottomRight", "leftTop", "leftBottom", "rightTop", "rightBottom"];
4
4
  export declare const tooltipProps: {
5
5
  readonly tip: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "提示", boolean>;
6
- readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
6
+ readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
7
7
  readonly maxWidth: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
8
8
  readonly tipEllipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
9
9
  readonly tipEllipsisLine: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
@@ -1,6 +1,6 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
2
  readonly tip: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "提示", boolean>;
3
- readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
3
+ readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
4
4
  readonly maxWidth: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
5
5
  readonly tipEllipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
6
6
  readonly tipEllipsisLine: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
@@ -20,7 +20,7 @@ declare const _default: import("vue").DefineComponent<{
20
20
  readonly width: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
21
21
  }, {
22
22
  props: import("@vue/shared").LooseRequired<{
23
- readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
23
+ readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
24
24
  readonly maxWidth: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
25
25
  readonly width: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
26
26
  readonly tip: string;
@@ -64,7 +64,7 @@ declare const _default: import("vue").DefineComponent<{
64
64
  }>;
65
65
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
66
66
  readonly tip: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "提示", boolean>;
67
- readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
67
+ readonly placement: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown, "top", boolean>;
68
68
  readonly maxWidth: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
69
69
  readonly tipEllipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
70
70
  readonly tipEllipsisLine: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
@@ -83,7 +83,7 @@ declare const _default: import("vue").DefineComponent<{
83
83
  readonly ellipsis: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
84
84
  readonly width: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, "", boolean>;
85
85
  }>>, {
86
- readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
86
+ readonly placement: import("ll-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "top" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom", unknown>;
87
87
  readonly maxWidth: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
88
88
  readonly width: import("ll-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>;
89
89
  readonly tip: string;
@@ -105,7 +105,7 @@ export declare const LlTreeSearch: import("ll-plus/es/utils").SFCWithInstall<imp
105
105
  readonly onCancel?: (() => any) | undefined;
106
106
  readonly onClickAdd?: (() => any) | undefined;
107
107
  } & {}>;
108
- emits: ((event: "cancel") => void) & ((event: "close") => void) & ((event: "select", selectedKeys: string[], e: Event) => void) & ((event: "ok") => void) & ((event: "expand", expandedKeys: string[], data: any) => void) & ((event: "clickAdd") => void);
108
+ emits: ((event: "close") => void) & ((event: "select", selectedKeys: string[], e: Event) => void) & ((event: "ok") => void) & ((event: "cancel") => void) & ((event: "expand", expandedKeys: string[], data: any) => void) & ((event: "clickAdd") => void);
109
109
  isCollapseMenu: import("vue").Ref<boolean>;
110
110
  newExpandedKeys: import("vue").Ref<string[]>;
111
111
  bem: {
@@ -104,7 +104,7 @@ declare const _default: import("vue").DefineComponent<{
104
104
  readonly onCancel?: (() => any) | undefined;
105
105
  readonly onClickAdd?: (() => any) | undefined;
106
106
  } & {}>;
107
- emits: ((event: "cancel") => void) & ((event: "close") => void) & ((event: "select", selectedKeys: string[], e: Event) => void) & ((event: "ok") => void) & ((event: "expand", expandedKeys: string[], data: any) => void) & ((event: "clickAdd") => void);
107
+ emits: ((event: "close") => void) & ((event: "select", selectedKeys: string[], e: Event) => void) & ((event: "ok") => void) & ((event: "cancel") => void) & ((event: "expand", expandedKeys: string[], data: any) => void) & ((event: "clickAdd") => void);
108
108
  isCollapseMenu: import("vue").Ref<boolean>;
109
109
  newExpandedKeys: import("vue").Ref<string[]>;
110
110
  bem: {
@@ -39,7 +39,7 @@ export declare const LlUploadDrag: import("ll-plus/es/utils").SFCWithInstall<imp
39
39
  readonly onCancel?: ((...args: any[]) => any) | undefined;
40
40
  readonly onCustomRequest?: ((...args: any[]) => any) | undefined;
41
41
  } & {}>;
42
- emits: (event: "cancel" | "update:value" | "confirm" | "customRequest", ...args: any[]) => void;
42
+ emits: (event: "update:value" | "confirm" | "customRequest" | "cancel", ...args: any[]) => void;
43
43
  bem: {
44
44
  b: (blockSuffix?: string) => string;
45
45
  e: (element?: string) => string;
@@ -61,7 +61,7 @@ export declare const LlUploadDrag: import("ll-plus/es/utils").SFCWithInstall<imp
61
61
  handleDragReject: () => void;
62
62
  handleClickCancelBtn: () => void;
63
63
  handleClickOkBtn: () => void;
64
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "update:value" | "confirm" | "customRequest")[], "cancel" | "update:value" | "confirm" | "customRequest", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
64
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "confirm" | "customRequest" | "cancel")[], "update:value" | "confirm" | "customRequest" | "cancel", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
65
65
  value: {
66
66
  type: ArrayConstructor;
67
67
  default: () => never[];
@@ -39,7 +39,7 @@ declare const _default: import("vue").DefineComponent<{
39
39
  readonly onCancel?: ((...args: any[]) => any) | undefined;
40
40
  readonly onCustomRequest?: ((...args: any[]) => any) | undefined;
41
41
  } & {}>;
42
- emits: (event: "cancel" | "update:value" | "confirm" | "customRequest", ...args: any[]) => void;
42
+ emits: (event: "update:value" | "confirm" | "customRequest" | "cancel", ...args: any[]) => void;
43
43
  bem: {
44
44
  b: (blockSuffix?: string) => string;
45
45
  e: (element?: string) => string;
@@ -61,7 +61,7 @@ declare const _default: import("vue").DefineComponent<{
61
61
  handleDragReject: () => void;
62
62
  handleClickCancelBtn: () => void;
63
63
  handleClickOkBtn: () => void;
64
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "update:value" | "confirm" | "customRequest")[], "cancel" | "update:value" | "confirm" | "customRequest", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
64
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "confirm" | "customRequest" | "cancel")[], "update:value" | "confirm" | "customRequest" | "cancel", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
65
65
  value: {
66
66
  type: ArrayConstructor;
67
67
  default: () => never[];
@@ -21,6 +21,13 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
21
21
  }
22
22
  };
23
23
  const handleMouseOut = (e) => {
24
+ if (!props.allowClear) {
25
+ return;
26
+ }
27
+ if (e.relatedTarget && (e.relatedTarget.classList.contains("ant-input-clear-icon") || e.relatedTarget.closest(".ant-input-clear-icon"))) {
28
+ return;
29
+ }
30
+ allowClear.value = false;
24
31
  };
25
32
  watchEffect(() => {
26
33
  if (props.value !== innerValue.value) {
@@ -1 +1 @@
1
- {"version":3,"file":"input.vue2.mjs","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\" @mouseover=\"handleMouseOver\" @mouseout=\"handleMouseOut\">\n <component\n :is=\"componentType\"\n ref=\"inputRef\"\n v-bind=\"computedAttrs\"\n :allow-clear=\"props.allowClear ? allowClear : false\"\n >\n <template v-for=\"item in Object.keys($slots)\" :key=\"item\" #[item]=\"data\">\n <slot :name=\"item\" v-bind=\"data || {}\"></slot>\n </template>\n <template v-if=\"prefixIcon\" #prefix>\n <ll-icon :icon-name=\"prefixIcon\" class=\"prefix-icon\" />\n </template>\n <template v-if=\"suffixIcon\" #suffix>\n <ll-icon :icon-name=\"suffixIcon\" class=\"suffix-icon\" />\n </template>\n </component>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, useAttrs, watchEffect, onMounted } from 'vue'\nimport { Input } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { InputValue, inputProps } from './input'\n\ndefineOptions({ name: 'LlInput' })\n\nconst bem = createNamespace('input')\n\nconst props = defineProps(inputProps)\n\nconst innerValue = ref<InputValue>('')\n\nconst inputRef = ref()\n\nconst allowClear = ref(false)\n\n// 鼠标移入事件\nconst handleMouseOver = () => {\n if (props.allowClear) {\n allowClear.value = true\n }\n}\n\n// 鼠标移出事件\nconst handleMouseOut = (e: any) => {\n // if (!props.allowClear) {\n // return\n // }\n // if (\n // e.relatedTarget &&\n // (e.relatedTarget.classList.contains('ant-input-clear-icon') ||\n // e.relatedTarget.closest('.ant-input-clear-icon'))\n // ) {\n // return\n // }\n // allowClear.value = false\n}\n\nwatchEffect(() => {\n if (props.value !== innerValue.value) {\n innerValue.value = props.value\n }\n})\n\nconst componentType = props.showPassword ? Input.Password : Input\n\nconst computedAttrs = computed(() => {\n const attrs = { ...useAttrs(), ...props }\n\n return attrs\n})\n\nconst focus = () => {\n inputRef.value.focus()\n}\n\n// 给图标阻止冒泡事件\nonMounted(() => {\n if (props.allowClear) {\n const clearIcon = inputRef.value?.$el.querySelector('.ant-input-clear-icon')\n if (clearIcon) {\n clearIcon.addEventListener('mouseover', (e: any) => {\n e.stopPropagation()\n allowClear.value = true\n })\n clearIcon.addEventListener('mouseout', (e: any) => {\n if (e.relatedTarget && inputRef.value.$el.contains(e.relatedTarget)) {\n return\n }\n allowClear.value = false\n })\n }\n }\n})\n\ndefineExpose({ focus })\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;AA6BA,IAAM,MAAA,GAAA,GAAM,gBAAgB,OAAO,CAAA,CAAA;AAEnC,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAM,MAAA,UAAA,GAAa,IAAgB,EAAE,CAAA,CAAA;AAErC,IAAA,MAAM,WAAW,GAAI,EAAA,CAAA;AAErB,IAAM,MAAA,UAAA,GAAa,IAAI,KAAK,CAAA,CAAA;AAG5B,IAAA,MAAM,kBAAkB,MAAM;AAC5B,MAAA,IAAI,MAAM,UAAY,EAAA;AACpB,QAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AAAA,OACrB;AAAA,KACF,CAAA;AAGA,IAAM,MAAA,cAAA,GAAiB,CAAC,CAAW,KAAA;AAAA,KAYnC,CAAA;AAEA,IAAA,WAAA,CAAY,MAAM;AAChB,MAAI,IAAA,KAAA,CAAM,KAAU,KAAA,UAAA,CAAW,KAAO,EAAA;AACpC,QAAA,UAAA,CAAW,QAAQ,KAAM,CAAA,KAAA,CAAA;AAAA,OAC3B;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,aAAgB,GAAA,KAAA,CAAM,YAAe,GAAA,KAAA,CAAM,QAAW,GAAA,KAAA,CAAA;AAE5D,IAAM,MAAA,aAAA,GAAgB,SAAS,MAAM;AACnC,MAAA,MAAM,QAAQ,EAAE,GAAG,QAAS,EAAA,EAAG,GAAG,KAAM,EAAA,CAAA;AAExC,MAAO,OAAA,KAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,QAAA,CAAS,MAAM,KAAM,EAAA,CAAA;AAAA,KACvB,CAAA;AAGA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAI,MAAM,UAAY,EAAA;AACpB,QAAA,MAAM,SAAY,GAAA,QAAA,CAAS,KAAO,EAAA,GAAA,CAAI,cAAc,uBAAuB,CAAA,CAAA;AAC3E,QAAA,IAAI,SAAW,EAAA;AACb,UAAU,SAAA,CAAA,gBAAA,CAAiB,WAAa,EAAA,CAAC,CAAW,KAAA;AAClD,YAAA,CAAA,CAAE,eAAgB,EAAA,CAAA;AAClB,YAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AAAA,WACpB,CAAA,CAAA;AACD,UAAU,SAAA,CAAA,gBAAA,CAAiB,UAAY,EAAA,CAAC,CAAW,KAAA;AACjD,YAAI,IAAA,CAAA,CAAE,iBAAiB,QAAS,CAAA,KAAA,CAAM,IAAI,QAAS,CAAA,CAAA,CAAE,aAAa,CAAG,EAAA;AACnE,cAAA,OAAA;AAAA,aACF;AACA,YAAA,UAAA,CAAW,KAAQ,GAAA,KAAA,CAAA;AAAA,WACpB,CAAA,CAAA;AAAA,SACH;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AAED,IAAa,QAAA,CAAA,EAAE,OAAO,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"input.vue2.mjs","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\" @mouseover=\"handleMouseOver\" @mouseout=\"handleMouseOut\">\n <component\n :is=\"componentType\"\n ref=\"inputRef\"\n v-bind=\"computedAttrs\"\n :allow-clear=\"props.allowClear ? allowClear : false\"\n >\n <template v-for=\"item in Object.keys($slots)\" :key=\"item\" #[item]=\"data\">\n <slot :name=\"item\" v-bind=\"data || {}\"></slot>\n </template>\n <template v-if=\"prefixIcon\" #prefix>\n <ll-icon :icon-name=\"prefixIcon\" class=\"prefix-icon\" />\n </template>\n <template v-if=\"suffixIcon\" #suffix>\n <ll-icon :icon-name=\"suffixIcon\" class=\"suffix-icon\" />\n </template>\n </component>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, useAttrs, watchEffect, onMounted } from 'vue'\nimport { Input } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { InputValue, inputProps } from './input'\n\ndefineOptions({ name: 'LlInput' })\n\nconst bem = createNamespace('input')\n\nconst props = defineProps(inputProps)\n\nconst innerValue = ref<InputValue>('')\n\nconst inputRef = ref()\n\nconst allowClear = ref(false)\n\n// 鼠标移入事件\nconst handleMouseOver = () => {\n if (props.allowClear) {\n allowClear.value = true\n }\n}\n\n// 鼠标移出事件\nconst handleMouseOut = (e: any) => {\n if (!props.allowClear) {\n return\n }\n if (\n e.relatedTarget &&\n (e.relatedTarget.classList.contains('ant-input-clear-icon') ||\n e.relatedTarget.closest('.ant-input-clear-icon'))\n ) {\n return\n }\n allowClear.value = false\n}\n\nwatchEffect(() => {\n if (props.value !== innerValue.value) {\n innerValue.value = props.value\n }\n})\n\nconst componentType = props.showPassword ? Input.Password : Input\n\nconst computedAttrs = computed(() => {\n const attrs = { ...useAttrs(), ...props }\n\n return attrs\n})\n\nconst focus = () => {\n inputRef.value.focus()\n}\n\n// 给图标阻止冒泡事件\nonMounted(() => {\n if (props.allowClear) {\n const clearIcon = inputRef.value?.$el.querySelector('.ant-input-clear-icon')\n if (clearIcon) {\n clearIcon.addEventListener('mouseover', (e: any) => {\n e.stopPropagation()\n allowClear.value = true\n })\n clearIcon.addEventListener('mouseout', (e: any) => {\n if (e.relatedTarget && inputRef.value.$el.contains(e.relatedTarget)) {\n return\n }\n allowClear.value = false\n })\n }\n }\n})\n\ndefineExpose({ focus })\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;AA6BA,IAAM,MAAA,GAAA,GAAM,gBAAgB,OAAO,CAAA,CAAA;AAEnC,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAM,MAAA,UAAA,GAAa,IAAgB,EAAE,CAAA,CAAA;AAErC,IAAA,MAAM,WAAW,GAAI,EAAA,CAAA;AAErB,IAAM,MAAA,UAAA,GAAa,IAAI,KAAK,CAAA,CAAA;AAG5B,IAAA,MAAM,kBAAkB,MAAM;AAC5B,MAAA,IAAI,MAAM,UAAY,EAAA;AACpB,QAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AAAA,OACrB;AAAA,KACF,CAAA;AAGA,IAAM,MAAA,cAAA,GAAiB,CAAC,CAAW,KAAA;AACjC,MAAI,IAAA,CAAC,MAAM,UAAY,EAAA;AACrB,QAAA,OAAA;AAAA,OACF;AACA,MAAA,IACE,CAAE,CAAA,aAAA,KACD,CAAE,CAAA,aAAA,CAAc,SAAU,CAAA,QAAA,CAAS,sBAAsB,CAAA,IACxD,CAAE,CAAA,aAAA,CAAc,OAAQ,CAAA,uBAAuB,CACjD,CAAA,EAAA;AACA,QAAA,OAAA;AAAA,OACF;AACA,MAAA,UAAA,CAAW,KAAQ,GAAA,KAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAA,WAAA,CAAY,MAAM;AAChB,MAAI,IAAA,KAAA,CAAM,KAAU,KAAA,UAAA,CAAW,KAAO,EAAA;AACpC,QAAA,UAAA,CAAW,QAAQ,KAAM,CAAA,KAAA,CAAA;AAAA,OAC3B;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,aAAgB,GAAA,KAAA,CAAM,YAAe,GAAA,KAAA,CAAM,QAAW,GAAA,KAAA,CAAA;AAE5D,IAAM,MAAA,aAAA,GAAgB,SAAS,MAAM;AACnC,MAAA,MAAM,QAAQ,EAAE,GAAG,QAAS,EAAA,EAAG,GAAG,KAAM,EAAA,CAAA;AAExC,MAAO,OAAA,KAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,QAAA,CAAS,MAAM,KAAM,EAAA,CAAA;AAAA,KACvB,CAAA;AAGA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAI,MAAM,UAAY,EAAA;AACpB,QAAA,MAAM,SAAY,GAAA,QAAA,CAAS,KAAO,EAAA,GAAA,CAAI,cAAc,uBAAuB,CAAA,CAAA;AAC3E,QAAA,IAAI,SAAW,EAAA;AACb,UAAU,SAAA,CAAA,gBAAA,CAAiB,WAAa,EAAA,CAAC,CAAW,KAAA;AAClD,YAAA,CAAA,CAAE,eAAgB,EAAA,CAAA;AAClB,YAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AAAA,WACpB,CAAA,CAAA;AACD,UAAU,SAAA,CAAA,gBAAA,CAAiB,UAAY,EAAA,CAAC,CAAW,KAAA;AACjD,YAAI,IAAA,CAAA,CAAE,iBAAiB,QAAS,CAAA,KAAA,CAAM,IAAI,QAAS,CAAA,CAAA,CAAE,aAAa,CAAG,EAAA;AACnE,cAAA,OAAA;AAAA,aACF;AACA,YAAA,UAAA,CAAW,KAAQ,GAAA,KAAA,CAAA;AAAA,WACpB,CAAA,CAAA;AAAA,SACH;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AAED,IAAa,QAAA,CAAA,EAAE,OAAO,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, useAttrs, ref, computed, watch, nextTick, resolveComponent, openBlock, createBlock, unref, withCtx, createElementBlock, normalizeClass, createVNode, renderSlot, resolveDynamicComponent, mergeProps, createSlots, renderList, createCommentVNode, normalizeStyle, createTextVNode, createElementVNode, normalizeProps, guardReactiveProps } from 'vue';
1
+ import { defineComponent, useAttrs, ref, computed, watch, nextTick, resolveComponent, openBlock, createBlock, unref, withCtx, createElementBlock, normalizeClass, createVNode, renderSlot, resolveDynamicComponent, mergeProps, createSlots, renderList, createCommentVNode, normalizeStyle, createTextVNode, createElementVNode, normalizeProps, guardReactiveProps, Fragment } from 'vue';
2
2
  import { isEmpty } from 'lodash-es';
3
3
  import '../../../../utils/index.mjs';
4
4
  import '../config/index.mjs';
@@ -40,6 +40,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
40
40
  const getDeleteDisabled = computed(() => {
41
41
  return props.disabledDelete?.includes(props.idx) || props.disabled;
42
42
  });
43
+ const hasValue = computed(() => {
44
+ return innerValue.value["key"] || innerValue.value["key"] === 0 || innerValue.value["value"];
45
+ });
43
46
  const handleDelete = () => {
44
47
  emits("delete");
45
48
  };
@@ -215,21 +218,57 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
215
218
  2
216
219
  /* CLASS */
217
220
  ),
218
- createVNode(_component_a_popconfirm, {
219
- title: "\u4F60\u786E\u5B9A\u8981\u79FB\u9664\u5417?",
220
- "ok-text": "\u786E\u8BA4",
221
- "cancel-text": "\u53D6\u6D88",
222
- placement: "topRight",
223
- "overlay-class-name": unref(bem).m("popconfirm"),
224
- "get-popup-container": (trigger) => trigger.parentNode,
225
- "destroy-tooltip-on-hide": "",
226
- onConfirm: handleDelete
227
- }, {
228
- default: withCtx(() => [
229
- props.showDelete ? (openBlock(), createElementBlock(
221
+ props.showDelete ? (openBlock(), createElementBlock(
222
+ Fragment,
223
+ { key: 2 },
224
+ [
225
+ hasValue.value ? (openBlock(), createBlock(_component_a_popconfirm, {
226
+ key: 0,
227
+ title: "\u4F60\u786E\u5B9A\u8981\u79FB\u9664\u5417?",
228
+ "ok-text": "\u786E\u8BA4",
229
+ "cancel-text": "\u53D6\u6D88",
230
+ placement: "topRight",
231
+ "overlay-class-name": unref(bem).m("popconfirm"),
232
+ "get-popup-container": (trigger) => trigger.parentNode,
233
+ "destroy-tooltip-on-hide": "",
234
+ onConfirm: handleDelete
235
+ }, {
236
+ default: withCtx(() => [
237
+ createElementVNode(
238
+ "div",
239
+ {
240
+ class: normalizeClass(unref(bem).m("delete")),
241
+ style: normalizeStyle({
242
+ "margin-top": !!unref(attrs)["key-label"] || !!unref(attrs)["value-label"] ? "26px" : "0px"
243
+ })
244
+ },
245
+ [
246
+ createVNode(_component_ll_button, {
247
+ type: "link",
248
+ disabled: getDeleteDisabled.value
249
+ }, {
250
+ default: withCtx(() => [
251
+ renderSlot(_ctx.$slots, "delete-icon", {}, () => [
252
+ createVNode(_component_ll_icon, {
253
+ "icon-name": "icon-remove",
254
+ class: "delete"
255
+ })
256
+ ])
257
+ ]),
258
+ _: 3
259
+ /* FORWARDED */
260
+ }, 8, ["disabled"])
261
+ ],
262
+ 6
263
+ /* CLASS, STYLE */
264
+ )
265
+ ]),
266
+ _: 3
267
+ /* FORWARDED */
268
+ }, 8, ["overlay-class-name", "get-popup-container"])) : (openBlock(), createElementBlock(
230
269
  "div",
231
270
  {
232
- key: 0,
271
+ key: 1,
233
272
  class: normalizeClass(unref(bem).m("delete")),
234
273
  style: normalizeStyle({
235
274
  "margin-top": !!unref(attrs)["key-label"] || !!unref(attrs)["value-label"] ? "26px" : "0px"
@@ -238,7 +277,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
238
277
  [
239
278
  createVNode(_component_ll_button, {
240
279
  type: "link",
241
- disabled: getDeleteDisabled.value
280
+ disabled: getDeleteDisabled.value,
281
+ onClick: handleDelete
242
282
  }, {
243
283
  default: withCtx(() => [
244
284
  renderSlot(_ctx.$slots, "delete-icon", {}, () => [
@@ -254,11 +294,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
254
294
  ],
255
295
  6
256
296
  /* CLASS, STYLE */
257
- )) : createCommentVNode("v-if", true)
258
- ]),
259
- _: 3
260
- /* FORWARDED */
261
- }, 8, ["overlay-class-name", "get-popup-container"])
297
+ ))
298
+ ],
299
+ 64
300
+ /* STABLE_FRAGMENT */
301
+ )) : createCommentVNode("v-if", true)
262
302
  ],
263
303
  2
264
304
  /* CLASS */
@@ -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 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'\nimport type { NamePath } from 'ant-design-vue/es/form/interface'\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 = async () => {\n innerValue.value['value'] = null\n await form.value?.clearValidate()\n}\n\nconst validate = async () => {\n return await form.value?.validate()\n}\n\nconst resetFields = async () => {\n return await form.value?.resetFields()\n}\nconst clearValidate = async (namePath?: NamePath[]) => {\n return await form.value?.clearValidate(namePath)\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 clearValidate\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 <template v-if=\"props.showDelete\">\n <template v-if=\"hasValue\">\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 :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 </template>\n <div\n v-else\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\n type=\"link\"\n :disabled=\"getDeleteDisabled\"\n @click=\"handleDelete\"\n >\n <slot name=\"delete-icon\">\n <ll-icon icon-name=\"icon-remove\" class=\"delete\" />\n </slot>\n </ll-button>\n </div>\n </template>\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'\nimport type { NamePath } from 'ant-design-vue/es/form/interface'\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 hasValue = computed(() => {\n return (\n innerValue.value['key'] ||\n innerValue.value['key'] === 0 ||\n innerValue.value['value']\n )\n})\n\nconst handleDelete = () => {\n emits('delete')\n}\n\nconst handleChange = async () => {\n innerValue.value['value'] = null\n await form.value?.clearValidate()\n}\n\nconst validate = async () => {\n return await form.value?.validate()\n}\n\nconst resetFields = async () => {\n return await form.value?.resetFields()\n}\nconst clearValidate = async (namePath?: NamePath[]) => {\n return await form.value?.clearValidate(namePath)\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 clearValidate\n})\n</script>\n\n<style scoped></style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AA2KA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,IAAM,MAAA,GAAA,GAAM,gBAAgB,WAAW,CAAA,CAAA;AACvC,IAAM,MAAA,UAAA,GAAa,GAAI,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAElC,IAAA,MAAM,OAAO,GAAyB,EAAA,CAAA;AAEtC,IAAM,MAAA,UAAA,GAAa,SAAqB,MAAM;AAC5C,MAAA,MAAM,SAAS,KAAM,CAAA,OAAA,CAAA;AACrB,MAAO,OAAA,MAAA,CAAA;AAAA,KACR,CAAA,CAAA;AACD,IAAM,MAAA,YAAA,GAAe,SAAqB,MAAM;AAC9C,MAAA,IAAI,SAAS,KAAM,CAAA,SAAA,CAAA;AACnB,MAAI,IAAA,UAAA,CAAW,MAAM,KAAK,CAAA,IAAK,CAAC,OAAQ,CAAA,KAAA,CAAM,gBAAgB,CAAG,EAAA;AAC/D,QAAA,MAAA,GAAS,KAAM,CAAA,gBAAA,CAAiB,UAAW,CAAA,KAAA,CAAM,KAAK,CAAC,CAAA,CAAA;AAAA,OACzD;AACA,MAAO,OAAA,MAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAM,MAAA,cAAA,GAAiB,SAAS,MAAM;AACpC,MACE,OAAA,KAAA,CAAM,aAAa,QAAS,CAAA,KAAA,CAAM,GAAG,CACrC,IAAA,KAAA,CAAM,QACN,IAAA,UAAA,CAAW,KAAO,EAAA,QAAA,CAAA;AAAA,KAErB,CAAA,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAAM;AACtC,MACE,OAAA,KAAA,CAAM,eAAe,QAAS,CAAA,KAAA,CAAM,GAAG,CACvC,IAAA,KAAA,CAAM,QACN,IAAA,YAAA,CAAa,KAAO,EAAA,QAAA,CAAA;AAAA,KAEvB,CAAA,CAAA;AAED,IAAM,MAAA,iBAAA,GAAoB,SAAS,MAAM;AACvC,MAAA,OAAO,MAAM,cAAgB,EAAA,QAAA,CAAS,KAAM,CAAA,GAAG,KAAK,KAAM,CAAA,QAAA,CAAA;AAAA,KAC3D,CAAA,CAAA;AAED,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC9B,MACE,OAAA,UAAA,CAAW,KAAM,CAAA,KAAK,CACtB,IAAA,UAAA,CAAW,KAAM,CAAA,KAAK,CAAM,KAAA,CAAA,IAC5B,UAAW,CAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AAAA,KAE3B,CAAA,CAAA;AAED,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAAA,KAChB,CAAA;AAEA,IAAA,MAAM,eAAe,YAAY;AAC/B,MAAW,UAAA,CAAA,KAAA,CAAM,OAAO,CAAI,GAAA,IAAA,CAAA;AAC5B,MAAM,MAAA,IAAA,CAAK,OAAO,aAAc,EAAA,CAAA;AAAA,KAClC,CAAA;AAEA,IAAA,MAAM,WAAW,YAAY;AAC3B,MAAO,OAAA,MAAM,IAAK,CAAA,KAAA,EAAO,QAAS,EAAA,CAAA;AAAA,KACpC,CAAA;AAEA,IAAA,MAAM,cAAc,YAAY;AAC9B,MAAO,OAAA,MAAM,IAAK,CAAA,KAAA,EAAO,WAAY,EAAA,CAAA;AAAA,KACvC,CAAA;AACA,IAAM,MAAA,aAAA,GAAgB,OAAO,QAA0B,KAAA;AACrD,MAAA,OAAO,MAAM,IAAA,CAAK,KAAO,EAAA,aAAA,CAAc,QAAQ,CAAA,CAAA;AAAA,KACjD,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,UAAA;AAAA,MACA,OAAM,GAAO,KAAA;AACX,QAAM,MAAA,QAAA,EAAW,CAAA,IAAA,CAAK,MAAM;AAC1B,UAAI,IAAA;AACF,YAAA,KAAA,CAAM,gBAAgB,GAAG,CAAA,CAAA;AACzB,YAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AAAA,mBACP,KAAO,EAAA;AACd,YAAA,OAAA,CAAQ,MAAM,KAAK,CAAA,CAAA;AAAA,WACrB;AAAA,SACD,CAAA,CAAA;AAAA,OACH;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACX,QAAA;AAAA,MACA,WAAA;AAAA,MACA,aAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -72,6 +72,10 @@ const keyValueProps = buildProps({
72
72
  validate: {
73
73
  type: Boolean,
74
74
  default: false
75
+ },
76
+ keepLast: {
77
+ type: Boolean,
78
+ default: true
75
79
  }
76
80
  });
77
81
  const keyValueEmits = {
@@ -1 +1 @@
1
- {"version":3,"file":"key-value.mjs","sources":["../../../../../../../packages/components/key-value/src/config/key-value.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport { type FormColumn } from '@ll-plus/components'\nimport type { KeyValueItem } from './key-value-item'\nimport type KeyValue from '../key-value.vue'\n\nexport interface KeyType {\n label: string\n value: string\n option: FormColumn\n}\n\ntype KeyValueType = 'single' | 'doubt'\n\nexport const getKeyValueItem = () => ({\n key: null,\n value: null\n})\n\nexport const keyValueProps = buildProps({\n value: {\n type: definePropType<KeyValueItem[]>(Array),\n default: () => [{ key: '', value: '' }]\n },\n loading: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n keyLabel: {\n type: String,\n default: ''\n },\n valueLabel: {\n type: String,\n default: ''\n },\n addText: {\n type: String,\n default: '添加'\n },\n keyValueType: {\n type: definePropType<KeyValueType>(String),\n default: 'doubt'\n },\n keyType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入Key'\n })\n },\n keyTypes: {\n type: definePropType<KeyType[]>(Array),\n default: () => []\n },\n valueType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入Value'\n })\n },\n disabledValue: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledKey: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledDelete: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledAdd: {\n type: Boolean,\n default: false\n },\n validate: {\n type: Boolean,\n default: false\n }\n} as const)\n\nexport interface KeyValueAddEmits {\n index: number\n item: KeyValueItem\n value: KeyValueItem[]\n}\n\nexport const keyValueEmits = {\n change: (value: KeyValueItem[]) => !!value,\n add: (params: KeyValueAddEmits) => !!params,\n delete: (index: number) => typeof index === 'number',\n 'update:value': (value: KeyValueItem[]) => !!value\n}\n\n// props\nexport type KeyValueProps = ExtractPropTypes<typeof keyValueProps>\n// emits\nexport type KeyValueEmits = typeof keyValueEmits\n// instance\nexport type KeyValueInstance = InstanceType<typeof KeyValue>\n"],"names":[],"mappings":";;;;AAeO,MAAM,kBAAkB,OAAO;AAAA,EACpC,GAAK,EAAA,IAAA;AAAA,EACL,KAAO,EAAA,IAAA;AACT,CAAA,EAAA;AAEO,MAAM,gBAAgB,UAAW,CAAA;AAAA,EACtC,KAAO,EAAA;AAAA,IACL,IAAA,EAAM,eAA+B,KAAK,CAAA;AAAA,IAC1C,OAAA,EAAS,MAAM,CAAC,EAAE,KAAK,EAAI,EAAA,KAAA,EAAO,IAAI,CAAA;AAAA,GACxC;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,cAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAA,EAAM,eAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAA,EAAM,eAA2B,MAAM,CAAA;AAAA,IACvC,SAAS,OAAO;AAAA,MACd,IAAM,EAAA,OAAA;AAAA,MACN,WAAa,EAAA,uBAAA;AAAA,KACf,CAAA;AAAA,GACF;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAA,EAAM,eAA0B,KAAK,CAAA;AAAA,IACrC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAA,EAAM,eAA2B,MAAM,CAAA;AAAA,IACvC,SAAS,OAAO;AAAA,MACd,IAAM,EAAA,OAAA;AAAA,MACN,WAAa,EAAA,yBAAA;AAAA,KACf,CAAA;AAAA,GACF;AAAA,EACA,aAAe,EAAA;AAAA,IACb,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAQH,MAAM,aAAgB,GAAA;AAAA,EAC3B,MAAQ,EAAA,CAAC,KAA0B,KAAA,CAAC,CAAC,KAAA;AAAA,EACrC,GAAK,EAAA,CAAC,MAA6B,KAAA,CAAC,CAAC,MAAA;AAAA,EACrC,MAAQ,EAAA,CAAC,KAAkB,KAAA,OAAO,KAAU,KAAA,QAAA;AAAA,EAC5C,cAAgB,EAAA,CAAC,KAA0B,KAAA,CAAC,CAAC,KAAA;AAC/C;;;;"}
1
+ {"version":3,"file":"key-value.mjs","sources":["../../../../../../../packages/components/key-value/src/config/key-value.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport { type FormColumn } from '@ll-plus/components'\nimport type { KeyValueItem } from './key-value-item'\nimport type KeyValue from '../key-value.vue'\n\nexport interface KeyType {\n label: string\n value: string\n option: FormColumn\n}\n\ntype KeyValueType = 'single' | 'doubt'\n\nexport const getKeyValueItem = () => ({\n key: null,\n value: null\n})\n\nexport const keyValueProps = buildProps({\n value: {\n type: definePropType<KeyValueItem[]>(Array),\n default: () => [{ key: '', value: '' }]\n },\n loading: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n keyLabel: {\n type: String,\n default: ''\n },\n valueLabel: {\n type: String,\n default: ''\n },\n addText: {\n type: String,\n default: '添加'\n },\n keyValueType: {\n type: definePropType<KeyValueType>(String),\n default: 'doubt'\n },\n keyType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入Key'\n })\n },\n keyTypes: {\n type: definePropType<KeyType[]>(Array),\n default: () => []\n },\n valueType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入Value'\n })\n },\n disabledValue: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledKey: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledDelete: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledAdd: {\n type: Boolean,\n default: false\n },\n validate: {\n type: Boolean,\n default: false\n },\n keepLast: {\n type: Boolean,\n default: true\n }\n} as const)\n\nexport interface KeyValueAddEmits {\n index: number\n item: KeyValueItem\n value: KeyValueItem[]\n}\n\nexport const keyValueEmits = {\n change: (value: KeyValueItem[]) => !!value,\n add: (params: KeyValueAddEmits) => !!params,\n delete: (index: number) => typeof index === 'number',\n 'update:value': (value: KeyValueItem[]) => !!value\n}\n\n// props\nexport type KeyValueProps = ExtractPropTypes<typeof keyValueProps>\n// emits\nexport type KeyValueEmits = typeof keyValueEmits\n// instance\nexport type KeyValueInstance = InstanceType<typeof KeyValue>\n"],"names":[],"mappings":";;;;AAeO,MAAM,kBAAkB,OAAO;AAAA,EACpC,GAAK,EAAA,IAAA;AAAA,EACL,KAAO,EAAA,IAAA;AACT,CAAA,EAAA;AAEO,MAAM,gBAAgB,UAAW,CAAA;AAAA,EACtC,KAAO,EAAA;AAAA,IACL,IAAA,EAAM,eAA+B,KAAK,CAAA;AAAA,IAC1C,OAAA,EAAS,MAAM,CAAC,EAAE,KAAK,EAAI,EAAA,KAAA,EAAO,IAAI,CAAA;AAAA,GACxC;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,cAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAA,EAAM,eAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAA,EAAM,eAA2B,MAAM,CAAA;AAAA,IACvC,SAAS,OAAO;AAAA,MACd,IAAM,EAAA,OAAA;AAAA,MACN,WAAa,EAAA,uBAAA;AAAA,KACf,CAAA;AAAA,GACF;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAA,EAAM,eAA0B,KAAK,CAAA;AAAA,IACrC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAA,EAAM,eAA2B,MAAM,CAAA;AAAA,IACvC,SAAS,OAAO;AAAA,MACd,IAAM,EAAA,OAAA;AAAA,MACN,WAAa,EAAA,yBAAA;AAAA,KACf,CAAA;AAAA,GACF;AAAA,EACA,aAAe,EAAA;AAAA,IACb,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AACF,CAAU,EAAA;AAQH,MAAM,aAAgB,GAAA;AAAA,EAC3B,MAAQ,EAAA,CAAC,KAA0B,KAAA,CAAC,CAAC,KAAA;AAAA,EACrC,GAAK,EAAA,CAAC,MAA6B,KAAA,CAAC,CAAC,MAAA;AAAA,EACrC,MAAQ,EAAA,CAAC,KAAkB,KAAA,OAAO,KAAU,KAAA,QAAA;AAAA,EAC5C,cAAgB,EAAA,CAAC,KAA0B,KAAA,CAAC,CAAC,KAAA;AAC/C;;;;"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, computed, nextTick, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createVNode, withCtx, createElementVNode, Fragment, renderList, createBlock, createSlots, renderSlot, mergeProps, createCommentVNode, createTextVNode, toDisplayString } from 'vue';
1
+ import { defineComponent, ref, computed, nextTick, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createVNode, withCtx, Fragment, renderList, createBlock, createSlots, renderSlot, mergeProps, createCommentVNode, createElementVNode, createTextVNode, toDisplayString } from 'vue';
2
2
  import { Form } from 'ant-design-vue';
3
3
  import '../../../utils/index.mjs';
4
4
  import './config/index.mjs';
@@ -73,7 +73,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
73
73
  watch(
74
74
  () => props.value,
75
75
  (n) => {
76
- innerValue.value = n && n.length > 0 ? n : [{ key: null, value: null }];
76
+ innerValue.value = n && n.length > 0 ? n : props.keepLast ? [{ key: null, value: null }] : n;
77
77
  },
78
78
  {
79
79
  immediate: true,
@@ -99,9 +99,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
99
99
  spinning: props.loading
100
100
  }, {
101
101
  default: withCtx(() => [
102
- createElementVNode(
102
+ innerValue.value.length > 0 ? (openBlock(), createElementBlock(
103
103
  "div",
104
104
  {
105
+ key: 0,
105
106
  class: normalizeClass(unref(bem).e("list"))
106
107
  },
107
108
  [
@@ -119,7 +120,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
119
120
  "key-label": props.keyLabel,
120
121
  "value-label": props.valueLabel,
121
122
  "key-value-type-dict": keyValueTypeDict.value,
122
- "show-delete": innerValue.value.length > 1,
123
123
  "key-value-type": props.keyValueType,
124
124
  "key-type": props.keyType,
125
125
  "key-types": props.keyTypes,
@@ -128,6 +128,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
128
128
  "disabled-value": props.disabledValue,
129
129
  "disabled-key": props.disabledKey,
130
130
  "disabled-delete": props.disabledDelete,
131
+ "show-delete": props.keepLast ? idx > 0 : true,
131
132
  onDelete: ($event) => handleDelete(idx),
132
133
  onChange: handleChange
133
134
  }, createSlots({
@@ -142,7 +143,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
142
143
  ])
143
144
  };
144
145
  })
145
- ]), 1032, ["value", "onUpdate:value", "idx", "key-label", "value-label", "key-value-type-dict", "show-delete", "key-value-type", "key-type", "key-types", "value-type", "disabled", "disabled-value", "disabled-key", "disabled-delete", "onDelete"]);
146
+ ]), 1032, ["value", "onUpdate:value", "idx", "key-label", "value-label", "key-value-type-dict", "key-value-type", "key-type", "key-types", "value-type", "disabled", "disabled-value", "disabled-key", "disabled-delete", "show-delete", "onDelete"]);
146
147
  }),
147
148
  128
148
149
  /* KEYED_FRAGMENT */
@@ -150,7 +151,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
150
151
  ],
151
152
  2
152
153
  /* CLASS */
153
- ),
154
+ )) : createCommentVNode("v-if", true),
154
155
  createVNode(_component_ll_button, {
155
156
  class: normalizeClass(unref(bem).e("add")),
156
157
  loading: _ctx.loading,
@@ -1 +1 @@
1
- {"version":3,"file":"key-value.vue2.mjs","sources":["../../../../../../packages/components/key-value/src/key-value.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-spin :spinning=\"props.loading\">\n <div :class=\"bem.e('list')\">\n <key-value-item\n v-for=\"(_item, idx) in innerValue\"\n :key=\"_item\"\n :ref=\"el => (keyValueItems[idx] = el)\"\n v-model:value=\"innerValue[idx]\"\n :idx=\"idx\"\n :key-label=\"props.keyLabel\"\n :value-label=\"props.valueLabel\"\n :key-value-type-dict=\"keyValueTypeDict\"\n :show-delete=\"innerValue.length > 1\"\n :key-value-type=\"props.keyValueType\"\n :key-type=\"props.keyType\"\n :key-types=\"props.keyTypes\"\n :value-type=\"props.valueType\"\n :disabled=\"props.disabled\"\n :disabled-value=\"props.disabledValue\"\n :disabled-key=\"props.disabledKey\"\n :disabled-delete=\"props.disabledDelete\"\n @delete=\"handleDelete(idx)\"\n @change=\"handleChange\"\n >\n <template\n v-for=\"item in Object.keys($slots)\"\n :key=\"item\"\n #[item]=\"data\"\n >\n <slot :name=\"item\" v-bind=\"data || {}\" :index=\"idx\"></slot>\n </template>\n </key-value-item>\n </div>\n\n <ll-button\n :class=\"bem.e('add')\"\n :loading=\"loading\"\n :disabled=\"props.disabled || props.disabledAdd\"\n @click=\"handleAddItem\"\n >\n <div :class=\"bem.e('plus')\">\n <ll-icon\n v-if=\"!loading\"\n icon-name=\"icon-add\"\n :class=\"bem.e('icon-add')\"\n />\n {{ props.addText }}\n </div>\n </ll-button>\n </a-spin>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, nextTick } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport {\n keyValueProps,\n keyValueEmits,\n getKeyValueItem,\n type KeyValueItem\n} from './config'\nimport keyValueItem from './components/key-value-item.vue'\n\ndefineOptions({ name: 'LlKeyValue' })\n\nconst props = defineProps(keyValueProps)\nconst emits = defineEmits(keyValueEmits)\nconst bem = createNamespace('key-value')\nconst formItemContext = Form.useInjectFormItemContext()\n\nconst innerValue = ref<KeyValueItem[]>([])\n\nconst keyValueItems = ref<InstanceType<typeof keyValueItem>[]>([])\n\nconst keyValueTypeDict = computed(() => {\n const obj = {}\n props.keyTypes.map(e => {\n obj[e.value] = e.option\n })\n return obj\n})\n\nconst validate = async () => {\n await nextTick()\n return Promise.all(\n keyValueItems.value.filter(e => !!e).map(e => e.validate())\n )\n}\n\nconst resetFields = async () => {\n await nextTick()\n return Promise.all(\n keyValueItems.value.filter(e => !!e).map(e => e.resetFields())\n )\n}\n\nconst clearValidate = async () => {\n await nextTick()\n return Promise.all(\n keyValueItems.value.filter(e => !!e).map(e => e.clearValidate())\n )\n}\n\nconst handleAddItem = async () => {\n const valid = await validate()\n if (props.validate && !valid) return false\n innerValue.value.push(getKeyValueItem())\n emits('add', {\n index: innerValue.value.length - 1,\n item: innerValue.value[innerValue.value.length - 1],\n value: innerValue.value\n })\n handleChange()\n}\n\nconst handleDelete = (idx: number) => {\n innerValue.value.splice(idx, 1)\n emits('delete', idx)\n handleChange()\n}\n\nconst handleChange = () => {\n try {\n formItemContext.onFieldChange()\n emits('change', innerValue.value)\n emits('update:value', innerValue.value)\n } catch (error) {\n console.error(error)\n }\n}\n\nwatch(\n () => props.value,\n n => {\n innerValue.value = n && n.length > 0 ? n : [{ key: null, value: null }]\n },\n {\n immediate: true,\n deep: true\n }\n)\n\ndefineExpose({\n validate,\n resetFields,\n clearValidate\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAoEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,GAAA,GAAM,gBAAgB,WAAW,CAAA,CAAA;AACvC,IAAM,MAAA,eAAA,GAAkB,KAAK,wBAAyB,EAAA,CAAA;AAEtD,IAAM,MAAA,UAAA,GAAa,GAAoB,CAAA,EAAE,CAAA,CAAA;AAEzC,IAAM,MAAA,aAAA,GAAgB,GAAyC,CAAA,EAAE,CAAA,CAAA;AAEjE,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAAM;AACtC,MAAA,MAAM,MAAM,EAAC,CAAA;AACb,MAAM,KAAA,CAAA,QAAA,CAAS,IAAI,CAAK,CAAA,KAAA;AACtB,QAAI,GAAA,CAAA,CAAA,CAAE,KAAK,CAAA,GAAI,CAAE,CAAA,MAAA,CAAA;AAAA,OAClB,CAAA,CAAA;AACD,MAAO,OAAA,GAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAA,MAAM,WAAW,YAAY;AAC3B,MAAA,MAAM,QAAS,EAAA,CAAA;AACf,MAAA,OAAO,OAAQ,CAAA,GAAA;AAAA,QACb,aAAc,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,CAAA,KAAK,CAAC,CAAC,CAAC,CAAA,CAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,QAAA,EAAU,CAAA;AAAA,OAC5D,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,cAAc,YAAY;AAC9B,MAAA,MAAM,QAAS,EAAA,CAAA;AACf,MAAA,OAAO,OAAQ,CAAA,GAAA;AAAA,QACb,aAAc,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,CAAA,KAAK,CAAC,CAAC,CAAC,CAAA,CAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,WAAA,EAAa,CAAA;AAAA,OAC/D,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,gBAAgB,YAAY;AAChC,MAAA,MAAM,QAAS,EAAA,CAAA;AACf,MAAA,OAAO,OAAQ,CAAA,GAAA;AAAA,QACb,aAAc,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,CAAA,KAAK,CAAC,CAAC,CAAC,CAAA,CAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,aAAA,EAAe,CAAA;AAAA,OACjE,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,gBAAgB,YAAY;AAChC,MAAM,MAAA,KAAA,GAAQ,MAAM,QAAS,EAAA,CAAA;AAC7B,MAAI,IAAA,KAAA,CAAM,YAAY,CAAC,KAAA;AAAO,QAAO,OAAA,KAAA,CAAA;AACrC,MAAW,UAAA,CAAA,KAAA,CAAM,IAAK,CAAA,eAAA,EAAiB,CAAA,CAAA;AACvC,MAAA,KAAA,CAAM,KAAO,EAAA;AAAA,QACX,KAAA,EAAO,UAAW,CAAA,KAAA,CAAM,MAAS,GAAA,CAAA;AAAA,QACjC,MAAM,UAAW,CAAA,KAAA,CAAM,UAAW,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA;AAAA,QAClD,OAAO,UAAW,CAAA,KAAA;AAAA,OACnB,CAAA,CAAA;AACD,MAAa,YAAA,EAAA,CAAA;AAAA,KACf,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,GAAgB,KAAA;AACpC,MAAW,UAAA,CAAA,KAAA,CAAM,MAAO,CAAA,GAAA,EAAK,CAAC,CAAA,CAAA;AAC9B,MAAA,KAAA,CAAM,UAAU,GAAG,CAAA,CAAA;AACnB,MAAa,YAAA,EAAA,CAAA;AAAA,KACf,CAAA;AAEA,IAAA,MAAM,eAAe,MAAM;AACzB,MAAI,IAAA;AACF,QAAA,eAAA,CAAgB,aAAc,EAAA,CAAA;AAC9B,QAAM,KAAA,CAAA,QAAA,EAAU,WAAW,KAAK,CAAA,CAAA;AAChC,QAAM,KAAA,CAAA,cAAA,EAAgB,WAAW,KAAK,CAAA,CAAA;AAAA,eAC/B,KAAO,EAAA;AACd,QAAA,OAAA,CAAQ,MAAM,KAAK,CAAA,CAAA;AAAA,OACrB;AAAA,KACF,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAK,CAAA,KAAA;AACH,QAAA,UAAA,CAAW,KAAQ,GAAA,CAAA,IAAK,CAAE,CAAA,MAAA,GAAS,CAAI,GAAA,CAAA,GAAI,CAAC,EAAE,GAAK,EAAA,IAAA,EAAM,KAAO,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,OACxE;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,QACX,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACX,QAAA;AAAA,MACA,WAAA;AAAA,MACA,aAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"key-value.vue2.mjs","sources":["../../../../../../packages/components/key-value/src/key-value.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-spin :spinning=\"props.loading\">\n <div v-if=\"innerValue.length > 0\" :class=\"bem.e('list')\">\n <key-value-item\n v-for=\"(_item, idx) in innerValue\"\n :key=\"_item\"\n :ref=\"el => (keyValueItems[idx] = el)\"\n v-model:value=\"innerValue[idx]\"\n :idx=\"idx\"\n :key-label=\"props.keyLabel\"\n :value-label=\"props.valueLabel\"\n :key-value-type-dict=\"keyValueTypeDict\"\n :key-value-type=\"props.keyValueType\"\n :key-type=\"props.keyType\"\n :key-types=\"props.keyTypes\"\n :value-type=\"props.valueType\"\n :disabled=\"props.disabled\"\n :disabled-value=\"props.disabledValue\"\n :disabled-key=\"props.disabledKey\"\n :disabled-delete=\"props.disabledDelete\"\n :show-delete=\"props.keepLast ? idx > 0 : true\"\n @delete=\"handleDelete(idx)\"\n @change=\"handleChange\"\n >\n <template\n v-for=\"item in Object.keys($slots)\"\n :key=\"item\"\n #[item]=\"data\"\n >\n <slot :name=\"item\" v-bind=\"data || {}\" :index=\"idx\"></slot>\n </template>\n </key-value-item>\n </div>\n\n <ll-button\n :class=\"bem.e('add')\"\n :loading=\"loading\"\n :disabled=\"props.disabled || props.disabledAdd\"\n @click=\"handleAddItem\"\n >\n <div :class=\"bem.e('plus')\">\n <ll-icon\n v-if=\"!loading\"\n icon-name=\"icon-add\"\n :class=\"bem.e('icon-add')\"\n />\n {{ props.addText }}\n </div>\n </ll-button>\n </a-spin>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, nextTick } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport {\n keyValueProps,\n keyValueEmits,\n getKeyValueItem,\n type KeyValueItem\n} from './config'\nimport keyValueItem from './components/key-value-item.vue'\n\ndefineOptions({ name: 'LlKeyValue' })\n\nconst props = defineProps(keyValueProps)\nconst emits = defineEmits(keyValueEmits)\nconst bem = createNamespace('key-value')\nconst formItemContext = Form.useInjectFormItemContext()\n\nconst innerValue = ref<KeyValueItem[]>([])\n\nconst keyValueItems = ref<InstanceType<typeof keyValueItem>[]>([])\n\nconst keyValueTypeDict = computed(() => {\n const obj = {}\n props.keyTypes.map(e => {\n obj[e.value] = e.option\n })\n return obj\n})\n\nconst validate = async () => {\n await nextTick()\n return Promise.all(\n keyValueItems.value.filter(e => !!e).map(e => e.validate())\n )\n}\n\nconst resetFields = async () => {\n await nextTick()\n return Promise.all(\n keyValueItems.value.filter(e => !!e).map(e => e.resetFields())\n )\n}\n\nconst clearValidate = async () => {\n await nextTick()\n return Promise.all(\n keyValueItems.value.filter(e => !!e).map(e => e.clearValidate())\n )\n}\n\nconst handleAddItem = async () => {\n const valid = await validate()\n if (props.validate && !valid) return false\n innerValue.value.push(getKeyValueItem())\n emits('add', {\n index: innerValue.value.length - 1,\n item: innerValue.value[innerValue.value.length - 1],\n value: innerValue.value\n })\n handleChange()\n}\n\nconst handleDelete = (idx: number) => {\n innerValue.value.splice(idx, 1)\n emits('delete', idx)\n handleChange()\n}\n\nconst handleChange = () => {\n try {\n formItemContext.onFieldChange()\n emits('change', innerValue.value)\n emits('update:value', innerValue.value)\n } catch (error) {\n console.error(error)\n }\n}\n\nwatch(\n () => props.value,\n n => {\n innerValue.value =\n n && n.length > 0 ? n : props.keepLast ? [{ key: null, value: null }] : n\n },\n {\n immediate: true,\n deep: true\n }\n)\n\ndefineExpose({\n validate,\n resetFields,\n clearValidate\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -27,6 +27,6 @@ export declare const buildProp: <Type = never, Value = never, Validator = never,
27
27
  export type TestProps = Record<string, {
28
28
  [epPropKey]: true;
29
29
  } | NativePropType | EpPropInput<any, any, any, any, any>>;
30
- export declare const buildProps: <Props extends Record<string, NativePropType | EpPropInput<any, any, any, any, any> | {
30
+ export declare const buildProps: <Props extends Record<string, {
31
31
  __epPropKey: true;
32
- }>>(props: Props) => { [K in keyof Props]: IfEpProp<Props[K], Props[K], IfNativePropType<Props[K], Props[K], EpPropConvert<Props[K]>>>; };
32
+ } | NativePropType | EpPropInput<any, any, any, any, any>>>(props: Props) => { [K in keyof Props]: IfEpProp<Props[K], Props[K], IfNativePropType<Props[K], Props[K], EpPropConvert<Props[K]>>>; };