@polygrid/core 1.0.535 → 1.0.536

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 (51) hide show
  1. package/dist/engine/services/renderer/parts/header/cbx-column.d.ts +3 -0
  2. package/dist/engine/services/renderer/parts/header/cbx-column.d.ts.map +1 -0
  3. package/dist/engine/services/renderer/parts/header/cbx-column.js +33 -0
  4. package/dist/engine/services/renderer/parts/header/cbx-column.js.map +1 -0
  5. package/dist/engine/services/renderer/parts/header/excel-filter-icon.d.ts +5 -0
  6. package/dist/engine/services/renderer/parts/header/excel-filter-icon.d.ts.map +1 -0
  7. package/dist/engine/services/renderer/parts/header/excel-filter-icon.js +29 -0
  8. package/dist/engine/services/renderer/parts/header/excel-filter-icon.js.map +1 -0
  9. package/dist/engine/services/renderer/parts/header/header-cells.d.ts.map +1 -1
  10. package/dist/engine/services/renderer/parts/header/header-cells.js +10 -130
  11. package/dist/engine/services/renderer/parts/header/header-cells.js.map +1 -1
  12. package/dist/engine/services/renderer/parts/header/menu-filter-icon.d.ts +5 -0
  13. package/dist/engine/services/renderer/parts/header/menu-filter-icon.d.ts.map +1 -0
  14. package/dist/engine/services/renderer/parts/header/menu-filter-icon.js +29 -0
  15. package/dist/engine/services/renderer/parts/header/menu-filter-icon.js.map +1 -0
  16. package/dist/engine/services/renderer/parts/header/sort-and-priority-icon.d.ts +6 -0
  17. package/dist/engine/services/renderer/parts/header/sort-and-priority-icon.d.ts.map +1 -0
  18. package/dist/engine/services/renderer/parts/header/sort-and-priority-icon.js +36 -0
  19. package/dist/engine/services/renderer/parts/header/sort-and-priority-icon.js.map +1 -0
  20. package/dist/engine/services/renderer/parts/header/sort-handler.d.ts +5 -0
  21. package/dist/engine/services/renderer/parts/header/sort-handler.d.ts.map +1 -0
  22. package/dist/engine/services/renderer/parts/header/sort-handler.js +22 -0
  23. package/dist/engine/services/renderer/parts/header/sort-handler.js.map +1 -0
  24. package/dist/engine/services/row/classes/row-pool.d.ts.map +1 -1
  25. package/dist/engine/services/row/classes/row-pool.js +13 -118
  26. package/dist/engine/services/row/classes/row-pool.js.map +1 -1
  27. package/dist/engine/services/row/index.d.ts +10 -0
  28. package/dist/engine/services/row/index.d.ts.map +1 -1
  29. package/dist/engine/services/row/index.js +10 -0
  30. package/dist/engine/services/row/index.js.map +1 -1
  31. package/dist/engine/services/row/methods/clean-up.d.ts +3 -0
  32. package/dist/engine/services/row/methods/clean-up.d.ts.map +1 -0
  33. package/dist/engine/services/row/methods/clean-up.js +14 -0
  34. package/dist/engine/services/row/methods/clean-up.js.map +1 -0
  35. package/dist/engine/services/row/methods/play-filter-anim.d.ts +3 -0
  36. package/dist/engine/services/row/methods/play-filter-anim.d.ts.map +1 -0
  37. package/dist/engine/services/row/methods/play-filter-anim.js +7 -0
  38. package/dist/engine/services/row/methods/play-filter-anim.js.map +1 -0
  39. package/dist/engine/services/row/methods/play-paging-anim.d.ts +5 -0
  40. package/dist/engine/services/row/methods/play-paging-anim.d.ts.map +1 -0
  41. package/dist/engine/services/row/methods/play-paging-anim.js +24 -0
  42. package/dist/engine/services/row/methods/play-paging-anim.js.map +1 -0
  43. package/dist/engine/services/row/methods/render-row-pool.d.ts +5 -0
  44. package/dist/engine/services/row/methods/render-row-pool.d.ts.map +1 -0
  45. package/dist/engine/services/row/methods/render-row-pool.js +26 -0
  46. package/dist/engine/services/row/methods/render-row-pool.js.map +1 -0
  47. package/dist/engine/services/row/methods/update-groups.d.ts +11 -0
  48. package/dist/engine/services/row/methods/update-groups.d.ts.map +1 -0
  49. package/dist/engine/services/row/methods/update-groups.js +19 -0
  50. package/dist/engine/services/row/methods/update-groups.js.map +1 -0
  51. package/package.json +1 -1
@@ -0,0 +1,3 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ export declare function renderCbxColumn(content: HTMLDivElement, grid: PolyGrid): void;
3
+ //# sourceMappingURL=cbx-column.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cbx-column.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/cbx-column.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,wBAAgB,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,QA6BtE"}
@@ -0,0 +1,33 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ import { addDomListener } from "../../../../core/methods";
3
+ export function renderCbxColumn(content, grid) {
4
+ const chkBx = document.createElement("input");
5
+ chkBx.type = "checkbox";
6
+ content.classList.add(PG_CSS_CLASS.checkbox);
7
+ content.innerHTML = "";
8
+ content.appendChild(chkBx);
9
+ const sub = grid._services.selection.selectAllState().subscribe((state) => {
10
+ if (state === "checked") {
11
+ chkBx.checked = true;
12
+ chkBx.indeterminate = false;
13
+ }
14
+ else if (state === "unchecked") {
15
+ chkBx.checked = false;
16
+ chkBx.indeterminate = false;
17
+ }
18
+ else {
19
+ chkBx.checked = false;
20
+ chkBx.indeterminate = true;
21
+ }
22
+ });
23
+ addDomListener(grid._gridDom, chkBx, "click", (e) => {
24
+ if (chkBx.checked) {
25
+ grid._services.selection.selectAllRows(grid);
26
+ }
27
+ else {
28
+ grid._services.selection.clearSelection(grid);
29
+ }
30
+ });
31
+ grid._destroy$.subscribe(() => sub());
32
+ }
33
+ //# sourceMappingURL=cbx-column.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cbx-column.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/cbx-column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,UAAU,eAAe,CAAC,OAAuB,EAAE,IAAc;IACrE,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IACxB,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IACvB,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QACxE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;QAC9B,CAAC;aAAM,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YACjC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;QAClD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACxC,CAAC"}
@@ -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 renderExcelFilterIcon(grid: PolyGrid, col: InternalColumn, state: PolyGridState, cell: HTMLDivElement): void;
5
+ //# sourceMappingURL=excel-filter-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excel-filter-icon.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/excel-filter-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,qBAAqB,CACnC,IAAI,EAAE,QAAQ,EACd,GAAG,EAAE,cAAc,EACnB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,cAAc,QAmCrB"}
@@ -0,0 +1,29 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ import { addDomListener } from "../../../../core/methods";
3
+ export function renderExcelFilterIcon(grid, col, state, cell) {
4
+ const iconContainer = document.createElement("span");
5
+ const iconNode = grid._services.icon.renderIcon(grid._services.icon, "filter");
6
+ iconContainer.replaceChildren(iconNode ?? "");
7
+ iconContainer.classList.add(PG_CSS_CLASS.filterIcon);
8
+ iconContainer.classList.toggle(PG_CSS_CLASS.disabled, state.view.externalLoading);
9
+ grid._runtime.excelFilterIcons.set(col.id, iconContainer);
10
+ cell.appendChild(iconContainer);
11
+ addDomListener(grid._gridDom, iconContainer, "click", (e) => {
12
+ e.stopPropagation();
13
+ grid._services.filter.excelFilterIconClick(grid, col);
14
+ });
15
+ const active = state.view.columnsWithActiveExcelFilters.has(col.id);
16
+ iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
17
+ const unsubActiveFilter = grid._services.filter
18
+ .activeExcelFilterForColumn(col.id)
19
+ .subscribe((active) => {
20
+ iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
21
+ });
22
+ grid._runtime.activeExcelFilterSubscr.set(col.id, unsubActiveFilter);
23
+ grid._destroy$.subscribe(() => {
24
+ for (const unsub of grid._runtime.activeExcelFilterSubscr.values()) {
25
+ unsub();
26
+ }
27
+ });
28
+ }
29
+ //# sourceMappingURL=excel-filter-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excel-filter-icon.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/excel-filter-icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D,MAAM,UAAU,qBAAqB,CACnC,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,QAAQ,CACT,CAAC;IACF,aAAa,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrD,aAAa,CAAC,SAAS,CAAC,MAAM,CAC5B,YAAY,CAAC,QAAQ,EACrB,KAAK,CAAC,IAAI,CAAC,eAAe,CAC3B,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;IAC1D,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,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;SAC5C,0BAA0B,CAAC,GAAG,CAAC,EAAE,CAAC;SAClC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;QACpB,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IACL,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;IACrE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE;QAC5B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC;YACnE,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"header-cells.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/header-cells.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,YAAY,QAwTrB"}
1
+ {"version":3,"file":"header-cells.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/header-cells.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAQnE,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,YAAY,QA2JrB"}
@@ -1,6 +1,11 @@
1
1
  import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
2
  import { addDomListener } from "../../../../core/methods";
3
+ import { renderCbxColumn } from "./cbx-column";
4
+ import { renderExcelFilterIcon } from "./excel-filter-icon";
5
+ import { renderMenuFilterIcon } from "./menu-filter-icon";
3
6
  import { renderResizeHandle } from "./resize-handle";
7
+ import { renderSortAndPriorityIcon } from "./sort-and-priority-icon";
8
+ import { sortHandler } from "./sort-handler";
4
9
  export function renderHeaderCells(header, store, gridDom, grid, region) {
5
10
  const runtime = grid._runtime;
6
11
  const state = store.getState();
@@ -24,25 +29,7 @@ export function renderHeaderCells(header, store, gridDom, grid, region) {
24
29
  grid._store.update((draft) => (draft.ui.resize.suppressNextClick = false));
25
30
  return;
26
31
  }
27
- const isGrouped = grid._store.getState().view.groupingState.isGridGrouped;
28
- if (isGrouped) {
29
- const groupedColumn = grid._store
30
- .getState()
31
- .view.groupingState.groupedColumns.find((gc) => gc.column.id === col.id);
32
- grid._store.update((draft) => (draft.view.viewRowsChangeReason = "sort"));
33
- if (state.view.enableAnimations)
34
- grid._services.animation.captureBeforeRowPositions(grid._services.animation, grid);
35
- if (groupedColumn) {
36
- // Column is grouped → toggle group sorting
37
- grid._services.grouping.sortGroup(grid, groupedColumn);
38
- }
39
- else {
40
- grid._services.grouping.sortInsideGroups(grid, col);
41
- }
42
- }
43
- else {
44
- grid._services.sort.sort(col, ev, grid._services.sort, grid);
45
- }
32
+ sortHandler(grid, col, state, ev);
46
33
  });
47
34
  // Create content container
48
35
  const content = document.createElement("div");
@@ -87,36 +74,7 @@ export function renderHeaderCells(header, store, gridDom, grid, region) {
87
74
  content.textContent = col.header;
88
75
  }
89
76
  if (col.field === "cbx-column") {
90
- const chkBx = document.createElement("input");
91
- chkBx.type = "checkbox";
92
- content.classList.add(PG_CSS_CLASS.checkbox);
93
- content.innerHTML = "";
94
- content.appendChild(chkBx);
95
- const sub = grid._services.selection
96
- .selectAllState()
97
- .subscribe((state) => {
98
- if (state === "checked") {
99
- chkBx.checked = true;
100
- chkBx.indeterminate = false;
101
- }
102
- else if (state === "unchecked") {
103
- chkBx.checked = false;
104
- chkBx.indeterminate = false;
105
- }
106
- else {
107
- chkBx.checked = false;
108
- chkBx.indeterminate = true;
109
- }
110
- });
111
- addDomListener(grid._gridDom, chkBx, "click", (e) => {
112
- if (chkBx.checked) {
113
- grid._services.selection.selectAllRows(grid);
114
- }
115
- else {
116
- grid._services.selection.clearSelection(grid);
117
- }
118
- });
119
- grid._destroy$.subscribe(() => sub());
77
+ renderCbxColumn(content, grid);
120
78
  }
121
79
  cell.appendChild(content);
122
80
  // Resize handle logic
@@ -136,39 +94,7 @@ export function renderHeaderCells(header, store, gridDom, grid, region) {
136
94
  const unsubscribe = grid._services.sort
137
95
  .sortStateForColumn(col.id)
138
96
  .subscribe(({ order, priority }) => {
139
- // --- ICON RENDERING ---
140
- const iconName = grid._services.sort.getSortIconName(order);
141
- const iconNode = grid._services.icon.renderIcon(grid._services.icon, iconName);
142
- iconContainer.replaceChildren(iconNode ?? "");
143
- // --- PRIORITY RENDERING ---
144
- const stateNow = store.getState();
145
- const sortSettings = stateNow.view.sortSettings;
146
- const sortMode = sortSettings?.sortMode;
147
- const showPriorities = sortMode === "multiple" ||
148
- ((!sortMode || sortMode === "single") && stateNow.ui.isCtrlPressed);
149
- // Update all priority cells
150
- for (const col of stateNow.view.internalColumns) {
151
- const container = runtime.headerContainers.get(col.id);
152
- if (!container)
153
- continue;
154
- const priorityEl = container.querySelector(`.${PG_CSS_CLASS.sortPriority}`);
155
- if (!priorityEl)
156
- continue;
157
- if (showPriorities && col.sortPriority != null) {
158
- priorityEl.textContent = col.sortPriority.toString();
159
- }
160
- else {
161
- priorityEl.textContent = "";
162
- }
163
- }
164
- // If this column is no longer sorted, clear its priority
165
- if (order === "original") {
166
- const container = runtime.headerContainers.get(col.id);
167
- const priorityEl = container?.querySelector(`.${PG_CSS_CLASS.sortPriority}`);
168
- if (priorityEl)
169
- priorityEl.textContent = "";
170
- }
171
- cell.setAttribute("sortdir", order);
97
+ renderSortAndPriorityIcon(grid, order, iconContainer, store, col, cell);
172
98
  });
173
99
  runtime.headerSubscriptions.set(col.id, unsubscribe);
174
100
  grid._destroy$.subscribe(() => {
@@ -183,59 +109,13 @@ export function renderHeaderCells(header, store, gridDom, grid, region) {
183
109
  if (state.view.filterable === "menu" &&
184
110
  col.field !== "group-column" &&
185
111
  col.field !== "cbx-column") {
186
- const iconContainer = document.createElement("span");
187
- const iconNode = grid._services.icon.renderIcon(grid._services.icon, "filter");
188
- iconContainer.replaceChildren(iconNode ?? "");
189
- iconContainer.classList.add(PG_CSS_CLASS.filterIcon);
190
- iconContainer.classList.toggle(PG_CSS_CLASS.disabled, state.view.externalLoading);
191
- grid._runtime.menuFilterIcons.set(col.id, iconContainer);
192
- cell.appendChild(iconContainer);
193
- addDomListener(gridDom, iconContainer, "click", (e) => {
194
- e.stopPropagation();
195
- grid._services.filter.menuFilterIconClick(grid, col);
196
- });
197
- const active = state.view.columnsWithActiveMenuFilters.has(col.id);
198
- iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
199
- const unsubActiveFilter = grid._services.filter
200
- .activeMenuFilterForColumn(col.id)
201
- .subscribe((active) => {
202
- iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
203
- });
204
- runtime.activeMenuFilterSubscr.set(col.id, unsubActiveFilter);
205
- grid._destroy$.subscribe(() => {
206
- for (const unsub of runtime.activeMenuFilterSubscr.values()) {
207
- unsub();
208
- }
209
- });
112
+ renderMenuFilterIcon(grid, col, state, cell);
210
113
  }
211
114
  // excel filter
212
115
  if (state.view.filterable === "excel" &&
213
116
  col.field !== "group-column" &&
214
117
  col.field !== "cbx-column") {
215
- const iconContainer = document.createElement("span");
216
- const iconNode = grid._services.icon.renderIcon(grid._services.icon, "filter");
217
- iconContainer.replaceChildren(iconNode ?? "");
218
- iconContainer.classList.add(PG_CSS_CLASS.filterIcon);
219
- iconContainer.classList.toggle(PG_CSS_CLASS.disabled, state.view.externalLoading);
220
- grid._runtime.excelFilterIcons.set(col.id, iconContainer);
221
- cell.appendChild(iconContainer);
222
- addDomListener(gridDom, iconContainer, "click", (e) => {
223
- e.stopPropagation();
224
- grid._services.filter.excelFilterIconClick(grid, col);
225
- });
226
- const active = state.view.columnsWithActiveExcelFilters.has(col.id);
227
- iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
228
- const unsubActiveFilter = grid._services.filter
229
- .activeExcelFilterForColumn(col.id)
230
- .subscribe((active) => {
231
- iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
232
- });
233
- runtime.activeExcelFilterSubscr.set(col.id, unsubActiveFilter);
234
- grid._destroy$.subscribe(() => {
235
- for (const unsub of runtime.activeExcelFilterSubscr.values()) {
236
- unsub();
237
- }
238
- });
118
+ renderExcelFilterIcon(grid, col, state, cell);
239
119
  }
240
120
  // grouping
241
121
  if (state.view.groupable) {
@@ -1 +1 @@
1
- {"version":3,"file":"header-cells.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/header-cells.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header-cells.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/header-cells.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 renderMenuFilterIcon(grid: PolyGrid, col: InternalColumn, state: PolyGridState, cell: HTMLDivElement): void;
5
+ //# sourceMappingURL=menu-filter-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu-filter-icon.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/menu-filter-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,QAmCrB"}
@@ -0,0 +1,29 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ import { addDomListener } from "../../../../core/methods";
3
+ export function renderMenuFilterIcon(grid, col, state, cell) {
4
+ const iconContainer = document.createElement("span");
5
+ const iconNode = grid._services.icon.renderIcon(grid._services.icon, "filter");
6
+ iconContainer.replaceChildren(iconNode ?? "");
7
+ iconContainer.classList.add(PG_CSS_CLASS.filterIcon);
8
+ iconContainer.classList.toggle(PG_CSS_CLASS.disabled, state.view.externalLoading);
9
+ grid._runtime.menuFilterIcons.set(col.id, iconContainer);
10
+ cell.appendChild(iconContainer);
11
+ addDomListener(grid._gridDom, iconContainer, "click", (e) => {
12
+ e.stopPropagation();
13
+ grid._services.filter.menuFilterIconClick(grid, col);
14
+ });
15
+ const active = state.view.columnsWithActiveMenuFilters.has(col.id);
16
+ iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
17
+ const unsubActiveFilter = grid._services.filter
18
+ .activeMenuFilterForColumn(col.id)
19
+ .subscribe((active) => {
20
+ iconContainer.classList.toggle(PG_CSS_CLASS.activeFilter, active);
21
+ });
22
+ grid._runtime.activeMenuFilterSubscr.set(col.id, unsubActiveFilter);
23
+ grid._destroy$.subscribe(() => {
24
+ for (const unsub of grid._runtime.activeMenuFilterSubscr.values()) {
25
+ unsub();
26
+ }
27
+ });
28
+ }
29
+ //# sourceMappingURL=menu-filter-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu-filter-icon.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/menu-filter-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,QAAQ,CACT,CAAC;IACF,aAAa,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrD,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,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACnE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;SAC5C,yBAAyB,CAAC,GAAG,CAAC,EAAE,CAAC;SACjC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;QACpB,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IACL,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;IACpE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE;QAC5B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,EAAE,CAAC;YAClE,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ import { PolyGridStore } from "../../../../store/store";
3
+ import { InternalColumn } from "../../../column/interfaces/internal-column";
4
+ import { PolyGridSortOrder } from "../../../sort/types/sort-order";
5
+ export declare function renderSortAndPriorityIcon(grid: PolyGrid, order: PolyGridSortOrder, iconContainer: HTMLSpanElement, store: PolyGridStore, col: InternalColumn, cell: HTMLDivElement): void;
6
+ //# sourceMappingURL=sort-and-priority-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-and-priority-icon.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/sort-and-priority-icon.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,iBAAiB,EACxB,aAAa,EAAE,eAAe,EAC9B,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,cAAc,QA2CrB"}
@@ -0,0 +1,36 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ export function renderSortAndPriorityIcon(grid, order, iconContainer, store, col, cell) {
3
+ const iconName = grid._services.sort.getSortIconName(order);
4
+ const iconNode = grid._services.icon.renderIcon(grid._services.icon, iconName);
5
+ iconContainer.replaceChildren(iconNode ?? "");
6
+ // --- PRIORITY RENDERING ---
7
+ const stateNow = store.getState();
8
+ const sortSettings = stateNow.view.sortSettings;
9
+ const sortMode = sortSettings?.sortMode;
10
+ const showPriorities = sortMode === "multiple" ||
11
+ ((!sortMode || sortMode === "single") && stateNow.ui.isCtrlPressed);
12
+ // Update all priority cells
13
+ for (const col of stateNow.view.internalColumns) {
14
+ const container = grid._runtime.headerContainers.get(col.id);
15
+ if (!container)
16
+ continue;
17
+ const priorityEl = container.querySelector(`.${PG_CSS_CLASS.sortPriority}`);
18
+ if (!priorityEl)
19
+ continue;
20
+ if (showPriorities && col.sortPriority != null) {
21
+ priorityEl.textContent = col.sortPriority.toString();
22
+ }
23
+ else {
24
+ priorityEl.textContent = "";
25
+ }
26
+ }
27
+ // If this column is no longer sorted, clear its priority
28
+ if (order === "original") {
29
+ const container = grid._runtime.headerContainers.get(col.id);
30
+ const priorityEl = container?.querySelector(`.${PG_CSS_CLASS.sortPriority}`);
31
+ if (priorityEl)
32
+ priorityEl.textContent = "";
33
+ }
34
+ cell.setAttribute("sortdir", order);
35
+ }
36
+ //# sourceMappingURL=sort-and-priority-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-and-priority-icon.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/sort-and-priority-icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAM9D,MAAM,UAAU,yBAAyB,CACvC,IAAc,EACd,KAAwB,EACxB,aAA8B,EAC9B,KAAoB,EACpB,GAAmB,EACnB,IAAoB;IAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAC7C,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,QAAQ,CACT,CAAC;IACF,aAAa,CAAC,eAAe,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAE9C,6BAA6B;IAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAClC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;IAChD,MAAM,QAAQ,GAAG,YAAY,EAAE,QAAQ,CAAC;IAExC,MAAM,cAAc,GAClB,QAAQ,KAAK,UAAU;QACvB,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,QAAQ,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IAEtE,4BAA4B;IAC5B,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CACxC,IAAI,YAAY,CAAC,YAAY,EAAE,CACjB,CAAC;QACjB,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,IAAI,cAAc,IAAI,GAAG,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAC/C,UAAU,CAAC,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,WAAW,GAAG,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,SAAS,EAAE,aAAa,CACzC,IAAI,YAAY,CAAC,YAAY,EAAE,CACjB,CAAC;QACjB,IAAI,UAAU;YAAE,UAAU,CAAC,WAAW,GAAG,EAAE,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACtC,CAAC"}
@@ -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 sortHandler(grid: PolyGrid, col: InternalColumn, state: PolyGridState, ev: PointerEvent): void;
5
+ //# sourceMappingURL=sort-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-handler.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/sort-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAE5E,wBAAgB,WAAW,CACzB,IAAI,EAAE,QAAQ,EACd,GAAG,EAAE,cAAc,EACnB,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,YAAY,QAsBjB"}
@@ -0,0 +1,22 @@
1
+ export function sortHandler(grid, col, state, ev) {
2
+ const isGrouped = grid._store.getState().view.groupingState.isGridGrouped;
3
+ if (isGrouped) {
4
+ const groupedColumn = grid._store
5
+ .getState()
6
+ .view.groupingState.groupedColumns.find((gc) => gc.column.id === col.id);
7
+ grid._store.update((draft) => (draft.view.viewRowsChangeReason = "sort"));
8
+ if (state.view.enableAnimations)
9
+ grid._services.animation.captureBeforeRowPositions(grid._services.animation, grid);
10
+ if (groupedColumn) {
11
+ // Column is grouped → toggle group sorting
12
+ grid._services.grouping.sortGroup(grid, groupedColumn);
13
+ }
14
+ else {
15
+ grid._services.grouping.sortInsideGroups(grid, col);
16
+ }
17
+ }
18
+ else {
19
+ grid._services.sort.sort(col, ev, grid._services.sort, grid);
20
+ }
21
+ }
22
+ //# sourceMappingURL=sort-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-handler.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/header/sort-handler.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,WAAW,CACzB,IAAc,EACd,GAAmB,EACnB,KAAoB,EACpB,EAAgB;IAEhB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;IAC1E,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM;aAC9B,QAAQ,EAAE;aACV,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,CAAC,CAAC;QAC1E,IAAI,KAAK,CAAC,IAAI,CAAC,gBAAgB;YAC7B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,yBAAyB,CAChD,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,IAAI,CACL,CAAC;QACJ,IAAI,aAAa,EAAE,CAAC;YAClB,2CAA2C;YAC3C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"row-pool.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-pool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAKzE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,IAAI,CAAW;IAEvB,sBAAsB,UAAS;gBAG7B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,cAAc,EAAE,EACzB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,EACd,cAAc,EAAE,MAAM;IAkBxB,OAAO,CAAC,UAAU;IAqClB,MAAM,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAuTlD,OAAO;IASP,OAAO;CAGR"}
1
+ {"version":3,"file":"row-pool.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-pool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAQzE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,IAAI,CAAW;IAEvB,sBAAsB,UAAS;gBAG7B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,cAAc,EAAE,EACzB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,EACd,cAAc,EAAE,MAAM;IAkBxB,OAAO,CAAC,UAAU;IAUlB,MAAM,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IA8MlD,OAAO;IASP,OAAO;CAGR"}
@@ -1,9 +1,11 @@
1
1
  import { PG_CSS_CLASS } from "../../../const/pg-css-class";
2
- import { cleanupElementDeep } from "../../../core/methods";
3
- import { renderRows } from "../../renderer/parts/body/row";
4
2
  import { renderLoading } from "../../renderer/parts/loading/loading";
5
3
  import { renderNoData } from "../../renderer/parts/no-data/no-data";
6
- import { RowInstance } from "./row-instance";
4
+ import { cleanUp } from "../methods/clean-up";
5
+ import { playFilterAnim } from "../methods/play-filter-anim";
6
+ import { playPagingAnim } from "../methods/play-paging-anim";
7
+ import { renderRowPool } from "../methods/render-row-pool";
8
+ import { updateGroups } from "../methods/update-groups";
7
9
  export class RowPool {
8
10
  constructor(gridDom, columns, rowHeight, grid, viewportHeight) {
9
11
  this.rows = [];
@@ -21,27 +23,7 @@ export class RowPool {
21
23
  });
22
24
  }
23
25
  createPool() {
24
- // Create dummy rows for initial rendering
25
- const dummyRows = Array.from({ length: this.poolSize }, (_, i) => ({
26
- index: i,
27
- data: {}, // empty data, will be updated later
28
- }));
29
- // Use existing renderRows() to create row DOM + cells
30
- const rowTriples = renderRows(dummyRows, this.columns, this.rowHeight, this.grid);
31
- const fragmentLeft = document.createDocumentFragment();
32
- const fragmentMain = document.createDocumentFragment();
33
- const fragmentRight = document.createDocumentFragment();
34
- for (let i = 0; i < this.poolSize; i++) {
35
- const triple = rowTriples[i];
36
- const row = new RowInstance(triple, this.grid);
37
- this.rows.push(row);
38
- fragmentLeft.appendChild(row.elLeft);
39
- fragmentMain.appendChild(row.elMain);
40
- fragmentRight.appendChild(row.elRight);
41
- }
42
- this.gridDom.leftBody.appendChild(fragmentLeft);
43
- this.gridDom.body.appendChild(fragmentMain);
44
- this.gridDom.rightBody.appendChild(fragmentRight);
26
+ renderRowPool(this.poolSize, this.columns, this.rowHeight, this.grid, this.rows);
45
27
  }
46
28
  update(v, data) {
47
29
  if (!data)
@@ -105,16 +87,7 @@ export class RowPool {
105
87
  const newY = rowIndex * v.rowHeight;
106
88
  rowInstance.currentIndex = rowIndex;
107
89
  rowInstance.rowId = viewRow.rowId;
108
- cleanupElementDeep(rowInstance.elLeft);
109
- cleanupElementDeep(rowInstance.elMain);
110
- cleanupElementDeep(rowInstance.elRight);
111
- // Always reset transition
112
- rowInstance.elLeft.style.removeProperty("transition");
113
- rowInstance.elMain.style.removeProperty("transition");
114
- rowInstance.elRight.style.removeProperty("transition");
115
- rowInstance.elLeft.style.removeProperty("opacity");
116
- rowInstance.elMain.style.removeProperty("opacity");
117
- rowInstance.elRight.style.removeProperty("opacity");
90
+ cleanUp(rowInstance);
118
91
  // ungrouped case
119
92
  if (viewRow.kind === "data") {
120
93
  const rowData = viewRow.row;
@@ -123,32 +96,7 @@ export class RowPool {
123
96
  if (animEnabled) {
124
97
  // Paging animation takes priority over all others
125
98
  if (isPagingAnim) {
126
- const els = [
127
- rowInstance.elLeft,
128
- rowInstance.elMain,
129
- rowInstance.elRight,
130
- ];
131
- els.forEach((el) => {
132
- el.style.opacity = "0";
133
- el.style.transform = `translateY(${newY + 6}px)`;
134
- });
135
- requestAnimationFrame(() => {
136
- els.forEach((el) => {
137
- el.style.transition =
138
- "opacity 500ms ease, transform 500ms ease";
139
- el.style.opacity = "1";
140
- el.style.transform = `translateY(${newY}px)`;
141
- });
142
- // Only reset once, not for every row
143
- if (rowIndex === v.renderStartIndex) {
144
- requestAnimationFrame(() => {
145
- this.grid._store.update((draft) => {
146
- draft.view.isPagingTransition = false;
147
- });
148
- });
149
- }
150
- });
151
- rowInstance.show();
99
+ playPagingAnim(rowInstance, newY, rowIndex, v, this.grid);
152
100
  continue;
153
101
  }
154
102
  if (isSortAnim || isLoadAnim) {
@@ -169,14 +117,7 @@ export class RowPool {
169
117
  }
170
118
  }
171
119
  else if (isFilterAnim) {
172
- [
173
- rowInstance.elLeft,
174
- rowInstance.elMain,
175
- rowInstance.elRight,
176
- ].forEach((el) => {
177
- el.style.opacity = "0";
178
- el.style.transform = `translateY(${newY + 8}px)`;
179
- });
120
+ playFilterAnim(rowInstance, newY);
180
121
  }
181
122
  else {
182
123
  // For group/expand/collapse/scroll → normal placement
@@ -206,54 +147,15 @@ export class RowPool {
206
147
  clearCells(rightCells, viewRow.rowId);
207
148
  const cells = [...leftCells, ...mainCells, ...rightCells];
208
149
  if (viewRow.kind === "group") {
209
- // in single group column mode we use only the first column, but after the checkbox column, if there is one
210
- const state = this.grid._store.getState();
211
- if (state.view.groupingState.displayMode === "single-group-column")
212
- rowInstance.updateGroup(viewRow.group, !hasCbxColumn
213
- ? cells[0]
214
- : cells[1], cells);
215
- // in multiple group column mode we use the other cells too according to the group level
216
- if (state.view.groupingState.displayMode === "multiple-group-columns")
217
- rowInstance.updateGroup(viewRow.group, cells[!hasCbxColumn ? viewRow.group.level : 1 + viewRow.group.level], cells);
218
- // we render a group row without cells (we keep the first cell)
219
- if (state.view.groupingState.displayMode === "group-rows") {
220
- cells[0].classList.toggle("checkbox-col", hasCbxColumn);
221
- rowInstance.updateGroup(viewRow.group, !hasCbxColumn
222
- ? cells[0]
223
- : cells[1], cells);
224
- }
150
+ updateGroups(this.grid, rowInstance, viewRow, hasCbxColumn, cells);
225
151
  }
226
152
  if (viewRow.kind === "footer") {
227
153
  rowInstance.updateGroupFooter(viewRow.group, cells);
228
154
  }
229
155
  if (animEnabled) {
156
+ // Paging animation takes priority over all others
230
157
  if (isPagingAnim) {
231
- const els = [
232
- rowInstance.elLeft,
233
- rowInstance.elMain,
234
- rowInstance.elRight,
235
- ];
236
- els.forEach((el) => {
237
- el.style.opacity = "0";
238
- el.style.transform = `translateY(${newY + 6}px)`;
239
- });
240
- requestAnimationFrame(() => {
241
- els.forEach((el) => {
242
- el.style.transition =
243
- "opacity 500ms ease, transform 500ms ease";
244
- el.style.opacity = "1";
245
- el.style.transform = `translateY(${newY}px)`;
246
- });
247
- // Only reset once, not for every row
248
- if (rowIndex === v.renderStartIndex) {
249
- requestAnimationFrame(() => {
250
- this.grid._store.update((draft) => {
251
- draft.view.isPagingTransition = false;
252
- });
253
- });
254
- }
255
- });
256
- rowInstance.show();
158
+ playPagingAnim(rowInstance, newY, rowIndex, v, this.grid);
257
159
  continue;
258
160
  }
259
161
  if (isSortAnim) {
@@ -276,14 +178,7 @@ export class RowPool {
276
178
  continue;
277
179
  }
278
180
  else if (isFilterAnim) {
279
- [
280
- rowInstance.elLeft,
281
- rowInstance.elMain,
282
- rowInstance.elRight,
283
- ].forEach((el) => {
284
- el.style.opacity = "0";
285
- el.style.transform = `translateY(${newY + 8}px)`;
286
- });
181
+ playFilterAnim(rowInstance, newY);
287
182
  rowInstance.show();
288
183
  continue;
289
184
  }
@@ -1 +1 @@
1
- {"version":3,"file":"row-pool.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"row-pool.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-pool.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,20 @@ export * from "./row";
2
2
  import { createRowPool } from "./methods/create-row-pool";
3
3
  import { updateVirtualRows } from "./methods/update-virtual-rows";
4
4
  import { recomputeVirtualRows } from "./methods/recompute-virtual-rows";
5
+ import { renderRowPool } from "./methods/render-row-pool";
6
+ import { updateGroups } from "./methods/update-groups";
7
+ import { playPagingAnim } from "./methods/play-paging-anim";
8
+ import { cleanUp } from "./methods/clean-up";
9
+ import { playFilterAnim } from "./methods/play-filter-anim";
5
10
  export declare const methods: {
6
11
  createRowPool: typeof createRowPool;
7
12
  updateVirtualRows: typeof updateVirtualRows;
8
13
  recomputeVirtualRows: typeof recomputeVirtualRows;
14
+ renderRowPool: typeof renderRowPool;
15
+ updateGroups: typeof updateGroups;
16
+ playPagingAnim: typeof playPagingAnim;
17
+ cleanUp: typeof cleanUp;
18
+ playFilterAnim: typeof playFilterAnim;
9
19
  };
10
20
  export type RowMethods = typeof methods;
11
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/engine/services/row/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,eAAO,MAAM,OAAO;;;;CAInB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/engine/services/row/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,eAAO,MAAM,OAAO;;;;;;;;;CASnB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC"}
@@ -2,9 +2,19 @@ export * from "./row";
2
2
  import { createRowPool } from "./methods/create-row-pool";
3
3
  import { updateVirtualRows } from "./methods/update-virtual-rows";
4
4
  import { recomputeVirtualRows } from "./methods/recompute-virtual-rows";
5
+ import { renderRowPool } from "./methods/render-row-pool";
6
+ import { updateGroups } from "./methods/update-groups";
7
+ import { playPagingAnim } from "./methods/play-paging-anim";
8
+ import { cleanUp } from "./methods/clean-up";
9
+ import { playFilterAnim } from "./methods/play-filter-anim";
5
10
  export const methods = {
6
11
  createRowPool,
7
12
  updateVirtualRows,
8
13
  recomputeVirtualRows,
14
+ renderRowPool,
15
+ updateGroups,
16
+ playPagingAnim,
17
+ cleanUp,
18
+ playFilterAnim,
9
19
  };
10
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/engine/services/row/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,aAAa;IACb,iBAAiB;IACjB,oBAAoB;CACrB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/engine/services/row/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,aAAa;IACb,iBAAiB;IACjB,oBAAoB;IACpB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,OAAO;IACP,cAAc;CACf,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { RowInstance } from "../classes/row-instance";
2
+ export declare function cleanUp(rowInstance: RowInstance): void;
3
+ //# sourceMappingURL=clean-up.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clean-up.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/clean-up.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,wBAAgB,OAAO,CAAC,WAAW,EAAE,WAAW,QAa/C"}
@@ -0,0 +1,14 @@
1
+ import { cleanupElementDeep } from "../../../core/methods";
2
+ export function cleanUp(rowInstance) {
3
+ cleanupElementDeep(rowInstance.elLeft);
4
+ cleanupElementDeep(rowInstance.elMain);
5
+ cleanupElementDeep(rowInstance.elRight);
6
+ // Always reset transition
7
+ rowInstance.elLeft.style.removeProperty("transition");
8
+ rowInstance.elMain.style.removeProperty("transition");
9
+ rowInstance.elRight.style.removeProperty("transition");
10
+ rowInstance.elLeft.style.removeProperty("opacity");
11
+ rowInstance.elMain.style.removeProperty("opacity");
12
+ rowInstance.elRight.style.removeProperty("opacity");
13
+ }
14
+ //# sourceMappingURL=clean-up.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clean-up.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/clean-up.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAG3D,MAAM,UAAU,OAAO,CAAC,WAAwB;IAC9C,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,kBAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAExC,0BAA0B;IAC1B,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;IACtD,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;IACtD,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;IAEvD,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACnD,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACnD,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AACtD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { RowInstance } from "../classes/row-instance";
2
+ export declare function playFilterAnim(rowInstance: RowInstance, newY: number): void;
3
+ //# sourceMappingURL=play-filter-anim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"play-filter-anim.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/play-filter-anim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,wBAAgB,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,QAOpE"}
@@ -0,0 +1,7 @@
1
+ export function playFilterAnim(rowInstance, newY) {
2
+ [rowInstance.elLeft, rowInstance.elMain, rowInstance.elRight].forEach((el) => {
3
+ el.style.opacity = "0";
4
+ el.style.transform = `translateY(${newY + 8}px)`;
5
+ });
6
+ }
7
+ //# sourceMappingURL=play-filter-anim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"play-filter-anim.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/play-filter-anim.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,cAAc,CAAC,WAAwB,EAAE,IAAY;IACnE,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,CACnE,CAAC,EAAE,EAAE,EAAE;QACL,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACvB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,IAAI,GAAG,CAAC,KAAK,CAAC;IACnD,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { PolyGrid } from "../../../core/grid";
2
+ import { VirtualRowsState } from "../../../store/interfaces/virtual-rows-state";
3
+ import { RowInstance } from "../classes/row-instance";
4
+ export declare function playPagingAnim(rowInstance: RowInstance, newY: number, rowIndex: number, v: VirtualRowsState, grid: PolyGrid): void;
5
+ //# sourceMappingURL=play-paging-anim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"play-paging-anim.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/play-paging-anim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,wBAAgB,cAAc,CAC5B,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,CAAC,EAAE,gBAAgB,EACnB,IAAI,EAAE,QAAQ,QAuBf"}
@@ -0,0 +1,24 @@
1
+ export function playPagingAnim(rowInstance, newY, rowIndex, v, grid) {
2
+ const els = [rowInstance.elLeft, rowInstance.elMain, rowInstance.elRight];
3
+ els.forEach((el) => {
4
+ el.style.opacity = "0";
5
+ el.style.transform = `translateY(${newY + 6}px)`;
6
+ });
7
+ requestAnimationFrame(() => {
8
+ els.forEach((el) => {
9
+ el.style.transition = "opacity 500ms ease, transform 500ms ease";
10
+ el.style.opacity = "1";
11
+ el.style.transform = `translateY(${newY}px)`;
12
+ });
13
+ // Only reset once, not for every row
14
+ if (rowIndex === v.renderStartIndex) {
15
+ requestAnimationFrame(() => {
16
+ grid._store.update((draft) => {
17
+ draft.view.isPagingTransition = false;
18
+ });
19
+ });
20
+ }
21
+ });
22
+ rowInstance.show();
23
+ }
24
+ //# sourceMappingURL=play-paging-anim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"play-paging-anim.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/play-paging-anim.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,cAAc,CAC5B,WAAwB,EACxB,IAAY,EACZ,QAAgB,EAChB,CAAmB,EACnB,IAAc;IAEd,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1E,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QACjB,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACvB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,IAAI,GAAG,CAAC,KAAK,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,qBAAqB,CAAC,GAAG,EAAE;QACzB,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YACjB,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,0CAA0C,CAAC;YACjE,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YACvB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,IAAI,KAAK,CAAC;QAC/C,CAAC,CAAC,CAAC;QACH,qCAAqC;QACrC,IAAI,QAAQ,KAAK,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACpC,qBAAqB,CAAC,GAAG,EAAE;gBACzB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC3B,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;gBACxC,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IACH,WAAW,CAAC,IAAI,EAAE,CAAC;AACrB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { PolyGrid } from "../../../core/grid";
2
+ import { InternalColumn } from "../../column/interfaces/internal-column";
3
+ import { RowInstance } from "../classes/row-instance";
4
+ export declare function renderRowPool(poolSize: number, columns: InternalColumn[], rowHeight: number, grid: PolyGrid, rows: RowInstance[]): void;
5
+ //# sourceMappingURL=render-row-pool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-row-pool.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/render-row-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGtD,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,cAAc,EAAE,EACzB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,WAAW,EAAE,QA4BpB"}
@@ -0,0 +1,26 @@
1
+ import { renderRows } from "../../renderer/parts/body/row";
2
+ import { RowInstance } from "../classes/row-instance";
3
+ export function renderRowPool(poolSize, columns, rowHeight, grid, rows) {
4
+ // Create dummy rows for initial rendering
5
+ const dummyRows = Array.from({ length: poolSize }, (_, i) => ({
6
+ index: i,
7
+ data: {}, // empty data, will be updated later
8
+ }));
9
+ // Use existing renderRows() to create row DOM + cells
10
+ const rowTriples = renderRows(dummyRows, columns, rowHeight, grid);
11
+ const fragmentLeft = document.createDocumentFragment();
12
+ const fragmentMain = document.createDocumentFragment();
13
+ const fragmentRight = document.createDocumentFragment();
14
+ for (let i = 0; i < poolSize; i++) {
15
+ const triple = rowTriples[i];
16
+ const row = new RowInstance(triple, grid);
17
+ rows.push(row);
18
+ fragmentLeft.appendChild(row.elLeft);
19
+ fragmentMain.appendChild(row.elMain);
20
+ fragmentRight.appendChild(row.elRight);
21
+ }
22
+ grid._gridDom.leftBody.appendChild(fragmentLeft);
23
+ grid._gridDom.body.appendChild(fragmentMain);
24
+ grid._gridDom.rightBody.appendChild(fragmentRight);
25
+ }
26
+ //# sourceMappingURL=render-row-pool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-row-pool.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/render-row-pool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGtD,MAAM,UAAU,aAAa,CAC3B,QAAgB,EAChB,OAAyB,EACzB,SAAiB,EACjB,IAAc,EACd,IAAmB;IAEnB,0CAA0C;IAC1C,MAAM,SAAS,GAAkB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,EAAE,EAAE,oCAAoC;KAC/C,CAAC,CAAC,CAAC;IAEJ,sDAAsD;IACtD,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAEnE,MAAM,YAAY,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IACvD,MAAM,YAAY,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IACvD,MAAM,aAAa,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IAExD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEf,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC7C,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { PolyGrid } from "../../../core/grid";
2
+ import { Group } from "../../grouping/interfaces/group";
3
+ import { RowInstance } from "../classes/row-instance";
4
+ export declare function updateGroups(grid: PolyGrid, rowInstance: RowInstance, viewRow: {
5
+ kind: "group";
6
+ rowId: string;
7
+ group: Group;
8
+ level: number;
9
+ path: string;
10
+ }, hasCbxColumn: boolean | undefined, cells: Element[]): void;
11
+ //# sourceMappingURL=update-groups.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-groups.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/update-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,QAAQ,EACd,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE;IACP,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,EACD,YAAY,EAAE,OAAO,GAAG,SAAS,EACjC,KAAK,EAAE,OAAO,EAAE,QAgCjB"}
@@ -0,0 +1,19 @@
1
+ export function updateGroups(grid, rowInstance, viewRow, hasCbxColumn, cells) {
2
+ // in single group column mode we use only the first column, but after the checkbox column, if there is one
3
+ const state = grid._store.getState();
4
+ if (state.view.groupingState.displayMode === "single-group-column")
5
+ rowInstance.updateGroup(viewRow.group, !hasCbxColumn
6
+ ? cells[0]
7
+ : cells[1], cells);
8
+ // in multiple group column mode we use the other cells too according to the group level
9
+ if (state.view.groupingState.displayMode === "multiple-group-columns")
10
+ rowInstance.updateGroup(viewRow.group, cells[!hasCbxColumn ? viewRow.group.level : 1 + viewRow.group.level], cells);
11
+ // we render a group row without cells (we keep the first cell)
12
+ if (state.view.groupingState.displayMode === "group-rows") {
13
+ cells[0].classList.toggle("checkbox-col", hasCbxColumn);
14
+ rowInstance.updateGroup(viewRow.group, !hasCbxColumn
15
+ ? cells[0]
16
+ : cells[1], cells);
17
+ }
18
+ }
19
+ //# sourceMappingURL=update-groups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-groups.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/methods/update-groups.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,YAAY,CAC1B,IAAc,EACd,WAAwB,EACxB,OAMC,EACD,YAAiC,EACjC,KAAgB;IAEhB,2GAA2G;IAC3G,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,KAAK,qBAAqB;QAChE,WAAW,CAAC,WAAW,CACrB,OAAO,CAAC,KAAK,EACb,CAAC,YAAY;YACX,CAAC,CAAE,KAAK,CAAC,CAAC,CAAoB;YAC9B,CAAC,CAAE,KAAK,CAAC,CAAC,CAAoB,EAChC,KAAK,CACN,CAAC;IACJ,wFAAwF;IACxF,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,KAAK,wBAAwB;QACnE,WAAW,CAAC,WAAW,CACrB,OAAO,CAAC,KAAK,EACb,KAAK,CACH,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAC5C,EACnB,KAAK,CACN,CAAC;IACJ,+DAA+D;IAC/D,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,KAAK,YAAY,EAAE,CAAC;QACzD,KAAK,CAAC,CAAC,CAAoB,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAC5E,WAAW,CAAC,WAAW,CACrB,OAAO,CAAC,KAAK,EACb,CAAC,YAAY;YACX,CAAC,CAAE,KAAK,CAAC,CAAC,CAAoB;YAC9B,CAAC,CAAE,KAAK,CAAC,CAAC,CAAoB,EAChC,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polygrid/core",
3
- "version": "1.0.535",
3
+ "version": "1.0.536",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",