ll-plus 2.3.15 → 2.3.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/es/components/advanced-filtering/index.d.ts +26 -6
  2. package/es/components/advanced-filtering/src/advanced-filtering.d.ts +1 -0
  3. package/es/components/advanced-filtering/src/advanced-filtering.mjs +2 -1
  4. package/es/components/advanced-filtering/src/advanced-filtering.mjs.map +1 -1
  5. package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +13 -3
  6. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +13 -3
  7. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs +5 -1
  8. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs.map +1 -1
  9. package/es/components/drawer/index.d.ts +2 -1
  10. package/es/components/drawer/src/components/second-confirmation/index.d.ts +2 -0
  11. package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -0
  12. package/es/components/drawer/src/drawer.vue.d.ts +2 -1
  13. package/es/components/drawer/src/drawer.vue2.mjs +43 -9
  14. package/es/components/drawer/src/drawer.vue2.mjs.map +1 -1
  15. package/es/components/form/index.d.ts +8 -2
  16. package/es/components/form/index.mjs +1 -1
  17. package/es/components/form/src/config/form.d.ts +6 -0
  18. package/es/components/form/src/config/form.mjs +7 -1
  19. package/es/components/form/src/config/form.mjs.map +1 -1
  20. package/es/components/form/src/config/index.mjs +1 -1
  21. package/es/components/form/src/form.vue.d.ts +8 -2
  22. package/es/components/form/src/form.vue2.mjs +14 -3
  23. package/es/components/form/src/form.vue2.mjs.map +1 -1
  24. package/es/components/index.mjs +2 -2
  25. package/es/components/key-value/index.d.ts +48 -12
  26. package/es/components/key-value/src/components/key-value-item.vue.d.ts +16 -4
  27. package/es/components/key-value/src/components/key-value-item.vue2.mjs +1 -0
  28. package/es/components/key-value/src/components/key-value-item.vue2.mjs.map +1 -1
  29. package/es/components/key-value/src/key-value.vue.d.ts +48 -12
  30. package/es/components/modal/index.d.ts +2 -0
  31. package/es/components/modal/src/modal.vue.d.ts +2 -0
  32. package/es/components/modal/src/modal.vue2.mjs +41 -2
  33. package/es/components/modal/src/modal.vue2.mjs.map +1 -1
  34. package/es/components/select-group/index.d.ts +18 -4
  35. package/es/components/select-group/index.mjs +1 -1
  36. package/es/components/select-group/src/select-group.d.ts +2 -1
  37. package/es/components/select-group/src/select-group.mjs +3 -2
  38. package/es/components/select-group/src/select-group.mjs.map +1 -1
  39. package/es/components/select-group/src/select-group.vue.d.ts +18 -4
  40. package/es/components/select-group/src/select-group.vue2.mjs +58 -14
  41. package/es/components/select-group/src/select-group.vue2.mjs.map +1 -1
  42. package/es/index.mjs +2 -2
  43. package/es/utils/props/runtime.d.ts +2 -2
  44. package/index.full.js +168 -25
  45. package/index.full.min.js +22 -22
  46. package/index.full.min.js.map +1 -1
  47. package/index.full.min.mjs +19 -19
  48. package/index.full.min.mjs.map +1 -1
  49. package/index.full.mjs +167 -26
  50. package/lib/components/advanced-filtering/index.d.ts +26 -6
  51. package/lib/components/advanced-filtering/src/advanced-filtering.d.ts +1 -0
  52. package/lib/components/advanced-filtering/src/advanced-filtering.js +2 -1
  53. package/lib/components/advanced-filtering/src/advanced-filtering.js.map +1 -1
  54. package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +13 -3
  55. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +13 -3
  56. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js +5 -1
  57. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js.map +1 -1
  58. package/lib/components/drawer/index.d.ts +2 -1
  59. package/lib/components/drawer/src/components/second-confirmation/index.d.ts +2 -0
  60. package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -0
  61. package/lib/components/drawer/src/drawer.vue.d.ts +2 -1
  62. package/lib/components/drawer/src/drawer.vue2.js +42 -8
  63. package/lib/components/drawer/src/drawer.vue2.js.map +1 -1
  64. package/lib/components/form/index.d.ts +8 -2
  65. package/lib/components/form/index.js +1 -0
  66. package/lib/components/form/index.js.map +1 -1
  67. package/lib/components/form/src/config/form.d.ts +6 -0
  68. package/lib/components/form/src/config/form.js +7 -0
  69. package/lib/components/form/src/config/form.js.map +1 -1
  70. package/lib/components/form/src/config/index.js +1 -0
  71. package/lib/components/form/src/config/index.js.map +1 -1
  72. package/lib/components/form/src/form.vue.d.ts +8 -2
  73. package/lib/components/form/src/form.vue2.js +12 -1
  74. package/lib/components/form/src/form.vue2.js.map +1 -1
  75. package/lib/components/index.js +2 -0
  76. package/lib/components/index.js.map +1 -1
  77. package/lib/components/key-value/index.d.ts +48 -12
  78. package/lib/components/key-value/src/components/key-value-item.vue.d.ts +16 -4
  79. package/lib/components/key-value/src/components/key-value-item.vue2.js +1 -0
  80. package/lib/components/key-value/src/components/key-value-item.vue2.js.map +1 -1
  81. package/lib/components/key-value/src/key-value.vue.d.ts +48 -12
  82. package/lib/components/modal/index.d.ts +2 -0
  83. package/lib/components/modal/src/modal.vue.d.ts +2 -0
  84. package/lib/components/modal/src/modal.vue2.js +40 -1
  85. package/lib/components/modal/src/modal.vue2.js.map +1 -1
  86. package/lib/components/select-group/index.d.ts +18 -4
  87. package/lib/components/select-group/index.js +1 -0
  88. package/lib/components/select-group/index.js.map +1 -1
  89. package/lib/components/select-group/src/select-group.d.ts +2 -1
  90. package/lib/components/select-group/src/select-group.js +3 -1
  91. package/lib/components/select-group/src/select-group.js.map +1 -1
  92. package/lib/components/select-group/src/select-group.vue.d.ts +18 -4
  93. package/lib/components/select-group/src/select-group.vue2.js +56 -12
  94. package/lib/components/select-group/src/select-group.vue2.js.map +1 -1
  95. package/lib/index.js +2 -0
  96. package/lib/index.js.map +1 -1
  97. package/lib/utils/props/runtime.d.ts +2 -2
  98. package/package.json +1 -1
  99. package/theme-chalk/css/drawer.css +1 -1
  100. package/theme-chalk/css/index.css +1 -1
  101. package/theme-chalk/css/modal.css +1 -1
  102. package/theme-chalk/css/select-group.css +1 -1
  103. package/types/packages/components/advanced-filtering/index.d.ts +26 -6
  104. package/types/packages/components/advanced-filtering/src/advanced-filtering.d.ts +1 -0
  105. package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +13 -3
  106. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +13 -3
  107. package/types/packages/components/drawer/index.d.ts +2 -1
  108. package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +2 -0
  109. package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -0
  110. package/types/packages/components/drawer/src/drawer.vue.d.ts +2 -1
  111. package/types/packages/components/form/index.d.ts +8 -2
  112. package/types/packages/components/form/src/config/form.d.ts +6 -0
  113. package/types/packages/components/form/src/form.vue.d.ts +8 -2
  114. package/types/packages/components/key-value/index.d.ts +48 -12
  115. package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +16 -4
  116. package/types/packages/components/key-value/src/key-value.vue.d.ts +48 -12
  117. package/types/packages/components/modal/index.d.ts +2 -0
  118. package/types/packages/components/modal/src/modal.vue.d.ts +2 -0
  119. package/types/packages/components/select-group/index.d.ts +18 -4
  120. package/types/packages/components/select-group/src/select-group.d.ts +2 -1
  121. package/types/packages/components/select-group/src/select-group.vue.d.ts +18 -4
  122. package/types/packages/utils/props/runtime.d.ts +2 -2
@@ -1,5 +1,5 @@
1
- import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createVNode, withCtx, createCommentVNode, Fragment, renderList, createBlock, createTextVNode, toDisplayString, renderSlot, normalizeProps, mergeProps } from 'vue';
2
- import { selectGroupProps, selectGroupEmits } from './select-group.mjs';
1
+ import { defineComponent, ref, computed, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createVNode, withCtx, createCommentVNode, normalizeStyle, Fragment, renderList, createBlock, createTextVNode, toDisplayString, renderSlot, normalizeProps, mergeProps } from 'vue';
2
+ import { selectGroupProps, selectGroupEmits, LEFT_SELECT_MIN_WIDTH } from './select-group.mjs';
3
3
  import '../../../utils/index.mjs';
4
4
  import { createNamespace } from '../../../utils/create-namespace.mjs';
5
5
 
@@ -15,8 +15,18 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
15
15
  const typeSelectValue = ref("1");
16
16
  const value = ref("");
17
17
  const selectItem = ref();
18
+ const newList = ref([]);
18
19
  const bem = createNamespace("select-group");
19
20
  const bemContainer = createNamespace("select-group-container");
21
+ const leftSelectWidth = computed(() => {
22
+ const names = newList.value.map((item) => item.name.length);
23
+ const maxNameLength = Math.max(...names);
24
+ if (maxNameLength <= 3) {
25
+ return LEFT_SELECT_MIN_WIDTH + "px";
26
+ }
27
+ const width = LEFT_SELECT_MIN_WIDTH + (maxNameLength - 3) * 14;
28
+ return width + "px";
29
+ });
20
30
  const handleSelectChange = (_, options) => {
21
31
  const item = options.item;
22
32
  const formType = item.showFormType;
@@ -25,25 +35,56 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
25
35
  } else if (formType === "range-picker") {
26
36
  value.value = [void 0, void 0];
27
37
  } else if (formType === "select") {
28
- value.value = void 0;
38
+ value.value = -1;
29
39
  }
30
40
  selectItem.value = options.item;
31
41
  emits("onSelectChange", _, options);
32
42
  };
33
43
  const handleChange = () => {
34
- emits("change", selectItem.value?.value, value.value);
44
+ emits(
45
+ "change",
46
+ selectItem.value?.value,
47
+ value.value === -1 ? void 0 : value.value
48
+ );
35
49
  };
36
50
  watch(
37
51
  () => [props.selectValue, props.data],
38
52
  ([selectValue, newData]) => {
39
53
  if (newData && newData.length) {
40
- let firstItem = newData[0];
41
- const findItem = newData.find((item) => item.value === selectValue);
54
+ const list = newData.map((item) => {
55
+ const newItem = { ...item };
56
+ if (newItem.showFormType === "select") {
57
+ if (newItem.options?.length) {
58
+ newItem.options = [
59
+ {
60
+ label: "\u5168\u90E8",
61
+ value: -1
62
+ },
63
+ ...newItem.options
64
+ ];
65
+ } else if (newItem.list?.length) {
66
+ newItem.list = [
67
+ {
68
+ name: "\u5168\u90E8",
69
+ value: -1
70
+ },
71
+ ...newItem.list
72
+ ];
73
+ }
74
+ }
75
+ return newItem;
76
+ });
77
+ let firstItem = list[0];
78
+ const findItem = list.find((item) => item.value === selectValue);
42
79
  if (findItem) {
43
80
  firstItem = findItem;
44
81
  }
82
+ if (firstItem.showFormType === "select") {
83
+ value.value = -1;
84
+ }
45
85
  selectItem.value = firstItem;
46
86
  typeSelectValue.value = selectValue ? selectValue : firstItem.value;
87
+ newList.value = list;
47
88
  }
48
89
  },
49
90
  {
@@ -87,13 +128,14 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
87
128
  value: typeSelectValue.value,
88
129
  "onUpdate:value": _cache[0] || (_cache[0] = ($event) => typeSelectValue.value = $event),
89
130
  class: "select-group-left-select-container",
131
+ style: normalizeStyle({ minWidth: leftSelectWidth.value }),
90
132
  onChange: handleSelectChange
91
133
  }, {
92
134
  default: withCtx(() => [
93
135
  (openBlock(true), createElementBlock(
94
136
  Fragment,
95
137
  null,
96
- renderList(_ctx.data, (item) => {
138
+ renderList(newList.value, (item) => {
97
139
  return openBlock(), createBlock(_component_a_select_option, {
98
140
  key: item.name,
99
141
  value: item.value,
@@ -116,13 +158,14 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
116
158
  ]),
117
159
  _: 1
118
160
  /* STABLE */
119
- }, 8, ["value"]),
161
+ }, 8, ["value", "style"]),
120
162
  createCommentVNode(" \u53F3\u4FA7\u7EC4\u5408\u8868\u5355 "),
121
163
  createCommentVNode(" input\u8F93\u5165\u6846 "),
122
164
  !selectItem.value?.showFormType || selectItem.value?.showFormType === "input" ? (openBlock(), createBlock(_component_a_input, {
123
165
  key: 0,
124
166
  value: value.value,
125
167
  "onUpdate:value": _cache[1] || (_cache[1] = ($event) => value.value = $event),
168
+ class: normalizeClass(unref(bem).e("right-input")),
126
169
  placeholder: selectItem.value?.placeholder,
127
170
  onPressEnter: handleChange
128
171
  }, {
@@ -134,7 +177,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
134
177
  ]),
135
178
  _: 1
136
179
  /* STABLE */
137
- }, 8, ["value", "placeholder"])) : selectItem.value?.showFormType === "select" ? (openBlock(), createElementBlock(
180
+ }, 8, ["value", "class", "placeholder"])) : selectItem.value?.showFormType === "select" ? (openBlock(), createElementBlock(
138
181
  Fragment,
139
182
  { key: 1 },
140
183
  [
@@ -142,10 +185,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
142
185
  createVNode(_component_a_select, {
143
186
  value: value.value,
144
187
  "onUpdate:value": _cache[2] || (_cache[2] = ($event) => value.value = $event),
188
+ class: normalizeClass(unref(bem).e("right-select")),
145
189
  "popup-class-name": "select-group-right-select",
146
190
  options: selectItem.value?.options,
147
191
  placeholder: selectItem.value?.placeholder,
148
- style: { "width": "100%" },
149
192
  "field-names": selectItem.value?.fieldNames,
150
193
  onChange: handleChange
151
194
  }, {
@@ -175,7 +218,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
175
218
  ]),
176
219
  _: 1
177
220
  /* STABLE */
178
- }, 8, ["value", "options", "placeholder", "field-names"])
221
+ }, 8, ["value", "class", "options", "placeholder", "field-names"])
179
222
  ],
180
223
  64
181
224
  /* STABLE_FRAGMENT */
@@ -187,8 +230,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
187
230
  createVNode(_component_a_range_picker, {
188
231
  value: value.value,
189
232
  "onUpdate:value": _cache[3] || (_cache[3] = ($event) => value.value = $event),
233
+ class: normalizeClass(unref(bem).e("right-range-picker")),
190
234
  onChange: handleChange
191
- }, null, 8, ["value"])
235
+ }, null, 8, ["value", "class"])
192
236
  ],
193
237
  64
194
238
  /* STABLE_FRAGMENT */
@@ -200,12 +244,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
200
244
  createVNode(_component_a_tree_select, {
201
245
  value: value.value,
202
246
  "onUpdate:value": _cache[4] || (_cache[4] = ($event) => value.value = $event),
203
- style: { "width": "100%" },
247
+ class: normalizeClass(unref(bem).e("right-tree-select")),
204
248
  "field-names": selectItem.value.fieldNames,
205
249
  placeholder: selectItem.value?.placeholder,
206
250
  "tree-data": selectItem.value.list,
207
251
  onSelect: handleChange
208
- }, null, 8, ["value", "field-names", "placeholder", "tree-data"])
252
+ }, null, 8, ["value", "class", "field-names", "placeholder", "tree-data"])
209
253
  ],
210
254
  64
211
255
  /* STABLE_FRAGMENT */
@@ -1 +1 @@
1
- {"version":3,"file":"select-group.vue2.mjs","sources":["../../../../../packages/components/select-group/src/select-group.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bemContainer.b()\">\n <a-input-group compact>\n <!-- 左侧select -->\n <a-select\n v-model:value=\"typeSelectValue\"\n class=\"select-group-left-select-container\"\n @change=\"handleSelectChange\"\n >\n <a-select-option\n v-for=\"item in data\"\n :key=\"item.name\"\n :value=\"item.value\"\n :item=\"item\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n <!-- 右侧组合表单 -->\n <!-- input输入框 -->\n <template\n v-if=\"\n !selectItem?.showFormType || selectItem?.showFormType === 'input'\n \"\n >\n <a-input\n v-model:value=\"value\"\n :placeholder=\"selectItem?.placeholder\"\n @press-enter=\"handleChange\"\n >\n <template #suffix>\n <ll-icon :icon-name=\"`icon-search`\" @click=\"handleChange\" />\n </template>\n </a-input>\n </template>\n <!-- select下拉框 -->\n <template v-else-if=\"selectItem?.showFormType === 'select'\">\n <a-select\n v-model:value=\"value\"\n popup-class-name=\"select-group-right-select\"\n :options=\"selectItem?.options\"\n :placeholder=\"selectItem?.placeholder\"\n style=\"width: 100%\"\n :field-names=\"selectItem?.fieldNames\"\n @change=\"handleChange\"\n >\n <a-select-option\n v-for=\"item in selectItem.list\"\n :key=\"item.value\"\n :value=\"item.value\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n </template>\n <!-- 日期选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'range-picker'\">\n <a-range-picker v-model:value=\"value\" @change=\"handleChange\" />\n </template>\n <!-- 树选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'treeSelect'\">\n <a-tree-select\n v-model:value=\"value\"\n style=\"width: 100%\"\n :field-names=\"selectItem.fieldNames\"\n :placeholder=\"selectItem?.placeholder\"\n :tree-data=\"selectItem.list\"\n @select=\"handleChange\"\n ></a-tree-select>\n </template>\n <template v-else>\n <slot name=\"extra\" v-bind=\"selectItem\" />\n </template>\n </a-input-group>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\n\nimport { selectGroupProps, selectGroupEmits } from './select-group'\nimport { createNamespace } from '@ll-plus/utils'\n\nimport type { SelectGroupData } from './select-group'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlSelectGroup' })\n\n// 1.props/emits\nconst props = defineProps(selectGroupProps)\nconst emits = defineEmits(selectGroupEmits)\n\n// 3.ref/const\nconst typeSelectValue = ref('1') // selectinput组合select的值\nconst value = ref<any>('')\nconst selectItem = ref<SelectGroupData>() // 选中表单的类型\nconst bem = createNamespace('select-group')\nconst bemContainer = createNamespace('select-group-container')\n\n// 4.methods\n// 第一个select的change\nconst handleSelectChange = (_: string, options: any) => {\n const item = options.item\n const formType = item.showFormType\n // 如果\n if (!formType || formType === 'input' || formType === 'treeSelect') {\n value.value = ''\n } else if (formType === 'range-picker') {\n value.value = [undefined, undefined]\n } else if (formType === 'select') {\n value.value = undefined\n }\n selectItem.value = options.item\n emits('onSelectChange', _, options)\n}\n// 整合处理change\nconst handleChange = () => {\n emits('change', selectItem.value?.value as string, value.value)\n}\n\n// 5.watch\n// 已第一个为标准\nwatch(\n () => [props.selectValue, props.data] as [string, SelectGroupData[]],\n ([selectValue, newData]) => {\n if (newData && newData.length) {\n let firstItem = newData[0]\n const findItem = newData.find(item => item.value === selectValue)\n if (findItem) {\n firstItem = findItem\n }\n selectItem.value = firstItem!\n typeSelectValue.value = selectValue ? selectValue : firstItem.value\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n\nwatch(\n () => props.value,\n (newV: any) => {\n value.value = newV\n },\n {\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;AA2FA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAGd,IAAM,MAAA,eAAA,GAAkB,IAAI,GAAG,CAAA,CAAA;AAC/B,IAAM,MAAA,KAAA,GAAQ,IAAS,EAAE,CAAA,CAAA;AACzB,IAAA,MAAM,aAAa,GAAqB,EAAA,CAAA;AACxC,IAAM,MAAA,GAAA,GAAM,gBAAgB,cAAc,CAAA,CAAA;AAC1C,IAAM,MAAA,YAAA,GAAe,gBAAgB,wBAAwB,CAAA,CAAA;AAI7D,IAAM,MAAA,kBAAA,GAAqB,CAAC,CAAA,EAAW,OAAiB,KAAA;AACtD,MAAA,MAAM,OAAO,OAAQ,CAAA,IAAA,CAAA;AACrB,MAAA,MAAM,WAAW,IAAK,CAAA,YAAA,CAAA;AAEtB,MAAA,IAAI,CAAC,QAAA,IAAY,QAAa,KAAA,OAAA,IAAW,aAAa,YAAc,EAAA;AAClE,QAAA,KAAA,CAAM,KAAQ,GAAA,EAAA,CAAA;AAAA,OAChB,MAAA,IAAW,aAAa,cAAgB,EAAA;AACtC,QAAM,KAAA,CAAA,KAAA,GAAQ,CAAC,KAAA,CAAA,EAAW,KAAS,CAAA,CAAA,CAAA;AAAA,OACrC,MAAA,IAAW,aAAa,QAAU,EAAA;AAChC,QAAA,KAAA,CAAM,KAAQ,GAAA,KAAA,CAAA,CAAA;AAAA,OAChB;AACA,MAAA,UAAA,CAAW,QAAQ,OAAQ,CAAA,IAAA,CAAA;AAC3B,MAAM,KAAA,CAAA,gBAAA,EAAkB,GAAG,OAAO,CAAA,CAAA;AAAA,KACpC,CAAA;AAEA,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,KAAA,CAAM,QAAU,EAAA,UAAA,CAAW,KAAO,EAAA,KAAA,EAAiB,MAAM,KAAK,CAAA,CAAA;AAAA,KAChE,CAAA;AAIA,IAAA,KAAA;AAAA,MACE,MAAM,CAAC,KAAM,CAAA,WAAA,EAAa,MAAM,IAAI,CAAA;AAAA,MACpC,CAAC,CAAC,WAAa,EAAA,OAAO,CAAM,KAAA;AAC1B,QAAI,IAAA,OAAA,IAAW,QAAQ,MAAQ,EAAA;AAC7B,UAAI,IAAA,SAAA,GAAY,QAAQ,CAAC,CAAA,CAAA;AACzB,UAAA,MAAM,WAAW,OAAQ,CAAA,IAAA,CAAK,CAAQ,IAAA,KAAA,IAAA,CAAK,UAAU,WAAW,CAAA,CAAA;AAChE,UAAA,IAAI,QAAU,EAAA;AACZ,YAAY,SAAA,GAAA,QAAA,CAAA;AAAA,WACd;AACA,UAAA,UAAA,CAAW,KAAQ,GAAA,SAAA,CAAA;AACnB,UAAgB,eAAA,CAAA,KAAA,GAAQ,WAAc,GAAA,WAAA,GAAc,SAAU,CAAA,KAAA,CAAA;AAAA,SAChE;AAAA,OACF;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,QACN,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAC,IAAc,KAAA;AACb,QAAA,KAAA,CAAM,KAAQ,GAAA,IAAA,CAAA;AAAA,OAChB;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,OACb;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"select-group.vue2.mjs","sources":["../../../../../packages/components/select-group/src/select-group.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bemContainer.b()\">\n <a-input-group compact>\n <!-- 左侧select -->\n <a-select\n v-model:value=\"typeSelectValue\"\n class=\"select-group-left-select-container\"\n :style=\"{ minWidth: leftSelectWidth }\"\n @change=\"handleSelectChange\"\n >\n <a-select-option\n v-for=\"item in newList\"\n :key=\"item.name\"\n :value=\"item.value\"\n :item=\"item\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n <!-- 右侧组合表单 -->\n <!-- input输入框 -->\n <template\n v-if=\"\n !selectItem?.showFormType || selectItem?.showFormType === 'input'\n \"\n >\n <a-input\n v-model:value=\"value\"\n :class=\"bem.e('right-input')\"\n :placeholder=\"selectItem?.placeholder\"\n @press-enter=\"handleChange\"\n >\n <template #suffix>\n <ll-icon :icon-name=\"`icon-search`\" @click=\"handleChange\" />\n </template>\n </a-input>\n </template>\n <!-- select下拉框 -->\n <template v-else-if=\"selectItem?.showFormType === 'select'\">\n <a-select\n v-model:value=\"value\"\n :class=\"bem.e('right-select')\"\n popup-class-name=\"select-group-right-select\"\n :options=\"selectItem?.options\"\n :placeholder=\"selectItem?.placeholder\"\n :field-names=\"selectItem?.fieldNames\"\n @change=\"handleChange\"\n >\n <a-select-option\n v-for=\"item in selectItem.list\"\n :key=\"item.value\"\n :value=\"item.value\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n </template>\n <!-- 日期选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'range-picker'\">\n <a-range-picker\n v-model:value=\"value\"\n :class=\"bem.e('right-range-picker')\"\n @change=\"handleChange\"\n />\n </template>\n <!-- 树选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'treeSelect'\">\n <a-tree-select\n v-model:value=\"value\"\n :class=\"bem.e('right-tree-select')\"\n :field-names=\"selectItem.fieldNames\"\n :placeholder=\"selectItem?.placeholder\"\n :tree-data=\"selectItem.list\"\n @select=\"handleChange\"\n ></a-tree-select>\n </template>\n <template v-else>\n <slot name=\"extra\" v-bind=\"selectItem\" />\n </template>\n </a-input-group>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue'\n\nimport { selectGroupProps, selectGroupEmits } from './select-group'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LEFT_SELECT_MIN_WIDTH } from './select-group'\n\nimport type { SelectGroupData } from './select-group'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlSelectGroup' })\n\n// 1.props/emits\nconst props = defineProps(selectGroupProps)\nconst emits = defineEmits(selectGroupEmits)\n\n// 3.ref/const\nconst typeSelectValue = ref('1') // selectinput组合select的值\nconst value = ref<any>('') // 左边的value\nconst selectItem = ref<SelectGroupData>() // 选中表单的类型\nconst newList = ref<SelectGroupData[]>([]) // 处理后的数据,比如select的类型前面加个全部\nconst bem = createNamespace('select-group')\nconst bemContainer = createNamespace('select-group-container')\nconst leftSelectWidth = computed(() => {\n const names = newList.value.map(item => item.name.length)\n const maxNameLength = Math.max(...names)\n if (maxNameLength <= 3) {\n return LEFT_SELECT_MIN_WIDTH + 'px'\n }\n const width = LEFT_SELECT_MIN_WIDTH + (maxNameLength - 3) * 14\n return width + 'px'\n})\n\n// 4.methods\n// 第一个select的change\nconst handleSelectChange = (_: string, options: any) => {\n const item = options.item\n const formType = item.showFormType\n // 如果\n if (!formType || formType === 'input' || formType === 'treeSelect') {\n value.value = ''\n } else if (formType === 'range-picker') {\n value.value = [undefined, undefined]\n } else if (formType === 'select') {\n value.value = -1\n }\n selectItem.value = options.item\n emits('onSelectChange', _, options)\n}\n// 整合处理change\nconst handleChange = () => {\n // 过滤-1的下拉全部\n emits(\n 'change',\n selectItem.value?.value as string,\n value.value === -1 ? undefined : value.value\n )\n}\n\n// 5.watch\n// 已第一个为标准\nwatch(\n () => [props.selectValue, props.data] as [string, SelectGroupData[]],\n ([selectValue, newData]) => {\n if (newData && newData.length) {\n const list = newData.map(item => {\n const newItem = { ...item }\n if (newItem.showFormType === 'select') {\n if (newItem.options?.length) {\n newItem.options = [\n {\n label: '全部',\n value: -1\n },\n ...newItem.options!\n ]\n } else if (newItem.list?.length) {\n newItem.list = [\n {\n name: '全部',\n value: -1\n },\n ...newItem.list!\n ]\n }\n }\n return newItem\n })\n let firstItem = list[0]\n const findItem = list.find(item => item.value === selectValue)\n if (findItem) {\n firstItem = findItem\n }\n // 如果默认第一个是下拉框,选中全部\n if (firstItem.showFormType === 'select') {\n value.value = -1\n }\n selectItem.value = firstItem!\n typeSelectValue.value = selectValue ? selectValue : firstItem.value\n newList.value = list\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n\nwatch(\n () => props.value,\n (newV: any) => {\n value.value = newV\n },\n {\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":"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"}
package/es/index.mjs CHANGED
@@ -40,7 +40,7 @@ export { TypeEnum, useTabEmits, useTabProps, useTabSetup } from './components/ea
40
40
  export { LlEasyCron } from './components/easy-cron/index.mjs';
41
41
  export { emptyProps, url } from './components/empty/src/empty.mjs';
42
42
  export { LlEmpty } from './components/empty/index.mjs';
43
- export { formProps } from './components/form/src/config/form.mjs';
43
+ export { formEmits, formProps } from './components/form/src/config/form.mjs';
44
44
  export { checkedType } from './components/form/src/config/components.mjs';
45
45
  export { formComponentProps } from './components/form/src/config/form-component.mjs';
46
46
  export { LlForm, LlFormComponent } from './components/form/index.mjs';
@@ -72,7 +72,7 @@ export { LlRadio, LlRadioButton, LlRadioGroup } from './components/radio/index.m
72
72
  export { LlSegmented } from './components/segmented/index.mjs';
73
73
  export { selectOptGroupProps, selectOptionProps } from './components/select/src/select.mjs';
74
74
  export { LlSelect, LlSelectOptGroup, LlSelectOption } from './components/select/index.mjs';
75
- export { selectGroupData, selectGroupEmits, selectGroupFormType, selectGroupProps } from './components/select-group/src/select-group.mjs';
75
+ export { LEFT_SELECT_MIN_WIDTH, selectGroupData, selectGroupEmits, selectGroupFormType, selectGroupProps } from './components/select-group/src/select-group.mjs';
76
76
  export { LlSelectGroup } from './components/select-group/index.mjs';
77
77
  export { LlSpace } from './components/space/index.mjs';
78
78
  export { LlSteps } from './components/steps/index.mjs';
@@ -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]>>>; };