jky-component-lib 0.0.129 → 0.0.130

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 (234) hide show
  1. package/dist/es/amap/style2.css +13 -2
  2. package/dist/es/amap/style3.css +2 -13
  3. package/dist/es/components.js +3 -3
  4. package/dist/es/form/Form.vue.d.ts +5 -5
  5. package/dist/es/form/Form.vue.js +0 -1
  6. package/dist/es/form/FormItem.vue.d.ts +14 -1
  7. package/dist/es/form/FormItem.vue.js +152 -304
  8. package/dist/es/form/{FormItem.vue3.js → FormItem.vue2.js} +0 -1
  9. package/dist/es/form/index.d.ts +2 -2
  10. package/dist/es/form/index.js +5 -5
  11. package/dist/es/form/items/AMapPickerItem.vue.d.ts +19 -0
  12. package/dist/es/form/items/AMapPickerItem.vue.js +104 -0
  13. package/dist/es/form/items/AMapPickerItem.vue2.js +4 -0
  14. package/dist/es/form/items/AddInputItem.vue.d.ts +13 -0
  15. package/dist/es/form/items/AddInputItem.vue.js +55 -0
  16. package/dist/es/form/items/AddInputItem.vue2.js +4 -0
  17. package/dist/es/form/items/AutocompleteItem.vue.d.ts +26 -0
  18. package/dist/es/form/items/AutocompleteItem.vue.js +68 -0
  19. package/dist/es/form/items/AutocompleteItem.vue2.js +4 -0
  20. package/dist/es/form/items/CascaderItem.vue.d.ts +26 -0
  21. package/dist/es/form/items/CascaderItem.vue.js +68 -0
  22. package/dist/es/form/items/CascaderItem.vue2.js +4 -0
  23. package/dist/es/form/items/CheckboxGroupItem.vue.d.ts +26 -0
  24. package/dist/es/form/items/CheckboxGroupItem.vue.js +84 -0
  25. package/dist/es/form/items/CheckboxGroupItem.vue2.js +4 -0
  26. package/dist/es/form/items/CodeMirrorEditorItem.vue.d.ts +13 -0
  27. package/dist/es/form/items/CodeMirrorEditorItem.vue.js +55 -0
  28. package/dist/es/form/items/CodeMirrorEditorItem.vue2.js +4 -0
  29. package/dist/es/form/items/ColorPickerItem.vue.d.ts +26 -0
  30. package/dist/es/form/items/ColorPickerItem.vue.js +67 -0
  31. package/dist/es/form/items/ColorPickerItem.vue2.js +4 -0
  32. package/dist/es/form/items/ColorPickerPanelItem.vue.d.ts +26 -0
  33. package/dist/es/form/items/ColorPickerPanelItem.vue.js +67 -0
  34. package/dist/es/form/items/ColorPickerPanelItem.vue2.js +4 -0
  35. package/dist/es/form/items/CustomItem.vue.d.ts +12 -0
  36. package/dist/es/form/items/CustomItem.vue.js +53 -0
  37. package/dist/es/form/items/CustomItem.vue2.js +4 -0
  38. package/dist/es/form/items/DatePickerItem.vue.d.ts +26 -0
  39. package/dist/es/form/items/DatePickerItem.vue.js +71 -0
  40. package/dist/es/form/items/DatePickerItem.vue2.js +4 -0
  41. package/dist/es/form/items/DividerItem.vue.d.ts +22 -0
  42. package/dist/es/form/items/DividerItem.vue.js +67 -0
  43. package/dist/es/form/items/DividerItem.vue2.js +4 -0
  44. package/dist/es/form/items/FileUploadItem.vue.d.ts +26 -0
  45. package/dist/es/form/items/FileUploadItem.vue.js +82 -0
  46. package/dist/es/form/items/FileUploadItem.vue2.js +4 -0
  47. package/dist/es/form/items/ImageUploadItem.vue.d.ts +26 -0
  48. package/dist/es/form/items/ImageUploadItem.vue.js +97 -0
  49. package/dist/es/form/items/ImageUploadItem.vue2.js +4 -0
  50. package/dist/es/form/items/InputItem.vue.d.ts +26 -0
  51. package/dist/es/form/items/InputItem.vue.js +74 -0
  52. package/dist/es/form/items/InputItem.vue2.js +4 -0
  53. package/dist/es/form/items/InputNumberItem.vue.d.ts +26 -0
  54. package/dist/es/form/items/InputNumberItem.vue.js +72 -0
  55. package/dist/es/form/items/InputNumberItem.vue2.js +4 -0
  56. package/dist/es/form/items/InputTagItem.vue.d.ts +26 -0
  57. package/dist/es/form/items/InputTagItem.vue.js +67 -0
  58. package/dist/es/form/items/InputTagItem.vue2.js +4 -0
  59. package/dist/es/form/items/LinkedSelectItem.vue.d.ts +29 -0
  60. package/dist/es/form/{LinkedSelect.vue.js → items/LinkedSelectItem.vue.js} +51 -27
  61. package/dist/es/form/items/LinkedSelectItem.vue2.js +4 -0
  62. package/dist/es/form/items/MentionItem.vue.d.ts +26 -0
  63. package/dist/es/form/items/MentionItem.vue.js +67 -0
  64. package/dist/es/form/items/MentionItem.vue2.js +4 -0
  65. package/dist/es/form/items/RadioGroupItem.vue.d.ts +26 -0
  66. package/dist/es/form/items/RadioGroupItem.vue.js +98 -0
  67. package/dist/es/form/items/RadioGroupItem.vue2.js +4 -0
  68. package/dist/es/form/items/RateItem.vue.d.ts +26 -0
  69. package/dist/es/form/items/RateItem.vue.js +67 -0
  70. package/dist/es/form/items/RateItem.vue2.js +4 -0
  71. package/dist/es/form/items/RichEditorItem.vue.d.ts +13 -0
  72. package/dist/es/form/items/RichEditorItem.vue.js +55 -0
  73. package/dist/es/form/items/RichEditorItem.vue2.js +4 -0
  74. package/dist/es/form/items/SelectItem.vue.d.ts +26 -0
  75. package/dist/es/form/items/SelectItem.vue.js +81 -0
  76. package/dist/es/form/items/SelectItem.vue2.js +4 -0
  77. package/dist/es/form/items/SelectTableItem.vue.d.ts +5995 -0
  78. package/dist/es/form/items/SelectTableItem.vue.js +297 -0
  79. package/dist/es/form/items/SelectTableItem.vue2.js +4 -0
  80. package/dist/es/form/items/SelectV2Item.vue.d.ts +26 -0
  81. package/dist/es/form/items/SelectV2Item.vue.js +69 -0
  82. package/dist/es/form/items/SelectV2Item.vue2.js +4 -0
  83. package/dist/es/form/items/SliderItem.vue.d.ts +26 -0
  84. package/dist/es/form/items/SliderItem.vue.js +67 -0
  85. package/dist/es/form/items/SliderItem.vue2.js +4 -0
  86. package/dist/es/form/items/SwitchItem.vue.d.ts +26 -0
  87. package/dist/es/form/items/SwitchItem.vue.js +67 -0
  88. package/dist/es/form/items/SwitchItem.vue2.js +4 -0
  89. package/dist/es/form/items/TextareaItem.vue.d.ts +26 -0
  90. package/dist/es/form/items/TextareaItem.vue.js +70 -0
  91. package/dist/es/form/items/TextareaItem.vue2.js +4 -0
  92. package/dist/es/form/items/TimePickerItem.vue.d.ts +26 -0
  93. package/dist/es/form/items/TimePickerItem.vue.js +71 -0
  94. package/dist/es/form/items/TimePickerItem.vue2.js +4 -0
  95. package/dist/es/form/items/TimeSelectItem.vue.d.ts +26 -0
  96. package/dist/es/form/items/TimeSelectItem.vue.js +67 -0
  97. package/dist/es/form/items/TimeSelectItem.vue2.js +4 -0
  98. package/dist/es/form/items/TransferItem.vue.d.ts +26 -0
  99. package/dist/es/form/items/TransferItem.vue.js +68 -0
  100. package/dist/es/form/items/TransferItem.vue2.js +4 -0
  101. package/dist/es/form/items/TreeSelectItem.vue.d.ts +26 -0
  102. package/dist/es/form/items/TreeSelectItem.vue.js +68 -0
  103. package/dist/es/form/items/TreeSelectItem.vue2.js +4 -0
  104. package/dist/es/index.js +2 -2
  105. package/dist/es/package.json.js +1 -1
  106. package/dist/es/page-header/PageHeader.vue.d.ts +2 -0
  107. package/dist/es/page-header/PageHeader.vue.js +32 -25
  108. package/dist/es/page-header/PopoverMenu.vue.d.ts +1 -1
  109. package/dist/es/page-table/PageTable.vue.d.ts +17 -17
  110. package/dist/es/page-table/PageTable.vue.js +2 -1
  111. package/dist/es/page-table/Toolbar.vue.js +2 -2
  112. package/dist/es/page-table-v2/PageTableV2.vue.d.ts +8 -8
  113. package/dist/lib/amap/style2.css +13 -2
  114. package/dist/lib/amap/style3.css +2 -13
  115. package/dist/lib/components.js +2 -2
  116. package/dist/lib/form/Form.vue.d.ts +5 -5
  117. package/dist/lib/form/Form.vue.js +0 -1
  118. package/dist/lib/form/FormItem.vue.d.ts +14 -1
  119. package/dist/lib/form/FormItem.vue.js +149 -301
  120. package/dist/lib/form/{FormItem.vue3.js → FormItem.vue2.js} +0 -1
  121. package/dist/lib/form/index.d.ts +2 -2
  122. package/dist/lib/form/index.js +3 -3
  123. package/dist/lib/form/items/AMapPickerItem.vue.d.ts +19 -0
  124. package/dist/lib/form/items/AMapPickerItem.vue.js +104 -0
  125. package/dist/lib/form/items/AMapPickerItem.vue2.js +4 -0
  126. package/dist/lib/form/items/AddInputItem.vue.d.ts +13 -0
  127. package/dist/lib/form/items/AddInputItem.vue.js +55 -0
  128. package/dist/lib/form/items/AddInputItem.vue2.js +4 -0
  129. package/dist/lib/form/items/AutocompleteItem.vue.d.ts +26 -0
  130. package/dist/lib/form/items/AutocompleteItem.vue.js +68 -0
  131. package/dist/lib/form/items/AutocompleteItem.vue2.js +4 -0
  132. package/dist/lib/form/items/CascaderItem.vue.d.ts +26 -0
  133. package/dist/lib/form/items/CascaderItem.vue.js +68 -0
  134. package/dist/lib/form/items/CascaderItem.vue2.js +4 -0
  135. package/dist/lib/form/items/CheckboxGroupItem.vue.d.ts +26 -0
  136. package/dist/lib/form/items/CheckboxGroupItem.vue.js +84 -0
  137. package/dist/lib/form/items/CheckboxGroupItem.vue2.js +4 -0
  138. package/dist/lib/form/items/CodeMirrorEditorItem.vue.d.ts +13 -0
  139. package/dist/lib/form/items/CodeMirrorEditorItem.vue.js +55 -0
  140. package/dist/lib/form/items/CodeMirrorEditorItem.vue2.js +4 -0
  141. package/dist/lib/form/items/ColorPickerItem.vue.d.ts +26 -0
  142. package/dist/lib/form/items/ColorPickerItem.vue.js +67 -0
  143. package/dist/lib/form/items/ColorPickerItem.vue2.js +4 -0
  144. package/dist/lib/form/items/ColorPickerPanelItem.vue.d.ts +26 -0
  145. package/dist/lib/form/items/ColorPickerPanelItem.vue.js +67 -0
  146. package/dist/lib/form/items/ColorPickerPanelItem.vue2.js +4 -0
  147. package/dist/lib/form/items/CustomItem.vue.d.ts +12 -0
  148. package/dist/lib/form/items/CustomItem.vue.js +53 -0
  149. package/dist/lib/form/items/CustomItem.vue2.js +4 -0
  150. package/dist/lib/form/items/DatePickerItem.vue.d.ts +26 -0
  151. package/dist/lib/form/items/DatePickerItem.vue.js +71 -0
  152. package/dist/lib/form/items/DatePickerItem.vue2.js +4 -0
  153. package/dist/lib/form/items/DividerItem.vue.d.ts +22 -0
  154. package/dist/lib/form/items/DividerItem.vue.js +67 -0
  155. package/dist/lib/form/items/DividerItem.vue2.js +4 -0
  156. package/dist/lib/form/items/FileUploadItem.vue.d.ts +26 -0
  157. package/dist/lib/form/items/FileUploadItem.vue.js +82 -0
  158. package/dist/lib/form/items/FileUploadItem.vue2.js +4 -0
  159. package/dist/lib/form/items/ImageUploadItem.vue.d.ts +26 -0
  160. package/dist/lib/form/items/ImageUploadItem.vue.js +97 -0
  161. package/dist/lib/form/items/ImageUploadItem.vue2.js +4 -0
  162. package/dist/lib/form/items/InputItem.vue.d.ts +26 -0
  163. package/dist/lib/form/items/InputItem.vue.js +74 -0
  164. package/dist/lib/form/items/InputItem.vue2.js +4 -0
  165. package/dist/lib/form/items/InputNumberItem.vue.d.ts +26 -0
  166. package/dist/lib/form/items/InputNumberItem.vue.js +72 -0
  167. package/dist/lib/form/items/InputNumberItem.vue2.js +4 -0
  168. package/dist/lib/form/items/InputTagItem.vue.d.ts +26 -0
  169. package/dist/lib/form/items/InputTagItem.vue.js +67 -0
  170. package/dist/lib/form/items/InputTagItem.vue2.js +4 -0
  171. package/dist/lib/form/items/LinkedSelectItem.vue.d.ts +29 -0
  172. package/dist/lib/form/{LinkedSelect.vue.js → items/LinkedSelectItem.vue.js} +50 -26
  173. package/dist/lib/form/items/LinkedSelectItem.vue2.js +4 -0
  174. package/dist/lib/form/items/MentionItem.vue.d.ts +26 -0
  175. package/dist/lib/form/items/MentionItem.vue.js +67 -0
  176. package/dist/lib/form/items/MentionItem.vue2.js +4 -0
  177. package/dist/lib/form/items/RadioGroupItem.vue.d.ts +26 -0
  178. package/dist/lib/form/items/RadioGroupItem.vue.js +98 -0
  179. package/dist/lib/form/items/RadioGroupItem.vue2.js +4 -0
  180. package/dist/lib/form/items/RateItem.vue.d.ts +26 -0
  181. package/dist/lib/form/items/RateItem.vue.js +67 -0
  182. package/dist/lib/form/items/RateItem.vue2.js +4 -0
  183. package/dist/lib/form/items/RichEditorItem.vue.d.ts +13 -0
  184. package/dist/lib/form/items/RichEditorItem.vue.js +55 -0
  185. package/dist/lib/form/items/RichEditorItem.vue2.js +4 -0
  186. package/dist/lib/form/items/SelectItem.vue.d.ts +26 -0
  187. package/dist/lib/form/items/SelectItem.vue.js +81 -0
  188. package/dist/lib/form/items/SelectItem.vue2.js +4 -0
  189. package/dist/lib/form/items/SelectTableItem.vue.d.ts +5995 -0
  190. package/dist/lib/form/{SelectTable.vue.js → items/SelectTableItem.vue.js} +125 -54
  191. package/dist/lib/form/items/SelectTableItem.vue2.js +4 -0
  192. package/dist/lib/form/items/SelectV2Item.vue.d.ts +26 -0
  193. package/dist/lib/form/items/SelectV2Item.vue.js +69 -0
  194. package/dist/lib/form/items/SelectV2Item.vue2.js +4 -0
  195. package/dist/lib/form/items/SliderItem.vue.d.ts +26 -0
  196. package/dist/lib/form/items/SliderItem.vue.js +67 -0
  197. package/dist/lib/form/items/SliderItem.vue2.js +4 -0
  198. package/dist/lib/form/items/SwitchItem.vue.d.ts +26 -0
  199. package/dist/lib/form/items/SwitchItem.vue.js +67 -0
  200. package/dist/lib/form/items/SwitchItem.vue2.js +4 -0
  201. package/dist/lib/form/items/TextareaItem.vue.d.ts +26 -0
  202. package/dist/lib/form/items/TextareaItem.vue.js +70 -0
  203. package/dist/lib/form/items/TextareaItem.vue2.js +4 -0
  204. package/dist/lib/form/items/TimePickerItem.vue.d.ts +26 -0
  205. package/dist/lib/form/items/TimePickerItem.vue.js +71 -0
  206. package/dist/lib/form/items/TimePickerItem.vue2.js +4 -0
  207. package/dist/lib/form/items/TimeSelectItem.vue.d.ts +26 -0
  208. package/dist/lib/form/items/TimeSelectItem.vue.js +67 -0
  209. package/dist/lib/form/items/TimeSelectItem.vue2.js +4 -0
  210. package/dist/lib/form/items/TransferItem.vue.d.ts +26 -0
  211. package/dist/lib/form/items/TransferItem.vue.js +68 -0
  212. package/dist/lib/form/items/TransferItem.vue2.js +4 -0
  213. package/dist/lib/form/items/TreeSelectItem.vue.d.ts +26 -0
  214. package/dist/lib/form/items/TreeSelectItem.vue.js +68 -0
  215. package/dist/lib/form/items/TreeSelectItem.vue2.js +4 -0
  216. package/dist/lib/index.js +1 -1
  217. package/dist/lib/package.json.js +1 -1
  218. package/dist/lib/page-header/PageHeader.vue.d.ts +2 -0
  219. package/dist/lib/page-header/PageHeader.vue.js +32 -25
  220. package/dist/lib/page-header/PopoverMenu.vue.d.ts +1 -1
  221. package/dist/lib/page-table/PageTable.vue.d.ts +17 -17
  222. package/dist/lib/page-table/PageTable.vue.js +2 -1
  223. package/dist/lib/page-table/Toolbar.vue.js +2 -2
  224. package/dist/lib/page-table-v2/PageTableV2.vue.d.ts +8 -8
  225. package/package.json +1 -1
  226. package/dist/es/form/LinkedSelect.vue.d.ts +0 -36
  227. package/dist/es/form/LinkedSelect.vue2.js +0 -4
  228. package/dist/es/form/SelectTable.vue.d.ts +0 -38
  229. package/dist/es/form/SelectTable.vue.js +0 -226
  230. package/dist/es/form/SelectTable.vue3.js +0 -5
  231. package/dist/lib/form/LinkedSelect.vue.d.ts +0 -36
  232. package/dist/lib/form/LinkedSelect.vue2.js +0 -4
  233. package/dist/lib/form/SelectTable.vue.d.ts +0 -38
  234. package/dist/lib/form/SelectTable.vue3.js +0 -5
@@ -0,0 +1,297 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __async = (__this, __arguments, generator) => {
21
+ return new Promise((resolve, reject) => {
22
+ var fulfilled = (value) => {
23
+ try {
24
+ step(generator.next(value));
25
+ } catch (e) {
26
+ reject(e);
27
+ }
28
+ };
29
+ var rejected = (value) => {
30
+ try {
31
+ step(generator.throw(value));
32
+ } catch (e) {
33
+ reject(e);
34
+ }
35
+ };
36
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
37
+ step((generator = generator.apply(__this, __arguments)).next());
38
+ });
39
+ };
40
+ import { defineComponent, ref, computed, watch, nextTick, openBlock, createElementBlock, createElementVNode, Fragment, renderList, createBlock, unref, withCtx, createTextVNode, toDisplayString, createCommentVNode, withDirectives, normalizeStyle, createVNode, mergeProps, createSlots, renderSlot, normalizeProps, guardReactiveProps, resolveDynamicComponent, vShow } from "vue";
41
+ import { ElTag, ElButton } from "element-plus";
42
+ import { JkyPageTable } from "../../page-table/index.js";
43
+ const _hoisted_1 = { class: "jky-select-table" };
44
+ const _hoisted_2 = { class: "jky-select-table__tags" };
45
+ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({}, {
46
+ name: "JkyFormItemSelectTable"
47
+ }), {
48
+ __name: "SelectTableItem",
49
+ props: {
50
+ modelValue: {},
51
+ config: {},
52
+ componentProps: {},
53
+ componentSlots: {},
54
+ disabled: { type: Boolean }
55
+ },
56
+ emits: ["update:modelValue", "change"],
57
+ setup(__props, { emit: __emit }) {
58
+ const props = __props;
59
+ const emit = __emit;
60
+ const showTable = ref(false);
61
+ const selectedData = ref([]);
62
+ const selectedRows = ref([]);
63
+ const tableRef = ref(null);
64
+ const isSyncing = ref(false);
65
+ const multiple = computed(() => {
66
+ var _a, _b;
67
+ return (_b = (_a = props.config) == null ? void 0 : _a.multiple) != null ? _b : false;
68
+ });
69
+ const labelField = computed(() => {
70
+ var _a;
71
+ return ((_a = props.config) == null ? void 0 : _a.labelField) || "label";
72
+ });
73
+ const idField = computed(() => {
74
+ var _a;
75
+ return ((_a = props.config) == null ? void 0 : _a.idField) || "id";
76
+ });
77
+ const readonly = computed(() => {
78
+ var _a, _b;
79
+ return (_b = (_a = props.config) == null ? void 0 : _a.readonly) != null ? _b : false;
80
+ });
81
+ const selectedValue = computed({
82
+ get: () => {
83
+ var _a;
84
+ return (_a = props.modelValue) != null ? _a : "";
85
+ },
86
+ set: (val) => {
87
+ emit("update:modelValue", val);
88
+ }
89
+ });
90
+ function initSelectedData() {
91
+ return __async(this, null, function* () {
92
+ var _a, _b;
93
+ const ids = getIdsFromModelValue((_a = props.modelValue) != null ? _a : "");
94
+ if (!ids || ids.length === 0) {
95
+ selectedData.value = [];
96
+ selectedRows.value = [];
97
+ return;
98
+ }
99
+ if ((_b = props.config) == null ? void 0 : _b.detailApi) {
100
+ try {
101
+ const result = yield props.config.detailApi({ ids: ids.join(",") });
102
+ selectedData.value = Array.isArray(result) ? result : [result];
103
+ selectedRows.value = [...selectedData.value];
104
+ } catch (error) {
105
+ console.error("加载已选数据失败:", error);
106
+ selectedData.value = [];
107
+ selectedRows.value = [];
108
+ }
109
+ } else {
110
+ selectedData.value = ids.map((id) => ({
111
+ [idField.value]: id,
112
+ [labelField.value]: id
113
+ }));
114
+ selectedRows.value = [...selectedData.value];
115
+ }
116
+ });
117
+ }
118
+ function getIdsFromModelValue(modelValue) {
119
+ if (!modelValue)
120
+ return [];
121
+ if (Array.isArray(modelValue))
122
+ return modelValue;
123
+ return [modelValue];
124
+ }
125
+ function removeTag(item) {
126
+ var _a;
127
+ if (props.disabled || readonly.value)
128
+ return;
129
+ const id = item[idField.value];
130
+ if (multiple.value) {
131
+ const currentIds = getIdsFromModelValue((_a = props.modelValue) != null ? _a : "");
132
+ const newIds = currentIds.filter((v) => v !== id);
133
+ selectedValue.value = newIds;
134
+ } else {
135
+ selectedValue.value = "";
136
+ }
137
+ selectedData.value = selectedData.value.filter((v) => v[idField.value] !== id);
138
+ selectedRows.value = selectedRows.value.filter((v) => v[idField.value] !== id);
139
+ syncTableSelection();
140
+ emit("change", selectedValue.value, selectedData.value);
141
+ }
142
+ function syncTableSelection() {
143
+ const pageTable = tableRef.value;
144
+ if (!pageTable || !showTable.value)
145
+ return;
146
+ isSyncing.value = true;
147
+ pageTable.clearSelection();
148
+ selectedRows.value.forEach((row) => {
149
+ pageTable.toggleRowSelection(row, true);
150
+ });
151
+ isSyncing.value = false;
152
+ }
153
+ function handleSelectionChange(selection) {
154
+ if (isSyncing.value)
155
+ return;
156
+ if (!multiple.value) {
157
+ if (selection.length > 1) {
158
+ const lastSelected = selection[selection.length - 1];
159
+ selectedRows.value = [lastSelected];
160
+ selectedValue.value = lastSelected[idField.value];
161
+ selectedData.value = [lastSelected];
162
+ const pageTable = tableRef.value;
163
+ if (pageTable) {
164
+ pageTable.clearSelection();
165
+ pageTable.toggleRowSelection(lastSelected, true);
166
+ }
167
+ } else if (selection.length === 1) {
168
+ const item = selection[0];
169
+ selectedRows.value = [item];
170
+ selectedValue.value = item[idField.value];
171
+ selectedData.value = [item];
172
+ } else {
173
+ selectedRows.value = [];
174
+ selectedValue.value = "";
175
+ selectedData.value = [];
176
+ }
177
+ } else {
178
+ selectedRows.value = selection;
179
+ const ids = selection.map((item) => item[idField.value]);
180
+ selectedValue.value = ids;
181
+ selectedData.value = selection;
182
+ }
183
+ emit("change", selectedValue.value, selectedData.value);
184
+ }
185
+ watch(
186
+ () => props.modelValue,
187
+ (newVal) => {
188
+ if (newVal && (Array.isArray(newVal) ? newVal.length > 0 : newVal)) {
189
+ initSelectedData();
190
+ }
191
+ },
192
+ { immediate: true }
193
+ );
194
+ watch(showTable, (visible) => __async(null, null, function* () {
195
+ if (visible) {
196
+ yield nextTick();
197
+ setTimeout(() => {
198
+ syncTableSelection();
199
+ }, 50);
200
+ }
201
+ }));
202
+ function toggleTable() {
203
+ if (props.disabled || readonly.value)
204
+ return;
205
+ showTable.value = !showTable.value;
206
+ }
207
+ const pageTableProps = computed(() => {
208
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i;
209
+ const dataSource = ((_b = (_a = props.config) == null ? void 0 : _a.tableProps) == null ? void 0 : _b.dataSource) || ((_c = props.config) == null ? void 0 : _c.dataSource);
210
+ const filterItems = ((_e = (_d = props.config) == null ? void 0 : _d.tableProps) == null ? void 0 : _e.filterItems) || ((_f = props.config) == null ? void 0 : _f.filterItems);
211
+ const columns = ((_h = (_g = props.config) == null ? void 0 : _g.tableProps) == null ? void 0 : _h.columns) || [];
212
+ return __spreadProps(__spreadValues({}, (_i = props.config) == null ? void 0 : _i.tableProps), {
213
+ columns,
214
+ dataSource,
215
+ filterItems,
216
+ selection: true,
217
+ selectedRows: selectedRows.value
218
+ });
219
+ });
220
+ const tableOffsetStyle = computed(() => {
221
+ var _a;
222
+ const labelWidth = ((_a = props.config) == null ? void 0 : _a.labelWidth) || 100;
223
+ const width = typeof labelWidth === "number" ? `${labelWidth}px` : labelWidth;
224
+ return {
225
+ transform: `translateX(-${width})`
226
+ };
227
+ });
228
+ return (_ctx, _cache) => {
229
+ return openBlock(), createElementBlock("div", _hoisted_1, [
230
+ createElementVNode("div", _hoisted_2, [
231
+ (openBlock(true), createElementBlock(Fragment, null, renderList(selectedData.value, (item) => {
232
+ return openBlock(), createBlock(unref(ElTag), {
233
+ key: item[idField.value],
234
+ closable: "",
235
+ "disable-transitions": false,
236
+ disabled: __props.disabled,
237
+ class: "mr-1",
238
+ onClose: ($event) => removeTag(item)
239
+ }, {
240
+ default: withCtx(() => [
241
+ createTextVNode(toDisplayString(item[labelField.value]), 1)
242
+ ]),
243
+ _: 2
244
+ }, 1032, ["disabled", "onClose"]);
245
+ }), 128)),
246
+ !readonly.value && !__props.disabled ? (openBlock(), createBlock(unref(ElButton), {
247
+ key: 0,
248
+ text: "",
249
+ type: "primary",
250
+ onClick: toggleTable
251
+ }, {
252
+ default: withCtx(() => [
253
+ createTextVNode(toDisplayString(showTable.value ? "确定" : selectedData.value.length > 0 ? "更换" : "选择"), 1)
254
+ ]),
255
+ _: 1
256
+ })) : createCommentVNode("", true)
257
+ ]),
258
+ withDirectives(createElementVNode("div", {
259
+ class: "jky-select-table__dropdown w-full",
260
+ style: normalizeStyle(tableOffsetStyle.value)
261
+ }, [
262
+ createVNode(unref(JkyPageTable), mergeProps({
263
+ ref_key: "tableRef",
264
+ ref: tableRef,
265
+ class: "w-full"
266
+ }, pageTableProps.value, {
267
+ selection: true,
268
+ "selected-rows": selectedRows.value,
269
+ onSelectionChange: handleSelectionChange
270
+ }), createSlots({ _: 2 }, [
271
+ renderList(Object.keys(_ctx.$slots), (name, index) => {
272
+ return {
273
+ name,
274
+ fn: withCtx((slotData) => [
275
+ renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData || {})))
276
+ ])
277
+ };
278
+ }),
279
+ renderList(Object.keys(__props.componentSlots || {}), (name) => {
280
+ return {
281
+ name,
282
+ fn: withCtx((slotData) => [
283
+ (openBlock(), createBlock(resolveDynamicComponent(__props.componentSlots[name]), normalizeProps(guardReactiveProps(slotData || {})), null, 16))
284
+ ])
285
+ };
286
+ })
287
+ ]), 1040, ["selected-rows"])
288
+ ], 4), [
289
+ [vShow, showTable.value]
290
+ ])
291
+ ]);
292
+ };
293
+ }
294
+ }));
295
+ export {
296
+ _sfc_main as default
297
+ };
@@ -0,0 +1,4 @@
1
+ import _sfc_main from "./SelectTableItem.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -0,0 +1,26 @@
1
+ type __VLS_Props = {
2
+ modelValue?: any;
3
+ config: any;
4
+ componentProps: any;
5
+ componentSlots?: any;
6
+ disabled?: boolean;
7
+ };
8
+ declare function __VLS_template(): {
9
+ attrs: Partial<{}>;
10
+ slots: any;
11
+ refs: {};
12
+ rootEl: any;
13
+ };
14
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
15
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ "update:modelValue": (value: any) => any;
17
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
18
+ "onUpdate:modelValue"?: ((value: any) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
21
+ export default _default;
22
+ type __VLS_WithTemplateSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
@@ -0,0 +1,69 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, resolveDynamicComponent } from "vue";
21
+ import { ElSelectV2 } from "element-plus";
22
+ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({}, {
23
+ name: "JkyFormItemSelectV2"
24
+ }), {
25
+ __name: "SelectV2Item",
26
+ props: {
27
+ modelValue: {},
28
+ config: {},
29
+ componentProps: {},
30
+ componentSlots: {},
31
+ disabled: { type: Boolean }
32
+ },
33
+ emits: ["update:modelValue"],
34
+ setup(__props, { emit: __emit }) {
35
+ const props = __props;
36
+ const emit = __emit;
37
+ const selectV2Props = computed(() => __spreadProps(__spreadValues({}, props.componentProps), {
38
+ modelValue: props.modelValue,
39
+ placeholder: props.componentProps.placeholder || props.config.placeholder || "请选择",
40
+ disabled: props.disabled,
41
+ options: props.componentProps.options || []
42
+ }));
43
+ return (_ctx, _cache) => {
44
+ return openBlock(), createBlock(unref(ElSelectV2), mergeProps({ class: "min-w-30" }, selectV2Props.value, {
45
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event))
46
+ }), createSlots({ _: 2 }, [
47
+ renderList(Object.keys(_ctx.$slots), (name, index) => {
48
+ return {
49
+ name,
50
+ fn: withCtx((slotData) => [
51
+ renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData || {})))
52
+ ])
53
+ };
54
+ }),
55
+ renderList(Object.keys(__props.componentSlots || {}), (name) => {
56
+ return {
57
+ name,
58
+ fn: withCtx((slotData) => [
59
+ (openBlock(), createBlock(resolveDynamicComponent(__props.componentSlots[name]), normalizeProps(guardReactiveProps(slotData || {})), null, 16))
60
+ ])
61
+ };
62
+ })
63
+ ]), 1040);
64
+ };
65
+ }
66
+ }));
67
+ export {
68
+ _sfc_main as default
69
+ };
@@ -0,0 +1,4 @@
1
+ import _sfc_main from "./SelectV2Item.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -0,0 +1,26 @@
1
+ type __VLS_Props = {
2
+ modelValue?: any;
3
+ config: any;
4
+ componentProps: any;
5
+ componentSlots?: any;
6
+ disabled?: boolean;
7
+ };
8
+ declare function __VLS_template(): {
9
+ attrs: Partial<{}>;
10
+ slots: any;
11
+ refs: {};
12
+ rootEl: any;
13
+ };
14
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
15
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ "update:modelValue": (value: any) => any;
17
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
18
+ "onUpdate:modelValue"?: ((value: any) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
21
+ export default _default;
22
+ type __VLS_WithTemplateSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
@@ -0,0 +1,67 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, resolveDynamicComponent } from "vue";
21
+ import { ElSlider } from "element-plus";
22
+ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({}, {
23
+ name: "JkyFormItemSlider"
24
+ }), {
25
+ __name: "SliderItem",
26
+ props: {
27
+ modelValue: {},
28
+ config: {},
29
+ componentProps: {},
30
+ componentSlots: {},
31
+ disabled: { type: Boolean }
32
+ },
33
+ emits: ["update:modelValue"],
34
+ setup(__props, { emit: __emit }) {
35
+ const props = __props;
36
+ const emit = __emit;
37
+ const sliderProps = computed(() => __spreadProps(__spreadValues({}, props.componentProps), {
38
+ modelValue: props.modelValue,
39
+ disabled: props.disabled
40
+ }));
41
+ return (_ctx, _cache) => {
42
+ return openBlock(), createBlock(unref(ElSlider), mergeProps(sliderProps.value, {
43
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event))
44
+ }), createSlots({ _: 2 }, [
45
+ renderList(Object.keys(_ctx.$slots), (name, index) => {
46
+ return {
47
+ name,
48
+ fn: withCtx((slotData) => [
49
+ renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData || {})))
50
+ ])
51
+ };
52
+ }),
53
+ renderList(Object.keys(__props.componentSlots || {}), (name) => {
54
+ return {
55
+ name,
56
+ fn: withCtx((slotData) => [
57
+ (openBlock(), createBlock(resolveDynamicComponent(__props.componentSlots[name]), normalizeProps(guardReactiveProps(slotData || {})), null, 16))
58
+ ])
59
+ };
60
+ })
61
+ ]), 1040);
62
+ };
63
+ }
64
+ }));
65
+ export {
66
+ _sfc_main as default
67
+ };
@@ -0,0 +1,4 @@
1
+ import _sfc_main from "./SliderItem.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -0,0 +1,26 @@
1
+ type __VLS_Props = {
2
+ modelValue?: any;
3
+ config: any;
4
+ componentProps: any;
5
+ componentSlots?: any;
6
+ disabled?: boolean;
7
+ };
8
+ declare function __VLS_template(): {
9
+ attrs: Partial<{}>;
10
+ slots: any;
11
+ refs: {};
12
+ rootEl: any;
13
+ };
14
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
15
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ "update:modelValue": (value: any) => any;
17
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
18
+ "onUpdate:modelValue"?: ((value: any) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
21
+ export default _default;
22
+ type __VLS_WithTemplateSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
@@ -0,0 +1,67 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, resolveDynamicComponent } from "vue";
21
+ import { ElSwitch } from "element-plus";
22
+ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({}, {
23
+ name: "JkyFormItemSwitch"
24
+ }), {
25
+ __name: "SwitchItem",
26
+ props: {
27
+ modelValue: {},
28
+ config: {},
29
+ componentProps: {},
30
+ componentSlots: {},
31
+ disabled: { type: Boolean }
32
+ },
33
+ emits: ["update:modelValue"],
34
+ setup(__props, { emit: __emit }) {
35
+ const props = __props;
36
+ const emit = __emit;
37
+ const switchProps = computed(() => __spreadProps(__spreadValues({}, props.componentProps), {
38
+ modelValue: props.modelValue,
39
+ disabled: props.disabled
40
+ }));
41
+ return (_ctx, _cache) => {
42
+ return openBlock(), createBlock(unref(ElSwitch), mergeProps(switchProps.value, {
43
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event))
44
+ }), createSlots({ _: 2 }, [
45
+ renderList(Object.keys(_ctx.$slots), (name, index) => {
46
+ return {
47
+ name,
48
+ fn: withCtx((slotData) => [
49
+ renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotData || {})))
50
+ ])
51
+ };
52
+ }),
53
+ renderList(Object.keys(__props.componentSlots || {}), (name) => {
54
+ return {
55
+ name,
56
+ fn: withCtx((slotData) => [
57
+ (openBlock(), createBlock(resolveDynamicComponent(__props.componentSlots[name]), normalizeProps(guardReactiveProps(slotData || {})), null, 16))
58
+ ])
59
+ };
60
+ })
61
+ ]), 1040);
62
+ };
63
+ }
64
+ }));
65
+ export {
66
+ _sfc_main as default
67
+ };
@@ -0,0 +1,4 @@
1
+ import _sfc_main from "./SwitchItem.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -0,0 +1,26 @@
1
+ type __VLS_Props = {
2
+ modelValue?: any;
3
+ config: any;
4
+ componentProps: any;
5
+ componentSlots?: any;
6
+ disabled?: boolean;
7
+ };
8
+ declare function __VLS_template(): {
9
+ attrs: Partial<{}>;
10
+ slots: any;
11
+ refs: {};
12
+ rootEl: any;
13
+ };
14
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
15
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ "update:modelValue": (value: any) => any;
17
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
18
+ "onUpdate:modelValue"?: ((value: any) => any) | undefined;
19
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
21
+ export default _default;
22
+ type __VLS_WithTemplateSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };