@ajf/material 13.0.0-rc.1 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,27 +1,34 @@
1
1
  import * as i1 from '@ajf/core/reports';
2
- import { AjfBaseWidgetComponent, AjfWidgetType, AjfWidgetService as AjfWidgetService$1, AjfReportWidget as AjfReportWidget$1, AjfReportRenderer as AjfReportRenderer$1, AjfReportsModule as AjfReportsModule$1 } from '@ajf/core/reports';
2
+ import { AjfBaseWidgetComponent, widgetToWidgetInstance, AjfWidgetType, AjfWidgetService as AjfWidgetService$1, AjfReportWidget as AjfReportWidget$1, AjfReportRenderer as AjfReportRenderer$1, AjfReportsModule as AjfReportsModule$1 } from '@ajf/core/reports';
3
3
  import * as i0 from '@angular/core';
4
- import { Component, ChangeDetectionStrategy, ViewEncapsulation, Injectable, NgModule } from '@angular/core';
4
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, EventEmitter, Output, Injectable, NgModule } from '@angular/core';
5
5
  import * as i2 from '@ajf/core/chart';
6
6
  import { AjfChartModule } from '@ajf/core/chart';
7
- import * as i1$1 from '@ajf/core/text';
7
+ import { filter, switchMap, distinctUntilChanged, debounceTime, skip, tap } from 'rxjs/operators';
8
+ import * as i2$1 from '@ajf/core/forms';
9
+ import { AjfFormRendererService } from '@ajf/core/forms';
10
+ import { Subscription, BehaviorSubject } from 'rxjs';
11
+ import { evaluateExpression } from '@ajf/core/models';
12
+ import * as i1$1 from '@ajf/core/transloco';
13
+ import { AjfTranslocoModule } from '@ajf/core/transloco';
14
+ import * as i3 from '@ajf/material/forms';
15
+ import { AjfFormsModule } from '@ajf/material/forms';
16
+ import * as i2$2 from '@angular/common';
17
+ import { CommonModule } from '@angular/common';
18
+ import * as i1$2 from '@ajf/core/text';
8
19
  import { AjfTextModule } from '@ajf/core/text';
9
20
  import { AjfImageType } from '@ajf/core/image';
10
- import * as i1$2 from '@ajf/material/image';
21
+ import * as i1$3 from '@ajf/material/image';
11
22
  import { AjfImageModule } from '@ajf/material/image';
12
- import * as i2$1 from '@angular/common';
13
- import { CommonModule } from '@angular/common';
14
- import * as i3 from '@ajf/core/common';
23
+ import * as i3$1 from '@ajf/core/common';
15
24
  import { AjfCommonModule } from '@ajf/core/common';
16
- import * as i1$3 from '@ajf/core/map';
25
+ import * as i1$4 from '@ajf/core/map';
17
26
  import { AjfMapModule } from '@ajf/core/map';
18
- import * as i1$4 from '@ajf/core/page-break';
27
+ import * as i1$5 from '@ajf/core/page-break';
19
28
  import { AjfPageBreakModule } from '@ajf/core/page-break';
20
- import { BehaviorSubject } from 'rxjs';
21
- import * as i2$2 from '@ajf/core/table';
29
+ import * as i2$3 from '@ajf/core/table';
22
30
  import { AjfTableModule } from '@ajf/core/table';
23
- import * as i2$3 from '@ngneat/transloco';
24
- import { AjfTranslocoModule } from '@ajf/core/transloco';
31
+ import * as i2$4 from '@ngneat/transloco';
25
32
 
26
33
  /**
27
34
  * @license
@@ -56,6 +63,65 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
56
63
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-widget-export \n [widgetType]=\"instance.widgetType\" \n [data]=\"instance.data\" \n [enable]=\"instance.exportable\">\n <ajf-chart\n [chartType]=\"instance.chartType\"\n [options]=\"instance.widget.options\"\n [data]=\"instance.data\"\n [instance]=\"instance\">\n </ajf-chart>\n</ajf-widget-export>\n", styles: ["\n"] }]
57
64
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; } });
58
65
 
66
+ /**
67
+ * @license
68
+ * Copyright (C) Gnucoop soc. coop.
69
+ *
70
+ * This file is part of the Advanced JSON forms (ajf).
71
+ *
72
+ * Advanced JSON forms (ajf) is free software: you can redistribute it and/or
73
+ * modify it under the terms of the GNU Affero General Public License as
74
+ * published by the Free Software Foundation, either version 3 of the License,
75
+ * or (at your option) any later version.
76
+ *
77
+ * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
78
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
79
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
80
+ * General Public License for more details.
81
+ *
82
+ * You should have received a copy of the GNU Affero General Public License
83
+ * along with Advanced JSON forms (ajf).
84
+ * If not, see http://www.gnu.org/licenses/.
85
+ *
86
+ */
87
+ class AjfFilterWidgetComponent extends AjfBaseWidgetComponent {
88
+ constructor(cdr, el, _ts, _formRenderer) {
89
+ super(cdr, el);
90
+ this._ts = _ts;
91
+ this._formRenderer = _formRenderer;
92
+ this.filteredInstance = new EventEmitter();
93
+ this._instanceSub = Subscription.EMPTY;
94
+ }
95
+ ngOnDestroy() {
96
+ this._instanceSub.unsubscribe();
97
+ }
98
+ ngOnInit() {
99
+ if (this.instance != null && this.instance.filter != null) {
100
+ this._instanceSub = this._formRenderer.formGroup
101
+ .pipe(filter(fg => fg != null), switchMap(formGroup => formGroup.valueChanges), distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)), debounceTime(500), skip(1), tap(a => {
102
+ if (this.instance != null && this.instance.filter != null) {
103
+ const newConst = Object.assign(Object.assign({}, (this.instance.filter.context || {})), a);
104
+ if (this.instance.filter.variables != null) {
105
+ (this.instance.filter.variables || []).forEach(variable => {
106
+ newConst[variable.name] = evaluateExpression(variable.formula.formula, newConst);
107
+ });
108
+ }
109
+ this.instance = widgetToWidgetInstance(this.instance.widget, newConst, this._ts);
110
+ }
111
+ }))
112
+ .subscribe(() => this.filteredInstance.emit(this.instance));
113
+ }
114
+ }
115
+ }
116
+ AjfFilterWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfFilterWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1$1.TranslocoService }, { token: i2$1.AjfFormRendererService }], target: i0.ɵɵFactoryTarget.Component });
117
+ AjfFilterWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfFilterWidgetComponent, selector: "ajf-filter-widget", inputs: { instance: "instance" }, outputs: { filteredInstance: "filteredInstance" }, providers: [AjfFormRendererService], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"instance.filter as filter\" class=\"ajf-filter-container\">\n <ajf-form\n [form]=\"filter.form\"\n [hasStartMessage]=\"false\"\n [hasEndMessage]=\"false\"\n [hideTopToolbar]=\"true\"\n [hideBottomToolbar]=\"true\"\n [hideNavigationButtons]=\"true\"\n ></ajf-form>\n</div>\n", styles: ["ajf-filter-widget .ajf-filter-container ajf-page-slider-item{flex:auto !important}ajf-filter-widget .ajf-filter-container ajf-page-slider-item .ajf-page-slider-item-content{position:relative}ajf-filter-widget .ajf-filter-container .ajf-form-container{position:relative}ajf-filter-widget .ajf-filter-container .ajf-form-container .mat-card-header{display:none}ajf-filter-widget .ajf-field-entry{width:unset !important;min-width:200px}\n"], components: [{ type: i3.AjfFormRenderer, selector: "ajf-form", inputs: ["topBar"] }], directives: [{ type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfFilterWidgetComponent, decorators: [{
119
+ type: Component,
120
+ args: [{ selector: 'ajf-filter-widget', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [AjfFormRendererService], inputs: ['instance'], template: "<div *ngIf=\"instance.filter as filter\" class=\"ajf-filter-container\">\n <ajf-form\n [form]=\"filter.form\"\n [hasStartMessage]=\"false\"\n [hasEndMessage]=\"false\"\n [hideTopToolbar]=\"true\"\n [hideBottomToolbar]=\"true\"\n [hideNavigationButtons]=\"true\"\n ></ajf-form>\n</div>\n", styles: ["ajf-filter-widget .ajf-filter-container ajf-page-slider-item{flex:auto !important}ajf-filter-widget .ajf-filter-container ajf-page-slider-item .ajf-page-slider-item-content{position:relative}ajf-filter-widget .ajf-filter-container .ajf-form-container{position:relative}ajf-filter-widget .ajf-filter-container .ajf-form-container .mat-card-header{display:none}ajf-filter-widget .ajf-field-entry{width:unset !important;min-width:200px}\n"] }]
121
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1$1.TranslocoService }, { type: i2$1.AjfFormRendererService }]; }, propDecorators: { filteredInstance: [{
122
+ type: Output
123
+ }] } });
124
+
59
125
  /**
60
126
  * @license
61
127
  * Copyright (C) Gnucoop soc. coop.
@@ -83,7 +149,7 @@ class AjfFormulaWidgetComponent extends AjfBaseWidgetComponent {
83
149
  }
84
150
  }
85
151
  AjfFormulaWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfFormulaWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
86
- AjfFormulaWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfFormulaWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-text [htmlText]=\"instance.formula\"></ajf-text>\n", styles: ["\n"], components: [{ type: i1$1.AjfTextComponent, selector: "ajf-text", inputs: ["htmlText"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
152
+ AjfFormulaWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfFormulaWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-text [htmlText]=\"instance.formula\"></ajf-text>\n", styles: ["\n"], components: [{ type: i1$2.AjfTextComponent, selector: "ajf-text", inputs: ["htmlText"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
87
153
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfFormulaWidgetComponent, decorators: [{
88
154
  type: Component,
89
155
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-text [htmlText]=\"instance.formula\"></ajf-text>\n", styles: ["\n"] }]
@@ -117,7 +183,7 @@ class AjfImageContainerWidgetComponent extends AjfBaseWidgetComponent {
117
183
  }
118
184
  }
119
185
  AjfImageContainerWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfImageContainerWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
120
- AjfImageContainerWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfImageContainerWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ajf-image-container ajf-columns\" [ngSwitch]=\"instance.widget.imageType\">\n <ng-template [ngSwitchCase]=\"imageTypes.Image\">\n <div *ngFor=\"let icw of instance.urls; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"icw\"\n [icon]=\"null\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Flag\">\n <div *ngFor=\"let icw of instance.flags; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"null\"\n [flag]=\"icw\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Icon\">\n <div *ngFor=\"let icw of instance.icons; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"icw\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n</div>\n", styles: [".ajf-image-container img{max-width:none;max-height:none}\n"], components: [{ type: i1$2.AjfImage, selector: "ajf-image" }], directives: [{ type: i2$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i2$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.ApplyStylesDirective, selector: "[applyStyles]", inputs: ["applyStyles"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
186
+ AjfImageContainerWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfImageContainerWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ajf-image-container ajf-columns\" [ngSwitch]=\"instance.widget.imageType\">\n <ng-template [ngSwitchCase]=\"imageTypes.Image\">\n <div *ngFor=\"let icw of instance.urls; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"icw\"\n [icon]=\"null\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Flag\">\n <div *ngFor=\"let icw of instance.flags; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"null\"\n [flag]=\"icw\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Icon\">\n <div *ngFor=\"let icw of instance.icons; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"icw\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n</div>\n", styles: [".ajf-image-container img{max-width:none;max-height:none}\n"], components: [{ type: i1$3.AjfImage, selector: "ajf-image" }], directives: [{ type: i2$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i2$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3$1.ApplyStylesDirective, selector: "[applyStyles]", inputs: ["applyStyles"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
121
187
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfImageContainerWidgetComponent, decorators: [{
122
188
  type: Component,
123
189
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ajf-image-container ajf-columns\" [ngSwitch]=\"instance.widget.imageType\">\n <ng-template [ngSwitchCase]=\"imageTypes.Image\">\n <div *ngFor=\"let icw of instance.urls; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"icw\"\n [icon]=\"null\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Flag\">\n <div *ngFor=\"let icw of instance.flags; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"null\"\n [flag]=\"icw\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Icon\">\n <div *ngFor=\"let icw of instance.icons; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"icw\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n</div>\n", styles: [".ajf-image-container img{max-width:none;max-height:none}\n"] }]
@@ -150,7 +216,7 @@ class AjfImageWidgetComponent extends AjfBaseWidgetComponent {
150
216
  }
151
217
  }
152
218
  AjfImageWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfImageWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
153
- AjfImageWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfImageWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"instance.url\"\n [icon]=\"instance.icon\"\n [flag]=\"instance.flag\"\n></ajf-image>\n", styles: ["\n"], components: [{ type: i1$2.AjfImage, selector: "ajf-image" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
219
+ AjfImageWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfImageWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"instance.url\"\n [icon]=\"instance.icon\"\n [flag]=\"instance.flag\"\n></ajf-image>\n", styles: ["\n"], components: [{ type: i1$3.AjfImage, selector: "ajf-image" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
154
220
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfImageWidgetComponent, decorators: [{
155
221
  type: Component,
156
222
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"instance.url\"\n [icon]=\"instance.icon\"\n [flag]=\"instance.flag\"\n></ajf-image>\n", styles: ["\n"] }]
@@ -183,7 +249,7 @@ class AjfMapWidgetComponent extends AjfBaseWidgetComponent {
183
249
  }
184
250
  }
185
251
  AjfMapWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfMapWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
186
- AjfMapWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfMapWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-map\n [coordinate]=\"instance.coordinate\"\n [tileLayer]=\"instance.widget.tileLayer\"\n [attribution]=\"instance.widget.attribution\"\n [disabled]=\"instance.widget.disabled\"\n></ajf-map>\n", styles: ["\n"], components: [{ type: i1$3.AjfMapComponent, selector: "ajf-map", inputs: ["coordinate", "tileLayer", "attribution", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
252
+ AjfMapWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfMapWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-map\n [coordinate]=\"instance.coordinate\"\n [tileLayer]=\"instance.widget.tileLayer\"\n [attribution]=\"instance.widget.attribution\"\n [disabled]=\"instance.widget.disabled\"\n></ajf-map>\n", styles: ["\n"], components: [{ type: i1$4.AjfMapComponent, selector: "ajf-map", inputs: ["coordinate", "tileLayer", "attribution", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
187
253
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfMapWidgetComponent, decorators: [{
188
254
  type: Component,
189
255
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-map\n [coordinate]=\"instance.coordinate\"\n [tileLayer]=\"instance.widget.tileLayer\"\n [attribution]=\"instance.widget.attribution\"\n [disabled]=\"instance.widget.disabled\"\n></ajf-map>\n", styles: ["\n"] }]
@@ -216,7 +282,7 @@ class AjfPageBreakWidgetComponent extends AjfBaseWidgetComponent {
216
282
  }
217
283
  }
218
284
  AjfPageBreakWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfPageBreakWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
219
- AjfPageBreakWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfPageBreakWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-page-break></ajf-page-break>\n", styles: ["\n"], components: [{ type: i1$4.AjfPageBreakComponent, selector: "ajf-page-break" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
285
+ AjfPageBreakWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfPageBreakWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-page-break></ajf-page-break>\n", styles: ["\n"], components: [{ type: i1$5.AjfPageBreakComponent, selector: "ajf-page-break" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
220
286
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfPageBreakWidgetComponent, decorators: [{
221
287
  type: Component,
222
288
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-page-break></ajf-page-break>\n", styles: ["\n"] }]
@@ -249,7 +315,7 @@ class AjfTableWidgetComponent extends AjfBaseWidgetComponent {
249
315
  }
250
316
  }
251
317
  AjfTableWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfTableWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
252
- AjfTableWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfTableWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-widget-export \n[widgetType]=\"instance.widgetType\" \n[data]=\"instance.data\"\n[enable]=\"instance.exportable\"\n>\n <ajf-table [data]=\"instance.data\"></ajf-table>\n</ajf-widget-export>\n", styles: ["table{border-spacing:0}table td{padding:10px}\n"], components: [{ type: i1.AjfWidgetExport, selector: "ajf-widget-export", inputs: ["widgetType", "data", "overlay", "enable"] }, { type: i2$2.AjfTable, selector: "ajf-table", inputs: ["data", "cellpadding"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
318
+ AjfTableWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfTableWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-widget-export \n[widgetType]=\"instance.widgetType\" \n[data]=\"instance.data\"\n[enable]=\"instance.exportable\"\n>\n <ajf-table [data]=\"instance.data\"></ajf-table>\n</ajf-widget-export>\n", styles: ["table{border-spacing:0}table td{padding:10px}\n"], components: [{ type: i1.AjfWidgetExport, selector: "ajf-widget-export", inputs: ["widgetType", "data", "overlay", "enable"] }, { type: i2$3.AjfTable, selector: "ajf-table", inputs: ["data", "cellpadding"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
253
319
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfTableWidgetComponent, decorators: [{
254
320
  type: Component,
255
321
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-widget-export \n[widgetType]=\"instance.widgetType\" \n[data]=\"instance.data\"\n[enable]=\"instance.exportable\"\n>\n <ajf-table [data]=\"instance.data\"></ajf-table>\n</ajf-widget-export>\n", styles: ["table{border-spacing:0}table td{padding:10px}\n"] }]
@@ -282,7 +348,7 @@ class AjfTextWidgetComponent extends AjfBaseWidgetComponent {
282
348
  }
283
349
  }
284
350
  AjfTextWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfTextWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
285
- AjfTextWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfTextWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-text [htmlText]=\"instance.htmlText | transloco\"></ajf-text>\n", styles: ["\n"], components: [{ type: i1$1.AjfTextComponent, selector: "ajf-text", inputs: ["htmlText"] }], pipes: { "transloco": i2$3.TranslocoPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
351
+ AjfTextWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfTextWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ajf-text [htmlText]=\"instance.htmlText | transloco\"></ajf-text>\n", styles: ["\n"], components: [{ type: i1$2.AjfTextComponent, selector: "ajf-text", inputs: ["htmlText"] }], pipes: { "transloco": i2$4.TranslocoPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
286
352
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfTextWidgetComponent, decorators: [{
287
353
  type: Component,
288
354
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ajf-text [htmlText]=\"instance.htmlText | transloco\"></ajf-text>\n", styles: ["\n"] }]
@@ -342,10 +408,10 @@ class AjfReportWidget extends AjfReportWidget$1 {
342
408
  }
343
409
  }
344
410
  AjfReportWidget.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfReportWidget, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.Renderer2 }, { token: AjfWidgetService }], target: i0.ɵɵFactoryTarget.Component });
345
- AjfReportWidget.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfReportWidget, selector: "ajf-widget", usesInheritance: true, ngImport: i0, template: "<ng-template ajf-widget-host></ng-template>\n", styles: ["ajf-widget{display:flex;flex:1 1 auto;box-sizing:border-box}ajf-widget>ng-component{flex:1 1 auto;display:flex;align-items:center;box-sizing:border-box;background-color:transparent}\n"], directives: [{ type: i1.AjfWidgetHost, selector: "[ajf-widget-host]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
411
+ AjfReportWidget.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfReportWidget, selector: "ajf-widget", providers: [AjfFormRendererService], usesInheritance: true, ngImport: i0, template: "<ajf-filter-widget\n *ngIf=\"instance.filter != null\"\n [instance]=\"instance\"\n (filteredInstance)=\"instance = $event\"\n>\n</ajf-filter-widget>\n<ng-template ajf-widget-host></ng-template>\n", styles: ["ajf-widget{display:flex;flex:1 1 auto;box-sizing:border-box;flex-direction:column}ajf-widget>ng-component{flex:1 1 auto;display:flex;align-items:center;box-sizing:border-box;background-color:transparent}\n"], components: [{ type: AjfFilterWidgetComponent, selector: "ajf-filter-widget", inputs: ["instance"], outputs: ["filteredInstance"] }], directives: [{ type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.AjfWidgetHost, selector: "[ajf-widget-host]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
346
412
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfReportWidget, decorators: [{
347
413
  type: Component,
348
- args: [{ selector: 'ajf-widget', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template ajf-widget-host></ng-template>\n", styles: ["ajf-widget{display:flex;flex:1 1 auto;box-sizing:border-box}ajf-widget>ng-component{flex:1 1 auto;display:flex;align-items:center;box-sizing:border-box;background-color:transparent}\n"] }]
414
+ args: [{ selector: 'ajf-widget', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [AjfFormRendererService], template: "<ajf-filter-widget\n *ngIf=\"instance.filter != null\"\n [instance]=\"instance\"\n (filteredInstance)=\"instance = $event\"\n>\n</ajf-filter-widget>\n<ng-template ajf-widget-host></ng-template>\n", styles: ["ajf-widget{display:flex;flex:1 1 auto;box-sizing:border-box;flex-direction:column}ajf-widget>ng-component{flex:1 1 auto;display:flex;align-items:center;box-sizing:border-box;background-color:transparent}\n"] }]
349
415
  }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.Renderer2 }, { type: AjfWidgetService }]; } });
350
416
  class AjfColumnWidgetComponent extends AjfBaseWidgetComponent {
351
417
  constructor(cdr, el) {
@@ -353,7 +419,7 @@ class AjfColumnWidgetComponent extends AjfBaseWidgetComponent {
353
419
  }
354
420
  }
355
421
  AjfColumnWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfColumnWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
356
- AjfColumnWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfColumnWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ajf-column-container\">\n <ng-container *ngFor=\"let w of instance.content\">\n <ajf-widget [instance]=\"w\">\n </ajf-widget>\n </ng-container>\n</div>\n", styles: [".ajf-column-container{flex:1 1 auto}\n"], components: [{ type: AjfReportWidget, selector: "ajf-widget" }], directives: [{ type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
422
+ AjfColumnWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfColumnWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ajf-column-container\">\n <ng-container *ngFor=\"let w of instance.content\">\n <ajf-widget [instance]=\"w\">\n </ajf-widget>\n </ng-container>\n</div>\n", styles: [".ajf-column-container{flex:1 1 auto}\n"], components: [{ type: AjfReportWidget, selector: "ajf-widget" }], directives: [{ type: i2$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
357
423
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfColumnWidgetComponent, decorators: [{
358
424
  type: Component,
359
425
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ajf-column-container\">\n <ng-container *ngFor=\"let w of instance.content\">\n <ajf-widget [instance]=\"w\">\n </ajf-widget>\n </ng-container>\n</div>\n", styles: [".ajf-column-container{flex:1 1 auto}\n"] }]
@@ -370,7 +436,7 @@ class AjfLayoutWidgetComponent extends AjfBaseWidgetComponent {
370
436
  }
371
437
  }
372
438
  AjfLayoutWidgetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfLayoutWidgetComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
373
- AjfLayoutWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfLayoutWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ajf-columns\">\n <div\n *ngFor=\"let column of instance.widget.columns; let idx = index\"\n [ngStyle]=\"{'flex-grow': column > -1 ? 1 : null, 'flex-basis' : column > -1 ? (column * 100) + '%' : null}\"\n class=\"ajf-column\"\n >\n <ng-container *ngIf=\"allcolumnsRendered$|async\">\n <ajf-widget *ngIf=\"(instance|ajfGetColumnContent:idx) as cc\" [instance]=\"cc!\">\n </ajf-widget>\n </ng-container>\n </div>\n</div>\n", styles: [".ajf-columns{flex:1 1 auto;display:flex;align-items:inherit;box-sizing:border-box}.ajf-columns>.ajf-column{box-sizing:border-box;display:flex;align-items:inherit;flex-shrink:1}\n"], components: [{ type: AjfReportWidget, selector: "ajf-widget" }], directives: [{ type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2$1.AsyncPipe, "ajfGetColumnContent": i1.AjfGetColumnContentPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
439
+ AjfLayoutWidgetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfLayoutWidgetComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ajf-columns\">\n <div\n *ngFor=\"let column of instance.widget.columns; let idx = index\"\n [ngStyle]=\"{'flex-grow': column > -1 ? 1 : null, 'flex-basis' : column > -1 ? (column * 100) + '%' : null}\"\n class=\"ajf-column\"\n >\n <ng-container *ngIf=\"allcolumnsRendered$|async\">\n <ajf-widget *ngIf=\"(instance|ajfGetColumnContent:idx) as cc\" [instance]=\"cc!\">\n </ajf-widget>\n </ng-container>\n </div>\n</div>\n", styles: [".ajf-columns{flex:1 1 auto;display:flex;align-items:inherit;box-sizing:border-box}.ajf-columns>.ajf-column{box-sizing:border-box;display:flex;align-items:inherit;flex-shrink:1}\n"], components: [{ type: AjfReportWidget, selector: "ajf-widget" }], directives: [{ type: i2$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2$2.AsyncPipe, "ajfGetColumnContent": i1.AjfGetColumnContentPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
374
440
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfLayoutWidgetComponent, decorators: [{
375
441
  type: Component,
376
442
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ajf-columns\">\n <div\n *ngFor=\"let column of instance.widget.columns; let idx = index\"\n [ngStyle]=\"{'flex-grow': column > -1 ? 1 : null, 'flex-basis' : column > -1 ? (column * 100) + '%' : null}\"\n class=\"ajf-column\"\n >\n <ng-container *ngIf=\"allcolumnsRendered$|async\">\n <ajf-widget *ngIf=\"(instance|ajfGetColumnContent:idx) as cc\" [instance]=\"cc!\">\n </ajf-widget>\n </ng-container>\n </div>\n</div>\n", styles: [".ajf-columns{flex:1 1 auto;display:flex;align-items:inherit;box-sizing:border-box}.ajf-columns>.ajf-column{box-sizing:border-box;display:flex;align-items:inherit;flex-shrink:1}\n"] }]
@@ -403,7 +469,7 @@ class AjfReportRenderer extends AjfReportRenderer$1 {
403
469
  }
404
470
  }
405
471
  AjfReportRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfReportRenderer, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
406
- AjfReportRenderer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfReportRenderer, selector: "ajf-report", usesInheritance: true, ngImport: i0, template: "<ng-template [ngIf]=\"instance\">\n <div *ngIf=\"instance.header\" @.disabled [applyStyles]=\"instance.header.styles\" class=\"ajf-report-header\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.header.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.content\" @.disabled [applyStyles]=\"instance.content.styles\" class=\"ajf-report-content\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.footer\" @.disabled [applyStyles]=\"instance.footer.styles\" class=\"ajf-report-footer\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.footer.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n</ng-template>\n", styles: ["ajf-report{display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;position:relative;width:100%}ajf-report h1,ajf-report h2,ajf-report h3,ajf-report h4,ajf-report h5,ajf-report h6,ajf-report p{padding:0;margin:0}ajf-report .ajf-loading{position:absolute;top:0;right:0;left:0;bottom:0;min-height:300px;padding:100px;text-align:center;background-color:rgba(240,240,240,.4);display:flex;justify-content:center}\n"], components: [{ type: AjfReportWidget, selector: "ajf-widget" }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.ApplyStylesDirective, selector: "[applyStyles]", inputs: ["applyStyles"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
472
+ AjfReportRenderer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: AjfReportRenderer, selector: "ajf-report", usesInheritance: true, ngImport: i0, template: "<ng-template [ngIf]=\"instance\">\n <div *ngIf=\"instance.header\" @.disabled [applyStyles]=\"instance.header.styles\" class=\"ajf-report-header\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.header.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.content\" @.disabled [applyStyles]=\"instance.content.styles\" class=\"ajf-report-content\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.footer\" @.disabled [applyStyles]=\"instance.footer.styles\" class=\"ajf-report-footer\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.footer.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n</ng-template>\n", styles: ["ajf-report{display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;position:relative;width:100%}ajf-report h1,ajf-report h2,ajf-report h3,ajf-report h4,ajf-report h5,ajf-report h6,ajf-report p{padding:0;margin:0}ajf-report .ajf-loading{position:absolute;top:0;right:0;left:0;bottom:0;min-height:300px;padding:100px;text-align:center;background-color:rgba(240,240,240,.4);display:flex;justify-content:center}\n"], components: [{ type: AjfReportWidget, selector: "ajf-widget" }], directives: [{ type: i2$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.ApplyStylesDirective, selector: "[applyStyles]", inputs: ["applyStyles"] }, { type: i2$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
407
473
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfReportRenderer, decorators: [{
408
474
  type: Component,
409
475
  args: [{ selector: 'ajf-report', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngIf]=\"instance\">\n <div *ngIf=\"instance.header\" @.disabled [applyStyles]=\"instance.header.styles\" class=\"ajf-report-header\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.header.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.content\" @.disabled [applyStyles]=\"instance.content.styles\" class=\"ajf-report-content\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.footer\" @.disabled [applyStyles]=\"instance.footer.styles\" class=\"ajf-report-footer\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.footer.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n</ng-template>\n", styles: ["ajf-report{display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;position:relative;width:100%}ajf-report h1,ajf-report h2,ajf-report h3,ajf-report h4,ajf-report h5,ajf-report h6,ajf-report p{padding:0;margin:0}ajf-report .ajf-loading{position:absolute;top:0;right:0;left:0;bottom:0;min-height:300px;padding:100px;text-align:center;background-color:rgba(240,240,240,.4);display:flex;justify-content:center}\n"] }]
@@ -435,6 +501,7 @@ class AjfReportsModule {
435
501
  AjfReportsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfReportsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
436
502
  AjfReportsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: AjfReportsModule, declarations: [AjfChartWidgetComponent,
437
503
  AjfColumnWidgetComponent,
504
+ AjfFilterWidgetComponent,
438
505
  AjfFormulaWidgetComponent,
439
506
  AjfImageContainerWidgetComponent,
440
507
  AjfImageWidgetComponent,
@@ -451,6 +518,7 @@ AjfReportsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
451
518
  AjfPageBreakModule,
452
519
  AjfTableModule,
453
520
  AjfTextModule,
521
+ AjfFormsModule,
454
522
  CommonModule,
455
523
  AjfReportsModule$1,
456
524
  AjfTranslocoModule], exports: [AjfReportRenderer, AjfReportWidget] });
@@ -462,6 +530,7 @@ AjfReportsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versio
462
530
  AjfPageBreakModule,
463
531
  AjfTableModule,
464
532
  AjfTextModule,
533
+ AjfFormsModule,
465
534
  CommonModule,
466
535
  AjfReportsModule$1,
467
536
  AjfTranslocoModule,
@@ -477,6 +546,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
477
546
  AjfPageBreakModule,
478
547
  AjfTableModule,
479
548
  AjfTextModule,
549
+ AjfFormsModule,
480
550
  CommonModule,
481
551
  AjfReportsModule$1,
482
552
  AjfTranslocoModule,
@@ -484,6 +554,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
484
554
  declarations: [
485
555
  AjfChartWidgetComponent,
486
556
  AjfColumnWidgetComponent,
557
+ AjfFilterWidgetComponent,
487
558
  AjfFormulaWidgetComponent,
488
559
  AjfImageContainerWidgetComponent,
489
560
  AjfImageWidgetComponent,
@@ -547,5 +618,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
547
618
  * Generated bundle index. Do not edit.
548
619
  */
549
620
 
550
- export { AjfChartWidgetComponent, AjfColumnWidgetComponent, AjfFormulaWidgetComponent, AjfImageContainerWidgetComponent, AjfImageWidgetComponent, AjfLayoutWidgetComponent, AjfMapWidgetComponent, AjfPageBreakWidgetComponent, AjfReportRenderer, AjfReportWidget, AjfReportsModule, AjfTableWidgetComponent, AjfTextWidgetComponent, AjfWidgetService };
621
+ export { AjfChartWidgetComponent, AjfColumnWidgetComponent, AjfFilterWidgetComponent, AjfFormulaWidgetComponent, AjfImageContainerWidgetComponent, AjfImageWidgetComponent, AjfLayoutWidgetComponent, AjfMapWidgetComponent, AjfPageBreakWidgetComponent, AjfReportRenderer, AjfReportWidget, AjfReportsModule, AjfTableWidgetComponent, AjfTextWidgetComponent, AjfWidgetService };
551
622
  //# sourceMappingURL=reports.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"reports.mjs","sources":["../../../../../../src/material/reports/chart-widget.ts","../../../../../../src/material/reports/chart-widget.html","../../../../../../src/material/reports/formula-widget.ts","../../../../../../src/material/reports/formula-widget.html","../../../../../../src/material/reports/image-container-widget.ts","../../../../../../src/material/reports/image-container-widget.html","../../../../../../src/material/reports/image-widget.ts","../../../../../../src/material/reports/image-widget.html","../../../../../../src/material/reports/map-widget.ts","../../../../../../src/material/reports/map-widget.html","../../../../../../src/material/reports/page-break-widget.ts","../../../../../../src/material/reports/page-break-widget.html","../../../../../../src/material/reports/table-widget.ts","../../../../../../src/material/reports/table-widget.html","../../../../../../src/material/reports/text-widget.ts","../../../../../../src/material/reports/text-widget.html","../../../../../../src/material/reports/widget.ts","../../../../../../src/material/reports/widget.html","../../../../../../src/material/reports/column-widget.html","../../../../../../src/material/reports/layout-widget.html","../../../../../../src/material/reports/report.ts","../../../../../../src/material/reports/report.html","../../../../../../src/material/reports/reports-module.ts","../../../../../../src/material/reports/public-api.ts","../../../../../../src/material/reports/index.ts","../../../../../../src/material/reports/reports_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfChartWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'chart-widget.html',\n styleUrls: ['chart-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfChartWidgetComponent extends AjfBaseWidgetComponent<AjfChartWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-widget-export \n [widgetType]=\"instance.widgetType\" \n [data]=\"instance.data\" \n [enable]=\"instance.exportable\">\n <ajf-chart\n [chartType]=\"instance.chartType\"\n [options]=\"instance.widget.options\"\n [data]=\"instance.data\"\n [instance]=\"instance\">\n </ajf-chart>\n</ajf-widget-export>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfFormulaWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'formula-widget.html',\n styleUrls: ['formula-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfFormulaWidgetComponent extends AjfBaseWidgetComponent<AjfFormulaWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-text [htmlText]=\"instance.formula\"></ajf-text>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfImageType} from '@ajf/core/image';\nimport {AjfBaseWidgetComponent, AjfImageContainerWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'image-container-widget.html',\n styleUrls: ['image-container-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfImageContainerWidgetComponent extends AjfBaseWidgetComponent<AjfImageContainerWidgetInstance> {\n readonly imageTypes = AjfImageType;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<div class=\"ajf-image-container ajf-columns\" [ngSwitch]=\"instance.widget.imageType\">\n <ng-template [ngSwitchCase]=\"imageTypes.Image\">\n <div *ngFor=\"let icw of instance.urls; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"icw\"\n [icon]=\"null\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Flag\">\n <div *ngFor=\"let icw of instance.flags; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"null\"\n [flag]=\"icw\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Icon\">\n <div *ngFor=\"let icw of instance.icons; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"icw\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n</div>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfImageWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'image-widget.html',\n styleUrls: ['image-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfImageWidgetComponent extends AjfBaseWidgetComponent<AjfImageWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"instance.url\"\n [icon]=\"instance.icon\"\n [flag]=\"instance.flag\"\n></ajf-image>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfMapWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'map-widget.html',\n styleUrls: ['map-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfMapWidgetComponent extends AjfBaseWidgetComponent<AjfMapWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-map\n [coordinate]=\"instance.coordinate\"\n [tileLayer]=\"instance.widget.tileLayer\"\n [attribution]=\"instance.widget.attribution\"\n [disabled]=\"instance.widget.disabled\"\n></ajf-map>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'page-break-widget.html',\n styleUrls: ['page-break-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfPageBreakWidgetComponent extends AjfBaseWidgetComponent {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-page-break></ajf-page-break>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfTableWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'table-widget.html',\n styleUrls: ['table-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfTableWidgetComponent extends AjfBaseWidgetComponent<AjfTableWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-widget-export \n[widgetType]=\"instance.widgetType\" \n[data]=\"instance.data\"\n[enable]=\"instance.exportable\"\n>\n <ajf-table [data]=\"instance.data\"></ajf-table>\n</ajf-widget-export>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfTextWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'text-widget.html',\n styleUrls: ['text-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfTextWidgetComponent extends AjfBaseWidgetComponent<AjfTextWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-text [htmlText]=\"instance.htmlText | transloco\"></ajf-text>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {\n AjfBaseWidgetComponent,\n AjfColumnWidgetInstance,\n AjfLayoutWidgetInstance,\n AjfReportWidget as CoreComponent,\n AjfWidgetComponentsMap,\n AjfWidgetService as CoreService,\n AjfWidgetType as wt,\n} from '@ajf/core/reports';\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n ElementRef,\n Injectable,\n Renderer2,\n ViewEncapsulation,\n} from '@angular/core';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfImageContainerWidgetComponent} from './image-container-widget';\nimport {AjfImageWidgetComponent} from './image-widget';\nimport {AjfMapWidgetComponent} from './map-widget';\nimport {AjfPageBreakWidgetComponent} from './page-break-widget';\nimport {AjfTableWidgetComponent} from './table-widget';\nimport {AjfTextWidgetComponent} from './text-widget';\n\nconst defaultWidgetsFactory = (): AjfWidgetComponentsMap => {\n const defaultWidgets = {} as AjfWidgetComponentsMap;\n defaultWidgets[wt.Layout] = {component: AjfLayoutWidgetComponent};\n defaultWidgets[wt.PageBreak] = {component: AjfPageBreakWidgetComponent};\n defaultWidgets[wt.Image] = {component: AjfImageWidgetComponent};\n defaultWidgets[wt.Text] = {component: AjfTextWidgetComponent};\n defaultWidgets[wt.Chart] = {component: AjfChartWidgetComponent};\n defaultWidgets[wt.Table] = {component: AjfTableWidgetComponent};\n defaultWidgets[wt.DynamicTable] = {component: AjfTableWidgetComponent};\n defaultWidgets[wt.Map] = {component: AjfMapWidgetComponent};\n defaultWidgets[wt.Column] = {component: AjfColumnWidgetComponent};\n defaultWidgets[wt.Formula] = {component: AjfFormulaWidgetComponent};\n defaultWidgets[wt.ImageContainer] = {component: AjfImageContainerWidgetComponent};\n return defaultWidgets;\n};\n\n@Injectable({providedIn: 'root'})\nexport class AjfWidgetService extends CoreService {\n constructor() {\n super(defaultWidgetsFactory());\n }\n}\n\n@Component({\n selector: 'ajf-widget',\n templateUrl: 'widget.html',\n styleUrls: ['widget.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportWidget extends CoreComponent {\n readonly widgetsMap: AjfWidgetComponentsMap;\n\n constructor(cfr: ComponentFactoryResolver, renderer: Renderer2, widgetService: AjfWidgetService) {\n super(cfr, renderer);\n this.widgetsMap = widgetService.componentsMap;\n }\n}\n\n@Component({\n templateUrl: 'column-widget.html',\n styleUrls: ['column-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfColumnWidgetComponent extends AjfBaseWidgetComponent<AjfColumnWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n\n@Component({\n templateUrl: 'layout-widget.html',\n styleUrls: ['layout-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfLayoutWidgetComponent\n extends AjfBaseWidgetComponent<AjfLayoutWidgetInstance>\n implements AfterContentChecked\n{\n private _allcolumnsRendered$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n readonly allcolumnsRendered$: Observable<boolean> = this\n ._allcolumnsRendered$ as Observable<boolean>;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n ngAfterContentChecked(): void {\n this._allcolumnsRendered$.next(true);\n }\n}\n","<ng-template ajf-widget-host></ng-template>\n","<div class=\"ajf-column-container\">\n <ng-container *ngFor=\"let w of instance.content\">\n <ajf-widget [instance]=\"w\">\n </ajf-widget>\n </ng-container>\n</div>\n","<div class=\"ajf-columns\">\n <div\n *ngFor=\"let column of instance.widget.columns; let idx = index\"\n [ngStyle]=\"{'flex-grow': column > -1 ? 1 : null, 'flex-basis' : column > -1 ? (column * 100) + '%' : null}\"\n class=\"ajf-column\"\n >\n <ng-container *ngIf=\"allcolumnsRendered$|async\">\n <ajf-widget *ngIf=\"(instance|ajfGetColumnContent:idx) as cc\" [instance]=\"cc!\">\n </ajf-widget>\n </ng-container>\n </div>\n</div>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfReportRenderer as AjfCoreReportRenderer} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ajf-report',\n templateUrl: 'report.html',\n styleUrls: ['report.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportRenderer extends AjfCoreReportRenderer {\n constructor(cdr: ChangeDetectorRef) {\n super(cdr);\n }\n}\n","<ng-template [ngIf]=\"instance\">\n <div *ngIf=\"instance.header\" @.disabled [applyStyles]=\"instance.header.styles\" class=\"ajf-report-header\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.header.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.content\" @.disabled [applyStyles]=\"instance.content.styles\" class=\"ajf-report-content\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.footer\" @.disabled [applyStyles]=\"instance.footer.styles\" class=\"ajf-report-footer\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.footer.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n</ng-template>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfChartModule} from '@ajf/core/chart';\nimport {AjfCommonModule} from '@ajf/core/common';\nimport {AjfMapModule} from '@ajf/core/map';\nimport {AjfPageBreakModule} from '@ajf/core/page-break';\nimport {AjfReportsModule as CoreModule} from '@ajf/core/reports';\nimport {AjfTableModule} from '@ajf/core/table';\nimport {AjfTextModule} from '@ajf/core/text';\nimport {AjfTranslocoModule} from '@ajf/core/transloco';\nimport {AjfImageModule} from '@ajf/material/image';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfImageContainerWidgetComponent} from './image-container-widget';\nimport {AjfImageWidgetComponent} from './image-widget';\nimport {AjfMapWidgetComponent} from './map-widget';\nimport {AjfPageBreakWidgetComponent} from './page-break-widget';\nimport {AjfReportRenderer} from './report';\nimport {AjfTableWidgetComponent} from './table-widget';\nimport {AjfTextWidgetComponent} from './text-widget';\nimport {AjfColumnWidgetComponent, AjfLayoutWidgetComponent, AjfReportWidget} from './widget';\n\n@NgModule({\n imports: [\n AjfChartModule,\n AjfCommonModule,\n AjfImageModule,\n AjfMapModule,\n AjfPageBreakModule,\n AjfTableModule,\n AjfTextModule,\n CommonModule,\n CoreModule,\n AjfTranslocoModule,\n ],\n declarations: [\n AjfChartWidgetComponent,\n AjfColumnWidgetComponent,\n AjfFormulaWidgetComponent,\n AjfImageContainerWidgetComponent,\n AjfImageWidgetComponent,\n AjfLayoutWidgetComponent,\n AjfMapWidgetComponent,\n AjfPageBreakWidgetComponent,\n AjfReportRenderer,\n AjfReportWidget,\n AjfTableWidgetComponent,\n AjfTextWidgetComponent,\n ],\n exports: [AjfReportRenderer, AjfReportWidget],\n})\nexport class AjfReportsModule {}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './chart-widget';\nexport * from './formula-widget';\nexport * from './image-container-widget';\nexport * from './image-widget';\nexport * from './map-widget';\nexport * from './page-break-widget';\nexport * from './report';\nexport * from './reports-module';\nexport * from './table-widget';\nexport * from './text-widget';\nexport * from './widget';\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["wt","CoreService","CoreComponent","AjfCoreReportRenderer","CoreModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;MAqCa,gCAAgC,sBAA8C;IACzF,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;yHAHU,uBAAuB;6GAAvB,uBAAuB,2ECrCpC,oVAWA;gGD0Ba,uBAAuB;kBANnC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;MAqCa,kCAAkC,sBAAgD;IAC7F,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;2HAHU,yBAAyB;+GAAzB,yBAAyB,2ECrCtC,yDACA;gGDoCa,yBAAyB;kBANrC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;MAsCa,yCAAyC,sBAAuD;IAG3G,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAHR,eAAU,GAAG,YAAY,CAAC;KAIlC;;kIALU,gCAAgC;sHAAhC,gCAAgC,2ECtC7C,gyCAmCA;gGDGa,gCAAgC;kBAN5C,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEpCvC;;;;;;;;;;;;;;;;;;;;;MAqCa,gCAAgC,sBAA8C;IACzF,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;yHAHU,uBAAuB;6GAAvB,uBAAuB,2ECrCpC,oKAMA;gGD+Ba,uBAAuB;kBANnC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;MAqCa,8BAA8B,sBAA4C;IACrF,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;uHAHU,qBAAqB;2GAArB,qBAAqB,2ECrClC,kNAMA;gGD+Ba,qBAAqB;kBANjC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;MAqCa,oCAAoC,sBAAsB;IACrE,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;6HAHU,2BAA2B;iHAA3B,2BAA2B,2ECrCxC,qCACA;gGDoCa,2BAA2B;kBANvC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;MAqCa,gCAAgC,sBAA8C;IACzF,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;yHAHU,uBAAuB;6GAAvB,uBAAuB,2ECrCpC,yMAOA;gGD8Ba,uBAAuB;kBANnC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;MAqCa,+BAA+B,sBAA6C;IACvF,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;wHAHU,sBAAsB;4GAAtB,sBAAsB,2ECrCnC,sEACA;gGDoCa,sBAAsB;kBANlC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AEnCvC;;;;;;;;;;;;;;;;;;;;;AAqDA,MAAM,qBAAqB,GAAG;IAC5B,MAAM,cAAc,GAAG,EAA4B,CAAC;IACpD,cAAc,CAACA,aAAE,CAAC,MAAM,CAAC,GAAG,EAAC,SAAS,EAAE,wBAAwB,EAAC,CAAC;IAClE,cAAc,CAACA,aAAE,CAAC,SAAS,CAAC,GAAG,EAAC,SAAS,EAAE,2BAA2B,EAAC,CAAC;IACxE,cAAc,CAACA,aAAE,CAAC,KAAK,CAAC,GAAG,EAAC,SAAS,EAAE,uBAAuB,EAAC,CAAC;IAChE,cAAc,CAACA,aAAE,CAAC,IAAI,CAAC,GAAG,EAAC,SAAS,EAAE,sBAAsB,EAAC,CAAC;IAC9D,cAAc,CAACA,aAAE,CAAC,KAAK,CAAC,GAAG,EAAC,SAAS,EAAE,uBAAuB,EAAC,CAAC;IAChE,cAAc,CAACA,aAAE,CAAC,KAAK,CAAC,GAAG,EAAC,SAAS,EAAE,uBAAuB,EAAC,CAAC;IAChE,cAAc,CAACA,aAAE,CAAC,YAAY,CAAC,GAAG,EAAC,SAAS,EAAE,uBAAuB,EAAC,CAAC;IACvE,cAAc,CAACA,aAAE,CAAC,GAAG,CAAC,GAAG,EAAC,SAAS,EAAE,qBAAqB,EAAC,CAAC;IAC5D,cAAc,CAACA,aAAE,CAAC,MAAM,CAAC,GAAG,EAAC,SAAS,EAAE,wBAAwB,EAAC,CAAC;IAClE,cAAc,CAACA,aAAE,CAAC,OAAO,CAAC,GAAG,EAAC,SAAS,EAAE,yBAAyB,EAAC,CAAC;IACpE,cAAc,CAACA,aAAE,CAAC,cAAc,CAAC,GAAG,EAAC,SAAS,EAAE,gCAAgC,EAAC,CAAC;IAClF,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;MAGW,yBAAyBC,kBAAW;IAC/C;QACE,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;KAChC;;kHAHU,gBAAgB;sHAAhB,gBAAgB,cADJ,MAAM;gGAClB,gBAAgB;kBAD5B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC;;MAcnB,wBAAwBC,iBAAa;IAGhD,YAAY,GAA6B,EAAE,QAAmB,EAAE,aAA+B;QAC7F,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC;KAC/C;;iHANU,eAAe,mFAGqD,gBAAgB;qGAHpF,eAAe,yECnF5B,+CACA;gGDkFa,eAAe;kBAP3B,SAAS;+BACE,YAAY,iBAGP,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM;yHAKgC,gBAAgB;MAYpF,iCAAiC,sBAA+C;IAC3F,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;0HAHU,wBAAwB;8GAAxB,wBAAwB,2EElGrC,gLAMA,2EF6Ea,eAAe;gGAef,wBAAwB;kBANpC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;MAc1B,iCACH,sBAA+C;IAOvD,YAAY,GAAsB,EAAE,EAAc;QAChD,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QALT,yBAAoB,GAA6B,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QACpF,wBAAmB,GAAwB,IAAI;aACrD,oBAA2C,CAAC;KAI9C;IACD,qBAAqB;QACnB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;;0HAbU,wBAAwB;8GAAxB,wBAAwB,2EG9GrC,2cAYA,uNHuEa,eAAe;gGA2Bf,wBAAwB;kBANpC,SAAS;sCAGS,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI;;;AI5GvC;;;;;;;;;;;;;;;;;;;;;MAqCa,0BAA0BC,mBAAqB;IAC1D,YAAY,GAAsB;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;KACZ;;mHAHU,iBAAiB;uGAAjB,iBAAiB,yECrC9B,48BAiBA;gGDoBa,iBAAiB;kBAP7B,SAAS;+BACE,YAAY,iBAGP,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM;;;AEnCjD;;;;;;;;;;;;;;;;;;;;;MA0Ea,gBAAgB;;kHAAhB,gBAAgB;mHAAhB,gBAAgB,iBAfzB,uBAAuB;QACvB,wBAAwB;QACxB,yBAAyB;QACzB,gCAAgC;QAChC,uBAAuB;QACvB,wBAAwB;QACxB,qBAAqB;QACrB,2BAA2B;QAC3B,iBAAiB;QACjB,eAAe;QACf,uBAAuB;QACvB,sBAAsB,aAvBtB,cAAc;QACd,eAAe;QACf,cAAc;QACd,YAAY;QACZ,kBAAkB;QAClB,cAAc;QACd,aAAa;QACb,YAAY;QACZC,kBAAU;QACV,kBAAkB,aAgBV,iBAAiB,EAAE,eAAe;mHAEjC,gBAAgB,YA5BlB;YACP,cAAc;YACd,eAAe;YACf,cAAc;YACd,YAAY;YACZ,kBAAkB;YAClB,cAAc;YACd,aAAa;YACb,YAAY;YACZA,kBAAU;YACV,kBAAkB;SACnB;gGAiBU,gBAAgB;kBA7B5B,QAAQ;mBAAC;oBACR,OAAO,EAAE;wBACP,cAAc;wBACd,eAAe;wBACf,cAAc;wBACd,YAAY;wBACZ,kBAAkB;wBAClB,cAAc;wBACd,aAAa;wBACb,YAAY;wBACZA,kBAAU;wBACV,kBAAkB;qBACnB;oBACD,YAAY,EAAE;wBACZ,uBAAuB;wBACvB,wBAAwB;wBACxB,yBAAyB;wBACzB,gCAAgC;wBAChC,uBAAuB;wBACvB,wBAAwB;wBACxB,qBAAqB;wBACrB,2BAA2B;wBAC3B,iBAAiB;wBACjB,eAAe;wBACf,uBAAuB;wBACvB,sBAAsB;qBACvB;oBACD,OAAO,EAAE,CAAC,iBAAiB,EAAE,eAAe,CAAC;iBAC9C;;;ACzED;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;;;;;;;;;;;;;;;;;ACAA;;;;;;"}
1
+ {"version":3,"file":"reports.mjs","sources":["../../../../../../src/material/reports/chart-widget.ts","../../../../../../src/material/reports/chart-widget.html","../../../../../../src/material/reports/filter-widget.ts","../../../../../../src/material/reports/filter-widget.html","../../../../../../src/material/reports/formula-widget.ts","../../../../../../src/material/reports/formula-widget.html","../../../../../../src/material/reports/image-container-widget.ts","../../../../../../src/material/reports/image-container-widget.html","../../../../../../src/material/reports/image-widget.ts","../../../../../../src/material/reports/image-widget.html","../../../../../../src/material/reports/map-widget.ts","../../../../../../src/material/reports/map-widget.html","../../../../../../src/material/reports/page-break-widget.ts","../../../../../../src/material/reports/page-break-widget.html","../../../../../../src/material/reports/table-widget.ts","../../../../../../src/material/reports/table-widget.html","../../../../../../src/material/reports/text-widget.ts","../../../../../../src/material/reports/text-widget.html","../../../../../../src/material/reports/widget.ts","../../../../../../src/material/reports/widget.html","../../../../../../src/material/reports/column-widget.html","../../../../../../src/material/reports/layout-widget.html","../../../../../../src/material/reports/report.ts","../../../../../../src/material/reports/report.html","../../../../../../src/material/reports/reports-module.ts","../../../../../../src/material/reports/public-api.ts","../../../../../../src/material/reports/index.ts","../../../../../../src/material/reports/reports_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfChartWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'chart-widget.html',\n styleUrls: ['chart-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfChartWidgetComponent extends AjfBaseWidgetComponent<AjfChartWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-widget-export \n [widgetType]=\"instance.widgetType\" \n [data]=\"instance.data\" \n [enable]=\"instance.exportable\">\n <ajf-chart\n [chartType]=\"instance.chartType\"\n [options]=\"instance.widget.options\"\n [data]=\"instance.data\"\n [instance]=\"instance\">\n </ajf-chart>\n</ajf-widget-export>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfWidgetInstance, widgetToWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n OnInit,\n Output,\n ViewEncapsulation,\n EventEmitter,\n OnDestroy,\n} from '@angular/core';\nimport {debounceTime, distinctUntilChanged, filter, skip, switchMap, tap} from 'rxjs/operators';\nimport {AjfFormRendererService} from '@ajf/core/forms';\nimport {TranslocoService} from '@ajf/core/transloco';\nimport {FormGroup} from '@angular/forms';\nimport {Subscription} from 'rxjs';\nimport {evaluateExpression} from '@ajf/core/models';\n\n@Component({\n selector: 'ajf-filter-widget',\n templateUrl: 'filter-widget.html',\n styleUrls: ['filter-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AjfFormRendererService],\n inputs: ['instance'],\n})\nexport class AjfFilterWidgetComponent\n extends AjfBaseWidgetComponent<AjfWidgetInstance>\n implements OnInit, OnDestroy\n{\n @Output() readonly filteredInstance: EventEmitter<AjfWidgetInstance> =\n new EventEmitter<AjfWidgetInstance>();\n\n private _instanceSub: Subscription = Subscription.EMPTY;\n\n constructor(\n cdr: ChangeDetectorRef,\n el: ElementRef,\n private _ts: TranslocoService,\n private _formRenderer: AjfFormRendererService,\n ) {\n super(cdr, el);\n }\n\n ngOnDestroy(): void {\n this._instanceSub.unsubscribe();\n }\n\n ngOnInit(): void {\n if (this.instance != null && this.instance.filter != null) {\n this._instanceSub = this._formRenderer.formGroup\n .pipe(\n filter(fg => fg != null),\n switchMap(formGroup => (formGroup as FormGroup).valueChanges),\n distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)),\n debounceTime(500),\n skip(1),\n tap(a => {\n if (this.instance != null && this.instance.filter != null) {\n const newConst: any = {...(this.instance.filter.context || {}), ...a};\n if (this.instance.filter.variables != null) {\n (this.instance.filter.variables || []).forEach(variable => {\n newConst[variable.name] = evaluateExpression(variable.formula.formula, newConst);\n });\n }\n this.instance = widgetToWidgetInstance(\n this.instance.widget,\n newConst,\n this._ts,\n ) as AjfWidgetInstance;\n }\n }),\n )\n .subscribe(() => this.filteredInstance.emit(this.instance));\n }\n }\n}\n","<div *ngIf=\"instance.filter as filter\" class=\"ajf-filter-container\">\n <ajf-form\n [form]=\"filter.form\"\n [hasStartMessage]=\"false\"\n [hasEndMessage]=\"false\"\n [hideTopToolbar]=\"true\"\n [hideBottomToolbar]=\"true\"\n [hideNavigationButtons]=\"true\"\n ></ajf-form>\n</div>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfFormulaWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'formula-widget.html',\n styleUrls: ['formula-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfFormulaWidgetComponent extends AjfBaseWidgetComponent<AjfFormulaWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-text [htmlText]=\"instance.formula\"></ajf-text>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfImageType} from '@ajf/core/image';\nimport {AjfBaseWidgetComponent, AjfImageContainerWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'image-container-widget.html',\n styleUrls: ['image-container-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfImageContainerWidgetComponent extends AjfBaseWidgetComponent<AjfImageContainerWidgetInstance> {\n readonly imageTypes = AjfImageType;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<div class=\"ajf-image-container ajf-columns\" [ngSwitch]=\"instance.widget.imageType\">\n <ng-template [ngSwitchCase]=\"imageTypes.Image\">\n <div *ngFor=\"let icw of instance.urls; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"icw\"\n [icon]=\"null\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Flag\">\n <div *ngFor=\"let icw of instance.flags; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"null\"\n [flag]=\"icw\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n <ng-template [ngSwitchCase]=\"imageTypes.Icon\">\n <div *ngFor=\"let icw of instance.icons; let idx = index\" class=\"ajf-column\">\n <ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"null\"\n [icon]=\"icw\"\n [flag]=\"null\"\n [applyStyles]=\"instance.widget!.styles\"\n ></ajf-image>\n </div>\n </ng-template>\n</div>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfImageWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'image-widget.html',\n styleUrls: ['image-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfImageWidgetComponent extends AjfBaseWidgetComponent<AjfImageWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-image\n [type]=\"instance.widget.imageType\"\n [imageUrl]=\"instance.url\"\n [icon]=\"instance.icon\"\n [flag]=\"instance.flag\"\n></ajf-image>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfMapWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'map-widget.html',\n styleUrls: ['map-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfMapWidgetComponent extends AjfBaseWidgetComponent<AjfMapWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-map\n [coordinate]=\"instance.coordinate\"\n [tileLayer]=\"instance.widget.tileLayer\"\n [attribution]=\"instance.widget.attribution\"\n [disabled]=\"instance.widget.disabled\"\n></ajf-map>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'page-break-widget.html',\n styleUrls: ['page-break-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfPageBreakWidgetComponent extends AjfBaseWidgetComponent {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-page-break></ajf-page-break>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfTableWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'table-widget.html',\n styleUrls: ['table-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfTableWidgetComponent extends AjfBaseWidgetComponent<AjfTableWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-widget-export \n[widgetType]=\"instance.widgetType\" \n[data]=\"instance.data\"\n[enable]=\"instance.exportable\"\n>\n <ajf-table [data]=\"instance.data\"></ajf-table>\n</ajf-widget-export>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfBaseWidgetComponent, AjfTextWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'text-widget.html',\n styleUrls: ['text-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfTextWidgetComponent extends AjfBaseWidgetComponent<AjfTextWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-text [htmlText]=\"instance.htmlText | transloco\"></ajf-text>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {\n AjfBaseWidgetComponent,\n AjfColumnWidgetInstance,\n AjfLayoutWidgetInstance,\n AjfReportWidget as CoreComponent,\n AjfWidgetComponentsMap,\n AjfWidgetService as CoreService,\n AjfWidgetType as wt,\n} from '@ajf/core/reports';\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n ElementRef,\n Injectable,\n Renderer2,\n ViewEncapsulation,\n} from '@angular/core';\nimport {BehaviorSubject, Observable} from 'rxjs';\nimport {AjfFormRendererService} from '@ajf/core/forms';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfImageContainerWidgetComponent} from './image-container-widget';\nimport {AjfImageWidgetComponent} from './image-widget';\nimport {AjfMapWidgetComponent} from './map-widget';\nimport {AjfPageBreakWidgetComponent} from './page-break-widget';\nimport {AjfTableWidgetComponent} from './table-widget';\nimport {AjfTextWidgetComponent} from './text-widget';\n\nconst defaultWidgetsFactory = (): AjfWidgetComponentsMap => {\n const defaultWidgets = {} as AjfWidgetComponentsMap;\n defaultWidgets[wt.Layout] = {component: AjfLayoutWidgetComponent};\n defaultWidgets[wt.PageBreak] = {component: AjfPageBreakWidgetComponent};\n defaultWidgets[wt.Image] = {component: AjfImageWidgetComponent};\n defaultWidgets[wt.Text] = {component: AjfTextWidgetComponent};\n defaultWidgets[wt.Chart] = {component: AjfChartWidgetComponent};\n defaultWidgets[wt.Table] = {component: AjfTableWidgetComponent};\n defaultWidgets[wt.DynamicTable] = {component: AjfTableWidgetComponent};\n defaultWidgets[wt.Map] = {component: AjfMapWidgetComponent};\n defaultWidgets[wt.Column] = {component: AjfColumnWidgetComponent};\n defaultWidgets[wt.Formula] = {component: AjfFormulaWidgetComponent};\n defaultWidgets[wt.ImageContainer] = {component: AjfImageContainerWidgetComponent};\n return defaultWidgets;\n};\n\n@Injectable({providedIn: 'root'})\nexport class AjfWidgetService extends CoreService {\n constructor() {\n super(defaultWidgetsFactory());\n }\n}\n\n@Component({\n selector: 'ajf-widget',\n templateUrl: 'widget.html',\n styleUrls: ['widget.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AjfFormRendererService],\n})\nexport class AjfReportWidget extends CoreComponent {\n readonly widgetsMap: AjfWidgetComponentsMap;\n\n constructor(cfr: ComponentFactoryResolver, renderer: Renderer2, widgetService: AjfWidgetService) {\n super(cfr, renderer);\n this.widgetsMap = widgetService.componentsMap;\n }\n}\n\n@Component({\n templateUrl: 'column-widget.html',\n styleUrls: ['column-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfColumnWidgetComponent extends AjfBaseWidgetComponent<AjfColumnWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n\n@Component({\n templateUrl: 'layout-widget.html',\n styleUrls: ['layout-widget.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfLayoutWidgetComponent\n extends AjfBaseWidgetComponent<AjfLayoutWidgetInstance>\n implements AfterContentChecked\n{\n private _allcolumnsRendered$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n readonly allcolumnsRendered$: Observable<boolean> = this\n ._allcolumnsRendered$ as Observable<boolean>;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n ngAfterContentChecked(): void {\n this._allcolumnsRendered$.next(true);\n }\n}\n","<ajf-filter-widget\n *ngIf=\"instance.filter != null\"\n [instance]=\"instance\"\n (filteredInstance)=\"instance = $event\"\n>\n</ajf-filter-widget>\n<ng-template ajf-widget-host></ng-template>\n","<div class=\"ajf-column-container\">\n <ng-container *ngFor=\"let w of instance.content\">\n <ajf-widget [instance]=\"w\">\n </ajf-widget>\n </ng-container>\n</div>\n","<div class=\"ajf-columns\">\n <div\n *ngFor=\"let column of instance.widget.columns; let idx = index\"\n [ngStyle]=\"{'flex-grow': column > -1 ? 1 : null, 'flex-basis' : column > -1 ? (column * 100) + '%' : null}\"\n class=\"ajf-column\"\n >\n <ng-container *ngIf=\"allcolumnsRendered$|async\">\n <ajf-widget *ngIf=\"(instance|ajfGetColumnContent:idx) as cc\" [instance]=\"cc!\">\n </ajf-widget>\n </ng-container>\n </div>\n</div>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfReportRenderer as AjfCoreReportRenderer} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ajf-report',\n templateUrl: 'report.html',\n styleUrls: ['report.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportRenderer extends AjfCoreReportRenderer {\n constructor(cdr: ChangeDetectorRef) {\n super(cdr);\n }\n}\n","<ng-template [ngIf]=\"instance\">\n <div *ngIf=\"instance.header\" @.disabled [applyStyles]=\"instance.header.styles\" class=\"ajf-report-header\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.header.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.content\" @.disabled [applyStyles]=\"instance.content.styles\" class=\"ajf-report-content\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n <div *ngIf=\"instance.footer\" @.disabled [applyStyles]=\"instance.footer.styles\" class=\"ajf-report-footer\">\n <ng-template ngFor let-instance [ngForOf]=\"instance.footer.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"></ajf-widget>\n </ng-template>\n </div>\n</ng-template>\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfChartModule} from '@ajf/core/chart';\nimport {AjfCommonModule} from '@ajf/core/common';\nimport {AjfMapModule} from '@ajf/core/map';\nimport {AjfPageBreakModule} from '@ajf/core/page-break';\nimport {AjfReportsModule as CoreModule} from '@ajf/core/reports';\nimport {AjfTableModule} from '@ajf/core/table';\nimport {AjfTextModule} from '@ajf/core/text';\nimport {AjfTranslocoModule} from '@ajf/core/transloco';\nimport {AjfImageModule} from '@ajf/material/image';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {AjfFormsModule} from '@ajf/material/forms';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFilterWidgetComponent} from './filter-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfImageContainerWidgetComponent} from './image-container-widget';\nimport {AjfImageWidgetComponent} from './image-widget';\nimport {AjfMapWidgetComponent} from './map-widget';\nimport {AjfPageBreakWidgetComponent} from './page-break-widget';\nimport {AjfReportRenderer} from './report';\nimport {AjfTableWidgetComponent} from './table-widget';\nimport {AjfTextWidgetComponent} from './text-widget';\nimport {AjfColumnWidgetComponent, AjfLayoutWidgetComponent, AjfReportWidget} from './widget';\n\n@NgModule({\n imports: [\n AjfChartModule,\n AjfCommonModule,\n AjfImageModule,\n AjfMapModule,\n AjfPageBreakModule,\n AjfTableModule,\n AjfTextModule,\n AjfFormsModule,\n CommonModule,\n CoreModule,\n AjfTranslocoModule,\n ],\n declarations: [\n AjfChartWidgetComponent,\n AjfColumnWidgetComponent,\n AjfFilterWidgetComponent,\n AjfFormulaWidgetComponent,\n AjfImageContainerWidgetComponent,\n AjfImageWidgetComponent,\n AjfLayoutWidgetComponent,\n AjfMapWidgetComponent,\n AjfPageBreakWidgetComponent,\n AjfReportRenderer,\n AjfReportWidget,\n AjfTableWidgetComponent,\n AjfTextWidgetComponent,\n ],\n exports: [AjfReportRenderer, AjfReportWidget],\n})\nexport class AjfReportsModule {}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './chart-widget';\nexport * from './filter-widget';\nexport * from './formula-widget';\nexport * from './image-container-widget';\nexport * from './image-widget';\nexport * from './map-widget';\nexport * from './page-break-widget';\nexport * from './report';\nexport * from './reports-module';\nexport * from './table-widget';\nexport * from './text-widget';\nexport * from './widget';\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["wt","CoreService","CoreComponent","AjfCoreReportRenderer","CoreModule"],"mappings":"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"}