@ajf/material 13.2.8 → 13.2.9
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.
- package/esm2020/reports/widget.mjs +25 -13
- package/fesm2015/ajf-material-reports.mjs +24 -12
- package/fesm2015/ajf-material-reports.mjs.map +1 -1
- package/fesm2020/ajf-material-reports.mjs +24 -12
- package/fesm2020/ajf-material-reports.mjs.map +1 -1
- package/package.json +2 -2
- package/reports/widget.d.ts +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ajf-material-reports.mjs","sources":["../../../projects/material/reports/src/chart-widget.ts","../../../projects/material/reports/src/chart-widget.html","../../../projects/material/reports/src/filter-widget.ts","../../../projects/material/reports/src/filter-widget.html","../../../projects/material/reports/src/formula-widget.ts","../../../projects/material/reports/src/formula-widget.html","../../../projects/material/reports/src/heat-map-widget.ts","../../../projects/material/reports/src/heat-map-widget.html","../../../projects/material/reports/src/image-container-widget.ts","../../../projects/material/reports/src/image-container-widget.html","../../../projects/material/reports/src/image-widget.ts","../../../projects/material/reports/src/image-widget.html","../../../projects/material/reports/src/map-widget.ts","../../../projects/material/reports/src/map-widget.html","../../../projects/material/reports/src/page-break-widget.ts","../../../projects/material/reports/src/page-break-widget.html","../../../projects/material/reports/src/graph-widget.ts","../../../projects/material/reports/src/graph-widget.html","../../../projects/material/reports/src/table-widget.ts","../../../projects/material/reports/src/table-widget.html","../../../projects/material/reports/src/text-widget.ts","../../../projects/material/reports/src/text-widget.html","../../../projects/material/reports/src/widget.ts","../../../projects/material/reports/src/widget.html","../../../projects/material/reports/src/column-widget.html","../../../projects/material/reports/src/layout-widget.html","../../../projects/material/reports/src/dialog-widget.html","../../../projects/material/reports/src/paginated-list-widget.html","../../../projects/material/reports/src/paginated-table-widget.html","../../../projects/material/reports/src/report.ts","../../../projects/material/reports/src/report.html","../../../projects/material/reports/src/reports-module.ts","../../../projects/material/reports/src/public_api.ts","../../../projects/material/reports/src/ajf-material-reports.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.scss'],\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 *ngIf=\"instance\"\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 {AjfFormRendererService} from '@ajf/core/forms';\nimport {evaluateExpression} from '@ajf/core/models';\nimport {\n AjfBaseWidgetComponent,\n AjfFilterInstance,\n AjfWidgetInstance,\n widgetToWidgetInstance,\n} from '@ajf/core/reports';\nimport {TranslocoService} from '@ajf/core/transloco';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport {distinctUntilChanged, filter, map, switchMap} from 'rxjs/operators';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'ajf-filter-widget',\n templateUrl: 'filter-widget.html',\n styleUrls: ['filter-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AjfFormRendererService],\n})\nexport class AjfFilterWidgetComponent extends AjfBaseWidgetComponent<AjfWidgetInstance> {\n @Output() readonly filteredInstance: Observable<AjfWidgetInstance>;\n\n constructor(\n cdr: ChangeDetectorRef,\n el: ElementRef,\n private _ts: TranslocoService,\n private _formRenderer: AjfFormRendererService,\n ) {\n super(cdr, el);\n\n this.filteredInstance = this._formRenderer.formGroup.pipe(\n filter(fg => this.instance != null && this.instance.filter != null && fg != null),\n switchMap(formGroup => (formGroup as FormGroup).valueChanges),\n distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)),\n map(a => {\n const instance = this.instance as AjfWidgetInstance;\n const filter = instance.filter as AjfFilterInstance;\n const newConst: any = {...(filter.context || {}), ...a};\n if (filter.variables != null) {\n (filter.variables || []).forEach(variable => {\n newConst[variable.name] = evaluateExpression(variable.formula.formula, newConst);\n });\n }\n this.instance = widgetToWidgetInstance(\n instance.widget,\n newConst,\n this._ts,\n filter.variables,\n );\n return this.instance;\n }),\n );\n }\n}\n","<ng-container *ngIf=\"instance\">\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</ng-container>\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.scss'],\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 *ngIf=\"instance\" [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 {AjfBaseWidgetComponent, AjfHeatMapWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'heat-map-widget.html',\n styleUrls: ['heat-map-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfHeatMapWidgetComponent extends AjfBaseWidgetComponent<AjfHeatMapWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-heat-map\n *ngIf=\"instance\"\n [idProp]=\"instance.idProp\"\n [features]=\"instance.features\"\n [values]=\"instance.values\"\n [startColor]=\"instance.startColor\"\n [endColor]=\"instance.endColor\"\n [highlightColor]=\"instance.highlightColor\"\n [showVisualMap]=\"instance.showVisualMap\"\n [action]=\"instance.action\"\n></ajf-heat-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 {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.scss'],\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 *ngIf=\"instance\" 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.scss'],\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 *ngIf=\"instance\"\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.scss'],\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 *ngIf=\"instance\"\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.scss'],\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, AjfGraphWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ajf-graph-widget',\n templateUrl: 'graph-widget.html',\n styleUrls: ['graph-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfGraphWidgetComponent extends AjfBaseWidgetComponent<AjfGraphWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<div *ngIf=\"instance\" class=\"ajf-graph-container\">\n <ajf-graph [nodes]=\"instance.nodes\"></ajf-graph>\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, 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.scss'],\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 *ngIf=\"instance\"\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.scss'],\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 *ngIf=\"instance\" [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 AjfDialogWidgetInstance,\n AjfLayoutWidgetInstance,\n AjfPaginatedListWidgetInstance,\n AjfPaginatedTableWidgetInstance,\n AjfReportWidget as CoreComponent,\n AjfWidgetComponentsMap,\n AjfWidgetInstance,\n AjfWidgetService as CoreService,\n AjfWidgetType as wt,\n} from '@ajf/core/reports';\nimport {AjfTableCell} from '@ajf/core/table';\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Injectable,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {MatDialog} from '@angular/material/dialog';\nimport {Sort} from '@angular/material/sort';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfGraphWidgetComponent} from './graph-widget';\nimport {AjfHeatMapWidgetComponent} from './heat-map-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: 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 defaultWidgets[wt.Graph] = {component: AjfGraphWidgetComponent};\n defaultWidgets[wt.PaginatedList] = {component: AjfPaginatedListWidgetComponent};\n defaultWidgets[wt.PaginatedTable] = {component: AjfPaginatedTableWidgetComponent};\n\n defaultWidgets[wt.Dialog] = {component: AjfDialogWidgetComponent};\n defaultWidgets[wt.HeatMap] = {component: AjfHeatMapWidgetComponent};\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.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportWidget extends CoreComponent {\n readonly widgetsMap: AjfWidgetComponentsMap;\n\n constructor(renderer: Renderer2, widgetService: AjfWidgetService) {\n super(renderer);\n this.widgetsMap = widgetService.componentsMap;\n }\n}\n\n@Component({\n templateUrl: 'column-widget.html',\n styleUrls: ['column-widget.scss'],\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.scss'],\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\n@Component({\n templateUrl: 'dialog-widget.html',\n styleUrls: ['dialog-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfDialogWidgetComponent extends AjfBaseWidgetComponent<AjfDialogWidgetInstance> {\n @ViewChild('dialogContent', {read: TemplateRef}) dialogContent!: TemplateRef<HTMLElement>;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef, private _dialog: MatDialog) {\n super(cdr, el);\n }\n\n openDialog(): void {\n this._dialog.open(this.dialogContent);\n }\n}\n\n@Component({\n templateUrl: 'paginated-list-widget.html',\n styleUrls: ['paginated-list-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfPaginatedListWidgetComponent\n extends AjfBaseWidgetComponent<AjfPaginatedListWidgetInstance>\n implements OnChanges, OnInit\n{\n get currentPage(): number {\n return this._currentPage;\n }\n private _currentPage = 0;\n\n get pages(): number {\n return this._pages;\n }\n private _pages = 0;\n\n get currentContent(): AjfWidgetInstance[] {\n return this._currentContent;\n }\n private _currentContent: AjfWidgetInstance[] = [];\n\n get canGoForward(): boolean {\n return this._canGoForward;\n }\n private _canGoForward = false;\n\n get canGoBackward(): boolean {\n return this._canGoBackward;\n }\n private _canGoBackward = false;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['instance']) {\n this._updateCurrentContent();\n }\n }\n\n ngOnInit(): void {\n this._updateCurrentContent();\n }\n\n goToPage(direction: 'next' | 'previous'): void {\n const diff = direction === 'next' ? 1 : -1;\n const newPage = this._currentPage + diff;\n if (newPage <= 0 || newPage > this._pages) {\n return;\n }\n this._currentPage = newPage;\n this._canGoForward = newPage < this._pages;\n this._canGoBackward = newPage > 1;\n this._fillCurrentContent();\n }\n\n private _updateCurrentContent(): void {\n this._canGoBackward = false;\n if (this.instance == null || this.instance.content.length === 0) {\n this._currentPage = 0;\n this._pages = 0;\n } else {\n this._currentPage = 1;\n const {content} = this.instance;\n const {pageSize} = this.instance.widget;\n this._pages = Math.ceil(content.length / pageSize);\n this._canGoForward = this._pages > 1;\n }\n this._fillCurrentContent();\n }\n\n private _fillCurrentContent(): void {\n if (this.instance == null || this.instance.content.length === 0) {\n this._currentContent = [];\n return;\n }\n const {content} = this.instance;\n const {pageSize} = this.instance.widget;\n const start = (this._currentPage - 1) * pageSize;\n this._currentContent = content.slice(start, start + pageSize);\n this._cdr.markForCheck();\n }\n}\n\n@Component({\n templateUrl: 'paginated-table-widget.html',\n styleUrls: ['paginated-table-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfPaginatedTableWidgetComponent\n extends AjfBaseWidgetComponent<AjfPaginatedTableWidgetInstance>\n implements OnChanges, OnInit\n{\n readonly paginatorConfig = {\n pageSize: 10,\n pageSizeOptions: [5, 10, 15, 20, 25, 30, 50, 100, 500],\n };\n\n get currentPage(): number {\n return this._currentPage;\n }\n private _currentPage = 0;\n\n get pages(): number {\n return this._pages;\n }\n private _pages = 0;\n\n get orderBy(): number {\n return this._orderBy;\n }\n private _orderBy = 0;\n\n get currentContent(): AjfTableCell[][] {\n return this._currentContent;\n }\n private _currentContent: AjfTableCell[][] = [];\n\n private _allDataContent: AjfTableCell[][] = [];\n\n get headerContent(): AjfTableCell[] {\n return this._headerContent;\n }\n private _headerContent: AjfTableCell[] = [];\n\n get canGoForward(): boolean {\n return this._canGoForward;\n }\n private _canGoForward = false;\n\n get canGoBackward(): boolean {\n return this._canGoBackward;\n }\n private _canGoBackward = false;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n\n /**\n * Set initial data for the table on instance changes\n * @param changes\n */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['instance']) {\n if (\n this.instance != null &&\n this.instance.widget.pageSize &&\n this.instance.widget.pageSize > 0\n ) {\n this.paginatorConfig.pageSize = this.instance.widget.pageSize;\n }\n this._updateCurrentContent();\n }\n }\n\n ngOnInit(): void {\n if (\n this.instance != null &&\n this.instance.widget.pageSize &&\n this.instance.widget.pageSize > 0\n ) {\n this.paginatorConfig.pageSize = this.instance.widget.pageSize;\n }\n this._updateCurrentContent();\n }\n\n /**\n * Got to next or previous page\n * @param direction\n * @returns\n */\n goToPage(direction: 'next' | 'previous'): void {\n const diff = direction === 'next' ? 1 : -1;\n const newPage = this._currentPage + diff;\n if (newPage <= 0 || newPage > this._pages) {\n return;\n }\n this._currentPage = newPage;\n this._canGoForward = newPage < this._pages;\n this._canGoBackward = newPage > 1;\n this._fillCurrentContent();\n }\n\n onPageSizeChange(_pageSize: number) {\n this.paginatorConfig.pageSize = _pageSize;\n this._updateCurrentContent();\n }\n\n /**\n * Sort all data for the table, not only current page data\n * @param sort\n * @returns\n */\n sortPaginatedData(sort: Sort): void {\n if (!sort.active || sort.direction === '') {\n return;\n }\n if (this._allDataContent.length > 1) {\n this._currentPage = 1;\n this._canGoForward = this._currentPage < this._pages;\n this._canGoBackward = false;\n\n this._allDataContent = this._allDataContent.sort((a, b) => {\n const isAsc = sort.direction === 'asc';\n return this._compare(a[0], b[0], isAsc);\n });\n this._fillCurrentContent();\n }\n }\n\n private _compare(a: AjfTableCell, b: AjfTableCell, isAsc: boolean) {\n return (a.value < b.value ? -1 : 1) * (isAsc ? 1 : -1);\n }\n\n /**\n * Set current header and data for the table, starting from page 1\n */\n private _updateCurrentContent(): void {\n this._canGoBackward = false;\n if (this.instance == null || this.instance.data.length === 0) {\n this._currentPage = 0;\n this._pages = 0;\n this._headerContent = [];\n this._currentContent = [];\n this._allDataContent = [];\n } else {\n this._headerContent = this.instance.data[0];\n this._allDataContent = this.instance.data.slice(1);\n this._currentPage = 1;\n\n this._pages = Math.ceil(this._allDataContent.length / this.paginatorConfig.pageSize);\n this._canGoForward = this._pages > 1;\n }\n this._fillCurrentContent();\n }\n\n /**\n * Update current data for the table, using page and sorted data\n */\n private _fillCurrentContent(): void {\n if (this._allDataContent.length === 0 && this._headerContent.length > 0) {\n this._currentContent = [this._headerContent];\n } else {\n const start = (this._currentPage - 1) * this.paginatorConfig.pageSize;\n this._currentContent = [\n this._headerContent,\n ...this._allDataContent.slice(start, start + this.paginatorConfig.pageSize),\n ];\n }\n this._cdr.markForCheck();\n }\n}\n","<ajf-filter-widget\n *ngIf=\"instance && instance.filter\"\n [instance]=\"instance\"\n (filteredInstance)=\"instance = $event\"\n>\n</ajf-filter-widget>\n<ng-template ajf-widget-host></ng-template>\n","<div *ngIf=\"instance\" 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 *ngIf=\"instance\" 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","<a *ngIf=\"instance\" class=\"ajf-dialog-toggle\" (click)=\"openDialog()\">\n <ajf-widget [instance]=\"instance.toggle\"></ajf-widget>\n</a>\n<ng-template #dialogContent>\n <ng-container *ngIf=\"instance\">\n <ng-container *ngFor=\"let item of instance.content\">\n <ajf-widget [instance]=\"item\"></ajf-widget>\n </ng-container>\n </ng-container>\n</ng-template>\n","<div class=\"ajf-paginated-list\" *ngIf=\"instance && pages > 0\">\n <div class=\"ajf-paginated-list-title-container\">\n <div class=\"ajf-paginated-list-title\">{{ instance.widget.title }}</div>\n <div class=\"ajf-spacer\"></div>\n <div class=\"ajf-paginated-list-paginator\">\n <a (click)=\"goToPage('previous')\" class=\"ajf-paginated-list-btn ajf-paginated-list-back-btn\"\n [class.ajf-paginated-list-btn-disabled]=\"canGoBackward === false\"></a>\n <div class=\"ajf-paginated-list-paginator-page\">{{ currentPage }}</div>\n <div class=\"ajf-paginated-list-paginator-separator\"></div>\n <div class=\"ajf-paginated-list-paginator-pages\">{{ pages }}</div>\n <a (click)=\"goToPage('next')\" class=\"ajf-paginated-list-btn ajf-paginated-list-forward-btn\"\n [class.ajf-paginated-list-btn-disabled]=\"canGoForward === false\"></a>\n </div>\n </div>\n <div class=\"ajf-paginated-list-item\" *ngFor=\"let item of currentContent\">\n <ajf-widget [instance]=\"item\"></ajf-widget>\n </div>\n</div>\n","<div class=\"ajf-paginated-table\" *ngIf=\"instance\">\n <div class=\"ajf-paginated-table-title-container\" *ngIf=\"pages > 0\">\n <div class=\"ajf-paginated-table-page-selector\">\n <mat-label class=\"ajf-paginated-table-page-selector-label\"\n >{{'Items per page:'|transloco}}</mat-label\n >\n <mat-select\n [value]=\"paginatorConfig.pageSize\"\n (selectionChange)=\"onPageSizeChange($event.value)\"\n >\n <mat-option\n [value]=\"pageSizeOpt\"\n *ngFor=\"let pageSizeOpt of paginatorConfig.pageSizeOptions\"\n >\n {{ pageSizeOpt }}\n </mat-option>\n </mat-select>\n </div>\n <div class=\"ajf-spacer\"></div>\n <div class=\"ajf-paginated-table-paginator\">\n <a\n (click)=\"goToPage('previous')\"\n class=\"ajf-paginated-table-btn ajf-paginated-table-back-btn\"\n [class.ajf-paginated-table-btn-disabled]=\"canGoBackward === false\"\n ></a>\n <div class=\"ajf-paginated-table-paginator-page\">{{ currentPage }}</div>\n <div class=\"ajf-paginated-table-paginator-separator\"></div>\n <div class=\"ajf-paginated-table-paginator-pages\">{{ pages }}</div>\n <a\n (click)=\"goToPage('next')\"\n class=\"ajf-paginated-table-btn ajf-paginated-table-forward-btn\"\n [class.ajf-paginated-table-btn-disabled]=\"canGoForward === false\"\n ></a>\n </div>\n </div>\n <div class=\"ajf-paginated-table-item\">\n <ajf-table [data]=\"currentContent\" (sortSelected)=\"sortPaginatedData($event)\"></ajf-table>\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 CoreReportRenderer} 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.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportRenderer extends CoreReportRenderer {\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 {AjfGraphModule} from '@ajf/core/graph';\nimport {AjfHeatMapModule} from '@ajf/core/heat-map';\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 {AjfFormsModule} from '@ajf/material/forms';\nimport {AjfImageModule} from '@ajf/material/image';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatDialogModule} from '@angular/material/dialog';\nimport {MatSelectModule} from '@angular/material/select';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFilterWidgetComponent} from './filter-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfHeatMapWidgetComponent} from './heat-map-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 {\n AjfColumnWidgetComponent,\n AjfDialogWidgetComponent,\n AjfLayoutWidgetComponent,\n AjfPaginatedListWidgetComponent,\n AjfPaginatedTableWidgetComponent,\n AjfReportWidget,\n} from './widget';\nimport {AjfGraphWidgetComponent} from './graph-widget';\n\n@NgModule({\n imports: [\n AjfChartModule,\n AjfCommonModule,\n AjfImageModule,\n AjfFormsModule,\n AjfGraphModule,\n AjfHeatMapModule,\n AjfMapModule,\n AjfPageBreakModule,\n AjfTableModule,\n AjfTextModule,\n AjfTranslocoModule,\n CommonModule,\n CoreModule,\n MatDialogModule,\n MatSelectModule,\n ],\n declarations: [\n AjfChartWidgetComponent,\n AjfColumnWidgetComponent,\n AjfDialogWidgetComponent,\n AjfFilterWidgetComponent,\n AjfFormulaWidgetComponent,\n AjfHeatMapWidgetComponent,\n AjfImageContainerWidgetComponent,\n AjfImageWidgetComponent,\n AjfGraphWidgetComponent,\n AjfLayoutWidgetComponent,\n AjfMapWidgetComponent,\n AjfPageBreakWidgetComponent,\n AjfPaginatedListWidgetComponent,\n AjfPaginatedTableWidgetComponent,\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 './heat-map-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 * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i3","i1","i2","i4","wt","CoreService","CoreComponent","i1.AjfFilterWidgetComponent","i7","i9","CoreReportRenderer","i1.AjfReportWidget","CoreModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ajf-material-reports.mjs","sources":["../../../projects/material/reports/src/chart-widget.ts","../../../projects/material/reports/src/chart-widget.html","../../../projects/material/reports/src/filter-widget.ts","../../../projects/material/reports/src/filter-widget.html","../../../projects/material/reports/src/formula-widget.ts","../../../projects/material/reports/src/formula-widget.html","../../../projects/material/reports/src/heat-map-widget.ts","../../../projects/material/reports/src/heat-map-widget.html","../../../projects/material/reports/src/image-container-widget.ts","../../../projects/material/reports/src/image-container-widget.html","../../../projects/material/reports/src/image-widget.ts","../../../projects/material/reports/src/image-widget.html","../../../projects/material/reports/src/map-widget.ts","../../../projects/material/reports/src/map-widget.html","../../../projects/material/reports/src/page-break-widget.ts","../../../projects/material/reports/src/page-break-widget.html","../../../projects/material/reports/src/graph-widget.ts","../../../projects/material/reports/src/graph-widget.html","../../../projects/material/reports/src/table-widget.ts","../../../projects/material/reports/src/table-widget.html","../../../projects/material/reports/src/text-widget.ts","../../../projects/material/reports/src/text-widget.html","../../../projects/material/reports/src/widget.ts","../../../projects/material/reports/src/widget.html","../../../projects/material/reports/src/column-widget.html","../../../projects/material/reports/src/layout-widget.html","../../../projects/material/reports/src/dialog-widget.html","../../../projects/material/reports/src/paginated-list-widget.html","../../../projects/material/reports/src/paginated-table-widget.html","../../../projects/material/reports/src/report.ts","../../../projects/material/reports/src/report.html","../../../projects/material/reports/src/reports-module.ts","../../../projects/material/reports/src/public_api.ts","../../../projects/material/reports/src/ajf-material-reports.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.scss'],\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 *ngIf=\"instance\"\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 {AjfFormRendererService} from '@ajf/core/forms';\nimport {evaluateExpression} from '@ajf/core/models';\nimport {\n AjfBaseWidgetComponent,\n AjfFilterInstance,\n AjfWidgetInstance,\n widgetToWidgetInstance,\n} from '@ajf/core/reports';\nimport {TranslocoService} from '@ajf/core/transloco';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport {distinctUntilChanged, filter, map, switchMap} from 'rxjs/operators';\nimport {Observable} from 'rxjs';\n\n@Component({\n selector: 'ajf-filter-widget',\n templateUrl: 'filter-widget.html',\n styleUrls: ['filter-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AjfFormRendererService],\n})\nexport class AjfFilterWidgetComponent extends AjfBaseWidgetComponent<AjfWidgetInstance> {\n @Output() readonly filteredInstance: Observable<AjfWidgetInstance>;\n\n constructor(\n cdr: ChangeDetectorRef,\n el: ElementRef,\n private _ts: TranslocoService,\n private _formRenderer: AjfFormRendererService,\n ) {\n super(cdr, el);\n\n this.filteredInstance = this._formRenderer.formGroup.pipe(\n filter(fg => this.instance != null && this.instance.filter != null && fg != null),\n switchMap(formGroup => (formGroup as FormGroup).valueChanges),\n distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)),\n map(a => {\n const instance = this.instance as AjfWidgetInstance;\n const filter = instance.filter as AjfFilterInstance;\n const newConst: any = {...(filter.context || {}), ...a};\n if (filter.variables != null) {\n (filter.variables || []).forEach(variable => {\n newConst[variable.name] = evaluateExpression(variable.formula.formula, newConst);\n });\n }\n this.instance = widgetToWidgetInstance(\n instance.widget,\n newConst,\n this._ts,\n filter.variables,\n );\n return this.instance;\n }),\n );\n }\n}\n","<ng-container *ngIf=\"instance\">\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</ng-container>\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.scss'],\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 *ngIf=\"instance\" [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 {AjfBaseWidgetComponent, AjfHeatMapWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n templateUrl: 'heat-map-widget.html',\n styleUrls: ['heat-map-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfHeatMapWidgetComponent extends AjfBaseWidgetComponent<AjfHeatMapWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<ajf-heat-map\n *ngIf=\"instance\"\n [idProp]=\"instance.idProp\"\n [features]=\"instance.features\"\n [values]=\"instance.values\"\n [startColor]=\"instance.startColor\"\n [endColor]=\"instance.endColor\"\n [highlightColor]=\"instance.highlightColor\"\n [showVisualMap]=\"instance.showVisualMap\"\n [action]=\"instance.action\"\n></ajf-heat-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 {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.scss'],\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 *ngIf=\"instance\" 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.scss'],\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 *ngIf=\"instance\"\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.scss'],\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 *ngIf=\"instance\"\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.scss'],\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, AjfGraphWidgetInstance} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ajf-graph-widget',\n templateUrl: 'graph-widget.html',\n styleUrls: ['graph-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfGraphWidgetComponent extends AjfBaseWidgetComponent<AjfGraphWidgetInstance> {\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n}\n","<div *ngIf=\"instance\" class=\"ajf-graph-container\">\n <ajf-graph [nodes]=\"instance.nodes\"></ajf-graph>\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, 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.scss'],\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 *ngIf=\"instance\"\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.scss'],\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 *ngIf=\"instance\" [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 AjfDialogWidgetInstance,\n AjfLayoutWidgetInstance,\n AjfPaginatedListWidgetInstance,\n AjfPaginatedTableWidgetInstance,\n AjfReportWidget as CoreComponent,\n AjfWidgetComponentsMap,\n AjfWidgetInstance,\n AjfWidgetService as CoreService,\n AjfWidgetType as wt,\n} from '@ajf/core/reports';\nimport {AjfTableCell} from '@ajf/core/table';\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Injectable,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {MatDialog} from '@angular/material/dialog';\nimport {Sort} from '@angular/material/sort';\nimport {BehaviorSubject, Observable} from 'rxjs';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfGraphWidgetComponent} from './graph-widget';\nimport {AjfHeatMapWidgetComponent} from './heat-map-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: 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 defaultWidgets[wt.Graph] = {component: AjfGraphWidgetComponent};\n defaultWidgets[wt.PaginatedList] = {component: AjfPaginatedListWidgetComponent};\n defaultWidgets[wt.PaginatedTable] = {component: AjfPaginatedTableWidgetComponent};\n\n defaultWidgets[wt.Dialog] = {component: AjfDialogWidgetComponent};\n defaultWidgets[wt.HeatMap] = {component: AjfHeatMapWidgetComponent};\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.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportWidget extends CoreComponent {\n readonly widgetsMap: AjfWidgetComponentsMap;\n\n constructor(renderer: Renderer2, widgetService: AjfWidgetService) {\n super(renderer);\n this.widgetsMap = widgetService.componentsMap;\n }\n}\n\n@Component({\n templateUrl: 'column-widget.html',\n styleUrls: ['column-widget.scss'],\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.scss'],\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\n@Component({\n templateUrl: 'dialog-widget.html',\n styleUrls: ['dialog-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfDialogWidgetComponent extends AjfBaseWidgetComponent<AjfDialogWidgetInstance> {\n @ViewChild('dialogContent', {read: TemplateRef}) dialogContent!: TemplateRef<HTMLElement>;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef, private _dialog: MatDialog) {\n super(cdr, el);\n }\n\n openDialog(): void {\n this._dialog.open(this.dialogContent);\n }\n}\n\n@Component({\n templateUrl: 'paginated-list-widget.html',\n styleUrls: ['paginated-list-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfPaginatedListWidgetComponent\n extends AjfBaseWidgetComponent<AjfPaginatedListWidgetInstance>\n implements OnChanges, OnInit\n{\n get currentPage(): number {\n return this._currentPage;\n }\n private _currentPage = 0;\n\n get pages(): number {\n return this._pages;\n }\n private _pages = 0;\n\n get currentContent(): AjfWidgetInstance[] {\n return this._currentContent;\n }\n private _currentContent: AjfWidgetInstance[] = [];\n\n get canGoForward(): boolean {\n return this._canGoForward;\n }\n private _canGoForward = false;\n\n get canGoBackward(): boolean {\n return this._canGoBackward;\n }\n private _canGoBackward = false;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['instance']) {\n this._updateCurrentContent();\n }\n }\n\n ngOnInit(): void {\n this._updateCurrentContent();\n }\n\n goToPage(direction: 'next' | 'previous'): void {\n const diff = direction === 'next' ? 1 : -1;\n const newPage = this._currentPage + diff;\n if (newPage <= 0 || newPage > this._pages) {\n return;\n }\n this._currentPage = newPage;\n this._canGoForward = newPage < this._pages;\n this._canGoBackward = newPage > 1;\n this._fillCurrentContent();\n }\n\n private _updateCurrentContent(): void {\n this._canGoBackward = false;\n if (this.instance == null || this.instance.content.length === 0) {\n this._currentPage = 0;\n this._pages = 0;\n } else {\n this._currentPage = 1;\n const {content} = this.instance;\n const {pageSize} = this.instance.widget;\n this._pages = Math.ceil(content.length / pageSize);\n this._canGoForward = this._pages > 1;\n }\n this._fillCurrentContent();\n }\n\n private _fillCurrentContent(): void {\n if (this.instance == null || this.instance.content.length === 0) {\n this._currentContent = [];\n return;\n }\n const {content} = this.instance;\n const {pageSize} = this.instance.widget;\n const start = (this._currentPage - 1) * pageSize;\n this._currentContent = content.slice(start, start + pageSize);\n this._cdr.markForCheck();\n }\n}\n\n@Component({\n templateUrl: 'paginated-table-widget.html',\n styleUrls: ['paginated-table-widget.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AjfPaginatedTableWidgetComponent\n extends AjfBaseWidgetComponent<AjfPaginatedTableWidgetInstance>\n implements OnChanges, OnInit\n{\n readonly paginatorConfig = {\n pageSize: 10,\n pageSizeOptions: [5, 10, 15, 20, 25, 30, 50, 100, 500],\n };\n\n get currentPage(): number {\n return this._currentPage;\n }\n private _currentPage = 0;\n\n get pages(): number {\n return this._pages;\n }\n private _pages = 0;\n\n get orderBy(): number {\n return this._orderBy;\n }\n private _orderBy = 0;\n\n get currentContent(): AjfTableCell[][] {\n return this._currentContent;\n }\n private _currentContent: AjfTableCell[][] = [];\n\n /**\n * full data table\n */\n private _allDataContent: AjfTableCell[][] = [];\n\n /**\n * full sorted data table\n */\n private _sortedAllDataContent: AjfTableCell[][] = [];\n\n get headerContent(): AjfTableCell[] {\n return this._headerContent;\n }\n private _headerContent: AjfTableCell[] = [];\n\n get canGoForward(): boolean {\n return this._canGoForward;\n }\n private _canGoForward = false;\n\n get canGoBackward(): boolean {\n return this._canGoBackward;\n }\n private _canGoBackward = false;\n\n constructor(cdr: ChangeDetectorRef, el: ElementRef) {\n super(cdr, el);\n }\n\n /**\n * Set initial data for the table on instance changes\n * @param changes\n */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['instance']) {\n if (\n this.instance != null &&\n this.instance.widget.pageSize &&\n this.instance.widget.pageSize > 0\n ) {\n this.paginatorConfig.pageSize = this.instance.widget.pageSize;\n }\n this._updateCurrentContent();\n }\n }\n\n ngOnInit(): void {\n if (\n this.instance != null &&\n this.instance.widget.pageSize &&\n this.instance.widget.pageSize > 0\n ) {\n this.paginatorConfig.pageSize = this.instance.widget.pageSize;\n }\n this._updateCurrentContent();\n }\n\n /**\n * Got to next or previous page\n * @param direction\n * @returns\n */\n goToPage(direction: 'next' | 'previous'): void {\n const diff = direction === 'next' ? 1 : -1;\n const newPage = this._currentPage + diff;\n if (newPage <= 0 || newPage > this._pages) {\n return;\n }\n this._currentPage = newPage;\n this._canGoForward = newPage < this._pages;\n this._canGoBackward = newPage > 1;\n this._fillCurrentContent();\n }\n\n onPageSizeChange(_pageSize: number) {\n this.paginatorConfig.pageSize = _pageSize;\n this._updateCurrentContent();\n }\n\n /**\n * Sort all data for the table, not only current page data\n * @param sort\n * @returns\n */\n sortPaginatedData(sort: Sort): void {\n if (this._allDataContent.length > 1) {\n if (!sort.active || sort.direction === '') {\n this._sortedAllDataContent = this._allDataContent.slice();\n } else {\n this._currentPage = 1;\n this._canGoForward = this._currentPage < this._pages;\n this._canGoBackward = false;\n\n const columnIdx = parseInt(sort.active.slice(-1)) || 0;\n this._sortedAllDataContent = this._allDataContent.slice().sort((a, b) => {\n const isAsc = sort.direction === 'asc';\n return this._compare(a[columnIdx], b[columnIdx], isAsc);\n });\n }\n this._fillCurrentContent();\n }\n }\n\n private _compare(a: AjfTableCell, b: AjfTableCell, isAsc: boolean) {\n return (a.value < b.value ? -1 : 1) * (isAsc ? 1 : -1);\n }\n\n /**\n * Set current header and data for the table, starting from page 1\n */\n private _updateCurrentContent(): void {\n this._canGoBackward = false;\n if (this.instance == null || this.instance.data.length === 0) {\n this._currentPage = 0;\n this._pages = 0;\n this._headerContent = [];\n this._currentContent = [];\n this._allDataContent = [];\n this._sortedAllDataContent = [];\n } else {\n this._headerContent = this.instance.data[0];\n this._allDataContent = this.instance.data.slice(1);\n this._sortedAllDataContent = [...this._allDataContent];\n this._currentPage = 1;\n\n this._pages = Math.ceil(this._allDataContent.length / this.paginatorConfig.pageSize);\n this._canGoForward = this._pages > 1;\n }\n this._fillCurrentContent();\n }\n\n /**\n * Update current data for the table, using page and sorted data\n */\n private _fillCurrentContent(): void {\n if (this._sortedAllDataContent.length === 0 && this._headerContent.length > 0) {\n this._currentContent = [this._headerContent];\n } else {\n const start = (this._currentPage - 1) * this.paginatorConfig.pageSize;\n this._currentContent = [\n this._headerContent,\n ...this._sortedAllDataContent.slice(start, start + this.paginatorConfig.pageSize),\n ];\n }\n this._cdr.markForCheck();\n }\n}\n","<ajf-filter-widget\n *ngIf=\"instance && instance.filter\"\n [instance]=\"instance\"\n (filteredInstance)=\"instance = $event\"\n>\n</ajf-filter-widget>\n<ng-template ajf-widget-host></ng-template>\n","<div *ngIf=\"instance\" 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 *ngIf=\"instance\" 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","<a *ngIf=\"instance\" class=\"ajf-dialog-toggle\" (click)=\"openDialog()\">\n <ajf-widget [instance]=\"instance.toggle\"></ajf-widget>\n</a>\n<ng-template #dialogContent>\n <ng-container *ngIf=\"instance\">\n <ng-container *ngFor=\"let item of instance.content\">\n <ajf-widget [instance]=\"item\"></ajf-widget>\n </ng-container>\n </ng-container>\n</ng-template>\n","<div class=\"ajf-paginated-list\" *ngIf=\"instance && pages > 0\">\n <div class=\"ajf-paginated-list-title-container\">\n <div class=\"ajf-paginated-list-title\">{{ instance.widget.title }}</div>\n <div class=\"ajf-spacer\"></div>\n <div class=\"ajf-paginated-list-paginator\">\n <a (click)=\"goToPage('previous')\" class=\"ajf-paginated-list-btn ajf-paginated-list-back-btn\"\n [class.ajf-paginated-list-btn-disabled]=\"canGoBackward === false\"></a>\n <div class=\"ajf-paginated-list-paginator-page\">{{ currentPage }}</div>\n <div class=\"ajf-paginated-list-paginator-separator\"></div>\n <div class=\"ajf-paginated-list-paginator-pages\">{{ pages }}</div>\n <a (click)=\"goToPage('next')\" class=\"ajf-paginated-list-btn ajf-paginated-list-forward-btn\"\n [class.ajf-paginated-list-btn-disabled]=\"canGoForward === false\"></a>\n </div>\n </div>\n <div class=\"ajf-paginated-list-item\" *ngFor=\"let item of currentContent\">\n <ajf-widget [instance]=\"item\"></ajf-widget>\n </div>\n</div>\n","<div class=\"ajf-paginated-table\" *ngIf=\"instance\">\n <div class=\"ajf-paginated-table-title-container\" *ngIf=\"pages > 0\">\n <div class=\"ajf-paginated-table-page-selector\">\n <mat-label class=\"ajf-paginated-table-page-selector-label\"\n >{{'Items per page:'|transloco}}</mat-label\n >\n <mat-select\n [value]=\"paginatorConfig.pageSize\"\n (selectionChange)=\"onPageSizeChange($event.value)\"\n >\n <mat-option\n [value]=\"pageSizeOpt\"\n *ngFor=\"let pageSizeOpt of paginatorConfig.pageSizeOptions\"\n >\n {{ pageSizeOpt }}\n </mat-option>\n </mat-select>\n </div>\n <div class=\"ajf-spacer\"></div>\n <div class=\"ajf-paginated-table-paginator\">\n <a\n (click)=\"goToPage('previous')\"\n class=\"ajf-paginated-table-btn ajf-paginated-table-back-btn\"\n [class.ajf-paginated-table-btn-disabled]=\"canGoBackward === false\"\n ></a>\n <div class=\"ajf-paginated-table-paginator-page\">{{ currentPage }}</div>\n <div class=\"ajf-paginated-table-paginator-separator\"></div>\n <div class=\"ajf-paginated-table-paginator-pages\">{{ pages }}</div>\n <a\n (click)=\"goToPage('next')\"\n class=\"ajf-paginated-table-btn ajf-paginated-table-forward-btn\"\n [class.ajf-paginated-table-btn-disabled]=\"canGoForward === false\"\n ></a>\n </div>\n </div>\n <div class=\"ajf-paginated-table-item\">\n <ajf-table [data]=\"currentContent\" (sortSelected)=\"sortPaginatedData($event)\"></ajf-table>\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 CoreReportRenderer} 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.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfReportRenderer extends CoreReportRenderer {\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 {AjfGraphModule} from '@ajf/core/graph';\nimport {AjfHeatMapModule} from '@ajf/core/heat-map';\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 {AjfFormsModule} from '@ajf/material/forms';\nimport {AjfImageModule} from '@ajf/material/image';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatDialogModule} from '@angular/material/dialog';\nimport {MatSelectModule} from '@angular/material/select';\n\nimport {AjfChartWidgetComponent} from './chart-widget';\nimport {AjfFilterWidgetComponent} from './filter-widget';\nimport {AjfFormulaWidgetComponent} from './formula-widget';\nimport {AjfHeatMapWidgetComponent} from './heat-map-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 {\n AjfColumnWidgetComponent,\n AjfDialogWidgetComponent,\n AjfLayoutWidgetComponent,\n AjfPaginatedListWidgetComponent,\n AjfPaginatedTableWidgetComponent,\n AjfReportWidget,\n} from './widget';\nimport {AjfGraphWidgetComponent} from './graph-widget';\n\n@NgModule({\n imports: [\n AjfChartModule,\n AjfCommonModule,\n AjfImageModule,\n AjfFormsModule,\n AjfGraphModule,\n AjfHeatMapModule,\n AjfMapModule,\n AjfPageBreakModule,\n AjfTableModule,\n AjfTextModule,\n AjfTranslocoModule,\n CommonModule,\n CoreModule,\n MatDialogModule,\n MatSelectModule,\n ],\n declarations: [\n AjfChartWidgetComponent,\n AjfColumnWidgetComponent,\n AjfDialogWidgetComponent,\n AjfFilterWidgetComponent,\n AjfFormulaWidgetComponent,\n AjfHeatMapWidgetComponent,\n AjfImageContainerWidgetComponent,\n AjfImageWidgetComponent,\n AjfGraphWidgetComponent,\n AjfLayoutWidgetComponent,\n AjfMapWidgetComponent,\n AjfPageBreakWidgetComponent,\n AjfPaginatedListWidgetComponent,\n AjfPaginatedTableWidgetComponent,\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 './heat-map-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 * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i3","i1","i2","i4","wt","CoreService","CoreComponent","i1.AjfFilterWidgetComponent","i7","i9","CoreReportRenderer","i1.AjfReportWidget","CoreModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,uBAAwB,SAAQ,sBAA8C,CAAA;IACzF,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;oHAHU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,2ECrCpC,mWAWA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,MAAA,EAAA,SAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD0Ba,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,mWAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AA+BG,MAAO,wBAAyB,SAAQ,sBAAyC,CAAA;AAGrF,IAAA,WAAA,CACE,GAAsB,EACtB,EAAc,EACN,GAAqB,EACrB,aAAqC,EAAA;AAE7C,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAHP,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAkB;AACrB,QAAA,IAAa,CAAA,aAAA,GAAb,aAAa,CAAwB;AAI7C,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CACvD,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,CAAC,EACjF,SAAS,CAAC,SAAS,IAAK,SAAuB,CAAC,YAAY,CAAC,EAC7D,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EACvE,GAAG,CAAC,CAAC,IAAG;AACN,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAA6B,CAAC;AACpD,YAAA,MAAM,MAAM,GAAG,QAAQ,CAAC,MAA2B,CAAC;AACpD,YAAA,MAAM,QAAQ,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,GAAa,MAAM,CAAC,OAAO,IAAI,EAAE,EAAC,EAAK,CAAC,CAAC,CAAC;AACxD,YAAA,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,EAAE;gBAC5B,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,EAAE,OAAO,CAAC,QAAQ,IAAG;AAC1C,oBAAA,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACnF,iBAAC,CAAC,CAAC;AACJ,aAAA;AACD,YAAA,IAAI,CAAC,QAAQ,GAAG,sBAAsB,CACpC,QAAQ,CAAC,MAAM,EACf,QAAQ,EACR,IAAI,CAAC,GAAG,EACR,MAAM,CAAC,SAAS,CACjB,CAAC;YACF,OAAO,IAAI,CAAC,QAAQ,CAAC;SACtB,CAAC,CACH,CAAC;KACH;;qHAjCU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAFxB,QAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,SAAA,EAAA,CAAC,sBAAsB,CAAC,iDCjDrC,4XAYA,EAAA,MAAA,EAAA,CAAA,mbAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDuCa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBARpC,SAAS;+BACE,mBAAmB,EAAA,eAAA,EAGZ,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAC1B,CAAC,sBAAsB,CAAC,EAAA,QAAA,EAAA,4XAAA,EAAA,MAAA,EAAA,CAAA,mbAAA,CAAA,EAAA,CAAA;yMAGhB,gBAAgB,EAAA,CAAA;sBAAlC,MAAM;;;AEpDT;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,yBAA0B,SAAQ,sBAAgD,CAAA;IAC7F,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;sHAHU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,2ECrCtC,4EACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDoCa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,4EAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,yBAA0B,SAAQ,sBAAgD,CAAA;IAC7F,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;sHAHU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,yBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,2ECrCtC,uWAWA,EAAA,MAAA,EAAA,CAAA,+CAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,QAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD0Ba,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,uWAAA,EAAA,MAAA,EAAA,CAAA,+CAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAkBG,MAAO,gCAAiC,SAAQ,sBAAuD,CAAA;IAG3G,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAHR,QAAA,IAAU,CAAA,UAAA,GAAG,YAAY,CAAC;KAIlC;;6HALU,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhC,gCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,2ECtC7C,mzCAmCA,EAAA,MAAA,EAAA,CAAA,4DAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDGa,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAN5C,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,mzCAAA,EAAA,MAAA,EAAA,CAAA,4DAAA,CAAA,EAAA,CAAA;;;AEpCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,uBAAwB,SAAQ,sBAA8C,CAAA;IACzF,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;oHAHU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,2ECrCpC,uLAMA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD+Ba,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,uLAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,qBAAsB,SAAQ,sBAA4C,CAAA;IACrF,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;kHAHU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,2ECrClC,qOAMA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD+Ba,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBANjC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,qOAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,2BAA4B,SAAQ,sBAAsB,CAAA;IACrE,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;wHAHU,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,2ECrCxC,qCACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDoCa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBANvC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,qCAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAkBG,MAAO,uBAAwB,SAAQ,sBAA8C,CAAA;IACzF,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;oHAHU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,+ECtCpC,wHAGA,EAAA,MAAA,EAAA,CAAA,6CAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDmCa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAPnC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,mBAGX,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,wHAAA,EAAA,MAAA,EAAA,CAAA,6CAAA,CAAA,EAAA,CAAA;;;AEpCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,uBAAwB,SAAQ,sBAA8C,CAAA;IACzF,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;oHAHU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,2ECrCpC,iOAQA,EAAA,MAAA,EAAA,CAAA,4TAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,MAAA,EAAA,SAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD6Ba,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,4TAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,sBAAuB,SAAQ,sBAA6C,CAAA;IACvF,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;mHAHU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,2ECrCnC,yFACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,WAAA,EAAAF,IAAA,CAAA,aAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDoCa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,yFAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;;AEnCvC;;;;;;;;;;;;;;;;;;;;AAoBG;AA8CH,MAAM,qBAAqB,GAAG,MAA6B;IACzD,MAAM,cAAc,GAA2B,EAAE,CAAC;IAClD,cAAc,CAACI,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,cAAc,CAACA,aAAE,CAAC,KAAK,CAAC,GAAG,EAAC,SAAS,EAAE,uBAAuB,EAAC,CAAC;IAChE,cAAc,CAACA,aAAE,CAAC,aAAa,CAAC,GAAG,EAAC,SAAS,EAAE,+BAA+B,EAAC,CAAC;IAChF,cAAc,CAACA,aAAE,CAAC,cAAc,CAAC,GAAG,EAAC,SAAS,EAAE,gCAAgC,EAAC,CAAC;IAElF,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;AACpE,IAAA,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAGI,MAAO,gBAAiB,SAAQC,kBAAW,CAAA;AAC/C,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;KAChC;;6GAHU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cADJ,MAAM,EAAA,CAAA,CAAA;2FAClB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC,CAAA;;AAc1B,MAAO,eAAgB,SAAQC,iBAAa,CAAA;IAGhD,WAAY,CAAA,QAAmB,EAAE,aAA+B,EAAA;QAC9D,KAAK,CAAC,QAAQ,CAAC,CAAC;AAChB,QAAA,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC;KAC/C;;AANU,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,2CAGsB,gBAAgB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAHrD,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,yECtG5B,4MAOA,EAAA,MAAA,EAAA,CAAA,+MAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,wBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAF,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FD+Fa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,iBAGP,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4MAAA,EAAA,MAAA,EAAA,CAAA,+MAAA,CAAA,EAAA,CAAA;kFAKC,gBAAgB,EAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA;AAY5D,MAAO,wBAAyB,SAAQ,sBAA+C,CAAA;IAC3F,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;KAChB;;qHAHU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;yGAAxB,wBAAwB,EAAA,QAAA,EAAA,cAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EErHrC,mMAMA,EAAA,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EFgGa,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAef,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,mMAAA,EAAA,MAAA,EAAA,CAAA,wCAAA,CAAA,EAAA,CAAA;;AAcjC,MAAO,wBACX,SAAQ,sBAA+C,CAAA;IAOvD,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QALT,IAAA,CAAA,oBAAoB,GAA6B,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;QACpF,IAAA,CAAA,mBAAmB,GAAwB,IAAI;AACrD,aAAA,oBAA2C,CAAC;KAI9C;IACD,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;;qHAbU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;yGAAxB,wBAAwB,EAAA,QAAA,EAAA,cAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EGjIrC,8dAYA,EAAA,MAAA,EAAA,CAAA,oLAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EH0Fa,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,qBAAA,EAAAF,EAAA,CAAA,uBAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FA2Bf,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,8dAAA,EAAA,MAAA,EAAA,CAAA,oLAAA,CAAA,EAAA,CAAA;;AAwBjC,MAAO,wBAAyB,SAAQ,sBAA+C,CAAA;AAG3F,IAAA,WAAA,CAAY,GAAsB,EAAE,EAAc,EAAU,OAAkB,EAAA;AAC5E,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAD2C,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAW;KAE7E;IAED,UAAU,GAAA;QACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KACvC;;qHATU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,wBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EACA,QAAA,EAAA,cAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,eAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,WAAW,EIxJhD,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,6XAUA,uFJ4Fa,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAiDf,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBANpC,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,6XAAA,EAAA,MAAA,EAAA,CAAA,oDAAA,CAAA,EAAA,CAAA;yJAGY,aAAa,EAAA,CAAA;sBAA7D,SAAS;gBAAC,IAAA,EAAA,CAAA,eAAe,EAAE,EAAC,IAAI,EAAE,WAAW,EAAC,CAAA;;AAiB3C,MAAO,+BACX,SAAQ,sBAAsD,CAAA;IA4B9D,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAvBT,QAAA,IAAY,CAAA,YAAA,GAAG,CAAC,CAAC;AAKjB,QAAA,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;AAKX,QAAA,IAAe,CAAA,eAAA,GAAwB,EAAE,CAAC;AAK1C,QAAA,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;AAKtB,QAAA,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;KAI9B;AA3BD,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAGD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAGD,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC7B;AAGD,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;AAGD,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AAOD,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YACvB,IAAI,CAAC,qBAAqB,EAAE,CAAC;AAC9B,SAAA;KACF;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;AAED,IAAA,QAAQ,CAAC,SAA8B,EAAA;AACrC,QAAA,MAAM,IAAI,GAAG,SAAS,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3C,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzC,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE;YACzC,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3C,QAAA,IAAI,CAAC,cAAc,GAAG,OAAO,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAEO,qBAAqB,GAAA;AAC3B,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;AAC5B,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAC/D,YAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;AACtB,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AACjB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;AACtB,YAAA,MAAM,EAAC,OAAO,EAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YAChC,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;AACxC,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AACtC,SAAA;QACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAEO,mBAAmB,GAAA;AACzB,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAC/D,YAAA,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAC1B,OAAO;AACR,SAAA;AACD,QAAA,MAAM,EAAC,OAAO,EAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,EAAC,QAAQ,EAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACxC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,QAAQ,CAAC;AACjD,QAAA,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC;AAC9D,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;KAC1B;;4HAhFU,+BAA+B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gHAA/B,+BAA+B,EAAA,QAAA,EAAA,cAAA,EAAA,eAAA,EAAA,IAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EKzK5C,kiCAkBA,EAAA,MAAA,EAAA,CAAA,mxBAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,ELoFa,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAmEf,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAN3C,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,kiCAAA,EAAA,MAAA,EAAA,CAAA,mxBAAA,CAAA,EAAA,CAAA;;AA2FjC,MAAO,gCACX,SAAQ,sBAAuD,CAAA;IAqD/D,WAAY,CAAA,GAAsB,EAAE,EAAc,EAAA;AAChD,QAAA,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAnDR,IAAA,CAAA,eAAe,GAAG;AACzB,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC;SACvD,CAAC;AAKM,QAAA,IAAY,CAAA,YAAA,GAAG,CAAC,CAAC;AAKjB,QAAA,IAAM,CAAA,MAAA,GAAG,CAAC,CAAC;AAKX,QAAA,IAAQ,CAAA,QAAA,GAAG,CAAC,CAAC;AAKb,QAAA,IAAe,CAAA,eAAA,GAAqB,EAAE,CAAC;AAE/C;;AAEG;AACK,QAAA,IAAe,CAAA,eAAA,GAAqB,EAAE,CAAC;AAE/C;;AAEG;AACK,QAAA,IAAqB,CAAA,qBAAA,GAAqB,EAAE,CAAC;AAK7C,QAAA,IAAc,CAAA,cAAA,GAAmB,EAAE,CAAC;AAKpC,QAAA,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;AAKtB,QAAA,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;KAI9B;AA/CD,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAGD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAGD,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;AAGD,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC7B;AAaD,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AAGD,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;KAC3B;AAGD,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AAOD;;;AAGG;AACH,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;AACvB,YAAA,IACE,IAAI,CAAC,QAAQ,IAAI,IAAI;AACrB,gBAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EACjC;AACA,gBAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC;AAC/D,aAAA;YACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;AAC9B,SAAA;KACF;IAED,QAAQ,GAAA;AACN,QAAA,IACE,IAAI,CAAC,QAAQ,IAAI,IAAI;AACrB,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ;YAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EACjC;AACA,YAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC;AAC/D,SAAA;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;AAED;;;;AAIG;AACH,IAAA,QAAQ,CAAC,SAA8B,EAAA;AACrC,QAAA,MAAM,IAAI,GAAG,SAAS,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3C,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzC,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE;YACzC,OAAO;AACR,SAAA;AACD,QAAA,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3C,QAAA,IAAI,CAAC,cAAc,GAAG,OAAO,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;AAED,IAAA,gBAAgB,CAAC,SAAiB,EAAA;AAChC,QAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1C,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;AAED;;;;AAIG;AACH,IAAA,iBAAiB,CAAC,IAAU,EAAA;AAC1B,QAAA,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,EAAE,EAAE;gBACzC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;AAC3D,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;AACrD,gBAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;AAE5B,gBAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACvD,gBAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AACtE,oBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC;AACvC,oBAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;AAC1D,iBAAC,CAAC,CAAC;AACJ,aAAA;YACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;AAC5B,SAAA;KACF;AAEO,IAAA,QAAQ,CAAC,CAAe,EAAE,CAAe,EAAE,KAAc,EAAA;AAC/D,QAAA,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACxD;AAED;;AAEG;IACK,qBAAqB,GAAA;AAC3B,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;AAC5B,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAC5D,YAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;AACtB,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AAChB,YAAA,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;AACzB,YAAA,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;AAC1B,YAAA,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;AAC1B,YAAA,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;AACjC,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5C,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnD,IAAI,CAAC,qBAAqB,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;AACvD,YAAA,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;AAEtB,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YACrF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AACtC,SAAA;QACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;AAED;;AAEG;IACK,mBAAmB,GAAA;AACzB,QAAA,IAAI,IAAI,CAAC,qBAAqB,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7E,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAC9C,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;YACtE,IAAI,CAAC,eAAe,GAAG;AACrB,gBAAA,IAAI,CAAC,cAAc;AACnB,gBAAA,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;aAClF,CAAC;AACH,SAAA;AACD,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;KAC1B;;6HA9KU,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhC,gCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,gGMlQ7C,skDAuCA,EAAA,MAAA,EAAA,CAAA,gqCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAN,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,WAAA,EAAAO,IAAA,CAAA,aAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FN2Na,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAN5C,SAAS;YAGS,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,skDAAA,EAAA,MAAA,EAAA,CAAA,gqCAAA,CAAA,EAAA,CAAA;;;AOhQvC;;;;;;;;;;;;;;;;;;;;AAoBG;AAiBG,MAAO,iBAAkB,SAAQC,mBAAkB,CAAA;AACvD,IAAA,WAAA,CAAY,GAAsB,EAAA;QAChC,KAAK,CAAC,GAAG,CAAC,CAAC;KACZ;;8GAHU,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,yECrC9B,48BAiBA,EAAA,MAAA,EAAA,CAAA,qaAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,YAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAT,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDoBa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,iBAGP,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,48BAAA,EAAA,MAAA,EAAA,CAAA,qaAAA,CAAA,EAAA,CAAA;;;AEnCjD;;;;;;;;;;;;;;;;;;;;AAoBG;MAgFU,gBAAgB,CAAA;;6GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBArBzB,uBAAuB;QACvB,wBAAwB;QACxB,wBAAwB;QACxB,wBAAwB;QACxB,yBAAyB;QACzB,yBAAyB;QACzB,gCAAgC;QAChC,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;QACxB,qBAAqB;QACrB,2BAA2B;QAC3B,+BAA+B;QAC/B,gCAAgC;QAChC,iBAAiB;QACjB,eAAe;QACf,uBAAuB;AACvB,QAAA,sBAAsB,aAlCtB,cAAc;QACd,eAAe;QACf,cAAc;QACd,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,YAAY;QACZ,kBAAkB;QAClB,cAAc;QACd,aAAa;QACb,kBAAkB;QAClB,YAAY;QACZU,kBAAU;QACV,eAAe;QACf,eAAe,CAAA,EAAA,OAAA,EAAA,CAsBP,iBAAiB,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;AAEjC,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAvClB,OAAA,EAAA,CAAA;YACP,cAAc;YACd,eAAe;YACf,cAAc;YACd,cAAc;YACd,cAAc;YACd,gBAAgB;YAChB,YAAY;YACZ,kBAAkB;YAClB,cAAc;YACd,aAAa;YACb,kBAAkB;YAClB,YAAY;YACZA,kBAAU;YACV,eAAe;YACf,eAAe;SAChB,CAAA,EAAA,CAAA,CAAA;2FAuBU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAxC5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,cAAc;wBACd,eAAe;wBACf,cAAc;wBACd,cAAc;wBACd,cAAc;wBACd,gBAAgB;wBAChB,YAAY;wBACZ,kBAAkB;wBAClB,cAAc;wBACd,aAAa;wBACb,kBAAkB;wBAClB,YAAY;wBACZA,kBAAU;wBACV,eAAe;wBACf,eAAe;AAChB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,uBAAuB;wBACvB,wBAAwB;wBACxB,wBAAwB;wBACxB,wBAAwB;wBACxB,yBAAyB;wBACzB,yBAAyB;wBACzB,gCAAgC;wBAChC,uBAAuB;wBACvB,uBAAuB;wBACvB,wBAAwB;wBACxB,qBAAqB;wBACrB,2BAA2B;wBAC3B,+BAA+B;wBAC/B,gCAAgC;wBAChC,iBAAiB;wBACjB,eAAe;wBACf,uBAAuB;wBACvB,sBAAsB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,iBAAiB,EAAE,eAAe,CAAC;iBAC9C,CAAA;;;ACnGD;;;;;;;;;;;;;;;;;;;;AAoBG;;ACpBH;;AAEG;;;;"}
|
|
@@ -617,7 +617,14 @@ class AjfPaginatedTableWidgetComponent extends AjfBaseWidgetComponent {
|
|
|
617
617
|
this._pages = 0;
|
|
618
618
|
this._orderBy = 0;
|
|
619
619
|
this._currentContent = [];
|
|
620
|
+
/**
|
|
621
|
+
* full data table
|
|
622
|
+
*/
|
|
620
623
|
this._allDataContent = [];
|
|
624
|
+
/**
|
|
625
|
+
* full sorted data table
|
|
626
|
+
*/
|
|
627
|
+
this._sortedAllDataContent = [];
|
|
621
628
|
this._headerContent = [];
|
|
622
629
|
this._canGoForward = false;
|
|
623
630
|
this._canGoBackward = false;
|
|
@@ -691,17 +698,20 @@ class AjfPaginatedTableWidgetComponent extends AjfBaseWidgetComponent {
|
|
|
691
698
|
* @returns
|
|
692
699
|
*/
|
|
693
700
|
sortPaginatedData(sort) {
|
|
694
|
-
if (!sort.active || sort.direction === '') {
|
|
695
|
-
return;
|
|
696
|
-
}
|
|
697
701
|
if (this._allDataContent.length > 1) {
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
702
|
+
if (!sort.active || sort.direction === '') {
|
|
703
|
+
this._sortedAllDataContent = this._allDataContent.slice();
|
|
704
|
+
}
|
|
705
|
+
else {
|
|
706
|
+
this._currentPage = 1;
|
|
707
|
+
this._canGoForward = this._currentPage < this._pages;
|
|
708
|
+
this._canGoBackward = false;
|
|
709
|
+
const columnIdx = parseInt(sort.active.slice(-1)) || 0;
|
|
710
|
+
this._sortedAllDataContent = this._allDataContent.slice().sort((a, b) => {
|
|
711
|
+
const isAsc = sort.direction === 'asc';
|
|
712
|
+
return this._compare(a[columnIdx], b[columnIdx], isAsc);
|
|
713
|
+
});
|
|
714
|
+
}
|
|
705
715
|
this._fillCurrentContent();
|
|
706
716
|
}
|
|
707
717
|
}
|
|
@@ -719,10 +729,12 @@ class AjfPaginatedTableWidgetComponent extends AjfBaseWidgetComponent {
|
|
|
719
729
|
this._headerContent = [];
|
|
720
730
|
this._currentContent = [];
|
|
721
731
|
this._allDataContent = [];
|
|
732
|
+
this._sortedAllDataContent = [];
|
|
722
733
|
}
|
|
723
734
|
else {
|
|
724
735
|
this._headerContent = this.instance.data[0];
|
|
725
736
|
this._allDataContent = this.instance.data.slice(1);
|
|
737
|
+
this._sortedAllDataContent = [...this._allDataContent];
|
|
726
738
|
this._currentPage = 1;
|
|
727
739
|
this._pages = Math.ceil(this._allDataContent.length / this.paginatorConfig.pageSize);
|
|
728
740
|
this._canGoForward = this._pages > 1;
|
|
@@ -733,14 +745,14 @@ class AjfPaginatedTableWidgetComponent extends AjfBaseWidgetComponent {
|
|
|
733
745
|
* Update current data for the table, using page and sorted data
|
|
734
746
|
*/
|
|
735
747
|
_fillCurrentContent() {
|
|
736
|
-
if (this.
|
|
748
|
+
if (this._sortedAllDataContent.length === 0 && this._headerContent.length > 0) {
|
|
737
749
|
this._currentContent = [this._headerContent];
|
|
738
750
|
}
|
|
739
751
|
else {
|
|
740
752
|
const start = (this._currentPage - 1) * this.paginatorConfig.pageSize;
|
|
741
753
|
this._currentContent = [
|
|
742
754
|
this._headerContent,
|
|
743
|
-
...this.
|
|
755
|
+
...this._sortedAllDataContent.slice(start, start + this.paginatorConfig.pageSize),
|
|
744
756
|
];
|
|
745
757
|
}
|
|
746
758
|
this._cdr.markForCheck();
|