@polygrid/core 1.0.537 → 1.0.538

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 (212) hide show
  1. package/dist/api/index.d.ts +2 -0
  2. package/dist/api/index.d.ts.map +1 -1
  3. package/dist/api/index.js +2 -0
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/set-column-menu.d.ts +4 -0
  6. package/dist/api/set-column-menu.d.ts.map +1 -0
  7. package/dist/api/set-column-menu.js +7 -0
  8. package/dist/api/set-column-menu.js.map +1 -0
  9. package/dist/api/set-column-pinned.d.ts.map +1 -1
  10. package/dist/api/set-column-pinned.js +3 -1
  11. package/dist/api/set-column-pinned.js.map +1 -1
  12. package/dist/api/set-column-unpin.d.ts.map +1 -1
  13. package/dist/api/set-column-unpin.js +3 -1
  14. package/dist/api/set-column-unpin.js.map +1 -1
  15. package/dist/engine/const/pg-css-class.d.ts +2 -0
  16. package/dist/engine/const/pg-css-class.d.ts.map +1 -1
  17. package/dist/engine/const/pg-css-class.js +2 -0
  18. package/dist/engine/const/pg-css-class.js.map +1 -1
  19. package/dist/engine/const/pg-icons.d.ts +7 -0
  20. package/dist/engine/const/pg-icons.d.ts.map +1 -1
  21. package/dist/engine/const/pg-icons.js +7 -0
  22. package/dist/engine/const/pg-icons.js.map +1 -1
  23. package/dist/engine/core/grid-runtime.d.ts +5 -0
  24. package/dist/engine/core/grid-runtime.d.ts.map +1 -1
  25. package/dist/engine/core/grid-runtime.js +4 -0
  26. package/dist/engine/core/grid-runtime.js.map +1 -1
  27. package/dist/engine/core/interfaces/grid-event-map.d.ts +3 -0
  28. package/dist/engine/core/interfaces/grid-event-map.d.ts.map +1 -1
  29. package/dist/engine/core/interfaces/grid-options.d.ts +2 -0
  30. package/dist/engine/core/interfaces/grid-options.d.ts.map +1 -1
  31. package/dist/engine/core/methods/consume-options.d.ts.map +1 -1
  32. package/dist/engine/core/methods/consume-options.js +12 -0
  33. package/dist/engine/core/methods/consume-options.js.map +1 -1
  34. package/dist/engine/services/column/column.d.ts +4 -0
  35. package/dist/engine/services/column/column.d.ts.map +1 -1
  36. package/dist/engine/services/column/column.js +11 -0
  37. package/dist/engine/services/column/column.js.map +1 -1
  38. package/dist/engine/services/column/index.d.ts +32 -0
  39. package/dist/engine/services/column/index.d.ts.map +1 -1
  40. package/dist/engine/services/column/index.js +32 -0
  41. package/dist/engine/services/column/index.js.map +1 -1
  42. package/dist/engine/services/column/interfaces/column-core.d.ts +8 -0
  43. package/dist/engine/services/column/interfaces/column-core.d.ts.map +1 -0
  44. package/dist/engine/services/column/interfaces/column-core.js +2 -0
  45. package/dist/engine/services/column/interfaces/column-core.js.map +1 -0
  46. package/dist/engine/services/column/interfaces/column-menu-settings.d.ts +9 -0
  47. package/dist/engine/services/column/interfaces/column-menu-settings.d.ts.map +1 -0
  48. package/dist/engine/services/column/interfaces/column-menu-settings.js +2 -0
  49. package/dist/engine/services/column/interfaces/column-menu-settings.js.map +1 -0
  50. package/dist/engine/services/column/interfaces/column.d.ts +1 -0
  51. package/dist/engine/services/column/interfaces/column.d.ts.map +1 -1
  52. package/dist/engine/services/column/methods/auto-fit-all-columns.d.ts +3 -0
  53. package/dist/engine/services/column/methods/auto-fit-all-columns.d.ts.map +1 -0
  54. package/dist/engine/services/column/methods/auto-fit-all-columns.js +32 -0
  55. package/dist/engine/services/column/methods/auto-fit-all-columns.js.map +1 -0
  56. package/dist/engine/services/column/methods/autofit-column-menu.d.ts +4 -0
  57. package/dist/engine/services/column/methods/autofit-column-menu.d.ts.map +1 -0
  58. package/dist/engine/services/column/methods/autofit-column-menu.js +17 -0
  59. package/dist/engine/services/column/methods/autofit-column-menu.js.map +1 -0
  60. package/dist/engine/services/column/methods/clean-up-column-menu.d.ts +3 -0
  61. package/dist/engine/services/column/methods/clean-up-column-menu.d.ts.map +1 -0
  62. package/dist/engine/services/column/methods/clean-up-column-menu.js +9 -0
  63. package/dist/engine/services/column/methods/clean-up-column-menu.js.map +1 -0
  64. package/dist/engine/services/column/methods/column-menu-icon-click.d.ts +4 -0
  65. package/dist/engine/services/column/methods/column-menu-icon-click.d.ts.map +1 -0
  66. package/dist/engine/services/column/methods/column-menu-icon-click.js +5 -0
  67. package/dist/engine/services/column/methods/column-menu-icon-click.js.map +1 -0
  68. package/dist/engine/services/column/methods/column-menu-show.d.ts +4 -0
  69. package/dist/engine/services/column/methods/column-menu-show.d.ts.map +1 -0
  70. package/dist/engine/services/column/methods/column-menu-show.js +16 -0
  71. package/dist/engine/services/column/methods/column-menu-show.js.map +1 -0
  72. package/dist/engine/services/column/methods/column-search-input.d.ts +3 -0
  73. package/dist/engine/services/column/methods/column-search-input.d.ts.map +1 -0
  74. package/dist/engine/services/column/methods/column-search-input.js +24 -0
  75. package/dist/engine/services/column/methods/column-search-input.js.map +1 -0
  76. package/dist/engine/services/column/methods/columns-checked-changed.d.ts +3 -0
  77. package/dist/engine/services/column/methods/columns-checked-changed.d.ts.map +1 -0
  78. package/dist/engine/services/column/methods/columns-checked-changed.js +13 -0
  79. package/dist/engine/services/column/methods/columns-checked-changed.js.map +1 -0
  80. package/dist/engine/services/column/methods/measure-pure-content.d.ts.map +1 -1
  81. package/dist/engine/services/column/methods/measure-pure-content.js +0 -1
  82. package/dist/engine/services/column/methods/measure-pure-content.js.map +1 -1
  83. package/dist/engine/services/column/methods/normalize-column-menu.d.ts +3 -0
  84. package/dist/engine/services/column/methods/normalize-column-menu.d.ts.map +1 -0
  85. package/dist/engine/services/column/methods/normalize-column-menu.js +20 -0
  86. package/dist/engine/services/column/methods/normalize-column-menu.js.map +1 -0
  87. package/dist/engine/services/column/methods/normalize-columns.d.ts.map +1 -1
  88. package/dist/engine/services/column/methods/normalize-columns.js +1 -0
  89. package/dist/engine/services/column/methods/normalize-columns.js.map +1 -1
  90. package/dist/engine/services/column/methods/remove-column-menu.d.ts +3 -0
  91. package/dist/engine/services/column/methods/remove-column-menu.d.ts.map +1 -0
  92. package/dist/engine/services/column/methods/remove-column-menu.js +12 -0
  93. package/dist/engine/services/column/methods/remove-column-menu.js.map +1 -0
  94. package/dist/engine/services/column/methods/reorder-internal-columns.d.ts +4 -0
  95. package/dist/engine/services/column/methods/reorder-internal-columns.d.ts.map +1 -0
  96. package/dist/engine/services/column/methods/reorder-internal-columns.js +89 -0
  97. package/dist/engine/services/column/methods/reorder-internal-columns.js.map +1 -0
  98. package/dist/engine/services/column/methods/reset-column-visibility.d.ts +3 -0
  99. package/dist/engine/services/column/methods/reset-column-visibility.d.ts.map +1 -0
  100. package/dist/engine/services/column/methods/reset-column-visibility.js +18 -0
  101. package/dist/engine/services/column/methods/reset-column-visibility.js.map +1 -0
  102. package/dist/engine/services/column/methods/select-all-columns.d.ts +3 -0
  103. package/dist/engine/services/column/methods/select-all-columns.d.ts.map +1 -0
  104. package/dist/engine/services/column/methods/select-all-columns.js +12 -0
  105. package/dist/engine/services/column/methods/select-all-columns.js.map +1 -0
  106. package/dist/engine/services/column/methods/set-column-menu.d.ts +5 -0
  107. package/dist/engine/services/column/methods/set-column-menu.d.ts.map +1 -0
  108. package/dist/engine/services/column/methods/set-column-menu.js +40 -0
  109. package/dist/engine/services/column/methods/set-column-menu.js.map +1 -0
  110. package/dist/engine/services/column/methods/toggle-select-all-col-cbx.d.ts +3 -0
  111. package/dist/engine/services/column/methods/toggle-select-all-col-cbx.d.ts.map +1 -0
  112. package/dist/engine/services/column/methods/toggle-select-all-col-cbx.js +7 -0
  113. package/dist/engine/services/column/methods/toggle-select-all-col-cbx.js.map +1 -0
  114. package/dist/engine/services/column/methods/update-group-column-pinned-state.d.ts +4 -0
  115. package/dist/engine/services/column/methods/update-group-column-pinned-state.d.ts.map +1 -0
  116. package/dist/engine/services/column/methods/update-group-column-pinned-state.js +20 -0
  117. package/dist/engine/services/column/methods/update-group-column-pinned-state.js.map +1 -0
  118. package/dist/engine/services/column/methods/update-visible-columns.d.ts +3 -0
  119. package/dist/engine/services/column/methods/update-visible-columns.d.ts.map +1 -0
  120. package/dist/engine/services/column/methods/update-visible-columns.js +35 -0
  121. package/dist/engine/services/column/methods/update-visible-columns.js.map +1 -0
  122. package/dist/engine/services/filter/index.d.ts +6 -0
  123. package/dist/engine/services/filter/index.d.ts.map +1 -1
  124. package/dist/engine/services/filter/index.js +6 -0
  125. package/dist/engine/services/filter/index.js.map +1 -1
  126. package/dist/engine/services/filter/methods/excel-filter/clean-up-excel-filter.d.ts +3 -0
  127. package/dist/engine/services/filter/methods/excel-filter/clean-up-excel-filter.d.ts.map +1 -0
  128. package/dist/engine/services/filter/methods/excel-filter/clean-up-excel-filter.js +18 -0
  129. package/dist/engine/services/filter/methods/excel-filter/clean-up-excel-filter.js.map +1 -0
  130. package/dist/engine/services/filter/methods/excel-filter/excel-filter-icon-click.d.ts.map +1 -1
  131. package/dist/engine/services/filter/methods/excel-filter/excel-filter-icon-click.js +1 -0
  132. package/dist/engine/services/filter/methods/excel-filter/excel-filter-icon-click.js.map +1 -1
  133. package/dist/engine/services/filter/methods/menu-filter/clean-up-menu-filter.d.ts +3 -0
  134. package/dist/engine/services/filter/methods/menu-filter/clean-up-menu-filter.d.ts.map +1 -0
  135. package/dist/engine/services/filter/methods/menu-filter/clean-up-menu-filter.js +14 -0
  136. package/dist/engine/services/filter/methods/menu-filter/clean-up-menu-filter.js.map +1 -0
  137. package/dist/engine/services/filter/methods/menu-filter/menu-filter-icon-click.d.ts.map +1 -1
  138. package/dist/engine/services/filter/methods/menu-filter/menu-filter-icon-click.js +1 -0
  139. package/dist/engine/services/filter/methods/menu-filter/menu-filter-icon-click.js.map +1 -1
  140. package/dist/engine/services/filter/methods/row-filter/clean-up-filter-operators.d.ts +3 -0
  141. package/dist/engine/services/filter/methods/row-filter/clean-up-filter-operators.d.ts.map +1 -0
  142. package/dist/engine/services/filter/methods/row-filter/clean-up-filter-operators.js +10 -0
  143. package/dist/engine/services/filter/methods/row-filter/clean-up-filter-operators.js.map +1 -0
  144. package/dist/engine/services/filter/methods/row-filter/row-filter-icon-click.d.ts.map +1 -1
  145. package/dist/engine/services/filter/methods/row-filter/row-filter-icon-click.js +1 -0
  146. package/dist/engine/services/filter/methods/row-filter/row-filter-icon-click.js.map +1 -1
  147. package/dist/engine/services/grouping/index.d.ts +4 -0
  148. package/dist/engine/services/grouping/index.d.ts.map +1 -1
  149. package/dist/engine/services/grouping/index.js +4 -0
  150. package/dist/engine/services/grouping/index.js.map +1 -1
  151. package/dist/engine/services/grouping/interfaces/grouping-settings.d.ts +1 -0
  152. package/dist/engine/services/grouping/interfaces/grouping-settings.d.ts.map +1 -1
  153. package/dist/engine/services/grouping/methods/ui/apply-multiple-group-col-layout.d.ts +3 -0
  154. package/dist/engine/services/grouping/methods/ui/apply-multiple-group-col-layout.d.ts.map +1 -0
  155. package/dist/engine/services/grouping/methods/ui/apply-multiple-group-col-layout.js +46 -0
  156. package/dist/engine/services/grouping/methods/ui/apply-multiple-group-col-layout.js.map +1 -0
  157. package/dist/engine/services/grouping/methods/ui/apply-single-group-col-layout.d.ts +3 -0
  158. package/dist/engine/services/grouping/methods/ui/apply-single-group-col-layout.d.ts.map +1 -0
  159. package/dist/engine/services/grouping/methods/ui/apply-single-group-col-layout.js +37 -0
  160. package/dist/engine/services/grouping/methods/ui/apply-single-group-col-layout.js.map +1 -0
  161. package/dist/engine/services/grouping/methods/ui/remove-grouped-column.d.ts.map +1 -1
  162. package/dist/engine/services/grouping/methods/ui/remove-grouped-column.js +4 -22
  163. package/dist/engine/services/grouping/methods/ui/remove-grouped-column.js.map +1 -1
  164. package/dist/engine/services/grouping/methods/ui/render-multiple-group-column-mode.d.ts.map +1 -1
  165. package/dist/engine/services/grouping/methods/ui/render-multiple-group-column-mode.js +2 -33
  166. package/dist/engine/services/grouping/methods/ui/render-multiple-group-column-mode.js.map +1 -1
  167. package/dist/engine/services/grouping/methods/ui/render-single-column-mode.d.ts.map +1 -1
  168. package/dist/engine/services/grouping/methods/ui/render-single-column-mode.js +2 -20
  169. package/dist/engine/services/grouping/methods/ui/render-single-column-mode.js.map +1 -1
  170. package/dist/engine/services/helper/index.d.ts +2 -0
  171. package/dist/engine/services/helper/index.d.ts.map +1 -1
  172. package/dist/engine/services/helper/index.js +2 -1
  173. package/dist/engine/services/helper/index.js.map +1 -1
  174. package/dist/engine/services/helper/methods/close-floating-ui.d.ts +3 -0
  175. package/dist/engine/services/helper/methods/close-floating-ui.d.ts.map +1 -0
  176. package/dist/engine/services/helper/methods/close-floating-ui.js +7 -0
  177. package/dist/engine/services/helper/methods/close-floating-ui.js.map +1 -0
  178. package/dist/engine/services/renderer/parts/excel-filter/excel-filter.d.ts.map +1 -1
  179. package/dist/engine/services/renderer/parts/excel-filter/excel-filter.js +2 -55
  180. package/dist/engine/services/renderer/parts/excel-filter/excel-filter.js.map +1 -1
  181. package/dist/engine/services/renderer/parts/excel-filter/sort-section.d.ts +4 -0
  182. package/dist/engine/services/renderer/parts/excel-filter/sort-section.d.ts.map +1 -0
  183. package/dist/engine/services/renderer/parts/excel-filter/sort-section.js +61 -0
  184. package/dist/engine/services/renderer/parts/excel-filter/sort-section.js.map +1 -0
  185. package/dist/engine/services/renderer/parts/header/column-menu-icon.d.ts +5 -0
  186. package/dist/engine/services/renderer/parts/header/column-menu-icon.d.ts.map +1 -0
  187. package/dist/engine/services/renderer/parts/header/column-menu-icon.js +18 -0
  188. package/dist/engine/services/renderer/parts/header/column-menu-icon.js.map +1 -0
  189. package/dist/engine/services/renderer/parts/header/column-menu.d.ts +4 -0
  190. package/dist/engine/services/renderer/parts/header/column-menu.d.ts.map +1 -0
  191. package/dist/engine/services/renderer/parts/header/column-menu.js +235 -0
  192. package/dist/engine/services/renderer/parts/header/column-menu.js.map +1 -0
  193. package/dist/engine/services/renderer/parts/header/header-cells.d.ts.map +1 -1
  194. package/dist/engine/services/renderer/parts/header/header-cells.js +5 -0
  195. package/dist/engine/services/renderer/parts/header/header-cells.js.map +1 -1
  196. package/dist/engine/services/renderer/parts/root/root.d.ts.map +1 -1
  197. package/dist/engine/services/renderer/parts/root/root.js +3 -59
  198. package/dist/engine/services/renderer/parts/root/root.js.map +1 -1
  199. package/dist/engine/services/row/classes/row-instance.d.ts.map +1 -1
  200. package/dist/engine/services/row/classes/row-instance.js +18 -3
  201. package/dist/engine/services/row/classes/row-instance.js.map +1 -1
  202. package/dist/engine/store/interfaces/grouping-state.d.ts +1 -0
  203. package/dist/engine/store/interfaces/grouping-state.d.ts.map +1 -1
  204. package/dist/engine/store/interfaces/view-state.d.ts +9 -0
  205. package/dist/engine/store/interfaces/view-state.d.ts.map +1 -1
  206. package/dist/engine/store/methods/create-initial-state.d.ts.map +1 -1
  207. package/dist/engine/store/methods/create-initial-state.js +5 -0
  208. package/dist/engine/store/methods/create-initial-state.js.map +1 -1
  209. package/dist/index.d.ts +1 -0
  210. package/dist/index.d.ts.map +1 -1
  211. package/dist/polygrid.css +144 -0
  212. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-multiple-group-col-layout.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/apply-multiple-group-col-layout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,QAAQ,QA0D5D"}
@@ -0,0 +1,46 @@
1
+ import { setColumns } from "../../../../../api/set-columns";
2
+ export function applyMultipleGroupColumnLayout(grid) {
3
+ const state = grid._store.getState();
4
+ const groupedColumns = state.view.groupingState.groupedColumns;
5
+ const groupedIds = groupedColumns.map((g) => g.column.id);
6
+ // 1. Build external column model:
7
+ // grouped columns first (in grouping order), then all other columns.
8
+ const external = state.view.internalColumns;
9
+ const groupedExternal = groupedIds
10
+ .map((id) => {
11
+ const c = external.find((c) => c.id === id);
12
+ if (c && state.view.groupingState.pinGroupColumnsToLeft)
13
+ c.pinned = "left";
14
+ return c;
15
+ })
16
+ .filter((c) => c !== undefined);
17
+ const remainingExternal = external.filter((c) => !groupedIds.includes(c.id));
18
+ const newColumns = [...groupedExternal, ...remainingExternal].map((col) => {
19
+ const original = external.find((c) => c.id === col.id);
20
+ return {
21
+ ...col,
22
+ ...(original?.isPinnedRight ? { pinned: "right" } : {}),
23
+ };
24
+ });
25
+ // 2. Apply schema update
26
+ setColumns(grid, newColumns);
27
+ // 3. After setColumns(), internalColumns are regenerated
28
+ const updatedState = grid._store.getState();
29
+ const internal = [...updatedState.view.internalColumns];
30
+ // 4. Clear pinned state for grouped columns (they are not pinnable)
31
+ if (!state.view.groupingState.pinGroupColumnsToLeft)
32
+ for (const col of internal) {
33
+ if (groupedIds.includes(col.id)) {
34
+ col.isPinnedLeft = false;
35
+ col.isPinnedRight = false;
36
+ col.region = "main";
37
+ }
38
+ }
39
+ // 5. Reorder using canonical function (multi-group branch)
40
+ const reordered = grid._services.column.reorderInternalColumns(grid, internal, updatedState.view.originalColumnOrder, groupedIds);
41
+ // 6. Write final order
42
+ grid._store.update((draft) => {
43
+ draft.view.internalColumns = reordered;
44
+ });
45
+ }
46
+ //# sourceMappingURL=apply-multiple-group-col-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-multiple-group-col-layout.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/apply-multiple-group-col-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAI5D,MAAM,UAAU,8BAA8B,CAAC,IAAc;IAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;IAC/D,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAE1D,kCAAkC;IAClC,wEAAwE;IACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;IAE5C,MAAM,eAAe,GAAG,UAAU;SAC/B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACV,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB;YACrD,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAuB,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IAEvD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE7E,MAAM,UAAU,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACxE,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QAEvD,OAAO;YACL,GAAG,GAAG;YACN,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,yBAAyB;IACzB,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE7B,yDAAyD;IACzD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAExD,oEAAoE;IACpE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB;QACjD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAChC,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;gBACzB,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC1B,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;YACtB,CAAC;QACH,CAAC;IAEH,2DAA2D;IAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sBAAsB,CAC5D,IAAI,EACJ,QAAQ,EACR,YAAY,CAAC,IAAI,CAAC,mBAAmB,EACrC,UAAU,CACX,CAAC;IAEF,uBAAuB;IACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ export declare function applySingleGroupColumnLayout(grid: PolyGrid, action: "insert" | "remove"): void;
3
+ //# sourceMappingURL=apply-single-group-col-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-single-group-col-layout.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/apply-single-group-col-layout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,QAAQ,GAAG,QAAQ,QA+C5B"}
@@ -0,0 +1,37 @@
1
+ import { setColumns } from "../../../../../api/set-columns";
2
+ export function applySingleGroupColumnLayout(grid, action) {
3
+ const state = grid._store.getState();
4
+ let newColumns;
5
+ if (action === "insert") {
6
+ // Insert synthetic group-column
7
+ const groupColumn = {
8
+ field: "group-column",
9
+ header: "Grouping",
10
+ sortable: false,
11
+ width: 150,
12
+ columnMenu: false,
13
+ ...(state.view.groupingState.pinGroupColumnsToLeft && { pinned: "left" }),
14
+ };
15
+ newColumns = [groupColumn, ...state.view.columns];
16
+ }
17
+ else {
18
+ // Remove synthetic group-column
19
+ newColumns = state.view.columns.filter((c) => c.field !== "group-column");
20
+ }
21
+ // 1. Apply schema update
22
+ setColumns(grid, newColumns);
23
+ // 2. Rebuild internalColumns
24
+ const updatedState = grid._store.getState();
25
+ const internal = [...updatedState.view.internalColumns];
26
+ // 3. Update pinned state (only needed on insert)
27
+ if (action === "insert") {
28
+ grid._services.column.updateGroupColumnPinnedState(grid, internal);
29
+ }
30
+ // 4. Reorder using canonical logic (no groupedIds)
31
+ const reordered = grid._services.column.reorderInternalColumns(grid, internal, updatedState.view.originalColumnOrder, []);
32
+ // 5. Write final order
33
+ grid._store.update((draft) => {
34
+ draft.view.internalColumns = reordered;
35
+ });
36
+ }
37
+ //# sourceMappingURL=apply-single-group-col-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-single-group-col-layout.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/apply-single-group-col-layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAI5D,MAAM,UAAU,4BAA4B,CAC1C,IAAc,EACd,MAA2B;IAE3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAErC,IAAI,UAA4B,CAAC;IAEjC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,gCAAgC;QAChC,MAAM,WAAW,GAAmB;YAClC,KAAK,EAAE,cAAc;YACrB,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,GAAG;YACV,UAAU,EAAE,KAAK;YACjB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,qBAAqB,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;SAC1E,CAAC;QAEF,UAAU,GAAG,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;SAAM,CAAC;QACN,gCAAgC;QAChC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,cAAc,CAAC,CAAC;IAC5E,CAAC;IAED,yBAAyB;IACzB,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE7B,6BAA6B;IAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAExD,iDAAiD;IACjD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,4BAA4B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED,mDAAmD;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sBAAsB,CAC5D,IAAI,EACJ,QAAQ,EACR,YAAY,CAAC,IAAI,CAAC,mBAAmB,EACrC,EAAE,CACH,CAAC;IAEF,uBAAuB;IACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"remove-grouped-column.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/remove-grouped-column.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGhE,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,aAAa,QAiE7B"}
1
+ {"version":3,"file":"remove-grouped-column.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/remove-grouped-column.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAKhE,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,aAAa,QAgD7B"}
@@ -1,5 +1,6 @@
1
1
  import { setColumnVisible } from "../../../../../api/set-column-visible";
2
- import { setColumns } from "../../../../../api/set-columns";
2
+ import { applyMultipleGroupColumnLayout } from "./apply-multiple-group-col-layout";
3
+ import { applySingleGroupColumnLayout } from "./apply-single-group-col-layout";
3
4
  import { renderMultipleGroupColumnMode } from "./render-multiple-group-column-mode";
4
5
  export function removeGroupedColumn(grid, groupedColumn) {
5
6
  const anim = grid._services.animation;
@@ -20,29 +21,10 @@ export function removeGroupedColumn(grid, groupedColumn) {
20
21
  draft.view.groupingState.groupingChanged = false;
21
22
  });
22
23
  if (state.view.groupingState.displayMode === "single-group-column") {
23
- const hasCbxColumn = grid._services.selection.hasCheckBoxColumn(grid);
24
- if (hasCbxColumn) {
25
- const newColumns = [
26
- state.view.columns[0],
27
- ...state.view.columns.slice(2),
28
- ];
29
- setColumns(grid, newColumns);
30
- }
31
- else {
32
- const newColumns = [...state.view.columns.slice(1)];
33
- setColumns(grid, newColumns);
34
- }
24
+ applySingleGroupColumnLayout(grid, "remove");
35
25
  }
36
26
  if (state.view.groupingState.displayMode === "multiple-group-columns") {
37
- const reordered = state.view.originalColumnOrder
38
- .map((id) => state.view.internalColumns.find((col) => col.id === id))
39
- .map((col) => {
40
- if (col.id !== groupedColumn.column.id)
41
- return col;
42
- const { pinned, ...rest } = col;
43
- return rest;
44
- });
45
- setColumns(grid, reordered);
27
+ applyMultipleGroupColumnLayout(grid);
46
28
  }
47
29
  if (state.view.groupingState.displayMode === "group-rows")
48
30
  setColumnVisible(grid, groupedColumn.column.key, true);
@@ -1 +1 @@
1
- {"version":3,"file":"remove-grouped-column.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/remove-grouped-column.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remove-grouped-column.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/remove-grouped-column.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render-multiple-group-column-mode.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-multiple-group-column-mode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,QAAQ,EACd,oBAAoB,CAAC,EAAE,aAAa,QAiCrC"}
1
+ {"version":3,"file":"render-multiple-group-column-mode.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-multiple-group-column-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGhE,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,QAAQ,EACd,oBAAoB,CAAC,EAAE,aAAa,QAGrC"}
@@ -1,36 +1,5 @@
1
- import { setColumns } from "../../../../../api/set-columns";
1
+ import { applyMultipleGroupColumnLayout } from "./apply-multiple-group-col-layout";
2
2
  export function renderMultipleGroupColumnMode(grid, removedGroupedColumn) {
3
- const hasCbxColumn = grid._services.selection.hasCheckBoxColumn(grid);
4
- const actualState = grid._store.getState();
5
- const groupedColumns = actualState.view.groupingState.groupedColumns;
6
- const columns = actualState.view.internalColumns;
7
- const groupedIds = groupedColumns.map((c) => c.column.id);
8
- const hasLeftPinned = actualState.view.leftLaneWidth > 0;
9
- // columns that are grouped, in the correct order
10
- const orderedGrouped = groupedIds
11
- .map((id) => columns.find((col) => col.id === id))
12
- .map((col) => ({
13
- ...col,
14
- ...(hasLeftPinned && { pinned: "left" }),
15
- }));
16
- // all remaining columns
17
- const remaining = columns
18
- .filter((col) => !groupedIds.includes(col.id) && col.field !== "cbx-column")
19
- .map((col) => {
20
- if (removedGroupedColumn?.column.id === col.id) {
21
- const { pinned, ...rest } = col;
22
- return rest;
23
- }
24
- return col;
25
- });
26
- // final result
27
- if (hasCbxColumn) {
28
- const reorderedColumns = [columns[0], ...orderedGrouped, ...remaining];
29
- setColumns(grid, reorderedColumns);
30
- }
31
- else {
32
- const reorderedColumns = [...orderedGrouped, ...remaining];
33
- setColumns(grid, reorderedColumns);
34
- }
3
+ applyMultipleGroupColumnLayout(grid);
35
4
  }
36
5
  //# sourceMappingURL=render-multiple-group-column-mode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"render-multiple-group-column-mode.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-multiple-group-column-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAK5D,MAAM,UAAU,6BAA6B,CAC3C,IAAc,EACd,oBAAoC;IAEpC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3C,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;IACrE,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC;IACjD,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzD,iDAAiD;IACjD,MAAM,cAAc,GAAG,UAAU;SAC9B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAE,CAAC;SAClD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACb,GAAG,GAAG;QACN,GAAG,CAAC,aAAa,IAAI,EAAE,MAAM,EAAE,MAA8B,EAAE,CAAC;KACjE,CAAC,CAAC,CAAC;IACN,wBAAwB;IACxB,MAAM,SAAS,GAAG,OAAO;SACtB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,YAAY,CAAC;SAC3E,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,IAAI,oBAAoB,EAAE,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IACL,eAAe;IACf,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,EAAE,GAAG,cAAc,EAAE,GAAG,SAAS,CAAC,CAAC;QACxE,UAAU,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,gBAAgB,GAAG,CAAC,GAAG,cAAc,EAAE,GAAG,SAAS,CAAC,CAAC;QAC3D,UAAU,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACrC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"render-multiple-group-column-mode.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-multiple-group-column-mode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AAEnF,MAAM,UAAU,6BAA6B,CAC3C,IAAc,EACd,oBAAoC;IAEpC,8BAA8B,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"render-single-column-mode.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-single-column-mode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,QAqBpD"}
1
+ {"version":3,"file":"render-single-column-mode.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-single-column-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,QAIpD"}
@@ -1,26 +1,8 @@
1
- import { setColumns } from "../../../../../api/set-columns";
1
+ import { applySingleGroupColumnLayout } from "./apply-single-group-col-layout";
2
2
  export function renderSingleColumnMode(grid) {
3
3
  const state = grid._store.getState();
4
4
  if (state.view.groupingState.isGridGrouped)
5
5
  return;
6
- const groupColumns = {
7
- field: "group-column",
8
- header: "Grouping",
9
- sortable: false,
10
- width: 150,
11
- ...(state.view.leftLaneWidth > 0 && { pinned: "left" }),
12
- };
13
- if (grid._services.selection.hasCheckBoxColumn(grid)) {
14
- const newColumns = [
15
- state.view.columns[0],
16
- groupColumns,
17
- ...state.view.columns.slice(1),
18
- ];
19
- setColumns(grid, newColumns);
20
- }
21
- else {
22
- const newColumns = [groupColumns, ...state.view.columns];
23
- setColumns(grid, newColumns);
24
- }
6
+ applySingleGroupColumnLayout(grid, "insert");
25
7
  }
26
8
  //# sourceMappingURL=render-single-column-mode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"render-single-column-mode.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-single-column-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAI5D,MAAM,UAAU,sBAAsB,CAAC,IAAc;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa;QAAE,OAAO;IACnD,MAAM,YAAY,GAAmB;QACnC,KAAK,EAAE,cAAc;QACrB,MAAM,EAAE,UAAU;QAClB,QAAQ,EAAE,KAAK;QACf,KAAK,EAAE,GAAG;QACV,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;KACxD,CAAC;IACF,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,UAAU,GAAG;YACjB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE;YACtB,YAAY;YACZ,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;SAC/B,CAAC;QACF,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzD,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"render-single-column-mode.js","sourceRoot":"","sources":["../../../../../../src/engine/services/grouping/methods/ui/render-single-column-mode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAE/E,MAAM,UAAU,sBAAsB,CAAC,IAAc;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa;QAAE,OAAO;IACnD,4BAA4B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC"}
@@ -1,9 +1,11 @@
1
1
  export * from "./helper";
2
2
  import { allowOnlyNumbers } from "./methods/allow-only-numbers";
3
+ import { closeFloatingUI } from "./methods/close-floating-ui";
3
4
  import { getCaretPosition } from "./methods/get-caret-position";
4
5
  export declare const methods: {
5
6
  allowOnlyNumbers: typeof allowOnlyNumbers;
6
7
  getCaretPosition: typeof getCaretPosition;
8
+ closeFloatingUI: typeof closeFloatingUI;
7
9
  };
8
10
  export type HelperMethods = typeof methods;
9
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/engine/services/helper/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAO,MAAM,OAAO;;;CAAyC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,OAAO,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/engine/services/helper/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAO,MAAM,OAAO;;;;CAA0D,CAAC;AAC/E,MAAM,MAAM,aAAa,GAAG,OAAO,OAAO,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export * from "./helper";
2
2
  import { allowOnlyNumbers } from "./methods/allow-only-numbers";
3
+ import { closeFloatingUI } from "./methods/close-floating-ui";
3
4
  import { getCaretPosition } from "./methods/get-caret-position";
4
- export const methods = { allowOnlyNumbers, getCaretPosition };
5
+ export const methods = { allowOnlyNumbers, getCaretPosition, closeFloatingUI };
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/engine/services/helper/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/engine/services/helper/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { PolyGrid } from "../../../core/grid";
2
+ export declare function closeFloatingUI(grid: PolyGrid, target: Node | null, checkContains: boolean): void;
3
+ //# sourceMappingURL=close-floating-ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close-floating-ui.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/helper/methods/close-floating-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,wBAAgB,eAAe,CAC7B,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,IAAI,GAAG,IAAI,EACnB,aAAa,EAAE,OAAO,QAMvB"}
@@ -0,0 +1,7 @@
1
+ export function closeFloatingUI(grid, target, checkContains) {
2
+ grid._services.filter.cleanupFilterOperators(grid, target, checkContains);
3
+ grid._services.filter.cleanupMenuFilter(grid, target, checkContains);
4
+ grid._services.filter.cleanupExcelFilter(grid, target, checkContains);
5
+ grid._services.column.cleanupColumnMenu(grid, target, checkContains);
6
+ }
7
+ //# sourceMappingURL=close-floating-ui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close-floating-ui.js","sourceRoot":"","sources":["../../../../../src/engine/services/helper/methods/close-floating-ui.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,eAAe,CAC7B,IAAc,EACd,MAAmB,EACnB,aAAsB;IAEtB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IACrE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IACtE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;AACvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"excel-filter.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/excel-filter/excel-filter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAI5E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,QAuTvE"}
1
+ {"version":3,"file":"excel-filter.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/excel-filter/excel-filter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAK5E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,QA+OvE"}
@@ -1,6 +1,7 @@
1
1
  import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
2
  import { addDomListener } from "../../../../core/methods";
3
3
  import { renderDateTree } from "./date-tree";
4
+ import { renderSortSection } from "./sort-section";
4
5
  export function renderExcelFilter(grid, column) {
5
6
  const state = grid._store.getState();
6
7
  const filterService = grid._services.filter;
@@ -9,61 +10,7 @@ export function renderExcelFilter(grid, column) {
9
10
  const excelFilter = document.createElement("div");
10
11
  excelFilter.classList.add(PG_CSS_CLASS.excelFilter);
11
12
  // sort section
12
- const sortSect = document.createElement("ul");
13
- const asc = document.createElement("li");
14
- const ascIcon = document.createElement("span");
15
- const iconNode = grid._services.icon.renderIcon(grid._services.icon, "sortAsc");
16
- ascIcon.replaceChildren(iconNode ?? "");
17
- asc.classList.toggle(PG_CSS_CLASS.disabled, column.sortable === false || column.sortable === undefined);
18
- addDomListener(grid._gridDom, asc, "click", (e) => {
19
- const isGrouped = grid._store.getState().view.groupingState.isGridGrouped;
20
- if (isGrouped) {
21
- const groupedColumn = grid._store
22
- .getState()
23
- .view.groupingState.groupedColumns.find((gc) => gc.column.id === column.id);
24
- if (groupedColumn) {
25
- // Column is grouped → toggle group sorting
26
- grid._services.grouping.sortGroup(grid, groupedColumn, "desc");
27
- }
28
- else {
29
- grid._services.grouping.sortInsideGroups(grid, column, "asc");
30
- }
31
- }
32
- else
33
- grid._services.sort.sort(column, e, grid._services.sort, grid, "asc");
34
- });
35
- asc.appendChild(ascIcon);
36
- const text = document.createElement("span");
37
- text.innerText = "Sort ascending";
38
- asc.appendChild(text);
39
- sortSect.appendChild(asc);
40
- const desc = document.createElement("li");
41
- const descIcon = document.createElement("span");
42
- const iconNodeDesc = grid._services.icon.renderIcon(grid._services.icon, "sortDesc");
43
- descIcon.replaceChildren(iconNodeDesc ?? "");
44
- desc.classList.toggle(PG_CSS_CLASS.disabled, column.sortable === false || column.sortable === undefined);
45
- addDomListener(grid._gridDom, desc, "click", (e) => {
46
- const isGrouped = grid._store.getState().view.groupingState.isGridGrouped;
47
- if (isGrouped) {
48
- const groupedColumn = grid._store
49
- .getState()
50
- .view.groupingState.groupedColumns.find((gc) => gc.column.id === column.id);
51
- if (groupedColumn) {
52
- // Column is grouped → toggle group sorting
53
- grid._services.grouping.sortGroup(grid, groupedColumn, "asc");
54
- }
55
- else {
56
- grid._services.grouping.sortInsideGroups(grid, column, "desc");
57
- }
58
- }
59
- else
60
- grid._services.sort.sort(column, e, grid._services.sort, grid, "desc");
61
- });
62
- desc.appendChild(descIcon);
63
- const textDesc = document.createElement("span");
64
- textDesc.innerText = "Sort descending";
65
- desc.appendChild(textDesc);
66
- sortSect.appendChild(desc);
13
+ const sortSect = renderSortSection(grid, column);
67
14
  excelFilter.appendChild(sortSect);
68
15
  // separator
69
16
  const sep = document.createElement("div");
@@ -1 +1 @@
1
- {"version":3,"file":"excel-filter.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/excel-filter/excel-filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,UAAU,iBAAiB,CAAC,IAAc,EAAE,MAAsB;IACtE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CACpD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CACjC,CAAC,QAAQ,CAAC,UAAU,CAAC;IAEvB,WAAW;IACX,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAClD,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAEpD,eAAe;IACf,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAE9C,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,SAAS,CACV,CAAC;IACF,OAAO,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IACxC,GAAG,CAAC,SAAS,CAAC,MAAM,CAClB,YAAY,CAAC,QAAQ,EACrB,MAAM,CAAC,QAAQ,KAAK,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,CAC3D,CAAC;IACF,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;QAC1E,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM;iBAC9B,QAAQ,EAAE;iBACV,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CACrC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CACnC,CAAC;YACJ,IAAI,aAAa,EAAE,CAAC;gBAClB,2CAA2C;gBAC3C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;;YACC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC;IAElC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAE1B,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CACjD,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,UAAU,CACX,CAAC;IACF,QAAQ,CAAC,eAAe,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CACnB,YAAY,CAAC,QAAQ,EACrB,MAAM,CAAC,QAAQ,KAAK,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,CAC3D,CAAC;IACF,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;QAC1E,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM;iBAC9B,QAAQ,EAAE;iBACV,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CACrC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CACnC,CAAC;YACJ,IAAI,aAAa,EAAE,CAAC;gBAClB,2CAA2C;gBAC3C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;;YACC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,QAAQ,CAAC,SAAS,GAAG,iBAAiB,CAAC;IAEvC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAE3B,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAElC,YAAY;IACZ,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAE1C,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAE7B,mCAAmC;IACnC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACvD,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAE3C,gBAAgB;IAChB,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAClD,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,QAAQ,CACT,CAAC;IACF,SAAS,CAAC,eAAe,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAC/C,SAAS,CAAC,SAAS,CAAC,MAAM,CACxB,YAAY,CAAC,YAAY,EACzB,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CACxD,CAAC;IACF,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CACxD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CACrD,CAAC;IACF,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEnC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACjD,SAAS,CAAC,SAAS,GAAG,cAAc,CAAC;IACrC,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEnC,WAAW,CAAC,SAAS,CAAC,MAAM,CAC1B,YAAY,CAAC,QAAQ,EACrB,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CACzD,CAAC;IACF,iBAAiB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAE3C,kBAAkB;IAClB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACjC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CACzD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAC3D,CAAC;QACF,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,CACzD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAC5D,CAAC;QAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAClD,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,OAAO,CACR,CAAC;QACF,SAAS,CAAC,eAAe,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QAC/C,SAAS,CAAC,SAAS,CAAC,MAAM,CACxB,QAAQ,EACR,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAC9D,CAAC;QACF,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAE/B,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACpD,YAAY,CAAC,SAAS,GAAG,GAAG,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnE,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAElC,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACnD,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CACpD,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,cAAc,CACf,CAAC;QACF,WAAW,CAAC,eAAe,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAEjC,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,gBAAgB;IAChB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAChD,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IACtB,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC;IAC/B,OAAO,CAAC,QAAQ,GAAG,QAAQ,KAAK,MAAM,CAAC;IACvC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CACpD,aAAa,CAAC,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,CACxC,CAAC;IACF,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAE3B,iBAAiB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAErC,iBAAiB;IACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACjD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAErD,mBAAmB;IACnB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACnD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3C,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,KAAK,MAAM,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IACxB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAClC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACnD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAC9D,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC;IAChC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE9B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;IAC/B,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE9B,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEnC,cAAc;IACd,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACrD,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAEvC,IAAI,oBAAoB,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;IAEhD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;YAC5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,oBAAoB,GAAG,aAAa,CAAC,gBAAgB,CAAC,SAAS,CAC7D,CAAC,eAAe,EAAE,EAAE;YAClB,cAAc,CAAC,eAAe,EAAE,CAAC;YACjC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;YACpE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC7C,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC7B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAChC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACpC,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;oBACnD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;oBAE3C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;oBAC9C,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;oBACxB,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;oBAC/B,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;oBACnC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBAE9B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBAC7C,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAC1C,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBAE9B,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CACF,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAY,CAAC;QAC/D,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAC3D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CACrD,CAAC;QACF,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAC5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,IAAI,CAAC,CACxD,CAAC;QACF,cAAc,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEpC,YAAY;IACZ,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAE3C,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAE9B,gBAAgB;IAChB,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACnD,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAE5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC;IAC7B,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CACrD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CACrD,CAAC;IACF,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEnC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACnD,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC/B,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAEpC,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAEtC,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;IACxC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,oBAAoB,CAAC;IAEtD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAE5C,cAAc;IACd,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAE,CAAC;IAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAE5D,MAAM,cAAc,GAAG,GAAG,CAAC;IAE3B,iDAAiD;IACjD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IACpD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC;IAEjD,MAAM,gBAAgB,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC;IAEtE,WAAW,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;IACxC,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,SAAS,IAAI,CAAC;IAEzC,IAAI,gBAAgB,EAAE,CAAC;QACrB,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,WAAW,IAAI,CAAC;QAC7C,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,UAAU,IAAI,CAAC;QAC3C,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACnC,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAc;IAC9B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG;QAC/B,QAAQ,EAAE,EAAE;QACZ,eAAe,EAAE,EAAE;QACnB,uBAAuB,EAAE,EAAE;QAC3B,WAAW,EAAE,EAAE;QACf,mBAAmB,EAAE,EAAE;KACxB,CAAC,CACL,CAAC;IACF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAkB;IAC5C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"excel-filter.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/excel-filter/excel-filter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ import { InternalColumn } from "../../../column/interfaces/internal-column";
3
+ export declare function renderSortSection(grid: PolyGrid, column: InternalColumn): HTMLUListElement;
4
+ //# sourceMappingURL=sort-section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-section.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/excel-filter/sort-section.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAE5E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,oBA4EvE"}
@@ -0,0 +1,61 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ import { addDomListener } from "../../../../core/methods";
3
+ export function renderSortSection(grid, column) {
4
+ const sortSect = document.createElement("ul");
5
+ const asc = document.createElement("li");
6
+ const ascIcon = document.createElement("span");
7
+ const iconNode = grid._services.icon.renderIcon(grid._services.icon, "sortAsc");
8
+ ascIcon.replaceChildren(iconNode ?? "");
9
+ asc.classList.toggle(PG_CSS_CLASS.disabled, column.sortable === false || column.sortable === undefined);
10
+ addDomListener(grid._gridDom, asc, "click", (e) => {
11
+ const isGrouped = grid._store.getState().view.groupingState.isGridGrouped;
12
+ if (isGrouped) {
13
+ const groupedColumn = grid._store
14
+ .getState()
15
+ .view.groupingState.groupedColumns.find((gc) => gc.column.id === column.id);
16
+ if (groupedColumn) {
17
+ // Column is grouped → toggle group sorting
18
+ grid._services.grouping.sortGroup(grid, groupedColumn, "desc");
19
+ }
20
+ else {
21
+ grid._services.grouping.sortInsideGroups(grid, column, "asc");
22
+ }
23
+ }
24
+ else
25
+ grid._services.sort.sort(column, e, grid._services.sort, grid, "asc");
26
+ });
27
+ asc.appendChild(ascIcon);
28
+ const text = document.createElement("span");
29
+ text.innerText = "Sort ascending";
30
+ asc.appendChild(text);
31
+ sortSect.appendChild(asc);
32
+ const desc = document.createElement("li");
33
+ const descIcon = document.createElement("span");
34
+ const iconNodeDesc = grid._services.icon.renderIcon(grid._services.icon, "sortDesc");
35
+ descIcon.replaceChildren(iconNodeDesc ?? "");
36
+ desc.classList.toggle(PG_CSS_CLASS.disabled, column.sortable === false || column.sortable === undefined);
37
+ addDomListener(grid._gridDom, desc, "click", (e) => {
38
+ const isGrouped = grid._store.getState().view.groupingState.isGridGrouped;
39
+ if (isGrouped) {
40
+ const groupedColumn = grid._store
41
+ .getState()
42
+ .view.groupingState.groupedColumns.find((gc) => gc.column.id === column.id);
43
+ if (groupedColumn) {
44
+ // Column is grouped → toggle group sorting
45
+ grid._services.grouping.sortGroup(grid, groupedColumn, "asc");
46
+ }
47
+ else {
48
+ grid._services.grouping.sortInsideGroups(grid, column, "desc");
49
+ }
50
+ }
51
+ else
52
+ grid._services.sort.sort(column, e, grid._services.sort, grid, "desc");
53
+ });
54
+ desc.appendChild(descIcon);
55
+ const textDesc = document.createElement("span");
56
+ textDesc.innerText = "Sort descending";
57
+ desc.appendChild(textDesc);
58
+ sortSect.appendChild(desc);
59
+ return sortSect;
60
+ }
61
+ //# sourceMappingURL=sort-section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-section.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/excel-filter/sort-section.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ import { PolyGridState } from "../../../../store/interfaces/grid-state";
3
+ import { InternalColumn } from "../../../column/interfaces/internal-column";
4
+ export declare function renderColumnMenuIcon(grid: PolyGrid, col: InternalColumn, state: PolyGridState, cell: HTMLDivElement): void;
5
+ //# sourceMappingURL=column-menu-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-menu-icon.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/column-menu-icon.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAE5E,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,EACd,GAAG,EAAE,cAAc,EACnB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,cAAc,QAuBrB"}
@@ -0,0 +1,18 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ import { addDomListener } from "../../../../core/methods";
3
+ export function renderColumnMenuIcon(grid, col, state, cell) {
4
+ const iconContainer = document.createElement("span");
5
+ const iconNode = grid._services.icon.renderIcon(grid._services.icon, "verticalBar");
6
+ iconContainer.replaceChildren(iconNode ?? "");
7
+ iconContainer.classList.add(PG_CSS_CLASS.columnMenuIcon);
8
+ iconContainer.classList.toggle(PG_CSS_CLASS.disabled, state.view.externalLoading);
9
+ grid._runtime.columnMenuIcons.set(col.id, iconContainer);
10
+ cell.appendChild(iconContainer);
11
+ addDomListener(grid._gridDom, iconContainer, "click", (e) => {
12
+ e.stopPropagation();
13
+ grid._services.column.columnMenuIconClick(grid, col);
14
+ });
15
+ const active = state.view.columnsWithActiveColMenuFilters.has(col.id);
16
+ iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
17
+ }
18
+ //# sourceMappingURL=column-menu-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-menu-icon.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/column-menu-icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D,MAAM,UAAU,oBAAoB,CAClC,IAAc,EACd,GAAmB,EACnB,KAAoB,EACpB,IAAoB;IAEpB,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,aAAa,CACd,CAAC;IACF,aAAa,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACzD,aAAa,CAAC,SAAS,CAAC,MAAM,CAC5B,YAAY,CAAC,QAAQ,EACrB,KAAK,CAAC,IAAI,CAAC,eAAe,CAC3B,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAEhC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1D,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AACpE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ import { InternalColumn } from "../../../column/interfaces/internal-column";
3
+ export declare function renderColumnMenu(grid: PolyGrid, column: InternalColumn): void;
4
+ //# sourceMappingURL=column-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"column-menu.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/column-menu.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAG5E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,QAkTtE"}