@polygrid/core 1.0.431 → 1.0.432
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":"row-instance.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-instance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,qBAAa,WAAW;IACtB,EAAE,EAAE,cAAc,CAAC;IACnB,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,KAAK,CAAgB;
|
|
1
|
+
{"version":3,"file":"row-instance.d.ts","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-instance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,qBAAa,WAAW;IACtB,EAAE,EAAE,cAAc,CAAC;IACnB,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,WAAW,CAA0B;gBAEjC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa;IAQvD,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;IA0D7C,SAAS,CAAC,CAAC,EAAE,MAAM;IAInB,IAAI;IAIJ,IAAI;CAGL"}
|
|
@@ -1,19 +1,60 @@
|
|
|
1
1
|
import { PG_CSS_CLASS } from "../../../const/pg-css-class";
|
|
2
2
|
export class RowInstance {
|
|
3
3
|
constructor(rowEl, store) {
|
|
4
|
+
this.cellHandles = new Map();
|
|
4
5
|
this.el = rowEl;
|
|
5
6
|
this.store = store;
|
|
6
7
|
// Cache cell elements for fast updates
|
|
7
8
|
this.cells = Array.from(rowEl.querySelectorAll(`.${PG_CSS_CLASS.cell}`));
|
|
8
9
|
}
|
|
9
10
|
update(rowData, rowIndex) {
|
|
10
|
-
|
|
11
|
+
const state = this.store.getState();
|
|
11
12
|
for (const cellEl of this.cells) {
|
|
12
13
|
const colId = cellEl.getAttribute("col-id");
|
|
13
|
-
const col =
|
|
14
|
-
.getState()
|
|
15
|
-
.view.internalColumns.find((col) => col.id === colId);
|
|
14
|
+
const col = state.view.internalColumns.find((c) => c.id === colId);
|
|
16
15
|
const value = rowData.data[col.field];
|
|
16
|
+
const key = col.id;
|
|
17
|
+
// 1. Cleanup previous handle
|
|
18
|
+
const prevHandle = this.cellHandles.get(key);
|
|
19
|
+
prevHandle?.destroy?.();
|
|
20
|
+
this.cellHandles.delete(key);
|
|
21
|
+
// 2. Dynamic template renderer?
|
|
22
|
+
const handle = state.view.rendererAdapter?.renderColumnCellTemplate?.({
|
|
23
|
+
container: cellEl,
|
|
24
|
+
context: {
|
|
25
|
+
row: rowData,
|
|
26
|
+
value,
|
|
27
|
+
field: col.field,
|
|
28
|
+
header: col.header,
|
|
29
|
+
columnKey: `${col.field}::${col.header}`,
|
|
30
|
+
columnId: col.id,
|
|
31
|
+
rowIndex,
|
|
32
|
+
},
|
|
33
|
+
});
|
|
34
|
+
if (handle) {
|
|
35
|
+
this.cellHandles.set(key, handle);
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
// 3. Functional renderer?
|
|
39
|
+
if (col.cellRenderer) {
|
|
40
|
+
const result = col.cellRenderer({
|
|
41
|
+
value,
|
|
42
|
+
row: rowData,
|
|
43
|
+
column: col,
|
|
44
|
+
rowIndex,
|
|
45
|
+
colId: col.id,
|
|
46
|
+
});
|
|
47
|
+
// Clear previous content
|
|
48
|
+
cellEl.innerHTML = "";
|
|
49
|
+
if (typeof result === "string") {
|
|
50
|
+
cellEl.textContent = result;
|
|
51
|
+
}
|
|
52
|
+
else if (result instanceof HTMLElement) {
|
|
53
|
+
cellEl.appendChild(result);
|
|
54
|
+
}
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
// 4. Fallback
|
|
17
58
|
cellEl.textContent = value != null ? String(value) : "";
|
|
18
59
|
}
|
|
19
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"row-instance.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-instance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAI3D,MAAM,OAAO,WAAW;
|
|
1
|
+
{"version":3,"file":"row-instance.js","sourceRoot":"","sources":["../../../../../src/engine/services/row/classes/row-instance.ts"],"names":[],"mappings":"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"}
|