ll-plus 2.6.15 → 2.6.18

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 (269) hide show
  1. package/es/components/advanced-filtering/index.d.ts +672 -284
  2. package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +336 -142
  3. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +336 -142
  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/cropper/index.d.ts +19 -0
  12. package/es/components/cropper/src/cropper-image.d.ts +2 -0
  13. package/es/components/cropper/src/cropper-image.vue.d.ts +6 -0
  14. package/es/components/cropper/src/cropper-modal.vue.d.ts +13 -0
  15. package/es/components/drawer/index.d.ts +5 -5
  16. package/es/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
  17. package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
  18. package/es/components/drawer/src/drawer.vue.d.ts +5 -5
  19. package/es/components/easy-cron/index.d.ts +95 -95
  20. package/es/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
  21. package/es/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
  22. package/es/components/easy-cron/src/easy-cron.vue.d.ts +95 -95
  23. package/es/components/form/index.d.ts +339 -142
  24. package/es/components/form/src/components/form-component.vue.d.ts +4 -1
  25. package/es/components/form/src/config/form.d.ts +59 -56
  26. package/es/components/form/src/form.vue.d.ts +335 -141
  27. package/es/components/icon-picker/index.d.ts +4 -0
  28. package/es/components/icon-picker/src/components/modal.vue.d.ts +4 -0
  29. package/es/components/icon-picker/src/icon-picker.vue.d.ts +4 -0
  30. package/es/components/input/index.d.ts +35 -33
  31. package/es/components/input/src/input.vue.d.ts +35 -33
  32. package/es/components/input-number/index.d.ts +2 -0
  33. package/es/components/input-number/src/input-number.vue.d.ts +2 -0
  34. package/es/components/key-value/index.d.ts +1835 -680
  35. package/es/components/key-value/src/components/key-value-item.vue.d.ts +611 -226
  36. package/es/components/key-value/src/key-value.vue.d.ts +1835 -680
  37. package/es/components/modal/index.d.ts +1 -1
  38. package/es/components/modal/src/modal.vue.d.ts +1 -1
  39. package/es/components/new-drawer/index.d.ts +7 -7
  40. package/es/components/new-drawer/src/drawer.vue.d.ts +7 -7
  41. package/es/components/new-modal/index.d.ts +2 -2
  42. package/es/components/new-modal/src/modal.vue.d.ts +2 -2
  43. package/es/components/number-range/index.d.ts +2 -0
  44. package/es/components/number-range/src/number-range.vue.d.ts +2 -0
  45. package/es/components/rich-text-editor/index.d.ts +1 -1
  46. package/es/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
  47. package/es/components/select/index.d.ts +4 -4
  48. package/es/components/select/src/select.vue.d.ts +4 -4
  49. package/es/components/select-group/index.d.ts +2 -2
  50. package/es/components/select-group/src/select-group.d.ts +1 -1
  51. package/es/components/select-group/src/select-group.vue.d.ts +2 -2
  52. package/es/components/table/index.d.ts +6 -6
  53. package/es/components/table/src/components/main-table.vue.d.ts +2 -2
  54. package/es/components/table/src/config/table.d.ts +2 -2
  55. package/es/components/table/src/table.vue.d.ts +6 -6
  56. package/es/components/textarea/index.d.ts +5 -5
  57. package/es/components/textarea/src/textarea.vue.d.ts +5 -5
  58. package/es/components/tooltip/index.d.ts +4 -4
  59. package/es/components/tooltip/src/tooltip.d.ts +1 -1
  60. package/es/components/tooltip/src/tooltip.vue.d.ts +4 -4
  61. package/es/components/tree-search/index.d.ts +11 -2
  62. package/es/components/tree-search/src/components/header-search.vue.d.ts +6 -1
  63. package/es/components/tree-search/src/config/header-search.d.ts +1 -0
  64. package/es/components/tree-search/src/config/tree-search.d.ts +1 -0
  65. package/es/components/tree-search/src/tree-search.vue.d.ts +11 -2
  66. package/es/components/upload-drag/index.d.ts +2 -2
  67. package/es/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
  68. package/es/packages/components/cropper/src/cropper-image.mjs +8 -0
  69. package/es/packages/components/cropper/src/cropper-image.mjs.map +1 -1
  70. package/es/packages/components/cropper/src/cropper-image.vue2.mjs +43 -22
  71. package/es/packages/components/cropper/src/cropper-image.vue2.mjs.map +1 -1
  72. package/es/packages/components/cropper/src/cropper-modal.vue2.mjs +108 -72
  73. package/es/packages/components/cropper/src/cropper-modal.vue2.mjs.map +1 -1
  74. package/es/packages/components/form/src/components/form-component.vue2.mjs +19 -2
  75. package/es/packages/components/form/src/components/form-component.vue2.mjs.map +1 -1
  76. package/es/packages/components/form/src/config/form.mjs +21 -0
  77. package/es/packages/components/form/src/config/form.mjs.map +1 -1
  78. package/es/packages/components/form/src/form.vue2.mjs +56 -5
  79. package/es/packages/components/form/src/form.vue2.mjs.map +1 -1
  80. package/es/packages/components/icon-picker/src/components/modal.vue2.mjs +97 -76
  81. package/es/packages/components/icon-picker/src/components/modal.vue2.mjs.map +1 -1
  82. package/es/packages/components/input/src/input.vue2.mjs +8 -1
  83. package/es/packages/components/input/src/input.vue2.mjs.map +1 -1
  84. package/es/packages/components/input-number/src/input-number.vue2.mjs +8 -1
  85. package/es/packages/components/input-number/src/input-number.vue2.mjs.map +1 -1
  86. package/es/packages/components/key-value/src/config/key-value.mjs +2 -2
  87. package/es/packages/components/key-value/src/config/key-value.mjs.map +1 -1
  88. package/es/packages/components/tree-search/src/components/header-search.vue2.mjs +4 -3
  89. package/es/packages/components/tree-search/src/components/header-search.vue2.mjs.map +1 -1
  90. package/es/packages/components/tree-search/src/config/header-search.mjs +7 -0
  91. package/es/packages/components/tree-search/src/config/header-search.mjs.map +1 -1
  92. package/es/packages/components/tree-search/src/config/tree-search.mjs +7 -0
  93. package/es/packages/components/tree-search/src/config/tree-search.mjs.map +1 -1
  94. package/es/packages/components/tree-search/src/tree-search.vue2.mjs +2 -1
  95. package/es/packages/components/tree-search/src/tree-search.vue2.mjs.map +1 -1
  96. package/es/utils/props/runtime.d.ts +2 -2
  97. package/index.full.js +381 -178
  98. package/index.full.min.js +17 -17
  99. package/index.full.min.js.map +1 -1
  100. package/index.full.min.mjs +21 -21
  101. package/index.full.min.mjs.map +1 -1
  102. package/index.full.mjs +381 -178
  103. package/lib/components/advanced-filtering/index.d.ts +672 -284
  104. package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +336 -142
  105. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +336 -142
  106. package/lib/components/breadcrumb-card/index.d.ts +1 -1
  107. package/lib/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
  108. package/lib/components/cascader/index.d.ts +8 -8
  109. package/lib/components/cascader/src/cascader.vue.d.ts +8 -8
  110. package/lib/components/checkbox/index.d.ts +217 -217
  111. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
  112. package/lib/components/checkbox/src/checkbox.d.ts +56 -56
  113. package/lib/components/cropper/index.d.ts +19 -0
  114. package/lib/components/cropper/src/cropper-image.d.ts +2 -0
  115. package/lib/components/cropper/src/cropper-image.vue.d.ts +6 -0
  116. package/lib/components/cropper/src/cropper-modal.vue.d.ts +13 -0
  117. package/lib/components/drawer/index.d.ts +5 -5
  118. package/lib/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
  119. package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
  120. package/lib/components/drawer/src/drawer.vue.d.ts +5 -5
  121. package/lib/components/easy-cron/index.d.ts +95 -95
  122. package/lib/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
  123. package/lib/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
  124. package/lib/components/easy-cron/src/easy-cron.vue.d.ts +95 -95
  125. package/lib/components/form/index.d.ts +339 -142
  126. package/lib/components/form/src/components/form-component.vue.d.ts +4 -1
  127. package/lib/components/form/src/config/form.d.ts +59 -56
  128. package/lib/components/form/src/form.vue.d.ts +335 -141
  129. package/lib/components/icon-picker/index.d.ts +4 -0
  130. package/lib/components/icon-picker/src/components/modal.vue.d.ts +4 -0
  131. package/lib/components/icon-picker/src/icon-picker.vue.d.ts +4 -0
  132. package/lib/components/input/index.d.ts +35 -33
  133. package/lib/components/input/src/input.vue.d.ts +35 -33
  134. package/lib/components/input-number/index.d.ts +2 -0
  135. package/lib/components/input-number/src/input-number.vue.d.ts +2 -0
  136. package/lib/components/key-value/index.d.ts +1835 -680
  137. package/lib/components/key-value/src/components/key-value-item.vue.d.ts +611 -226
  138. package/lib/components/key-value/src/key-value.vue.d.ts +1835 -680
  139. package/lib/components/modal/index.d.ts +1 -1
  140. package/lib/components/modal/src/modal.vue.d.ts +1 -1
  141. package/lib/components/new-drawer/index.d.ts +7 -7
  142. package/lib/components/new-drawer/src/drawer.vue.d.ts +7 -7
  143. package/lib/components/new-modal/index.d.ts +2 -2
  144. package/lib/components/new-modal/src/modal.vue.d.ts +2 -2
  145. package/lib/components/number-range/index.d.ts +2 -0
  146. package/lib/components/number-range/src/number-range.vue.d.ts +2 -0
  147. package/lib/components/rich-text-editor/index.d.ts +1 -1
  148. package/lib/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
  149. package/lib/components/select/index.d.ts +4 -4
  150. package/lib/components/select/src/select.vue.d.ts +4 -4
  151. package/lib/components/select-group/index.d.ts +2 -2
  152. package/lib/components/select-group/src/select-group.d.ts +1 -1
  153. package/lib/components/select-group/src/select-group.vue.d.ts +2 -2
  154. package/lib/components/table/index.d.ts +6 -6
  155. package/lib/components/table/src/components/main-table.vue.d.ts +2 -2
  156. package/lib/components/table/src/config/table.d.ts +2 -2
  157. package/lib/components/table/src/table.vue.d.ts +6 -6
  158. package/lib/components/textarea/index.d.ts +5 -5
  159. package/lib/components/textarea/src/textarea.vue.d.ts +5 -5
  160. package/lib/components/tooltip/index.d.ts +4 -4
  161. package/lib/components/tooltip/src/tooltip.d.ts +1 -1
  162. package/lib/components/tooltip/src/tooltip.vue.d.ts +4 -4
  163. package/lib/components/tree-search/index.d.ts +11 -2
  164. package/lib/components/tree-search/src/components/header-search.vue.d.ts +6 -1
  165. package/lib/components/tree-search/src/config/header-search.d.ts +1 -0
  166. package/lib/components/tree-search/src/config/tree-search.d.ts +1 -0
  167. package/lib/components/tree-search/src/tree-search.vue.d.ts +11 -2
  168. package/lib/components/upload-drag/index.d.ts +2 -2
  169. package/lib/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
  170. package/lib/packages/components/cropper/src/cropper-image.js +8 -0
  171. package/lib/packages/components/cropper/src/cropper-image.js.map +1 -1
  172. package/lib/packages/components/cropper/src/cropper-image.vue2.js +42 -21
  173. package/lib/packages/components/cropper/src/cropper-image.vue2.js.map +1 -1
  174. package/lib/packages/components/cropper/src/cropper-modal.vue2.js +107 -71
  175. package/lib/packages/components/cropper/src/cropper-modal.vue2.js.map +1 -1
  176. package/lib/packages/components/form/src/components/form-component.vue2.js +18 -1
  177. package/lib/packages/components/form/src/components/form-component.vue2.js.map +1 -1
  178. package/lib/packages/components/form/src/config/form.js +21 -0
  179. package/lib/packages/components/form/src/config/form.js.map +1 -1
  180. package/lib/packages/components/form/src/form.vue2.js +54 -3
  181. package/lib/packages/components/form/src/form.vue2.js.map +1 -1
  182. package/lib/packages/components/icon-picker/src/components/modal.vue2.js +96 -75
  183. package/lib/packages/components/icon-picker/src/components/modal.vue2.js.map +1 -1
  184. package/lib/packages/components/input/src/input.vue2.js +8 -1
  185. package/lib/packages/components/input/src/input.vue2.js.map +1 -1
  186. package/lib/packages/components/input-number/src/input-number.vue2.js +8 -1
  187. package/lib/packages/components/input-number/src/input-number.vue2.js.map +1 -1
  188. package/lib/packages/components/key-value/src/config/key-value.js +2 -2
  189. package/lib/packages/components/key-value/src/config/key-value.js.map +1 -1
  190. package/lib/packages/components/tree-search/src/components/header-search.vue2.js +3 -2
  191. package/lib/packages/components/tree-search/src/components/header-search.vue2.js.map +1 -1
  192. package/lib/packages/components/tree-search/src/config/header-search.js +7 -0
  193. package/lib/packages/components/tree-search/src/config/header-search.js.map +1 -1
  194. package/lib/packages/components/tree-search/src/config/tree-search.js +7 -0
  195. package/lib/packages/components/tree-search/src/config/tree-search.js.map +1 -1
  196. package/lib/packages/components/tree-search/src/tree-search.vue2.js +2 -1
  197. package/lib/packages/components/tree-search/src/tree-search.vue2.js.map +1 -1
  198. package/lib/utils/props/runtime.d.ts +2 -2
  199. package/package.json +1 -1
  200. package/theme-chalk/css/icon-picker.css +1 -1
  201. package/theme-chalk/css/index.css +2 -2
  202. package/types/packages/components/advanced-filtering/index.d.ts +672 -284
  203. package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +336 -142
  204. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +336 -142
  205. package/types/packages/components/breadcrumb-card/index.d.ts +1 -1
  206. package/types/packages/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
  207. package/types/packages/components/cascader/index.d.ts +8 -8
  208. package/types/packages/components/cascader/src/cascader.vue.d.ts +8 -8
  209. package/types/packages/components/checkbox/index.d.ts +217 -217
  210. package/types/packages/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
  211. package/types/packages/components/checkbox/src/checkbox.d.ts +56 -56
  212. package/types/packages/components/cropper/index.d.ts +19 -0
  213. package/types/packages/components/cropper/src/cropper-image.d.ts +2 -0
  214. package/types/packages/components/cropper/src/cropper-image.vue.d.ts +6 -0
  215. package/types/packages/components/cropper/src/cropper-modal.vue.d.ts +13 -0
  216. package/types/packages/components/drawer/index.d.ts +5 -5
  217. package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
  218. package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
  219. package/types/packages/components/drawer/src/drawer.vue.d.ts +5 -5
  220. package/types/packages/components/easy-cron/index.d.ts +95 -95
  221. package/types/packages/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
  222. package/types/packages/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
  223. package/types/packages/components/easy-cron/src/easy-cron.vue.d.ts +95 -95
  224. package/types/packages/components/form/index.d.ts +339 -142
  225. package/types/packages/components/form/src/components/form-component.vue.d.ts +4 -1
  226. package/types/packages/components/form/src/config/form.d.ts +59 -56
  227. package/types/packages/components/form/src/form.vue.d.ts +335 -141
  228. package/types/packages/components/icon-picker/index.d.ts +4 -0
  229. package/types/packages/components/icon-picker/src/components/modal.vue.d.ts +4 -0
  230. package/types/packages/components/icon-picker/src/icon-picker.vue.d.ts +4 -0
  231. package/types/packages/components/input/index.d.ts +35 -33
  232. package/types/packages/components/input/src/input.vue.d.ts +35 -33
  233. package/types/packages/components/input-number/index.d.ts +2 -0
  234. package/types/packages/components/input-number/src/input-number.vue.d.ts +2 -0
  235. package/types/packages/components/key-value/index.d.ts +1835 -680
  236. package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +611 -226
  237. package/types/packages/components/key-value/src/key-value.vue.d.ts +1835 -680
  238. package/types/packages/components/modal/index.d.ts +1 -1
  239. package/types/packages/components/modal/src/modal.vue.d.ts +1 -1
  240. package/types/packages/components/new-drawer/index.d.ts +7 -7
  241. package/types/packages/components/new-drawer/src/drawer.vue.d.ts +7 -7
  242. package/types/packages/components/new-modal/index.d.ts +2 -2
  243. package/types/packages/components/new-modal/src/modal.vue.d.ts +2 -2
  244. package/types/packages/components/number-range/index.d.ts +2 -0
  245. package/types/packages/components/number-range/src/number-range.vue.d.ts +2 -0
  246. package/types/packages/components/rich-text-editor/index.d.ts +1 -1
  247. package/types/packages/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
  248. package/types/packages/components/select/index.d.ts +4 -4
  249. package/types/packages/components/select/src/select.vue.d.ts +4 -4
  250. package/types/packages/components/select-group/index.d.ts +2 -2
  251. package/types/packages/components/select-group/src/select-group.d.ts +1 -1
  252. package/types/packages/components/select-group/src/select-group.vue.d.ts +2 -2
  253. package/types/packages/components/table/index.d.ts +6 -6
  254. package/types/packages/components/table/src/components/main-table.vue.d.ts +2 -2
  255. package/types/packages/components/table/src/config/table.d.ts +2 -2
  256. package/types/packages/components/table/src/table.vue.d.ts +6 -6
  257. package/types/packages/components/textarea/index.d.ts +5 -5
  258. package/types/packages/components/textarea/src/textarea.vue.d.ts +5 -5
  259. package/types/packages/components/tooltip/index.d.ts +4 -4
  260. package/types/packages/components/tooltip/src/tooltip.d.ts +1 -1
  261. package/types/packages/components/tooltip/src/tooltip.vue.d.ts +4 -4
  262. package/types/packages/components/tree-search/index.d.ts +11 -2
  263. package/types/packages/components/tree-search/src/components/header-search.vue.d.ts +6 -1
  264. package/types/packages/components/tree-search/src/config/header-search.d.ts +1 -0
  265. package/types/packages/components/tree-search/src/config/tree-search.d.ts +1 -0
  266. package/types/packages/components/tree-search/src/tree-search.vue.d.ts +11 -2
  267. package/types/packages/components/upload-drag/index.d.ts +2 -2
  268. package/types/packages/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
  269. package/types/packages/utils/props/runtime.d.ts +2 -2
@@ -5,7 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  require('../../../../utils/index.js');
7
7
  require('../config/index.js');
8
+ require('../../../../hooks/index.js');
8
9
  var modal = require('../config/modal.js');
10
+ var index = require('../../../../hooks/use-scroll/index.js');
9
11
  var createNamespace = require('../../../../utils/create-namespace.js');
10
12
 
11
13
  "use strict";
@@ -19,10 +21,14 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
19
21
  setup(__props, { emit: __emit }) {
20
22
  const props = __props;
21
23
  const emits = __emit;
24
+ const { scrollPosition, isHasScrollBar, scrollRef } = index.useScroll();
22
25
  const searchIconValue = vue.ref("");
23
26
  const selectIcon = vue.ref("");
24
27
  const iconList = vue.ref([]);
25
28
  const bem = createNamespace.createNamespace("icon-picker-modal");
29
+ const isShowContentBottomBox = vue.computed(() => {
30
+ return isHasScrollBar.value && scrollPosition.value !== "bottom";
31
+ });
26
32
  const handleOk = () => {
27
33
  emits("changeIconValue", selectIcon.value);
28
34
  emits("update:visible");
@@ -34,13 +40,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
34
40
  (newVisible) => {
35
41
  if (newVisible)
36
42
  searchIconValue.value = "";
37
- }
38
- );
39
- vue.watch(
40
- () => props.value,
41
- (newV) => {
42
- if (newV)
43
- selectIcon.value = newV;
43
+ if (newVisible && props.value)
44
+ selectIcon.value = props.value;
44
45
  },
45
46
  {
46
47
  immediate: true
@@ -60,97 +61,117 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
60
61
  (ele) => ~ele.font_class.indexOf(searchIconValue.value)
61
62
  );
62
63
  });
64
+ vue.watchEffect(() => {
65
+ if (props.visible) {
66
+ if (isHasScrollBar && scrollRef.value && !scrollRef.value.scrollTop) {
67
+ scrollRef.value.scrollTop = 0;
68
+ scrollPosition.value = "top";
69
+ }
70
+ }
71
+ });
63
72
  return (_ctx, _cache) => {
64
73
  const _component_ll_icon = vue.resolveComponent("ll-icon");
65
74
  const _component_a_input = vue.resolveComponent("a-input");
66
75
  const _component_a_form_item = vue.resolveComponent("a-form-item");
67
76
  const _component_a_button = vue.resolveComponent("a-button");
68
77
  const _component_a_space = vue.resolveComponent("a-space");
69
- const _component_ll_modal = vue.resolveComponent("ll-modal");
70
- return vue.openBlock(), vue.createBlock(_component_ll_modal, {
78
+ const _component_ll_new_modal = vue.resolveComponent("ll-new-modal");
79
+ return vue.openBlock(), vue.createBlock(_component_ll_new_modal, {
71
80
  open: _ctx.visible,
72
81
  title: "\u56FE\u6807\u9009\u62E9",
73
82
  class: vue.normalizeClass(`icon-picker-modal-wrapper ${vue.unref(bem).b()}`),
74
83
  width: "766px",
75
84
  keyboard: false,
76
85
  "mask-closable": false,
86
+ "is-show-footer-shadow": isShowContentBottomBox.value,
87
+ "footer-shadow-placement": "outer",
77
88
  onOk: handleOk,
78
89
  onCancel: handleCancel
79
90
  }, {
80
- step: vue.withCtx(() => [
91
+ default: vue.withCtx(() => [
81
92
  vue.createElementVNode(
82
93
  "div",
83
94
  {
84
- class: vue.normalizeClass(vue.unref(bem).e("input-container"))
95
+ class: vue.normalizeClass(vue.unref(bem).e("modal-content"))
85
96
  },
86
97
  [
87
- vue.createVNode(_component_a_form_item, { name: "h" }, {
88
- default: vue.withCtx(() => [
89
- vue.createVNode(_component_a_input, {
90
- value: searchIconValue.value,
91
- "onUpdate:value": _cache[0] || (_cache[0] = ($event) => searchIconValue.value = $event),
92
- class: vue.normalizeClass(vue.unref(bem).e("input")),
93
- "allow-clear": "",
94
- placeholder: "\u641C\u7D22..."
98
+ vue.createElementVNode(
99
+ "div",
100
+ {
101
+ class: vue.normalizeClass(vue.unref(bem).e("input-container"))
102
+ },
103
+ [
104
+ vue.createVNode(_component_a_form_item, { name: "h" }, {
105
+ default: vue.withCtx(() => [
106
+ vue.createVNode(_component_a_input, {
107
+ value: searchIconValue.value,
108
+ "onUpdate:value": _cache[0] || (_cache[0] = ($event) => searchIconValue.value = $event),
109
+ class: vue.normalizeClass(vue.unref(bem).e("input")),
110
+ "allow-clear": "",
111
+ placeholder: "\u641C\u7D22..."
112
+ }, {
113
+ prefix: vue.withCtx(() => [
114
+ vue.createVNode(_component_ll_icon, { "icon-name": "icon-search" })
115
+ ]),
116
+ _: 1
117
+ /* STABLE */
118
+ }, 8, ["value", "class"])
119
+ ]),
120
+ _: 1
121
+ /* STABLE */
122
+ })
123
+ ],
124
+ 2
125
+ /* CLASS */
126
+ ),
127
+ vue.createElementVNode(
128
+ "div",
129
+ {
130
+ ref_key: "scrollRef",
131
+ ref: scrollRef,
132
+ class: vue.normalizeClass(vue.unref(bem).e("list"))
133
+ },
134
+ [
135
+ vue.createVNode(_component_a_space, {
136
+ size: [16, 16],
137
+ wrap: "",
138
+ class: vue.normalizeClass(vue.unref(bem).e("space"))
95
139
  }, {
96
- prefix: vue.withCtx(() => [
97
- vue.createVNode(_component_ll_icon, { "icon-name": "icon-search" })
140
+ default: vue.withCtx(() => [
141
+ (vue.openBlock(true), vue.createElementBlock(
142
+ vue.Fragment,
143
+ null,
144
+ vue.renderList(iconList.value, (item) => {
145
+ return vue.openBlock(), vue.createBlock(_component_a_button, {
146
+ key: item.icon_id,
147
+ type: "default",
148
+ class: vue.normalizeClass([
149
+ vue.unref(bem).e("button"),
150
+ selectIcon.value === item.font_class ? vue.unref(bem).is("active") : ""
151
+ ]),
152
+ onClick: ($event) => handleSelectIcon(item)
153
+ }, {
154
+ icon: vue.withCtx(() => [
155
+ vue.createVNode(_component_ll_icon, {
156
+ "icon-name": "icon-" + item.font_class,
157
+ style: { "font-size": "28px" }
158
+ }, null, 8, ["icon-name"])
159
+ ]),
160
+ _: 2
161
+ /* DYNAMIC */
162
+ }, 1032, ["class", "onClick"]);
163
+ }),
164
+ 128
165
+ /* KEYED_FRAGMENT */
166
+ ))
98
167
  ]),
99
168
  _: 1
100
169
  /* STABLE */
101
- }, 8, ["value", "class"])
102
- ]),
103
- _: 1
104
- /* STABLE */
105
- })
106
- ],
107
- 2
108
- /* CLASS */
109
- )
110
- ]),
111
- default: vue.withCtx(() => [
112
- vue.createElementVNode(
113
- "div",
114
- {
115
- class: vue.normalizeClass(vue.unref(bem).e("list"))
116
- },
117
- [
118
- vue.createVNode(_component_a_space, {
119
- size: [16, 16],
120
- wrap: "",
121
- class: vue.normalizeClass(vue.unref(bem).e("space"))
122
- }, {
123
- default: vue.withCtx(() => [
124
- (vue.openBlock(true), vue.createElementBlock(
125
- vue.Fragment,
126
- null,
127
- vue.renderList(iconList.value, (item) => {
128
- return vue.openBlock(), vue.createBlock(_component_a_button, {
129
- key: item.icon_id,
130
- type: "default",
131
- class: vue.normalizeClass([
132
- vue.unref(bem).e("button"),
133
- selectIcon.value === item.font_class ? vue.unref(bem).is("active") : ""
134
- ]),
135
- onClick: ($event) => handleSelectIcon(item)
136
- }, {
137
- icon: vue.withCtx(() => [
138
- vue.createVNode(_component_ll_icon, {
139
- "icon-name": "icon-" + item.font_class,
140
- style: { "font-size": "28px" }
141
- }, null, 8, ["icon-name"])
142
- ]),
143
- _: 2
144
- /* DYNAMIC */
145
- }, 1032, ["class", "onClick"]);
146
- }),
147
- 128
148
- /* KEYED_FRAGMENT */
149
- ))
150
- ]),
151
- _: 1
152
- /* STABLE */
153
- }, 8, ["class"])
170
+ }, 8, ["class"])
171
+ ],
172
+ 2
173
+ /* CLASS */
174
+ )
154
175
  ],
155
176
  2
156
177
  /* CLASS */
@@ -158,7 +179,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
158
179
  ]),
159
180
  _: 1
160
181
  /* STABLE */
161
- }, 8, ["open", "class"]);
182
+ }, 8, ["open", "class", "is-show-footer-shadow"]);
162
183
  };
163
184
  }
164
185
  });
@@ -1 +1 @@
1
- {"version":3,"file":"modal.vue2.js","sources":["../../../../../../../packages/components/icon-picker/src/components/modal.vue"],"sourcesContent":["<template>\n <ll-modal\n :open=\"visible\"\n :title=\"'图标选择'\"\n :class=\"`icon-picker-modal-wrapper ${bem.b()}`\"\n width=\"766px\"\n :keyboard=\"false\"\n :mask-closable=\"false\"\n @ok=\"handleOk\"\n @cancel=\"handleCancel\"\n >\n <template #step>\n <div :class=\"bem.e('input-container')\">\n <a-form-item name=\"h\">\n <a-input\n v-model:value=\"searchIconValue\"\n :class=\"bem.e('input')\"\n allow-clear\n placeholder=\"搜索...\"\n >\n <template #prefix>\n <ll-icon icon-name=\"icon-search\" />\n </template>\n </a-input>\n </a-form-item>\n </div>\n </template>\n <div :class=\"bem.e('list')\">\n <a-space :size=\"[16, 16]\" wrap :class=\"bem.e('space')\">\n <a-button\n v-for=\"item in iconList\"\n :key=\"item.icon_id\"\n type=\"default\"\n :class=\"[\n bem.e('button'),\n selectIcon === item.font_class ? bem.is('active') : ''\n ]\"\n @click=\"handleSelectIcon(item)\"\n >\n <template #icon>\n <ll-icon\n :icon-name=\"'icon-' + item.font_class\"\n style=\"font-size: 28px\"\n />\n </template>\n </a-button>\n </a-space>\n </div>\n </ll-modal>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { iconPickerModalProps, iconPickerModalEmits } from '../config'\n\nimport type { IconPickerItem } from '../config'\n\ndefineOptions({\n name: 'LlIconPickerModal'\n})\n\nconst props = defineProps(iconPickerModalProps)\nconst emits = defineEmits(iconPickerModalEmits)\n\nconst searchIconValue = ref('')\nconst selectIcon = ref('')\nconst iconList = ref<IconPickerItem[]>([])\nconst bem = createNamespace('icon-picker-modal')\n\nconst handleOk = () => {\n emits('changeIconValue', selectIcon.value)\n emits('update:visible')\n}\nconst handleCancel = () => emits('update:visible')\nconst handleSelectIcon = (icon: IconPickerItem) =>\n (selectIcon.value = icon?.font_class as string)\n\n// 监听选择的icon\nwatch(\n () => props.visible,\n newVisible => {\n if (newVisible) searchIconValue.value = ''\n }\n)\nwatch(\n () => props.value,\n newV => {\n if (newV) selectIcon.value = newV\n },\n {\n immediate: true\n }\n)\nwatch(\n () => props.data,\n newData => {\n iconList.value = [...newData]\n },\n {\n immediate: true\n }\n)\nwatch(searchIconValue, () => {\n iconList.value = props.data.filter(\n ele => ~ele.font_class!.indexOf(searchIconValue.value)\n )\n})\n</script>\n"],"names":["ref","createNamespace","watch"],"mappings":";;;;;;;;;;;;;;;;;;;AA8DA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAM,MAAA,eAAA,GAAkBA,QAAI,EAAE,CAAA,CAAA;AAC9B,IAAM,MAAA,UAAA,GAAaA,QAAI,EAAE,CAAA,CAAA;AACzB,IAAM,MAAA,QAAA,GAAWA,OAAsB,CAAA,EAAE,CAAA,CAAA;AACzC,IAAM,MAAA,GAAA,GAAMC,gCAAgB,mBAAmB,CAAA,CAAA;AAE/C,IAAA,MAAM,WAAW,MAAM;AACrB,MAAM,KAAA,CAAA,iBAAA,EAAmB,WAAW,KAAK,CAAA,CAAA;AACzC,MAAA,KAAA,CAAM,gBAAgB,CAAA,CAAA;AAAA,KACxB,CAAA;AACA,IAAM,MAAA,YAAA,GAAe,MAAM,KAAA,CAAM,gBAAgB,CAAA,CAAA;AACjD,IAAA,MAAM,gBAAmB,GAAA,CAAC,IACvB,KAAA,UAAA,CAAW,QAAQ,IAAM,EAAA,UAAA,CAAA;AAG5B,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,OAAA;AAAA,MACZ,CAAc,UAAA,KAAA;AACZ,QAAI,IAAA,UAAA;AAAY,UAAA,eAAA,CAAgB,KAAQ,GAAA,EAAA,CAAA;AAAA,OAC1C;AAAA,KACF,CAAA;AACA,IAAAA,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAQ,IAAA,KAAA;AACN,QAAI,IAAA,IAAA;AAAM,UAAA,UAAA,CAAW,KAAQ,GAAA,IAAA,CAAA;AAAA,OAC/B;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;AACA,IAAAA,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,CAAW,OAAA,KAAA;AACT,QAAS,QAAA,CAAA,KAAA,GAAQ,CAAC,GAAG,OAAO,CAAA,CAAA;AAAA,OAC9B;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;AACA,IAAAA,SAAA,CAAM,iBAAiB,MAAM;AAC3B,MAAS,QAAA,CAAA,KAAA,GAAQ,MAAM,IAAK,CAAA,MAAA;AAAA,QAC1B,SAAO,CAAC,GAAA,CAAI,UAAY,CAAA,OAAA,CAAQ,gBAAgB,KAAK,CAAA;AAAA,OACvD,CAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"modal.vue2.js","sources":["../../../../../../../packages/components/icon-picker/src/components/modal.vue"],"sourcesContent":["<template>\n <ll-new-modal\n :open=\"visible\"\n :title=\"'图标选择'\"\n :class=\"`icon-picker-modal-wrapper ${bem.b()}`\"\n width=\"766px\"\n :keyboard=\"false\"\n :mask-closable=\"false\"\n :is-show-footer-shadow=\"isShowContentBottomBox\"\n footer-shadow-placement=\"outer\"\n @ok=\"handleOk\"\n @cancel=\"handleCancel\"\n >\n <div :class=\"bem.e('modal-content')\">\n <div :class=\"bem.e('input-container')\">\n <a-form-item name=\"h\">\n <a-input\n v-model:value=\"searchIconValue\"\n :class=\"bem.e('input')\"\n allow-clear\n placeholder=\"搜索...\"\n >\n <template #prefix>\n <ll-icon icon-name=\"icon-search\" />\n </template>\n </a-input>\n </a-form-item>\n </div>\n <div ref=\"scrollRef\" :class=\"bem.e('list')\">\n <a-space :size=\"[16, 16]\" wrap :class=\"bem.e('space')\">\n <a-button\n v-for=\"item in iconList\"\n :key=\"item.icon_id\"\n type=\"default\"\n :class=\"[\n bem.e('button'),\n selectIcon === item.font_class ? bem.is('active') : ''\n ]\"\n @click=\"handleSelectIcon(item)\"\n >\n <template #icon>\n <ll-icon\n :icon-name=\"'icon-' + item.font_class\"\n style=\"font-size: 28px\"\n />\n </template>\n </a-button>\n </a-space>\n </div>\n </div>\n </ll-new-modal>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, ref, watch, watchEffect } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { iconPickerModalProps, iconPickerModalEmits } from '../config'\n\nimport type { IconPickerItem } from '../config'\nimport { useScroll } from '@ll-plus/hooks'\n\ndefineOptions({\n name: 'LlIconPickerModal'\n})\n\nconst props = defineProps(iconPickerModalProps)\nconst emits = defineEmits(iconPickerModalEmits)\n\nconst { scrollPosition, isHasScrollBar, scrollRef } = useScroll()\n\nconst searchIconValue = ref('')\nconst selectIcon = ref('')\nconst iconList = ref<IconPickerItem[]>([])\nconst bem = createNamespace('icon-picker-modal')\n\n// 是否显示内容区域底部的阴影div\nconst isShowContentBottomBox = computed(() => {\n return isHasScrollBar.value && scrollPosition.value !== 'bottom'\n})\n\nconst handleOk = () => {\n emits('changeIconValue', selectIcon.value)\n emits('update:visible')\n}\nconst handleCancel = () => emits('update:visible')\nconst handleSelectIcon = (icon: IconPickerItem) =>\n (selectIcon.value = icon?.font_class as string)\n\nwatch(\n () => props.visible,\n newVisible => {\n // 清空查询值\n if (newVisible) searchIconValue.value = ''\n\n if (newVisible && props.value) selectIcon.value = props.value\n },\n {\n immediate: true\n }\n)\nwatch(\n () => props.data,\n newData => {\n iconList.value = [...newData]\n },\n {\n immediate: true\n }\n)\nwatch(searchIconValue, () => {\n iconList.value = props.data.filter(\n ele => ~ele.font_class!.indexOf(searchIconValue.value)\n )\n})\n\n// 滚动条回到顶部\nwatchEffect(() => {\n if (props.visible) {\n // 头部有步骤条回到顶部\n if (isHasScrollBar && scrollRef.value && !scrollRef.value.scrollTop) {\n scrollRef.value.scrollTop = 0\n scrollPosition.value = 'top'\n }\n }\n})\n</script>\n"],"names":["useScroll","ref","createNamespace","computed","watch","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAiEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAA,MAAM,EAAE,cAAA,EAAgB,cAAgB,EAAA,SAAA,KAAcA,eAAU,EAAA,CAAA;AAEhE,IAAM,MAAA,eAAA,GAAkBC,QAAI,EAAE,CAAA,CAAA;AAC9B,IAAM,MAAA,UAAA,GAAaA,QAAI,EAAE,CAAA,CAAA;AACzB,IAAM,MAAA,QAAA,GAAWA,OAAsB,CAAA,EAAE,CAAA,CAAA;AACzC,IAAM,MAAA,GAAA,GAAMC,gCAAgB,mBAAmB,CAAA,CAAA;AAG/C,IAAM,MAAA,sBAAA,GAAyBC,aAAS,MAAM;AAC5C,MAAO,OAAA,cAAA,CAAe,KAAS,IAAA,cAAA,CAAe,KAAU,KAAA,QAAA,CAAA;AAAA,KACzD,CAAA,CAAA;AAED,IAAA,MAAM,WAAW,MAAM;AACrB,MAAM,KAAA,CAAA,iBAAA,EAAmB,WAAW,KAAK,CAAA,CAAA;AACzC,MAAA,KAAA,CAAM,gBAAgB,CAAA,CAAA;AAAA,KACxB,CAAA;AACA,IAAM,MAAA,YAAA,GAAe,MAAM,KAAA,CAAM,gBAAgB,CAAA,CAAA;AACjD,IAAA,MAAM,gBAAmB,GAAA,CAAC,IACvB,KAAA,UAAA,CAAW,QAAQ,IAAM,EAAA,UAAA,CAAA;AAE5B,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,OAAA;AAAA,MACZ,CAAc,UAAA,KAAA;AAEZ,QAAI,IAAA,UAAA;AAAY,UAAA,eAAA,CAAgB,KAAQ,GAAA,EAAA,CAAA;AAExC,QAAA,IAAI,cAAc,KAAM,CAAA,KAAA;AAAO,UAAA,UAAA,CAAW,QAAQ,KAAM,CAAA,KAAA,CAAA;AAAA,OAC1D;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;AACA,IAAAA,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,CAAW,OAAA,KAAA;AACT,QAAS,QAAA,CAAA,KAAA,GAAQ,CAAC,GAAG,OAAO,CAAA,CAAA;AAAA,OAC9B;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;AACA,IAAAA,SAAA,CAAM,iBAAiB,MAAM;AAC3B,MAAS,QAAA,CAAA,KAAA,GAAQ,MAAM,IAAK,CAAA,MAAA;AAAA,QAC1B,SAAO,CAAC,GAAA,CAAI,UAAY,CAAA,OAAA,CAAQ,gBAAgB,KAAK,CAAA;AAAA,OACvD,CAAA;AAAA,KACD,CAAA,CAAA;AAGD,IAAAC,eAAA,CAAY,MAAM;AAChB,MAAA,IAAI,MAAM,OAAS,EAAA;AAEjB,QAAA,IAAI,kBAAkB,SAAU,CAAA,KAAA,IAAS,CAAC,SAAA,CAAU,MAAM,SAAW,EAAA;AACnE,UAAA,SAAA,CAAU,MAAM,SAAY,GAAA,CAAA,CAAA;AAC5B,UAAA,cAAA,CAAe,KAAQ,GAAA,KAAA,CAAA;AAAA,SACzB;AAAA,OACF;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -13,10 +13,11 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
13
13
  ...{ name: "LlInput" },
14
14
  __name: "input",
15
15
  props: input.inputProps,
16
- setup(__props) {
16
+ setup(__props, { expose: __expose }) {
17
17
  const bem = createNamespace.createNamespace("input");
18
18
  const props = __props;
19
19
  const innerValue = vue.ref("");
20
+ const inputRef = vue.ref();
20
21
  vue.watchEffect(() => {
21
22
  if (props.value !== innerValue.value) {
22
23
  innerValue.value = props.value;
@@ -27,9 +28,15 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
27
28
  const attrs = { ...vue.useAttrs(), ...props };
28
29
  return attrs;
29
30
  });
31
+ const focus = () => {
32
+ inputRef.value.focus();
33
+ };
34
+ __expose({ focus });
30
35
  return (_ctx, _cache) => {
31
36
  const _component_ll_icon = vue.resolveComponent("ll-icon");
32
37
  return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(componentType)), vue.mergeProps({
38
+ ref_key: "inputRef",
39
+ ref: inputRef,
33
40
  class: vue.unref(bem).b()
34
41
  }, computedAttrs.value), vue.createSlots({
35
42
  _: 2
@@ -1 +1 @@
1
- {"version":3,"file":"input.vue2.js","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <component :is=\"componentType\" :class=\"bem.b()\" v-bind=\"computedAttrs\">\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-name=\"prefix-icon\" />\n </template>\n <template v-if=\"suffixIcon\" #suffix>\n <ll-icon :icon-name=\"suffixIcon\" class-name=\"suffix-icon\" />\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, useAttrs, watchEffect } 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\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</script>\n"],"names":["createNamespace","ref","watchEffect","Input","computed","useAttrs"],"mappings":";;;;;;;;;;;;;;;;AAsBA,IAAM,MAAA,GAAA,GAAMA,gCAAgB,OAAO,CAAA,CAAA;AAEnC,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAM,MAAA,UAAA,GAAaC,QAAgB,EAAE,CAAA,CAAA;AAErC,IAAAC,eAAA,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,GAAAC,kBAAA,CAAM,QAAW,GAAAA,kBAAA,CAAA;AAE5D,IAAM,MAAA,aAAA,GAAgBC,aAAS,MAAM;AACnC,MAAA,MAAM,QAAQ,EAAE,GAAGC,YAAS,EAAA,EAAG,GAAG,KAAM,EAAA,CAAA;AAExC,MAAO,OAAA,KAAA,CAAA;AAAA,KACR,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"input.vue2.js","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <component\n :is=\"componentType\"\n ref=\"inputRef\"\n :class=\"bem.b()\"\n v-bind=\"computedAttrs\"\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-name=\"prefix-icon\" />\n </template>\n <template v-if=\"suffixIcon\" #suffix>\n <ll-icon :icon-name=\"suffixIcon\" class-name=\"suffix-icon\" />\n </template>\n </component>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, useAttrs, watchEffect } 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\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\ndefineExpose({ focus })\n</script>\n"],"names":["createNamespace","ref","watchEffect","Input","computed","useAttrs"],"mappings":";;;;;;;;;;;;;;;;AA2BA,IAAM,MAAA,GAAA,GAAMA,gCAAgB,OAAO,CAAA,CAAA;AAEnC,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAM,MAAA,UAAA,GAAaC,QAAgB,EAAE,CAAA,CAAA;AAErC,IAAA,MAAM,WAAWA,OAAI,EAAA,CAAA;AAErB,IAAAC,eAAA,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,GAAAC,kBAAA,CAAM,QAAW,GAAAA,kBAAA,CAAA;AAE5D,IAAM,MAAA,aAAA,GAAgBC,aAAS,MAAM;AACnC,MAAA,MAAM,QAAQ,EAAE,GAAGC,YAAS,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;AAEA,IAAa,QAAA,CAAA,EAAE,OAAO,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -21,12 +21,13 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
21
21
  __name: "input-number",
22
22
  props: inputNumber.inputNumberProps,
23
23
  emits: inputNumber.inputNumberEmits,
24
- setup(__props, { emit: __emit }) {
24
+ setup(__props, { expose: __expose, emit: __emit }) {
25
25
  const props = __props;
26
26
  const emit = __emit;
27
27
  const bem = createNamespace.createNamespace("input-number");
28
28
  const attrs = vue.useAttrs();
29
29
  const innerValue = vue.ref("");
30
+ const inputRef = vue.ref();
30
31
  const integerCongfig = vue.computed(() => {
31
32
  let obj = {};
32
33
  if (props.integer) {
@@ -64,6 +65,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
64
65
  emit("update:value", value);
65
66
  emit("change", value);
66
67
  }
68
+ const focus = () => {
69
+ inputRef.value.focus();
70
+ };
71
+ __expose({ focus });
67
72
  return (_ctx, _cache) => {
68
73
  return vue.openBlock(), vue.createElementBlock(
69
74
  "div",
@@ -79,6 +84,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
79
84
  },
80
85
  [
81
86
  vue.createVNode(vue.unref(antDesignVue.InputNumber), vue.mergeProps({
87
+ ref_key: "inputRef",
88
+ ref: inputRef,
82
89
  value: innerValue.value,
83
90
  "onUpdate:value": _cache[0] || (_cache[0] = ($event) => innerValue.value = $event)
84
91
  }, getBindValue.value, { onChange }), vue.createSlots({
@@ -1 +1 @@
1
- {"version":3,"file":"input-number.vue2.js","sources":["../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div v-if=\"!detailed\" :class=\"bem.e('container')\">\n <InputNumber\n v-model:value=\"innerValue\"\n v-bind=\"getBindValue\"\n @change=\"onChange\"\n >\n <template v-for=\"item in Object.keys($slots)\" #[item]=\"data\">\n <slot :name=\"item\" v-bind=\"data || {}\"></slot>\n </template>\n <template v-if=\"getBindValue.unit\" #addonAfter>\n <div :class=\"bem.e('unit')\">\n {{ getBindValue.unit }}\n </div>\n </template>\n </InputNumber>\n </div>\n\n <p\n v-if=\"detailed\"\n :class=\"bem.e('detailed')\"\n :title=\"thousands ? thousandsFormat(innerValue) : innerValue\"\n >\n <span v-if=\"$attrs.addonBefore\">{{ $attrs.addonBefore }}</span>\n {{ thousands ? thousandsFormat(innerValue) : innerValue }}\n <span v-if=\"$attrs.addonAfter\">{{ $attrs.addonAfter }}</span>\n </p>\n <p\n v-if=\"isAmountChinese && getChineseName\"\n :class=\"bem.e('amount-chinese-name')\"\n >\n {{ getChineseName }}\n </p>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref, watch, useAttrs } from 'vue'\nimport { InputNumber } from 'ant-design-vue'\nimport { isNil } from 'lodash-es'\nimport {\n getAmountChinese,\n thousandsFormat,\n createNamespace\n} from '@ll-plus/utils'\nimport { inputNumberProps, inputNumberEmits } from './input-number'\nimport { integerDict, type Integer } from './config'\nimport type { InputNumberProps } from 'ant-design-vue'\ndefineOptions({ name: 'LlInputNumber' })\nconst props = defineProps(inputNumberProps)\nconst emit = defineEmits(inputNumberEmits)\nconst bem = createNamespace('input-number')\nconst attrs = useAttrs()\nconst innerValue = ref('')\nconst integerCongfig = computed(() => {\n let obj = {} as Integer\n if (props.integer) {\n obj = integerDict[props.integer]\n }\n return obj\n})\n\nconst getBindValue = computed(() => {\n const bindValue = {\n ...attrs,\n ...integerCongfig.value\n } as InputNumberProps & { unit: string }\n if (props.thousands) {\n bindValue.formatter = (value: string | number) => thousandsFormat(value)\n bindValue.parser = (value: string) => value.replace(/\\$\\s?|(,*)/g, '')\n }\n return bindValue\n})\n\nconst getChineseName = computed(() => {\n let str = ''\n str =\n !props.isAmountChinese || isNil(innerValue.value)\n ? ''\n : getAmountChinese(Number(innerValue.value))\n return str\n})\n\nwatch(\n () => props.value,\n val => {\n setValue(val)\n },\n { immediate: true }\n)\n\nfunction setValue(value) {\n innerValue.value = isNil(value) || isNaN(value) ? null : value\n // (!value && value !== 0) || isNaN(value) ? null : Number(value)\n}\nfunction onChange(value) {\n emit('update:value', value)\n emit('change', value)\n}\n</script>\n"],"names":["createNamespace","useAttrs","ref","computed","integerDict","thousandsFormat","isNil","getAmountChinese","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAkDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAM,MAAA,GAAA,GAAMA,gCAAgB,cAAc,CAAA,CAAA;AAC1C,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AACvB,IAAM,MAAA,UAAA,GAAaC,QAAI,EAAE,CAAA,CAAA;AACzB,IAAM,MAAA,cAAA,GAAiBC,aAAS,MAAM;AACpC,MAAA,IAAI,MAAM,EAAC,CAAA;AACX,MAAA,IAAI,MAAM,OAAS,EAAA;AACjB,QAAM,GAAA,GAAAC,yBAAA,CAAY,MAAM,OAAO,CAAA,CAAA;AAAA,OACjC;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAM,MAAA,YAAA,GAAeD,aAAS,MAAM;AAClC,MAAA,MAAM,SAAY,GAAA;AAAA,QAChB,GAAG,KAAA;AAAA,QACH,GAAG,cAAe,CAAA,KAAA;AAAA,OACpB,CAAA;AACA,MAAA,IAAI,MAAM,SAAW,EAAA;AACnB,QAAA,SAAA,CAAU,SAAY,GAAA,CAAC,KAA2B,KAAAE,sBAAA,CAAgB,KAAK,CAAA,CAAA;AACvE,QAAA,SAAA,CAAU,SAAS,CAAC,KAAA,KAAkB,KAAM,CAAA,OAAA,CAAQ,eAAe,EAAE,CAAA,CAAA;AAAA,OACvE;AACA,MAAO,OAAA,SAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAM,MAAA,cAAA,GAAiBF,aAAS,MAAM;AACpC,MAAA,IAAI,GAAM,GAAA,EAAA,CAAA;AACV,MAAA,GAAA,GACE,CAAC,KAAA,CAAM,eAAmB,IAAAG,cAAA,CAAM,UAAW,CAAA,KAAK,CAC5C,GAAA,EAAA,GACAC,uBAAiB,CAAA,MAAA,CAAO,UAAW,CAAA,KAAK,CAAC,CAAA,CAAA;AAC/C,MAAO,OAAA,GAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAO,GAAA,KAAA;AACL,QAAA,QAAA,CAAS,GAAG,CAAA,CAAA;AAAA,OACd;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,SAAS,SAAS,KAAO,EAAA;AACvB,MAAA,UAAA,CAAW,QAAQF,cAAM,CAAA,KAAK,KAAK,KAAM,CAAA,KAAK,IAAI,IAAO,GAAA,KAAA,CAAA;AAAA,KAE3D;AACA,IAAA,SAAS,SAAS,KAAO,EAAA;AACvB,MAAA,IAAA,CAAK,gBAAgB,KAAK,CAAA,CAAA;AAC1B,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,KACtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"input-number.vue2.js","sources":["../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div v-if=\"!detailed\" :class=\"bem.e('container')\">\n <InputNumber\n ref=\"inputRef\"\n v-model:value=\"innerValue\"\n v-bind=\"getBindValue\"\n @change=\"onChange\"\n >\n <template v-for=\"item in Object.keys($slots)\" #[item]=\"data\">\n <slot :name=\"item\" v-bind=\"data || {}\"></slot>\n </template>\n <template v-if=\"getBindValue.unit\" #addonAfter>\n <div :class=\"bem.e('unit')\">\n {{ getBindValue.unit }}\n </div>\n </template>\n </InputNumber>\n </div>\n\n <p\n v-if=\"detailed\"\n :class=\"bem.e('detailed')\"\n :title=\"thousands ? thousandsFormat(innerValue) : innerValue\"\n >\n <span v-if=\"$attrs.addonBefore\">{{ $attrs.addonBefore }}</span>\n {{ thousands ? thousandsFormat(innerValue) : innerValue }}\n <span v-if=\"$attrs.addonAfter\">{{ $attrs.addonAfter }}</span>\n </p>\n <p\n v-if=\"isAmountChinese && getChineseName\"\n :class=\"bem.e('amount-chinese-name')\"\n >\n {{ getChineseName }}\n </p>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref, watch, useAttrs } from 'vue'\nimport { InputNumber } from 'ant-design-vue'\nimport { isNil } from 'lodash-es'\nimport {\n getAmountChinese,\n thousandsFormat,\n createNamespace\n} from '@ll-plus/utils'\nimport { inputNumberProps, inputNumberEmits } from './input-number'\nimport { integerDict, type Integer } from './config'\nimport type { InputNumberProps } from 'ant-design-vue'\ndefineOptions({ name: 'LlInputNumber' })\nconst props = defineProps(inputNumberProps)\nconst emit = defineEmits(inputNumberEmits)\nconst bem = createNamespace('input-number')\nconst attrs = useAttrs()\nconst innerValue = ref('')\nconst inputRef = ref()\nconst integerCongfig = computed(() => {\n let obj = {} as Integer\n if (props.integer) {\n obj = integerDict[props.integer]\n }\n return obj\n})\n\nconst getBindValue = computed(() => {\n const bindValue = {\n ...attrs,\n ...integerCongfig.value\n } as InputNumberProps & { unit: string }\n if (props.thousands) {\n bindValue.formatter = (value: string | number) => thousandsFormat(value)\n bindValue.parser = (value: string) => value.replace(/\\$\\s?|(,*)/g, '')\n }\n return bindValue\n})\n\nconst getChineseName = computed(() => {\n let str = ''\n str =\n !props.isAmountChinese || isNil(innerValue.value)\n ? ''\n : getAmountChinese(Number(innerValue.value))\n return str\n})\n\nwatch(\n () => props.value,\n val => {\n setValue(val)\n },\n { immediate: true }\n)\n\nfunction setValue(value) {\n innerValue.value = isNil(value) || isNaN(value) ? null : value\n // (!value && value !== 0) || isNaN(value) ? null : Number(value)\n}\nfunction onChange(value) {\n emit('update:value', value)\n emit('change', value)\n}\n\nconst focus = () => {\n inputRef.value.focus()\n}\n\ndefineExpose({ focus })\n</script>\n"],"names":["createNamespace","useAttrs","ref","computed","integerDict","thousandsFormat","isNil","getAmountChinese","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAmDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAM,MAAA,GAAA,GAAMA,gCAAgB,cAAc,CAAA,CAAA;AAC1C,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AACvB,IAAM,MAAA,UAAA,GAAaC,QAAI,EAAE,CAAA,CAAA;AACzB,IAAA,MAAM,WAAWA,OAAI,EAAA,CAAA;AACrB,IAAM,MAAA,cAAA,GAAiBC,aAAS,MAAM;AACpC,MAAA,IAAI,MAAM,EAAC,CAAA;AACX,MAAA,IAAI,MAAM,OAAS,EAAA;AACjB,QAAM,GAAA,GAAAC,yBAAA,CAAY,MAAM,OAAO,CAAA,CAAA;AAAA,OACjC;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAM,MAAA,YAAA,GAAeD,aAAS,MAAM;AAClC,MAAA,MAAM,SAAY,GAAA;AAAA,QAChB,GAAG,KAAA;AAAA,QACH,GAAG,cAAe,CAAA,KAAA;AAAA,OACpB,CAAA;AACA,MAAA,IAAI,MAAM,SAAW,EAAA;AACnB,QAAA,SAAA,CAAU,SAAY,GAAA,CAAC,KAA2B,KAAAE,sBAAA,CAAgB,KAAK,CAAA,CAAA;AACvE,QAAA,SAAA,CAAU,SAAS,CAAC,KAAA,KAAkB,KAAM,CAAA,OAAA,CAAQ,eAAe,EAAE,CAAA,CAAA;AAAA,OACvE;AACA,MAAO,OAAA,SAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAM,MAAA,cAAA,GAAiBF,aAAS,MAAM;AACpC,MAAA,IAAI,GAAM,GAAA,EAAA,CAAA;AACV,MAAA,GAAA,GACE,CAAC,KAAA,CAAM,eAAmB,IAAAG,cAAA,CAAM,UAAW,CAAA,KAAK,CAC5C,GAAA,EAAA,GACAC,uBAAiB,CAAA,MAAA,CAAO,UAAW,CAAA,KAAK,CAAC,CAAA,CAAA;AAC/C,MAAO,OAAA,GAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAO,GAAA,KAAA;AACL,QAAA,QAAA,CAAS,GAAG,CAAA,CAAA;AAAA,OACd;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,SAAS,SAAS,KAAO,EAAA;AACvB,MAAA,UAAA,CAAW,QAAQF,cAAM,CAAA,KAAK,KAAK,KAAM,CAAA,KAAK,IAAI,IAAO,GAAA,KAAA,CAAA;AAAA,KAE3D;AACA,IAAA,SAAS,SAAS,KAAO,EAAA;AACvB,MAAA,IAAA,CAAK,gBAAgB,KAAK,CAAA,CAAA;AAC1B,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,KACtB;AAEA,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,QAAA,CAAS,MAAM,KAAM,EAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAa,QAAA,CAAA,EAAE,OAAO,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -41,7 +41,7 @@ const keyValueProps = runtime.buildProps({
41
41
  type: runtime.definePropType(Object),
42
42
  default: () => ({
43
43
  type: "input",
44
- placeholder: "\u8BF7\u8F93\u5165key"
44
+ placeholder: "\u8BF7\u8F93\u5165Key"
45
45
  })
46
46
  },
47
47
  keyTypes: {
@@ -52,7 +52,7 @@ const keyValueProps = runtime.buildProps({
52
52
  type: runtime.definePropType(Object),
53
53
  default: () => ({
54
54
  type: "input",
55
- placeholder: "\u8BF7\u8F93\u5165value"
55
+ placeholder: "\u8BF7\u8F93\u5165Value"
56
56
  })
57
57
  },
58
58
  disabledValue: {
@@ -1 +1 @@
1
- {"version":3,"file":"key-value.js","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":["buildProps","definePropType"],"mappings":";;;;;;AAeO,MAAM,kBAAkB,OAAO;AAAA,EACpC,GAAK,EAAA,IAAA;AAAA,EACL,KAAO,EAAA,IAAA;AACT,CAAA,EAAA;AAEO,MAAM,gBAAgBA,kBAAW,CAAA;AAAA,EACtC,KAAO,EAAA;AAAA,IACL,IAAA,EAAMC,uBAA+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,EAAMA,uBAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAA,EAAMA,uBAA2B,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,EAAMA,uBAA0B,KAAK,CAAA;AAAA,IACrC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAA,EAAMA,uBAA2B,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,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAA,EAAMA,uBAAyB,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.js","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":["buildProps","definePropType"],"mappings":";;;;;;AAeO,MAAM,kBAAkB,OAAO;AAAA,EACpC,GAAK,EAAA,IAAA;AAAA,EACL,KAAO,EAAA,IAAA;AACT,CAAA,EAAA;AAEO,MAAM,gBAAgBA,kBAAW,CAAA;AAAA,EACtC,KAAO,EAAA;AAAA,IACL,IAAA,EAAMC,uBAA+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,EAAMA,uBAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAA,EAAMA,uBAA2B,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,EAAMA,uBAA0B,KAAK,CAAA;AAAA,IACrC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAA,EAAMA,uBAA2B,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,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAA,EAAMA,uBAAyB,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;;;;;;"}
@@ -50,7 +50,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
50
50
  /* STABLE */
51
51
  }, 8, ["value", "onChange"]),
52
52
  vue.createCommentVNode(" add "),
53
- vue.createVNode(_component_ll_button, {
53
+ _ctx.isShowAddBtn ? (vue.openBlock(), vue.createBlock(_component_ll_button, {
54
+ key: 0,
54
55
  class: vue.normalizeClass(`${vue.unref(bem).e("header-button")}`),
55
56
  onClick: handleClick
56
57
  }, {
@@ -59,7 +60,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
59
60
  ]),
60
61
  _: 1
61
62
  /* STABLE */
62
- }, 8, ["class"])
63
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
63
64
  ],
64
65
  2
65
66
  /* CLASS */
@@ -1 +1 @@
1
- {"version":3,"file":"header-search.vue2.js","sources":["../../../../../../../packages/components/tree-search/src/components/header-search.vue"],"sourcesContent":["<template>\n <div :class=\"bem.e('header')\">\n <!-- input -->\n <a-input\n :value=\"props.searchValue\"\n placeholder=\"请输入关键字\"\n @change=\"throttleInputChange\"\n >\n <template #prefix>\n <ll-icon icon-name=\"icon-search\" :class=\"bem.e('header-icon')\" />\n </template>\n </a-input>\n <!-- add -->\n <ll-button :class=\"`${bem.e('header-button')}`\" @click=\"handleClick\">\n <ll-icon icon-name=\"icon-add\" />\n </ll-button>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport _ from 'lodash'\nimport { createNamespace } from '@ll-plus/utils'\nimport {\n treeSelectHeaderSearchProps,\n treeSelectHeaderSearchEmits\n} from '../config'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlTreeSelectHeaderSearch' })\n\n// 2.props/emits\nconst props = defineProps(treeSelectHeaderSearchProps)\nconst emits = defineEmits(treeSelectHeaderSearchEmits)\n\n// 3.ref\n// const searchValue = ref('')\nconst bem = createNamespace('tree-search')\n\n// 4.methods\nconst handleInputChange = (e: any) => {\n props.onSearchInputChange && props.onSearchInputChange(e.target.value)\n}\nconst handleClick = (e: Event) => emits('click', e)\n// 搜索菜单列表节流\nconst throttleInputChange = _.throttle(handleInputChange, props.throttleTime)\n</script>\n"],"names":["createNamespace"],"mappings":";;;;;;;;;;;;;;;;;;AA+BA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAId,IAAM,MAAA,GAAA,GAAMA,gCAAgB,aAAa,CAAA,CAAA;AAGzC,IAAM,MAAA,iBAAA,GAAoB,CAAC,CAAW,KAAA;AACpC,MAAA,KAAA,CAAM,mBAAuB,IAAA,KAAA,CAAM,mBAAoB,CAAA,CAAA,CAAE,OAAO,KAAK,CAAA,CAAA;AAAA,KACvE,CAAA;AACA,IAAA,MAAM,WAAc,GAAA,CAAC,CAAa,KAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAElD,IAAA,MAAM,mBAAsB,GAAA,CAAA,CAAE,QAAS,CAAA,iBAAA,EAAmB,MAAM,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"header-search.vue2.js","sources":["../../../../../../../packages/components/tree-search/src/components/header-search.vue"],"sourcesContent":["<template>\n <div :class=\"bem.e('header')\">\n <!-- input -->\n <a-input\n :value=\"props.searchValue\"\n placeholder=\"请输入关键字\"\n @change=\"throttleInputChange\"\n >\n <template #prefix>\n <ll-icon icon-name=\"icon-search\" :class=\"bem.e('header-icon')\" />\n </template>\n </a-input>\n <!-- add -->\n <ll-button\n v-if=\"isShowAddBtn\"\n :class=\"`${bem.e('header-button')}`\"\n @click=\"handleClick\"\n >\n <ll-icon icon-name=\"icon-add\" />\n </ll-button>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport _ from 'lodash'\nimport { createNamespace } from '@ll-plus/utils'\nimport {\n treeSelectHeaderSearchProps,\n treeSelectHeaderSearchEmits\n} from '../config'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlTreeSelectHeaderSearch' })\n\n// 2.props/emits\nconst props = defineProps(treeSelectHeaderSearchProps)\nconst emits = defineEmits(treeSelectHeaderSearchEmits)\n\n// 3.ref\n// const searchValue = ref('')\nconst bem = createNamespace('tree-search')\n\n// 4.methods\nconst handleInputChange = (e: any) => {\n props.onSearchInputChange && props.onSearchInputChange(e.target.value)\n}\nconst handleClick = (e: Event) => emits('click', e)\n// 搜索菜单列表节流\nconst throttleInputChange = _.throttle(handleInputChange, props.throttleTime)\n</script>\n"],"names":["createNamespace"],"mappings":";;;;;;;;;;;;;;;;;;AAmCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAId,IAAM,MAAA,GAAA,GAAMA,gCAAgB,aAAa,CAAA,CAAA;AAGzC,IAAM,MAAA,iBAAA,GAAoB,CAAC,CAAW,KAAA;AACpC,MAAA,KAAA,CAAM,mBAAuB,IAAA,KAAA,CAAM,mBAAoB,CAAA,CAAA,CAAE,OAAO,KAAK,CAAA,CAAA;AAAA,KACvE,CAAA;AACA,IAAA,MAAM,WAAc,GAAA,CAAC,CAAa,KAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAElD,IAAA,MAAM,mBAAsB,GAAA,CAAA,CAAE,QAAS,CAAA,iBAAA,EAAmB,MAAM,YAAY,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -17,6 +17,13 @@ const treeSelectHeaderSearchProps = runtime.buildProps({
17
17
  throttleTime: {
18
18
  type: Number
19
19
  },
20
+ /**
21
+ * @description 是否显示头部add按钮
22
+ */
23
+ isShowAddBtn: {
24
+ type: Boolean,
25
+ default: true
26
+ },
20
27
  /**
21
28
  * @description input的change
22
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"header-search.js","sources":["../../../../../../../packages/components/tree-search/src/config/header-search.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n\nimport { buildProps } from '@ll-plus/utils'\n\nimport type HeaderSearch from '../components/header-search.vue'\n\nexport const treeSelectHeaderSearchProps = buildProps({\n /**\n * @description input的value\n */\n searchValue: {\n type: String\n },\n /**\n * @description 节流时间\n */\n throttleTime: {\n type: Number\n },\n /**\n * @description input的change\n */\n onSearchInputChange: {\n type: Function\n }\n} as const)\n\nexport const treeSelectHeaderSearchEmits = {\n click: (e: Event) => !!e // 点击新增按钮\n}\n\n// props\nexport type TreeSelectHeaderSearchProps = ExtractPropTypes<\n typeof treeSelectHeaderSearchProps\n>\n\n// emits\nexport type TreeSelectHeaderSearchEmits = ExtractPropTypes<\n typeof treeSelectHeaderSearchEmits\n>\n\n// instance\nexport type TreeSelectHeaderSearchInstance = InstanceType<typeof HeaderSearch>\n"],"names":["buildProps"],"mappings":";;;;;;AAMO,MAAM,8BAA8BA,kBAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIpD,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,QAAA;AAAA,GACR;AACF,CAAU,EAAA;AAEH,MAAM,2BAA8B,GAAA;AAAA,EACzC,KAAO,EAAA,CAAC,CAAa,KAAA,CAAC,CAAC,CAAA;AAAA;AACzB;;;;;"}
1
+ {"version":3,"file":"header-search.js","sources":["../../../../../../../packages/components/tree-search/src/config/header-search.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n\nimport { buildProps } from '@ll-plus/utils'\n\nimport type HeaderSearch from '../components/header-search.vue'\n\nexport const treeSelectHeaderSearchProps = buildProps({\n /**\n * @description input的value\n */\n searchValue: {\n type: String\n },\n /**\n * @description 节流时间\n */\n throttleTime: {\n type: Number\n },\n /**\n * @description 是否显示头部add按钮\n */\n isShowAddBtn: {\n type: Boolean,\n default: true\n },\n /**\n * @description input的change\n */\n onSearchInputChange: {\n type: Function\n }\n} as const)\n\nexport const treeSelectHeaderSearchEmits = {\n click: (e: Event) => !!e // 点击新增按钮\n}\n\n// props\nexport type TreeSelectHeaderSearchProps = ExtractPropTypes<\n typeof treeSelectHeaderSearchProps\n>\n\n// emits\nexport type TreeSelectHeaderSearchEmits = ExtractPropTypes<\n typeof treeSelectHeaderSearchEmits\n>\n\n// instance\nexport type TreeSelectHeaderSearchInstance = InstanceType<typeof HeaderSearch>\n"],"names":["buildProps"],"mappings":";;;;;;AAMO,MAAM,8BAA8BA,kBAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIpD,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,QAAA;AAAA,GACR;AACF,CAAU,EAAA;AAEH,MAAM,2BAA8B,GAAA;AAAA,EACzC,KAAO,EAAA,CAAC,CAAa,KAAA,CAAC,CAAC,CAAA;AAAA;AACzB;;;;;"}
@@ -34,6 +34,13 @@ const treeSearchProps = runtime.buildProps({
34
34
  type: Number,
35
35
  default: index.THROTTLE_TIME
36
36
  },
37
+ /**
38
+ * @description 是否显示头部add按钮
39
+ */
40
+ isShowAddBtn: {
41
+ type: Boolean,
42
+ default: true
43
+ },
37
44
  /**
38
45
  * @description tree的数据
39
46
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tree-search.js","sources":["../../../../../../../packages/components/tree-search/src/config/tree-search.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\nimport { THROTTLE_TIME } from '@ll-plus/constant'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type TreeSearch from '../tree-search.vue'\nimport {\n ModalProps,\n DrawerProps,\n IOperateTreeFieldNames\n} from '@ll-plus/components'\n\nexport const treeSearchOperateWayType = ['modal', 'drawer', 'none'] as const\n\nexport const treeSearchProps = buildProps({\n /**\n * @description input的value\n */\n searchValue: {\n type: String\n },\n /**\n * @description tree-operate操作栏的下拉菜单是否打开(用于如果展开的话,tree-operate不用隐藏)\n */\n operateDropdownOpen: {\n type: Boolean,\n default: false\n },\n /**\n * @description loading\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * @description 节流延时\n */\n throttleTime: {\n type: Number,\n default: THROTTLE_TIME\n },\n /**\n * @description tree的数据\n */\n treeData: {\n type: definePropType<any[]>(Array),\n default: () => []\n },\n /**\n * @description 替换 treeNode 中 title,key,children 字段为 treeData 中对应的字段\n */\n fieldNames: {\n type: definePropType<IOperateTreeFieldNames>(Object),\n default: () => ({ children: 'children', title: 'title', key: 'key' })\n },\n /**\n * @description 弹窗是否可见\n */\n open: {\n type: Boolean,\n default: false\n },\n /**\n * @description 新增和编辑显示哪种弹窗(模态框/抽屉/自定义)\n */\n operateWay: {\n type: String,\n values: treeSearchOperateWayType,\n default: 'modal'\n },\n /**\n * @description LlModal的组件配置\n */\n modalConfigProps: {\n type: definePropType<ModalProps>(Object)\n },\n /**\n * @description LlDrawer的组件配置\n */\n drawerConfigProps: {\n type: definePropType<DrawerProps>(Object)\n },\n /**\n * @description tree展开的key\n */\n expandedKeys: {\n type: definePropType<string[]>(Array)\n },\n /**\n * @description 头部搜索change\n */\n onSearchInputChange: {\n type: Function,\n default: (v: string) => !!v\n }\n} as const)\n\n// 正确\nexport const treeSearchEmits = {\n clickAdd: () => true, // 点击头部新增按钮\n cancel: () => true, // 弹窗取消按钮事件\n ok: () => true, // 弹窗确定按钮事件\n close: () => true, // 弹窗的close\n expand: (expandedKeys: string[], data: any) => expandedKeys || data, // tree的expand\n select: (selectedKeys: string[], e: Event) => selectedKeys || e // tree的select\n}\n\nexport const treeSearchEmits1 = [\n 'cancel',\n 'cancel',\n 'ok',\n 'close',\n 'expand',\n 'select'\n]\n\n// props\nexport type TreeSearchOperateWayType = typeof treeSearchOperateWayType\nexport type TreeSearchProps = ExtractPropTypes<typeof treeSearchProps>\n\n// emits\nexport type TreeSearchEmits = typeof treeSearchEmits\n\n// instance\nexport type TreeSearchInstance = InstanceType<typeof TreeSearch>\n"],"names":["buildProps","THROTTLE_TIME","definePropType"],"mappings":";;;;;;;AAWO,MAAM,wBAA2B,GAAA,CAAC,OAAS,EAAA,QAAA,EAAU,MAAM,EAAA;AAE3D,MAAM,kBAAkBA,kBAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIxC,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAAC,mBAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAA,EAAMC,uBAAsB,KAAK,CAAA;AAAA,IACjC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAMA,uBAAuC,MAAM,CAAA;AAAA,IACnD,OAAA,EAAS,OAAO,EAAE,QAAA,EAAU,YAAY,KAAO,EAAA,OAAA,EAAS,KAAK,KAAM,EAAA,CAAA;AAAA,GACrE;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,wBAAA;AAAA,IACR,OAAS,EAAA,OAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAkB,EAAA;AAAA,IAChB,IAAA,EAAMA,uBAA2B,MAAM,CAAA;AAAA,GACzC;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAmB,EAAA;AAAA,IACjB,IAAA,EAAMA,uBAA4B,MAAM,CAAA;AAAA,GAC1C;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,GACtC;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,QAAA;AAAA,IACN,OAAS,EAAA,CAAC,CAAc,KAAA,CAAC,CAAC,CAAA;AAAA,GAC5B;AACF,CAAU,EAAA;AAGH,MAAM,eAAkB,GAAA;AAAA,EAC7B,UAAU,MAAM,IAAA;AAAA;AAAA,EAChB,QAAQ,MAAM,IAAA;AAAA;AAAA,EACd,IAAI,MAAM,IAAA;AAAA;AAAA,EACV,OAAO,MAAM,IAAA;AAAA;AAAA,EACb,MAAQ,EAAA,CAAC,YAAwB,EAAA,IAAA,KAAc,YAAgB,IAAA,IAAA;AAAA;AAAA,EAC/D,MAAQ,EAAA,CAAC,YAAwB,EAAA,CAAA,KAAa,YAAgB,IAAA,CAAA;AAAA;AAChE,EAAA;AAEO,MAAM,gBAAmB,GAAA;AAAA,EAC9B,QAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AACF;;;;;;;"}
1
+ {"version":3,"file":"tree-search.js","sources":["../../../../../../../packages/components/tree-search/src/config/tree-search.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\nimport { THROTTLE_TIME } from '@ll-plus/constant'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type TreeSearch from '../tree-search.vue'\nimport {\n ModalProps,\n DrawerProps,\n IOperateTreeFieldNames\n} from '@ll-plus/components'\n\nexport const treeSearchOperateWayType = ['modal', 'drawer', 'none'] as const\n\nexport const treeSearchProps = buildProps({\n /**\n * @description input的value\n */\n searchValue: {\n type: String\n },\n /**\n * @description tree-operate操作栏的下拉菜单是否打开(用于如果展开的话,tree-operate不用隐藏)\n */\n operateDropdownOpen: {\n type: Boolean,\n default: false\n },\n /**\n * @description loading\n */\n loading: {\n type: Boolean,\n default: false\n },\n /**\n * @description 节流延时\n */\n throttleTime: {\n type: Number,\n default: THROTTLE_TIME\n },\n /**\n * @description 是否显示头部add按钮\n */\n isShowAddBtn: {\n type: Boolean,\n default: true\n },\n /**\n * @description tree的数据\n */\n treeData: {\n type: definePropType<any[]>(Array),\n default: () => []\n },\n /**\n * @description 替换 treeNode 中 title,key,children 字段为 treeData 中对应的字段\n */\n fieldNames: {\n type: definePropType<IOperateTreeFieldNames>(Object),\n default: () => ({ children: 'children', title: 'title', key: 'key' })\n },\n /**\n * @description 弹窗是否可见\n */\n open: {\n type: Boolean,\n default: false\n },\n /**\n * @description 新增和编辑显示哪种弹窗(模态框/抽屉/自定义)\n */\n operateWay: {\n type: String,\n values: treeSearchOperateWayType,\n default: 'modal'\n },\n /**\n * @description LlModal的组件配置\n */\n modalConfigProps: {\n type: definePropType<ModalProps>(Object)\n },\n /**\n * @description LlDrawer的组件配置\n */\n drawerConfigProps: {\n type: definePropType<DrawerProps>(Object)\n },\n /**\n * @description tree展开的key\n */\n expandedKeys: {\n type: definePropType<string[]>(Array)\n },\n /**\n * @description 头部搜索change\n */\n onSearchInputChange: {\n type: Function,\n default: (v: string) => !!v\n }\n} as const)\n\n// 正确\nexport const treeSearchEmits = {\n clickAdd: () => true, // 点击头部新增按钮\n cancel: () => true, // 弹窗取消按钮事件\n ok: () => true, // 弹窗确定按钮事件\n close: () => true, // 弹窗的close\n expand: (expandedKeys: string[], data: any) => expandedKeys || data, // tree的expand\n select: (selectedKeys: string[], e: Event) => selectedKeys || e // tree的select\n}\n\nexport const treeSearchEmits1 = [\n 'cancel',\n 'cancel',\n 'ok',\n 'close',\n 'expand',\n 'select'\n]\n\n// props\nexport type TreeSearchOperateWayType = typeof treeSearchOperateWayType\nexport type TreeSearchProps = ExtractPropTypes<typeof treeSearchProps>\n\n// emits\nexport type TreeSearchEmits = typeof treeSearchEmits\n\n// instance\nexport type TreeSearchInstance = InstanceType<typeof TreeSearch>\n"],"names":["buildProps","THROTTLE_TIME","definePropType"],"mappings":";;;;;;;AAWO,MAAM,wBAA2B,GAAA,CAAC,OAAS,EAAA,QAAA,EAAU,MAAM,EAAA;AAE3D,MAAM,kBAAkBA,kBAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIxC,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAAC,mBAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAA,EAAMC,uBAAsB,KAAK,CAAA;AAAA,IACjC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAMA,uBAAuC,MAAM,CAAA;AAAA,IACnD,OAAA,EAAS,OAAO,EAAE,QAAA,EAAU,YAAY,KAAO,EAAA,OAAA,EAAS,KAAK,KAAM,EAAA,CAAA;AAAA,GACrE;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,wBAAA;AAAA,IACR,OAAS,EAAA,OAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAkB,EAAA;AAAA,IAChB,IAAA,EAAMA,uBAA2B,MAAM,CAAA;AAAA,GACzC;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAmB,EAAA;AAAA,IACjB,IAAA,EAAMA,uBAA4B,MAAM,CAAA;AAAA,GAC1C;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,GACtC;AAAA;AAAA;AAAA;AAAA,EAIA,mBAAqB,EAAA;AAAA,IACnB,IAAM,EAAA,QAAA;AAAA,IACN,OAAS,EAAA,CAAC,CAAc,KAAA,CAAC,CAAC,CAAA;AAAA,GAC5B;AACF,CAAU,EAAA;AAGH,MAAM,eAAkB,GAAA;AAAA,EAC7B,UAAU,MAAM,IAAA;AAAA;AAAA,EAChB,QAAQ,MAAM,IAAA;AAAA;AAAA,EACd,IAAI,MAAM,IAAA;AAAA;AAAA,EACV,OAAO,MAAM,IAAA;AAAA;AAAA,EACb,MAAQ,EAAA,CAAC,YAAwB,EAAA,IAAA,KAAc,YAAgB,IAAA,IAAA;AAAA;AAAA,EAC/D,MAAQ,EAAA,CAAC,YAAwB,EAAA,CAAA,KAAa,YAAgB,IAAA,CAAA;AAAA;AAChE,EAAA;AAEO,MAAM,gBAAmB,GAAA;AAAA,EAC9B,QAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AACF;;;;;;;"}
@@ -85,9 +85,10 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
85
85
  vue.createVNode(headerSearch.default, {
86
86
  "throttle-time": _ctx.throttleTime,
87
87
  "search-value": _ctx.searchValue,
88
+ "is-show-add-btn": _ctx.isShowAddBtn,
88
89
  "on-search-input-change": handleSearchInputChange,
89
90
  onClick: handleClickAddBtn
90
- }, null, 8, ["throttle-time", "search-value"]),
91
+ }, null, 8, ["throttle-time", "search-value", "is-show-add-btn"]),
91
92
  vue.createCommentVNode(" \u76EE\u5F55\u6807\u9898 "),
92
93
  vue.createVNode(directoryTitle.default, {
93
94
  "is-collapse-menu": isCollapseMenu.value,
@@ -1 +1 @@
1
- {"version":3,"file":"tree-search.vue2.js","sources":["../../../../../../packages/components/tree-search/src/tree-search.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <!-- 头部搜索 -->\n <header-search\n :throttle-time=\"throttleTime\"\n :search-value=\"searchValue\"\n :on-search-input-change=\"handleSearchInputChange\"\n @click=\"handleClickAddBtn\"\n />\n <!-- 目录标题 -->\n <directory-title\n :is-collapse-menu=\"isCollapseMenu\"\n @collapse-menu=\"handleCollapseMenu\"\n />\n <!-- operate-tree -->\n <ll-operate-tree\n v-bind=\"attrs\"\n :operate-dropdown-open=\"operateDropdownOpen\"\n :loading=\"loading\"\n :field-names=\"fieldNames\"\n :tree-data=\"treeData\"\n :expanded-keys=\"newExpandedKeys\"\n @expand=\"handleTreeExpand\"\n @select=\"handleTreeSelect\"\n >\n <!-- switcher-icon-slots -->\n <template #switcherIcon=\"slots\">\n <slot name=\"switcherIcon\" v-bind=\"slots\" />\n </template>\n <!-- icon-slots -->\n <template #icon=\"slots\">\n <slot name=\"icon\" v-bind=\"slots\" />\n </template>\n <!-- title-slots -->\n <template #treeTitle=\"slots\">\n <slot name=\"treeTitle\" v-bind=\"slots\" />\n </template>\n <!-- operate-slot -->\n <template #treeOperate=\"slots\">\n <slot name=\"treeOperate\" v-bind=\"slots.data\" />\n </template>\n <!-- empty-slot -->\n <template #empty>\n <slot name=\"empty\" />\n </template>\n </ll-operate-tree>\n <!-- 操作出现的方式 -->\n <!-- 模态框 -->\n <template v-if=\"operateWay === 'modal'\">\n <ll-modal\n v-bind=\"modalConfigProps\"\n :open=\"open\"\n @ok=\"handleClickOkBtn\"\n @cancel=\"handleClickCancelBtn\"\n >\n <slot name=\"operateBoxContent\" />\n </ll-modal>\n </template>\n <!-- 抽屉 -->\n <template v-else-if=\"operateWay === 'drawer'\">\n <ll-drawer\n v-bind=\"drawerConfigProps\"\n :open=\"open\"\n @confirm=\"handleClickOkBtn\"\n @cancel=\"handleClickCancelBtn\"\n @close=\"handleClickCloseBtn\"\n >\n <slot name=\"operateBoxContent\" />\n <template #footer-left>\n <slot name=\"drawerFooterLeft\" />\n </template>\n </ll-drawer>\n </template>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, useAttrs, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { treeSearchProps, treeSearchEmits } from './config'\n\nimport HeaderSearch from './components/header-search.vue'\nimport DirectoryTitle from './components/directory-title.vue'\nimport { LlOperateTree } from '@ll-plus/components'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlTreeSearch' })\n\n// 2.props/emits\nconst props = defineProps(treeSearchProps)\nconst emits = defineEmits(treeSearchEmits)\n\n// 3.ref\n// 是否收起/展开\nconst isCollapseMenu = ref(false)\nconst newExpandedKeys = ref<string[]>([])\n// 输入框内容\n// const searchValue = ref('')\nconst bem = createNamespace('tree-search')\n\n// 4.hooks\nconst attrs = useAttrs()\n\n// 5.methods\n// 获取所有树的keys\nconst getTreeDataKeys = (children: any[]) => {\n const keys: any[] = []\n const getKeys = (children: any[]) => {\n if (children) {\n children.forEach(item => {\n keys.push(item[props.fieldNames!['key']!])\n if (item[props.fieldNames!['children']!]) {\n getKeys(item[props.fieldNames!['children']!])\n }\n })\n }\n }\n getKeys(children)\n return keys\n}\nconst handleCollapseMenu = () => {\n isCollapseMenu.value = !isCollapseMenu.value\n if (isCollapseMenu.value) {\n newExpandedKeys.value = getTreeDataKeys(props.treeData!)\n } else {\n newExpandedKeys.value = []\n }\n}\n// 输入框内容change\nconst handleSearchInputChange = (v: string) => {\n props.onSearchInputChange && props.onSearchInputChange(v)\n}\n// 点击头部add\nconst handleClickAddBtn = () => emits('clickAdd')\n// 树展开\nconst handleTreeExpand = (expandedKeys: string[], data: any) => {\n emits('expand', expandedKeys, data)\n}\n// 树节点选择\nconst handleTreeSelect = (keys: string[], e: any) => {\n emits('select', keys, e)\n}\n// 点击弹窗的ok按钮\nconst handleClickOkBtn = () => emits('ok')\n// 点击弹窗的cacel按钮\nconst handleClickCancelBtn = () => emits('cancel')\n// 点击抽屉的x\nconst handleClickCloseBtn = () => emits('close')\n\n// 6.watch\n// 如果有数据并且输入框有内容则展开\nwatch(\n () => props.expandedKeys,\n keys => {\n if (keys) {\n newExpandedKeys.value = keys\n }\n },\n {\n deep: true\n }\n)\n</script>\n"],"names":["ref","createNamespace","useAttrs","children","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAyFA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAId,IAAM,MAAA,cAAA,GAAiBA,QAAI,KAAK,CAAA,CAAA;AAChC,IAAM,MAAA,eAAA,GAAkBA,OAAc,CAAA,EAAE,CAAA,CAAA;AAGxC,IAAM,MAAA,GAAA,GAAMC,gCAAgB,aAAa,CAAA,CAAA;AAGzC,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAIvB,IAAM,MAAA,eAAA,GAAkB,CAAC,QAAoB,KAAA;AAC3C,MAAA,MAAM,OAAc,EAAC,CAAA;AACrB,MAAM,MAAA,OAAA,GAAU,CAACC,SAAoB,KAAA;AACnC,QAAA,IAAIA,SAAU,EAAA;AACZ,UAAAA,SAAAA,CAAS,QAAQ,CAAQ,IAAA,KAAA;AACvB,YAAA,IAAA,CAAK,KAAK,IAAK,CAAA,KAAA,CAAM,UAAY,CAAA,KAAK,CAAE,CAAC,CAAA,CAAA;AACzC,YAAA,IAAI,IAAK,CAAA,KAAA,CAAM,UAAY,CAAA,UAAU,CAAE,CAAG,EAAA;AACxC,cAAA,OAAA,CAAQ,IAAK,CAAA,KAAA,CAAM,UAAY,CAAA,UAAU,CAAE,CAAC,CAAA,CAAA;AAAA,aAC9C;AAAA,WACD,CAAA,CAAA;AAAA,SACH;AAAA,OACF,CAAA;AACA,MAAA,OAAA,CAAQ,QAAQ,CAAA,CAAA;AAChB,MAAO,OAAA,IAAA,CAAA;AAAA,KACT,CAAA;AACA,IAAA,MAAM,qBAAqB,MAAM;AAC/B,MAAe,cAAA,CAAA,KAAA,GAAQ,CAAC,cAAe,CAAA,KAAA,CAAA;AACvC,MAAA,IAAI,eAAe,KAAO,EAAA;AACxB,QAAgB,eAAA,CAAA,KAAA,GAAQ,eAAgB,CAAA,KAAA,CAAM,QAAS,CAAA,CAAA;AAAA,OAClD,MAAA;AACL,QAAA,eAAA,CAAgB,QAAQ,EAAC,CAAA;AAAA,OAC3B;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,uBAAA,GAA0B,CAAC,CAAc,KAAA;AAC7C,MAAM,KAAA,CAAA,mBAAA,IAAuB,KAAM,CAAA,mBAAA,CAAoB,CAAC,CAAA,CAAA;AAAA,KAC1D,CAAA;AAEA,IAAM,MAAA,iBAAA,GAAoB,MAAM,KAAA,CAAM,UAAU,CAAA,CAAA;AAEhD,IAAM,MAAA,gBAAA,GAAmB,CAAC,YAAA,EAAwB,IAAc,KAAA;AAC9D,MAAM,KAAA,CAAA,QAAA,EAAU,cAAc,IAAI,CAAA,CAAA;AAAA,KACpC,CAAA;AAEA,IAAM,MAAA,gBAAA,GAAmB,CAAC,IAAA,EAAgB,CAAW,KAAA;AACnD,MAAM,KAAA,CAAA,QAAA,EAAU,MAAM,CAAC,CAAA,CAAA;AAAA,KACzB,CAAA;AAEA,IAAM,MAAA,gBAAA,GAAmB,MAAM,KAAA,CAAM,IAAI,CAAA,CAAA;AAEzC,IAAM,MAAA,oBAAA,GAAuB,MAAM,KAAA,CAAM,QAAQ,CAAA,CAAA;AAEjD,IAAM,MAAA,mBAAA,GAAsB,MAAM,KAAA,CAAM,OAAO,CAAA,CAAA;AAI/C,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,YAAA;AAAA,MACZ,CAAQ,IAAA,KAAA;AACN,QAAA,IAAI,IAAM,EAAA;AACR,UAAA,eAAA,CAAgB,KAAQ,GAAA,IAAA,CAAA;AAAA,SAC1B;AAAA,OACF;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tree-search.vue2.js","sources":["../../../../../../packages/components/tree-search/src/tree-search.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <!-- 头部搜索 -->\n <header-search\n :throttle-time=\"throttleTime\"\n :search-value=\"searchValue\"\n :is-show-add-btn=\"isShowAddBtn\"\n :on-search-input-change=\"handleSearchInputChange\"\n @click=\"handleClickAddBtn\"\n />\n <!-- 目录标题 -->\n <directory-title\n :is-collapse-menu=\"isCollapseMenu\"\n @collapse-menu=\"handleCollapseMenu\"\n />\n <!-- operate-tree -->\n <ll-operate-tree\n v-bind=\"attrs\"\n :operate-dropdown-open=\"operateDropdownOpen\"\n :loading=\"loading\"\n :field-names=\"fieldNames\"\n :tree-data=\"treeData\"\n :expanded-keys=\"newExpandedKeys\"\n @expand=\"handleTreeExpand\"\n @select=\"handleTreeSelect\"\n >\n <!-- switcher-icon-slots -->\n <template #switcherIcon=\"slots\">\n <slot name=\"switcherIcon\" v-bind=\"slots\" />\n </template>\n <!-- icon-slots -->\n <template #icon=\"slots\">\n <slot name=\"icon\" v-bind=\"slots\" />\n </template>\n <!-- title-slots -->\n <template #treeTitle=\"slots\">\n <slot name=\"treeTitle\" v-bind=\"slots\" />\n </template>\n <!-- operate-slot -->\n <template #treeOperate=\"slots\">\n <slot name=\"treeOperate\" v-bind=\"slots.data\" />\n </template>\n <!-- empty-slot -->\n <template #empty>\n <slot name=\"empty\" />\n </template>\n </ll-operate-tree>\n <!-- 操作出现的方式 -->\n <!-- 模态框 -->\n <template v-if=\"operateWay === 'modal'\">\n <ll-modal\n v-bind=\"modalConfigProps\"\n :open=\"open\"\n @ok=\"handleClickOkBtn\"\n @cancel=\"handleClickCancelBtn\"\n >\n <slot name=\"operateBoxContent\" />\n </ll-modal>\n </template>\n <!-- 抽屉 -->\n <template v-else-if=\"operateWay === 'drawer'\">\n <ll-drawer\n v-bind=\"drawerConfigProps\"\n :open=\"open\"\n @confirm=\"handleClickOkBtn\"\n @cancel=\"handleClickCancelBtn\"\n @close=\"handleClickCloseBtn\"\n >\n <slot name=\"operateBoxContent\" />\n <template #footer-left>\n <slot name=\"drawerFooterLeft\" />\n </template>\n </ll-drawer>\n </template>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, useAttrs, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { treeSearchProps, treeSearchEmits } from './config'\n\nimport HeaderSearch from './components/header-search.vue'\nimport DirectoryTitle from './components/directory-title.vue'\nimport { LlOperateTree } from '@ll-plus/components'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlTreeSearch' })\n\n// 2.props/emits\nconst props = defineProps(treeSearchProps)\nconst emits = defineEmits(treeSearchEmits)\n\n// 3.ref\n// 是否收起/展开\nconst isCollapseMenu = ref(false)\nconst newExpandedKeys = ref<string[]>([])\n// 输入框内容\n// const searchValue = ref('')\nconst bem = createNamespace('tree-search')\n\n// 4.hooks\nconst attrs = useAttrs()\n\n// 5.methods\n// 获取所有树的keys\nconst getTreeDataKeys = (children: any[]) => {\n const keys: any[] = []\n const getKeys = (children: any[]) => {\n if (children) {\n children.forEach(item => {\n keys.push(item[props.fieldNames!['key']!])\n if (item[props.fieldNames!['children']!]) {\n getKeys(item[props.fieldNames!['children']!])\n }\n })\n }\n }\n getKeys(children)\n return keys\n}\nconst handleCollapseMenu = () => {\n isCollapseMenu.value = !isCollapseMenu.value\n if (isCollapseMenu.value) {\n newExpandedKeys.value = getTreeDataKeys(props.treeData!)\n } else {\n newExpandedKeys.value = []\n }\n}\n// 输入框内容change\nconst handleSearchInputChange = (v: string) => {\n props.onSearchInputChange && props.onSearchInputChange(v)\n}\n// 点击头部add\nconst handleClickAddBtn = () => emits('clickAdd')\n// 树展开\nconst handleTreeExpand = (expandedKeys: string[], data: any) => {\n emits('expand', expandedKeys, data)\n}\n// 树节点选择\nconst handleTreeSelect = (keys: string[], e: any) => {\n emits('select', keys, e)\n}\n// 点击弹窗的ok按钮\nconst handleClickOkBtn = () => emits('ok')\n// 点击弹窗的cacel按钮\nconst handleClickCancelBtn = () => emits('cancel')\n// 点击抽屉的x\nconst handleClickCloseBtn = () => emits('close')\n\n// 6.watch\n// 如果有数据并且输入框有内容则展开\nwatch(\n () => props.expandedKeys,\n keys => {\n if (keys) {\n newExpandedKeys.value = keys\n }\n },\n {\n deep: true\n }\n)\n</script>\n"],"names":["ref","createNamespace","useAttrs","children","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA0FA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAId,IAAM,MAAA,cAAA,GAAiBA,QAAI,KAAK,CAAA,CAAA;AAChC,IAAM,MAAA,eAAA,GAAkBA,OAAc,CAAA,EAAE,CAAA,CAAA;AAGxC,IAAM,MAAA,GAAA,GAAMC,gCAAgB,aAAa,CAAA,CAAA;AAGzC,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAIvB,IAAM,MAAA,eAAA,GAAkB,CAAC,QAAoB,KAAA;AAC3C,MAAA,MAAM,OAAc,EAAC,CAAA;AACrB,MAAM,MAAA,OAAA,GAAU,CAACC,SAAoB,KAAA;AACnC,QAAA,IAAIA,SAAU,EAAA;AACZ,UAAAA,SAAAA,CAAS,QAAQ,CAAQ,IAAA,KAAA;AACvB,YAAA,IAAA,CAAK,KAAK,IAAK,CAAA,KAAA,CAAM,UAAY,CAAA,KAAK,CAAE,CAAC,CAAA,CAAA;AACzC,YAAA,IAAI,IAAK,CAAA,KAAA,CAAM,UAAY,CAAA,UAAU,CAAE,CAAG,EAAA;AACxC,cAAA,OAAA,CAAQ,IAAK,CAAA,KAAA,CAAM,UAAY,CAAA,UAAU,CAAE,CAAC,CAAA,CAAA;AAAA,aAC9C;AAAA,WACD,CAAA,CAAA;AAAA,SACH;AAAA,OACF,CAAA;AACA,MAAA,OAAA,CAAQ,QAAQ,CAAA,CAAA;AAChB,MAAO,OAAA,IAAA,CAAA;AAAA,KACT,CAAA;AACA,IAAA,MAAM,qBAAqB,MAAM;AAC/B,MAAe,cAAA,CAAA,KAAA,GAAQ,CAAC,cAAe,CAAA,KAAA,CAAA;AACvC,MAAA,IAAI,eAAe,KAAO,EAAA;AACxB,QAAgB,eAAA,CAAA,KAAA,GAAQ,eAAgB,CAAA,KAAA,CAAM,QAAS,CAAA,CAAA;AAAA,OAClD,MAAA;AACL,QAAA,eAAA,CAAgB,QAAQ,EAAC,CAAA;AAAA,OAC3B;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,uBAAA,GAA0B,CAAC,CAAc,KAAA;AAC7C,MAAM,KAAA,CAAA,mBAAA,IAAuB,KAAM,CAAA,mBAAA,CAAoB,CAAC,CAAA,CAAA;AAAA,KAC1D,CAAA;AAEA,IAAM,MAAA,iBAAA,GAAoB,MAAM,KAAA,CAAM,UAAU,CAAA,CAAA;AAEhD,IAAM,MAAA,gBAAA,GAAmB,CAAC,YAAA,EAAwB,IAAc,KAAA;AAC9D,MAAM,KAAA,CAAA,QAAA,EAAU,cAAc,IAAI,CAAA,CAAA;AAAA,KACpC,CAAA;AAEA,IAAM,MAAA,gBAAA,GAAmB,CAAC,IAAA,EAAgB,CAAW,KAAA;AACnD,MAAM,KAAA,CAAA,QAAA,EAAU,MAAM,CAAC,CAAA,CAAA;AAAA,KACzB,CAAA;AAEA,IAAM,MAAA,gBAAA,GAAmB,MAAM,KAAA,CAAM,IAAI,CAAA,CAAA;AAEzC,IAAM,MAAA,oBAAA,GAAuB,MAAM,KAAA,CAAM,QAAQ,CAAA,CAAA;AAEjD,IAAM,MAAA,mBAAA,GAAsB,MAAM,KAAA,CAAM,OAAO,CAAA,CAAA;AAI/C,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,YAAA;AAAA,MACZ,CAAQ,IAAA,KAAA;AACN,QAAA,IAAI,IAAM,EAAA;AACR,UAAA,eAAA,CAAgB,KAAQ,GAAA,IAAA,CAAA;AAAA,SAC1B;AAAA,OACF;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -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]>>>; };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ll-plus",
3
- "version": "2.6.15",
3
+ "version": "2.6.18",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.mjs",
@@ -1 +1 @@
1
- .ll-icon-picker-modal .ll-modal__step{justify-content:flex-start}.ll-icon-picker-modal__input{width:200px}.ll-icon-picker-modal__list{min-width:696px}.ll-icon-picker-modal__space{justify-content:flex-start;padding-right:10px;margin-bottom:0!important}.ll-icon-picker-modal__button{width:62px!important;height:62px}.ll-icon-picker-modal__button.is-active{background:var(--color-primary-bg);border:1px solid var(--color-primary)}.ll-icon-picker-modal__input-container .ant-form-item{margin-bottom:0}.ll-icon-picker-modal .ant-btn.ant-btn-icon-only{display:flex;align-items:center;justify-content:center;padding:0;margin:0}
1
+ .ll-icon-picker-modal .ll-new-modal__container{margin-right:10px;overflow:hidden;height:100%}.ll-icon-picker-modal__modal-content{height:100%;overflow-y:hidden;padding-left:30px;display:flex;flex-direction:column}.ll-icon-picker-modal__input-container{margin-top:24px;padding-left:10px}.ll-icon-picker-modal__input-container .ant-form-item{margin-bottom:0}.ll-icon-picker-modal__input{width:200px}.ll-icon-picker-modal__list{min-width:696px;overflow-y:auto;margin-top:18px;flex:1}.ll-icon-picker-modal__space{justify-content:flex-start;padding:10px;padding-top:6px;margin-bottom:0!important}.ll-icon-picker-modal__button{width:62px!important;height:62px}.ll-icon-picker-modal__button.is-active{background:var(--color-primary-bg);border:1px solid var(--color-primary)}.ll-icon-picker-modal .ant-btn.ant-btn-icon-only{display:flex;align-items:center;justify-content:center;padding:0;margin:0}