@polygrid/core 1.0.433 → 1.0.434

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.
@@ -1 +1 @@
1
- {"version":3,"file":"footer-cells.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/footer/footer-cells.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,QAAQ,QAiFf"}
1
+ {"version":3,"file":"footer-cells.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/footer/footer-cells.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,QAAQ,QAkFf"}
@@ -6,7 +6,8 @@ export function renderFooterCells(footer, store, grid) {
6
6
  // Clear previous DOM
7
7
  footer.innerHTML = "";
8
8
  // Visible rows (PolyGridRow[])
9
- const rows = state.view.rows;
9
+ const rawRows = state.view.rows ?? [];
10
+ const safeRows = makeSafeRows(rawRows);
10
11
  columns.forEach((col, i) => {
11
12
  const cell = document.createElement("div");
12
13
  cell.setAttribute("col-id", col.id);
@@ -19,7 +20,7 @@ export function renderFooterCells(footer, store, grid) {
19
20
  prevHandle?.destroy();
20
21
  runtime.footerHandles.delete(col.id);
21
22
  // Compute column values
22
- const values = rows.map((r) => r.data[col.field]);
23
+ const values = rawRows.map((r) => r.data[col.field]);
23
24
  let rendered = false;
24
25
  // dynamic template
25
26
  const handle = state.view.rendererAdapter?.renderColumnFooterTemplate?.({
@@ -30,7 +31,7 @@ export function renderFooterCells(footer, store, grid) {
30
31
  columnKey: `${col.field}::${col.header}`,
31
32
  columnId: col.id,
32
33
  values,
33
- rows,
34
+ rows: safeRows,
34
35
  },
35
36
  });
36
37
  if (handle) {
@@ -45,7 +46,7 @@ export function renderFooterCells(footer, store, grid) {
45
46
  columnKey: `${col.field}::${col.header}`,
46
47
  columnId: col.id,
47
48
  values,
48
- rows,
49
+ rows: safeRows,
49
50
  });
50
51
  if (typeof result === "string") {
51
52
  content.textContent = result;
@@ -65,4 +66,25 @@ export function renderFooterCells(footer, store, grid) {
65
66
  footer.appendChild(cell);
66
67
  });
67
68
  }
69
+ function makeSafeData(data) {
70
+ return new Proxy(data ?? {}, {
71
+ get(target, prop) {
72
+ return target[prop] ?? undefined;
73
+ },
74
+ });
75
+ }
76
+ function makeSafeRows(rows) {
77
+ return new Proxy(rows, {
78
+ get(target, prop) {
79
+ const value = target[prop];
80
+ if (value === undefined) {
81
+ return { index: -1, data: makeSafeData({}) };
82
+ }
83
+ return {
84
+ ...value,
85
+ data: makeSafeData(value.data),
86
+ };
87
+ },
88
+ });
89
+ }
68
90
  //# sourceMappingURL=footer-cells.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"footer-cells.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/footer/footer-cells.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"footer-cells.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/footer/footer-cells.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polygrid/core",
3
- "version": "1.0.433",
3
+ "version": "1.0.434",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",