@polygrid/angular 0.0.626 → 0.0.628
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.
|
@@ -219,11 +219,28 @@ function renderColumnFooterTemplate(req, template, templateMountService) {
|
|
|
219
219
|
return templateMountService.mount(template, req.container, ctx);
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
+
function renderColumnCellTemplate(req, template, templateMountService) {
|
|
223
|
+
if (!template)
|
|
224
|
+
return null;
|
|
225
|
+
const ctx = {
|
|
226
|
+
$implicit: req.context,
|
|
227
|
+
row: req.context.row,
|
|
228
|
+
value: req.context.value,
|
|
229
|
+
field: req.context.field,
|
|
230
|
+
header: req.context.header,
|
|
231
|
+
columnKey: req.context.columnKey,
|
|
232
|
+
columnId: req.context.columnId,
|
|
233
|
+
rowIndex: req.context.rowIndex,
|
|
234
|
+
};
|
|
235
|
+
return templateMountService.mount(template, req.container, ctx);
|
|
236
|
+
}
|
|
237
|
+
|
|
222
238
|
class RendererAdapterFactory {
|
|
223
239
|
templateMountService = inject(TemplateMountService);
|
|
224
240
|
buildAdapter(templates) {
|
|
225
241
|
const headerTemplates = new Map();
|
|
226
242
|
const footerTemplates = new Map();
|
|
243
|
+
const cellTemplates = new Map();
|
|
227
244
|
return {
|
|
228
245
|
renderNoDataTemplate: (req) => renderNoDataTemplate(req, templates.noData, this.templateMountService),
|
|
229
246
|
renderLoadingTemplate: (req) => renderLoadingTemplate(req, templates.loading, this.templateMountService),
|
|
@@ -242,6 +259,13 @@ class RendererAdapterFactory {
|
|
|
242
259
|
registerColumnFooterTemplate: (key, tpl) => {
|
|
243
260
|
footerTemplates.set(key, tpl);
|
|
244
261
|
},
|
|
262
|
+
renderColumnCellTemplate: (req) => {
|
|
263
|
+
const tpl = cellTemplates.get(req.context.columnKey);
|
|
264
|
+
return renderColumnCellTemplate(req, tpl, this.templateMountService);
|
|
265
|
+
},
|
|
266
|
+
registerColumnCellTemplate: (key, tpl) => {
|
|
267
|
+
cellTemplates.set(key, tpl);
|
|
268
|
+
},
|
|
245
269
|
};
|
|
246
270
|
}
|
|
247
271
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: RendererAdapterFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -317,6 +341,7 @@ class ColumnService {
|
|
|
317
341
|
adapter;
|
|
318
342
|
pendingHeaderTemplates = new Map();
|
|
319
343
|
pendingFooterTemplates = new Map();
|
|
344
|
+
pendingCellTemplates = new Map();
|
|
320
345
|
setGrid(grid) {
|
|
321
346
|
this._grid.set(grid);
|
|
322
347
|
}
|
|
@@ -326,10 +351,15 @@ class ColumnService {
|
|
|
326
351
|
this.pendingHeaderTemplates.forEach((tpl, key) => {
|
|
327
352
|
this.adapter.registerColumnHeaderTemplate?.(key, tpl);
|
|
328
353
|
});
|
|
329
|
-
this.
|
|
354
|
+
this.pendingHeaderTemplates.clear();
|
|
330
355
|
this.pendingFooterTemplates.forEach((tpl, key) => {
|
|
331
356
|
this.adapter.registerColumnFooterTemplate?.(key, tpl);
|
|
332
357
|
});
|
|
358
|
+
this.pendingFooterTemplates.clear();
|
|
359
|
+
this.pendingCellTemplates.forEach((tpl, key) => {
|
|
360
|
+
this.adapter.registerColumnCellTemplate?.(key, tpl);
|
|
361
|
+
});
|
|
362
|
+
this.pendingCellTemplates.clear();
|
|
333
363
|
}
|
|
334
364
|
registerHeaderTemplate(key, tpl) {
|
|
335
365
|
if (this.adapter) {
|
|
@@ -347,6 +377,14 @@ class ColumnService {
|
|
|
347
377
|
this.pendingFooterTemplates.set(key, tpl);
|
|
348
378
|
}
|
|
349
379
|
}
|
|
380
|
+
registerCellTemplate(key, tpl) {
|
|
381
|
+
if (this.adapter) {
|
|
382
|
+
this.adapter.registerColumnCellTemplate?.(key, tpl);
|
|
383
|
+
}
|
|
384
|
+
else {
|
|
385
|
+
this.pendingCellTemplates.set(key, tpl);
|
|
386
|
+
}
|
|
387
|
+
}
|
|
350
388
|
collectProjectedColumns = collectProjectedColumns;
|
|
351
389
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ColumnService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
352
390
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ColumnService, providedIn: "root" });
|
|
@@ -386,6 +424,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
386
424
|
}]
|
|
387
425
|
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
388
426
|
|
|
427
|
+
class PolyGridColumnCellTemplateDirective {
|
|
428
|
+
template;
|
|
429
|
+
constructor(template) {
|
|
430
|
+
this.template = template;
|
|
431
|
+
}
|
|
432
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PolyGridColumnCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
433
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: PolyGridColumnCellTemplateDirective, isStandalone: true, selector: "[polyGridColumnCellTemplate]", ngImport: i0 });
|
|
434
|
+
}
|
|
435
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PolyGridColumnCellTemplateDirective, decorators: [{
|
|
436
|
+
type: Directive,
|
|
437
|
+
args: [{
|
|
438
|
+
selector: "[polyGridColumnCellTemplate]",
|
|
439
|
+
}]
|
|
440
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
441
|
+
|
|
389
442
|
class PolyGridColumnComponent {
|
|
390
443
|
injector = inject(Injector);
|
|
391
444
|
columnService = inject(ColumnService);
|
|
@@ -398,6 +451,7 @@ class PolyGridColumnComponent {
|
|
|
398
451
|
toggleVisibilityEffect;
|
|
399
452
|
headerTemplateDir;
|
|
400
453
|
footerTemplateDir;
|
|
454
|
+
cellTemplateDir;
|
|
401
455
|
ngAfterViewInit() {
|
|
402
456
|
runInInjectionContext(this.injector, () => {
|
|
403
457
|
this.toggleVisibilityEffect = toggleVisibilityInputEffect(`${this.field()}::${this.header()}`, this.visible, this.columnService);
|
|
@@ -410,9 +464,12 @@ class PolyGridColumnComponent {
|
|
|
410
464
|
if (this.footerTemplateDir) {
|
|
411
465
|
this.columnService.registerFooterTemplate(`${this.field()}::${this.header()}`, this.footerTemplateDir.template);
|
|
412
466
|
}
|
|
467
|
+
if (this.cellTemplateDir) {
|
|
468
|
+
this.columnService.registerCellTemplate(`${this.field()}::${this.header()}`, this.cellTemplateDir.template);
|
|
469
|
+
}
|
|
413
470
|
}
|
|
414
471
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PolyGridColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
415
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: PolyGridColumnComponent, isStandalone: true, selector: "pg-column", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: true, transformFunction: null }, field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "headerTemplateDir", first: true, predicate: PolyGridColumnHeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplateDir", first: true, predicate: PolyGridColumnFooterTemplateDirective, descendants: true }], ngImport: i0, template: "", isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
472
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: PolyGridColumnComponent, isStandalone: true, selector: "pg-column", inputs: { header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: true, transformFunction: null }, field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "headerTemplateDir", first: true, predicate: PolyGridColumnHeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplateDir", first: true, predicate: PolyGridColumnFooterTemplateDirective, descendants: true }, { propertyName: "cellTemplateDir", first: true, predicate: PolyGridColumnCellTemplateDirective, descendants: true }], ngImport: i0, template: "", isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
416
473
|
}
|
|
417
474
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PolyGridColumnComponent, decorators: [{
|
|
418
475
|
type: Component,
|
|
@@ -428,6 +485,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
428
485
|
}], footerTemplateDir: [{
|
|
429
486
|
type: ContentChild,
|
|
430
487
|
args: [PolyGridColumnFooterTemplateDirective]
|
|
488
|
+
}], cellTemplateDir: [{
|
|
489
|
+
type: ContentChild,
|
|
490
|
+
args: [PolyGridColumnCellTemplateDirective]
|
|
431
491
|
}] } });
|
|
432
492
|
|
|
433
493
|
class PolyGridComponent {
|
|
@@ -532,13 +592,15 @@ class POLY_GRID {
|
|
|
532
592
|
PolyGridLoadingTemplateDirective,
|
|
533
593
|
PolyGridErrorTemplateDirective,
|
|
534
594
|
PolyGridColumnHeaderTemplateDirective,
|
|
535
|
-
PolyGridColumnFooterTemplateDirective
|
|
595
|
+
PolyGridColumnFooterTemplateDirective,
|
|
596
|
+
PolyGridColumnCellTemplateDirective], exports: [PolyGridComponent,
|
|
536
597
|
PolyGridColumnComponent,
|
|
537
598
|
PolyGridNoDataTemplateDirective,
|
|
538
599
|
PolyGridLoadingTemplateDirective,
|
|
539
600
|
PolyGridErrorTemplateDirective,
|
|
540
601
|
PolyGridColumnHeaderTemplateDirective,
|
|
541
|
-
PolyGridColumnFooterTemplateDirective
|
|
602
|
+
PolyGridColumnFooterTemplateDirective,
|
|
603
|
+
PolyGridColumnCellTemplateDirective] });
|
|
542
604
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: POLY_GRID, imports: [PolyGridComponent,
|
|
543
605
|
PolyGridColumnComponent] });
|
|
544
606
|
}
|
|
@@ -553,6 +615,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
553
615
|
PolyGridErrorTemplateDirective,
|
|
554
616
|
PolyGridColumnHeaderTemplateDirective,
|
|
555
617
|
PolyGridColumnFooterTemplateDirective,
|
|
618
|
+
PolyGridColumnCellTemplateDirective,
|
|
556
619
|
],
|
|
557
620
|
exports: [
|
|
558
621
|
PolyGridComponent,
|
|
@@ -562,6 +625,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
562
625
|
PolyGridErrorTemplateDirective,
|
|
563
626
|
PolyGridColumnHeaderTemplateDirective,
|
|
564
627
|
PolyGridColumnFooterTemplateDirective,
|
|
628
|
+
PolyGridColumnCellTemplateDirective,
|
|
565
629
|
],
|
|
566
630
|
providers: [],
|
|
567
631
|
}]
|
|
@@ -571,5 +635,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
571
635
|
* Generated bundle index. Do not edit.
|
|
572
636
|
*/
|
|
573
637
|
|
|
574
|
-
export { POLY_GRID, PolyGridColumnComponent, PolyGridColumnFooterTemplateDirective, PolyGridColumnHeaderTemplateDirective, PolyGridComponent, PolyGridErrorTemplateDirective, PolyGridLoadingTemplateDirective, PolyGridNoDataTemplateDirective };
|
|
638
|
+
export { POLY_GRID, PolyGridColumnCellTemplateDirective, PolyGridColumnComponent, PolyGridColumnFooterTemplateDirective, PolyGridColumnHeaderTemplateDirective, PolyGridComponent, PolyGridErrorTemplateDirective, PolyGridLoadingTemplateDirective, PolyGridNoDataTemplateDirective };
|
|
575
639
|
//# sourceMappingURL=polygrid-angular.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygrid-angular.mjs","sources":["../../src/lib/effects/skip-first.ts","../../src/lib/effects/grid-id.ts","../../src/lib/effects/data.ts","../../src/lib/effects/column.ts","../../src/lib/effects/loading.ts","../../src/lib/effects/resizable.ts","../../src/lib/effects/resize-mode.ts","../../src/lib/effects/toggle-visibility.ts","../../src/lib/effects/enable-animations.ts","../../src/lib/directives/no-data-template.ts","../../src/lib/directives/loading-template.ts","../../src/lib/services/templates/template-mount.ts","../../src/lib/services/renderer-adapter/no-data.ts","../../src/lib/services/renderer-adapter/loading.ts","../../src/lib/services/renderer-adapter/error.ts","../../src/lib/services/renderer-adapter/column-header.ts","../../src/lib/services/renderer-adapter/column-footer.ts","../../src/lib/services/renderer-adapter/renderer-adapter-factory.ts","../../src/lib/services/template-collector/extract-no-data.ts","../../src/lib/services/template-collector/extract-loading.ts","../../src/lib/services/template-collector/extract-error.ts","../../src/lib/services/template-collector/template-collector.ts","../../src/lib/directives/error-template.ts","../../src/lib/services/column/methods/collect-projected-columns.ts","../../src/lib/services/column/column.ts","../../src/lib/directives/column-header-template.ts","../../src/lib/directives/column-footer-template.ts","../../src/lib/components/column/poly-grid-column.ts","../../src/lib/components/grid/poly-grid.ts","../../src/lib/components/grid/poly-grid.html","../../src/lib/modules/poly-grid.ts","../../src/polygrid-angular.ts"],"sourcesContent":["import { effect, EffectRef } from \"@angular/core\";\r\n\r\nexport function effectSkipFirst(fn: (isInitial: boolean) => void): EffectRef {\r\n let first = true;\r\n return effect(() => {\r\n // Always execute fn, so it reads signals and establishes tracking\r\n fn(first);\r\n first = false;\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function gridIdInputEffect(\r\n value: Signal<string>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const id = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setGridId(id);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function dataInputEffect(\r\n value: Signal<any[]>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const data = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setData(data);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { PolyGridColumn } from \"@polygrid/core/engine/services/column/interfaces/column\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function columnInputEffect(\r\n value: Signal<PolyGridColumn[]>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const columns = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setColumns(columns);\r\n });\r\n}\r\n","import { effect, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\n\r\nexport function loadingInputEffect(value: Signal<boolean>, grid: PolyGrid) {\r\n return effect(() => {\r\n grid.api.setLoading(value());\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function resizableInputEffect(\r\n value: Signal<boolean>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const resizable = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setResizable(resizable);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\nimport { PolyGridResizeMode } from \"@polygrid/core/engine/store/types/resize-mode\";\r\n\r\nexport function resizeModeInputEffect(\r\n value: Signal<PolyGridResizeMode>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const resizeMode = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setResizeMode(resizeMode);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\nimport { ColumnService } from \"../services/column/column\";\r\n\r\nexport function toggleVisibilityInputEffect(\r\n key: string,\r\n value: Signal<boolean>,\r\n columnService: ColumnService,\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const visible = value();\r\n\r\n if (isInitial) return;\r\n\r\n const grid = columnService.grid();\r\n if (!grid) return;\r\n\r\n const { enableAnimations } = grid._store.getState().view;\r\n\r\n if (enableAnimations) {\r\n visible\r\n ? grid.api.showColumnAnimated(key)\r\n : grid.api.hideColumnAnimated(key);\r\n } else {\r\n grid.api.setColumnVisible(key, visible);\r\n }\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function enableAnimationsInputEffect(\r\n value: Signal<boolean>,\r\n grid: PolyGrid,\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const enableAnimations = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setEnableAnimations(enableAnimations);\r\n });\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridNoDataTemplate]\",\r\n})\r\nexport class PolyGridNoDataTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridLoadingTemplate]\",\r\n})\r\nexport class PolyGridLoadingTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { ApplicationRef, Injectable, TemplateRef } from \"@angular/core\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class TemplateMountService {\r\n constructor(private appRef: ApplicationRef) {}\r\n\r\n mount<T>(\r\n template: TemplateRef<T>,\r\n container: HTMLElement,\r\n context: T\r\n ): RendererHandle {\r\n const view = template.createEmbeddedView(context);\r\n this.appRef.attachView(view);\r\n view.detectChanges();\r\n\r\n const frag = document.createDocumentFragment();\r\n for (const node of view.rootNodes) frag.appendChild(node);\r\n container.appendChild(frag);\r\n\r\n return {\r\n update: (partial: Partial<T>) => {\r\n Object.assign(view.context as any, partial);\r\n view.detectChanges();\r\n },\r\n destroy: () => {\r\n this.appRef.detachView(view);\r\n view.destroy();\r\n },\r\n };\r\n }\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { NoDataMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/no-data-mount\";\r\n\r\nexport function renderNoDataTemplate(\r\n req: NoDataMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n context: req.context,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { LoadingMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/loading-mount\";\r\n\r\nexport function renderLoadingTemplate(\r\n req: LoadingMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n context: req.context,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ErrorMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/error-mount\";\r\n\r\nexport function renderErrorTemplate(\r\n req: ErrorMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n title: req.context.title,\r\n message: req.context.message,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ColumnHeaderMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/column-header-mount\";\r\n\r\nexport function renderColumnHeaderTemplate(\r\n req: ColumnHeaderMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService,\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n field: req.context.field,\r\n header: req.context.header,\r\n columnKey: req.context.columnKey,\r\n columnId: req.context.columnId,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ColumnFooterMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/column-footer-mount\";\r\n\r\nexport function renderColumnFooterTemplate(\r\n req: ColumnFooterMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService,\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n field: req.context.field,\r\n header: req.context.header,\r\n columnKey: req.context.columnKey,\r\n columnId: req.context.columnId,\r\n values: req.context.values,\r\n rows: req.context.rows,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { inject, Injectable, TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { TemplateRegistry } from \"../templates/interfaces/template-registry\";\r\nimport { RendererAdapter } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-adapter\";\r\nimport { renderNoDataTemplate } from \"./no-data\";\r\nimport { renderLoadingTemplate } from \"./loading\";\r\nimport { renderErrorTemplate } from \"./error\";\r\nimport { renderColumnHeaderTemplate } from \"./column-header\";\r\nimport { renderColumnFooterTemplate } from \"./column-footer\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class RendererAdapterFactory {\r\n private templateMountService = inject(TemplateMountService);\r\n\r\n buildAdapter(templates: TemplateRegistry): RendererAdapter {\r\n const headerTemplates = new Map<string, TemplateRef<any>>();\r\n const footerTemplates = new Map<string, TemplateRef<any>>();\r\n\r\n return {\r\n renderNoDataTemplate: (req) =>\r\n renderNoDataTemplate(req, templates.noData, this.templateMountService),\r\n renderLoadingTemplate: (req) =>\r\n renderLoadingTemplate(\r\n req,\r\n templates.loading,\r\n this.templateMountService,\r\n ),\r\n renderErrorTemplate: (req) =>\r\n renderErrorTemplate(req, templates.error, this.templateMountService),\r\n renderColumnHeaderTemplate: (req) => {\r\n const tpl = headerTemplates.get(req.context.columnKey);\r\n return renderColumnHeaderTemplate(req, tpl, this.templateMountService);\r\n },\r\n registerColumnHeaderTemplate: (key, tpl) => {\r\n headerTemplates.set(key, tpl as TemplateRef<any>);\r\n },\r\n renderColumnFooterTemplate: (req) => {\r\n const tpl = footerTemplates.get(req.context.columnKey);\r\n return renderColumnFooterTemplate(req, tpl, this.templateMountService);\r\n },\r\n registerColumnFooterTemplate: (key, tpl) => {\r\n footerTemplates.set(key, tpl as TemplateRef<any>);\r\n },\r\n };\r\n }\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { PolyGridNoDataTemplateDirective } from \"../../directives/no-data-template\";\r\n\r\nexport function extractNoDataTemplate(\r\n dir?: PolyGridNoDataTemplateDirective,\r\n): TemplateRef<any> | undefined {\r\n return dir?.template;\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { PolyGridLoadingTemplateDirective } from \"../../directives/loading-template\";\r\n\r\nexport function extractLoadingTemplate(\r\n dir?: PolyGridLoadingTemplateDirective,\r\n): TemplateRef<any> | undefined {\r\n return dir?.template;\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { PolyGridErrorTemplateDirective } from \"../../directives/error-template\";\r\n\r\nexport function extractErrorTemplate(\r\n dir?: PolyGridErrorTemplateDirective,\r\n): TemplateRef<any> | undefined {\r\n return dir?.template;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { PolyGridNoDataTemplateDirective } from \"../../directives/no-data-template\";\r\nimport { TemplateRegistry } from \"../templates/interfaces/template-registry\";\r\nimport { extractNoDataTemplate } from \"./extract-no-data\";\r\nimport { extractLoadingTemplate } from \"./extract-loading\";\r\nimport { extractErrorTemplate } from \"./extract-error\";\r\nimport { PolyGridLoadingTemplateDirective } from \"../../directives/loading-template\";\r\nimport { PolyGridErrorTemplateDirective } from \"../../directives/error-template\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class TemplateCollectorService {\r\n collect(\r\n noDataTplDir?: PolyGridNoDataTemplateDirective,\r\n loadingTplDir?: PolyGridLoadingTemplateDirective,\r\n errorTplDir?: PolyGridErrorTemplateDirective,\r\n ): TemplateRegistry {\r\n return {\r\n noData: extractNoDataTemplate(noDataTplDir),\r\n loading: extractLoadingTemplate(loadingTplDir),\r\n error: extractErrorTemplate(errorTplDir),\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridErrorTemplate]\",\r\n})\r\nexport class PolyGridErrorTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { QueryList } from \"@angular/core\";\r\nimport { PolyGridColumnComponent } from \"../../../components/column/poly-grid-column\";\r\nimport { PolyGridColumn } from \"@polygrid/core/engine/services/column/interfaces/column\";\r\n\r\nexport function collectProjectedColumns(\r\n projectedColumns: QueryList<PolyGridColumnComponent>\r\n): PolyGridColumn[] {\r\n const columns: PolyGridColumn[] = [];\r\n for (const projCol of projectedColumns) {\r\n const col: PolyGridColumn = {\r\n header: projCol.header(),\r\n field: projCol.field(),\r\n width: projCol.width(),\r\n minWidth: projCol.minWidth(),\r\n maxWidth: projCol.maxWidth() ?? Infinity,\r\n visible: projCol.visible(),\r\n };\r\n columns.push(col);\r\n }\r\n return columns;\r\n}\r\n","import { Injectable, signal, TemplateRef } from \"@angular/core\";\r\nimport * as methods from \"./methods/index\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { RendererAdapter } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-adapter\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class ColumnService {\r\n private _grid = signal<PolyGrid | null>(null);\r\n grid = this._grid.asReadonly();\r\n\r\n private adapter?: RendererAdapter;\r\n private pendingHeaderTemplates = new Map<string, TemplateRef<any>>();\r\n private pendingFooterTemplates = new Map<string, TemplateRef<any>>();\r\n\r\n setGrid(grid: PolyGrid) {\r\n this._grid.set(grid);\r\n }\r\n\r\n setAdapter(adapter: RendererAdapter) {\r\n this.adapter = adapter;\r\n // flush pending templates into the adapter\r\n this.pendingHeaderTemplates.forEach((tpl, key) => {\r\n this.adapter!.registerColumnHeaderTemplate?.(key, tpl);\r\n });\r\n this.pendingFooterTemplates.clear();\r\n this.pendingFooterTemplates.forEach((tpl, key) => {\r\n this.adapter!.registerColumnFooterTemplate?.(key, tpl);\r\n });\r\n }\r\n\r\n registerHeaderTemplate(key: string, tpl: TemplateRef<any>) {\r\n if (this.adapter) {\r\n this.adapter.registerColumnHeaderTemplate?.(key, tpl);\r\n } else {\r\n this.pendingHeaderTemplates.set(key, tpl);\r\n }\r\n }\r\n\r\n registerFooterTemplate(key: string, tpl: TemplateRef<any>) {\r\n if (this.adapter) {\r\n this.adapter.registerColumnFooterTemplate?.(key, tpl);\r\n } else {\r\n this.pendingFooterTemplates.set(key, tpl);\r\n }\r\n }\r\n\r\n collectProjectedColumns = methods.collectProjectedColumns;\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridColumnHeaderTemplate]\",\r\n})\r\nexport class PolyGridColumnHeaderTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridColumnFooterTemplate]\",\r\n})\r\nexport class PolyGridColumnFooterTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { CommonModule } from \"@angular/common\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChild,\r\n EffectRef,\r\n inject,\r\n Injector,\r\n input,\r\n runInInjectionContext,\r\n} from \"@angular/core\";\r\nimport * as effects from \"../../effects/index\";\r\nimport { ColumnService } from \"../../services/column/column\";\r\nimport { PolyGridColumnHeaderTemplateDirective } from \"../../directives/column-header-template\";\r\nimport { PolyGridColumnFooterTemplateDirective } from \"../../directives/column-footer-template\";\r\n\r\n@Component({\r\n selector: \"pg-column\",\r\n imports: [CommonModule],\r\n template: \"\",\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PolyGridColumnComponent\r\n implements AfterViewInit, AfterContentInit\r\n{\r\n private injector = inject(Injector);\r\n private columnService = inject(ColumnService);\r\n\r\n header = input.required<string>();\r\n field = input.required<string>();\r\n width = input<number>();\r\n visible = input<boolean>(true);\r\n minWidth = input<number>();\r\n maxWidth = input<number>();\r\n\r\n toggleVisibilityEffect!: EffectRef;\r\n\r\n @ContentChild(PolyGridColumnHeaderTemplateDirective)\r\n headerTemplateDir?: PolyGridColumnHeaderTemplateDirective;\r\n @ContentChild(PolyGridColumnFooterTemplateDirective)\r\n footerTemplateDir?: PolyGridColumnFooterTemplateDirective;\r\n\r\n ngAfterViewInit(): void {\r\n runInInjectionContext(this.injector, () => {\r\n this.toggleVisibilityEffect = effects.toggleVisibilityInputEffect(\r\n `${this.field()}::${this.header()}`,\r\n this.visible,\r\n this.columnService,\r\n );\r\n });\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.headerTemplateDir) {\r\n this.columnService.registerHeaderTemplate(\r\n `${this.field()}::${this.header()}`,\r\n this.headerTemplateDir.template,\r\n );\r\n }\r\n if (this.footerTemplateDir) {\r\n this.columnService.registerFooterTemplate(\r\n `${this.field()}::${this.header()}`,\r\n this.footerTemplateDir.template,\r\n );\r\n }\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChild,\r\n ContentChildren,\r\n EffectRef,\r\n ElementRef,\r\n inject,\r\n Injector,\r\n input,\r\n OnDestroy,\r\n QueryList,\r\n runInInjectionContext,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport * as effects from \"../../effects/index\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { PolyGridColumn } from \"@polygrid/core/engine/services/column/interfaces/column\";\r\nimport { PolyGridOptions } from \"@polygrid/core/engine/core/interfaces/grid-options\";\r\nimport { PolyGridNoDataTemplateDirective } from \"../../directives/no-data-template\";\r\nimport { PolyGridLoadingTemplateDirective } from \"../../directives/loading-template\";\r\nimport { RendererAdapterFactory } from \"../../services/renderer-adapter/renderer-adapter-factory\";\r\nimport { TemplateCollectorService } from \"../../services/template-collector/template-collector\";\r\nimport { PolyGridErrorTemplateDirective } from \"../../directives/error-template\";\r\nimport { PolyGridColumnComponent } from \"../column/poly-grid-column\";\r\nimport { GridErrorType } from \"@polygrid/core/engine/services/error/types/error-type\";\r\nimport { PolyGridResizeMode } from \"@polygrid/core/engine/store/types/resize-mode\";\r\nimport { ColumnService } from \"../../services/column/column\";\r\n\r\n@Component({\r\n selector: \"pg-grid\",\r\n imports: [CommonModule],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n templateUrl: \"./poly-grid.html\",\r\n styleUrl: \"./poly-grid.css\",\r\n})\r\nexport class PolyGridComponent\r\n implements AfterViewInit, OnDestroy, AfterContentInit\r\n{\r\n private grid: PolyGrid | null = null;\r\n private injector = inject(Injector);\r\n private adapterFactory = inject(RendererAdapterFactory);\r\n private templateCollector = inject(TemplateCollectorService);\r\n private errorType!: GridErrorType | null;\r\n private columnService = inject(ColumnService);\r\n\r\n @ViewChild(\"host\", { static: true }) hostRef!: ElementRef<HTMLDivElement>;\r\n\r\n @ContentChild(PolyGridNoDataTemplateDirective)\r\n noDataTemplateDir?: PolyGridNoDataTemplateDirective;\r\n @ContentChild(PolyGridLoadingTemplateDirective)\r\n loadingTemplateDir?: PolyGridLoadingTemplateDirective;\r\n @ContentChild(PolyGridErrorTemplateDirective)\r\n errorTemplateDir?: PolyGridErrorTemplateDirective;\r\n\r\n @ContentChildren(PolyGridColumnComponent)\r\n projectedColumns!: QueryList<PolyGridColumnComponent>;\r\n\r\n // inputs\r\n id = input.required<string>();\r\n columns = input<PolyGridColumn[]>([]);\r\n data = input<any[]>([]);\r\n loading = input<boolean>(false);\r\n resizable = input<boolean>(false);\r\n resizeMode = input<PolyGridResizeMode>(\"unconstrained\");\r\n enableAnimations = input<boolean>(false);\r\n\r\n // reactive effects\r\n gridIdEffect!: EffectRef;\r\n dataEffect!: EffectRef;\r\n columnEffect!: EffectRef;\r\n loadingEffect!: EffectRef;\r\n resizableEffect!: EffectRef;\r\n resizeModeEffect!: EffectRef;\r\n enableAnimationsEffect!: EffectRef;\r\n\r\n ngAfterViewInit(): void {\r\n const host = this.hostRef.nativeElement;\r\n const registry = this.templateCollector.collect(\r\n this.noDataTemplateDir,\r\n this.loadingTemplateDir,\r\n this.errorTemplateDir,\r\n );\r\n const adapter = this.adapterFactory.buildAdapter(registry);\r\n this.columnService.setAdapter(adapter);\r\n\r\n const projected = this.columnService.collectProjectedColumns(\r\n this.projectedColumns,\r\n );\r\n const inputCols = this.columns();\r\n const finalColumns =\r\n inputCols !== undefined && inputCols !== null && inputCols.length > 0\r\n ? inputCols\r\n : projected;\r\n\r\n const options: PolyGridOptions = {\r\n id: this.id(),\r\n columns: finalColumns,\r\n data: this.data(),\r\n rendererAdapter: adapter,\r\n };\r\n\r\n this.grid = new PolyGrid(host, options);\r\n this.columnService.setGrid(this.grid);\r\n\r\n runInInjectionContext(this.injector, () => {\r\n this.gridIdEffect = effects.gridIdInputEffect(this.id, this.grid!);\r\n this.dataEffect = effects.dataInputEffect(this.data, this.grid!);\r\n this.columnEffect = effects.columnInputEffect(this.columns, this.grid!);\r\n this.loadingEffect = effects.loadingInputEffect(this.loading, this.grid!);\r\n this.resizableEffect = effects.resizableInputEffect(\r\n this.resizable,\r\n this.grid!,\r\n );\r\n this.resizeModeEffect = effects.resizeModeInputEffect(\r\n this.resizeMode,\r\n this.grid!,\r\n );\r\n this.enableAnimationsEffect = effects.enableAnimationsInputEffect(\r\n this.enableAnimations,\r\n this.grid!,\r\n );\r\n });\r\n\r\n if (this.errorType) {\r\n switch (this.errorType) {\r\n case \"ambiguous-column-definition\":\r\n this.grid.api.setError(true, this.errorType);\r\n return;\r\n }\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.columns().length > 0 && this.projectedColumns.length > 0)\r\n this.errorType = \"ambiguous-column-definition\";\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.grid?.destroy();\r\n this.grid = null;\r\n }\r\n}\r\n","<div #host class=\"pg-host\"></div>\r\n","import { NgModule } from \"@angular/core\";\r\nimport {\r\n PolyGridColumnComponent,\r\n PolyGridColumnFooterTemplateDirective,\r\n PolyGridColumnHeaderTemplateDirective,\r\n PolyGridComponent,\r\n PolyGridErrorTemplateDirective,\r\n PolyGridLoadingTemplateDirective,\r\n PolyGridNoDataTemplateDirective,\r\n} from \"../../public-api\";\r\n\r\n@NgModule({\r\n imports: [\r\n PolyGridComponent,\r\n PolyGridColumnComponent,\r\n PolyGridNoDataTemplateDirective,\r\n PolyGridLoadingTemplateDirective,\r\n PolyGridErrorTemplateDirective,\r\n PolyGridColumnHeaderTemplateDirective,\r\n PolyGridColumnFooterTemplateDirective,\r\n ],\r\n exports: [\r\n PolyGridComponent,\r\n PolyGridColumnComponent,\r\n PolyGridNoDataTemplateDirective,\r\n PolyGridLoadingTemplateDirective,\r\n PolyGridErrorTemplateDirective,\r\n PolyGridColumnHeaderTemplateDirective,\r\n PolyGridColumnFooterTemplateDirective,\r\n ],\r\n providers: [],\r\n})\r\nexport class POLY_GRID {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["methods.collectProjectedColumns","effects.toggleVisibilityInputEffect","effects.gridIdInputEffect","effects.dataInputEffect","effects.columnInputEffect","effects.loadingInputEffect","effects.resizableInputEffect","effects.resizeModeInputEffect","effects.enableAnimationsInputEffect"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"polygrid-angular.mjs","sources":["../../src/lib/effects/skip-first.ts","../../src/lib/effects/grid-id.ts","../../src/lib/effects/data.ts","../../src/lib/effects/column.ts","../../src/lib/effects/loading.ts","../../src/lib/effects/resizable.ts","../../src/lib/effects/resize-mode.ts","../../src/lib/effects/toggle-visibility.ts","../../src/lib/effects/enable-animations.ts","../../src/lib/directives/no-data-template.ts","../../src/lib/directives/loading-template.ts","../../src/lib/services/templates/template-mount.ts","../../src/lib/services/renderer-adapter/no-data.ts","../../src/lib/services/renderer-adapter/loading.ts","../../src/lib/services/renderer-adapter/error.ts","../../src/lib/services/renderer-adapter/column-header.ts","../../src/lib/services/renderer-adapter/column-footer.ts","../../src/lib/services/renderer-adapter/column-cell.ts","../../src/lib/services/renderer-adapter/renderer-adapter-factory.ts","../../src/lib/services/template-collector/extract-no-data.ts","../../src/lib/services/template-collector/extract-loading.ts","../../src/lib/services/template-collector/extract-error.ts","../../src/lib/services/template-collector/template-collector.ts","../../src/lib/directives/error-template.ts","../../src/lib/services/column/methods/collect-projected-columns.ts","../../src/lib/services/column/column.ts","../../src/lib/directives/column-header-template.ts","../../src/lib/directives/column-footer-template.ts","../../src/lib/directives/column-cell-template.ts","../../src/lib/components/column/poly-grid-column.ts","../../src/lib/components/grid/poly-grid.ts","../../src/lib/components/grid/poly-grid.html","../../src/lib/modules/poly-grid.ts","../../src/polygrid-angular.ts"],"sourcesContent":["import { effect, EffectRef } from \"@angular/core\";\r\n\r\nexport function effectSkipFirst(fn: (isInitial: boolean) => void): EffectRef {\r\n let first = true;\r\n return effect(() => {\r\n // Always execute fn, so it reads signals and establishes tracking\r\n fn(first);\r\n first = false;\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function gridIdInputEffect(\r\n value: Signal<string>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const id = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setGridId(id);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function dataInputEffect(\r\n value: Signal<any[]>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const data = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setData(data);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { PolyGridColumn } from \"@polygrid/core/engine/services/column/interfaces/column\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function columnInputEffect(\r\n value: Signal<PolyGridColumn[]>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const columns = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setColumns(columns);\r\n });\r\n}\r\n","import { effect, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\n\r\nexport function loadingInputEffect(value: Signal<boolean>, grid: PolyGrid) {\r\n return effect(() => {\r\n grid.api.setLoading(value());\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function resizableInputEffect(\r\n value: Signal<boolean>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const resizable = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setResizable(resizable);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\nimport { PolyGridResizeMode } from \"@polygrid/core/engine/store/types/resize-mode\";\r\n\r\nexport function resizeModeInputEffect(\r\n value: Signal<PolyGridResizeMode>,\r\n grid: PolyGrid\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const resizeMode = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setResizeMode(resizeMode);\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\nimport { ColumnService } from \"../services/column/column\";\r\n\r\nexport function toggleVisibilityInputEffect(\r\n key: string,\r\n value: Signal<boolean>,\r\n columnService: ColumnService,\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const visible = value();\r\n\r\n if (isInitial) return;\r\n\r\n const grid = columnService.grid();\r\n if (!grid) return;\r\n\r\n const { enableAnimations } = grid._store.getState().view;\r\n\r\n if (enableAnimations) {\r\n visible\r\n ? grid.api.showColumnAnimated(key)\r\n : grid.api.hideColumnAnimated(key);\r\n } else {\r\n grid.api.setColumnVisible(key, visible);\r\n }\r\n });\r\n}\r\n","import { EffectRef, Signal } from \"@angular/core\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { effectSkipFirst } from \"./skip-first\";\r\n\r\nexport function enableAnimationsInputEffect(\r\n value: Signal<boolean>,\r\n grid: PolyGrid,\r\n): EffectRef {\r\n return effectSkipFirst((isInitial) => {\r\n const enableAnimations = value();\r\n if (isInitial) return;\r\n if (grid) grid.api.setEnableAnimations(enableAnimations);\r\n });\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridNoDataTemplate]\",\r\n})\r\nexport class PolyGridNoDataTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridLoadingTemplate]\",\r\n})\r\nexport class PolyGridLoadingTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { ApplicationRef, Injectable, TemplateRef } from \"@angular/core\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class TemplateMountService {\r\n constructor(private appRef: ApplicationRef) {}\r\n\r\n mount<T>(\r\n template: TemplateRef<T>,\r\n container: HTMLElement,\r\n context: T\r\n ): RendererHandle {\r\n const view = template.createEmbeddedView(context);\r\n this.appRef.attachView(view);\r\n view.detectChanges();\r\n\r\n const frag = document.createDocumentFragment();\r\n for (const node of view.rootNodes) frag.appendChild(node);\r\n container.appendChild(frag);\r\n\r\n return {\r\n update: (partial: Partial<T>) => {\r\n Object.assign(view.context as any, partial);\r\n view.detectChanges();\r\n },\r\n destroy: () => {\r\n this.appRef.detachView(view);\r\n view.destroy();\r\n },\r\n };\r\n }\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { NoDataMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/no-data-mount\";\r\n\r\nexport function renderNoDataTemplate(\r\n req: NoDataMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n context: req.context,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { LoadingMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/loading-mount\";\r\n\r\nexport function renderLoadingTemplate(\r\n req: LoadingMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n context: req.context,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ErrorMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/error-mount\";\r\n\r\nexport function renderErrorTemplate(\r\n req: ErrorMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n title: req.context.title,\r\n message: req.context.message,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ColumnHeaderMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/column-header-mount\";\r\n\r\nexport function renderColumnHeaderTemplate(\r\n req: ColumnHeaderMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService,\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n field: req.context.field,\r\n header: req.context.header,\r\n columnKey: req.context.columnKey,\r\n columnId: req.context.columnId,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ColumnFooterMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/column-footer-mount\";\r\n\r\nexport function renderColumnFooterTemplate(\r\n req: ColumnFooterMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService,\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n field: req.context.field,\r\n header: req.context.header,\r\n columnKey: req.context.columnKey,\r\n columnId: req.context.columnId,\r\n values: req.context.values,\r\n rows: req.context.rows,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { RendererHandle } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-handle\";\r\nimport { ColumnCellMount } from \"@polygrid/core/engine/services/renderer/interfaces/template-mounts/column-cell-mount\";\r\n\r\nexport function renderColumnCellTemplate(\r\n req: ColumnCellMount,\r\n template: TemplateRef<any> | undefined,\r\n templateMountService: TemplateMountService,\r\n): RendererHandle | null {\r\n if (!template) return null;\r\n\r\n const ctx = {\r\n $implicit: req.context,\r\n row: req.context.row,\r\n value: req.context.value,\r\n field: req.context.field,\r\n header: req.context.header,\r\n columnKey: req.context.columnKey,\r\n columnId: req.context.columnId,\r\n rowIndex: req.context.rowIndex,\r\n };\r\n\r\n return templateMountService.mount(template, req.container, ctx);\r\n}\r\n","import { inject, Injectable, TemplateRef } from \"@angular/core\";\r\nimport { TemplateMountService } from \"../templates/template-mount\";\r\nimport { TemplateRegistry } from \"../templates/interfaces/template-registry\";\r\nimport { RendererAdapter } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-adapter\";\r\nimport { renderNoDataTemplate } from \"./no-data\";\r\nimport { renderLoadingTemplate } from \"./loading\";\r\nimport { renderErrorTemplate } from \"./error\";\r\nimport { renderColumnHeaderTemplate } from \"./column-header\";\r\nimport { renderColumnFooterTemplate } from \"./column-footer\";\r\nimport { renderColumnCellTemplate } from \"./column-cell\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class RendererAdapterFactory {\r\n private templateMountService = inject(TemplateMountService);\r\n\r\n buildAdapter(templates: TemplateRegistry): RendererAdapter {\r\n const headerTemplates = new Map<string, TemplateRef<any>>();\r\n const footerTemplates = new Map<string, TemplateRef<any>>();\r\n const cellTemplates = new Map<string, TemplateRef<any>>();\r\n\r\n return {\r\n renderNoDataTemplate: (req) =>\r\n renderNoDataTemplate(req, templates.noData, this.templateMountService),\r\n renderLoadingTemplate: (req) =>\r\n renderLoadingTemplate(\r\n req,\r\n templates.loading,\r\n this.templateMountService,\r\n ),\r\n renderErrorTemplate: (req) =>\r\n renderErrorTemplate(req, templates.error, this.templateMountService),\r\n renderColumnHeaderTemplate: (req) => {\r\n const tpl = headerTemplates.get(req.context.columnKey);\r\n return renderColumnHeaderTemplate(req, tpl, this.templateMountService);\r\n },\r\n registerColumnHeaderTemplate: (key, tpl) => {\r\n headerTemplates.set(key, tpl as TemplateRef<any>);\r\n },\r\n renderColumnFooterTemplate: (req) => {\r\n const tpl = footerTemplates.get(req.context.columnKey);\r\n return renderColumnFooterTemplate(req, tpl, this.templateMountService);\r\n },\r\n registerColumnFooterTemplate: (key, tpl) => {\r\n footerTemplates.set(key, tpl as TemplateRef<any>);\r\n },\r\n renderColumnCellTemplate: (req) => {\r\n const tpl = cellTemplates.get(req.context.columnKey);\r\n return renderColumnCellTemplate(req, tpl, this.templateMountService);\r\n },\r\n registerColumnCellTemplate: (key, tpl) => {\r\n cellTemplates.set(key, tpl as TemplateRef<any>);\r\n },\r\n };\r\n }\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { PolyGridNoDataTemplateDirective } from \"../../directives/no-data-template\";\r\n\r\nexport function extractNoDataTemplate(\r\n dir?: PolyGridNoDataTemplateDirective,\r\n): TemplateRef<any> | undefined {\r\n return dir?.template;\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { PolyGridLoadingTemplateDirective } from \"../../directives/loading-template\";\r\n\r\nexport function extractLoadingTemplate(\r\n dir?: PolyGridLoadingTemplateDirective,\r\n): TemplateRef<any> | undefined {\r\n return dir?.template;\r\n}\r\n","import { TemplateRef } from \"@angular/core\";\r\nimport { PolyGridErrorTemplateDirective } from \"../../directives/error-template\";\r\n\r\nexport function extractErrorTemplate(\r\n dir?: PolyGridErrorTemplateDirective,\r\n): TemplateRef<any> | undefined {\r\n return dir?.template;\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { PolyGridNoDataTemplateDirective } from \"../../directives/no-data-template\";\r\nimport { TemplateRegistry } from \"../templates/interfaces/template-registry\";\r\nimport { extractNoDataTemplate } from \"./extract-no-data\";\r\nimport { extractLoadingTemplate } from \"./extract-loading\";\r\nimport { extractErrorTemplate } from \"./extract-error\";\r\nimport { PolyGridLoadingTemplateDirective } from \"../../directives/loading-template\";\r\nimport { PolyGridErrorTemplateDirective } from \"../../directives/error-template\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class TemplateCollectorService {\r\n collect(\r\n noDataTplDir?: PolyGridNoDataTemplateDirective,\r\n loadingTplDir?: PolyGridLoadingTemplateDirective,\r\n errorTplDir?: PolyGridErrorTemplateDirective,\r\n ): TemplateRegistry {\r\n return {\r\n noData: extractNoDataTemplate(noDataTplDir),\r\n loading: extractLoadingTemplate(loadingTplDir),\r\n error: extractErrorTemplate(errorTplDir),\r\n };\r\n }\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridErrorTemplate]\",\r\n})\r\nexport class PolyGridErrorTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { QueryList } from \"@angular/core\";\r\nimport { PolyGridColumnComponent } from \"../../../components/column/poly-grid-column\";\r\nimport { PolyGridColumn } from \"@polygrid/core/engine/services/column/interfaces/column\";\r\n\r\nexport function collectProjectedColumns(\r\n projectedColumns: QueryList<PolyGridColumnComponent>\r\n): PolyGridColumn[] {\r\n const columns: PolyGridColumn[] = [];\r\n for (const projCol of projectedColumns) {\r\n const col: PolyGridColumn = {\r\n header: projCol.header(),\r\n field: projCol.field(),\r\n width: projCol.width(),\r\n minWidth: projCol.minWidth(),\r\n maxWidth: projCol.maxWidth() ?? Infinity,\r\n visible: projCol.visible(),\r\n };\r\n columns.push(col);\r\n }\r\n return columns;\r\n}\r\n","import { Injectable, signal, TemplateRef } from \"@angular/core\";\r\nimport * as methods from \"./methods/index\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { RendererAdapter } from \"@polygrid/core/engine/services/renderer/interfaces/renderer-adapter\";\r\n\r\n@Injectable({ providedIn: \"root\" })\r\nexport class ColumnService {\r\n private _grid = signal<PolyGrid | null>(null);\r\n grid = this._grid.asReadonly();\r\n\r\n private adapter?: RendererAdapter;\r\n private pendingHeaderTemplates = new Map<string, TemplateRef<any>>();\r\n private pendingFooterTemplates = new Map<string, TemplateRef<any>>();\r\n private pendingCellTemplates = new Map<string, TemplateRef<any>>();\r\n\r\n setGrid(grid: PolyGrid) {\r\n this._grid.set(grid);\r\n }\r\n\r\n setAdapter(adapter: RendererAdapter) {\r\n this.adapter = adapter;\r\n // flush pending templates into the adapter\r\n this.pendingHeaderTemplates.forEach((tpl, key) => {\r\n this.adapter!.registerColumnHeaderTemplate?.(key, tpl);\r\n });\r\n this.pendingHeaderTemplates.clear();\r\n\r\n this.pendingFooterTemplates.forEach((tpl, key) => {\r\n this.adapter!.registerColumnFooterTemplate?.(key, tpl);\r\n });\r\n this.pendingFooterTemplates.clear();\r\n\r\n this.pendingCellTemplates.forEach((tpl, key) => {\r\n this.adapter!.registerColumnCellTemplate?.(key, tpl);\r\n });\r\n this.pendingCellTemplates.clear();\r\n }\r\n\r\n registerHeaderTemplate(key: string, tpl: TemplateRef<any>) {\r\n if (this.adapter) {\r\n this.adapter.registerColumnHeaderTemplate?.(key, tpl);\r\n } else {\r\n this.pendingHeaderTemplates.set(key, tpl);\r\n }\r\n }\r\n\r\n registerFooterTemplate(key: string, tpl: TemplateRef<any>) {\r\n if (this.adapter) {\r\n this.adapter.registerColumnFooterTemplate?.(key, tpl);\r\n } else {\r\n this.pendingFooterTemplates.set(key, tpl);\r\n }\r\n }\r\n\r\n registerCellTemplate(key: string, tpl: TemplateRef<any>) {\r\n if (this.adapter) {\r\n this.adapter.registerColumnCellTemplate?.(key, tpl);\r\n } else {\r\n this.pendingCellTemplates.set(key, tpl);\r\n }\r\n }\r\n\r\n collectProjectedColumns = methods.collectProjectedColumns;\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridColumnHeaderTemplate]\",\r\n})\r\nexport class PolyGridColumnHeaderTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridColumnFooterTemplate]\",\r\n})\r\nexport class PolyGridColumnFooterTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { Directive, TemplateRef } from \"@angular/core\";\r\n\r\n@Directive({\r\n selector: \"[polyGridColumnCellTemplate]\",\r\n})\r\nexport class PolyGridColumnCellTemplateDirective {\r\n constructor(public template: TemplateRef<any>) {}\r\n}\r\n","import { CommonModule } from \"@angular/common\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChild,\r\n EffectRef,\r\n inject,\r\n Injector,\r\n input,\r\n runInInjectionContext,\r\n} from \"@angular/core\";\r\nimport * as effects from \"../../effects/index\";\r\nimport { ColumnService } from \"../../services/column/column\";\r\nimport { PolyGridColumnHeaderTemplateDirective } from \"../../directives/column-header-template\";\r\nimport { PolyGridColumnFooterTemplateDirective } from \"../../directives/column-footer-template\";\r\nimport { PolyGridColumnCellTemplateDirective } from \"../../directives/column-cell-template\";\r\n\r\n@Component({\r\n selector: \"pg-column\",\r\n imports: [CommonModule],\r\n template: \"\",\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PolyGridColumnComponent\r\n implements AfterViewInit, AfterContentInit\r\n{\r\n private injector = inject(Injector);\r\n private columnService = inject(ColumnService);\r\n\r\n header = input.required<string>();\r\n field = input.required<string>();\r\n width = input<number>();\r\n visible = input<boolean>(true);\r\n minWidth = input<number>();\r\n maxWidth = input<number>();\r\n\r\n toggleVisibilityEffect!: EffectRef;\r\n\r\n @ContentChild(PolyGridColumnHeaderTemplateDirective)\r\n headerTemplateDir?: PolyGridColumnHeaderTemplateDirective;\r\n @ContentChild(PolyGridColumnFooterTemplateDirective)\r\n footerTemplateDir?: PolyGridColumnFooterTemplateDirective;\r\n @ContentChild(PolyGridColumnCellTemplateDirective)\r\n cellTemplateDir?: PolyGridColumnCellTemplateDirective;\r\n\r\n ngAfterViewInit(): void {\r\n runInInjectionContext(this.injector, () => {\r\n this.toggleVisibilityEffect = effects.toggleVisibilityInputEffect(\r\n `${this.field()}::${this.header()}`,\r\n this.visible,\r\n this.columnService,\r\n );\r\n });\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.headerTemplateDir) {\r\n this.columnService.registerHeaderTemplate(\r\n `${this.field()}::${this.header()}`,\r\n this.headerTemplateDir.template,\r\n );\r\n }\r\n if (this.footerTemplateDir) {\r\n this.columnService.registerFooterTemplate(\r\n `${this.field()}::${this.header()}`,\r\n this.footerTemplateDir.template,\r\n );\r\n }\r\n if (this.cellTemplateDir) {\r\n this.columnService.registerCellTemplate(\r\n `${this.field()}::${this.header()}`,\r\n this.cellTemplateDir.template,\r\n );\r\n }\r\n }\r\n}\r\n","import {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChild,\r\n ContentChildren,\r\n EffectRef,\r\n ElementRef,\r\n inject,\r\n Injector,\r\n input,\r\n OnDestroy,\r\n QueryList,\r\n runInInjectionContext,\r\n ViewChild,\r\n} from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport * as effects from \"../../effects/index\";\r\nimport { PolyGrid } from \"@polygrid/core/engine/core/grid\";\r\nimport { PolyGridColumn } from \"@polygrid/core/engine/services/column/interfaces/column\";\r\nimport { PolyGridOptions } from \"@polygrid/core/engine/core/interfaces/grid-options\";\r\nimport { PolyGridNoDataTemplateDirective } from \"../../directives/no-data-template\";\r\nimport { PolyGridLoadingTemplateDirective } from \"../../directives/loading-template\";\r\nimport { RendererAdapterFactory } from \"../../services/renderer-adapter/renderer-adapter-factory\";\r\nimport { TemplateCollectorService } from \"../../services/template-collector/template-collector\";\r\nimport { PolyGridErrorTemplateDirective } from \"../../directives/error-template\";\r\nimport { PolyGridColumnComponent } from \"../column/poly-grid-column\";\r\nimport { GridErrorType } from \"@polygrid/core/engine/services/error/types/error-type\";\r\nimport { PolyGridResizeMode } from \"@polygrid/core/engine/store/types/resize-mode\";\r\nimport { ColumnService } from \"../../services/column/column\";\r\n\r\n@Component({\r\n selector: \"pg-grid\",\r\n imports: [CommonModule],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n templateUrl: \"./poly-grid.html\",\r\n styleUrl: \"./poly-grid.css\",\r\n})\r\nexport class PolyGridComponent\r\n implements AfterViewInit, OnDestroy, AfterContentInit\r\n{\r\n private grid: PolyGrid | null = null;\r\n private injector = inject(Injector);\r\n private adapterFactory = inject(RendererAdapterFactory);\r\n private templateCollector = inject(TemplateCollectorService);\r\n private errorType!: GridErrorType | null;\r\n private columnService = inject(ColumnService);\r\n\r\n @ViewChild(\"host\", { static: true }) hostRef!: ElementRef<HTMLDivElement>;\r\n\r\n @ContentChild(PolyGridNoDataTemplateDirective)\r\n noDataTemplateDir?: PolyGridNoDataTemplateDirective;\r\n @ContentChild(PolyGridLoadingTemplateDirective)\r\n loadingTemplateDir?: PolyGridLoadingTemplateDirective;\r\n @ContentChild(PolyGridErrorTemplateDirective)\r\n errorTemplateDir?: PolyGridErrorTemplateDirective;\r\n\r\n @ContentChildren(PolyGridColumnComponent)\r\n projectedColumns!: QueryList<PolyGridColumnComponent>;\r\n\r\n // inputs\r\n id = input.required<string>();\r\n columns = input<PolyGridColumn[]>([]);\r\n data = input<any[]>([]);\r\n loading = input<boolean>(false);\r\n resizable = input<boolean>(false);\r\n resizeMode = input<PolyGridResizeMode>(\"unconstrained\");\r\n enableAnimations = input<boolean>(false);\r\n\r\n // reactive effects\r\n gridIdEffect!: EffectRef;\r\n dataEffect!: EffectRef;\r\n columnEffect!: EffectRef;\r\n loadingEffect!: EffectRef;\r\n resizableEffect!: EffectRef;\r\n resizeModeEffect!: EffectRef;\r\n enableAnimationsEffect!: EffectRef;\r\n\r\n ngAfterViewInit(): void {\r\n const host = this.hostRef.nativeElement;\r\n const registry = this.templateCollector.collect(\r\n this.noDataTemplateDir,\r\n this.loadingTemplateDir,\r\n this.errorTemplateDir,\r\n );\r\n const adapter = this.adapterFactory.buildAdapter(registry);\r\n this.columnService.setAdapter(adapter);\r\n\r\n const projected = this.columnService.collectProjectedColumns(\r\n this.projectedColumns,\r\n );\r\n const inputCols = this.columns();\r\n const finalColumns =\r\n inputCols !== undefined && inputCols !== null && inputCols.length > 0\r\n ? inputCols\r\n : projected;\r\n\r\n const options: PolyGridOptions = {\r\n id: this.id(),\r\n columns: finalColumns,\r\n data: this.data(),\r\n rendererAdapter: adapter,\r\n };\r\n\r\n this.grid = new PolyGrid(host, options);\r\n this.columnService.setGrid(this.grid);\r\n\r\n runInInjectionContext(this.injector, () => {\r\n this.gridIdEffect = effects.gridIdInputEffect(this.id, this.grid!);\r\n this.dataEffect = effects.dataInputEffect(this.data, this.grid!);\r\n this.columnEffect = effects.columnInputEffect(this.columns, this.grid!);\r\n this.loadingEffect = effects.loadingInputEffect(this.loading, this.grid!);\r\n this.resizableEffect = effects.resizableInputEffect(\r\n this.resizable,\r\n this.grid!,\r\n );\r\n this.resizeModeEffect = effects.resizeModeInputEffect(\r\n this.resizeMode,\r\n this.grid!,\r\n );\r\n this.enableAnimationsEffect = effects.enableAnimationsInputEffect(\r\n this.enableAnimations,\r\n this.grid!,\r\n );\r\n });\r\n\r\n if (this.errorType) {\r\n switch (this.errorType) {\r\n case \"ambiguous-column-definition\":\r\n this.grid.api.setError(true, this.errorType);\r\n return;\r\n }\r\n }\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n if (this.columns().length > 0 && this.projectedColumns.length > 0)\r\n this.errorType = \"ambiguous-column-definition\";\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.grid?.destroy();\r\n this.grid = null;\r\n }\r\n}\r\n","<div #host class=\"pg-host\"></div>\r\n","import { NgModule } from \"@angular/core\";\r\nimport {\r\n PolyGridColumnCellTemplateDirective,\r\n PolyGridColumnComponent,\r\n PolyGridColumnFooterTemplateDirective,\r\n PolyGridColumnHeaderTemplateDirective,\r\n PolyGridComponent,\r\n PolyGridErrorTemplateDirective,\r\n PolyGridLoadingTemplateDirective,\r\n PolyGridNoDataTemplateDirective,\r\n} from \"../../public-api\";\r\n\r\n@NgModule({\r\n imports: [\r\n PolyGridComponent,\r\n PolyGridColumnComponent,\r\n PolyGridNoDataTemplateDirective,\r\n PolyGridLoadingTemplateDirective,\r\n PolyGridErrorTemplateDirective,\r\n PolyGridColumnHeaderTemplateDirective,\r\n PolyGridColumnFooterTemplateDirective,\r\n PolyGridColumnCellTemplateDirective,\r\n ],\r\n exports: [\r\n PolyGridComponent,\r\n PolyGridColumnComponent,\r\n PolyGridNoDataTemplateDirective,\r\n PolyGridLoadingTemplateDirective,\r\n PolyGridErrorTemplateDirective,\r\n PolyGridColumnHeaderTemplateDirective,\r\n PolyGridColumnFooterTemplateDirective,\r\n PolyGridColumnCellTemplateDirective,\r\n ],\r\n providers: [],\r\n})\r\nexport class POLY_GRID {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["methods.collectProjectedColumns","effects.toggleVisibilityInputEffect","effects.gridIdInputEffect","effects.dataInputEffect","effects.columnInputEffect","effects.loadingInputEffect","effects.resizableInputEffect","effects.resizeModeInputEffect","effects.enableAnimationsInputEffect"],"mappings":"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"}
|
|
@@ -38,6 +38,13 @@ declare class PolyGridColumnFooterTemplateDirective {
|
|
|
38
38
|
static ɵdir: i0.ɵɵDirectiveDeclaration<PolyGridColumnFooterTemplateDirective, "[polyGridColumnFooterTemplate]", never, {}, {}, never, never, true, never>;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
declare class PolyGridColumnCellTemplateDirective {
|
|
42
|
+
template: TemplateRef<any>;
|
|
43
|
+
constructor(template: TemplateRef<any>);
|
|
44
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PolyGridColumnCellTemplateDirective, never>;
|
|
45
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<PolyGridColumnCellTemplateDirective, "[polyGridColumnCellTemplate]", never, {}, {}, never, never, true, never>;
|
|
46
|
+
}
|
|
47
|
+
|
|
41
48
|
declare class PolyGridColumnComponent implements AfterViewInit, AfterContentInit {
|
|
42
49
|
private injector;
|
|
43
50
|
private columnService;
|
|
@@ -50,10 +57,11 @@ declare class PolyGridColumnComponent implements AfterViewInit, AfterContentInit
|
|
|
50
57
|
toggleVisibilityEffect: EffectRef;
|
|
51
58
|
headerTemplateDir?: PolyGridColumnHeaderTemplateDirective;
|
|
52
59
|
footerTemplateDir?: PolyGridColumnFooterTemplateDirective;
|
|
60
|
+
cellTemplateDir?: PolyGridColumnCellTemplateDirective;
|
|
53
61
|
ngAfterViewInit(): void;
|
|
54
62
|
ngAfterContentInit(): void;
|
|
55
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<PolyGridColumnComponent, never>;
|
|
56
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PolyGridColumnComponent, "pg-column", never, { "header": { "alias": "header"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": true; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; }, {}, ["headerTemplateDir", "footerTemplateDir"], never, true, never>;
|
|
64
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PolyGridColumnComponent, "pg-column", never, { "header": { "alias": "header"; "required": true; "isSignal": true; }; "field": { "alias": "field"; "required": true; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; }, {}, ["headerTemplateDir", "footerTemplateDir", "cellTemplateDir"], never, true, never>;
|
|
57
65
|
}
|
|
58
66
|
|
|
59
67
|
declare class PolyGridComponent implements AfterViewInit, OnDestroy, AfterContentInit {
|
|
@@ -91,8 +99,8 @@ declare class PolyGridComponent implements AfterViewInit, OnDestroy, AfterConten
|
|
|
91
99
|
|
|
92
100
|
declare class POLY_GRID {
|
|
93
101
|
static ɵfac: i0.ɵɵFactoryDeclaration<POLY_GRID, never>;
|
|
94
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<POLY_GRID, never, [typeof PolyGridComponent, typeof PolyGridColumnComponent, typeof PolyGridNoDataTemplateDirective, typeof PolyGridLoadingTemplateDirective, typeof PolyGridErrorTemplateDirective, typeof PolyGridColumnHeaderTemplateDirective, typeof PolyGridColumnFooterTemplateDirective], [typeof PolyGridComponent, typeof PolyGridColumnComponent, typeof PolyGridNoDataTemplateDirective, typeof PolyGridLoadingTemplateDirective, typeof PolyGridErrorTemplateDirective, typeof PolyGridColumnHeaderTemplateDirective, typeof PolyGridColumnFooterTemplateDirective]>;
|
|
102
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<POLY_GRID, never, [typeof PolyGridComponent, typeof PolyGridColumnComponent, typeof PolyGridNoDataTemplateDirective, typeof PolyGridLoadingTemplateDirective, typeof PolyGridErrorTemplateDirective, typeof PolyGridColumnHeaderTemplateDirective, typeof PolyGridColumnFooterTemplateDirective, typeof PolyGridColumnCellTemplateDirective], [typeof PolyGridComponent, typeof PolyGridColumnComponent, typeof PolyGridNoDataTemplateDirective, typeof PolyGridLoadingTemplateDirective, typeof PolyGridErrorTemplateDirective, typeof PolyGridColumnHeaderTemplateDirective, typeof PolyGridColumnFooterTemplateDirective, typeof PolyGridColumnCellTemplateDirective]>;
|
|
95
103
|
static ɵinj: i0.ɵɵInjectorDeclaration<POLY_GRID>;
|
|
96
104
|
}
|
|
97
105
|
|
|
98
|
-
export { POLY_GRID, PolyGridColumnComponent, PolyGridColumnFooterTemplateDirective, PolyGridColumnHeaderTemplateDirective, PolyGridComponent, PolyGridErrorTemplateDirective, PolyGridLoadingTemplateDirective, PolyGridNoDataTemplateDirective };
|
|
106
|
+
export { POLY_GRID, PolyGridColumnCellTemplateDirective, PolyGridColumnComponent, PolyGridColumnFooterTemplateDirective, PolyGridColumnHeaderTemplateDirective, PolyGridComponent, PolyGridErrorTemplateDirective, PolyGridLoadingTemplateDirective, PolyGridNoDataTemplateDirective };
|