@vtable-guild/vtable-guild 2.9.0-alpha.0 → 2.9.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/css/presets/antdv.css +16 -0
  2. package/css/presets/element-plus.css +16 -0
  3. package/css/style.css +200 -0
  4. package/css/tailwind3-utilities.css +168 -0
  5. package/css/tailwind3.css +32 -0
  6. package/css/tailwind4.css +32 -0
  7. package/dist/core/src/components/Button.d.ts +9 -0
  8. package/dist/core/src/components/Button.d.ts.map +1 -1
  9. package/dist/core/src/components/Button.mjs +11 -6
  10. package/dist/core/src/utils/types.d.ts +5 -0
  11. package/dist/core/src/utils/types.d.ts.map +1 -1
  12. package/dist/css/presets/antdv.css +16 -0
  13. package/dist/css/presets/element-plus.css +16 -0
  14. package/dist/css/style.css +200 -0
  15. package/dist/css/tailwind3-utilities.css +168 -0
  16. package/dist/css/tailwind3.css +32 -0
  17. package/dist/css/tailwind4.css +32 -0
  18. package/dist/icons/src/CheckCircleFilledIcon.d.ts +3 -0
  19. package/dist/icons/src/CheckCircleFilledIcon.d.ts.map +1 -0
  20. package/dist/icons/src/CheckCircleFilledIcon.mjs +9 -0
  21. package/dist/icons/src/CloseCircleFilledIcon.d.ts +3 -0
  22. package/dist/icons/src/CloseCircleFilledIcon.d.ts.map +1 -0
  23. package/dist/icons/src/CloseCircleFilledIcon.mjs +9 -0
  24. package/dist/icons/src/index.d.ts +2 -0
  25. package/dist/icons/src/index.d.ts.map +1 -1
  26. package/dist/index.full.mjs +6240 -4423
  27. package/dist/index.mjs +125 -99
  28. package/dist/table/src/components/ExpandIcon.d.ts +18 -0
  29. package/dist/table/src/components/ExpandIcon.d.ts.map +1 -1
  30. package/dist/table/src/components/ExpandIcon.mjs +47 -17
  31. package/dist/table/src/components/FilterDropdown.d.ts +1 -1
  32. package/dist/table/src/components/Table.d.ts +41 -3
  33. package/dist/table/src/components/Table.d.ts.map +1 -1
  34. package/dist/table/src/components/Table.mjs +744 -649
  35. package/dist/table/src/components/TableBody.d.ts.map +1 -1
  36. package/dist/table/src/components/TableBody.mjs +8 -5
  37. package/dist/table/src/components/TableCell.d.ts.map +1 -1
  38. package/dist/table/src/components/TableCell.mjs +125 -94
  39. package/dist/table/src/components/TableEditableCell.d.ts +29 -0
  40. package/dist/table/src/components/TableEditableCell.d.ts.map +1 -0
  41. package/dist/table/src/components/TableEditableCell.mjs +39 -0
  42. package/dist/table/src/components/TableEditableCell.test.d.ts +2 -0
  43. package/dist/table/src/components/TableEditableCell.test.d.ts.map +1 -0
  44. package/dist/table/src/components/TableInstance.test.d.ts +2 -0
  45. package/dist/table/src/components/TableInstance.test.d.ts.map +1 -0
  46. package/dist/table/src/components/TableLazyTree.test.d.ts +2 -0
  47. package/dist/table/src/components/TableLazyTree.test.d.ts.map +1 -0
  48. package/dist/table/src/components/TableQuery.d.ts +108 -0
  49. package/dist/table/src/components/TableQuery.d.ts.map +1 -0
  50. package/dist/table/src/components/TableQuery.mjs +244 -0
  51. package/dist/table/src/components/TableQuery.test.d.ts +2 -0
  52. package/dist/table/src/components/TableQuery.test.d.ts.map +1 -0
  53. package/dist/table/src/components/VTable.vue.d.ts +5 -1
  54. package/dist/table/src/components/VTable.vue.d.ts.map +1 -1
  55. package/dist/table/src/components/VTable.vue.mjs +45 -33
  56. package/dist/table/src/components/VTableEditCell.vue.d.ts +19 -0
  57. package/dist/table/src/components/VTableEditCell.vue.d.ts.map +1 -0
  58. package/dist/table/src/components/VTableEditCell.vue.mjs +21 -0
  59. package/dist/table/src/components/VTableEditCell.vue2.mjs +4 -0
  60. package/dist/table/src/components/VTableQuery.vue.d.ts +18 -0
  61. package/dist/table/src/components/VTableQuery.vue.d.ts.map +1 -0
  62. package/dist/table/src/components/VTableQuery.vue.mjs +64 -0
  63. package/dist/table/src/components/VTableQuery.vue2.mjs +4 -0
  64. package/dist/table/src/components/VirtualTableBody.d.ts.map +1 -1
  65. package/dist/table/src/components/VirtualTableBody.mjs +128 -115
  66. package/dist/table/src/composables/useLazyTreeData.d.ts +19 -0
  67. package/dist/table/src/composables/useLazyTreeData.d.ts.map +1 -0
  68. package/dist/table/src/composables/useLazyTreeData.mjs +123 -0
  69. package/dist/table/src/composables/useLazyTreeData.test.d.ts +2 -0
  70. package/dist/table/src/composables/useLazyTreeData.test.d.ts.map +1 -0
  71. package/dist/table/src/composables/useTableDictionary.d.ts +5 -0
  72. package/dist/table/src/composables/useTableDictionary.d.ts.map +1 -0
  73. package/dist/table/src/composables/useTableDictionary.mjs +168 -0
  74. package/dist/table/src/composables/useTableDictionary.test.d.ts +2 -0
  75. package/dist/table/src/composables/useTableDictionary.test.d.ts.map +1 -0
  76. package/dist/table/src/composables/useTableEdit.d.ts +4 -0
  77. package/dist/table/src/composables/useTableEdit.d.ts.map +1 -0
  78. package/dist/table/src/composables/useTableEdit.mjs +400 -0
  79. package/dist/table/src/composables/useTableEdit.test.d.ts +2 -0
  80. package/dist/table/src/composables/useTableEdit.test.d.ts.map +1 -0
  81. package/dist/table/src/composables/useTableEditable.d.ts +4 -0
  82. package/dist/table/src/composables/useTableEditable.d.ts.map +1 -0
  83. package/dist/table/src/composables/useTableEditable.mjs +125 -0
  84. package/dist/table/src/composables/useTableEditable.test.d.ts +2 -0
  85. package/dist/table/src/composables/useTableEditable.test.d.ts.map +1 -0
  86. package/dist/table/src/composables/useTableQuery.d.ts +4 -0
  87. package/dist/table/src/composables/useTableQuery.d.ts.map +1 -0
  88. package/dist/table/src/composables/useTableQuery.mjs +54 -0
  89. package/dist/table/src/composables/useTableQuery.test.d.ts +2 -0
  90. package/dist/table/src/composables/useTableQuery.test.d.ts.map +1 -0
  91. package/dist/table/src/composables/useTableRequest.d.ts.map +1 -1
  92. package/dist/table/src/composables/useTableRequest.mjs +138 -98
  93. package/dist/table/src/composables/useTableRequest.polling.test.d.ts +2 -0
  94. package/dist/table/src/composables/useTableRequest.polling.test.d.ts.map +1 -0
  95. package/dist/table/src/composables/useTreeData.d.ts +2 -0
  96. package/dist/table/src/composables/useTreeData.d.ts.map +1 -1
  97. package/dist/table/src/composables/useTreeData.mjs +46 -51
  98. package/dist/table/src/context.d.ts +11 -0
  99. package/dist/table/src/context.d.ts.map +1 -1
  100. package/dist/table/src/controls.d.ts +4 -0
  101. package/dist/table/src/controls.d.ts.map +1 -0
  102. package/dist/table/src/controls.mjs +97 -0
  103. package/dist/table/src/controls.test.d.ts +2 -0
  104. package/dist/table/src/controls.test.d.ts.map +1 -0
  105. package/dist/table/src/index.d.ts +27 -1
  106. package/dist/table/src/index.d.ts.map +1 -1
  107. package/dist/table/src/renderers.d.ts +5 -0
  108. package/dist/table/src/renderers.d.ts.map +1 -0
  109. package/dist/table/src/renderers.mjs +117 -0
  110. package/dist/table/src/renderers.test.d.ts +2 -0
  111. package/dist/table/src/renderers.test.d.ts.map +1 -0
  112. package/dist/table/src/review-current.repro.test.d.ts +2 -0
  113. package/dist/table/src/review-current.repro.test.d.ts.map +1 -0
  114. package/dist/table/src/types/column.d.ts +8 -1
  115. package/dist/table/src/types/column.d.ts.map +1 -1
  116. package/dist/table/src/types/controls.d.ts +31 -0
  117. package/dist/table/src/types/controls.d.ts.map +1 -0
  118. package/dist/table/src/types/dictionary.d.ts +71 -0
  119. package/dist/table/src/types/dictionary.d.ts.map +1 -0
  120. package/dist/table/src/types/dictionary.typecheck.d.ts +6 -0
  121. package/dist/table/src/types/dictionary.typecheck.d.ts.map +1 -0
  122. package/dist/table/src/types/editable.d.ts +49 -0
  123. package/dist/table/src/types/editable.d.ts.map +1 -0
  124. package/dist/table/src/types/editable.typecheck.d.ts +15 -0
  125. package/dist/table/src/types/editable.typecheck.d.ts.map +1 -0
  126. package/dist/table/src/types/editing.d.ts +90 -0
  127. package/dist/table/src/types/editing.d.ts.map +1 -0
  128. package/dist/table/src/types/editing.typecheck.d.ts +11 -0
  129. package/dist/table/src/types/editing.typecheck.d.ts.map +1 -0
  130. package/dist/table/src/types/index.d.ts +9 -0
  131. package/dist/table/src/types/index.d.ts.map +1 -1
  132. package/dist/table/src/types/instance.d.ts +18 -0
  133. package/dist/table/src/types/instance.d.ts.map +1 -0
  134. package/dist/table/src/types/instance.typecheck.d.ts +3 -0
  135. package/dist/table/src/types/instance.typecheck.d.ts.map +1 -0
  136. package/dist/table/src/types/query-form.d.ts +90 -0
  137. package/dist/table/src/types/query-form.d.ts.map +1 -0
  138. package/dist/table/src/types/query-form.typecheck.d.ts +10 -0
  139. package/dist/table/src/types/query-form.typecheck.d.ts.map +1 -0
  140. package/dist/table/src/types/query.d.ts +40 -0
  141. package/dist/table/src/types/query.d.ts.map +1 -0
  142. package/dist/table/src/types/query.typecheck.d.ts +14 -0
  143. package/dist/table/src/types/query.typecheck.d.ts.map +1 -0
  144. package/dist/table/src/types/renderers.d.ts +49 -0
  145. package/dist/table/src/types/renderers.d.ts.map +1 -0
  146. package/dist/table/src/types/renderers.typecheck.d.ts +13 -0
  147. package/dist/table/src/types/renderers.typecheck.d.ts.map +1 -0
  148. package/dist/table/src/types/request.d.ts +23 -5
  149. package/dist/table/src/types/request.d.ts.map +1 -1
  150. package/dist/table/src/types/request.typecheck.d.ts.map +1 -1
  151. package/dist/table/src/types/table.d.ts +8 -0
  152. package/dist/table/src/types/table.d.ts.map +1 -1
  153. package/dist/table/src/types/tree.d.ts +5 -0
  154. package/dist/table/src/types/tree.d.ts.map +1 -0
  155. package/dist/table/src/utils/cell.d.ts +5 -0
  156. package/dist/table/src/utils/cell.d.ts.map +1 -1
  157. package/dist/table/src/utils/cell.mjs +76 -46
  158. package/dist/table/src/utils/fieldPath.d.ts +6 -0
  159. package/dist/table/src/utils/fieldPath.d.ts.map +1 -0
  160. package/dist/table/src/utils/fieldPath.mjs +29 -0
  161. package/dist/table/src/utils/queryFields.d.ts +4 -0
  162. package/dist/table/src/utils/queryFields.d.ts.map +1 -0
  163. package/dist/table/src/utils/queryFields.mjs +31 -0
  164. package/dist/table/src/utils/queryFields.test.d.ts +2 -0
  165. package/dist/table/src/utils/queryFields.test.d.ts.map +1 -0
  166. package/dist/table/src/utils/snapshot.d.ts +3 -0
  167. package/dist/table/src/utils/snapshot.d.ts.map +1 -0
  168. package/dist/table/src/utils/snapshot.mjs +30 -0
  169. package/dist/table/src/utils/snapshot.test.d.ts +2 -0
  170. package/dist/table/src/utils/snapshot.test.d.ts.map +1 -0
  171. package/dist/table/src/utils/stateEqual.d.ts +3 -0
  172. package/dist/table/src/utils/stateEqual.d.ts.map +1 -0
  173. package/dist/table/src/utils/stateEqual.mjs +15 -0
  174. package/dist/theme/src/index.d.ts +4 -0
  175. package/dist/theme/src/index.d.ts.map +1 -1
  176. package/dist/theme/src/presets/antdv/table-locale.d.ts +10 -0
  177. package/dist/theme/src/presets/antdv/table-locale.d.ts.map +1 -1
  178. package/dist/theme/src/presets/antdv/table-locale.mjs +2 -0
  179. package/dist/theme/src/presets/antdv/table.d.ts +10 -0
  180. package/dist/theme/src/presets/antdv/table.d.ts.map +1 -1
  181. package/dist/theme/src/presets/antdv/table.mjs +10 -0
  182. package/dist/theme/src/presets/element-plus/table-locale.d.ts +10 -0
  183. package/dist/theme/src/presets/element-plus/table-locale.d.ts.map +1 -1
  184. package/dist/theme/src/presets/element-plus/table-locale.mjs +2 -0
  185. package/dist/theme/src/presets/element-plus/table.d.ts +10 -0
  186. package/dist/theme/src/presets/element-plus/table.d.ts.map +1 -1
  187. package/dist/theme/src/presets/element-plus/table.mjs +10 -0
  188. package/dist/theme/src/query.d.ts +128 -0
  189. package/dist/theme/src/query.d.ts.map +1 -0
  190. package/dist/theme/src/query.mjs +56 -0
  191. package/dist/vtable-guild/src/augment.d.ts +2 -1
  192. package/dist/vtable-guild/src/augment.d.ts.map +1 -1
  193. package/package.json +1 -1
@@ -0,0 +1,125 @@
1
+ import { h as I, toValue as y } from "vue";
2
+ import { useTableEdit as k } from "./useTableEdit.mjs";
3
+ import { snapshot as T } from "../utils/snapshot.mjs";
4
+ import { setField as h, getField as w } from "../utils/fieldPath.mjs";
5
+ import K from "../components/TableEditableCell.mjs";
6
+ import { valueEnumEntries as A } from "../utils/valueEnum.mjs";
7
+ function E(s) {
8
+ return s.flatMap(
9
+ (c) => typeof c == "symbol" ? [] : "children" in c ? E(c.children) : [c]
10
+ );
11
+ }
12
+ function N(s) {
13
+ const c = s.clone ?? T, p = () => E(y(s.columns)).filter(
14
+ (e) => e.editor && e.dataIndex !== void 0
15
+ );
16
+ function g(e, t, r) {
17
+ return {
18
+ ...r,
19
+ name: Array.isArray(e.dataIndex) ? e.dataIndex.join(".") : String(e.dataIndex),
20
+ column: e,
21
+ draft: c(t),
22
+ original: r.original && c(r.original),
23
+ value: w(t, e.dataIndex)
24
+ };
25
+ }
26
+ function b(e, t, r) {
27
+ const n = c(e);
28
+ for (const a of p()) {
29
+ const l = a.editor, u = r ? l.transform : l.convertValue;
30
+ u && h(
31
+ n,
32
+ a.dataIndex,
33
+ u(w(n, a.dataIndex), g(a, n, t))
34
+ );
35
+ }
36
+ return n;
37
+ }
38
+ const f = k({
39
+ ...s,
40
+ toDraft: (e, t) => b(e, t, !1),
41
+ toValue: (e, t) => b(e, t, !0),
42
+ async validate(e, t) {
43
+ const r = {};
44
+ for (const n of p()) {
45
+ const a = n.editor, l = g(n, e, t), u = await a.validate?.(l.value, { ...l, signal: t.signal });
46
+ if (t.signal.aborted) return;
47
+ u && (r[l.name] = u);
48
+ }
49
+ return Object.keys(r).length ? { fields: r } : s.validate?.(e, t);
50
+ }
51
+ });
52
+ function x(e) {
53
+ return typeof s.rowKey == "function" ? s.rowKey(e) : e[s.rowKey];
54
+ }
55
+ function m(e) {
56
+ const t = x(e.record), r = f.getDraft(t), n = e.column.editor;
57
+ if (!r || !n || e.column.dataIndex === void 0) return;
58
+ const a = g(e.column, r, {
59
+ key: t,
60
+ original: f.getOriginal(t),
61
+ isNew: f.newRecords.value.some((o) => x(o) === t)
62
+ }), l = (o) => typeof o == "function" ? o(a) : o;
63
+ if (l(n.editable) === !1 || l(n.readonly)) return;
64
+ const u = [
65
+ ...y(n.options) ?? y(n.dictionary?.options) ?? A(e.column.valueEnum).flatMap(([o, i]) => {
66
+ const d = typeof i == "string" ? i : i.text;
67
+ return typeof d == "string" ? [{ value: o, label: d, ...typeof i == "object" ? { status: i.status } : {} }] : [];
68
+ })
69
+ ];
70
+ for (const o of Array.isArray(a.value) ? a.value : [a.value]) {
71
+ if (typeof o != "string" && typeof o != "number" && typeof o != "boolean" || u.some((v) => v.value === o))
72
+ continue;
73
+ const i = y(n.dictionary?.valueEnum)?.get(o), d = typeof i == "string" ? i : i?.text;
74
+ typeof d == "string" && u.push({ value: o, label: d });
75
+ }
76
+ return {
77
+ key: t,
78
+ column: e.column,
79
+ draft: r,
80
+ value: a.value,
81
+ valueType: n.valueType ?? (e.column.valueEnum ? "select" : e.column.valueType ?? "text"),
82
+ fieldProps: typeof n.fieldProps == "function" ? n.fieldProps(a) : n.fieldProps ?? {},
83
+ options: u,
84
+ onSearch: n.dictionary ? (o) => {
85
+ n.dictionary.search(o);
86
+ } : void 0,
87
+ loading: y(n.dictionary?.loading) ?? !1,
88
+ disabled: !!l(n.disabled) || f.savingKeys.value.has(t) || f.cancellingKeys.value.has(t),
89
+ readonly: !1,
90
+ error: f.errors.value.get(t)?.fields?.[a.name],
91
+ name: a.name,
92
+ mode: "edit",
93
+ onChange(o) {
94
+ const i = m(e);
95
+ i && !i.disabled && f.setDraft(t, (d) => {
96
+ h(d, e.column.dataIndex, o);
97
+ const v = n.onValueChange?.(
98
+ o,
99
+ g(e.column, d, {
100
+ key: t,
101
+ original: f.getOriginal(t),
102
+ isNew: a.isNew
103
+ })
104
+ );
105
+ return v ? { ...d, ...v } : d;
106
+ });
107
+ }
108
+ };
109
+ }
110
+ return {
111
+ ...f,
112
+ getCell: m,
113
+ renderEditor(e) {
114
+ const t = m(e);
115
+ return t ? I(K, {
116
+ context: t,
117
+ controls: y(s.controls),
118
+ ui: s.ui
119
+ }) : void 0;
120
+ }
121
+ };
122
+ }
123
+ export {
124
+ N as useTableEditable
125
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useTableEditable.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableEditable.test.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTableEditable.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { UseTableQueryOptions, UseTableQueryReturn } from '../types/query';
2
+ /** Form state and submit protocol; controls and layout remain owned by the host UI library. */
3
+ export declare function useTableQuery<TValues extends object, TParams extends object = TValues>(options: UseTableQueryOptions<TValues, TParams>): UseTableQueryReturn<TValues, TParams>;
4
+ //# sourceMappingURL=useTableQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableQuery.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTableQuery.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,gBAAgB,CAAA;AAGvB,+FAA+F;AAC/F,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,GAAG,OAAO,EACpF,OAAO,EAAE,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,GAC9C,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CA6FvC"}
@@ -0,0 +1,54 @@
1
+ import { ref as h, shallowRef as w, watch as j, getCurrentScope as P, onScopeDispose as x, computed as C } from "vue";
2
+ import { snapshot as t } from "../utils/snapshot.mjs";
3
+ function T(a) {
4
+ const d = t(a.defaultValues), c = h(t(d)), v = w(), p = w(), f = a.collapsed ?? h(a.defaultCollapsed ?? !0), i = h(!1), b = w(null);
5
+ let u = 0, o = !1;
6
+ const k = a.onCollapse ? j(f, (e) => a.onCollapse?.(e), { flush: "sync" }) : void 0;
7
+ function O(e, y) {
8
+ const r = a.fieldTransforms, s = new Set(y?.omitFields ?? []), n = {};
9
+ for (const [l, m] of Object.entries(e))
10
+ !(Object.prototype.hasOwnProperty.call(r ?? {}, l) && r?.[l]) && !s.has(l) && (n[l] = m);
11
+ for (const l of Object.keys(r ?? {})) {
12
+ const m = r?.[l];
13
+ m && !s.has(l) && Object.assign(n, m(e[l], e));
14
+ }
15
+ const g = n;
16
+ return t(a.transform?.(g, e) ?? g);
17
+ }
18
+ async function S(e, y) {
19
+ if (o) return !1;
20
+ const r = ++u;
21
+ i.value = !0, b.value = null;
22
+ try {
23
+ const s = t(c.value), n = O(s, y);
24
+ return v.value = t(s), p.value = t(n), await (e ? a.onReset ?? a.onSubmit : a.onSubmit)?.(t(n), t(s)), !o && r === u;
25
+ } catch (s) {
26
+ return !o && r === u && (b.value = s instanceof Error ? s : new Error(String(s))), !1;
27
+ } finally {
28
+ !o && r === u && (i.value = !1);
29
+ }
30
+ }
31
+ return P() && x(() => {
32
+ o = !0, u++, i.value = !1, k?.();
33
+ }), {
34
+ draft: c,
35
+ submitted: C(() => v.value && t(v.value)),
36
+ params: C(() => p.value && t(p.value)),
37
+ collapsed: f,
38
+ submitting: C(() => i.value),
39
+ error: b,
40
+ submit: (e) => S(!1, e),
41
+ reset(e) {
42
+ return o ? Promise.resolve(!1) : (c.value = t(d), S(!0, e));
43
+ },
44
+ resetFields() {
45
+ o || (c.value = t(d));
46
+ },
47
+ toggleCollapsed() {
48
+ f.value = !f.value;
49
+ }
50
+ };
51
+ }
52
+ export {
53
+ T as useTableQuery
54
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useTableQuery.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableQuery.test.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTableQuery.test.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"useTableRequest.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTableRequest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,kBAAkB,CAAA;AA4CzB,2FAA2F;AAC3F,wBAAgB,eAAe,CAC7B,OAAO,SAAS,MAAM,EACtB,OAAO,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChD,OAAO,EAAE,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAyL5F"}
1
+ {"version":3,"file":"useTableRequest.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTableRequest.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAGV,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,kBAAkB,CAAA;AAkBzB,2FAA2F;AAC3F,wBAAgB,eAAe,CAC7B,OAAO,SAAS,MAAM,EACtB,OAAO,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChD,OAAO,EAAE,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CA2S5F"}
@@ -1,127 +1,167 @@
1
- import { shallowRef as O, ref as q, toValue as I, watch as Q, getCurrentScope as U, onScopeDispose as W, computed as w } from "vue";
2
- import { positiveInteger as D } from "./usePagination.mjs";
3
- function n(e) {
4
- return e instanceof Date ? new Date(e.getTime()) : Array.isArray(e) ? e.map((t) => n(t)) : e && Object.getPrototypeOf(e) === Object.prototype ? Object.fromEntries(
5
- Object.entries(e).map(([t, r]) => [t, n(r)])
6
- ) : e;
7
- }
8
- function F(e, t) {
9
- if (Object.is(e, t)) return !0;
10
- if (e instanceof Date && t instanceof Date) return e.getTime() === t.getTime();
11
- if (!e || !t || typeof e != "object" || typeof t != "object" || Object.getPrototypeOf(e) !== Object.getPrototypeOf(t) || Object.getPrototypeOf(e) !== Object.prototype && !Array.isArray(e)) return !1;
12
- const r = Object.entries(e), i = Object.entries(t);
13
- return r.length === i.length && r.every(
14
- ([c, o]) => Object.prototype.hasOwnProperty.call(t, c) && F(o, Reflect.get(t, c))
15
- );
16
- }
17
- function X(e) {
18
- const t = [];
19
- for (const r of Array.isArray(e) ? e : [e]) {
20
- if (!r.order) continue;
21
- const i = r.field ?? r.columnKey;
22
- i != null && t.push([Array.isArray(i) ? i.join(".") : String(i), r.order]);
1
+ import { shallowRef as z, ref as b, getCurrentScope as U, toValue as A, watch as ie, unref as ue, onScopeDispose as de, computed as m } from "vue";
2
+ import { positiveInteger as V } from "./usePagination.mjs";
3
+ import { snapshot as a } from "../utils/snapshot.mjs";
4
+ import { stateEqual as X } from "../utils/stateEqual.mjs";
5
+ function me(e) {
6
+ const g = [];
7
+ for (const o of Array.isArray(e) ? e : [e]) {
8
+ if (!o.order) continue;
9
+ const u = o.field ?? o.columnKey;
10
+ u != null && g.push([Array.isArray(u) ? u.join(".") : String(u), o.order]);
23
11
  }
24
- return Object.fromEntries(t);
12
+ return Object.fromEntries(g);
25
13
  }
26
- function _(e) {
27
- const t = n(e.defaultParams ?? {}), r = O(n(t)), i = O({}), c = O({}), o = q(D(e.initialPagination?.current, 1)), p = q(D(e.initialPagination?.pageSize, 10)), K = q(Math.max(0, e.initialPagination?.total ?? 0)), L = O([]), S = q(!1), v = O(null), G = Object.freeze({ sort: !0, filter: !0, pagination: !0 });
28
- let j = !1, y = 0, b, P, A, g, C = Promise.resolve();
29
- function E() {
30
- y++, b !== void 0 && clearTimeout(b), b = void 0, P?.abort(), P = void 0, A?.(), A = void 0, S.value = !1, g = void 0;
14
+ function ye(e) {
15
+ const g = a(e.defaultParams ?? {}), o = z(a(g)), u = z({}), R = z({}), n = b(V(e.initialPagination?.current, 1)), y = b(V(e.initialPagination?.pageSize, 10)), Y = b(Math.max(0, e.initialPagination?.total ?? 0)), H = z([]), C = b(!1), S = b(!1), w = b(!1), h = z(null), le = Object.freeze({ sort: !0, filter: !0, pagination: !0 });
16
+ let E = !1, T = 0, p, f, M, v, O = Promise.resolve(), x, D, Z = !1, _ = !1, $ = !1;
17
+ const oe = !!U();
18
+ function F() {
19
+ clearTimeout(x), clearTimeout(D), x = void 0, D = void 0;
20
+ }
21
+ function P() {
22
+ return oe && typeof document < "u" && !E && Z && !w.value && (e.pollingWhenHidden || document.visibilityState !== "hidden");
31
23
  }
32
- function m(l = !1, M = !1) {
33
- if (j) return Promise.resolve();
34
- let a;
24
+ function K(t) {
25
+ h.value = t instanceof Error ? t : new Error(String(t));
35
26
  try {
36
- const s = n({ ...t, ...r.value, ...I(e.params) });
37
- a = {
38
- ...e.beforeSearchSubmit?.(s) ?? s,
39
- current: o.value,
40
- pageSize: p.value
27
+ e.onError?.(h.value);
28
+ } catch (r) {
29
+ h.value = r instanceof Error ? r : new Error(String(r));
30
+ }
31
+ }
32
+ function j() {
33
+ if (F(), !P() || f || h.value && !e.pollingOnError) return;
34
+ const t = ue(e.polling);
35
+ let r;
36
+ try {
37
+ r = typeof t == "function" ? t(a(H.value)) : t;
38
+ } catch (c) {
39
+ K(c);
40
+ return;
41
+ }
42
+ typeof r != "number" || !Number.isFinite(r) || r <= 0 || (x = setTimeout(
43
+ () => {
44
+ x = void 0, P() && s(!0, !0, !0, !0);
45
+ },
46
+ Math.max(2e3, r)
47
+ ));
48
+ }
49
+ function L() {
50
+ F(), T++, p !== void 0 && clearTimeout(p), p = void 0, f?.abort(), f = void 0, M?.(), M = void 0, C.value = !1, S.value = !1, v = void 0;
51
+ }
52
+ function se() {
53
+ w.value = !0, F(), f && $ && L();
54
+ }
55
+ function ee() {
56
+ w.value = !0, L();
57
+ }
58
+ function s(t = !1, r = !1, c = !1, k = !1) {
59
+ if (E) return Promise.resolve();
60
+ let i;
61
+ try {
62
+ const d = a({ ...g, ...o.value, ...A(e.params) });
63
+ i = {
64
+ ...e.beforeSearchSubmit?.(d) ?? d,
65
+ current: n.value,
66
+ pageSize: y.value
41
67
  };
42
- } catch (s) {
43
- return E(), v.value = s instanceof Error ? s : new Error(String(s)), e.onError?.(v.value), Promise.resolve();
68
+ } catch (d) {
69
+ return L(), K(d), Promise.resolve();
44
70
  }
45
- const d = n(i.value), h = n(c.value), V = n({ params: a, sort: d, filters: h });
46
- if (!l && g !== void 0 && F(g, V)) return C;
47
- E(), g = V;
48
- const x = y, z = new AbortController();
49
- return P = z, S.value = !0, v.value = null, C = new Promise((s) => {
50
- A = s;
51
- const k = async () => {
52
- b = void 0;
71
+ const W = a(u.value), B = a(R.value), G = a({ params: i, sort: W, filters: B });
72
+ if (k && f && p === void 0 && X(v, G) || !t && v !== void 0 && X(v, G)) return O;
73
+ L(), Z = !0, $ = c, v = G;
74
+ const J = T, I = new AbortController();
75
+ return f = I, S.value = c && _, C.value = !S.value, h.value = null, O = new Promise((d) => {
76
+ M = d;
77
+ const ae = async () => {
78
+ p = void 0;
53
79
  try {
54
- for (let f = 0; f < 2; f++) {
55
- const u = await e.request(a, d, h, { signal: z.signal });
56
- if (j || x !== y || z.signal.aborted) return;
57
- if (u.success === !1) throw new Error("Table request was unsuccessful");
58
- if (!Array.isArray(u.data))
80
+ for (let q = 0; q < 2; q++) {
81
+ const l = await e.request(i, W, B, { signal: I.signal });
82
+ if (E || J !== T || I.signal.aborted) return;
83
+ if (l.success === !1) throw new Error("Table request was unsuccessful");
84
+ if (!Array.isArray(l.data))
59
85
  throw new Error("Table request data must be an array");
60
- if (!Number.isSafeInteger(u.total) || u.total < 0)
86
+ if (!Number.isSafeInteger(l.total) || l.total < 0)
61
87
  throw new Error("Table request total must be a non-negative safe integer");
62
- const T = Math.max(1, Math.ceil(u.total / a.pageSize));
63
- if (f === 0 && u.total > 0 && a.current > T) {
64
- o.value = T, a = { ...a, current: T };
88
+ const N = Math.max(1, Math.ceil(l.total / i.pageSize));
89
+ if (q === 0 && l.total > 0 && i.current > N) {
90
+ n.value = N, i = { ...i, current: N };
65
91
  continue;
66
92
  }
67
- const R = e.postData ? e.postData(u.data) : u.data;
68
- if (!Array.isArray(R)) throw new Error("Table postData must return an array");
69
- o.value = Math.min(a.current, T), K.value = u.total, L.value = R, g = n({ params: { ...a, current: o.value }, sort: d, filters: h }), e.onLoad?.(R, u);
93
+ const Q = e.postData ? e.postData(l.data) : l.data;
94
+ if (!Array.isArray(Q)) throw new Error("Table postData must return an array");
95
+ n.value = Math.min(i.current, N), Y.value = l.total, H.value = Q, _ = !0, v = a({ params: { ...i, current: n.value }, sort: W, filters: B }), e.onLoad?.(Q, l);
70
96
  break;
71
97
  }
72
- } catch (f) {
73
- !j && x === y && !z.signal.aborted && (v.value = f instanceof Error ? f : new Error(String(f)), g = void 0, e.onError?.(v.value));
98
+ } catch (q) {
99
+ !E && J === T && !I.signal.aborted && (v = void 0, K(q));
74
100
  } finally {
75
- x === y && (S.value = !1, P = void 0, A = void 0), s();
101
+ J === T && (C.value = !1, S.value = !1, f = void 0, M = void 0, j()), d();
76
102
  }
77
- }, B = M ? 0 : Math.max(0, e.debounceTime ?? 0);
78
- B > 0 ? b = setTimeout(() => {
79
- k();
80
- }, B) : k();
81
- }), C;
103
+ }, ne = r ? 0 : Math.max(0, e.debounceTime ?? 0);
104
+ ne > 0 ? p = setTimeout(() => {
105
+ ae();
106
+ }, ne) : ae();
107
+ }), O;
82
108
  }
83
- const H = (l, M, a) => {
84
- if (a.action === "select") return;
85
- const d = D(a.pagination?.pageSize, p.value), h = d !== p.value;
86
- i.value = X(M), c.value = n(l), o.value = a.action !== "paginate" || h && e.resetOnPageSizeChange !== !1 ? 1 : D(a.pagination?.current, o.value), p.value = d, m();
109
+ const ce = (t, r, c) => {
110
+ if (c.action === "select") return;
111
+ const k = V(c.pagination?.pageSize, y.value), i = k !== y.value;
112
+ u.value = me(r), R.value = a(t), n.value = c.action !== "paginate" || i && e.resetOnPageSizeChange !== !1 ? 1 : V(c.pagination?.current, n.value), y.value = k, s();
87
113
  };
88
- let N = n(I(e.params));
89
- const J = Q(
90
- () => I(e.params),
91
- (l) => {
92
- F(N, l) || (N = n(l), o.value = 1, m());
114
+ let te = a(A(e.params));
115
+ const fe = ie(
116
+ () => A(e.params),
117
+ (t) => {
118
+ X(te, t) || (te = a(t), n.value = 1, s());
93
119
  },
94
120
  { deep: !0 }
121
+ ), ve = ie(
122
+ () => [ue(e.polling), A(e.revalidateOnFocus)],
123
+ j
95
124
  );
96
- return U() && W(() => {
97
- j = !0, J(), E();
98
- }), e.manualRequest || m(), {
99
- dataSource: L,
100
- loading: w(() => S.value),
101
- error: v,
102
- pagination: w(() => ({
125
+ function re() {
126
+ F(), P() && (document.visibilityState === "visible" && A(e.revalidateOnFocus) ? D = setTimeout(() => {
127
+ D = void 0, P() && !f && s(!0, !0, !0, !0);
128
+ }, 0) : j());
129
+ }
130
+ return U() && typeof document < "u" && document.addEventListener("visibilitychange", re), U() && de(() => {
131
+ E = !0, fe(), ve(), typeof document < "u" && document.removeEventListener("visibilitychange", re), ee();
132
+ }), e.manualRequest || s(), {
133
+ dataSource: H,
134
+ loading: m(() => C.value),
135
+ refreshing: m(() => S.value),
136
+ paused: m(() => w.value),
137
+ error: h,
138
+ pagination: m(() => ({
103
139
  ...e.pagination,
104
- current: o.value,
105
- pageSize: p.value,
106
- total: K.value
140
+ current: n.value,
141
+ pageSize: y.value,
142
+ total: Y.value
107
143
  })),
108
- query: w(() => r.value),
109
- sort: w(() => i.value),
110
- filters: w(() => c.value),
111
- manual: G,
112
- onChange: H,
113
- reload(l = !1) {
114
- return l && (o.value = 1), m(!0, !0);
144
+ query: m(() => o.value),
145
+ sort: m(() => u.value),
146
+ filters: m(() => R.value),
147
+ manual: le,
148
+ onChange: ce,
149
+ reload(t = !1) {
150
+ return t && (n.value = 1), s(!0, !0, !1, !0);
115
151
  },
116
- submit(l = {}) {
117
- return r.value = n(l), o.value = 1, m();
152
+ submit(t = {}) {
153
+ return o.value = a(t), n.value = 1, s(!0);
118
154
  },
119
- reset() {
120
- return r.value = n(t), i.value = {}, c.value = {}, o.value = 1, m();
155
+ reset(t = g) {
156
+ return o.value = a(t), u.value = {}, R.value = {}, n.value = 1, s(!0);
121
157
  },
122
- cancel: E
158
+ cancel: ee,
159
+ pause: se,
160
+ resume(t = !1) {
161
+ return w.value = !1, t && P() ? s(!0, !0, !0, !0) : (j(), Promise.resolve());
162
+ }
123
163
  };
124
164
  }
125
165
  export {
126
- _ as useTableRequest
166
+ ye as useTableRequest
127
167
  };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useTableRequest.polling.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableRequest.polling.test.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTableRequest.polling.test.ts"],"names":[],"mappings":""}
@@ -25,6 +25,8 @@ export interface UseTreeDataOptions<TRecord = Record<string, unknown>> {
25
25
  indentSize?: () => number | undefined;
26
26
  /** Row key resolver */
27
27
  getRowKey: (record: TRecord, index: number) => Key;
28
+ /** Includes lazy parents whose children have not loaded yet. */
29
+ hasChildren?: (record: TRecord) => boolean;
28
30
  /** Default expanded keys (uncontrolled) */
29
31
  defaultExpandedRowKeys?: () => Key[] | undefined;
30
32
  /** Controlled expanded keys */
@@ -1 +1 @@
1
- {"version":3,"file":"useTreeData.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTreeData.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,MAAM,WAAW,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,2BAA2B;IAC3B,MAAM,EAAE,OAAO,CAAA;IACf,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAA;IACjB,sCAAsC;IACtC,WAAW,EAAE,OAAO,CAAA;IACpB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,GAAG,CAAA;CAChB;AAED,MAAM,WAAW,kBAAkB,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,2BAA2B;IAC3B,IAAI,EAAE,MAAM,OAAO,EAAE,CAAA;IACrB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,OAAO,EAAE,CAAA;IAC1B,sEAAsE;IACtE,yBAAyB,CAAC,EAAE,MAAM,OAAO,CAAA;IACzC,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAC7C,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IACrC,uBAAuB;IACvB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,GAAG,CAAA;IAClD,2CAA2C;IAC3C,sBAAsB,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAA;IAChD,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAA;IACzC,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,OAAO,GAAG,SAAS,CAAA;IAChD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;IACvD,oCAAoC;IACpC,oBAAoB,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CACrD;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAClE,6BAA6B;IAC7B,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC/C,6DAA6D;IAC7D,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC1D,sDAAsD;IACtD,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAChC,oCAAoC;IACpC,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1D,iCAAiC;IACjC,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAA;IACrC,4BAA4B;IAC5B,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3B,wBAAwB;IACxB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAChC;AAED,wBAAgB,WAAW,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3F,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GACnC,iBAAiB,CAAC,OAAO,CAAC,CAmK5B"}
1
+ {"version":3,"file":"useTreeData.d.ts","sourceRoot":"","sources":["../../../../../table/src/composables/useTreeData.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,MAAM,WAAW,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,2BAA2B;IAC3B,MAAM,EAAE,OAAO,CAAA;IACf,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAA;IACjB,sCAAsC;IACtC,WAAW,EAAE,OAAO,CAAA;IACpB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,GAAG,CAAA;CAChB;AAED,MAAM,WAAW,kBAAkB,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,2BAA2B;IAC3B,IAAI,EAAE,MAAM,OAAO,EAAE,CAAA;IACrB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,OAAO,EAAE,CAAA;IAC1B,sEAAsE;IACtE,yBAAyB,CAAC,EAAE,MAAM,OAAO,CAAA;IACzC,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAC7C,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IACrC,uBAAuB;IACvB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,GAAG,CAAA;IAClD,gEAAgE;IAChE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAA;IAC1C,2CAA2C;IAC3C,sBAAsB,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAA;IAChD,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAA;IACzC,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,OAAO,GAAG,SAAS,CAAA;IAChD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;IACvD,oCAAoC;IACpC,oBAAoB,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CACrD;AAED,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAClE,6BAA6B;IAC7B,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC/C,6DAA6D;IAC7D,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC1D,sDAAsD;IACtD,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAChC,oCAAoC;IACpC,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1D,iCAAiC;IACjC,cAAc,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAA;IACrC,4BAA4B;IAC5B,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3B,wBAAwB;IACxB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAChC;AAED,wBAAgB,WAAW,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3F,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GACnC,iBAAiB,CAAC,OAAO,CAAC,CAgK5B"}