@kms-ngx-ui/presentational 16.8.5 → 16.10.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.
@@ -0,0 +1 @@
1
+ ["arrow-down", "arrow-left", "arrow-right", "arrow-top", "calendar", "cardealer", "checkbox_active", "checkbox_inactive", "checkbox_inner", "checkmark-circle", "checkmark-filled", "chevron-down", "chevron-left", "chevron-right", "chevron-top", "circle", "clock", "close", "cog", "collapse-right", "credit", "diamond", "download", "drag1", "edit-circle", "efficiency", "electro-cable", "end", "export-all", "facebook", "file-download", "file-upload", "floating_button", "floating_button_clear", "ic-car", "ic-invoice", "ic-policy", "ic_GEZ", "ic_abbrechen-filled", "ic_abbrechen", "ic_back", "ic_bereifung", "ic_bezeichnung", "ic_booking", "ic_car", "ic_check", "ic_co2", "ic_credit-card", "ic_edit", "ic_eye", "ic_eye_active", "ic_gkm", "ic_heart", "ic_heart_filled", "ic_historie", "ic_home", "ic_home_new", "ic_info", "ic_kraftstoff", "ic_language", "ic_laufleistung", "ic_left", "ic_lkm", "ic_lock", "ic_menu", "ic_minus", "ic_new-car", "ic_pickup", "ic_pin", "ic_plus", "ic_radiobutton_active", "ic_radiobutton_inactive", "ic_return", "ic_schaltung", "ic_settings", "ic_shops", "ic_slider", "ic_steuer_versicherung", "ic_used-car", "ic_vertrag", "ic_wartung_verschleiss", "ic_zulassung", "instagram", "linkedin", "mail", "map", "mileage", "palette", "pdf", "polestar", "position", "price-tag", "profile-filled", "profile", "profile2", "question-circle", "question-filled", "question", "search", "security", "start", "submenu-dots", "support", "trash", "tumblr", "twitter", "upload", "user-circle", "users", "whatsapp", "width", "xing", "youtube", "zahlung_active", "zahlungsanforderung"]
@@ -0,0 +1,18 @@
1
+ /**
2
+ * General Image Model
3
+ */
4
+ export class ImageSnippet {
5
+ constructor(src, fileName, srcType = ImageSourceType.ByteArray) {
6
+ this.src = src;
7
+ this.fileName = fileName;
8
+ this.srcType = srcType;
9
+ this.status = 'init';
10
+ }
11
+ }
12
+ export var ImageSourceType;
13
+ (function (ImageSourceType) {
14
+ ImageSourceType["Ident"] = "Idnet";
15
+ ImageSourceType["ByteArray"] = "ByteArray";
16
+ ImageSourceType["URL"] = "URL";
17
+ })(ImageSourceType || (ImageSourceType = {}));
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utc25pcHBldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi9tb2RlbHMvaW1hZ2Utc25pcHBldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBRXZCLFlBQ1MsR0FBVyxFQUNYLFFBQWdCLEVBQ2hCLFVBQVUsZUFBZSxDQUFDLFNBQVM7UUFGbkMsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUNYLGFBQVEsR0FBUixRQUFRLENBQVE7UUFDaEIsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7UUFKNUMsV0FBTSxHQUFHLE1BQU0sQ0FBQztJQUtiLENBQUM7Q0FDTDtBQUVELE1BQU0sQ0FBTixJQUFZLGVBSVg7QUFKRCxXQUFZLGVBQWU7SUFDekIsa0NBQWUsQ0FBQTtJQUNmLDBDQUF1QixDQUFBO0lBQ3ZCLDhCQUFXLENBQUE7QUFDYixDQUFDLEVBSlcsZUFBZSxLQUFmLGVBQWUsUUFJMUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYWwgSW1hZ2UgTW9kZWxcbiAqL1xuZXhwb3J0IGNsYXNzIEltYWdlU25pcHBldCB7XG4gIHN0YXR1cyA9ICdpbml0JztcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHNyYzogc3RyaW5nLFxuICAgIHB1YmxpYyBmaWxlTmFtZTogc3RyaW5nLFxuICAgIHB1YmxpYyBzcmNUeXBlID0gSW1hZ2VTb3VyY2VUeXBlLkJ5dGVBcnJheVxuICApIHt9XG59XG5cbmV4cG9ydCBlbnVtIEltYWdlU291cmNlVHlwZSB7XG4gIElkZW50ID0gJ0lkbmV0JyxcbiAgQnl0ZUFycmF5ID0gJ0J5dGVBcnJheScsXG4gIFVSTCA9ICdVUkwnLFxufVxuIl19
@@ -1,5 +1,6 @@
1
1
  export * from './iconSize.enum';
2
+ export * from './image-snippet.model';
2
3
  export * from './is-value.function';
3
4
  export * from './types/attached-file-dto.model';
4
5
  export * from './types/nullable.type';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ljb25TaXplLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9pcy12YWx1ZS5mdW5jdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2F0dGFjaGVkLWZpbGUtZHRvLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbnVsbGFibGUudHlwZSc7XG4iXX0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaWNvblNpemUuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2ltYWdlLXNuaXBwZXQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy12YWx1ZS5mdW5jdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2F0dGFjaGVkLWZpbGUtZHRvLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbnVsbGFibGUudHlwZSc7XG4iXX0=
@@ -21,20 +21,18 @@ export class IconComponent {
21
21
  this.IconSize = IconSize;
22
22
  this.Version = VERSION.full;
23
23
  this.timestamp = 0;
24
- this.iconToShow = this.icon;
25
24
  }
26
25
  ngOnInit() {
27
- this.iconToShow = this.icon;
28
26
  const d = new Date();
29
27
  const n = d.getTime();
30
28
  this.timestamp = n;
31
29
  }
32
30
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
33
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IconComponent, selector: "kms-icon", inputs: { icon: "icon", iconClass: "iconClass", iconStyle: "iconStyle", iconSize: "iconSize", size: "size", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + iconToShow\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IconComponent, selector: "kms-icon", inputs: { icon: "icon", iconClass: "iconClass", iconStyle: "iconStyle", iconSize: "iconSize", size: "size", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"'assets/sprite.svg?Version=' + Version + '#' + icon\"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
34
32
  }
35
33
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, decorators: [{
36
34
  type: Component,
37
- args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + iconToShow\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n" }]
35
+ args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"'assets/sprite.svg?Version=' + Version + '#' + icon\"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n" }]
38
36
  }], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { icon: [{
39
37
  type: Input
40
38
  }], iconClass: [{
@@ -48,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
48
46
  }], dontUseSprite: [{
49
47
  type: Input
50
48
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBUzNDLE1BQU0sT0FBTyxhQUFhO0lBK0N0QixZQUFtQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBNUIxQzs7O1dBR0c7UUFDTSxhQUFRLEdBQWEsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQVFoRDs7V0FFRztRQUVNLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRS9CLGFBQVEsR0FBRyxRQUFRLENBQUM7UUFDcEIsWUFBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFFaEIsY0FBUyxHQUFHLENBQUMsQ0FBQztRQVFqQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDNUIsTUFBTSxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNyQixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQzsrR0F4RFEsYUFBYTttR0FBYixhQUFhLDhMQ2hCMUIsa3dCQXNCQTs7NEZETmEsYUFBYTtrQkFOekIsU0FBUzsrQkFFSSxVQUFVO21HQVVYLElBQUk7c0JBQVosS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFNBQVM7c0JBQWpCLEtBQUs7Z0JBTUcsUUFBUTtzQkFBaEIsS0FBSztnQkFNRyxJQUFJO3NCQUFaLEtBQUs7Z0JBTUcsYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVkVSU0lPTiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IEljb25TaXplIH0gZnJvbSAnLi9pY29uU2l6ZS5lbnVtJztcbmltcG9ydCB7IFNpemVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NpemUuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgXG4gICAgc2VsZWN0b3I6ICdrbXMtaWNvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ljb24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICAvKipcbiAgICAgKiBSZXF1aXJlZDogTmFtZSBvZiB0aGUgU1ZHIGljb24gaW5zaWRlIHlvdXIgc3ByaXRlIHNoZWV0IGZpbGUgd2l0aCBuYW1lICdpY29ucy5zdmcnLlxuICAgICAqIFBhc3MgJ25vbmUnIGlmIG5vIGljb24gc2hvdWxkIGJlIHJlbmRlcmVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIGljb24hOiBzdHJpbmcgfCAnJztcblxuICAgIC8qKlxuICAgICAqIE9wdGlvbmFsOiBEaWZmZXJlbnQgYXBwZWFyYW5jZSB2aWEgQ1NTIGNsYXNzIGRlZmluZWQgaW4gdGhpcyBjb21wb25lbnTCtHMgc3R5bGUgc2hlZXQuXG4gICAgICovXG4gICAgQElucHV0KCkgaWNvbkNsYXNzITogc3RyaW5nIHwgJyc7XG5cbiAgICAvKipcbiAgICAgKiBPcHRpb25hbDogRGlmZmVyZW50IGFwcGVhcmFuY2UgdmlhIENTUyBpbmxpbmUgc3R5bGUuXG4gICAgICovXG4gICAgXG4gICAgQElucHV0KCkgaWNvblN0eWxlOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBPcHRpb25hbDogRGlmZmVyZW50IHNpemUgdmlhIENTUyBpbmxpbmUgc3R5bGUuXG4gICAgICogQGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2Ugc2l6ZSBpbnN0ZWFkXG4gICAgICovXG4gICAgQElucHV0KCkgaWNvblNpemU6IEljb25TaXplID0gSWNvblNpemUuRlVMTFNJWkU7XG5cbiAgICAvKipcbiAgICAgKiBPcHRpb25hbDogRGlmZmVyZW50IHNpemUgdmlhIENTUyBpbmxpbmUgc3R5bGUuXG4gICAgICogQGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2Ugc2l6ZSBpbnN0ZWFkXG4gICAgICovXG4gICAgQElucHV0KCkgc2l6ZT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIERvbnQgdXNlIGljb24gc3ByaXRlXG4gICAgICovXG4gICAgXG4gICAgQElucHV0KCkgZG9udFVzZVNwcml0ZSA9IGZhbHNlO1xuXG4gICAgSWNvblNpemUgPSBJY29uU2l6ZTtcbiAgICBWZXJzaW9uID0gVkVSU0lPTi5mdWxsO1xuXG4gICAgcHVibGljIHRpbWVzdGFtcCA9IDA7XG5cbiAgICAvKipcbiAgICAgKiBSZW5kZXJzIHRoaXMgaWNvbiBmcm9tIFNWRyBzcHJpdGUgc2hlZXRcbiAgICAgKi9cbiAgICBwdWJsaWMgaWNvblRvU2hvdyE6IHN0cmluZyB8ICcnO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XG4gICAgICAgIHRoaXMuaWNvblRvU2hvdyA9IHRoaXMuaWNvbjtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5pY29uVG9TaG93ID0gdGhpcy5pY29uO1xuICAgICAgICBjb25zdCBkID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgbiA9IGQuZ2V0VGltZSgpO1xuICAgICAgICB0aGlzLnRpbWVzdGFtcCA9IG47XG4gICAgfVxuXG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaWNvbiAhPT0gJ25vbmUnICYmIGRvbnRVc2VTcHJpdGUgPT09IGZhbHNlXCI+XG4gIDxzcGFuIGNsYXNzPVwiaWNvbiB7eyBpY29uU2l6ZSB9fVwiIFtuZ0NsYXNzXT1cImljb25DbGFzc1wiIFtuZ1N0eWxlXT1cImljb25TdHlsZVwiIFtzdHlsZS53aWR0aC5weF09XCJzaXplID8gc2l6ZSA6IHVuZGVmaW5lZFwiIFtzdHlsZS5oZWlnaHQucHhdPVwic2l6ZSA/IHNpemUgOiB1bmRlZmluZWRcIj5cbiAgICA8c3ZnPlxuICAgICAgPHVzZVxuICAgICAgICBbYXR0ci54bGluazpocmVmXT1cIlxuICAgICAgICAgICdhc3NldHMvc3ByaXRlLnN2Zz9WZXJzaW9uPScgKyBWZXJzaW9uICsgJyMnICsgaWNvblRvU2hvd1xuICAgICAgICBcIlxuICAgICAgPjwvdXNlPlxuICAgIDwvc3ZnPlxuICA8L3NwYW4+XG48L25nLWNvbnRhaW5lcj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJpY29uICE9PSAnbm9uZScgJiYgZG9udFVzZVNwcml0ZSA9PT0gdHJ1ZVwiPlxuICA8b2JqZWN0XG4gICAgW2RhdGFdPVwiXG4gICAgICBzYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKCdhc3NldHMvaWNvbnMvJyArIGljb24gKyAnJylcbiAgICBcIlxuICAgIHR5cGU9XCJpbWFnZS9zdmcreG1sXCJcbiAgICBjbGFzcz1cImljb24ge3sgaWNvblNpemUgfX1cIlxuICAgIFtuZ0NsYXNzXT1cImljb25DbGFzc1wiXG4gICAgW25nU3R5bGVdPVwiaWNvblN0eWxlXCJcbiAgPjwvb2JqZWN0PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBUTNDLE1BQU0sT0FBTyxhQUFhO0lBeUN4QixZQUFtQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBdkIxQzs7O1dBR0c7UUFDTSxhQUFRLEdBQWEsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQVFoRDs7V0FFRztRQUVNLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRS9CLGFBQVEsR0FBRyxRQUFRLENBQUM7UUFDcEIsWUFBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFFaEIsY0FBUyxHQUFHLENBQUMsQ0FBQztJQUV3QixDQUFDO0lBRTlDLFFBQVE7UUFDTixNQUFNLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDOytHQS9DVSxhQUFhO21HQUFiLGFBQWEsOExDZjFCLDZ0QkEwQkE7OzRGRFhhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsVUFBVTttR0FTWCxJQUFJO3NCQUFaLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFNRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQU1HLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZFUlNJT04gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5pbXBvcnQgeyBJY29uU2l6ZSB9IGZyb20gJy4vaWNvblNpemUuZW51bSc7XG5pbXBvcnQgKiBhcyBjb2xvcnMgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL2ljb25zLmpzb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrbXMtaWNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaWNvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqIFJlcXVpcmVkOiBOYW1lIG9mIHRoZSBTVkcgaWNvbiBpbnNpZGUgeW91ciBzcHJpdGUgc2hlZXQgZmlsZSB3aXRoIG5hbWUgJ2ljb25zLnN2ZycuXG4gICAqIFBhc3MgJ25vbmUnIGlmIG5vIGljb24gc2hvdWxkIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgQElucHV0KCkgaWNvbiE6ICh0eXBlb2YgY29sb3JzKVtudW1iZXJdO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbDogRGlmZmVyZW50IGFwcGVhcmFuY2UgdmlhIENTUyBjbGFzcyBkZWZpbmVkIGluIHRoaXMgY29tcG9uZW50wrRzIHN0eWxlIHNoZWV0LlxuICAgKi9cbiAgQElucHV0KCkgaWNvbkNsYXNzITogc3RyaW5nIHwgJyc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsOiBEaWZmZXJlbnQgYXBwZWFyYW5jZSB2aWEgQ1NTIGlubGluZSBzdHlsZS5cbiAgICovXG5cbiAgQElucHV0KCkgaWNvblN0eWxlOiBhbnk7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsOiBEaWZmZXJlbnQgc2l6ZSB2aWEgQ1NTIGlubGluZSBzdHlsZS5cbiAgICogQGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2Ugc2l6ZSBpbnN0ZWFkXG4gICAqL1xuICBASW5wdXQoKSBpY29uU2l6ZTogSWNvblNpemUgPSBJY29uU2l6ZS5GVUxMU0laRTtcblxuICAvKipcbiAgICogT3B0aW9uYWw6IERpZmZlcmVudCBzaXplIHZpYSBDU1MgaW5saW5lIHN0eWxlLlxuICAgKiBAZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSBzaXplIGluc3RlYWRcbiAgICovXG4gIEBJbnB1dCgpIHNpemU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERvbnQgdXNlIGljb24gc3ByaXRlXG4gICAqL1xuXG4gIEBJbnB1dCgpIGRvbnRVc2VTcHJpdGUgPSBmYWxzZTtcblxuICBJY29uU2l6ZSA9IEljb25TaXplO1xuICBWZXJzaW9uID0gVkVSU0lPTi5mdWxsO1xuXG4gIHB1YmxpYyB0aW1lc3RhbXAgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBkID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBuID0gZC5nZXRUaW1lKCk7XG4gICAgdGhpcy50aW1lc3RhbXAgPSBuO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaWNvbiAhPT0gJ25vbmUnICYmIGRvbnRVc2VTcHJpdGUgPT09IGZhbHNlXCI+XG4gIDxzcGFuXG4gICAgY2xhc3M9XCJpY29uIHt7IGljb25TaXplIH19XCJcbiAgICBbbmdDbGFzc109XCJpY29uQ2xhc3NcIlxuICAgIFtuZ1N0eWxlXT1cImljb25TdHlsZVwiXG4gICAgW3N0eWxlLndpZHRoLnB4XT1cInNpemVcIlxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwic2l6ZVwiXG4gID5cbiAgICA8c3ZnPlxuICAgICAgPHVzZVxuICAgICAgICBbYXR0ci54bGluazpocmVmXT1cIidhc3NldHMvc3ByaXRlLnN2Zz9WZXJzaW9uPScgKyBWZXJzaW9uICsgJyMnICsgaWNvblwiXG4gICAgICA+PC91c2U+XG4gICAgPC9zdmc+XG4gIDwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImljb24gIT09ICdub25lJyAmJiBkb250VXNlU3ByaXRlID09PSB0cnVlXCI+XG4gIDxvYmplY3RcbiAgICBbZGF0YV09XCJcbiAgICAgIHNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoJ2Fzc2V0cy9pY29ucy8nICsgaWNvbiArICcnKVxuICAgIFwiXG4gICAgdHlwZT1cImltYWdlL3N2Zyt4bWxcIlxuICAgIGNsYXNzPVwiaWNvbiB7eyBpY29uU2l6ZSB9fVwiXG4gICAgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICBbbmdTdHlsZV09XCJpY29uU3R5bGVcIlxuICA+PC9vYmplY3Q+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,38 +1,92 @@
1
1
  /**
2
2
  * @copyright KMS GmbH
3
3
  */
4
- import { Component, EventEmitter, Input, Output } from '@angular/core';
4
+ import { moveItemInArray } from '@angular/cdk/drag-drop';
5
+ import { Component, EventEmitter, Input, Output, } from '@angular/core';
5
6
  import { register } from 'swiper/element/bundle';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@angular/common";
8
- import * as i2 from "@angular/material/menu";
9
- import * as i3 from "../../directives/size.directive";
10
- import * as i4 from "../icon/icon.component";
9
+ import * as i2 from "@angular/cdk/drag-drop";
10
+ import * as i3 from "@angular/material/menu";
11
+ import * as i4 from "../../directives/size.directive";
12
+ import * as i5 from "../icon/icon.component";
11
13
  register();
12
14
  export class ImageSliderComponent {
13
- constructor() {
15
+ constructor(el) {
16
+ this.el = el;
14
17
  this.editMode = false;
15
- this.orderChanged = new EventEmitter();
16
18
  this.deleteImageEvent = new EventEmitter();
19
+ this.orderChanged = new EventEmitter();
20
+ }
21
+ ngAfterViewInit() {
22
+ this.initializeSwipers();
23
+ }
24
+ ngOnChanges() {
25
+ this.updateSwipers();
26
+ }
27
+ initializeSwipers() {
28
+ const swiper1 = this.el.nativeElement.children[0]
29
+ .children[0];
30
+ const swiper2 = this.el.nativeElement.children[0]
31
+ .children[1];
32
+ Object.assign(swiper1, {
33
+ slidesPerView: 1,
34
+ navigation: true,
35
+ thumbs: {
36
+ swiper: swiper2,
37
+ },
38
+ pagination: {
39
+ clickable: true,
40
+ },
41
+ });
42
+ Object.assign(swiper2, {
43
+ slidesPerView: 4,
44
+ freeMode: true,
45
+ navigation: true,
46
+ simulateTouch: false,
47
+ });
48
+ swiper1.initialize();
49
+ swiper2.initialize();
50
+ }
51
+ updateSwipers(delayMs = 100) {
52
+ const swiper1 = this.el.nativeElement.children[0]
53
+ .children[0];
54
+ const swiper2 = this.el.nativeElement.children[0]
55
+ .children[1];
56
+ if (swiper1.swiper && swiper2.swiper) {
57
+ setTimeout(() => {
58
+ swiper1.swiper.update();
59
+ swiper2.swiper.update();
60
+ }, delayMs);
61
+ }
17
62
  }
18
63
  deleteImage(index) {
19
64
  this.deleteImageEvent.emit(index);
65
+ this.updateSwipers(2500);
20
66
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesTOSave: "imagesTOSave" }, outputs: { orderChanged: "orderChanged", deleteImageEvent: "deleteImageEvent" }, ngImport: i0, template: "<div class=\"image-slider\">\n <swiper-container\n class=\"image-slider__swiper-container\"\n thumbs-swiper=\".image-slider__swiper-preview-container\"\n space-between=\"10\"\n navigation=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <img [src]=\"slide\" alt=\"\" />\n </swiper-slide>\n </swiper-container>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <swiper-container\n class=\"image-slider__swiper-preview-container\"\n space-between=\"25\"\n slides-per-view=\"4\"\n free-mode=\"true\"\n watch-slides-progress=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <button\n class=\"image-slider__delete-button\"\n mat-menu-item\n *ngIf=\"editMode\"\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n <img [src]=\"slide\" />\n </swiper-slide>\n </swiper-container>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i4.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] }); }
67
+ onOrderChanged(event) {
68
+ if (this.slides && this.imagesToSave) {
69
+ moveItemInArray(this.slides, event.previousIndex, event.currentIndex);
70
+ moveItemInArray(this.imagesToSave, event.previousIndex, event.currentIndex);
71
+ this.orderChanged.emit(this.imagesToSave);
72
+ this.updateSwipers();
73
+ }
74
+ }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesToSave: "imagesToSave" }, outputs: { deleteImageEvent: "deleteImageEvent", orderChanged: "orderChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"image-slider-container\">\n <swiper-container class=\"swiper-main-view-container\">\n <swiper-slide *ngFor=\"let slide of slides\">\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n\n <swiper-container\n class=\"swiper-carousel-container\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"onOrderChanged($event)\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <div *ngIf=\"editMode\">\n <button cdkDrag class=\"drag-button\" mat-menu-item></button>\n <button\n class=\"delete-button\"\n mat-menu-item\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n </div>\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i5.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] }); }
23
77
  }
24
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSliderComponent, decorators: [{
25
79
  type: Component,
26
- args: [{ selector: 'kms-image-slider', template: "<div class=\"image-slider\">\n <swiper-container\n class=\"image-slider__swiper-container\"\n thumbs-swiper=\".image-slider__swiper-preview-container\"\n space-between=\"10\"\n navigation=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <img [src]=\"slide\" alt=\"\" />\n </swiper-slide>\n </swiper-container>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <swiper-container\n class=\"image-slider__swiper-preview-container\"\n space-between=\"25\"\n slides-per-view=\"4\"\n free-mode=\"true\"\n watch-slides-progress=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <button\n class=\"image-slider__delete-button\"\n mat-menu-item\n *ngIf=\"editMode\"\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n <img [src]=\"slide\" />\n </swiper-slide>\n </swiper-container>\n <ng-content></ng-content>\n</div>\n" }]
27
- }], propDecorators: { slides: [{
80
+ args: [{ selector: 'kms-image-slider', template: "<div class=\"image-slider-container\">\n <swiper-container class=\"swiper-main-view-container\">\n <swiper-slide *ngFor=\"let slide of slides\">\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n\n <swiper-container\n class=\"swiper-carousel-container\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"onOrderChanged($event)\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <div *ngIf=\"editMode\">\n <button cdkDrag class=\"drag-button\" mat-menu-item></button>\n <button\n class=\"delete-button\"\n mat-menu-item\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n </div>\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n</div>\n" }]
81
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { slides: [{
28
82
  type: Input
29
83
  }], editMode: [{
30
84
  type: Input
31
- }], imagesTOSave: [{
85
+ }], imagesToSave: [{
32
86
  type: Input
33
- }], orderChanged: [{
34
- type: Output
35
87
  }], deleteImageEvent: [{
36
88
  type: Output
89
+ }], orderChanged: [{
90
+ type: Output
37
91
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pbWFnZS1zbGlkZXIvaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pbWFnZS1zbGlkZXIvaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQUdqRCxRQUFRLEVBQUUsQ0FBQztBQU1YLE1BQU0sT0FBTyxvQkFBb0I7SUFKakM7UUFNVyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRWhCLGlCQUFZLEdBQWlDLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEUscUJBQWdCLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7S0FNdkU7SUFIQyxXQUFXLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7K0dBVlUsb0JBQW9CO21HQUFwQixvQkFBb0IsMk5DZmpDLG9oQ0FtQ0E7OzRGRHBCYSxvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0Usa0JBQWtCOzhCQUluQixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAY29weXJpZ2h0IEtNUyBHbWJIXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgcmVnaXN0ZXIgfSBmcm9tICdzd2lwZXIvZWxlbWVudC9idW5kbGUnO1xuaW1wb3J0IHsgSW1hZ2VTbmlwcGV0IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ltYWdlLXNuaXBwZXQubW9kZWwnO1xuXG5yZWdpc3RlcigpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrbXMtaW1hZ2Utc2xpZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLXNsaWRlci5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlU2xpZGVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc2xpZGVzOiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgZWRpdE1vZGUgPSBmYWxzZTtcbiAgQElucHV0KCkgaW1hZ2VzVE9TYXZlOiBJbWFnZVNuaXBwZXRbXSB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIG9yZGVyQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEltYWdlU25pcHBldFtdPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGRlbGV0ZUltYWdlRXZlbnQ6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG5cbiAgZGVsZXRlSW1hZ2UoaW5kZXg6IG51bWJlcil7XG4gICAgdGhpcy5kZWxldGVJbWFnZUV2ZW50LmVtaXQoaW5kZXgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaW1hZ2Utc2xpZGVyXCI+XG4gIDxzd2lwZXItY29udGFpbmVyXG4gICAgY2xhc3M9XCJpbWFnZS1zbGlkZXJfX3N3aXBlci1jb250YWluZXJcIlxuICAgIHRodW1icy1zd2lwZXI9XCIuaW1hZ2Utc2xpZGVyX19zd2lwZXItcHJldmlldy1jb250YWluZXJcIlxuICAgIHNwYWNlLWJldHdlZW49XCIxMFwiXG4gICAgbmF2aWdhdGlvbj1cInRydWVcIlxuICA+XG4gICAgPHN3aXBlci1zbGlkZSAqbmdGb3I9XCJsZXQgc2xpZGUgb2Ygc2xpZGVzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICAgICAgPGltZyBbc3JjXT1cInNsaWRlXCIgYWx0PVwiXCIgLz5cbiAgICA8L3N3aXBlci1zbGlkZT5cbiAgPC9zd2lwZXItY29udGFpbmVyPlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cIltkZXNjcmlwdGlvbl1cIj48L25nLWNvbnRlbnQ+XG5cbiAgPHN3aXBlci1jb250YWluZXJcbiAgICBjbGFzcz1cImltYWdlLXNsaWRlcl9fc3dpcGVyLXByZXZpZXctY29udGFpbmVyXCJcbiAgICBzcGFjZS1iZXR3ZWVuPVwiMjVcIlxuICAgIHNsaWRlcy1wZXItdmlldz1cIjRcIlxuICAgIGZyZWUtbW9kZT1cInRydWVcIlxuICAgIHdhdGNoLXNsaWRlcy1wcm9ncmVzcz1cInRydWVcIlxuICA+XG4gICAgPHN3aXBlci1zbGlkZSAqbmdGb3I9XCJsZXQgc2xpZGUgb2Ygc2xpZGVzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImltYWdlLXNsaWRlcl9fZGVsZXRlLWJ1dHRvblwiXG4gICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgKm5nSWY9XCJlZGl0TW9kZVwiXG4gICAgICAgIChjbGljayk9XCJkZWxldGVJbWFnZShpbmRleClcIlxuICAgICAgPlxuICAgICAgICA8a21zLWljb24gaWNvbj1cInRyYXNoXCIgW3NpemVdPVwiMTVcIj48L2ttcy1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8aW1nIFtzcmNdPVwic2xpZGVcIiAvPlxuICAgIDwvc3dpcGVyLXNsaWRlPlxuICA8L3N3aXBlci1jb250YWluZXI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pbWFnZS1zbGlkZXIvaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pbWFnZS1zbGlkZXIvaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7OztBQUdsRSxRQUFRLEVBQUUsQ0FBQztBQU1YLE1BQU0sT0FBTyxvQkFBb0I7SUFPL0IsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUFMekIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVoQixxQkFBZ0IsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1RCxpQkFBWSxHQUFpQyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXJDLENBQUM7SUFFdEMsZUFBZTtRQUNiLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxpQkFBaUI7UUFDZixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQzlDLFFBQVEsQ0FBQyxDQUFDLENBQW9CLENBQUM7UUFDbEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQzthQUM5QyxRQUFRLENBQUMsQ0FBQyxDQUFvQixDQUFDO1FBRWxDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1lBQ3JCLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLE1BQU0sRUFBRTtnQkFDTixNQUFNLEVBQUUsT0FBTzthQUNoQjtZQUNELFVBQVUsRUFBRTtnQkFDVixTQUFTLEVBQUUsSUFBSTthQUNoQjtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1lBQ3JCLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLElBQUk7WUFDaEIsYUFBYSxFQUFFLEtBQUs7U0FDckIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQU8sR0FBRyxHQUFHO1FBQ2pDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7YUFDOUMsUUFBUSxDQUFDLENBQUMsQ0FBb0IsQ0FBQztRQUNsQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQzlDLFFBQVEsQ0FBQyxDQUFDLENBQW9CLENBQUM7UUFFbEMsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDcEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUN4QixPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzFCLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQTRCO1FBQ3pDLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3BDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RFLGVBQWUsQ0FDYixJQUFJLENBQUMsWUFBWSxFQUNqQixLQUFLLENBQUMsYUFBYSxFQUNuQixLQUFLLENBQUMsWUFBWSxDQUNuQixDQUFDO1lBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtJQUNILENBQUM7K0dBM0VVLG9CQUFvQjttR0FBcEIsb0JBQW9CLGdQQ3ZCakMsNDVCQTRCQTs7NEZETGEsb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGtCQUFrQjtpR0FJbkIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3dpcGVyQ29udGFpbmVyLCByZWdpc3RlciB9IGZyb20gJ3N3aXBlci9lbGVtZW50L2J1bmRsZSc7XG5pbXBvcnQgeyBJbWFnZVNuaXBwZXQgfSBmcm9tICcuLi8uLi9tb2RlbHMvaW1hZ2Utc25pcHBldCc7XG5cbnJlZ2lzdGVyKCk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ttcy1pbWFnZS1zbGlkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaW1hZ2Utc2xpZGVyLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VTbGlkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBzbGlkZXM/OiBzdHJpbmdbXTtcbiAgQElucHV0KCkgZWRpdE1vZGUgPSBmYWxzZTtcbiAgQElucHV0KCkgaW1hZ2VzVG9TYXZlPzogSW1hZ2VTbmlwcGV0W107XG4gIEBPdXRwdXQoKSBkZWxldGVJbWFnZUV2ZW50OiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9yZGVyQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEltYWdlU25pcHBldFtdPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluaXRpYWxpemVTd2lwZXJzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLnVwZGF0ZVN3aXBlcnMoKTtcbiAgfVxuXG4gIGluaXRpYWxpemVTd2lwZXJzKCkge1xuICAgIGNvbnN0IHN3aXBlcjEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF1cbiAgICAgIC5jaGlsZHJlblswXSBhcyBTd2lwZXJDb250YWluZXI7XG4gICAgY29uc3Qgc3dpcGVyMiA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXVxuICAgICAgLmNoaWxkcmVuWzFdIGFzIFN3aXBlckNvbnRhaW5lcjtcblxuICAgIE9iamVjdC5hc3NpZ24oc3dpcGVyMSwge1xuICAgICAgc2xpZGVzUGVyVmlldzogMSxcbiAgICAgIG5hdmlnYXRpb246IHRydWUsXG4gICAgICB0aHVtYnM6IHtcbiAgICAgICAgc3dpcGVyOiBzd2lwZXIyLFxuICAgICAgfSxcbiAgICAgIHBhZ2luYXRpb246IHtcbiAgICAgICAgY2xpY2thYmxlOiB0cnVlLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIE9iamVjdC5hc3NpZ24oc3dpcGVyMiwge1xuICAgICAgc2xpZGVzUGVyVmlldzogNCxcbiAgICAgIGZyZWVNb2RlOiB0cnVlLFxuICAgICAgbmF2aWdhdGlvbjogdHJ1ZSxcbiAgICAgIHNpbXVsYXRlVG91Y2g6IGZhbHNlLFxuICAgIH0pO1xuXG4gICAgc3dpcGVyMS5pbml0aWFsaXplKCk7XG4gICAgc3dpcGVyMi5pbml0aWFsaXplKCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVN3aXBlcnMoZGVsYXlNcyA9IDEwMCkge1xuICAgIGNvbnN0IHN3aXBlcjEgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF1cbiAgICAgIC5jaGlsZHJlblswXSBhcyBTd2lwZXJDb250YWluZXI7XG4gICAgY29uc3Qgc3dpcGVyMiA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jaGlsZHJlblswXVxuICAgICAgLmNoaWxkcmVuWzFdIGFzIFN3aXBlckNvbnRhaW5lcjtcblxuICAgIGlmIChzd2lwZXIxLnN3aXBlciAmJiBzd2lwZXIyLnN3aXBlcikge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHN3aXBlcjEuc3dpcGVyLnVwZGF0ZSgpO1xuICAgICAgICBzd2lwZXIyLnN3aXBlci51cGRhdGUoKTtcbiAgICAgIH0sIGRlbGF5TXMpO1xuICAgIH1cbiAgfVxuXG4gIGRlbGV0ZUltYWdlKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmRlbGV0ZUltYWdlRXZlbnQuZW1pdChpbmRleCk7XG4gICAgdGhpcy51cGRhdGVTd2lwZXJzKDI1MDApO1xuICB9XG5cbiAgb25PcmRlckNoYW5nZWQoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xuICAgIGlmICh0aGlzLnNsaWRlcyAmJiB0aGlzLmltYWdlc1RvU2F2ZSkge1xuICAgICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuc2xpZGVzLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgICAgbW92ZUl0ZW1JbkFycmF5KFxuICAgICAgICB0aGlzLmltYWdlc1RvU2F2ZSxcbiAgICAgICAgZXZlbnQucHJldmlvdXNJbmRleCxcbiAgICAgICAgZXZlbnQuY3VycmVudEluZGV4XG4gICAgICApO1xuICAgICAgdGhpcy5vcmRlckNoYW5nZWQuZW1pdCh0aGlzLmltYWdlc1RvU2F2ZSk7XG4gICAgICB0aGlzLnVwZGF0ZVN3aXBlcnMoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpbWFnZS1zbGlkZXItY29udGFpbmVyXCI+XG4gIDxzd2lwZXItY29udGFpbmVyIGNsYXNzPVwic3dpcGVyLW1haW4tdmlldy1jb250YWluZXJcIj5cbiAgICA8c3dpcGVyLXNsaWRlICpuZ0Zvcj1cImxldCBzbGlkZSBvZiBzbGlkZXNcIj5cbiAgICAgIDxpbWcgW3NyY109XCJzbGlkZVwiIGxvYWRpbmc9XCJsYXp5XCIgLz5cbiAgICA8L3N3aXBlci1zbGlkZT5cbiAgPC9zd2lwZXItY29udGFpbmVyPlxuXG4gIDxzd2lwZXItY29udGFpbmVyXG4gICAgY2xhc3M9XCJzd2lwZXItY2Fyb3VzZWwtY29udGFpbmVyXCJcbiAgICBjZGtEcm9wTGlzdFxuICAgIGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJob3Jpem9udGFsXCJcbiAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uT3JkZXJDaGFuZ2VkKCRldmVudClcIlxuICA+XG4gICAgPHN3aXBlci1zbGlkZSAqbmdGb3I9XCJsZXQgc2xpZGUgb2Ygc2xpZGVzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICAgICAgPGRpdiAqbmdJZj1cImVkaXRNb2RlXCI+XG4gICAgICAgIDxidXR0b24gY2RrRHJhZyBjbGFzcz1cImRyYWctYnV0dG9uXCIgbWF0LW1lbnUtaXRlbT48L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZGVsZXRlLWJ1dHRvblwiXG4gICAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICAgIChjbGljayk9XCJkZWxldGVJbWFnZShpbmRleClcIlxuICAgICAgICA+XG4gICAgICAgICAgPGttcy1pY29uIGljb249XCJ0cmFzaFwiIFtzaXplXT1cIjE1XCI+PC9rbXMtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxpbWcgW3NyY109XCJzbGlkZVwiIGxvYWRpbmc9XCJsYXp5XCIgLz5cbiAgICA8L3N3aXBlci1zbGlkZT5cbiAgPC9zd2lwZXItY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -7,6 +7,7 @@ export * from './lib/kms-ngx-ui-presentational.service';
7
7
  export * from './lib/services/viewport.service';
8
8
  export * from './lib/models/button-response-types.enum';
9
9
  export * from './lib/models/iconSize.enum';
10
+ export * from './lib/models/image-snippet.model';
10
11
  export * from './lib/models/salutation.enum';
11
12
  export * from './lib/models/types/nullable.type';
12
13
  export * from './lib/ui/back-to-top/back-to-top.component';
@@ -43,4 +44,4 @@ export * from './lib/pipes/safe-url.pipe';
43
44
  export * from './lib/pipes/trim.pipe';
44
45
  export * from './lib/pipes/typeof.pipe';
45
46
  export * from './lib/parent-components/form.component';
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUV4RCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDhCQUE4QixDQUFDO0FBRTdDLGNBQWMsa0NBQWtDLENBQUM7QUFFakQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsd0RBQXdELENBQUM7QUFFdkUsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMseUJBQXlCLENBQUM7QUFFeEMsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Yga21zLW5neC11aS1wcmVzZW50YXRpb25hbFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwuc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3ZpZXdwb3J0LnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYnV0dG9uLXJlc3BvbnNlLXR5cGVzLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ljb25TaXplLmVudW0nO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2FsdXRhdGlvbi5lbnVtJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3R5cGVzL251bGxhYmxlLnR5cGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9iYWNrLXRvLXRvcC9iYWNrLXRvLXRvcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2NvbG9yLWlucHV0L2NvbG9yLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2NvbmZpcm1hdGlvbi1kaWFsb2cvZGlhbG9nLWRhdGEubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvZHJvcGRvd24tZnJvbS1kYXRhL2Ryb3Bkb3duLWZyb20tZGF0YS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvZW51bS1yYWRpb2dyb3VwL2VudW0tcmFkaW9ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2ltYWdlLXNsaWRlci9pbWFnZS1zbGlkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2ttcy1hY2NvcmRpb24taXRlbS9rbXMtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL21hcC9tYXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL3JhZGlvYnV0dG9uL3JhZGlvYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9zYWx1dGF0aW9uLWRyb3Bkb3duL3NhbHV0YXRpb24tZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL3NhbHV0YXRpb24tcmFkaW9ncm91cC9zYWx1dGF0aW9uLXJhZGlvZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL3RpbWUtaW5wdXQvdGltZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvdG9vbHRpcC1pY29uL3Rvb2x0aXAtaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS95ZXMtbm8tcmFkaW9ncm91cC95ZXMtbm8tcmFkaW9ncm91cC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2l6ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9zdW0tb2YtaGVpZ2h0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3N3aXBlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Rvb2x0aXAuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvY3VzdG9tLXBpcGVzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9pbnRlZ2VyLWN1cnJlbmN5LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvc2FmZS1odG1sLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvc2FmZS1yZXNvdXJjZS11cmwucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9zYWZlLXVybC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL3RyaW0ucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy90eXBlb2YucGlwZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhcmVudC1jb21wb25lbnRzL2Zvcm0uY29tcG9uZW50JztcbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUV4RCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUVqRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx3REFBd0QsQ0FBQztBQUV2RSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsb0NBQW9DLENBQUM7QUFFbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBrbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIva21zLW5neC11aS1wcmVzZW50YXRpb25hbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIva21zLW5neC11aS1wcmVzZW50YXRpb25hbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIva21zLW5neC11aS1wcmVzZW50YXRpb25hbC5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdmlld3BvcnQuc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9idXR0b24tcmVzcG9uc2UtdHlwZXMuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWNvblNpemUuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaW1hZ2Utc25pcHBldC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2FsdXRhdGlvbi5lbnVtJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3R5cGVzL251bGxhYmxlLnR5cGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9iYWNrLXRvLXRvcC9iYWNrLXRvLXRvcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2NvbG9yLWlucHV0L2NvbG9yLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2NvbmZpcm1hdGlvbi1kaWFsb2cvZGlhbG9nLWRhdGEubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvZHJvcGRvd24tZnJvbS1kYXRhL2Ryb3Bkb3duLWZyb20tZGF0YS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvZW51bS1yYWRpb2dyb3VwL2VudW0tcmFkaW9ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2ltYWdlLXNsaWRlci9pbWFnZS1zbGlkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2ttcy1hY2NvcmRpb24taXRlbS9rbXMtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL21hcC9tYXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL3JhZGlvYnV0dG9uL3JhZGlvYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS9zYWx1dGF0aW9uLWRyb3Bkb3duL3NhbHV0YXRpb24tZHJvcGRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL3NhbHV0YXRpb24tcmFkaW9ncm91cC9zYWx1dGF0aW9uLXJhZGlvZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3VpL3RpbWUtaW5wdXQvdGltZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvdG9vbHRpcC1pY29uL3Rvb2x0aXAtaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWkvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91aS95ZXMtbm8tcmFkaW9ncm91cC95ZXMtbm8tcmFkaW9ncm91cC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2l6ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9zdW0tb2YtaGVpZ2h0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3N3aXBlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Rvb2x0aXAuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvY3VzdG9tLXBpcGVzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9pbnRlZ2VyLWN1cnJlbmN5LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvc2FmZS1odG1sLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvc2FmZS1yZXNvdXJjZS11cmwucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9zYWZlLXVybC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3BpcGVzL3RyaW0ucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy90eXBlb2YucGlwZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3BhcmVudC1jb21wb25lbnRzL2Zvcm0uY29tcG9uZW50JztcbiJdfQ==
@@ -28,10 +28,11 @@ import { GoogleMapsModule } from '@angular/google-maps';
28
28
  import * as i3$4 from '@angular/material/select';
29
29
  import { MatSelectModule } from '@angular/material/select';
30
30
  import * as i4$2 from '@angular/material/core';
31
- import { DragDropModule } from '@angular/cdk/drag-drop';
31
+ import * as i2$4 from '@angular/cdk/drag-drop';
32
+ import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
32
33
  import * as i1$2 from '@angular/material/dialog';
33
34
  import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
34
- import * as i2$4 from '@angular/material/menu';
35
+ import * as i3$5 from '@angular/material/menu';
35
36
  import { MatMenuModule } from '@angular/material/menu';
36
37
  import { EnumValues } from 'enum-values/src/enumValues';
37
38
  import { register } from 'swiper/element/bundle';
@@ -641,20 +642,18 @@ class IconComponent {
641
642
  this.IconSize = IconSize$1;
642
643
  this.Version = VERSION.full;
643
644
  this.timestamp = 0;
644
- this.iconToShow = this.icon;
645
645
  }
646
646
  ngOnInit() {
647
- this.iconToShow = this.icon;
648
647
  const d = new Date();
649
648
  const n = d.getTime();
650
649
  this.timestamp = n;
651
650
  }
652
651
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
653
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IconComponent, selector: "kms-icon", inputs: { icon: "icon", iconClass: "iconClass", iconStyle: "iconStyle", iconSize: "iconSize", size: "size", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + iconToShow\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
652
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IconComponent, selector: "kms-icon", inputs: { icon: "icon", iconClass: "iconClass", iconStyle: "iconStyle", iconSize: "iconSize", size: "size", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"'assets/sprite.svg?Version=' + Version + '#' + icon\"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
654
653
  }
655
654
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconComponent, decorators: [{
656
655
  type: Component,
657
- args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + iconToShow\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n" }]
656
+ args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"'assets/sprite.svg?Version=' + Version + '#' + icon\"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n" }]
658
657
  }], ctorParameters: function () { return [{ type: i1$1.DomSanitizer }]; }, propDecorators: { icon: [{
659
658
  type: Input
660
659
  }], iconClass: [{
@@ -2491,30 +2490,82 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2491
2490
  */
2492
2491
  register();
2493
2492
  class ImageSliderComponent {
2494
- constructor() {
2493
+ constructor(el) {
2494
+ this.el = el;
2495
2495
  this.editMode = false;
2496
- this.orderChanged = new EventEmitter();
2497
2496
  this.deleteImageEvent = new EventEmitter();
2497
+ this.orderChanged = new EventEmitter();
2498
+ }
2499
+ ngAfterViewInit() {
2500
+ this.initializeSwipers();
2501
+ }
2502
+ ngOnChanges() {
2503
+ this.updateSwipers();
2504
+ }
2505
+ initializeSwipers() {
2506
+ const swiper1 = this.el.nativeElement.children[0]
2507
+ .children[0];
2508
+ const swiper2 = this.el.nativeElement.children[0]
2509
+ .children[1];
2510
+ Object.assign(swiper1, {
2511
+ slidesPerView: 1,
2512
+ navigation: true,
2513
+ thumbs: {
2514
+ swiper: swiper2,
2515
+ },
2516
+ pagination: {
2517
+ clickable: true,
2518
+ },
2519
+ });
2520
+ Object.assign(swiper2, {
2521
+ slidesPerView: 4,
2522
+ freeMode: true,
2523
+ navigation: true,
2524
+ simulateTouch: false,
2525
+ });
2526
+ swiper1.initialize();
2527
+ swiper2.initialize();
2528
+ }
2529
+ updateSwipers(delayMs = 100) {
2530
+ const swiper1 = this.el.nativeElement.children[0]
2531
+ .children[0];
2532
+ const swiper2 = this.el.nativeElement.children[0]
2533
+ .children[1];
2534
+ if (swiper1.swiper && swiper2.swiper) {
2535
+ setTimeout(() => {
2536
+ swiper1.swiper.update();
2537
+ swiper2.swiper.update();
2538
+ }, delayMs);
2539
+ }
2498
2540
  }
2499
2541
  deleteImage(index) {
2500
2542
  this.deleteImageEvent.emit(index);
2543
+ this.updateSwipers(2500);
2544
+ }
2545
+ onOrderChanged(event) {
2546
+ if (this.slides && this.imagesToSave) {
2547
+ moveItemInArray(this.slides, event.previousIndex, event.currentIndex);
2548
+ moveItemInArray(this.imagesToSave, event.previousIndex, event.currentIndex);
2549
+ this.orderChanged.emit(this.imagesToSave);
2550
+ this.updateSwipers();
2551
+ }
2501
2552
  }
2502
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2503
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesTOSave: "imagesTOSave" }, outputs: { orderChanged: "orderChanged", deleteImageEvent: "deleteImageEvent" }, ngImport: i0, template: "<div class=\"image-slider\">\n <swiper-container\n class=\"image-slider__swiper-container\"\n thumbs-swiper=\".image-slider__swiper-preview-container\"\n space-between=\"10\"\n navigation=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <img [src]=\"slide\" alt=\"\" />\n </swiper-slide>\n </swiper-container>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <swiper-container\n class=\"image-slider__swiper-preview-container\"\n space-between=\"25\"\n slides-per-view=\"4\"\n free-mode=\"true\"\n watch-slides-progress=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <button\n class=\"image-slider__delete-button\"\n mat-menu-item\n *ngIf=\"editMode\"\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n <img [src]=\"slide\" />\n </swiper-slide>\n </swiper-container>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] }); }
2553
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
2554
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesToSave: "imagesToSave" }, outputs: { deleteImageEvent: "deleteImageEvent", orderChanged: "orderChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"image-slider-container\">\n <swiper-container class=\"swiper-main-view-container\">\n <swiper-slide *ngFor=\"let slide of slides\">\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n\n <swiper-container\n class=\"swiper-carousel-container\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"onOrderChanged($event)\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <div *ngIf=\"editMode\">\n <button cdkDrag class=\"drag-button\" mat-menu-item></button>\n <button\n class=\"delete-button\"\n mat-menu-item\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n </div>\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3$5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] }); }
2504
2555
  }
2505
2556
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageSliderComponent, decorators: [{
2506
2557
  type: Component,
2507
- args: [{ selector: 'kms-image-slider', template: "<div class=\"image-slider\">\n <swiper-container\n class=\"image-slider__swiper-container\"\n thumbs-swiper=\".image-slider__swiper-preview-container\"\n space-between=\"10\"\n navigation=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <img [src]=\"slide\" alt=\"\" />\n </swiper-slide>\n </swiper-container>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <swiper-container\n class=\"image-slider__swiper-preview-container\"\n space-between=\"25\"\n slides-per-view=\"4\"\n free-mode=\"true\"\n watch-slides-progress=\"true\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <button\n class=\"image-slider__delete-button\"\n mat-menu-item\n *ngIf=\"editMode\"\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n <img [src]=\"slide\" />\n </swiper-slide>\n </swiper-container>\n <ng-content></ng-content>\n</div>\n" }]
2508
- }], propDecorators: { slides: [{
2558
+ args: [{ selector: 'kms-image-slider', template: "<div class=\"image-slider-container\">\n <swiper-container class=\"swiper-main-view-container\">\n <swiper-slide *ngFor=\"let slide of slides\">\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n\n <swiper-container\n class=\"swiper-carousel-container\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"onOrderChanged($event)\"\n >\n <swiper-slide *ngFor=\"let slide of slides; let index = index\">\n <div *ngIf=\"editMode\">\n <button cdkDrag class=\"drag-button\" mat-menu-item></button>\n <button\n class=\"delete-button\"\n mat-menu-item\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n </div>\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n</div>\n" }]
2559
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { slides: [{
2509
2560
  type: Input
2510
2561
  }], editMode: [{
2511
2562
  type: Input
2512
- }], imagesTOSave: [{
2563
+ }], imagesToSave: [{
2513
2564
  type: Input
2514
- }], orderChanged: [{
2515
- type: Output
2516
2565
  }], deleteImageEvent: [{
2517
2566
  type: Output
2567
+ }], orderChanged: [{
2568
+ type: Output
2518
2569
  }] } });
2519
2570
 
2520
2571
  /**
@@ -2534,6 +2585,24 @@ var IconSize;
2534
2585
  IconSize["NONE"] = "NONE";
2535
2586
  })(IconSize || (IconSize = {}));
2536
2587
 
2588
+ /**
2589
+ * General Image Model
2590
+ */
2591
+ class ImageSnippet {
2592
+ constructor(src, fileName, srcType = ImageSourceType.ByteArray) {
2593
+ this.src = src;
2594
+ this.fileName = fileName;
2595
+ this.srcType = srcType;
2596
+ this.status = 'init';
2597
+ }
2598
+ }
2599
+ var ImageSourceType;
2600
+ (function (ImageSourceType) {
2601
+ ImageSourceType["Ident"] = "Idnet";
2602
+ ImageSourceType["ByteArray"] = "ByteArray";
2603
+ ImageSourceType["URL"] = "URL";
2604
+ })(ImageSourceType || (ImageSourceType = {}));
2605
+
2537
2606
  /**
2538
2607
  * Attached File DTO
2539
2608
  */
@@ -2784,5 +2853,5 @@ var ButtonResponseType;
2784
2853
  * Generated bundle index. Do not edit.
2785
2854
  */
2786
2855
 
2787
- export { BackToTopComponent, Breakpoint, ButtonResponseType, CheckboxComponent, ColorInputComponent, ConfirmationDialogComponent, CustomPipesModule, DirectivesModule, DropdownFromDataComponent, EnumRadiogroupComponent, FileInputComponent, FlyoutComponent, FormParentComponent, GetMaxHeightDirective, IconComponent, IconSize, ImageSliderComponent, IntegerCurrency, KMSAccordionItemComponent, KmsUiPresentationalComponent, KmsUiPresentationalModule, KmsUiPresentationalService, LoaderComponent, MapComponent, Marker, MarkerLabel, MarkerOptions, RadioButtonComponent, SafeHtmlPipe, SafeResourceUrlPipe, SafeUrlPipe, SalutationDropdownComponent, SalutationEnum, SalutationRadiogroupComponent, SimpleBreakpoint, SizeDirective, SwipeDirective, TimeInputComponent, TooltipComponent, TooltipDirective, TooltipIconComponent, TrimPipe, TypeofPipe, ViewportService, WindowDimensions, YesNoRadiogroupComponent };
2856
+ export { BackToTopComponent, Breakpoint, ButtonResponseType, CheckboxComponent, ColorInputComponent, ConfirmationDialogComponent, CustomPipesModule, DirectivesModule, DropdownFromDataComponent, EnumRadiogroupComponent, FileInputComponent, FlyoutComponent, FormParentComponent, GetMaxHeightDirective, IconComponent, IconSize, ImageSliderComponent, ImageSnippet, ImageSourceType, IntegerCurrency, KMSAccordionItemComponent, KmsUiPresentationalComponent, KmsUiPresentationalModule, KmsUiPresentationalService, LoaderComponent, MapComponent, Marker, MarkerLabel, MarkerOptions, RadioButtonComponent, SafeHtmlPipe, SafeResourceUrlPipe, SafeUrlPipe, SalutationDropdownComponent, SalutationEnum, SalutationRadiogroupComponent, SimpleBreakpoint, SizeDirective, SwipeDirective, TimeInputComponent, TooltipComponent, TooltipDirective, TooltipIconComponent, TrimPipe, TypeofPipe, ViewportService, WindowDimensions, YesNoRadiogroupComponent };
2788
2857
  //# sourceMappingURL=kms-ngx-ui-presentational.mjs.map