@elderbyte/ngx-starter 14.4.0-beta.18 → 14.4.0-beta.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/data-view/base/data-view-options-provider-binding.mjs +63 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +53 -10
- package/esm2020/lib/components/data-view/base/elder-data-view-options-provider.mjs +44 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-options.mjs +42 -0
- package/esm2020/lib/components/data-view/base/public_api.mjs +5 -0
- package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +8 -22
- package/esm2020/lib/components/data-view/public_api.mjs +2 -2
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +9 -43
- package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +1 -1
- package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +119 -0
- package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +137 -0
- package/esm2020/lib/components/iframes/elder-iframe.module.mjs +18 -6
- package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +1 -1
- package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +56 -30
- package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +1 -1
- package/esm2020/lib/components/iframes/iframe.service.mjs +2 -2
- package/esm2020/lib/components/iframes/typed-event-message.mjs +42 -0
- package/esm2020/lib/components/select/elder-select.module.mjs +2 -2
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +21 -39
- package/fesm2015/elderbyte-ngx-starter.mjs +1764 -1346
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +1784 -1368
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/components/data-view/base/data-view-options-provider-binding.d.ts +39 -0
- package/lib/components/data-view/base/elder-data-view-base.d.ts +29 -6
- package/lib/components/data-view/base/elder-data-view-options-provider.d.ts +38 -0
- package/lib/components/data-view/base/elder-data-view-options.d.ts +33 -0
- package/lib/components/data-view/base/public_api.d.ts +4 -0
- package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +4 -6
- package/lib/components/data-view/public_api.d.ts +1 -1
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +5 -19
- package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +66 -0
- package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +62 -0
- package/lib/components/iframes/elder-iframe.module.d.ts +14 -10
- package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +28 -10
- package/lib/components/iframes/iframe.service.d.ts +3 -3
- package/lib/components/iframes/typed-event-message.d.ts +26 -0
- package/lib/components/select/elder-select.module.d.ts +1 -1
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +7 -27
- package/package.json +1 -1
- package/src/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.scss +0 -0
- package/esm2020/lib/components/data-view/base/elder-data-view-base.module.mjs +0 -18
- package/esm2020/lib/components/iframes/iframe-message.mjs +0 -2
- package/lib/components/data-view/base/elder-data-view-base.module.d.ts +0 -9
- package/lib/components/iframes/iframe-message.d.ts +0 -5
|
@@ -131,7 +131,7 @@ export class ElderLocalizedInputTableComponent extends FormFieldBaseComponent {
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
ElderLocalizedInputTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderLocalizedInputTableComponent, deps: [{ token: i1.ElderToastService }, { token: i2.ElderLanguageService }], target: i0.ɵɵFactoryTarget.Component });
|
|
134
|
-
ElderLocalizedInputTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ElderLocalizedInputTableComponent, selector: "elder-localized-input-table", inputs: { dense: "dense", float: "float", embedded: "embedded", textColumns: "textColumns", defaultLanguageTags: "defaultLanguageTags" }, providers: buildFormIntegrationProviders(ElderLocalizedInputTableComponent), queries: [{ propertyName: "textColumnsQuery", predicate: ElderLocalizedTextColumnDirective }], usesInheritance: true, ngImport: i0, template: "<div fxLayout=\"column\" fxFill>\n <elder-table matSort fxFlex\n [data]=\"data\"\n [selectionVisible]=\"true\"\n [selectionMultiEnabled]=\"true\"\n [dense]=\"dense\"\n [float]=\"float\"\n [embedded]=\"embedded\"\n >\n\n <elder-data-toolbar\n *elderTableToolbar\n [canAdd]=\"!isLocked\"\n [canRemove]=\"!isLocked\"\n [canMore]=\"false\"\n (requestNew)=\"onNewRequested()\"\n (requestRemove)=\"onRemoveRequested($event)\"\n >\n\n <ng-template elderToolbarContent=\"left.actions\">\n <div fxLayout=\"column\" fxLayoutAlign=\"start center\">\n <h4 elderCardSubtitle style=\"margin: 0\">{{label ?? placeholder}}</h4>\n </div>\n </ng-template>\n\n </elder-data-toolbar>\n\n <ng-container matColumnDef=\"locale\">\n <th mat-header-cell *matHeaderCellDef style=\"width: 100px\" mat-sort-header>Locale</th>\n <td mat-cell *matCellDef=\"let localized\">\n <mat-chip-list><mat-chip>{{localized.locale}}</mat-chip></mat-chip-list>\n </td>\n </ng-container>\n\n <ng-container *ngFor=\"let textColumn of textColumns$ | async\" matColumnDef=\"{{textColumn.name}}\">\n <th mat-header-cell *matHeaderCellDef>{{textColumn.title | translate}}</th>\n <td mat-cell *matCellDef=\"let localized\">\n <mat-form-field class=\"full-width\">\n <input\n matInput\n type=\"text\"\n name=\"i18n-{{localized.locale}}-{{textColumn.name}}\"\n [ngModel]=\"localized[textColumn.name]\" [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"onColumnTextUpdated(localized, textColumn, $event)\"\n [required]=\"required && textColumn.required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n />\n <mat-hint>{{textColumn.title | translate}} ({{localized.locale}})</mat-hint>\n <mat-error>Required</mat-error>\n </mat-form-field>\n </td>\n </ng-container>\n\n </elder-table>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i7.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i10.ElderTableComponent, selector: "elder-table, ebs-table", inputs: ["idField", "removingField", "hiddenField", "pageSizeOptions", "
|
|
134
|
+
ElderLocalizedInputTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ElderLocalizedInputTableComponent, selector: "elder-localized-input-table", inputs: { dense: "dense", float: "float", embedded: "embedded", textColumns: "textColumns", defaultLanguageTags: "defaultLanguageTags" }, providers: buildFormIntegrationProviders(ElderLocalizedInputTableComponent), queries: [{ propertyName: "textColumnsQuery", predicate: ElderLocalizedTextColumnDirective }], usesInheritance: true, ngImport: i0, template: "<div fxLayout=\"column\" fxFill>\n <elder-table matSort fxFlex\n [data]=\"data\"\n [selectionVisible]=\"true\"\n [selectionMultiEnabled]=\"true\"\n [dense]=\"dense\"\n [float]=\"float\"\n [embedded]=\"embedded\"\n >\n\n <elder-data-toolbar\n *elderTableToolbar\n [canAdd]=\"!isLocked\"\n [canRemove]=\"!isLocked\"\n [canMore]=\"false\"\n (requestNew)=\"onNewRequested()\"\n (requestRemove)=\"onRemoveRequested($event)\"\n >\n\n <ng-template elderToolbarContent=\"left.actions\">\n <div fxLayout=\"column\" fxLayoutAlign=\"start center\">\n <h4 elderCardSubtitle style=\"margin: 0\">{{label ?? placeholder}}</h4>\n </div>\n </ng-template>\n\n </elder-data-toolbar>\n\n <ng-container matColumnDef=\"locale\">\n <th mat-header-cell *matHeaderCellDef style=\"width: 100px\" mat-sort-header>Locale</th>\n <td mat-cell *matCellDef=\"let localized\">\n <mat-chip-list><mat-chip>{{localized.locale}}</mat-chip></mat-chip-list>\n </td>\n </ng-container>\n\n <ng-container *ngFor=\"let textColumn of textColumns$ | async\" matColumnDef=\"{{textColumn.name}}\">\n <th mat-header-cell *matHeaderCellDef>{{textColumn.title | translate}}</th>\n <td mat-cell *matCellDef=\"let localized\">\n <mat-form-field class=\"full-width\">\n <input\n matInput\n type=\"text\"\n name=\"i18n-{{localized.locale}}-{{textColumn.name}}\"\n [ngModel]=\"localized[textColumn.name]\" [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"onColumnTextUpdated(localized, textColumn, $event)\"\n [required]=\"required && textColumn.required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n />\n <mat-hint>{{textColumn.title | translate}} ({{localized.locale}})</mat-hint>\n <mat-error>Required</mat-error>\n </mat-form-field>\n </td>\n </ng-container>\n\n </elder-table>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i5.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i7.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i9.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i10.ElderTableComponent, selector: "elder-table, ebs-table", inputs: ["idField", "removingField", "hiddenField", "pageSizeOptions", "keepSelection", "showFooter", "toolbarTemplate", "data", "displayedColumns", "selectionVisible"] }, { kind: "directive", type: i11.ElderTableToolbarDirective, selector: "[elderTableToolbar]" }, { kind: "component", type: i12.ElderDataToolbarComponent, selector: "elder-data-toolbar", inputs: ["canAdd", "canRemove", "canMore", "confirmRemoval", "keepSelectionAfterRemoval", "selectionModel"], outputs: ["requestNew", "requestRemove"] }, { kind: "directive", type: i12.ElderToolbarContentDirective, selector: "[elderToolbarContent]", inputs: ["elderToolbarContent"] }, { kind: "component", type: i13.MatChipList, selector: "mat-chip-list", inputs: ["role", "aria-describedby", "errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { kind: "directive", type: i13.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "role", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { kind: "directive", type: i14.ElderCardSubtitleDirective, selector: "elder-card-subtitle, [elder-card-subtitle], [elderCardSubtitle]" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i15.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
135
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderLocalizedInputTableComponent, decorators: [{
|
|
136
136
|
type: Component,
|
|
137
137
|
args: [{ selector: 'elder-localized-input-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderLocalizedInputTableComponent), template: "<div fxLayout=\"column\" fxFill>\n <elder-table matSort fxFlex\n [data]=\"data\"\n [selectionVisible]=\"true\"\n [selectionMultiEnabled]=\"true\"\n [dense]=\"dense\"\n [float]=\"float\"\n [embedded]=\"embedded\"\n >\n\n <elder-data-toolbar\n *elderTableToolbar\n [canAdd]=\"!isLocked\"\n [canRemove]=\"!isLocked\"\n [canMore]=\"false\"\n (requestNew)=\"onNewRequested()\"\n (requestRemove)=\"onRemoveRequested($event)\"\n >\n\n <ng-template elderToolbarContent=\"left.actions\">\n <div fxLayout=\"column\" fxLayoutAlign=\"start center\">\n <h4 elderCardSubtitle style=\"margin: 0\">{{label ?? placeholder}}</h4>\n </div>\n </ng-template>\n\n </elder-data-toolbar>\n\n <ng-container matColumnDef=\"locale\">\n <th mat-header-cell *matHeaderCellDef style=\"width: 100px\" mat-sort-header>Locale</th>\n <td mat-cell *matCellDef=\"let localized\">\n <mat-chip-list><mat-chip>{{localized.locale}}</mat-chip></mat-chip-list>\n </td>\n </ng-container>\n\n <ng-container *ngFor=\"let textColumn of textColumns$ | async\" matColumnDef=\"{{textColumn.name}}\">\n <th mat-header-cell *matHeaderCellDef>{{textColumn.title | translate}}</th>\n <td mat-cell *matCellDef=\"let localized\">\n <mat-form-field class=\"full-width\">\n <input\n matInput\n type=\"text\"\n name=\"i18n-{{localized.locale}}-{{textColumn.name}}\"\n [ngModel]=\"localized[textColumn.name]\" [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"onColumnTextUpdated(localized, textColumn, $event)\"\n [required]=\"required && textColumn.required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n />\n <mat-hint>{{textColumn.title | translate}} ({{localized.locale}})</mat-hint>\n <mat-error>Required</mat-error>\n </mat-form-field>\n </td>\n </ng-container>\n\n </elder-table>\n</div>\n" }]
|
package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, Optional, ViewChild } from '@angular/core';
|
|
2
|
+
import { IframeHostComponent } from '../../iframe-host/iframe-host.component';
|
|
3
|
+
import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
|
|
4
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
5
|
+
import { DataViewMessage, DataViewSelectionInit } from '../../typed-event-message';
|
|
6
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../../../common/selection/selection-model";
|
|
9
|
+
import * as i2 from "@angular/flex-layout/flex";
|
|
10
|
+
import * as i3 from "../../iframe-host/iframe-host.component";
|
|
11
|
+
/**
|
|
12
|
+
* Container for displaying a remote data view in an iframe.
|
|
13
|
+
* Provides capabilities to communicate between remote data view (child)
|
|
14
|
+
* and iframe parent.
|
|
15
|
+
*/
|
|
16
|
+
export class DataViewIframeComponent {
|
|
17
|
+
/***************************************************************************
|
|
18
|
+
* *
|
|
19
|
+
* Constructor *
|
|
20
|
+
* *
|
|
21
|
+
**************************************************************************/
|
|
22
|
+
constructor(selectionModel) {
|
|
23
|
+
this.selectionModel = selectionModel;
|
|
24
|
+
/***************************************************************************
|
|
25
|
+
* *
|
|
26
|
+
* Fields *
|
|
27
|
+
* *
|
|
28
|
+
**************************************************************************/
|
|
29
|
+
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
30
|
+
this._dataViewOptions$ = new BehaviorSubject(null);
|
|
31
|
+
this._destroy$ = new Subject();
|
|
32
|
+
}
|
|
33
|
+
/***************************************************************************
|
|
34
|
+
* *
|
|
35
|
+
* Life Cycle *
|
|
36
|
+
* *
|
|
37
|
+
**************************************************************************/
|
|
38
|
+
ngOnInit() {
|
|
39
|
+
}
|
|
40
|
+
ngAfterViewInit() {
|
|
41
|
+
// iframe is only available after view init
|
|
42
|
+
this.setupDataViewOptionsBridge(this.iframeHost);
|
|
43
|
+
}
|
|
44
|
+
ngOnDestroy() {
|
|
45
|
+
this._destroy$.next();
|
|
46
|
+
this._destroy$.complete();
|
|
47
|
+
}
|
|
48
|
+
/***************************************************************************
|
|
49
|
+
* *
|
|
50
|
+
* Properties *
|
|
51
|
+
* *
|
|
52
|
+
**************************************************************************/
|
|
53
|
+
get dataViewOptions() {
|
|
54
|
+
return this._dataViewOptions$.getValue();
|
|
55
|
+
}
|
|
56
|
+
set dataViewOptions(options) {
|
|
57
|
+
this._dataViewOptions$.next(options);
|
|
58
|
+
}
|
|
59
|
+
get dataViewOptions$() {
|
|
60
|
+
return this._dataViewOptions$.asObservable();
|
|
61
|
+
}
|
|
62
|
+
/***************************************************************************
|
|
63
|
+
* *
|
|
64
|
+
* Public API *
|
|
65
|
+
* *
|
|
66
|
+
**************************************************************************/
|
|
67
|
+
onMessageFromChild(message) {
|
|
68
|
+
if (DataViewMessage.isOfType(message)) {
|
|
69
|
+
switch (message.type) {
|
|
70
|
+
case 'SELECTION_SELECTED':
|
|
71
|
+
this.handleSelectionMessage(message.data);
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
sendMessageToChild(message) {
|
|
77
|
+
this.log.debug("Sending message to iframe child:", message);
|
|
78
|
+
this.iframeHost.sendMessageToChild(message);
|
|
79
|
+
}
|
|
80
|
+
/***************************************************************************
|
|
81
|
+
* *
|
|
82
|
+
* Private Methods *
|
|
83
|
+
* *
|
|
84
|
+
**************************************************************************/
|
|
85
|
+
handleSelectionMessage(dataViewSelection) {
|
|
86
|
+
if (this.selectionModel) {
|
|
87
|
+
this.selectionModel.replaceSelection(dataViewSelection.selection);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
setupDataViewOptionsBridge(iframeHost) {
|
|
91
|
+
combineLatest([
|
|
92
|
+
this._dataViewOptions$,
|
|
93
|
+
iframeHost.iframeState$
|
|
94
|
+
]).pipe(takeUntil(this._destroy$), filter(([options, state]) => !!options && state.hasLoaded)).subscribe(([options, state]) => this.sendMessageToChild(this.buildDataViewInitMessage(options, this.initialSelection)));
|
|
95
|
+
}
|
|
96
|
+
buildDataViewInitMessage(options, initialSelection) {
|
|
97
|
+
return DataViewMessage.initialSelection(new DataViewSelectionInit(options, initialSelection, this.idField));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
DataViewIframeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DataViewIframeComponent, deps: [{ token: i1.SelectionModel, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
101
|
+
DataViewIframeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: DataViewIframeComponent, selector: "elder-data-view-iframe", inputs: { srcUrl: "srcUrl", idField: "idField", initialSelection: "initialSelection", dataViewOptions: "dataViewOptions" }, viewQueries: [{ propertyName: "iframeHost", first: true, predicate: IframeHostComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"column\" fxFill>\n\n <elder-i-frame-host fxFlex\n [iframeParams]=\"{srcUrl: srcUrl, hideActionBar: true}\"\n (message)=\"onMessageFromChild($event)\">\n </elder-i-frame-host>\n\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i3.IframeHostComponent, selector: "elder-i-frame-host", inputs: ["iframeParams"], outputs: ["message", "close"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DataViewIframeComponent, decorators: [{
|
|
103
|
+
type: Component,
|
|
104
|
+
args: [{ selector: 'elder-data-view-iframe', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div fxLayout=\"column\" fxFill>\n\n <elder-i-frame-host fxFlex\n [iframeParams]=\"{srcUrl: srcUrl, hideActionBar: true}\"\n (message)=\"onMessageFromChild($event)\">\n </elder-i-frame-host>\n\n</div>\n" }]
|
|
105
|
+
}], ctorParameters: function () { return [{ type: i1.SelectionModel, decorators: [{
|
|
106
|
+
type: Optional
|
|
107
|
+
}] }]; }, propDecorators: { srcUrl: [{
|
|
108
|
+
type: Input
|
|
109
|
+
}], idField: [{
|
|
110
|
+
type: Input
|
|
111
|
+
}], initialSelection: [{
|
|
112
|
+
type: Input
|
|
113
|
+
}], iframeHost: [{
|
|
114
|
+
type: ViewChild,
|
|
115
|
+
args: [IframeHostComponent]
|
|
116
|
+
}], dataViewOptions: [{
|
|
117
|
+
type: Input
|
|
118
|
+
}] } });
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1RSxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZUFBZSxFQUFxQixxQkFBcUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBSW5EOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sdUJBQXVCO0lBMEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDc0IsY0FBbUM7UUFBbkMsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBL0J6RDs7OztvRkFJNEU7UUFFM0QsUUFBRyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFD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QUFDLE1BQU07OzBCQW1DNUMsUUFBUTs0Q0FsQkosTUFBTTtzQkFEWixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBNENuQixlQUFlO3NCQUR6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJZnJhbWVIb3N0Q29tcG9uZW50fSBmcm9tICcuLi8uLi9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQnO1xuaW1wb3J0IHtTZWxlY3Rpb25Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL3NlbGVjdGlvbi9zZWxlY3Rpb24tbW9kZWwnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtEYXRhVmlld01lc3NhZ2UsIERhdGFWaWV3U2VsZWN0aW9uLCBEYXRhVmlld1NlbGVjdGlvbkluaXQsIFR5cGVkRXZlbnRNZXNzYWdlfSBmcm9tICcuLi8uLi90eXBlZC1ldmVudC1tZXNzYWdlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyfSBmcm9tICcuLi8uLi8uLi9kYXRhLXZpZXcvYmFzZS9lbGRlci1kYXRhLXZpZXctb3B0aW9ucy1wcm92aWRlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zfSBmcm9tICcuLi8uLi8uLi9kYXRhLXZpZXcvYmFzZS9lbGRlci1kYXRhLXZpZXctb3B0aW9ucyc7XG5cbi8qKlxuICogQ29udGFpbmVyIGZvciBkaXNwbGF5aW5nIGEgcmVtb3RlIGRhdGEgdmlldyBpbiBhbiBpZnJhbWUuXG4gKiBQcm92aWRlcyBjYXBhYmlsaXRpZXMgdG8gY29tbXVuaWNhdGUgYmV0d2VlbiByZW1vdGUgZGF0YSB2aWV3IChjaGlsZClcbiAqIGFuZCBpZnJhbWUgcGFyZW50LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1kYXRhLXZpZXctaWZyYW1lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtdmlldy1pZnJhbWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLXZpZXctaWZyYW1lLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERhdGFWaWV3SWZyYW1lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhVmlld09wdGlvbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFbGRlckRhdGFWaWV3T3B0aW9ucz4obnVsbCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzcmNVcmw6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaWRGaWVsZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpbml0aWFsU2VsZWN0aW9uOiBhbnlbXTtcblxuICBAVmlld0NoaWxkKElmcmFtZUhvc3RDb21wb25lbnQpXG4gIHB1YmxpYyBpZnJhbWVIb3N0OiBJZnJhbWVIb3N0Q29tcG9uZW50O1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPGFueT5cbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIC8vIGlmcmFtZSBpcyBvbmx5IGF2YWlsYWJsZSBhZnRlciB2aWV3IGluaXRcbiAgICB0aGlzLnNldHVwRGF0YVZpZXdPcHRpb25zQnJpZGdlKHRoaXMuaWZyYW1lSG9zdCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFWaWV3T3B0aW9ucygpOiBFbGRlckRhdGFWaWV3T3B0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YVZpZXdPcHRpb25zKG9wdGlvbnM6IEVsZGVyRGF0YVZpZXdPcHRpb25zKSB7XG4gICAgdGhpcy5fZGF0YVZpZXdPcHRpb25zJC5uZXh0KG9wdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhVmlld09wdGlvbnMkKCk6IE9ic2VydmFibGU8RWxkZXJEYXRhVmlld09wdGlvbnM+IHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVZpZXdPcHRpb25zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvbk1lc3NhZ2VGcm9tQ2hpbGQobWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8YW55LGFueT4pOiB2b2lkIHtcbiAgICBpZiAoRGF0YVZpZXdNZXNzYWdlLmlzT2ZUeXBlKG1lc3NhZ2UpKXtcbiAgICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICAgIGNhc2UgJ1NFTEVDVElPTl9TRUxFQ1RFRCc6XG4gICAgICAgICAgdGhpcy5oYW5kbGVTZWxlY3Rpb25NZXNzYWdlKG1lc3NhZ2UuZGF0YSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBwdWJsaWMgc2VuZE1lc3NhZ2VUb0NoaWxkKG1lc3NhZ2U6IERhdGFWaWV3TWVzc2FnZTxhbnk+KSB7XG4gICAgdGhpcy5sb2cuZGVidWcoXCJTZW5kaW5nIG1lc3NhZ2UgdG8gaWZyYW1lIGNoaWxkOlwiLCBtZXNzYWdlKTtcbiAgICB0aGlzLmlmcmFtZUhvc3Quc2VuZE1lc3NhZ2VUb0NoaWxkKG1lc3NhZ2UpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZVNlbGVjdGlvbk1lc3NhZ2UoZGF0YVZpZXdTZWxlY3Rpb246IERhdGFWaWV3U2VsZWN0aW9uPGFueT4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlbCkge1xuICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5yZXBsYWNlU2VsZWN0aW9uKGRhdGFWaWV3U2VsZWN0aW9uLnNlbGVjdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cERhdGFWaWV3T3B0aW9uc0JyaWRnZShcbiAgICBpZnJhbWVIb3N0OiBJZnJhbWVIb3N0Q29tcG9uZW50XG4gICkge1xuICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5fZGF0YVZpZXdPcHRpb25zJCxcbiAgICAgIGlmcmFtZUhvc3QuaWZyYW1lU3RhdGUkXG4gICAgXSkucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICBmaWx0ZXIoKFtvcHRpb25zLCBzdGF0ZV0pID0+ICEhb3B0aW9ucyAmJiBzdGF0ZS5oYXNMb2FkZWQpXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICAoW29wdGlvbnMsIHN0YXRlXSkgPT4gdGhpcy5zZW5kTWVzc2FnZVRvQ2hpbGQoXG4gICAgICAgIHRoaXMuYnVpbGREYXRhVmlld0luaXRNZXNzYWdlKG9wdGlvbnMsIHRoaXMuaW5pdGlhbFNlbGVjdGlvbilcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGJ1aWxkRGF0YVZpZXdJbml0TWVzc2FnZShcbiAgICBvcHRpb25zOiBFbGRlckRhdGFWaWV3T3B0aW9ucyxcbiAgICBpbml0aWFsU2VsZWN0aW9uOiBhbnlbXVxuICApOiBEYXRhVmlld01lc3NhZ2U8RGF0YVZpZXdTZWxlY3Rpb25Jbml0PGFueT4+IHtcbiAgICByZXR1cm4gRGF0YVZpZXdNZXNzYWdlLmluaXRpYWxTZWxlY3Rpb24oXG4gICAgICBuZXcgRGF0YVZpZXdTZWxlY3Rpb25Jbml0KG9wdGlvbnMsIGluaXRpYWxTZWxlY3Rpb24sIHRoaXMuaWRGaWVsZClcbiAgICApO1xuICB9XG5cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4RmlsbD5cblxuICA8ZWxkZXItaS1mcmFtZS1ob3N0IGZ4RmxleFxuICAgICAgICAgICAgICAgICAgICAgIFtpZnJhbWVQYXJhbXNdPVwie3NyY1VybDogc3JjVXJsLCBoaWRlQWN0aW9uQmFyOiB0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgICAgKG1lc3NhZ2UpPVwib25NZXNzYWdlRnJvbUNoaWxkKCRldmVudClcIj5cbiAgPC9lbGRlci1pLWZyYW1lLWhvc3Q+XG5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Directive, HostListener, } from '@angular/core';
|
|
2
|
+
import { SelectionModel } from '../../../common/selection/selection-model';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { takeUntil } from 'rxjs/operators';
|
|
5
|
+
import { DataViewMessage, DataViewSelection } from '../typed-event-message';
|
|
6
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
7
|
+
import { ElderDataViewOptionsProvider } from '../../data-view/base/elder-data-view-options-provider';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../iframe.service";
|
|
10
|
+
import * as i2 from "../../../common/selection/selection-model";
|
|
11
|
+
import * as i3 from "../../data-view/base/elder-data-view-options-provider";
|
|
12
|
+
export function createSelectionModel() {
|
|
13
|
+
return new SelectionModel();
|
|
14
|
+
}
|
|
15
|
+
export function createDataOptionsProvider() {
|
|
16
|
+
return new ElderDataViewOptionsProvider();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* An adapter bridging communication between
|
|
20
|
+
* a data view displayed in an iframe and its parent.
|
|
21
|
+
*
|
|
22
|
+
* For example propagates selection model changes
|
|
23
|
+
* to the iframe parent.
|
|
24
|
+
*/
|
|
25
|
+
export class DataViewIframeAdapterDirective {
|
|
26
|
+
/***************************************************************************
|
|
27
|
+
* *
|
|
28
|
+
* Constructor *
|
|
29
|
+
* *
|
|
30
|
+
**************************************************************************/
|
|
31
|
+
constructor(iframeService, selectionModel, dataViewOptionsProvider) {
|
|
32
|
+
this.iframeService = iframeService;
|
|
33
|
+
this.selectionModel = selectionModel;
|
|
34
|
+
this.dataViewOptionsProvider = dataViewOptionsProvider;
|
|
35
|
+
/***************************************************************************
|
|
36
|
+
* *
|
|
37
|
+
* Fields *
|
|
38
|
+
* *
|
|
39
|
+
**************************************************************************/
|
|
40
|
+
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
41
|
+
this._destroy$ = new Subject();
|
|
42
|
+
selectionModel.selection.pipe(takeUntil(this._destroy$)).subscribe(selection => this.propagateSelectionToParent(selection));
|
|
43
|
+
}
|
|
44
|
+
/***************************************************************************
|
|
45
|
+
* *
|
|
46
|
+
* Listeners *
|
|
47
|
+
* *
|
|
48
|
+
**************************************************************************/
|
|
49
|
+
/**
|
|
50
|
+
* Listens for messages from parent window.
|
|
51
|
+
* Makes it possible to react upon messages from iframe parent.
|
|
52
|
+
*
|
|
53
|
+
* @param event message from parent window
|
|
54
|
+
*/
|
|
55
|
+
onWindowsMessage(event) {
|
|
56
|
+
this.log.debug('Received message event from parent:', event);
|
|
57
|
+
if (event) {
|
|
58
|
+
if (DataViewMessage.isOfType(event.data)) {
|
|
59
|
+
this.log.debug('Received data view message from parent:', event);
|
|
60
|
+
this.handleMessageFromParent(event.data);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
/***************************************************************************
|
|
66
|
+
* *
|
|
67
|
+
* Life Cycle *
|
|
68
|
+
* *
|
|
69
|
+
**************************************************************************/
|
|
70
|
+
ngOnInit() {
|
|
71
|
+
}
|
|
72
|
+
ngOnDestroy() {
|
|
73
|
+
this._destroy$.next();
|
|
74
|
+
this._destroy$.complete();
|
|
75
|
+
}
|
|
76
|
+
/***************************************************************************
|
|
77
|
+
* *
|
|
78
|
+
* Private Methods *
|
|
79
|
+
* *
|
|
80
|
+
**************************************************************************/
|
|
81
|
+
handleMessageFromParent(message) {
|
|
82
|
+
switch (message.type) {
|
|
83
|
+
case 'SELECTION_INIT':
|
|
84
|
+
this.initializeDataView(message.data);
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
initializeDataView(init) {
|
|
89
|
+
this.dataViewOptionsProvider.updateOptions(options => options
|
|
90
|
+
.withSorts(init.options.sorts)
|
|
91
|
+
.withFilters(init.options.filters));
|
|
92
|
+
this.selectionModel.keyGetterFn = (entity) => entity[init.idField];
|
|
93
|
+
this.selectionModel.isMultipleSelection = init.options.selectionMultiEnabled;
|
|
94
|
+
if (init.initialSelection) {
|
|
95
|
+
this.selectionModel.replaceSelection(init.initialSelection);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
propagateSelectionToParent(selection) {
|
|
99
|
+
this.log.debug('Propagating selection to iframe parent:', selection);
|
|
100
|
+
const message = this.buildSelectionMessage(selection);
|
|
101
|
+
this.iframeService.postDataMessage(message);
|
|
102
|
+
}
|
|
103
|
+
buildSelectionMessage(selection) {
|
|
104
|
+
return DataViewMessage.selection(new DataViewSelection(selection));
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
DataViewIframeAdapterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DataViewIframeAdapterDirective, deps: [{ token: i1.IframeService }, { token: i2.SelectionModel }, { token: i3.ElderDataViewOptionsProvider }], target: i0.ɵɵFactoryTarget.Directive });
|
|
108
|
+
DataViewIframeAdapterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: DataViewIframeAdapterDirective, selector: "[elderDataViewIframeAdapter]", host: { listeners: { "window:message": "onWindowsMessage($event)" } }, providers: [
|
|
109
|
+
{
|
|
110
|
+
provide: SelectionModel,
|
|
111
|
+
useFactory: createSelectionModel
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
provide: ElderDataViewOptionsProvider,
|
|
115
|
+
useFactory: createDataOptionsProvider
|
|
116
|
+
}
|
|
117
|
+
], ngImport: i0 });
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DataViewIframeAdapterDirective, decorators: [{
|
|
119
|
+
type: Directive,
|
|
120
|
+
args: [{
|
|
121
|
+
selector: '[elderDataViewIframeAdapter]',
|
|
122
|
+
providers: [
|
|
123
|
+
{
|
|
124
|
+
provide: SelectionModel,
|
|
125
|
+
useFactory: createSelectionModel
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
provide: ElderDataViewOptionsProvider,
|
|
129
|
+
useFactory: createDataOptionsProvider
|
|
130
|
+
}
|
|
131
|
+
]
|
|
132
|
+
}]
|
|
133
|
+
}], ctorParameters: function () { return [{ type: i1.IframeService }, { type: i2.SelectionModel }, { type: i3.ElderDataViewOptionsProvider }]; }, propDecorators: { onWindowsMessage: [{
|
|
134
|
+
type: HostListener,
|
|
135
|
+
args: ['window:message', ['$event']]
|
|
136
|
+
}] } });
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9kYXRhLXZpZXcvZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBRW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFjSCxNQUFNLE9BQU8sOEJBQThCO0lBWXpDOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixhQUE0QixFQUM1QixjQUFtQyxFQUNuQyx1QkFBcUQ7UUFGckQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBQ25DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7UUFuQnhFOzs7O29GQUk0RTtR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RSxPQUFPLEVBQUUsNEJBQTRCO1lBQ3JDLFVBQVUsRUFBRSx5QkFBeUI7U0FDdEM7S0FDRjsyRkFFVSw4QkFBOEI7a0JBYjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixVQUFVLEVBQUUsb0JBQW9CO3lCQUNqQzt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsNEJBQTRCOzRCQUNyQyxVQUFVLEVBQUUseUJBQXlCO3lCQUN0QztxQkFDRjtpQkFDRjs0S0E0Q1EsZ0JBQWdCO3NCQUR0QixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2VsZWN0aW9uTW9kZWx9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9zZWxlY3Rpb24vc2VsZWN0aW9uLW1vZGVsJztcbmltcG9ydCB7U3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3Rha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtEYXRhVmlld01lc3NhZ2UsIERhdGFWaWV3U2VsZWN0aW9uLCBEYXRhVmlld1NlbGVjdGlvbkluaXR9IGZyb20gJy4uL3R5cGVkLWV2ZW50LW1lc3NhZ2UnO1xuaW1wb3J0IHtJZnJhbWVTZXJ2aWNlfSBmcm9tICcuLi9pZnJhbWUuc2VydmljZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcn0gZnJvbSAnLi4vLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMtcHJvdmlkZXInO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0aW9uTW9kZWwoKTogU2VsZWN0aW9uTW9kZWw8YW55PiB7XG4gIHJldHVybiBuZXcgU2VsZWN0aW9uTW9kZWw8YW55PigpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGF0YU9wdGlvbnNQcm92aWRlcigpOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIG5ldyBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyKCk7XG59XG5cbi8qKlxuICogQW4gYWRhcHRlciBicmlkZ2luZyBjb21tdW5pY2F0aW9uIGJldHdlZW5cbiAqIGEgZGF0YSB2aWV3IGRpc3BsYXllZCBpbiBhbiBpZnJhbWUgYW5kIGl0cyBwYXJlbnQuXG4gKlxuICogRm9yIGV4YW1wbGUgcHJvcGFnYXRlcyBzZWxlY3Rpb24gbW9kZWwgY2hhbmdlc1xuICogdG8gdGhlIGlmcmFtZSBwYXJlbnQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckRhdGFWaWV3SWZyYW1lQWRhcHRlcl0nLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBTZWxlY3Rpb25Nb2RlbCxcbiAgICAgIHVzZUZhY3Rvcnk6IGNyZWF0ZVNlbGVjdGlvbk1vZGVsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgICAgdXNlRmFjdG9yeTogY3JlYXRlRGF0YU9wdGlvbnNQcm92aWRlclxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRhVmlld0lmcmFtZUFkYXB0ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlmcmFtZVNlcnZpY2U6IElmcmFtZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3Rpb25Nb2RlbDogU2VsZWN0aW9uTW9kZWw8YW55PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyXG4gICkge1xuICAgIHNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbi5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgc2VsZWN0aW9uID0+IHRoaXMucHJvcGFnYXRlU2VsZWN0aW9uVG9QYXJlbnQoc2VsZWN0aW9uKVxuICAgIClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciBtZXNzYWdlcyBmcm9tIHBhcmVudCB3aW5kb3cuXG4gICAqIE1ha2VzIGl0IHBvc3NpYmxlIHRvIHJlYWN0IHVwb24gbWVzc2FnZXMgZnJvbSBpZnJhbWUgcGFyZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnQgbWVzc2FnZSBmcm9tIHBhcmVudCB3aW5kb3dcbiAgICovXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzptZXNzYWdlJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uV2luZG93c01lc3NhZ2UoZXZlbnQ6IE1lc3NhZ2VFdmVudCk6IGJvb2xlYW4ge1xuICAgIHRoaXMubG9nLmRlYnVnKCdSZWNlaXZlZCBtZXNzYWdlIGV2ZW50IGZyb20gcGFyZW50OicsIGV2ZW50KTtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGlmIChEYXRhVmlld01lc3NhZ2UuaXNPZlR5cGUoZXZlbnQuZGF0YSkpIHtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoJ1JlY2VpdmVkIGRhdGEgdmlldyBtZXNzYWdlIGZyb20gcGFyZW50OicsIGV2ZW50KTtcbiAgICAgICAgdGhpcy5oYW5kbGVNZXNzYWdlRnJvbVBhcmVudChldmVudC5kYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZU1lc3NhZ2VGcm9tUGFyZW50KG1lc3NhZ2U6IERhdGFWaWV3TWVzc2FnZTxhbnksIGFueT4pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSAnU0VMRUNUSU9OX0lOSVQnOlxuICAgICAgICB0aGlzLmluaXRpYWxpemVEYXRhVmlldyhtZXNzYWdlLmRhdGEpXG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZURhdGFWaWV3KGluaXQ6IERhdGFWaWV3U2VsZWN0aW9uSW5pdDxhbnk+KTogdm9pZCB7XG5cbiAgICB0aGlzLmRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLnVwZGF0ZU9wdGlvbnMoXG4gICAgICBvcHRpb25zID0+IG9wdGlvbnNcbiAgICAgICAgLndpdGhTb3J0cyhpbml0Lm9wdGlvbnMuc29ydHMpXG4gICAgICAgIC53aXRoRmlsdGVycyhpbml0Lm9wdGlvbnMuZmlsdGVycylcbiAgICApXG5cbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmtleUdldHRlckZuID0gKGVudGl0eSkgPT4gZW50aXR5W2luaXQuaWRGaWVsZF07XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5pc011bHRpcGxlU2VsZWN0aW9uID0gaW5pdC5vcHRpb25zLnNlbGVjdGlvbk11bHRpRW5hYmxlZDtcbiAgICBpZiAoaW5pdC5pbml0aWFsU2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oaW5pdC5pbml0aWFsU2VsZWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHByb3BhZ2F0ZVNlbGVjdGlvblRvUGFyZW50KHNlbGVjdGlvbjogYW55W10pOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnUHJvcGFnYXRpbmcgc2VsZWN0aW9uIHRvIGlmcmFtZSBwYXJlbnQ6Jywgc2VsZWN0aW9uKTtcblxuICAgIGNvbnN0IG1lc3NhZ2UgPSB0aGlzLmJ1aWxkU2VsZWN0aW9uTWVzc2FnZShzZWxlY3Rpb24pO1xuICAgIHRoaXMuaWZyYW1lU2VydmljZS5wb3N0RGF0YU1lc3NhZ2UobWVzc2FnZSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkU2VsZWN0aW9uTWVzc2FnZShzZWxlY3Rpb246IGFueVtdKTogRGF0YVZpZXdNZXNzYWdlPGFueT4ge1xuICAgIHJldHVybiBEYXRhVmlld01lc3NhZ2Uuc2VsZWN0aW9uKG5ldyBEYXRhVmlld1NlbGVjdGlvbihzZWxlY3Rpb24pKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -11,20 +11,26 @@ import { IframeSideContentComponent } from './iframe-side-content/iframe-side-co
|
|
|
11
11
|
import { MatButtonModule } from '@angular/material/button';
|
|
12
12
|
import { ElderPipesModule } from '../../pipes/elder-pipes.module';
|
|
13
13
|
import { IframeCloseDirective } from './iframe-close.directive';
|
|
14
|
+
import { DataViewIframeComponent } from './data-view/data-view-iframe/data-view-iframe.component';
|
|
15
|
+
import { DataViewIframeAdapterDirective } from './data-view/data-view-iframe-adapter.directive';
|
|
14
16
|
import * as i0 from "@angular/core";
|
|
15
17
|
export * from './iframe.service';
|
|
16
18
|
export * from './iframe-close.directive';
|
|
17
19
|
export * from './iframe-host/iframe-host.component';
|
|
18
20
|
export * from './iframe-side-content/iframe-side-content.component';
|
|
19
21
|
export * from './iframe-dialog/iframe-dialog.component';
|
|
20
|
-
export * from './
|
|
22
|
+
export * from './typed-event-message';
|
|
23
|
+
export * from './data-view/data-view-iframe/data-view-iframe.component';
|
|
24
|
+
export * from './data-view/data-view-iframe-adapter.directive';
|
|
21
25
|
export class ElderIFrameModule {
|
|
22
26
|
}
|
|
23
27
|
ElderIFrameModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderIFrameModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
24
28
|
ElderIFrameModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.6", ngImport: i0, type: ElderIFrameModule, declarations: [IframeHostComponent,
|
|
25
29
|
IframeDialogComponent,
|
|
26
30
|
IframeSideContentComponent,
|
|
27
|
-
IframeCloseDirective
|
|
31
|
+
IframeCloseDirective,
|
|
32
|
+
DataViewIframeComponent,
|
|
33
|
+
DataViewIframeAdapterDirective], imports: [
|
|
28
34
|
// Angular
|
|
29
35
|
CommonModule,
|
|
30
36
|
RouterModule,
|
|
@@ -39,7 +45,9 @@ ElderIFrameModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
|
|
|
39
45
|
ElderPipesModule], exports: [IframeHostComponent,
|
|
40
46
|
IframeDialogComponent,
|
|
41
47
|
IframeSideContentComponent,
|
|
42
|
-
IframeCloseDirective
|
|
48
|
+
IframeCloseDirective,
|
|
49
|
+
DataViewIframeComponent,
|
|
50
|
+
DataViewIframeAdapterDirective] });
|
|
43
51
|
ElderIFrameModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderIFrameModule, imports: [
|
|
44
52
|
// Angular
|
|
45
53
|
CommonModule,
|
|
@@ -74,14 +82,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
74
82
|
IframeHostComponent,
|
|
75
83
|
IframeDialogComponent,
|
|
76
84
|
IframeSideContentComponent,
|
|
77
|
-
IframeCloseDirective
|
|
85
|
+
IframeCloseDirective,
|
|
86
|
+
DataViewIframeComponent,
|
|
87
|
+
DataViewIframeAdapterDirective
|
|
78
88
|
],
|
|
79
89
|
exports: [
|
|
80
90
|
IframeHostComponent,
|
|
81
91
|
IframeDialogComponent,
|
|
82
92
|
IframeSideContentComponent,
|
|
83
|
-
IframeCloseDirective
|
|
93
|
+
IframeCloseDirective,
|
|
94
|
+
DataViewIframeComponent,
|
|
95
|
+
DataViewIframeAdapterDirective
|
|
84
96
|
]
|
|
85
97
|
}]
|
|
86
98
|
}] });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItaWZyYW1lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9lbGRlci1pZnJhbWUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUMvRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDbEcsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7O0FBRTlGLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMseURBQXlELENBQUE7QUFDdkUsY0FBYyxnREFBZ0QsQ0FBQTtBQXNDOUQsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQWhCMUIsbUJBQW1CO1FBQ25CLHFCQUFxQjtRQUNyQiwwQkFBMEI7UUFDMUIsb0JBQW9CO1FBQ3BCLHVCQUF1QjtRQUN2Qiw4QkFBOEI7UUF0QjlCLFVBQVU7UUFDVixZQUFZO1FBQ1osWUFBWTtRQUNaLFdBQVc7UUFFWCxjQUFjO1FBQ2QsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFFZixtQkFBbUI7UUFDbkIsYUFBYTtRQUNiLGVBQWU7UUFFZixZQUFZO1FBQ1osZ0JBQWdCLGFBV2hCLG1CQUFtQjtRQUNuQixxQkFBcUI7UUFDckIsMEJBQTBCO1FBQzFCLG9CQUFvQjtRQUNwQix1QkFBdUI7UUFDdkIsOEJBQThCOytHQUdyQixpQkFBaUI7UUFqQzFCLFVBQVU7UUFDVixZQUFZO1FBQ1osWUFBWTtRQUNaLFdBQVc7UUFFWCxjQUFjO1FBQ2QsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFFZixtQkFBbUI7UUFDbkIsYUFBYTtRQUNiLGVBQWU7UUFFZixZQUFZO1FBQ1osZ0JBQWdCOzJGQW1CUCxpQkFBaUI7a0JBcEM3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFFUCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixXQUFXO3dCQUVYLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUVmLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixlQUFlO3dCQUVmLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNqQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLDBCQUEwQjt3QkFDMUIsb0JBQW9CO3dCQUNwQix1QkFBdUI7d0JBQ3ZCLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3dCQUN2Qiw4QkFBOEI7cUJBQy9CO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge0ZsZXhMYXlvdXRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Um91dGVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtJZnJhbWVIb3N0Q29tcG9uZW50fSBmcm9tICcuL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudCc7XG5pbXBvcnQge0lmcmFtZURpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9pZnJhbWUtZGlhbG9nL2lmcmFtZS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7SWZyYW1lU2lkZUNvbnRlbnRDb21wb25lbnR9IGZyb20gJy4vaWZyYW1lLXNpZGUtY29udGVudC9pZnJhbWUtc2lkZS1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7RWxkZXJQaXBlc01vZHVsZX0gZnJvbSAnLi4vLi4vcGlwZXMvZWxkZXItcGlwZXMubW9kdWxlJztcbmltcG9ydCB7SWZyYW1lQ2xvc2VEaXJlY3RpdmV9IGZyb20gJy4vaWZyYW1lLWNsb3NlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYXRhVmlld0lmcmFtZUNvbXBvbmVudCB9IGZyb20gJy4vZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQnO1xuaW1wb3J0IHtEYXRhVmlld0lmcmFtZUFkYXB0ZXJEaXJlY3RpdmV9IGZyb20gJy4vZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUtYWRhcHRlci5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2lmcmFtZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaWZyYW1lLWNsb3NlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2lmcmFtZS1zaWRlLWNvbnRlbnQvaWZyYW1lLXNpZGUtY29udGVudC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pZnJhbWUtZGlhbG9nL2lmcmFtZS1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtdmlldy9kYXRhLXZpZXctaWZyYW1lL2RhdGEtdmlldy1pZnJhbWUuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLXZpZXcvZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZSdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuXG4gICAgLy8gQW5ndWxhclxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG5cbiAgICAvLyBUaGlyZCBQYXJ0eVxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuXG4gICAgLy8gQW5ndWxhciBNYXRlcmlhbFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuXG4gICAgLy8gRWxkZXJCeXRlXG4gICAgRWxkZXJQaXBlc01vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBJZnJhbWVIb3N0Q29tcG9uZW50LFxuICAgIElmcmFtZURpYWxvZ0NvbXBvbmVudCxcbiAgICBJZnJhbWVTaWRlQ29udGVudENvbXBvbmVudCxcbiAgICBJZnJhbWVDbG9zZURpcmVjdGl2ZSxcbiAgICBEYXRhVmlld0lmcmFtZUNvbXBvbmVudCxcbiAgICBEYXRhVmlld0lmcmFtZUFkYXB0ZXJEaXJlY3RpdmVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIElmcmFtZUhvc3RDb21wb25lbnQsXG4gICAgSWZyYW1lRGlhbG9nQ29tcG9uZW50LFxuICAgIElmcmFtZVNpZGVDb250ZW50Q29tcG9uZW50LFxuICAgIElmcmFtZUNsb3NlRGlyZWN0aXZlLFxuICAgIERhdGFWaWV3SWZyYW1lQ29tcG9uZW50LFxuICAgIERhdGFWaWV3SWZyYW1lQWRhcHRlckRpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVySUZyYW1lTW9kdWxlIHtcbn1cbiJdfQ==
|
|
@@ -41,7 +41,7 @@ export class IframeDialogComponent {
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
IframeDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: IframeDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
-
IframeDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: IframeDialogComponent, selector: "elder-i-frame-dialog", ngImport: i0, template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" fxFill>\n\n <elder-i-frame-host fxFlex\n [iframeParams]=\"iFrameParams\"\n (close)=\"close($event)\">\n </elder-i-frame-host>\n\n</div>\n\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i4.IframeHostComponent, selector: "elder-i-frame-host", inputs: ["iframeParams"], outputs: ["
|
|
44
|
+
IframeDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: IframeDialogComponent, selector: "elder-i-frame-dialog", ngImport: i0, template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" fxFill>\n\n <elder-i-frame-host fxFlex\n [iframeParams]=\"iFrameParams\"\n (close)=\"close($event)\">\n </elder-i-frame-host>\n\n</div>\n\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i4.IframeHostComponent, selector: "elder-i-frame-host", inputs: ["iframeParams"], outputs: ["message", "close"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
45
45
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: IframeDialogComponent, decorators: [{
|
|
46
46
|
type: Component,
|
|
47
47
|
args: [{ selector: 'elder-i-frame-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"iframeParams$ | async as iFrameParams\" fxFill>\n\n <elder-i-frame-host fxFlex\n [iframeParams]=\"iFrameParams\"\n (close)=\"close($event)\">\n </elder-i-frame-host>\n\n</div>\n\n\n\n" }]
|