@polygrid/core 1.0.3 → 1.0.402

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 (120) hide show
  1. package/dist/api/index.d.ts +1 -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-external-loading.d.ts +3 -0
  6. package/dist/api/set-external-loading.d.ts.map +1 -0
  7. package/dist/api/set-external-loading.js +6 -0
  8. package/dist/api/set-external-loading.js.map +1 -0
  9. package/dist/engine/const/pg-css-class.d.ts +3 -0
  10. package/dist/engine/const/pg-css-class.d.ts.map +1 -1
  11. package/dist/engine/const/pg-css-class.js +3 -0
  12. package/dist/engine/const/pg-css-class.js.map +1 -1
  13. package/dist/engine/core/grid-runtime.d.ts +17 -0
  14. package/dist/engine/core/grid-runtime.d.ts.map +1 -0
  15. package/dist/engine/core/grid-runtime.js +29 -0
  16. package/dist/engine/core/grid-runtime.js.map +1 -0
  17. package/dist/engine/core/grid.d.ts +3 -0
  18. package/dist/engine/core/grid.d.ts.map +1 -1
  19. package/dist/engine/core/grid.js +9 -1
  20. package/dist/engine/core/grid.js.map +1 -1
  21. package/dist/engine/core/interfaces/grid-options.d.ts +2 -0
  22. package/dist/engine/core/interfaces/grid-options.d.ts.map +1 -1
  23. package/dist/engine/core/methods/consume-options.d.ts.map +1 -1
  24. package/dist/engine/core/methods/consume-options.js +5 -0
  25. package/dist/engine/core/methods/consume-options.js.map +1 -1
  26. package/dist/engine/rx-lite/operators/merge.d.ts +3 -0
  27. package/dist/engine/rx-lite/operators/merge.d.ts.map +1 -0
  28. package/dist/engine/rx-lite/operators/merge.js +12 -0
  29. package/dist/engine/rx-lite/operators/merge.js.map +1 -0
  30. package/dist/engine/services/column/methods/set-columns.js +1 -1
  31. package/dist/engine/services/column/methods/set-columns.js.map +1 -1
  32. package/dist/engine/services/data/methods/set-rows.js +1 -1
  33. package/dist/engine/services/data/methods/set-rows.js.map +1 -1
  34. package/dist/engine/services/layout/methods/apply-column-widths.js +1 -1
  35. package/dist/engine/services/layout/methods/apply-column-widths.js.map +1 -1
  36. package/dist/engine/services/layout/methods/resize-body.d.ts.map +1 -1
  37. package/dist/engine/services/layout/methods/resize-body.js +2 -1
  38. package/dist/engine/services/layout/methods/resize-body.js.map +1 -1
  39. package/dist/engine/services/layout/methods/set-up-resize-observer.d.ts.map +1 -1
  40. package/dist/engine/services/layout/methods/set-up-resize-observer.js +0 -2
  41. package/dist/engine/services/layout/methods/set-up-resize-observer.js.map +1 -1
  42. package/dist/engine/services/layout/methods/update-column-widths.d.ts +2 -1
  43. package/dist/engine/services/layout/methods/update-column-widths.d.ts.map +1 -1
  44. package/dist/engine/services/layout/methods/update-column-widths.js +5 -1
  45. package/dist/engine/services/layout/methods/update-column-widths.js.map +1 -1
  46. package/dist/engine/services/loading/index.d.ts +2 -0
  47. package/dist/engine/services/loading/index.d.ts.map +1 -0
  48. package/dist/engine/services/loading/index.js +2 -0
  49. package/dist/engine/services/loading/index.js.map +1 -0
  50. package/dist/engine/services/loading/loading.d.ts +16 -0
  51. package/dist/engine/services/loading/loading.d.ts.map +1 -0
  52. package/dist/engine/services/loading/loading.js +23 -0
  53. package/dist/engine/services/loading/loading.js.map +1 -0
  54. package/dist/engine/services/loading/methods/index.d.ts +2 -0
  55. package/dist/engine/services/loading/methods/index.d.ts.map +1 -0
  56. package/dist/engine/services/loading/methods/index.js +2 -0
  57. package/dist/engine/services/loading/methods/index.js.map +1 -0
  58. package/dist/engine/services/loading/methods/toggle-loading.d.ts +4 -0
  59. package/dist/engine/services/loading/methods/toggle-loading.d.ts.map +1 -0
  60. package/dist/engine/services/loading/methods/toggle-loading.js +13 -0
  61. package/dist/engine/services/loading/methods/toggle-loading.js.map +1 -0
  62. package/dist/engine/services/renderer/interfaces/renderer-adapter.d.ts +8 -0
  63. package/dist/engine/services/renderer/interfaces/renderer-adapter.d.ts.map +1 -0
  64. package/dist/engine/services/renderer/interfaces/renderer-adapter.js +2 -0
  65. package/dist/engine/services/renderer/interfaces/renderer-adapter.js.map +1 -0
  66. package/dist/engine/services/renderer/interfaces/renderer-handle.d.ts +5 -0
  67. package/dist/engine/services/renderer/interfaces/renderer-handle.d.ts.map +1 -0
  68. package/dist/engine/services/renderer/interfaces/renderer-handle.js +2 -0
  69. package/dist/engine/services/renderer/interfaces/renderer-handle.js.map +1 -0
  70. package/dist/engine/services/renderer/interfaces/template-mounts/loading-mount.d.ts +4 -0
  71. package/dist/engine/services/renderer/interfaces/template-mounts/loading-mount.d.ts.map +1 -0
  72. package/dist/engine/services/renderer/interfaces/template-mounts/loading-mount.js +2 -0
  73. package/dist/engine/services/renderer/interfaces/template-mounts/loading-mount.js.map +1 -0
  74. package/dist/engine/services/renderer/interfaces/template-mounts/no-data-mount.d.ts +7 -0
  75. package/dist/engine/services/renderer/interfaces/template-mounts/no-data-mount.d.ts.map +1 -0
  76. package/dist/engine/services/renderer/interfaces/template-mounts/no-data-mount.js +2 -0
  77. package/dist/engine/services/renderer/interfaces/template-mounts/no-data-mount.js.map +1 -0
  78. package/dist/engine/services/renderer/parts/body/body.d.ts +2 -1
  79. package/dist/engine/services/renderer/parts/body/body.d.ts.map +1 -1
  80. package/dist/engine/services/renderer/parts/body/body.js +18 -10
  81. package/dist/engine/services/renderer/parts/body/body.js.map +1 -1
  82. package/dist/engine/services/renderer/parts/grid/grid.d.ts +2 -1
  83. package/dist/engine/services/renderer/parts/grid/grid.d.ts.map +1 -1
  84. package/dist/engine/services/renderer/parts/grid/grid.js +7 -7
  85. package/dist/engine/services/renderer/parts/grid/grid.js.map +1 -1
  86. package/dist/engine/services/renderer/parts/loading/loading.d.ts +3 -0
  87. package/dist/engine/services/renderer/parts/loading/loading.d.ts.map +1 -0
  88. package/dist/engine/services/renderer/parts/loading/loading.js +30 -0
  89. package/dist/engine/services/renderer/parts/loading/loading.js.map +1 -0
  90. package/dist/engine/services/renderer/parts/no-data/no-data.d.ts +3 -0
  91. package/dist/engine/services/renderer/parts/no-data/no-data.d.ts.map +1 -0
  92. package/dist/engine/services/renderer/parts/no-data/no-data.js +38 -0
  93. package/dist/engine/services/renderer/parts/no-data/no-data.js.map +1 -0
  94. package/dist/engine/services/renderer/parts/root/root.d.ts +2 -1
  95. package/dist/engine/services/renderer/parts/root/root.d.ts.map +1 -1
  96. package/dist/engine/services/renderer/parts/root/root.js +4 -4
  97. package/dist/engine/services/renderer/parts/root/root.js.map +1 -1
  98. package/dist/engine/services/renderer/parts/viewport/viewport.d.ts +2 -1
  99. package/dist/engine/services/renderer/parts/viewport/viewport.d.ts.map +1 -1
  100. package/dist/engine/services/renderer/parts/viewport/viewport.js +2 -2
  101. package/dist/engine/services/renderer/parts/viewport/viewport.js.map +1 -1
  102. package/dist/engine/services/row/row.d.ts +5 -0
  103. package/dist/engine/services/row/row.d.ts.map +1 -1
  104. package/dist/engine/services/row/row.js +3 -0
  105. package/dist/engine/services/row/row.js.map +1 -1
  106. package/dist/engine/services/services.d.ts +2 -0
  107. package/dist/engine/services/services.d.ts.map +1 -1
  108. package/dist/engine/services/services.js +2 -0
  109. package/dist/engine/services/services.js.map +1 -1
  110. package/dist/engine/store/interfaces/grid-state.d.ts +4 -0
  111. package/dist/engine/store/interfaces/grid-state.d.ts.map +1 -1
  112. package/dist/engine/store/methods/create-initial-state.d.ts.map +1 -1
  113. package/dist/engine/store/methods/create-initial-state.js +2 -0
  114. package/dist/engine/store/methods/create-initial-state.js.map +1 -1
  115. package/dist/engine/store/store.d.ts +1 -0
  116. package/dist/engine/store/store.d.ts.map +1 -1
  117. package/dist/engine/store/store.js +4 -0
  118. package/dist/engine/store/store.js.map +1 -1
  119. package/dist/polygrid.css +114 -0
  120. package/package.json +33 -42
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=renderer-handle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderer-handle.js","sourceRoot":"","sources":["../../../../../src/engine/services/renderer/interfaces/renderer-handle.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export interface LoadingMount {
2
+ container: HTMLElement;
3
+ }
4
+ //# sourceMappingURL=loading-mount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading-mount.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/interfaces/template-mounts/loading-mount.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,WAAW,CAAC;CACxB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=loading-mount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading-mount.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/interfaces/template-mounts/loading-mount.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export interface NoDataMount {
2
+ container: HTMLElement;
3
+ context: {
4
+ reason: "empty" | "filter";
5
+ };
6
+ }
7
+ //# sourceMappingURL=no-data-mount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-data-mount.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/interfaces/template-mounts/no-data-mount.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE;QACP,MAAM,EAAE,OAAO,GAAG,QAAQ,CAAC;KAC5B,CAAC;CACH"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=no-data-mount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-data-mount.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/interfaces/template-mounts/no-data-mount.ts"],"names":[],"mappings":""}
@@ -1,4 +1,5 @@
1
+ import { PolyGrid } from "../../../../core/grid";
1
2
  import type { GridDOM } from "../../../../core/grid-dom";
2
3
  import type { PolyGridStore } from "../../../../store/store";
3
- export declare function renderBody(store: PolyGridStore, gridDom: GridDOM): HTMLDivElement;
4
+ export declare function renderBody(store: PolyGridStore, gridDom: GridDOM, grid: PolyGrid): HTMLDivElement;
4
5
  //# sourceMappingURL=body.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/body/body.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,GACf,cAAc,CAyBhB"}
1
+ {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/body/body.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAI7D,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,GACb,cAAc,CAgChB"}
@@ -1,6 +1,7 @@
1
1
  import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ import { renderNoData } from "../no-data/no-data";
2
3
  import { renderRows } from "./row";
3
- export function renderBody(store, gridDom) {
4
+ export function renderBody(store, gridDom, grid) {
4
5
  // viewport
5
6
  const bodyViewportEl = document.createElement("div");
6
7
  bodyViewportEl.className = PG_CSS_CLASS.bodyViewport;
@@ -8,17 +9,24 @@ export function renderBody(store, gridDom) {
8
9
  const bodyEl = document.createElement("div");
9
10
  bodyEl.className = PG_CSS_CLASS.body;
10
11
  bodyEl.innerHTML = "";
11
- // render the rows
12
+ // if we have rows
12
13
  const rows = store.getState().rows;
13
- const columns = store.getState().columns;
14
- const rowHeight = store.getState().rowHeight;
15
- const bodyRows = renderRows(rows, columns, rowHeight);
16
- // append the rows to the body
17
- const fragment = document.createDocumentFragment();
18
- for (const row of bodyRows) {
19
- fragment.appendChild(row);
14
+ if (rows.length > 0) {
15
+ // render the rows
16
+ const columns = store.getState().columns;
17
+ const rowHeight = store.getState().rowHeight;
18
+ const bodyRows = renderRows(rows, columns, rowHeight);
19
+ // append the rows to the body
20
+ const fragment = document.createDocumentFragment();
21
+ for (const row of bodyRows) {
22
+ fragment.appendChild(row);
23
+ }
24
+ bodyEl.appendChild(fragment);
25
+ }
26
+ else {
27
+ // render no data template
28
+ renderNoData(bodyEl, grid);
20
29
  }
21
- bodyEl.appendChild(fragment);
22
30
  bodyViewportEl.appendChild(bodyEl);
23
31
  gridDom.body = bodyEl;
24
32
  return bodyViewportEl;
@@ -1 +1 @@
1
- {"version":3,"file":"body.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/body/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,MAAM,UAAU,UAAU,CACxB,KAAoB,EACpB,OAAgB;IAEhB,WAAW;IACX,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACrD,cAAc,CAAC,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC;IACrD,gBAAgB;IAChB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IACrC,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,kBAAkB;IAClB,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;IACnC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC;IACzC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC;IAC7C,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,8BAA8B;IAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IACnD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE7B,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAEnC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IAEtB,OAAO,cAAc,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"body.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/body/body.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAI9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,MAAM,UAAU,UAAU,CACxB,KAAoB,EACpB,OAAgB,EAChB,IAAc;IAEd,WAAW;IACX,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACrD,cAAc,CAAC,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC;IACrD,gBAAgB;IAChB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IACrC,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;IAEtB,kBAAkB;IAClB,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;IACnC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,kBAAkB;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC;QACzC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC;QAC7C,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACtD,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACnD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,0BAA0B;QAC1B,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAEnC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;IAEtB,OAAO,cAAc,CAAC;AACxB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { PolyGridStore } from "../../../../store/store";
2
2
  import type { GridDOM } from "../../../../core/grid-dom";
3
- export declare function renderGrid(store: PolyGridStore, gridDom: GridDOM): HTMLDivElement;
3
+ import { PolyGrid } from "../../../../core/grid";
4
+ export declare function renderGrid(store: PolyGridStore, gridDom: GridDOM, grid: PolyGrid): HTMLDivElement;
4
5
  //# sourceMappingURL=grid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/grid/grid.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,kBAchE"}
1
+ {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/grid/grid.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,kBAef"}
@@ -1,15 +1,15 @@
1
1
  import { renderViewport } from "../viewport/viewport";
2
2
  import { renderVScrollbar } from "../scrollbars/v-scrollbar";
3
3
  import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
4
- export function renderGrid(store, gridDom) {
5
- const grid = document.createElement("div");
6
- grid.className = PG_CSS_CLASS.grid;
7
- const viewport = renderViewport(store, gridDom);
4
+ export function renderGrid(store, gridDom, grid) {
5
+ const gridEl = document.createElement("div");
6
+ gridEl.className = PG_CSS_CLASS.grid;
7
+ const viewport = renderViewport(store, gridDom, grid);
8
8
  const vScrollbar = renderVScrollbar(gridDom);
9
- grid.appendChild(viewport);
10
- grid.appendChild(vScrollbar);
9
+ gridEl.appendChild(viewport);
10
+ gridEl.appendChild(vScrollbar);
11
11
  gridDom.viewport = viewport;
12
12
  gridDom.vScrollbar = vScrollbar;
13
- return grid;
13
+ return gridEl;
14
14
  }
15
15
  //# sourceMappingURL=grid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grid.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/grid/grid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,MAAM,UAAU,UAAU,CAAC,KAAoB,EAAE,OAAgB;IAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IAEnC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE7C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC3B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE7B,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC5B,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAEhC,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"grid.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/grid/grid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAI9D,MAAM,UAAU,UAAU,CACxB,KAAoB,EACpB,OAAgB,EAChB,IAAc;IAEd,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IAErC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE7C,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC7B,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE/B,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC5B,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAEhC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ export declare function renderLoading(body: HTMLElement, grid: PolyGrid): void;
3
+ //# sourceMappingURL=loading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/loading/loading.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,QA2B9D"}
@@ -0,0 +1,30 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ export function renderLoading(body, grid) {
3
+ const runtime = grid._runtime;
4
+ const state = grid._store.getState();
5
+ const loading = document.createElement("div");
6
+ loading.className = PG_CSS_CLASS.loading;
7
+ body.replaceChildren();
8
+ body.appendChild(loading);
9
+ runtime.loadingContainer = loading;
10
+ // destroy previous dynamic template if any
11
+ runtime.loadingHandle?.destroy();
12
+ runtime.loadingHandle = null;
13
+ // try dynamic template first
14
+ const handle = state.rendererAdapter?.renderLoadingTemplate?.({
15
+ container: loading,
16
+ });
17
+ if (!handle) {
18
+ // fallback to static built-in template
19
+ renderDefaultLoading(loading);
20
+ return;
21
+ }
22
+ // store dynamic handle
23
+ runtime.noDataHandle = handle;
24
+ }
25
+ function renderDefaultLoading(container) {
26
+ const loader = document.createElement("span");
27
+ loader.className = PG_CSS_CLASS.loader;
28
+ container.appendChild(loader);
29
+ }
30
+ //# sourceMappingURL=loading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/loading/loading.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,MAAM,UAAU,aAAa,CAAC,IAAiB,EAAE,IAAc;IAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;IAEzC,IAAI,CAAC,eAAe,EAAE,CAAC;IACvB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1B,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC;IAEnC,2CAA2C;IAC3C,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC;IACjC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAE7B,6BAA6B;IAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,EAAE,qBAAqB,EAAE,CAAC;QAC5D,SAAS,EAAE,OAAO;KACnB,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,uCAAuC;QACvC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC;AAChC,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAyB;IACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC;IAEvC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { PolyGrid } from "../../../../core/grid";
2
+ export declare function renderNoData(body: HTMLElement, grid: PolyGrid): void;
3
+ //# sourceMappingURL=no-data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-data.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/no-data/no-data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,QA2B7D"}
@@ -0,0 +1,38 @@
1
+ import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
+ export function renderNoData(body, grid) {
3
+ const runtime = grid._runtime;
4
+ const state = grid._store.getState();
5
+ const noData = document.createElement("div");
6
+ noData.className = PG_CSS_CLASS.noData;
7
+ body.appendChild(noData);
8
+ runtime.noDataContainer = noData;
9
+ // destroy previous dynamic template if any
10
+ runtime.noDataHandle?.destroy();
11
+ runtime.noDataHandle = null;
12
+ // try dynamic template first
13
+ const handle = state.rendererAdapter?.renderNoDataTemplate?.({
14
+ container: noData,
15
+ context: { reason: "empty" },
16
+ });
17
+ if (!handle) {
18
+ // fallback to static built-in template
19
+ renderDefaultNoData(noData);
20
+ return;
21
+ }
22
+ // store dynamic handle
23
+ runtime.noDataHandle = handle;
24
+ }
25
+ function renderDefaultNoData(container) {
26
+ const icon = document.createElement("div");
27
+ icon.className = `${PG_CSS_CLASS.noData}__icon`;
28
+ const title = document.createElement("div");
29
+ title.className = `${PG_CSS_CLASS.noData}__title`;
30
+ title.textContent = "No data available";
31
+ const subtitle = document.createElement("div");
32
+ subtitle.className = `${PG_CSS_CLASS.noData}__subtitle`;
33
+ subtitle.textContent = "Try adjusting your filters or loading data.";
34
+ container.appendChild(icon);
35
+ container.appendChild(title);
36
+ container.appendChild(subtitle);
37
+ }
38
+ //# sourceMappingURL=no-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-data.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/no-data/no-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,MAAM,UAAU,YAAY,CAAC,IAAiB,EAAE,IAAc;IAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC;IAEvC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO,CAAC,eAAe,GAAG,MAAM,CAAC;IAEjC,2CAA2C;IAC3C,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;IAChC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAE5B,6BAA6B;IAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,EAAE,oBAAoB,EAAE,CAAC;QAC3D,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;KAC7B,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,uCAAuC;QACvC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC;AAChC,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAyB;IACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,GAAG,YAAY,CAAC,MAAM,QAAQ,CAAC;IAEhD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5C,KAAK,CAAC,SAAS,GAAG,GAAG,YAAY,CAAC,MAAM,SAAS,CAAC;IAClD,KAAK,CAAC,WAAW,GAAG,mBAAmB,CAAC;IAExC,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC/C,QAAQ,CAAC,SAAS,GAAG,GAAG,YAAY,CAAC,MAAM,YAAY,CAAC;IACxD,QAAQ,CAAC,WAAW,GAAG,6CAA6C,CAAC;IAErE,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5B,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC7B,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC"}
@@ -1,4 +1,5 @@
1
+ import { PolyGrid } from "../../../../core/grid";
1
2
  import type { GridDOM } from "../../../../core/grid-dom";
2
3
  import type { PolyGridStore } from "../../../../store/store";
3
- export declare function renderRoot(store: PolyGridStore, host: HTMLElement, gridDom: GridDOM): void;
4
+ export declare function renderRoot(store: PolyGridStore, host: HTMLElement, gridDom: GridDOM, grid: PolyGrid): void;
4
5
  //# sourceMappingURL=root.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/root/root.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,OAAO,QAajB"}
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/root/root.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,QAaf"}
@@ -1,13 +1,13 @@
1
1
  import { PG_CSS_CLASS } from "../../../../const/pg-css-class";
2
2
  import { renderGrid } from "../grid/grid";
3
- export function renderRoot(store, host, gridDom) {
3
+ export function renderRoot(store, host, gridDom, grid) {
4
4
  const root = document.createElement("div");
5
5
  root.className = PG_CSS_CLASS.root;
6
6
  root.id = store.getState().id;
7
- const grid = renderGrid(store, gridDom);
8
- root.appendChild(grid);
7
+ const gridEl = renderGrid(store, gridDom, grid);
8
+ root.appendChild(gridEl);
9
9
  host.appendChild(root);
10
10
  gridDom.root = root;
11
- gridDom.grid = grid;
11
+ gridDom.grid = gridEl;
12
12
  }
13
13
  //# sourceMappingURL=root.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"root.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/root/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,UAAU,UAAU,CACxB,KAAoB,EACpB,IAAiB,EACjB,OAAgB;IAEhB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;IAE9B,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAExC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACpB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"root.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/root/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAI9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,UAAU,UAAU,CACxB,KAAoB,EACpB,IAAiB,EACjB,OAAgB,EAChB,IAAc;IAEd,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;IAE9B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAEhD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACzB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACpB,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC;AACxB,CAAC"}
@@ -1,4 +1,5 @@
1
+ import { PolyGrid } from "../../../../core/grid";
1
2
  import type { GridDOM } from "../../../../core/grid-dom";
2
3
  import type { PolyGridStore } from "../../../../store/store";
3
- export declare function renderViewport(store: PolyGridStore, gridDom: GridDOM): HTMLDivElement;
4
+ export declare function renderViewport(store: PolyGridStore, gridDom: GridDOM, grid: PolyGrid): HTMLDivElement;
4
5
  //# sourceMappingURL=viewport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/viewport/viewport.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAM7D,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,GACf,cAAc,CAoBhB"}
1
+ {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/viewport/viewport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAM7D,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,QAAQ,GACb,cAAc,CAoBhB"}
@@ -3,11 +3,11 @@ import { renderBody } from "../body/body";
3
3
  import { renderFooter } from "../footer/footer";
4
4
  import { renderHeader } from "../header/header";
5
5
  import { renderHScrollbar } from "../scrollbars/h-scrollbar";
6
- export function renderViewport(store, gridDom) {
6
+ export function renderViewport(store, gridDom, grid) {
7
7
  const viewport = document.createElement("div");
8
8
  viewport.className = PG_CSS_CLASS.viewport;
9
9
  const headerVp = renderHeader(store, gridDom);
10
- const bodyVp = renderBody(store, gridDom);
10
+ const bodyVp = renderBody(store, gridDom, grid);
11
11
  const footerVp = renderFooter(store, gridDom);
12
12
  const hScrollbar = renderHScrollbar(gridDom);
13
13
  viewport.appendChild(headerVp);
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/viewport/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,cAAc,CAC5B,KAAoB,EACpB,OAAgB;IAEhB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC/C,QAAQ,CAAC,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;IAE3C,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE7C,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEjC,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC;IAClC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC;IAC9B,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC;IAClC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAEhC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../../../../src/engine/services/renderer/parts/viewport/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAI9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,cAAc,CAC5B,KAAoB,EACpB,OAAgB,EAChB,IAAc;IAEd,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC/C,QAAQ,CAAC,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;IAE3C,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE7C,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEjC,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC;IAClC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC;IAC9B,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC;IAClC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAEhC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,7 +1,12 @@
1
1
  import type { PolyGrid } from "../../core/grid";
2
+ import { GridDOM } from "../../core/grid-dom";
3
+ import { ObservableLike } from "../../rx-lite/interfaces/observable-like";
2
4
  import type { PolyGridStore } from "../../store/store";
3
5
  export declare class RowService {
4
6
  store: PolyGridStore;
7
+ destroy$: ObservableLike<void>;
8
+ gridDom: GridDOM;
9
+ grid: PolyGrid;
5
10
  constructor(grid: PolyGrid);
6
11
  }
7
12
  //# sourceMappingURL=row.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"row.d.ts","sourceRoot":"","sources":["../../../../src/engine/services/row/row.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,qBAAa,UAAU;IACrB,KAAK,EAAE,aAAa,CAAC;gBAET,IAAI,EAAE,QAAQ;CAG3B"}
1
+ {"version":3,"file":"row.d.ts","sourceRoot":"","sources":["../../../../src/engine/services/row/row.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,qBAAa,UAAU;IACrB,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;gBAEH,IAAI,EAAE,QAAQ;CAM3B"}
@@ -1,6 +1,9 @@
1
1
  export class RowService {
2
2
  constructor(grid) {
3
3
  this.store = grid._store;
4
+ this.destroy$ = grid._destroy$;
5
+ this.gridDom = grid._gridDom;
6
+ this.grid = grid;
4
7
  }
5
8
  }
6
9
  //# sourceMappingURL=row.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"row.js","sourceRoot":"","sources":["../../../../src/engine/services/row/row.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,UAAU;IAGrB,YAAY,IAAc;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,CAAC;CACF"}
1
+ {"version":3,"file":"row.js","sourceRoot":"","sources":["../../../../src/engine/services/row/row.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,UAAU;IAMrB,YAAY,IAAc;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
@@ -4,6 +4,7 @@ import { RowService } from "./row";
4
4
  import { DataService } from "./data";
5
5
  import type { PolyGrid } from "../core/grid";
6
6
  import { RendererService } from "./renderer";
7
+ import { LoadingService } from "./loading";
7
8
  export declare class PolyGridServices {
8
9
  private grid;
9
10
  layout: LayoutService;
@@ -11,6 +12,7 @@ export declare class PolyGridServices {
11
12
  row: RowService;
12
13
  data: DataService;
13
14
  renderer: RendererService;
15
+ loading: LoadingService;
14
16
  constructor(grid: PolyGrid);
15
17
  }
16
18
  //# sourceMappingURL=services.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/engine/services/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAW;IAEvB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,UAAU,CAAC;IAChB,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,eAAe,CAAC;gBAEd,IAAI,EAAE,QAAQ;CAS3B"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/engine/services/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAW;IAEvB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,UAAU,CAAC;IAChB,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;gBAEZ,IAAI,EAAE,QAAQ;CAU3B"}
@@ -3,6 +3,7 @@ import { ColumnService } from "./column";
3
3
  import { RowService } from "./row";
4
4
  import { DataService } from "./data";
5
5
  import { RendererService } from "./renderer";
6
+ import { LoadingService } from "./loading";
6
7
  export class PolyGridServices {
7
8
  constructor(grid) {
8
9
  this.grid = grid;
@@ -11,6 +12,7 @@ export class PolyGridServices {
11
12
  this.row = new RowService(this.grid);
12
13
  this.data = new DataService(this.grid);
13
14
  this.renderer = new RendererService(this.grid);
15
+ this.loading = new LoadingService(this.grid);
14
16
  }
15
17
  }
16
18
  //# sourceMappingURL=services.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/engine/services/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,OAAO,gBAAgB;IAS3B,YAAY,IAAc;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;CACF"}
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/engine/services/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,MAAM,OAAO,gBAAgB;IAU3B,YAAY,IAAc;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;CACF"}
@@ -1,5 +1,6 @@
1
1
  import type { PolyGridColumn } from "../../services/column/interfaces/column";
2
2
  import type { ColumnWidthState } from "../../services/column/types/column-width-state";
3
+ import { RendererAdapter } from "../../services/renderer/interfaces/renderer-adapter";
3
4
  import type { PolyGridRow } from "../../services/row/interfaces/row";
4
5
  export interface PolyGridState {
5
6
  id: string;
@@ -16,5 +17,8 @@ export interface PolyGridState {
16
17
  rawViewportHeight: number;
17
18
  showHScrollbar: boolean;
18
19
  showVScrollbar: boolean;
20
+ rendererAdapter?: RendererAdapter;
21
+ externalLoading: boolean;
22
+ internalLoading: boolean;
19
23
  }
20
24
  //# sourceMappingURL=grid-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"grid-state.d.ts","sourceRoot":"","sources":["../../../../src/engine/store/interfaces/grid-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;CACzB"}
1
+ {"version":3,"file":"grid-state.d.ts","sourceRoot":"","sources":["../../../../src/engine/store/interfaces/grid-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAC;AACtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-initial-state.d.ts","sourceRoot":"","sources":["../../../../src/engine/store/methods/create-initial-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,wBAAgB,kBAAkB,IAAI,aAAa,CAiBlD"}
1
+ {"version":3,"file":"create-initial-state.d.ts","sourceRoot":"","sources":["../../../../src/engine/store/methods/create-initial-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,wBAAgB,kBAAkB,IAAI,aAAa,CAmBlD"}
@@ -14,6 +14,8 @@ export function createInitialState() {
14
14
  rawViewportHeight: 0,
15
15
  showHScrollbar: false,
16
16
  showVScrollbar: false,
17
+ externalLoading: false,
18
+ internalLoading: false,
17
19
  };
18
20
  }
19
21
  //# sourceMappingURL=create-initial-state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-initial-state.js","sourceRoot":"","sources":["../../../../src/engine/store/methods/create-initial-state.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,EAAE,EAAE,EAAE;QACN,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,EAAE;QACb,oBAAoB,EAAE,EAAE;QACxB,gBAAgB,EAAE,SAAS;QAC3B,gBAAgB,EAAE,CAAC;QACnB,cAAc,EAAE,CAAC;QACjB,aAAa,EAAE,CAAC;QAChB,cAAc,EAAE,CAAC;QACjB,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,CAAC;QACpB,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,KAAK;KACtB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-initial-state.js","sourceRoot":"","sources":["../../../../src/engine/store/methods/create-initial-state.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,EAAE,EAAE,EAAE;QACN,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,EAAE;QACb,oBAAoB,EAAE,EAAE;QACxB,gBAAgB,EAAE,SAAS;QAC3B,gBAAgB,EAAE,CAAC;QACnB,cAAc,EAAE,CAAC;QACjB,aAAa,EAAE,CAAC;QAChB,cAAc,EAAE,CAAC;QACjB,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,CAAC;QACpB,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,KAAK;QACrB,eAAe,EAAE,KAAK;QACtB,eAAe,EAAE,KAAK;KACvB,CAAC;AACJ,CAAC"}
@@ -17,6 +17,7 @@ export declare class PolyGridStore {
17
17
  combineLatestAny<T extends any[]>(sources: {
18
18
  [K in keyof T]: ((state: PolyGridState) => T[K]) | ObservableLike<T[K]>;
19
19
  }): ObservableLike<T>;
20
+ merge<T>(...sources: ObservableLike<T>[]): ObservableLike<T>;
20
21
  private emit;
21
22
  }
22
23
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/engine/store/store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAU5E,MAAM,MAAM,UAAU,GAAG,CACvB,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,CAAC,MAAM,aAAa,CAAC,EAAE,KACjC,IAAI,CAAC;AAEV,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,WAAW,CAAyB;;IAM5C,QAAQ;IAIR,cAAc;IAId,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAkBrD,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,IAAI;IAKrC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;IAInE,WAAW,CAAC,CAAC,EACX,GAAG,EAAE,MAAM,aAAa,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,GACpC,cAAc,CAAC,CAAC,CAAC;IAIpB,aAAa,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,SAAS,EAAE;SACvC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC;KAC/C,GAAG,cAAc,CAAC,CAAC,CAAC;IAIrB,gBAAgB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,OAAO,EAAE;SACxC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACxE,GAAG,cAAc,CAAC,CAAC,CAAC;IAIrB,OAAO,CAAC,IAAI;CAKb"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/engine/store/store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAW5E,MAAM,MAAM,UAAU,GAAG,CACvB,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,CAAC,MAAM,aAAa,CAAC,EAAE,KACjC,IAAI,CAAC;AAEV,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,WAAW,CAAyB;;IAM5C,QAAQ;IAIR,cAAc;IAId,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAkBrD,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,IAAI;IAKrC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;IAInE,WAAW,CAAC,CAAC,EACX,GAAG,EAAE,MAAM,aAAa,EACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,GACpC,cAAc,CAAC,CAAC,CAAC;IAIpB,aAAa,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,SAAS,EAAE;SACvC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC;KAC/C,GAAG,cAAc,CAAC,CAAC,CAAC;IAIrB,gBAAgB,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,OAAO,EAAE;SACxC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACxE,GAAG,cAAc,CAAC,CAAC,CAAC;IAIrB,KAAK,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC;IAI5D,OAAO,CAAC,IAAI;CAKb"}
@@ -6,6 +6,7 @@ import { createSelect } from "../rx-lite/operators/select";
6
6
  import { createCombineLatest } from "../rx-lite/operators/combine-latest";
7
7
  import { createCombineLatestAny } from "../rx-lite/operators/combine-latest-any";
8
8
  import { createSelectKeyed } from "../rx-lite/operators/select-keyed";
9
+ import { createMerge } from "../rx-lite/operators/merge";
9
10
  export class PolyGridStore {
10
11
  constructor() {
11
12
  this.subscribers = new Set();
@@ -46,6 +47,9 @@ export class PolyGridStore {
46
47
  combineLatestAny(sources) {
47
48
  return createCombineLatestAny(this, sources);
48
49
  }
50
+ merge(...sources) {
51
+ return createMerge(...sources);
52
+ }
49
53
  emit(changedKeys) {
50
54
  for (const fn of this.subscribers) {
51
55
  fn(this.state, changedKeys);
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/engine/store/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAOtE,MAAM,OAAO,aAAa;IAIxB;QAFQ,gBAAW,GAAG,IAAI,GAAG,EAAc,CAAC;QAG1C,IAAI,CAAC,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACpC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,OAAuC;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAE/B,MAAM,SAAS,GAAoB,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QAE5D,OAAO,CAAC,KAAK,CAAC,CAAC;QAEf,IAAI,KAAK,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvE,iCAAiC;QACjC,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAA2B,CAAC,CAAC;QAExE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IAED,SAAS,CAAC,EAAc;QACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAI,QAAqC;QAC7C,OAAO,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED,WAAW,CACT,GAAwB,EACxB,QAAqC;QAErC,OAAO,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,aAAa,CAAkB,SAE9B;QACC,OAAO,mBAAmB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,gBAAgB,CAAkB,OAEjC;QACC,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAEO,IAAI,CAAC,WAAoC;QAC/C,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/engine/store/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAOzD,MAAM,OAAO,aAAa;IAIxB;QAFQ,gBAAW,GAAG,IAAI,GAAG,EAAc,CAAC;QAG1C,IAAI,CAAC,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACpC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,OAAuC;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAE/B,MAAM,SAAS,GAAoB,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QAE5D,OAAO,CAAC,KAAK,CAAC,CAAC;QAEf,IAAI,KAAK,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvE,iCAAiC;QACjC,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAA2B,CAAC,CAAC;QAExE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IAED,SAAS,CAAC,EAAc;QACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAI,QAAqC;QAC7C,OAAO,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED,WAAW,CACT,GAAwB,EACxB,QAAqC;QAErC,OAAO,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,aAAa,CAAkB,SAE9B;QACC,OAAO,mBAAmB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,gBAAgB,CAAkB,OAEjC;QACC,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAI,GAAG,OAA4B;QACtC,OAAO,WAAW,CAAC,GAAG,OAAO,CAAC,CAAC;IACjC,CAAC;IAEO,IAAI,CAAC,WAAoC;QAC/C,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;CACF"}