eco-vue-js 0.10.39 → 0.10.41

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 (158) hide show
  1. package/dist/components/ActionsBar/WActionsBar.vue.d.ts +0 -1
  2. package/dist/components/ActionsBar/WActionsBar.vue.d.ts.map +1 -1
  3. package/dist/components/ActionsBar/WActionsBar.vue.js +24 -38
  4. package/dist/components/ActionsBar/WActionsBarFilter.vue.d.ts +24 -0
  5. package/dist/components/ActionsBar/WActionsBarFilter.vue.d.ts.map +1 -0
  6. package/dist/components/ActionsBar/WActionsBarFilter.vue.js +25 -0
  7. package/dist/components/ActionsBar/WActionsBarFilter.vue2.js +5 -0
  8. package/dist/components/ActionsBar/use/useActionsBarFilter.d.ts +12 -0
  9. package/dist/components/ActionsBar/use/useActionsBarFilter.d.ts.map +1 -0
  10. package/dist/components/ActionsBar/use/useActionsBarFilter.js +20 -0
  11. package/dist/components/BottomSheet/WBottomSheet.vue.d.ts.map +1 -1
  12. package/dist/components/BottomSheet/WBottomSheet.vue.js +16 -14
  13. package/dist/components/Button/WButtonDropdown.vue.d.ts.map +1 -1
  14. package/dist/components/Button/WButtonDropdown.vue.js +2 -4
  15. package/dist/components/Button/WButtonTab.vue.d.ts +42 -0
  16. package/dist/components/Button/WButtonTab.vue.d.ts.map +1 -0
  17. package/dist/components/Button/WButtonTab.vue.js +135 -0
  18. package/dist/components/Button/WButtonTab.vue2.js +5 -0
  19. package/dist/components/DatePicker/WDatePicker.vue.d.ts.map +1 -1
  20. package/dist/components/DatePicker/WDatePicker.vue.js +4 -2
  21. package/dist/components/DatePicker/WDatePickerSingle.vue.d.ts.map +1 -1
  22. package/dist/components/DatePicker/WDatePickerSingle.vue.js +4 -2
  23. package/dist/components/DatePicker/components/CalendarDay.vue.d.ts +1 -0
  24. package/dist/components/DatePicker/components/CalendarDay.vue.d.ts.map +1 -1
  25. package/dist/components/DatePicker/components/CalendarDay.vue.js +4 -2
  26. package/dist/components/DatePicker/components/CalendarMonth.vue.d.ts +1 -0
  27. package/dist/components/DatePicker/components/CalendarMonth.vue.d.ts.map +1 -1
  28. package/dist/components/DatePicker/components/CalendarMonth.vue.js +7 -4
  29. package/dist/components/DatePicker/components/CalendarWeek.vue.d.ts +1 -0
  30. package/dist/components/DatePicker/components/CalendarWeek.vue.d.ts.map +1 -1
  31. package/dist/components/DatePicker/components/CalendarWeek.vue.js +6 -3
  32. package/dist/components/DropdownMenu/WDropdownMenu.vue.d.ts.map +1 -1
  33. package/dist/components/DropdownMenu/WDropdownMenu.vue.js +4 -6
  34. package/dist/components/DropdownMenu/types.d.ts +0 -1
  35. package/dist/components/DropdownMenu/types.d.ts.map +1 -1
  36. package/dist/components/Expansion/WExpansionItem.vue.d.ts +1 -0
  37. package/dist/components/Expansion/WExpansionItem.vue.d.ts.map +1 -1
  38. package/dist/components/Expansion/WExpansionItem.vue.js +16 -15
  39. package/dist/components/FieldWrapper/WFieldWrapper.vue.js +1 -1
  40. package/dist/components/Form/WForm.vue.d.ts.map +1 -1
  41. package/dist/components/Form/WForm.vue.js +3 -2
  42. package/dist/components/FormAsync/WFormAsyncSelect.vue.js +0 -1
  43. package/dist/components/FormAsync/WFormAsyncSelectInfiniteSingle.vue.js +0 -1
  44. package/dist/components/FormAsync/WFormAsyncSelectSingle.vue.js +0 -1
  45. package/dist/components/FormAsync/WFormAsyncSelectStringified.vue.js +0 -1
  46. package/dist/components/HeaderBar/WHeaderBar.vue.d.ts +1 -18
  47. package/dist/components/HeaderBar/WHeaderBar.vue.d.ts.map +1 -1
  48. package/dist/components/HeaderBar/WHeaderBar.vue.js +30 -79
  49. package/dist/components/HeaderBar/WHeaderBarSearch.vue.d.ts +27 -0
  50. package/dist/components/HeaderBar/WHeaderBarSearch.vue.d.ts.map +1 -0
  51. package/dist/components/HeaderBar/WHeaderBarSearch.vue.js +24 -0
  52. package/dist/components/HeaderBar/WHeaderBarSearch.vue2.js +5 -0
  53. package/dist/components/HeaderBar/use/useHeaderSearch.d.ts +10 -0
  54. package/dist/components/HeaderBar/use/useHeaderSearch.d.ts.map +1 -0
  55. package/dist/components/HeaderBar/use/useHeaderSearch.js +14 -0
  56. package/dist/components/HeaderBar/use/useHeaderSearchVisible.d.ts +5 -0
  57. package/dist/components/HeaderBar/use/useHeaderSearchVisible.d.ts.map +1 -0
  58. package/dist/components/HeaderBar/use/useHeaderSearchVisible.js +14 -0
  59. package/dist/components/InfiniteList/WInfiniteListWrapper.vue.d.ts.map +1 -1
  60. package/dist/components/InfiniteList/WInfiniteListWrapper.vue.js +12 -20
  61. package/dist/components/InfiniteList/components/InfiniteListPages.vue.js +1 -1
  62. package/dist/components/InfiniteList/use/useInfiniteListHeader.d.ts +8 -8
  63. package/dist/components/InfiniteList/use/useInfiniteListHeader.d.ts.map +1 -1
  64. package/dist/components/InfiniteList/use/useInfiniteListHeader.js +16 -3
  65. package/dist/components/Input/WInput.vue.d.ts +2 -1
  66. package/dist/components/Input/WInput.vue.d.ts.map +1 -1
  67. package/dist/components/Input/WInput.vue.js +15 -5
  68. package/dist/components/Input/WInputDate.vue.d.ts +2 -0
  69. package/dist/components/Input/WInputDate.vue.d.ts.map +1 -1
  70. package/dist/components/Input/WInputDate.vue.js +0 -1
  71. package/dist/components/Input/WInputOptions.vue.js +0 -1
  72. package/dist/components/Input/WInputSuggest.vue.d.ts +1 -0
  73. package/dist/components/Input/WInputSuggest.vue.d.ts.map +1 -1
  74. package/dist/components/Input/WInputSuggest.vue.js +5 -3
  75. package/dist/components/List/WList.vue.d.ts +11 -2
  76. package/dist/components/List/WList.vue.d.ts.map +1 -1
  77. package/dist/components/List/WList.vue.js +266 -228
  78. package/dist/components/List/WListHeader.vue.js +1 -1
  79. package/dist/components/List/WListHeaderItem.vue.d.ts +6 -2
  80. package/dist/components/List/WListHeaderItem.vue.d.ts.map +1 -1
  81. package/dist/components/List/WListHeaderItem.vue.js +22 -10
  82. package/dist/components/List/components/HeaderSort.vue.d.ts +3 -1
  83. package/dist/components/List/components/HeaderSort.vue.d.ts.map +1 -1
  84. package/dist/components/List/components/HeaderSort.vue.js +4 -3
  85. package/dist/components/List/components/HeaderSortItem.vue.d.ts +7 -5
  86. package/dist/components/List/components/HeaderSortItem.vue.d.ts.map +1 -1
  87. package/dist/components/List/components/HeaderSortItem.vue.js +23 -10
  88. package/dist/components/List/components/ListFilterGlobal.vue.d.ts +25 -0
  89. package/dist/components/List/components/ListFilterGlobal.vue.d.ts.map +1 -0
  90. package/dist/components/List/components/ListFilterGlobal.vue.js +154 -0
  91. package/dist/components/List/components/ListFilterGlobal.vue2.js +5 -0
  92. package/dist/components/List/components/ListFilterGlobalItem.vue.d.ts +29 -0
  93. package/dist/components/List/components/ListFilterGlobalItem.vue.d.ts.map +1 -0
  94. package/dist/components/List/components/ListFilterGlobalItem.vue.js +49 -0
  95. package/dist/components/List/components/ListFilterGlobalItem.vue2.js +5 -0
  96. package/dist/components/List/components/ListFilterLocal.vue.d.ts +23 -0
  97. package/dist/components/List/components/ListFilterLocal.vue.d.ts.map +1 -0
  98. package/dist/components/List/components/ListFilterLocal.vue.js +148 -0
  99. package/dist/components/List/components/ListFilterLocal.vue2.js +5 -0
  100. package/dist/components/List/components/ListFilterSelect.vue.d.ts +21 -0
  101. package/dist/components/List/components/ListFilterSelect.vue.d.ts.map +1 -0
  102. package/dist/components/List/components/ListFilterSelect.vue.js +72 -0
  103. package/dist/components/List/components/ListFilterSelect.vue2.js +5 -0
  104. package/dist/components/List/models/utils.d.ts +3 -0
  105. package/dist/components/List/models/utils.d.ts.map +1 -0
  106. package/dist/components/List/models/utils.js +7 -0
  107. package/dist/components/List/types.d.ts +11 -0
  108. package/dist/components/List/types.d.ts.map +1 -1
  109. package/dist/components/Modal/WModal.vue.d.ts.map +1 -1
  110. package/dist/components/Modal/WModal.vue.js +8 -7
  111. package/dist/components/Modal/WModalStepper.vue.d.ts +28 -52
  112. package/dist/components/Modal/WModalStepper.vue.d.ts.map +1 -1
  113. package/dist/components/Modal/WModalWrapper.vue.d.ts +102 -0
  114. package/dist/components/Modal/WModalWrapper.vue.d.ts.map +1 -1
  115. package/dist/components/Modal/WModalWrapper.vue.js +15 -5
  116. package/dist/components/Modal/models/injection.d.ts +1 -1
  117. package/dist/components/Modal/models/injection.d.ts.map +1 -1
  118. package/dist/components/Modal/models/injection.js +2 -2
  119. package/dist/components/Nav/WNavBar.vue.d.ts.map +1 -1
  120. package/dist/components/Nav/WNavBar.vue.js +13 -8
  121. package/dist/components/Select/WSelect.vue.d.ts.map +1 -1
  122. package/dist/components/Select/WSelect.vue.js +1 -1
  123. package/dist/components/Select/WSelectAsync.vue.d.ts.map +1 -1
  124. package/dist/components/Select/WSelectAsync.vue.js +6 -2
  125. package/dist/components/Select/WSelectAsyncList.vue.d.ts +2 -2
  126. package/dist/components/Select/WSelectAsyncSingle.vue.js +0 -1
  127. package/dist/components/Select/WSelectSingle.vue.js +0 -1
  128. package/dist/components/Select/WSelectStringified.vue.js +0 -1
  129. package/dist/components/Select/components/SelectAsyncList.vue.d.ts +2 -2
  130. package/dist/components/Tabs/WTabs.vue.d.ts +18 -45
  131. package/dist/components/Tabs/WTabs.vue.d.ts.map +1 -1
  132. package/dist/components/Tabs/WTabs.vue.js +9 -18
  133. package/dist/components/Tabs/components/TabItem.vue.d.ts +1 -1
  134. package/dist/components/Tabs/components/TabItem.vue.d.ts.map +1 -1
  135. package/dist/components/Tabs/components/TabTitleButton.vue.d.ts +2 -14
  136. package/dist/components/Tabs/components/TabTitleButton.vue.d.ts.map +1 -1
  137. package/dist/components/Tabs/components/TabTitleButton.vue.js +19 -119
  138. package/dist/components/Tabs/types.d.ts +2 -1
  139. package/dist/components/Tabs/types.d.ts.map +1 -1
  140. package/dist/imports/componentsPlugin.d.ts +4 -1
  141. package/dist/imports/componentsPlugin.d.ts.map +1 -1
  142. package/dist/main.js +6 -3
  143. package/dist/types/global.d.ts +19 -4
  144. package/dist/utils/api.d.ts +14 -0
  145. package/dist/utils/api.d.ts.map +1 -1
  146. package/dist/utils/api.js +46 -2
  147. package/dist/utils/dateTime.d.ts +1 -0
  148. package/dist/utils/dateTime.d.ts.map +1 -1
  149. package/dist/utils/dateTime.js +4 -1
  150. package/dist/utils/utils.d.ts +16 -1
  151. package/dist/utils/utils.d.ts.map +1 -1
  152. package/dist/utils/utils.js +42 -1
  153. package/package.json +10 -1
  154. package/tailwind-base/plugins/default.ts +7 -4
  155. package/tailwind-base/theme/sizes.ts +6 -0
  156. package/dist/components/List/use/useOrdering.d.ts +0 -7
  157. package/dist/components/List/use/useOrdering.d.ts.map +0 -1
  158. package/dist/components/List/use/useOrdering.js +0 -36
@@ -1,17 +1,20 @@
1
- import { defineComponent, ref, computed, toRef, createElementBlock, openBlock, normalizeClass, unref, createVNode, normalizeStyle, withCtx, renderSlot, createCommentVNode, createSlots, createBlock, resolveDynamicComponent, Fragment, renderList, isRef } from 'vue';
2
- import _sfc_main$4 from '../Button/WButtonSelection.vue.js';
3
- import _sfc_main$1 from '../InfiniteList/WInfiniteList.vue.js';
1
+ import { defineComponent, ref, computed, toRef, watch, createElementBlock, openBlock, Fragment, createCommentVNode, createElementVNode, createBlock, normalizeClass, unref, createVNode, normalizeStyle, withCtx, renderSlot, createSlots, resolveDynamicComponent, renderList, isRef } from 'vue';
2
+ import _sfc_main$6 from '../Button/WButtonSelection.vue.js';
3
+ import _sfc_main$3 from '../InfiniteList/WInfiniteList.vue.js';
4
4
  import { useIsMobile } from '../../utils/mobile.js';
5
- import { parseOrdering } from '../../utils/order.js';
5
+ import { parseOrdering, encodeOrdering } from '../../utils/order.js';
6
6
  import { PAGE_LENGTH } from '../../utils/useDefaultQuery.js';
7
7
  import { useSelected } from '../../utils/useSelected.js';
8
- import _sfc_main$2 from './WListCard.vue.js';
9
- import _sfc_main$7 from './WListHeader.vue.js';
10
- import _sfc_main$9 from './WListHeaderItem.vue.js';
11
- import _sfc_main$8 from './components/HeaderFieldNested.vue.js';
12
- import _sfc_main$6 from './components/HeaderSettings.vue.js';
13
- import _sfc_main$5 from './components/HeaderSort.vue.js';
14
- import _sfc_main$3 from './components/ListCardFieldNested.vue.js';
8
+ import { BASE_ZINDEX_DROPDOWN } from '../../utils/utils.js';
9
+ import _sfc_main$4 from './WListCard.vue.js';
10
+ import _sfc_main$9 from './WListHeader.vue.js';
11
+ import _sfc_main$b from './WListHeaderItem.vue.js';
12
+ import _sfc_main$a from './components/HeaderFieldNested.vue.js';
13
+ import _sfc_main$8 from './components/HeaderSettings.vue.js';
14
+ import _sfc_main$7 from './components/HeaderSort.vue.js';
15
+ import _sfc_main$5 from './components/ListCardFieldNested.vue.js';
16
+ import _sfc_main$1 from './components/ListFilterGlobal.vue.js';
17
+ import _sfc_main$2 from './components/ListFilterLocal.vue.js';
15
18
  import { filterFields, useListConfig, getFirstFieldLabel } from './use/useListConfig.js';
16
19
 
17
20
  const _hoisted_1 = {
@@ -49,11 +52,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
49
52
  cardColumns: {},
50
53
  cardAreas: {},
51
54
  cardTo: { type: Function },
52
- hasAction: { type: Boolean }
55
+ hasAction: { type: Boolean },
56
+ filter: {},
57
+ filterSearch: {},
58
+ disabledFilterFields: {},
59
+ search: { type: Boolean },
60
+ global: { type: Boolean }
53
61
  },
54
- emits: ["update:error", "click:action"],
55
- setup(__props) {
62
+ emits: ["update:error", "click:action", "update:query-params", "update:count"],
63
+ setup(__props, { emit: __emit }) {
56
64
  const props = __props;
65
+ const emit = __emit;
57
66
  const { isMobile } = useIsMobile();
58
67
  const listCount = ref(void 0);
59
68
  const countValue = computed(() => props.count ?? listCount.value);
@@ -97,6 +106,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
97
106
  }
98
107
  return [];
99
108
  });
109
+ const updateOrdering = (value) => {
110
+ const ordering2 = encodeOrdering(value);
111
+ if (props.queryParams instanceof Object && "ordering" in props.queryParams && ordering2 === props.queryParams.ordering) return;
112
+ emit("update:query-params", { ordering: ordering2 });
113
+ };
100
114
  const getQueryParamsBulk = () => {
101
115
  const queryParamsSelection = getQueryParams();
102
116
  if (queryParamsSelection) return {
@@ -114,234 +128,258 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
114
128
  maxWidth: value
115
129
  };
116
130
  };
131
+ watch(countValue, (value) => emit("update:count", value), { immediate: true });
117
132
  return (_ctx, _cache) => {
118
- return openBlock(), createElementBlock("div", {
119
- class: normalizeClass({
120
- "w-card": unref(isGrid),
121
- "w-list": !unref(isGrid)
122
- })
123
- }, [
124
- createVNode(_sfc_main$1, {
125
- "use-query-fn": _ctx.useQueryFn,
126
- "query-params": _ctx.queryParams,
127
- "query-options": _ctx.queryOptions,
128
- "skeleton-length": _ctx.count ?? listCount.value ?? unref(PAGE_LENGTH),
129
- "hide-page-title": "",
130
- "page-length": unref(PAGE_LENGTH),
131
- count: _ctx.count ?? listCount.value,
132
- "page-class": unref(isGrid) ? "grid grid-cols-[repeat(auto-fill,minmax(var(--w-list-card-width,16rem),1fr))] gap-[--w-list-gap,0]" : "grid grid-cols-1 gap-[--w-list-gap,0]",
133
- style: normalizeStyle(cardStyles.value),
134
- class: normalizeClass(_ctx.$attrs.class),
135
- "onUpdate:count": _cache[2] || (_cache[2] = ($event) => listCount.value = $event),
136
- "onUpdate:error": _cache[3] || (_cache[3] = ($event) => _ctx.$emit("update:error", $event))
137
- }, {
138
- header: withCtx(({ updateHeaderHeight }) => [
139
- renderSlot(_ctx.$slots, "header", { count: listCount.value }),
140
- createVNode(_sfc_main$4, {
141
- title: _ctx.selectionTitle,
142
- "disable-message": _ctx.bulkDisableMessage,
143
- "selected-count": unref(selectionCount),
144
- class: "z-[2]",
145
- "onClear:selection": unref(resetSelection)
146
- }, createSlots({
147
- settings: withCtx(() => [
148
- _ctx.$slots.selection ? renderSlot(_ctx.$slots, "selection", { key: 0 }) : (openBlock(), createElementBlock("div", _hoisted_1, [
149
- !_ctx.noOrdering ? (openBlock(), createBlock(_sfc_main$5, {
150
- key: 0,
151
- ordering: ordering.value,
152
- fields: fieldsFiltered.value,
153
- "query-params": _ctx.queryParams,
154
- class: "border-r border-solid border-gray-300 dark:border-gray-700"
155
- }, null, 8, ["ordering", "fields", "query-params"])) : createCommentVNode("", true),
156
- createVNode(_sfc_main$6, {
157
- "field-config-map": unref(fieldConfigMap),
158
- "onUpdate:fieldConfigMap": _cache[0] || (_cache[0] = ($event) => isRef(fieldConfigMap) ? fieldConfigMap.value = $event : null),
159
- mode: unref(listConfig).mode,
160
- fields: fieldsVisible.value,
161
- "query-params": _ctx.queryParams,
162
- "has-saved": unref(hasSaved),
163
- mobile: unref(isMobile),
164
- "onClick:reset": unref(reset),
165
- "onUpdate:mode": unref(updateMode)
166
- }, null, 8, ["field-config-map", "mode", "fields", "query-params", "has-saved", "mobile", "onClick:reset", "onUpdate:mode"])
167
- ]))
168
- ]),
169
- _: 2
170
- }, [
171
- _ctx.bulk ? {
172
- name: "default",
173
- fn: withCtx(({ disableMessage, cssClass }) => [
174
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.bulk, (item, index) => {
175
- return openBlock(), createBlock(resolveDynamicComponent(item), {
176
- key: index,
177
- "selection-count": unref(selectionCount),
178
- "query-params-getter": getQueryParamsBulk,
179
- "disable-message": disableMessage,
180
- readonly: _ctx.readonly ?? false,
181
- class: normalizeClass(cssClass),
182
- "onClear:selected": unref(resetSelection)
183
- }, null, 40, ["selection-count", "disable-message", "readonly", "class", "onClear:selected"]);
184
- }), 128))
185
- ]),
186
- key: "0"
187
- } : void 0,
188
- _ctx.bulk && _ctx.bulkMore ? {
189
- name: "more",
190
- fn: withCtx((scope) => [
191
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.bulkMore, (item, index) => {
192
- return openBlock(), createBlock(resolveDynamicComponent(item), {
193
- key: index,
194
- "selection-count": unref(selectionCount),
195
- "query-params-getter": getQueryParamsBulk,
196
- "disable-message": scope?.disableMessage,
197
- readonly: _ctx.readonly ?? false,
198
- class: normalizeClass(scope?.cssClass),
199
- "onClear:selected": unref(resetSelection)
200
- }, null, 40, ["selection-count", "disable-message", "readonly", "class", "onClear:selected"]);
201
- }), 128))
202
- ]),
203
- key: "1"
204
- } : void 0
205
- ]), 1032, ["title", "disable-message", "selected-count", "onClear:selection"]),
206
- !unref(isGrid) ? (openBlock(), createBlock(_sfc_main$7, {
207
- key: 0,
208
- class: "sm-not:hidden mb-[--w-list-gap,1rem]",
209
- "allow-select": allowSelect.value,
210
- "tooltip-text": _ctx.selectAllTextGetter(unref(selectAllValue) !== true, _ctx.count ?? listCount.value ?? 0),
211
- "hide-more": !_ctx.menu,
212
- count: _ctx.count ?? listCount.value,
213
- selection: unref(selectAllValue),
214
- "onToggle:selection": _cache[1] || (_cache[1] = ($event) => $event ? unref(selectAll)() : unref(resetSelection)()),
215
- "onUpdate:header": updateHeaderHeight
216
- }, {
217
- default: withCtx(() => [
218
- createVNode(_sfc_main$8, { fields: fieldsFiltered.value }, {
219
- default: withCtx(({ field, nested }) => [
220
- createVNode(_sfc_main$9, {
221
- title: typeof field.title === "string" ? field.title : field.title(_ctx.queryParams),
222
- field: typeof field.field === "string" ? field.field : field.field?.(_ctx.queryParams),
223
- class: normalizeClass(field.cssClass),
133
+ return openBlock(), createElementBlock(Fragment, null, [
134
+ _ctx.filter || _ctx.search ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
135
+ _ctx.global ? (openBlock(), createBlock(_sfc_main$1, {
136
+ key: 0,
137
+ filter: _ctx.filter,
138
+ "filter-search": _ctx.filterSearch,
139
+ "query-params": _ctx.queryParams,
140
+ search: _ctx.search === true,
141
+ "disabled-filter-fields": _ctx.disabledFilterFields ?? [],
142
+ "onUpdate:queryParams": _cache[0] || (_cache[0] = ($event) => _ctx.$emit("update:query-params", $event))
143
+ }, null, 8, ["filter", "filter-search", "query-params", "search", "disabled-filter-fields"])) : (openBlock(), createBlock(_sfc_main$2, {
144
+ key: 1,
145
+ filter: _ctx.filter,
146
+ "filter-search": _ctx.filterSearch,
147
+ "query-params": _ctx.queryParams,
148
+ search: _ctx.search === true,
149
+ "disabled-filter-fields": _ctx.disabledFilterFields ?? [],
150
+ "onUpdate:queryParams": _cache[1] || (_cache[1] = ($event) => _ctx.$emit("update:query-params", $event))
151
+ }, null, 8, ["filter", "filter-search", "query-params", "search", "disabled-filter-fields"]))
152
+ ], 64)) : createCommentVNode("", true),
153
+ createElementVNode("div", {
154
+ class: normalizeClass({
155
+ "w-card": unref(isGrid),
156
+ "w-list": !unref(isGrid)
157
+ })
158
+ }, [
159
+ createVNode(_sfc_main$3, {
160
+ "use-query-fn": _ctx.useQueryFn,
161
+ "query-params": _ctx.queryParams,
162
+ "query-options": _ctx.queryOptions,
163
+ "skeleton-length": _ctx.count ?? listCount.value ?? unref(PAGE_LENGTH),
164
+ "hide-page-title": "",
165
+ "page-length": unref(PAGE_LENGTH),
166
+ count: _ctx.count ?? listCount.value,
167
+ "page-class": unref(isGrid) ? "grid grid-cols-[repeat(auto-fill,minmax(var(--w-list-card-width,16rem),1fr))] gap-[--w-list-gap,0]" : "grid grid-cols-1 gap-[--w-list-gap,0]",
168
+ style: normalizeStyle(cardStyles.value),
169
+ class: normalizeClass(_ctx.$attrs.class),
170
+ "onUpdate:count": _cache[4] || (_cache[4] = ($event) => listCount.value = $event),
171
+ "onUpdate:error": _cache[5] || (_cache[5] = ($event) => _ctx.$emit("update:error", $event))
172
+ }, {
173
+ header: withCtx(({ updateHeaderHeight }) => [
174
+ renderSlot(_ctx.$slots, "header", { count: listCount.value }),
175
+ createVNode(_sfc_main$6, {
176
+ title: _ctx.selectionTitle,
177
+ "disable-message": _ctx.bulkDisableMessage,
178
+ "selected-count": unref(selectionCount),
179
+ style: normalizeStyle({ zIndex: unref(BASE_ZINDEX_DROPDOWN) }),
180
+ "onClear:selection": unref(resetSelection)
181
+ }, createSlots({
182
+ settings: withCtx(() => [
183
+ _ctx.$slots.selection ? renderSlot(_ctx.$slots, "selection", { key: 0 }) : (openBlock(), createElementBlock("div", _hoisted_1, [
184
+ !_ctx.noOrdering ? (openBlock(), createBlock(_sfc_main$7, {
185
+ key: 0,
224
186
  ordering: ordering.value,
225
- disabled: _ctx.noOrdering || !field.field,
226
- "allow-resize": field.allowResize,
227
- "item-class": field.cssClassHeader,
228
- "width-style": getFieldStyles(field.label, nested),
229
- "onUpdate:width": ($event) => unref(fieldConfigMap)[field.label].width = $event,
230
- "onSave:width": unref(save)
231
- }, null, 8, ["title", "field", "class", "ordering", "disabled", "allow-resize", "item-class", "width-style", "onUpdate:width", "onSave:width"])
187
+ fields: fieldsFiltered.value,
188
+ "query-params": _ctx.queryParams,
189
+ class: "border-r border-solid border-gray-300 dark:border-gray-700",
190
+ "onUpdate:ordering": updateOrdering
191
+ }, null, 8, ["ordering", "fields", "query-params"])) : createCommentVNode("", true),
192
+ createVNode(_sfc_main$8, {
193
+ "field-config-map": unref(fieldConfigMap),
194
+ "onUpdate:fieldConfigMap": _cache[2] || (_cache[2] = ($event) => isRef(fieldConfigMap) ? fieldConfigMap.value = $event : null),
195
+ mode: unref(listConfig).mode,
196
+ fields: fieldsVisible.value,
197
+ "query-params": _ctx.queryParams,
198
+ "has-saved": unref(hasSaved),
199
+ mobile: unref(isMobile),
200
+ "onClick:reset": unref(reset),
201
+ "onUpdate:mode": unref(updateMode)
202
+ }, null, 8, ["field-config-map", "mode", "fields", "query-params", "has-saved", "mobile", "onClick:reset", "onUpdate:mode"])
203
+ ]))
204
+ ]),
205
+ _: 2
206
+ }, [
207
+ _ctx.bulk ? {
208
+ name: "default",
209
+ fn: withCtx(({ disableMessage, cssClass }) => [
210
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.bulk, (item, index) => {
211
+ return openBlock(), createBlock(resolveDynamicComponent(item), {
212
+ key: index,
213
+ "selection-count": unref(selectionCount),
214
+ "query-params-getter": getQueryParamsBulk,
215
+ "disable-message": disableMessage,
216
+ readonly: _ctx.readonly ?? false,
217
+ class: normalizeClass(cssClass),
218
+ "onClear:selected": unref(resetSelection)
219
+ }, null, 40, ["selection-count", "disable-message", "readonly", "class", "onClear:selected"]);
220
+ }), 128))
232
221
  ]),
233
- _: 1
234
- }, 8, ["fields"])
235
- ]),
236
- _: 2
237
- }, 1032, ["allow-select", "tooltip-text", "hide-more", "count", "selection", "onUpdate:header"])) : createCommentVNode("", true)
238
- ]),
239
- default: withCtx(({ item, skeleton, setter, refetch, previous, index, position, value }) => [
240
- _ctx.groupBy && (index === 0 || !skeleton && (!previous || !_ctx.groupBy(item, previous))) ? renderSlot(_ctx.$slots, "group", {
241
- key: 0,
242
- item,
243
- previous,
244
- skeleton
245
- }) : createCommentVNode("", true),
246
- createVNode(_sfc_main$2, {
247
- disabled: skeleton,
248
- "disable-more": _ctx.disableMore,
249
- mobile: unref(isMobile),
250
- "card-class": _ctx.cardClass,
251
- "card-wrapper-class": _ctx.cardWrapperClass,
252
- "has-border": _ctx.hasBorder,
253
- "allow-open": allowOpen.value && !skeleton,
254
- "align-top": _ctx.alignTop,
255
- "form-name": skeleton ? void 0 : _ctx.formNameGetter?.(item),
256
- card: unref(isGrid),
257
- to: skeleton ? void 0 : _ctx.cardTo?.(item),
258
- "has-action": _ctx.hasAction,
259
- skeleton,
260
- selected: skeleton ? false : unref(getIsSelected)(value, position),
261
- "allow-select": allowSelect.value,
262
- "allow-select-hover": unref(allowSelectHover),
263
- "onToggle:selected": ($event) => unref(toggleSelected)(value, position),
264
- "onHover:selected": ($event) => unref(hoverSelected)(position),
265
- "onClick:action": ($event) => _ctx.$emit("click:action", { item, setter })
266
- }, createSlots({
267
- default: withCtx(({ validate }) => [
268
- createVNode(_sfc_main$3, {
269
- fields: fieldsFiltered.value,
270
- item,
271
- skeleton,
272
- card: unref(isGrid)
273
- }, {
274
- default: withCtx((defaultScope) => [
275
- (openBlock(), createBlock(resolveDynamicComponent(defaultScope.field.component), {
276
- item: defaultScope.item,
277
- readonly: _ctx.readonly || (_ctx.readonlyGetter?.(defaultScope.item) ?? false),
278
- skeleton,
279
- card: unref(isGrid),
280
- class: normalizeClass({
281
- [defaultScope.field.cssClass ?? ""]: true,
282
- "items-center": !_ctx.alignTop,
283
- "items-start": _ctx.alignTop,
284
- "pr-6": !unref(isGrid)
285
- }),
286
- style: normalizeStyle(getFieldStyles(defaultScope.field.label, defaultScope.nested)),
287
- "onUpdate:item": setter,
288
- "onDelete:item": ($event) => {
289
- setter();
290
- refetch();
291
- },
292
- onValidate: ($event) => validate()
293
- }, null, 40, ["item", "readonly", "skeleton", "card", "class", "style", "onUpdate:item", "onDelete:item", "onValidate"]))
222
+ key: "0"
223
+ } : void 0,
224
+ _ctx.bulk && _ctx.bulkMore ? {
225
+ name: "more",
226
+ fn: withCtx((scope) => [
227
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.bulkMore, (item, index) => {
228
+ return openBlock(), createBlock(resolveDynamicComponent(item), {
229
+ key: index,
230
+ "selection-count": unref(selectionCount),
231
+ "query-params-getter": getQueryParamsBulk,
232
+ "disable-message": scope?.disableMessage,
233
+ readonly: _ctx.readonly ?? false,
234
+ class: normalizeClass(scope?.cssClass),
235
+ "onClear:selected": unref(resetSelection)
236
+ }, null, 40, ["selection-count", "disable-message", "readonly", "class", "onClear:selected"]);
237
+ }), 128))
294
238
  ]),
295
- _: 2
296
- }, 1032, ["fields", "item", "skeleton", "card"])
297
- ]),
298
- _: 2
299
- }, [
300
- _ctx.expansion ? {
301
- name: "expansion",
302
- fn: withCtx(() => [
303
- (openBlock(), createBlock(resolveDynamicComponent(_ctx.expansion), {
239
+ key: "1"
240
+ } : void 0
241
+ ]), 1032, ["title", "disable-message", "selected-count", "style", "onClear:selection"]),
242
+ !unref(isGrid) ? (openBlock(), createBlock(_sfc_main$9, {
243
+ key: 0,
244
+ class: "sm-not:hidden",
245
+ "allow-select": allowSelect.value,
246
+ "tooltip-text": _ctx.selectAllTextGetter(unref(selectAllValue) !== true, _ctx.count ?? listCount.value ?? 0),
247
+ "hide-more": !_ctx.menu,
248
+ count: _ctx.count ?? listCount.value,
249
+ selection: unref(selectAllValue),
250
+ "onToggle:selection": _cache[3] || (_cache[3] = ($event) => $event ? unref(selectAll)() : unref(resetSelection)()),
251
+ "onUpdate:header": updateHeaderHeight
252
+ }, {
253
+ default: withCtx(() => [
254
+ createVNode(_sfc_main$a, { fields: fieldsFiltered.value }, {
255
+ default: withCtx(({ field, nested }) => [
256
+ createVNode(_sfc_main$b, {
257
+ title: typeof field.title === "string" ? field.title : field.title(_ctx.queryParams),
258
+ field: typeof field.field === "string" ? field.field : field.field?.(_ctx.queryParams),
259
+ class: normalizeClass(field.cssClass),
260
+ ordering: ordering.value,
261
+ disabled: _ctx.noOrdering || !field.field,
262
+ "allow-resize": field.allowResize,
263
+ "item-class": field.cssClassHeader,
264
+ "width-style": getFieldStyles(field.label, nested),
265
+ "onUpdate:width": ($event) => unref(fieldConfigMap)[field.label].width = $event,
266
+ "onSave:width": unref(save),
267
+ "onUpdate:ordering": updateOrdering
268
+ }, null, 8, ["title", "field", "class", "ordering", "disabled", "allow-resize", "item-class", "width-style", "onUpdate:width", "onSave:width"])
269
+ ]),
270
+ _: 1
271
+ }, 8, ["fields"])
272
+ ]),
273
+ _: 2
274
+ }, 1032, ["allow-select", "tooltip-text", "hide-more", "count", "selection", "onUpdate:header"])) : createCommentVNode("", true)
275
+ ]),
276
+ default: withCtx(({ item, skeleton, setter, refetch, previous, index, position, value }) => [
277
+ _ctx.groupBy && (index === 0 || !skeleton && (!previous || !_ctx.groupBy(item, previous))) ? renderSlot(_ctx.$slots, "group", {
278
+ key: 0,
279
+ item,
280
+ previous,
281
+ skeleton
282
+ }) : createCommentVNode("", true),
283
+ createVNode(_sfc_main$4, {
284
+ disabled: skeleton,
285
+ "disable-more": _ctx.disableMore,
286
+ mobile: unref(isMobile),
287
+ "card-class": _ctx.cardClass,
288
+ "card-wrapper-class": _ctx.cardWrapperClass,
289
+ "has-border": _ctx.hasBorder,
290
+ "allow-open": allowOpen.value && !skeleton,
291
+ "align-top": _ctx.alignTop,
292
+ "form-name": skeleton ? void 0 : _ctx.formNameGetter?.(item),
293
+ card: unref(isGrid),
294
+ to: skeleton ? void 0 : _ctx.cardTo?.(item),
295
+ "has-action": _ctx.hasAction,
296
+ skeleton,
297
+ selected: skeleton ? false : unref(getIsSelected)(value, position),
298
+ "allow-select": allowSelect.value,
299
+ "allow-select-hover": unref(allowSelectHover),
300
+ "onToggle:selected": ($event) => unref(toggleSelected)(value, position),
301
+ "onHover:selected": ($event) => unref(hoverSelected)(position),
302
+ "onClick:action": ($event) => _ctx.$emit("click:action", { item, setter })
303
+ }, createSlots({
304
+ default: withCtx(({ validate }) => [
305
+ createVNode(_sfc_main$5, {
306
+ fields: fieldsFiltered.value,
304
307
  item,
305
- readonly: _ctx.readonly || (_ctx.readonlyGetter?.(item) ?? false),
306
308
  skeleton,
307
- card: unref(isGrid),
308
- "onUpdate:item": setter,
309
- "onDelete:item": ($event) => {
310
- setter();
311
- refetch();
312
- }
313
- }, null, 40, ["item", "readonly", "skeleton", "card", "onUpdate:item", "onDelete:item"]))
309
+ card: unref(isGrid)
310
+ }, {
311
+ default: withCtx((defaultScope) => [
312
+ (openBlock(), createBlock(resolveDynamicComponent(defaultScope.field.component), {
313
+ item: defaultScope.item,
314
+ readonly: _ctx.readonly || (_ctx.readonlyGetter?.(defaultScope.item) ?? false),
315
+ skeleton,
316
+ card: unref(isGrid),
317
+ class: normalizeClass({
318
+ [defaultScope.field.cssClass ?? ""]: true,
319
+ "items-center": !_ctx.alignTop,
320
+ "items-start": _ctx.alignTop,
321
+ "pr-6": !unref(isGrid)
322
+ }),
323
+ style: normalizeStyle(getFieldStyles(defaultScope.field.label, defaultScope.nested)),
324
+ "onUpdate:item": setter,
325
+ "onDelete:item": ($event) => {
326
+ setter();
327
+ refetch();
328
+ },
329
+ onValidate: ($event) => validate()
330
+ }, null, 40, ["item", "readonly", "skeleton", "card", "class", "style", "onUpdate:item", "onDelete:item", "onValidate"]))
331
+ ]),
332
+ _: 2
333
+ }, 1032, ["fields", "item", "skeleton", "card"])
314
334
  ]),
315
- key: "0"
316
- } : void 0,
317
- _ctx.menu ? {
318
- name: "more",
319
- fn: withCtx(() => [
320
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.menu, (menuItem, menuIndex) => {
321
- return openBlock(), createBlock(resolveDynamicComponent(menuItem), {
322
- key: menuIndex,
335
+ _: 2
336
+ }, [
337
+ _ctx.expansion ? {
338
+ name: "expansion",
339
+ fn: withCtx(() => [
340
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.expansion), {
323
341
  item,
324
342
  readonly: _ctx.readonly || (_ctx.readonlyGetter?.(item) ?? false),
325
- "update-item": setter,
326
- "delete-item": () => {
327
- setter();
328
- refetch();
329
- },
343
+ skeleton,
344
+ card: unref(isGrid),
330
345
  "onUpdate:item": setter,
331
346
  "onDelete:item": ($event) => {
332
347
  setter();
333
348
  refetch();
334
349
  }
335
- }, null, 40, ["item", "readonly", "update-item", "delete-item", "onUpdate:item", "onDelete:item"]);
336
- }), 128))
337
- ]),
338
- key: "1"
339
- } : void 0
340
- ]), 1032, ["disabled", "disable-more", "mobile", "card-class", "card-wrapper-class", "has-border", "allow-open", "align-top", "form-name", "card", "to", "has-action", "skeleton", "selected", "allow-select", "allow-select-hover", "onToggle:selected", "onHover:selected", "onClick:action"])
341
- ]),
342
- _: 3
343
- }, 8, ["use-query-fn", "query-params", "query-options", "skeleton-length", "page-length", "count", "page-class", "style", "class"])
344
- ], 2);
350
+ }, null, 40, ["item", "readonly", "skeleton", "card", "onUpdate:item", "onDelete:item"]))
351
+ ]),
352
+ key: "0"
353
+ } : void 0,
354
+ _ctx.menu ? {
355
+ name: "more",
356
+ fn: withCtx(() => [
357
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.menu, (menuItem, menuIndex) => {
358
+ return openBlock(), createBlock(resolveDynamicComponent(menuItem), {
359
+ key: menuIndex,
360
+ item,
361
+ readonly: _ctx.readonly || (_ctx.readonlyGetter?.(item) ?? false),
362
+ "update-item": setter,
363
+ "delete-item": () => {
364
+ setter();
365
+ refetch();
366
+ },
367
+ "onUpdate:item": setter,
368
+ "onDelete:item": ($event) => {
369
+ setter();
370
+ refetch();
371
+ }
372
+ }, null, 40, ["item", "readonly", "update-item", "delete-item", "onUpdate:item", "onDelete:item"]);
373
+ }), 128))
374
+ ]),
375
+ key: "1"
376
+ } : void 0
377
+ ]), 1032, ["disabled", "disable-more", "mobile", "card-class", "card-wrapper-class", "has-border", "allow-open", "align-top", "form-name", "card", "to", "has-action", "skeleton", "selected", "allow-select", "allow-select-hover", "onToggle:selected", "onHover:selected", "onClick:action"])
378
+ ]),
379
+ _: 3
380
+ }, 8, ["use-query-fn", "query-params", "query-options", "skeleton-length", "page-length", "count", "page-class", "style", "class"])
381
+ ], 2)
382
+ ], 64);
345
383
  };
346
384
  }
347
385
  });
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, onMounted, onUnmounted, createElementBlock, openBlock, createElementVNode, normalizeClass, createBlock, createCommentVNode, renderSlot } from 'vue';
2
2
  import _sfc_main$1 from '../Checkbox/WCheckbox.vue.js';
3
3
 
4
- const _hoisted_1 = { class: "flex h-[--w-list-header-height,3rem]" };
4
+ const _hoisted_1 = { class: "flex h-[--w-list-header-height,2rem]" };
5
5
  const _hoisted_2 = { class: "-left--left-inner bg-default dark:bg-default-dark sticky z-[1]" };
6
6
  const _hoisted_3 = { class: "bg-primary-light dark:bg-primary-darkest flex flex-1 border-y border-solid border-gray-300 dark:border-gray-700" };
7
7
  const _hoisted_4 = { class: "-right--right-inner bg-default dark:bg-default-dark sticky z-[1]" };
@@ -3,7 +3,8 @@ import { OrderItem } from '../../utils/order';
3
3
  declare const _default: <Field>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
4
  props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
5
5
  readonly "onUpdate:width"?: ((value: number) => any) | undefined;
6
- } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>, "onUpdate:width"> & {
6
+ readonly "onUpdate:ordering"?: ((value: OrderItem<Field>[]) => any) | undefined;
7
+ } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>, "onUpdate:width" | "onUpdate:ordering"> & {
7
8
  title?: string;
8
9
  field: Field;
9
10
  ordering: OrderItem<Field>[];
@@ -17,7 +18,10 @@ declare const _default: <Field>(__VLS_props: NonNullable<Awaited<typeof __VLS_se
17
18
  slots: {
18
19
  default?(_: {}): any;
19
20
  };
20
- emit: (e: "update:width", value: number) => void;
21
+ emit: {
22
+ (e: "update:width", value: number): void;
23
+ (e: "update:ordering", value: OrderItem<Field>[]): void;
24
+ };
21
25
  }>) => import('vue').VNode & {
22
26
  __ctx?: Awaited<typeof __VLS_setup>;
23
27
  };
@@ -1 +1 @@
1
- {"version":3,"file":"WListHeaderItem.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/List/WListHeaderItem.vue"],"names":[],"mappings":"AAwDA;AAiGA,OAAO,EAAC,KAAK,UAAU,EAAwC,MAAM,KAAK,CAAA;AAI1E,OAAO,EAAC,KAAK,SAAS,EAAC,MAAM,eAAe,CAAA;yBAK3B,KAAK,EACrB,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WA+LO,mBAAmB,CAAC;;;gBA7LlB,MAAM;eACP,KAAK;kBACF,SAAS,CAAC,KAAK,CAAC,EAAE;mBACjB,OAAO;sBACJ,OAAO;oBACT,MAAM;oBACN,UAAU,GAAG,SAAS;mBAuL0D,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;yBAlCmB,GAAG;;cAlJ3B,cAAc,SAAS,MAAM,KAAG,IAAI;EAwLtC,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AA1MzE,wBA0M4E;AAC5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"WListHeaderItem.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/List/WListHeaderItem.vue"],"names":[],"mappings":"AAwDA;AA+GA,OAAO,EAAC,KAAK,UAAU,EAA2C,MAAM,KAAK,CAAA;AAI7E,OAAO,EAAQ,KAAK,SAAS,EAAC,MAAM,eAAe,CAAA;yBAIlC,KAAK,EACrB,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,EAC9D,YAAY,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,EAC3G,eAAe,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EACjE;WA8MO,mBAAmB,CAAC;;;;gBA5MlB,MAAM;eACP,KAAK;kBACF,SAAS,CAAC,KAAK,CAAC,EAAE;mBACjB,OAAO;sBACJ,OAAO;oBACT,MAAM;oBACN,UAAU,GAAG,SAAS;mBAsM0D,CAAC,4BAA2B;oBACzG,OAAO,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,IAAI;WAClD,GAAG;;yBAlCmB,GAAG;;;YAjK3B,cAAc,SAAS,MAAM,GAAG,IAAI;YACpC,iBAAiB,SAAS,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI;;EAsMrD,KACQ,OAAO,KAAK,EAAE,KAAK,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,WAAW,CAAC,CAAA;CAAE;AAzNzE,wBAyN4E;AAC5E,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}