@ajf/material 18.2.3 → 18.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -56,7 +56,7 @@ class AjfNodeIcon extends AjfNodeIcon$1 {
56
56
  return 'code';
57
57
  case AjfFieldType.Empty:
58
58
  return 'html';
59
- case AjfFieldType.Date:
59
+ case AjfFieldType.DateRange:
60
60
  case AjfFieldType.DateInput:
61
61
  return 'calendar_month';
62
62
  case AjfFieldType.Time:
@@ -1 +1 @@
1
- {"version":3,"file":"ajf-material-node-icon.mjs","sources":["../../../projects/material/node-icon/src/node-icon.ts","../../../projects/material/node-icon/src/node-icon.html","../../../projects/material/node-icon/src/node-icon-module.ts","../../../projects/material/node-icon/src/public_api.ts","../../../projects/material/node-icon/src/ajf-material-node-icon.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 {AjfField, AjfFieldType, AjfNode, AjfNodeType} from '@ajf/core/forms';\nimport {AjfNodeIcon as CoreNodeIcon} from '@ajf/core/node-icon';\nimport {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n selector: 'ajf-node-icon',\n templateUrl: 'node-icon.html',\n styleUrls: ['node-icon.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfNodeIcon extends CoreNodeIcon {\n matIcon(node: AjfNode): string {\n if (node.nodeType === AjfNodeType.AjfSlide) {\n return 'folder';\n }\n if (node.nodeType === AjfNodeType.AjfRepeatingSlide) {\n return 'create_new_folder';\n }\n if (node.nodeType !== AjfNodeType.AjfField) {\n return 'broken_image';\n }\n switch ((node as AjfField).fieldType as AjfFieldType) {\n case AjfFieldType.String:\n case AjfFieldType.Text:\n return 'abc';\n case AjfFieldType.Number:\n case AjfFieldType.Range:\n return 'pin';\n case AjfFieldType.Boolean:\n return 'toggle_off';\n case AjfFieldType.SingleChoice:\n return 'format_list_bulleted';\n case AjfFieldType.MultipleChoice:\n return 'format_list_numbered';\n case AjfFieldType.Formula:\n return 'code';\n case AjfFieldType.Empty:\n return 'html';\n case AjfFieldType.Date:\n case AjfFieldType.DateInput:\n return 'calendar_month';\n case AjfFieldType.Time:\n return 'access_time';\n case AjfFieldType.Table:\n return 'grid_on';\n case AjfFieldType.Geolocation:\n return 'location_on';\n case AjfFieldType.Barcode:\n return 'qr_code_2';\n case AjfFieldType.File:\n return 'attach_file';\n case AjfFieldType.Image:\n return 'image';\n case AjfFieldType.VideoUrl:\n return 'videocam';\n case AjfFieldType.Signature:\n return 'draw';\n default:\n return 'broken_image';\n }\n }\n}\n","<ng-template [ngIf]=\"node\">\n <mat-icon>{{matIcon(node)}}</mat-icon>\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 {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatIconModule} from '@angular/material/icon';\n\nimport {AjfNodeIcon} from './node-icon';\n\n@NgModule({\n imports: [CommonModule, MatIconModule],\n declarations: [AjfNodeIcon],\n exports: [AjfNodeIcon],\n})\nexport class AjfNodeIconModule {}\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 './node-icon-module';\nexport * from './node-icon';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["CoreNodeIcon"],"mappings":"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"}
1
+ {"version":3,"file":"ajf-material-node-icon.mjs","sources":["../../../projects/material/node-icon/src/node-icon.ts","../../../projects/material/node-icon/src/node-icon.html","../../../projects/material/node-icon/src/node-icon-module.ts","../../../projects/material/node-icon/src/public_api.ts","../../../projects/material/node-icon/src/ajf-material-node-icon.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 {AjfField, AjfFieldType, AjfNode, AjfNodeType} from '@ajf/core/forms';\nimport {AjfNodeIcon as CoreNodeIcon} from '@ajf/core/node-icon';\nimport {ChangeDetectionStrategy, Component, ViewEncapsulation} from '@angular/core';\n\n@Component({\n selector: 'ajf-node-icon',\n templateUrl: 'node-icon.html',\n styleUrls: ['node-icon.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AjfNodeIcon extends CoreNodeIcon {\n matIcon(node: AjfNode): string {\n if (node.nodeType === AjfNodeType.AjfSlide) {\n return 'folder';\n }\n if (node.nodeType === AjfNodeType.AjfRepeatingSlide) {\n return 'create_new_folder';\n }\n if (node.nodeType !== AjfNodeType.AjfField) {\n return 'broken_image';\n }\n switch ((node as AjfField).fieldType as AjfFieldType) {\n case AjfFieldType.String:\n case AjfFieldType.Text:\n return 'abc';\n case AjfFieldType.Number:\n case AjfFieldType.Range:\n return 'pin';\n case AjfFieldType.Boolean:\n return 'toggle_off';\n case AjfFieldType.SingleChoice:\n return 'format_list_bulleted';\n case AjfFieldType.MultipleChoice:\n return 'format_list_numbered';\n case AjfFieldType.Formula:\n return 'code';\n case AjfFieldType.Empty:\n return 'html';\n case AjfFieldType.DateRange:\n case AjfFieldType.DateInput:\n return 'calendar_month';\n case AjfFieldType.Time:\n return 'access_time';\n case AjfFieldType.Table:\n return 'grid_on';\n case AjfFieldType.Geolocation:\n return 'location_on';\n case AjfFieldType.Barcode:\n return 'qr_code_2';\n case AjfFieldType.File:\n return 'attach_file';\n case AjfFieldType.Image:\n return 'image';\n case AjfFieldType.VideoUrl:\n return 'videocam';\n case AjfFieldType.Signature:\n return 'draw';\n default:\n return 'broken_image';\n }\n }\n}\n","<ng-template [ngIf]=\"node\">\n <mat-icon>{{matIcon(node)}}</mat-icon>\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 {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatIconModule} from '@angular/material/icon';\n\nimport {AjfNodeIcon} from './node-icon';\n\n@NgModule({\n imports: [CommonModule, MatIconModule],\n declarations: [AjfNodeIcon],\n exports: [AjfNodeIcon],\n})\nexport class AjfNodeIconModule {}\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 './node-icon-module';\nexport * from './node-icon';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["CoreNodeIcon"],"mappings":"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"}
@@ -714,8 +714,8 @@ class AjfPaginatedTableWidgetComponent extends AjfBaseWidgetComponent {
714
714
  this._currentPage = 1;
715
715
  this._canGoForward = this._currentPage < this._pages;
716
716
  this._canGoBackward = false;
717
- const columnIdx = parseInt(sort.active.slice(-1)) || 0;
718
- this._sortedAllDataContent = this._allDataContent.slice().sort((a, b) => {
717
+ const columnIdx = parseInt(sort.active.replace(/^\D+/, '')) || 0;
718
+ this._sortedAllDataContent = this._sortedAllDataContent.slice().sort((a, b) => {
719
719
  const isAsc = sort.direction === 'asc';
720
720
  return this._compare(a[columnIdx], b[columnIdx], isAsc);
721
721
  });
@@ -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 [mainDataNumberThreshold]=\"instance.mainDataNumberThreshold\"\n [removeZeroValues]=\"instance.removeZeroValues\"\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 {AjfContext} from '@ajf/core/common';\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 EventEmitter,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport {UntypedFormGroup} 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 @Output() filterWidgetChange = new EventEmitter<{context: AjfContext, widget: 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 UntypedFormGroup).valueChanges),\n distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)),\n map(filterContext => {\n const instance = this.instance as AjfWidgetInstance;\n const filter = instance.filter as AjfFilterInstance;\n const newContext: any = {...(filter.context || {}), ...filterContext};\n for (const variable of filter.variables || []) {\n newContext[variable.name] = evaluateExpression(variable.formula.formula, newContext);\n }\n this.instance = widgetToWidgetInstance(\n instance.widget,\n newContext,\n this._ts,\n filter.variables,\n );\n this.filterWidgetChange.emit({context: filterContext, widget: this.instance});\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 {AjfContext} from '@ajf/core/common';\nimport {AjfTableCell} from '@ajf/core/table';\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Injectable,\n OnChanges,\n OnInit,\n Output,\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 @Output() filterWidgetChange = new EventEmitter<{context: AjfContext, widget: AjfWidgetInstance}>();\n readonly widgetsMap: AjfWidgetComponentsMap;\n\n constructor(renderer: Renderer2, widgetService: AjfWidgetService) {\n super(renderer);\n this.widgetsMap = widgetService.componentsMap;\n }\n\n filterWidgetChanged(changes: {context: AjfContext, widget: AjfWidgetInstance}) {\n this.filterWidgetChange.emit(changes);\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 exportableContent(): AjfTableCell[][] {\n return [this._headerContent, ...this._sortedAllDataContent];\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 (filterWidgetChange)=\"filterWidgetChanged($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-widget-export\n *ngIf=\"instance\"\n [widgetType]=\"instance.widgetType\"\n [data]=\"exportableContent()\"\n [enable]=\"instance.exportable\"\n >\n <ajf-table [data]=\"currentContent\" (sortSelected)=\"sortPaginatedData($event)\"></ajf-table>\n </ajf-widget-export>\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 {AjfContext} from '@ajf/core/common';\nimport {\n AjfReportInstance,\n AjfReportRenderer as CoreReportRenderer,\n AjfWidgetInstance,\n} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Output,\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 @Output() filterWidgetChange = new EventEmitter<{context: AjfContext, report?: AjfReportInstance}>();\n\n constructor(cdr: ChangeDetectorRef) {\n super(cdr);\n }\n\n filterWidgetChanged(changes: {context: AjfContext, widget: AjfWidgetInstance}) {\n const report = this.instance!;\n if (report.content!.content.length === 1) {\n // Report likely has 1 global layout widget with a filter,\n // create a copy of the report with the updated layout widget\n const layout = changes.widget;\n const contentContent = [layout];\n const content = {...report.content!, content: contentContent};\n const newReport = {...report, content};\n this.filterWidgetChange.emit({context: changes.context, report: newReport});\n } else {\n this.filterWidgetChange.emit({context: changes.context});\n }\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 <ajf-widget-export *ngIf=\"enableExportAll\"\n [overlay]=\"false\"\n [widgets]=\"instance.content.content\"\n [enable]=\"true\"></ajf-widget-export>\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"\n (filterWidgetChange)=\"filterWidgetChanged($event)\">\n </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":["i2","i3","i1","i4","wt","CoreService","CoreComponent","i3.AjfFilterWidgetComponent","i5","i9","CoreReportRenderer","i4.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 [mainDataNumberThreshold]=\"instance.mainDataNumberThreshold\"\n [removeZeroValues]=\"instance.removeZeroValues\"\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 {AjfContext} from '@ajf/core/common';\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 EventEmitter,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport {UntypedFormGroup} 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 @Output() filterWidgetChange = new EventEmitter<{context: AjfContext, widget: 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 UntypedFormGroup).valueChanges),\n distinctUntilChanged((a, b) => JSON.stringify(a) === JSON.stringify(b)),\n map(filterContext => {\n const instance = this.instance as AjfWidgetInstance;\n const filter = instance.filter as AjfFilterInstance;\n const newContext: any = {...(filter.context || {}), ...filterContext};\n for (const variable of filter.variables || []) {\n newContext[variable.name] = evaluateExpression(variable.formula.formula, newContext);\n }\n this.instance = widgetToWidgetInstance(\n instance.widget,\n newContext,\n this._ts,\n filter.variables,\n );\n this.filterWidgetChange.emit({context: filterContext, widget: this.instance});\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 {AjfContext} from '@ajf/core/common';\nimport {AjfTableCell} from '@ajf/core/table';\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Injectable,\n OnChanges,\n OnInit,\n Output,\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 @Output() filterWidgetChange = new EventEmitter<{context: AjfContext, widget: AjfWidgetInstance}>();\n readonly widgetsMap: AjfWidgetComponentsMap;\n\n constructor(renderer: Renderer2, widgetService: AjfWidgetService) {\n super(renderer);\n this.widgetsMap = widgetService.componentsMap;\n }\n\n filterWidgetChanged(changes: {context: AjfContext, widget: AjfWidgetInstance}) {\n this.filterWidgetChange.emit(changes);\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.replace(/^\\D+/, '')) || 0;\n this._sortedAllDataContent = this._sortedAllDataContent.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 exportableContent(): AjfTableCell[][] {\n return [this._headerContent, ...this._sortedAllDataContent];\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 (filterWidgetChange)=\"filterWidgetChanged($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-widget-export\n *ngIf=\"instance\"\n [widgetType]=\"instance.widgetType\"\n [data]=\"exportableContent()\"\n [enable]=\"instance.exportable\"\n >\n <ajf-table [data]=\"currentContent\" (sortSelected)=\"sortPaginatedData($event)\"></ajf-table>\n </ajf-widget-export>\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 {AjfContext} from '@ajf/core/common';\nimport {\n AjfReportInstance,\n AjfReportRenderer as CoreReportRenderer,\n AjfWidgetInstance,\n} from '@ajf/core/reports';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Output,\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 @Output() filterWidgetChange = new EventEmitter<{context: AjfContext, report?: AjfReportInstance}>();\n\n constructor(cdr: ChangeDetectorRef) {\n super(cdr);\n }\n\n filterWidgetChanged(changes: {context: AjfContext, widget: AjfWidgetInstance}) {\n const report = this.instance!;\n if (report.content!.content.length === 1) {\n // Report likely has 1 global layout widget with a filter,\n // create a copy of the report with the updated layout widget\n const layout = changes.widget;\n const contentContent = [layout];\n const content = {...report.content!, content: contentContent};\n const newReport = {...report, content};\n this.filterWidgetChange.emit({context: changes.context, report: newReport});\n } else {\n this.filterWidgetChange.emit({context: changes.context});\n }\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 <ajf-widget-export *ngIf=\"enableExportAll\"\n [overlay]=\"false\"\n [widgets]=\"instance.content.content\"\n [enable]=\"true\"></ajf-widget-export>\n <ng-template ngFor let-instance [ngForOf]=\"instance.content.content\">\n <ajf-widget *ngIf=\"instance.visible\" [instance]=\"instance\"\n (filterWidgetChange)=\"filterWidgetChanged($event)\">\n </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":["i2","i3","i1","i4","wt","CoreService","CoreComponent","i3.AjfFilterWidgetComponent","i5","i9","CoreReportRenderer","i4.AjfReportWidget","CoreModule"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AjfSignature } from '@ajf/core/signature';
1
+ import { AjfSignature, canvasToIndexedPngDataUrl } from '@ajf/core/signature';
2
2
  import * as i0 from '@angular/core';
3
3
  import { forwardRef, ChangeDetectionStrategy, ViewEncapsulation, Component, NgModule } from '@angular/core';
4
4
  import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
@@ -60,8 +60,8 @@ class AjfSignatureComponent extends AjfSignature {
60
60
  }
61
61
  this.isDrawn = false;
62
62
  this.value = {
63
- name: 'signature.webp',
64
- type: 'image/webp',
63
+ name: 'signature.png',
64
+ type: 'image/png',
65
65
  signature: true,
66
66
  size: undefined,
67
67
  content: undefined,
@@ -74,12 +74,13 @@ class AjfSignatureComponent extends AjfSignature {
74
74
  */
75
75
  accept() {
76
76
  if (this.sigPadElement != null) {
77
- const signatureDataUrl = this.sigPadElement.toDataURL('image/webp', 0.5);
78
- const head = 'data:image/webp;base64,';
77
+ // const signatureDataUrl = this.sigPadElement.toDataURL('image/png');
78
+ const signatureDataUrl = canvasToIndexedPngDataUrl(this.sigPadElement);
79
+ const head = 'data:image/png;base64,';
79
80
  const imgFileSize = Math.round(((signatureDataUrl.length - head.length) * 3) / 4);
80
81
  this.value = {
81
- name: 'signature.webp',
82
- type: 'image/webp',
82
+ name: 'signature.png',
83
+ type: 'image/png',
83
84
  signature: true,
84
85
  size: imgFileSize,
85
86
  content: signatureDataUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"ajf-material-signature.mjs","sources":["../../../projects/material/signature/src/signature.ts","../../../projects/material/signature/src/signature.html","../../../projects/material/signature/src/signature-module.ts","../../../projects/material/signature/src/public_api.ts","../../../projects/material/signature/src/ajf-material-signature.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 {AjfSignature} from '@ajf/core/signature';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n forwardRef,\n OnDestroy,\n Renderer2,\n ViewEncapsulation,\n} from '@angular/core';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\n\nexport const SIGNATURE_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AjfSignatureComponent),\n multi: true,\n};\n\n/**\n * Ajf signature component.\n */\n@Component({\n selector: 'ajf-signature',\n templateUrl: 'signature.html',\n styleUrls: ['signature.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SIGNATURE_CONTROL_VALUE_ACCESSOR],\n})\nexport class AjfSignatureComponent extends AjfSignature implements OnDestroy, AfterViewInit {\n constructor(cdr: ChangeDetectorRef, renderer: Renderer2, private _sanitizer: DomSanitizer) {\n super(cdr, renderer);\n }\n\n ngAfterViewInit(): void {\n this.sigPadElement = this.sigPad.nativeElement;\n this.context = this.sigPadElement?.getContext('2d') ?? null;\n }\n\n /**\n * Clears the signature value and preview (keeps the old url to delete old signature from storage)\n */\n clear() {\n if (this.context != null && this.sigPadElement != null) {\n this.context.clearRect(0, 0, this.sigPadElement.width, this.sigPadElement.height);\n this.context.beginPath();\n }\n this.isDrawn = false;\n this.value = {\n name: 'signature.webp',\n type: 'image/webp',\n signature: true,\n size: undefined,\n content: undefined,\n url: this.value?.url ?? undefined,\n deleteUrl: true,\n };\n }\n\n /**\n * Accepts the new signature from the canvas and sets it as field value (keeps the old url to delete old signature from storage)\n */\n accept() {\n if (this.sigPadElement != null) {\n const signatureDataUrl = this.sigPadElement.toDataURL('image/webp', 0.5);\n\n const head = 'data:image/webp;base64,';\n const imgFileSize = Math.round(((signatureDataUrl.length - head.length) * 3) / 4);\n\n this.value = {\n name: 'signature.webp',\n type: 'image/webp',\n signature: true,\n size: imgFileSize,\n content: signatureDataUrl,\n url: this.value?.url ?? undefined,\n deleteUrl: false,\n };\n }\n }\n\n /**\n * Sanitizes signature image url\n */\n get safeImageSrc(): SafeUrl | string | null {\n if (!this.value) return null;\n if (!this.value.content && this.value.deleteUrl) return null;\n\n const rawUrl =\n this.value.content && this.value.content.length ? this.value.content : this.value.url;\n if (!rawUrl) return null;\n\n const sanitizedUrl = this._sanitizer.bypassSecurityTrustUrl(rawUrl);\n return sanitizedUrl;\n }\n\n ngOnDestroy(): void {\n return;\n }\n}\n","<div class=\"ajf-signature-container\">\n <p class=\"ajf-signature-text\">{{'Please sign here'|transloco}}</p>\n <canvas\n class=\"ajf-signature-canvas\"\n #sigPad\n (mousedown)=\"onMouseDown($event)\"\n (mousemove)=\"onMouseMove($event)\"\n (touchstart)=\"onMouseDown($event)\"\n (touchmove)=\"onMouseMove($event)\"\n ></canvas>\n <div class=\"ajf-signature-actions\">\n <button mat-fab (click)=\"clear()\" class=\"ajf-signature-action-clear\">\n <mat-icon>close</mat-icon>\n </button>\n <button mat-fab (click)=\"accept()\" color=\"primary\" [disabled]=\"!isDrawn\" class=\"ajf-signature-action-accept\">\n <mat-icon>check</mat-icon>\n </button>\n </div>\n\n <img class=\"ajf-signature-preview\" [src]=\"safeImageSrc\" />\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 {AjfCommonModule} from '@ajf/core/common';\nimport {AjfTranslocoModule} from '@ajf/core/transloco';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatIconModule} from '@angular/material/icon';\n\nimport {AjfSignatureComponent} from './signature';\nimport {FormsModule} from '@angular/forms';\n\n@NgModule({\n imports: [\n AjfCommonModule,\n AjfTranslocoModule,\n CommonModule,\n FormsModule,\n MatButtonModule,\n MatIconModule,\n ],\n declarations: [AjfSignatureComponent],\n exports: [AjfSignatureComponent],\n})\nexport class AjfSignatureModule {}\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 './signature';\nexport * from './signature-module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ajf-material-signature.mjs","sources":["../../../projects/material/signature/src/signature.ts","../../../projects/material/signature/src/signature.html","../../../projects/material/signature/src/signature-module.ts","../../../projects/material/signature/src/public_api.ts","../../../projects/material/signature/src/ajf-material-signature.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 {AjfSignature, canvasToIndexedPngDataUrl} from '@ajf/core/signature';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n forwardRef,\n OnDestroy,\n Renderer2,\n ViewEncapsulation,\n} from '@angular/core';\nimport {NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {DomSanitizer, SafeUrl} from '@angular/platform-browser';\n\nexport const SIGNATURE_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AjfSignatureComponent),\n multi: true,\n};\n\n/**\n * Ajf signature component.\n */\n@Component({\n selector: 'ajf-signature',\n templateUrl: 'signature.html',\n styleUrls: ['signature.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SIGNATURE_CONTROL_VALUE_ACCESSOR],\n})\nexport class AjfSignatureComponent extends AjfSignature implements OnDestroy, AfterViewInit {\n constructor(cdr: ChangeDetectorRef, renderer: Renderer2, private _sanitizer: DomSanitizer) {\n super(cdr, renderer);\n }\n\n ngAfterViewInit(): void {\n this.sigPadElement = this.sigPad.nativeElement;\n this.context = this.sigPadElement?.getContext('2d') ?? null;\n }\n\n /**\n * Clears the signature value and preview (keeps the old url to delete old signature from storage)\n */\n clear() {\n if (this.context != null && this.sigPadElement != null) {\n this.context.clearRect(0, 0, this.sigPadElement.width, this.sigPadElement.height);\n this.context.beginPath();\n }\n this.isDrawn = false;\n this.value = {\n name: 'signature.png',\n type: 'image/png',\n signature: true,\n size: undefined,\n content: undefined,\n url: this.value?.url ?? undefined,\n deleteUrl: true,\n };\n }\n\n /**\n * Accepts the new signature from the canvas and sets it as field value (keeps the old url to delete old signature from storage)\n */\n accept() {\n if (this.sigPadElement != null) {\n // const signatureDataUrl = this.sigPadElement.toDataURL('image/png');\n const signatureDataUrl = canvasToIndexedPngDataUrl(this.sigPadElement);\n\n const head = 'data:image/png;base64,';\n const imgFileSize = Math.round(((signatureDataUrl.length - head.length) * 3) / 4);\n\n this.value = {\n name: 'signature.png',\n type: 'image/png',\n signature: true,\n size: imgFileSize,\n content: signatureDataUrl,\n url: this.value?.url ?? undefined,\n deleteUrl: false,\n };\n }\n }\n\n /**\n * Sanitizes signature image url\n */\n get safeImageSrc(): SafeUrl | string | null {\n if (!this.value) return null;\n if (!this.value.content && this.value.deleteUrl) return null;\n\n const rawUrl =\n this.value.content && this.value.content.length ? this.value.content : this.value.url;\n if (!rawUrl) return null;\n\n const sanitizedUrl = this._sanitizer.bypassSecurityTrustUrl(rawUrl);\n return sanitizedUrl;\n }\n\n ngOnDestroy(): void {\n return;\n }\n}\n","<div class=\"ajf-signature-container\">\n <p class=\"ajf-signature-text\">{{'Please sign here'|transloco}}</p>\n <canvas\n class=\"ajf-signature-canvas\"\n #sigPad\n (mousedown)=\"onMouseDown($event)\"\n (mousemove)=\"onMouseMove($event)\"\n (touchstart)=\"onMouseDown($event)\"\n (touchmove)=\"onMouseMove($event)\"\n ></canvas>\n <div class=\"ajf-signature-actions\">\n <button mat-fab (click)=\"clear()\" class=\"ajf-signature-action-clear\">\n <mat-icon>close</mat-icon>\n </button>\n <button mat-fab (click)=\"accept()\" color=\"primary\" [disabled]=\"!isDrawn\" class=\"ajf-signature-action-accept\">\n <mat-icon>check</mat-icon>\n </button>\n </div>\n\n <img class=\"ajf-signature-preview\" [src]=\"safeImageSrc\" />\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 {AjfCommonModule} from '@ajf/core/common';\nimport {AjfTranslocoModule} from '@ajf/core/transloco';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatIconModule} from '@angular/material/icon';\n\nimport {AjfSignatureComponent} from './signature';\nimport {FormsModule} from '@angular/forms';\n\n@NgModule({\n imports: [\n AjfCommonModule,\n AjfTranslocoModule,\n CommonModule,\n FormsModule,\n MatButtonModule,\n MatIconModule,\n ],\n declarations: [AjfSignatureComponent],\n exports: [AjfSignatureComponent],\n})\nexport class AjfSignatureModule {}\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 './signature';\nexport * from './signature-module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}