croco-html 2.9.0 → 2.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,24 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { MatButtonModule } from '@angular/material/button';
3
+ import { MatCardModule } from '@angular/material/card';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/card";
6
+ import * as i2 from "@angular/material/button";
7
+ export class ErrorBannerComponent {
8
+ constructor() {
9
+ this.message = "";
10
+ }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ErrorBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: ErrorBannerComponent, isStandalone: true, selector: "croco-html-error-banner", inputs: { message: "message" }, ngImport: i0, template: "@if (message) {\n <mat-card class=\"red\">\n <mat-card-content>\n <p>\n {{ message }}\n </p>\n </mat-card-content>\n <mat-card-actions>\n <button mat-button (click)=\"message = null\">\u0417\u0410\u041A\u0420\u042B\u0422\u042C</button>\n </mat-card-actions>\n </mat-card>\n }\n ", styles: [".red{background-color:#c94444;color:#fff}\n"], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ErrorBannerComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'croco-html-error-banner', standalone: true, imports: [
17
+ MatCardModule,
18
+ MatButtonModule
19
+ ], template: "@if (message) {\n <mat-card class=\"red\">\n <mat-card-content>\n <p>\n {{ message }}\n </p>\n </mat-card-content>\n <mat-card-actions>\n <button mat-button (click)=\"message = null\">\u0417\u0410\u041A\u0420\u042B\u0422\u042C</button>\n </mat-card-actions>\n </mat-card>\n }\n ", styles: [".red{background-color:#c94444;color:#fff}\n"] }]
20
+ }], propDecorators: { message: [{
21
+ type: Input,
22
+ args: [{ required: true }]
23
+ }] } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItYmFubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL2Vycm9yLWJhbm5lci9lcnJvci1iYW5uZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMvZXJyb3ItYmFubmVyL2Vycm9yLWJhbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBWXZELE1BQU0sT0FBTyxvQkFBb0I7SUFWakM7UUFZRSxZQUFPLEdBQVcsRUFBRSxDQUFDO0tBQ3RCOzhHQUhZLG9CQUFvQjtrR0FBcEIsb0JBQW9CLG1IQ2RqQyxrVkFZRSxvR0RKRSxhQUFhLHlWQUNiLGVBQWU7OzJGQUtOLG9CQUFvQjtrQkFWaEMsU0FBUzsrQkFDRSx5QkFBeUIsY0FDdkIsSUFBSSxXQUNQO3dCQUNQLGFBQWE7d0JBQ2IsZUFBZTtxQkFDaEI7OEJBTUQsT0FBTztzQkFETixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nyb2NvLWh0bWwtZXJyb3ItYmFubmVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9lcnJvci1iYW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZXJyb3ItYmFubmVyLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEVycm9yQmFubmVyQ29tcG9uZW50IHtcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgXG4gIG1lc3NhZ2U6IHN0cmluZyA9IFwiXCI7XG59XG4iLCJAaWYgKG1lc3NhZ2UpIHtcbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJyZWRcIj5cbiAgICAgIDxtYXQtY2FyZC1jb250ZW50PlxuICAgICAgICA8cD5cbiAgICAgICAgICB7eyBtZXNzYWdlIH19XG4gICAgICAgIDwvcD5cbiAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICAgIDxtYXQtY2FyZC1hY3Rpb25zPlxuICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cIm1lc3NhZ2UgPSBudWxsXCI+0JfQkNCa0KDQq9Ci0Kw8L2J1dHRvbj5cbiAgICAgIDwvbWF0LWNhcmQtYWN0aW9ucz5cbiAgICA8L21hdC1jYXJkPlxuICB9XG4gICJdfQ==
@@ -1,12 +1,13 @@
1
1
  import { Component, Input, ViewEncapsulation } from '@angular/core';
2
2
  import { TextTags } from '../../../extensions';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "../xml-tag-html-view/xml-tag-html-view.component";
5
- import * as i2 from "../xml-tag-text-view/xml-tag-text-view.component";
6
- import * as i3 from "../xml-tag-header-text-view/xml-tag-header-text-view.component";
7
- import * as i4 from "../xml-tag-external-video/xml-tag-external-video.component";
8
- import * as i5 from "../html-raw-view/html-raw-view.component";
9
- import * as i6 from "../file-image-tag-view/file-image-tag-view.component";
4
+ import * as i1 from "../../error-banner/error-banner.component";
5
+ import * as i2 from "../xml-tag-html-view/xml-tag-html-view.component";
6
+ import * as i3 from "../xml-tag-text-view/xml-tag-text-view.component";
7
+ import * as i4 from "../xml-tag-header-text-view/xml-tag-header-text-view.component";
8
+ import * as i5 from "../xml-tag-external-video/xml-tag-external-video.component";
9
+ import * as i6 from "../html-raw-view/html-raw-view.component";
10
+ import * as i7 from "../file-image-tag-view/file-image-tag-view.component";
10
11
  export class XmlTagViewComponent {
11
12
  constructor() {
12
13
  this.data = [];
@@ -15,12 +16,12 @@ export class XmlTagViewComponent {
15
16
  return TextTags.headerTextTags.includes(item.type);
16
17
  }
17
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: XmlTagViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: XmlTagViewComponent, selector: "croco-html-xml-tag-view", inputs: { data: "data" }, ngImport: i0, template: "<div>\n @for (item of data; track $index) {\n <div class=\"row\">\n\n @if (item.type === 'text') {\n <div>\n <croco-html-xml-tag-text-view [item]=\"item\"></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'html-raw') {\n <div>\n <croco-html-raw-view [rawHtml]=\"item.data.innerHTML\">\n </croco-html-raw-view>\n </div>\n }\n\n @if (isHeaderTextTag(item)) {\n <div>\n <croco-html-xml-tag-header-text-view [item]=\"item\"></croco-html-xml-tag-header-text-view>\n </div>\n }\n\n @if (item.type === 'file-image') {\n <div>\n <croco-html-file-image-tag-view [item]=\"item\"></croco-html-file-image-tag-view>\n </div>\n }\n\n @if (item.type === 'table') {\n <div>\n @if (item.data) {\n <croco-html-xml-tag-html-view [html]=\"item.data\">\n </croco-html-xml-tag-html-view>\n }\n </div>\n }\n\n @if (item.type === 'rich-text') {\n <div>\n <croco-html-xml-tag-text-view></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'external-video') {\n <div>\n <croco-html-xml-tag-external-video [data]=\"item\"></croco-html-xml-tag-external-video>\n </div>\n }\n\n @if (item.type === 'unsupported-tag') {\n <div class=\"red\" style=\"margin-top: 10px;\">\n <h4>\u0414\u0430\u043D\u043D\u044B\u0439 \u0442\u0435\u0433 \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F</h4>\n <span>\n {{item.data.tagString}}\n </span>\n </div>\n }\n </div>\n }\n</div>", styles: [".red{background-color:#c94444;color:#fff}\n"], dependencies: [{ kind: "component", type: i1.XmlTagHtmlViewComponent, selector: "croco-html-xml-tag-html-view", inputs: ["html"] }, { kind: "component", type: i2.XmlTagTextViewComponent, selector: "croco-html-xml-tag-text-view", inputs: ["item"] }, { kind: "component", type: i3.XmlTagHeaderTextViewComponent, selector: "croco-html-xml-tag-header-text-view", inputs: ["item"] }, { kind: "component", type: i4.XmlTagExternalVideoComponent, selector: "croco-html-xml-tag-external-video", inputs: ["data", "tagData"] }, { kind: "component", type: i5.HtmlRawViewComponent, selector: "croco-html-raw-view", inputs: ["rawHtml"] }, { kind: "component", type: i6.FileImageTagViewComponent, selector: "croco-html-file-image-tag-view", inputs: ["item"] }], encapsulation: i0.ViewEncapsulation.None }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: XmlTagViewComponent, selector: "croco-html-xml-tag-view", inputs: { data: "data" }, ngImport: i0, template: "<div>\n @for (item of data; track $index) {\n <div class=\"row\">\n\n @if (item.type === 'text') {\n <div>\n <croco-html-xml-tag-text-view [item]=\"item\"></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'html-raw') {\n <div>\n <croco-html-raw-view [rawHtml]=\"item.data.innerHTML\">\n </croco-html-raw-view>\n </div>\n }\n\n @if (isHeaderTextTag(item)) {\n <div>\n <croco-html-xml-tag-header-text-view [item]=\"item\"></croco-html-xml-tag-header-text-view>\n </div>\n }\n\n @if (item.type === 'file-image') {\n <div>\n <croco-html-file-image-tag-view [item]=\"item\"></croco-html-file-image-tag-view>\n </div>\n }\n\n @if (item.type === 'table' && item.validationResult) {\n \n @if (item.validationResult.isSucceeded){\n <croco-html-xml-tag-html-view [html]=\"item.bootstrapHtml\">\n </croco-html-xml-tag-html-view>\n }\n @else {\n <croco-html-error-banner\n [message]=\"item.validationResult.message\">\n </croco-html-error-banner>\n }\n }\n\n @if (item.type === 'rich-text') {\n <div>\n <croco-html-xml-tag-text-view></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'external-video') {\n <div>\n <croco-html-xml-tag-external-video [data]=\"item\"></croco-html-xml-tag-external-video>\n </div>\n }\n\n @if (item.type === 'unsupported-tag') {\n <div class=\"red\" style=\"margin-top: 10px;\">\n <h4>\u0414\u0430\u043D\u043D\u044B\u0439 \u0442\u0435\u0433 \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F</h4>\n <span>\n {{item.data.tagString}}\n </span>\n </div>\n }\n </div>\n }\n</div>", styles: [".red{background-color:#c94444;color:#fff}\n"], dependencies: [{ kind: "component", type: i1.ErrorBannerComponent, selector: "croco-html-error-banner", inputs: ["message"] }, { kind: "component", type: i2.XmlTagHtmlViewComponent, selector: "croco-html-xml-tag-html-view", inputs: ["html"] }, { kind: "component", type: i3.XmlTagTextViewComponent, selector: "croco-html-xml-tag-text-view", inputs: ["item"] }, { kind: "component", type: i4.XmlTagHeaderTextViewComponent, selector: "croco-html-xml-tag-header-text-view", inputs: ["item"] }, { kind: "component", type: i5.XmlTagExternalVideoComponent, selector: "croco-html-xml-tag-external-video", inputs: ["data", "tagData"] }, { kind: "component", type: i6.HtmlRawViewComponent, selector: "croco-html-raw-view", inputs: ["rawHtml"] }, { kind: "component", type: i7.FileImageTagViewComponent, selector: "croco-html-file-image-tag-view", inputs: ["item"] }], encapsulation: i0.ViewEncapsulation.None }); }
19
20
  }
20
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: XmlTagViewComponent, decorators: [{
21
22
  type: Component,
22
- args: [{ selector: 'croco-html-xml-tag-view', encapsulation: ViewEncapsulation.None, template: "<div>\n @for (item of data; track $index) {\n <div class=\"row\">\n\n @if (item.type === 'text') {\n <div>\n <croco-html-xml-tag-text-view [item]=\"item\"></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'html-raw') {\n <div>\n <croco-html-raw-view [rawHtml]=\"item.data.innerHTML\">\n </croco-html-raw-view>\n </div>\n }\n\n @if (isHeaderTextTag(item)) {\n <div>\n <croco-html-xml-tag-header-text-view [item]=\"item\"></croco-html-xml-tag-header-text-view>\n </div>\n }\n\n @if (item.type === 'file-image') {\n <div>\n <croco-html-file-image-tag-view [item]=\"item\"></croco-html-file-image-tag-view>\n </div>\n }\n\n @if (item.type === 'table') {\n <div>\n @if (item.data) {\n <croco-html-xml-tag-html-view [html]=\"item.data\">\n </croco-html-xml-tag-html-view>\n }\n </div>\n }\n\n @if (item.type === 'rich-text') {\n <div>\n <croco-html-xml-tag-text-view></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'external-video') {\n <div>\n <croco-html-xml-tag-external-video [data]=\"item\"></croco-html-xml-tag-external-video>\n </div>\n }\n\n @if (item.type === 'unsupported-tag') {\n <div class=\"red\" style=\"margin-top: 10px;\">\n <h4>\u0414\u0430\u043D\u043D\u044B\u0439 \u0442\u0435\u0433 \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F</h4>\n <span>\n {{item.data.tagString}}\n </span>\n </div>\n }\n </div>\n }\n</div>", styles: [".red{background-color:#c94444;color:#fff}\n"] }]
23
+ args: [{ selector: 'croco-html-xml-tag-view', encapsulation: ViewEncapsulation.None, template: "<div>\n @for (item of data; track $index) {\n <div class=\"row\">\n\n @if (item.type === 'text') {\n <div>\n <croco-html-xml-tag-text-view [item]=\"item\"></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'html-raw') {\n <div>\n <croco-html-raw-view [rawHtml]=\"item.data.innerHTML\">\n </croco-html-raw-view>\n </div>\n }\n\n @if (isHeaderTextTag(item)) {\n <div>\n <croco-html-xml-tag-header-text-view [item]=\"item\"></croco-html-xml-tag-header-text-view>\n </div>\n }\n\n @if (item.type === 'file-image') {\n <div>\n <croco-html-file-image-tag-view [item]=\"item\"></croco-html-file-image-tag-view>\n </div>\n }\n\n @if (item.type === 'table' && item.validationResult) {\n \n @if (item.validationResult.isSucceeded){\n <croco-html-xml-tag-html-view [html]=\"item.bootstrapHtml\">\n </croco-html-xml-tag-html-view>\n }\n @else {\n <croco-html-error-banner\n [message]=\"item.validationResult.message\">\n </croco-html-error-banner>\n }\n }\n\n @if (item.type === 'rich-text') {\n <div>\n <croco-html-xml-tag-text-view></croco-html-xml-tag-text-view>\n </div>\n }\n\n @if (item.type === 'external-video') {\n <div>\n <croco-html-xml-tag-external-video [data]=\"item\"></croco-html-xml-tag-external-video>\n </div>\n }\n\n @if (item.type === 'unsupported-tag') {\n <div class=\"red\" style=\"margin-top: 10px;\">\n <h4>\u0414\u0430\u043D\u043D\u044B\u0439 \u0442\u0435\u0433 \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F</h4>\n <span>\n {{item.data.tagString}}\n </span>\n </div>\n }\n </div>\n }\n</div>", styles: [".red{background-color:#c94444;color:#fff}\n"] }]
23
24
  }], propDecorators: { data: [{
24
25
  type: Input
25
26
  }] } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL3htbC10YWdzL3htbC10YWctdmlldy94bWwtdGFnLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy12aWV3L3htbC10YWctdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7O0FBUS9DLE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFTRSxTQUFJLEdBQW9CLEVBQUUsQ0FBQztLQUs1QjtJQUhDLGVBQWUsQ0FBQyxJQUFvQjtRQUNsQyxPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDOzhHQVBVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHlGQ1ZoQyxna0RBNERNOzsyRkRsRE8sbUJBQW1CO2tCQU4vQixTQUFTOytCQUNFLHlCQUF5QixpQkFHcEIsaUJBQWlCLENBQUMsSUFBSTs4QkFLckMsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnRlcmZhY2VCbG9jayB9IGZyb20gXCIuLi8uLi8uLi9leHRlbnNpb25zL0ludGVyZmFjZUJsb2NrXCI7XG5pbXBvcnQgeyBUZXh0VGFncyB9IGZyb20gJy4uLy4uLy4uL2V4dGVuc2lvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjcm9jby1odG1sLXhtbC10YWctdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi94bWwtdGFnLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi94bWwtdGFnLXZpZXcuY29tcG9uZW50LmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBYbWxUYWdWaWV3Q29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBkYXRhOkludGVyZmFjZUJsb2NrW10gPSBbXTtcblxuICBpc0hlYWRlclRleHRUYWcoaXRlbTogSW50ZXJmYWNlQmxvY2spIHtcbiAgICByZXR1cm4gVGV4dFRhZ3MuaGVhZGVyVGV4dFRhZ3MuaW5jbHVkZXMoaXRlbS50eXBlKTtcbiAgfVxufVxuIiwiPGRpdj5cbiAgQGZvciAoaXRlbSBvZiBkYXRhOyB0cmFjayAkaW5kZXgpIHtcbiAgPGRpdiBjbGFzcz1cInJvd1wiPlxuXG4gICAgQGlmIChpdGVtLnR5cGUgPT09ICd0ZXh0Jykge1xuICAgICAgPGRpdj5cbiAgICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy10ZXh0LXZpZXcgW2l0ZW1dPVwiaXRlbVwiPjwvY3JvY28taHRtbC14bWwtdGFnLXRleHQtdmlldz5cbiAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIEBpZiAoaXRlbS50eXBlID09PSAnaHRtbC1yYXcnKSB7XG4gICAgPGRpdj5cbiAgICAgIDxjcm9jby1odG1sLXJhdy12aWV3IFtyYXdIdG1sXT1cIml0ZW0uZGF0YS5pbm5lckhUTUxcIj5cbiAgICAgIDwvY3JvY28taHRtbC1yYXctdmlldz5cbiAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKGlzSGVhZGVyVGV4dFRhZyhpdGVtKSkge1xuICAgIDxkaXY+XG4gICAgICA8Y3JvY28taHRtbC14bWwtdGFnLWhlYWRlci10ZXh0LXZpZXcgW2l0ZW1dPVwiaXRlbVwiPjwvY3JvY28taHRtbC14bWwtdGFnLWhlYWRlci10ZXh0LXZpZXc+XG4gICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChpdGVtLnR5cGUgPT09ICdmaWxlLWltYWdlJykge1xuICAgIDxkaXY+XG4gICAgICA8Y3JvY28taHRtbC1maWxlLWltYWdlLXRhZy12aWV3IFtpdGVtXT1cIml0ZW1cIj48L2Nyb2NvLWh0bWwtZmlsZS1pbWFnZS10YWctdmlldz5cbiAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ3RhYmxlJykge1xuICAgIDxkaXY+XG4gICAgICBAaWYgKGl0ZW0uZGF0YSkge1xuICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy1odG1sLXZpZXcgW2h0bWxdPVwiaXRlbS5kYXRhXCI+XG4gICAgICA8L2Nyb2NvLWh0bWwteG1sLXRhZy1odG1sLXZpZXc+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChpdGVtLnR5cGUgPT09ICdyaWNoLXRleHQnKSB7XG4gICAgPGRpdj5cbiAgICAgIDxjcm9jby1odG1sLXhtbC10YWctdGV4dC12aWV3PjwvY3JvY28taHRtbC14bWwtdGFnLXRleHQtdmlldz5cbiAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2V4dGVybmFsLXZpZGVvJykge1xuICAgIDxkaXY+XG4gICAgICA8Y3JvY28taHRtbC14bWwtdGFnLWV4dGVybmFsLXZpZGVvIFtkYXRhXT1cIml0ZW1cIj48L2Nyb2NvLWh0bWwteG1sLXRhZy1leHRlcm5hbC12aWRlbz5cbiAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ3Vuc3VwcG9ydGVkLXRhZycpIHtcbiAgICA8ZGl2IGNsYXNzPVwicmVkXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4O1wiPlxuICAgICAgPGg0PtCU0LDQvdC90YvQuSDRgtC10LMg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YLRgdGPPC9oND5cbiAgICAgIDxzcGFuPlxuICAgICAgICB7e2l0ZW0uZGF0YS50YWdTdHJpbmd9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIH1cbiAgPC9kaXY+XG4gIH1cbjwvZGl2PiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieG1sLXRhZy12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nyb2NvLWh0bWwvc3JjL2xpYi9jb21wb25lbnRzL3htbC10YWdzL3htbC10YWctdmlldy94bWwtdGFnLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2NvbXBvbmVudHMveG1sLXRhZ3MveG1sLXRhZy12aWV3L3htbC10YWctdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7OztBQVEvQyxNQUFNLE9BQU8sbUJBQW1CO0lBTmhDO1FBU0UsU0FBSSxHQUFvQixFQUFFLENBQUM7S0FLNUI7SUFIQyxlQUFlLENBQUMsSUFBb0I7UUFDbEMsT0FBTyxRQUFRLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQzs4R0FQVSxtQkFBbUI7a0dBQW5CLG1CQUFtQix5RkNWaEMsc3dEQWdFTTs7MkZEdERPLG1CQUFtQjtrQkFOL0IsU0FBUzsrQkFDRSx5QkFBeUIsaUJBR3BCLGlCQUFpQixDQUFDLElBQUk7OEJBS3JDLElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW50ZXJmYWNlQmxvY2sgfSBmcm9tIFwiLi4vLi4vLi4vZXh0ZW5zaW9ucy9JbnRlcmZhY2VCbG9ja1wiO1xuaW1wb3J0IHsgVGV4dFRhZ3MgfSBmcm9tICcuLi8uLi8uLi9leHRlbnNpb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3JvY28taHRtbC14bWwtdGFnLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4veG1sLXRhZy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4veG1sLXRhZy12aWV3LmNvbXBvbmVudC5jc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgWG1sVGFnVmlld0NvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgZGF0YTpJbnRlcmZhY2VCbG9ja1tdID0gW107XG5cbiAgaXNIZWFkZXJUZXh0VGFnKGl0ZW06IEludGVyZmFjZUJsb2NrKSB7XG4gICAgcmV0dXJuIFRleHRUYWdzLmhlYWRlclRleHRUYWdzLmluY2x1ZGVzKGl0ZW0udHlwZSk7XG4gIH1cbn1cbiIsIjxkaXY+XG4gIEBmb3IgKGl0ZW0gb2YgZGF0YTsgdHJhY2sgJGluZGV4KSB7XG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cblxuICAgIEBpZiAoaXRlbS50eXBlID09PSAndGV4dCcpIHtcbiAgICAgIDxkaXY+XG4gICAgICAgIDxjcm9jby1odG1sLXhtbC10YWctdGV4dC12aWV3IFtpdGVtXT1cIml0ZW1cIj48L2Nyb2NvLWh0bWwteG1sLXRhZy10ZXh0LXZpZXc+XG4gICAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKGl0ZW0udHlwZSA9PT0gJ2h0bWwtcmF3Jykge1xuICAgIDxkaXY+XG4gICAgICA8Y3JvY28taHRtbC1yYXctdmlldyBbcmF3SHRtbF09XCJpdGVtLmRhdGEuaW5uZXJIVE1MXCI+XG4gICAgICA8L2Nyb2NvLWh0bWwtcmF3LXZpZXc+XG4gICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChpc0hlYWRlclRleHRUYWcoaXRlbSkpIHtcbiAgICA8ZGl2PlxuICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItdGV4dC12aWV3IFtpdGVtXT1cIml0ZW1cIj48L2Nyb2NvLWh0bWwteG1sLXRhZy1oZWFkZXItdGV4dC12aWV3PlxuICAgIDwvZGl2PlxuICAgIH1cblxuICAgIEBpZiAoaXRlbS50eXBlID09PSAnZmlsZS1pbWFnZScpIHtcbiAgICA8ZGl2PlxuICAgICAgPGNyb2NvLWh0bWwtZmlsZS1pbWFnZS10YWctdmlldyBbaXRlbV09XCJpdGVtXCI+PC9jcm9jby1odG1sLWZpbGUtaW1hZ2UtdGFnLXZpZXc+XG4gICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChpdGVtLnR5cGUgPT09ICd0YWJsZScgJiYgaXRlbS52YWxpZGF0aW9uUmVzdWx0KSB7XG4gICAgICBcbiAgICAgIEBpZiAoaXRlbS52YWxpZGF0aW9uUmVzdWx0LmlzU3VjY2VlZGVkKXtcbiAgICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy1odG1sLXZpZXcgW2h0bWxdPVwiaXRlbS5ib290c3RyYXBIdG1sXCI+XG4gICAgICAgIDwvY3JvY28taHRtbC14bWwtdGFnLWh0bWwtdmlldz5cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgPGNyb2NvLWh0bWwtZXJyb3ItYmFubmVyXG4gICAgICAgICAgICBbbWVzc2FnZV09XCJpdGVtLnZhbGlkYXRpb25SZXN1bHQubWVzc2FnZVwiPlxuICAgICAgICA8L2Nyb2NvLWh0bWwtZXJyb3ItYmFubmVyPlxuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoaXRlbS50eXBlID09PSAncmljaC10ZXh0Jykge1xuICAgIDxkaXY+XG4gICAgICA8Y3JvY28taHRtbC14bWwtdGFnLXRleHQtdmlldz48L2Nyb2NvLWh0bWwteG1sLXRhZy10ZXh0LXZpZXc+XG4gICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChpdGVtLnR5cGUgPT09ICdleHRlcm5hbC12aWRlbycpIHtcbiAgICA8ZGl2PlxuICAgICAgPGNyb2NvLWh0bWwteG1sLXRhZy1leHRlcm5hbC12aWRlbyBbZGF0YV09XCJpdGVtXCI+PC9jcm9jby1odG1sLXhtbC10YWctZXh0ZXJuYWwtdmlkZW8+XG4gICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChpdGVtLnR5cGUgPT09ICd1bnN1cHBvcnRlZC10YWcnKSB7XG4gICAgPGRpdiBjbGFzcz1cInJlZFwiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweDtcIj5cbiAgICAgIDxoND7QlNCw0L3QvdGL0Lkg0YLQtdCzINC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGC0YHRjzwvaDQ+XG4gICAgICA8c3Bhbj5cbiAgICAgICAge3tpdGVtLmRhdGEudGFnU3RyaW5nfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuICB9XG48L2Rpdj4iXX0=
@@ -5,6 +5,7 @@ import { NgSelectModule } from "@ng-select/ng-select";
5
5
  import { CrocoHtmlDeclarations, MaterialModules } from ".";
6
6
  import { YouTubePlayerModule } from "@angular/youtube-player";
7
7
  import { VkVideoPlayerComponent } from "./components/editor/external-video-block/vk-video-player/vk-video-player.component";
8
+ import { ErrorBannerComponent } from "./components/error-banner/error-banner.component";
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "./components/upload-files-btn/upload-files-btn.component";
10
11
  import * as i2 from "./components/html-view/html-view.component";
@@ -66,12 +67,14 @@ export class CrocoHtmlModule {
66
67
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: CrocoHtmlModule, declarations: [i1.UploadFilesBtnComponent, i2.HtmlViewComponent, i3.XmlTagTableViewComponent, i4.XmlTagViewComponent, i5.XmlTagRichTextViewComponent, i6.XmlTagHtmlViewComponent, i7.XmlTagTextViewComponent, i8.XmlTagHeaderTextViewComponent, i9.XmlTagHeaderInnerTextViewComponent, i10.XmlTagExternalVideoComponent, i11.HtmlRawViewComponent, i12.FileImageTagViewComponent, i2.HtmlViewComponent, i13.MainEditorComponent, i14.FileIdSelectComponent, i15.TextEditorComponent, i16.ExternalVideoBlockComponent, i17.ImageEditorComponent, i18.MainEditorBlockComponent, i19.VisualEditorComponent, i20.AddFilesBtnComponent, i21.HtmlRawEditorComponent, i22.RichTextToHtmlPipe, i23.TagToSpanPipe, i24.ToPreviewPipe, i25.ToHtmlBodyTagsPipe, i26.ToPreviewHtmlPipe], imports: [CommonModule,
67
68
  FormsModule,
68
69
  ReactiveFormsModule,
69
- NgSelectModule, i27.MatBadgeModule, i28.MatTableModule, i29.MatExpansionModule, i30.MatFormFieldModule, i31.MatSnackBarModule, i32.MatProgressBarModule, i33.MatProgressSpinnerModule, i34.MatTabsModule, i35.MatMenuModule, i36.MatCardModule, i37.MatSelectModule, i38.MatTooltipModule, i39.MatCheckboxModule, i40.MatChipsModule, i41.MatListModule, i42.MatButtonModule, i43.MatInputModule, i44.MatDialogModule, i45.MatPaginatorModule, i46.MatDatepickerModule, i47.MatGridListModule, i48.MatSlideToggleModule, i49.MatTreeModule, i50.MatNativeDateModule, i51.MatAutocompleteModule, i52.MatSidenavModule, i53.MatIconModule, i54.DragDropModule, i55.MatButtonToggleModule, YouTubePlayerModule,
70
+ NgSelectModule, i27.MatBadgeModule, i28.MatTableModule, i29.MatExpansionModule, i30.MatFormFieldModule, i31.MatSnackBarModule, i32.MatProgressBarModule, i33.MatProgressSpinnerModule, i34.MatTabsModule, i35.MatMenuModule, i36.MatCardModule, i37.MatSelectModule, i38.MatTooltipModule, i39.MatCheckboxModule, i40.MatChipsModule, i41.MatListModule, i42.MatButtonModule, i43.MatInputModule, i44.MatDialogModule, i45.MatPaginatorModule, i46.MatDatepickerModule, i47.MatGridListModule, i48.MatSlideToggleModule, i49.MatTreeModule, i50.MatNativeDateModule, i51.MatAutocompleteModule, i52.MatSidenavModule, i53.MatIconModule, i54.DragDropModule, i55.MatButtonToggleModule, ErrorBannerComponent,
71
+ YouTubePlayerModule,
70
72
  VkVideoPlayerComponent], exports: [i1.UploadFilesBtnComponent, i2.HtmlViewComponent, i3.XmlTagTableViewComponent, i4.XmlTagViewComponent, i5.XmlTagRichTextViewComponent, i6.XmlTagHtmlViewComponent, i7.XmlTagTextViewComponent, i8.XmlTagHeaderTextViewComponent, i9.XmlTagHeaderInnerTextViewComponent, i10.XmlTagExternalVideoComponent, i11.HtmlRawViewComponent, i12.FileImageTagViewComponent, i2.HtmlViewComponent, i13.MainEditorComponent, i14.FileIdSelectComponent, i15.TextEditorComponent, i16.ExternalVideoBlockComponent, i17.ImageEditorComponent, i18.MainEditorBlockComponent, i19.VisualEditorComponent, i20.AddFilesBtnComponent, i21.HtmlRawEditorComponent, i22.RichTextToHtmlPipe, i23.TagToSpanPipe, i24.ToPreviewPipe, i25.ToHtmlBodyTagsPipe, i26.ToPreviewHtmlPipe] }); }
71
73
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CrocoHtmlModule, imports: [CommonModule,
72
74
  FormsModule,
73
75
  ReactiveFormsModule,
74
- NgSelectModule, MaterialModules, YouTubePlayerModule] }); }
76
+ NgSelectModule, MaterialModules, ErrorBannerComponent,
77
+ YouTubePlayerModule] }); }
75
78
  }
76
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CrocoHtmlModule, decorators: [{
77
80
  type: NgModule,
@@ -88,9 +91,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
88
91
  ReactiveFormsModule,
89
92
  NgSelectModule,
90
93
  ...MaterialModules,
94
+ ErrorBannerComponent,
91
95
  YouTubePlayerModule,
92
96
  VkVideoPlayerComponent
93
97
  ]
94
98
  }]
95
99
  }] });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JvY28taHRtbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY3JvY28taHRtbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFDSCxzQkFBc0IsRUFDekIsTUFBTSxvRkFBb0YsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUI1RixNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlOytHQUFmLGVBQWUseXZCQVRwQixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixjQUFjLDBvQkFFZCxtQkFBbUI7WUFDbkIsc0JBQXNCOytHQUdqQixlQUFlLFlBVHBCLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGNBQWMsRUFDWCxlQUFlLEVBQ2xCLG1CQUFtQjs7MkZBSWQsZUFBZTtrQkFqQjNCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNaLEdBQUcscUJBQXFCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxxQkFBcUI7cUJBQ3pCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLEdBQUcsZUFBZTt3QkFDbEIsbUJBQW1CO3dCQUNuQixzQkFBc0I7cUJBQ3pCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IE5nU2VsZWN0TW9kdWxlIH0gZnJvbSBcIkBuZy1zZWxlY3Qvbmctc2VsZWN0XCI7XG5pbXBvcnQgeyBDcm9jb0h0bWxEZWNsYXJhdGlvbnMsIE1hdGVyaWFsTW9kdWxlcyB9IGZyb20gXCIuXCI7XG5pbXBvcnQgeyBZb3VUdWJlUGxheWVyTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL3lvdXR1YmUtcGxheWVyXCI7XG5pbXBvcnQge1xuICAgIFZrVmlkZW9QbGF5ZXJDb21wb25lbnRcbn0gZnJvbSBcIi4vY29tcG9uZW50cy9lZGl0b3IvZXh0ZXJuYWwtdmlkZW8tYmxvY2svdmstdmlkZW8tcGxheWVyL3ZrLXZpZGVvLXBsYXllci5jb21wb25lbnRcIjtcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgIC4uLkNyb2NvSHRtbERlY2xhcmF0aW9ucyxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgIC4uLkNyb2NvSHRtbERlY2xhcmF0aW9ucyxcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdTZWxlY3RNb2R1bGUsXG4gICAgICAgIC4uLk1hdGVyaWFsTW9kdWxlcyxcbiAgICAgICAgWW91VHViZVBsYXllck1vZHVsZSxcbiAgICAgICAgVmtWaWRlb1BsYXllckNvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgQ3JvY29IdG1sTW9kdWxlIHsgfVxuIl19
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JvY28taHRtbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvY3JvY28taHRtbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFDSCxzQkFBc0IsRUFDekIsTUFBTSxvRkFBb0YsQ0FBQztBQUM1RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0J4RixNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlOytHQUFmLGVBQWUseXZCQVZwQixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixjQUFjLDBvQkFFZCxvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLHNCQUFzQjsrR0FHakIsZUFBZSxZQVZwQixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixjQUFjLEVBQ1gsZUFBZSxFQUNsQixvQkFBb0I7WUFDcEIsbUJBQW1COzsyRkFJZCxlQUFlO2tCQWxCM0IsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUU7d0JBQ1osR0FBRyxxQkFBcUI7cUJBQ3pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxHQUFHLHFCQUFxQjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsR0FBRyxlQUFlO3dCQUNsQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3FCQUN6QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gXCJAbmctc2VsZWN0L25nLXNlbGVjdFwiO1xuaW1wb3J0IHsgQ3JvY29IdG1sRGVjbGFyYXRpb25zLCBNYXRlcmlhbE1vZHVsZXMgfSBmcm9tIFwiLlwiO1xuaW1wb3J0IHsgWW91VHViZVBsYXllck1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci95b3V0dWJlLXBsYXllclwiO1xuaW1wb3J0IHtcbiAgICBWa1ZpZGVvUGxheWVyQ29tcG9uZW50XG59IGZyb20gXCIuL2NvbXBvbmVudHMvZWRpdG9yL2V4dGVybmFsLXZpZGVvLWJsb2NrL3ZrLXZpZGVvLXBsYXllci92ay12aWRlby1wbGF5ZXIuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBFcnJvckJhbm5lckNvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvZXJyb3ItYmFubmVyL2Vycm9yLWJhbm5lci5jb21wb25lbnRcIjtcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgIC4uLkNyb2NvSHRtbERlY2xhcmF0aW9ucyxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgIC4uLkNyb2NvSHRtbERlY2xhcmF0aW9ucyxcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdTZWxlY3RNb2R1bGUsXG4gICAgICAgIC4uLk1hdGVyaWFsTW9kdWxlcyxcbiAgICAgICAgRXJyb3JCYW5uZXJDb21wb25lbnQsXG4gICAgICAgIFlvdVR1YmVQbGF5ZXJNb2R1bGUsXG4gICAgICAgIFZrVmlkZW9QbGF5ZXJDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIENyb2NvSHRtbE1vZHVsZSB7IH1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJmYWNlQmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvZXh0ZW5zaW9ucy9JbnRlcmZhY2VCbG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgaW50ZXJmYWNlIEludGVyZmFjZUJsb2NrIHtcbiAgdHlwZTogc3RyaW5nO1xuICBkYXRhOiBhbnk7XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJmYWNlQmxvY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcm9jby1odG1sL3NyYy9saWIvZXh0ZW5zaW9ucy9JbnRlcmZhY2VCbG9jay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUFwaVJlc3BvbnNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2ZpbGUtdXBsb2FkLnNlcnZpY2VcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VCbG9jayB7XG4gIHR5cGU6IHN0cmluZztcbiAgZGF0YTogYW55O1xuICB2YWxpZGF0aW9uUmVzdWx0PzogQmFzZUFwaVJlc3BvbnNlIHwgdW5kZWZpbmVkO1xuICBib290c3RyYXBIdG1sPzogc3RyaW5nIHwgdW5kZWZpbmVkXG59XG4iXX0=
@@ -105,4 +105,4 @@ export class TableMethods {
105
105
  return rows;
106
106
  }
107
107
  }
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVNZXRob2RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2V4dGVuc2lvbnMvVGFibGVNZXRob2RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBb0IscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQW1DeEQsTUFBTSxPQUFPLFVBQVU7YUFDSCx1QkFBa0IsR0FBRyx1QkFBdUIsQ0FBQzthQUM3QyxVQUFLLEdBQUcsT0FBTyxDQUFDO2FBQ2hCLG1CQUFjLEdBQUcsa0JBQWtCLENBQUM7O0FBR3hELE1BQU0sT0FBTyxZQUFZO0lBRXJCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUEwQixFQUFFLE9BQXlCO1FBQzVFLElBQUksU0FBUyxHQUFlO1lBQ3hCLE1BQU0sRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUN4QyxJQUFJLEVBQUUsWUFBWSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDO1NBQ3JELENBQUM7UUFFRixJQUFJLE1BQU0sR0FBRztZQUNULElBQUksRUFBRSxVQUFVLENBQUMsS0FBSztZQUN0QixJQUFJLEVBQUUsU0FBUztZQUNmLGdCQUFnQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDO1lBQzVDLGFBQWEsRUFBRSxFQUFFO1NBQ3BCLENBQUE7UUFFRCxJQUFHLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFDLENBQUM7WUFDekIsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELE1BQU0sQ0FBQyxhQUFhLEdBQUcscUJB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SiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuZ3VsYXJNYXRlcmlhbFRhYmxlTWV0aG9kcyB9IGZyb20gJy4vQW5ndWxhck1hdGVyaWFsVGFibGVNZXRob2RzJztcbmltcG9ydCB7IEJvb3RzdHJhcFRhYmxlTWV0aG9kcyB9IGZyb20gJy4vQm9vdHN0cmFwVGFibGVNZXRob2RzJztcbmltcG9ydCB7IENyb2NvSHRtbE9wdGlvbnMsIEh0bWxFeHRyYWN0aW9uTWV0aG9kcyB9IGZyb20gJy4vSHRtbEV4dHJhY3Rpb25NZXRob2RzJztcbmltcG9ydCB7IEludGVyZmFjZUJsb2NrIH0gZnJvbSBcIi4vSW50ZXJmYWNlQmxvY2tcIjtcbmltcG9ydCB7IFRleHRTaW1wbGVNZXRob2RzIH0gZnJvbSAnLi9UZXh0U2ltcGxlTWV0aG9kcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFwaVJlc3BvbnNlIHtcbiAgICBpc1N1Y2NlZWRlZDogYm9vbGVhbjtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVIZWFkZXJEYXRhe1xuICAgIHR5cGU6IFwidGFibGUtaGVhZGVyXCI7XG4gICAgY29sdW1uczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVSb3dDb2x1bW5EYXRhIHtcbiAgICB0eXBlOiBcInRhYmxlLXJvdy1jb2x1bW4tZGF0YVwiO1xuICAgIGRhdGE6IHtcbiAgICAgICAgdGV4dDogc3RyaW5nO1xuICAgICAgICBjaGlsZHJlbjogSW50ZXJmYWNlQmxvY2tbXTtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVSb3dEYXRhIHtcbiAgICB0eXBlOiBcInRhYmxlLXJvdy1jb2x1bW5cIjtcbiAgICBjb2x1bW5zOiBUYWJsZVJvd0NvbHVtbkRhdGFbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZURhdGF7XG4gICAgaGVhZGVyOiBUYWJsZUhlYWRlckRhdGEsXG4gICAgcm93czogVGFibGVSb3dEYXRhW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZVRhZ0RhdGF7XG4gICAgdHlwZTogXCJ0YWJsZVwiO1xuICAgIGRhdGE6IFRhYmxlRGF0YTtcbn1cblxuZXhwb3J0IGNsYXNzIFRhYmxlVHlwZXN7XG4gICAgc3RhdGljIHJlYWRvbmx5IFRhYmxlUm93Q29sdW1uRGF0YSA9IFwidGFibGUtcm93LWNvbHVtbi1kYXRhXCI7XG4gICAgc3RhdGljIHJlYWRvbmx5IFRhYmxlID0gXCJ0YWJsZVwiO1xuICAgIHN0YXRpYyByZWFkb25seSBUYWJsZVJvd0NvbHVtbiA9IFwidGFibGUtcm93LWNvbHVtblwiO1xufVxuXG5leHBvcnQgY2xhc3MgVGFibGVNZXRob2RzIHtcblxuICAgIHN0YXRpYyBnZXRUYWJsZUZyb21IdG1sVGFnKHRhYmxlVGFnOiBIVE1MVGFibGVFbGVtZW50LCBvcHRpb25zOiBDcm9jb0h0bWxPcHRpb25zKSB7XG4gICAgICAgIGxldCB0YWJsZURhdGEgOiBUYWJsZURhdGEgPSB7XG4gICAgICAgICAgICBoZWFkZXI6IFRhYmxlTWV0aG9kcy5nZXRIZWFkZXIodGFibGVUYWcpLFxuICAgICAgICAgICAgcm93czogVGFibGVNZXRob2RzLmdldFRhYmxlUm93cyh0YWJsZVRhZywgb3B0aW9ucylcbiAgICAgICAgfTtcblxuICAgICAgICB2YXIgcmVzdWx0ID0ge1xuICAgICAgICAgICAgdHlwZTogVGFibGVUeXBlcy5UYWJsZSxcbiAgICAgICAgICAgIGRhdGE6IHRhYmxlRGF0YSxcbiAgICAgICAgICAgIHZhbGlkYXRpb25SZXN1bHQ6IHRoaXMuY2hlY2tUYWJsZSh0YWJsZURhdGEpLFxuICAgICAgICAgICAgYm9vdHN0cmFwSHRtbDogXCJcIlxuICAgICAgICB9XG5cbiAgICAgICAgaWYoIXJlc3VsdC52YWxpZGF0aW9uUmVzdWx0KXtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmVzdWx0LmJvb3RzdHJhcEh0bWwgPSBCb290c3RyYXBUYWJsZU1ldGhvZHMuQnVpbGRUYWJsZShyZXN1bHQuZGF0YSk7XG5cbiAgICAgICAgdmFyIGFuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YUNoZWNrID0gQW5ndWxhck1hdGVyaWFsVGFibGVNZXRob2RzLmNoZWNrQW5ndWxhck1hdGVyaWFsVGFibGVEYXRhKHRhYmxlRGF0YSk7XG5cbiAgICAgICAgaWYgKCFhbmd1bGFyTWF0ZXJpYWxUYWJsZURhdGFDaGVjay5pc1N1Y2NlZWRlZCkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICAgICAgYW5ndWxhck1hdGVyaWFsVGFibGVEYXRhQ2hlY2tcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgYW5ndWxhck1hdGVyaWFsVGFibGVEYXRhQ2hlY2ssXG4gICAgICAgICAgICBodG1sOiB0YWJsZVRhZy5vdXRlckhUTUwsXG4gICAgICAgICAgICBhbmd1bGFyTWF0ZXJpYWxUYWJsZURhdGE6IEFuZ3VsYXJNYXRlcmlhbFRhYmxlTWV0aG9kcy5nZXRBbmd1bGFyTWF0ZXJpYWxUYWJsZURhdGEodGFibGVEYXRhLmhlYWRlci5jb2x1bW5zLCB0YWJsZURhdGEucm93cyksXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgc3RhdGljIGNoZWNrVGFibGUodGFibGVEYXRhOiBUYWJsZURhdGEpIDogQmFzZUFwaVJlc3BvbnNle1xuXG4gICAgICAgIGxldCByb3dzID0gdGFibGVEYXRhLnJvd3M7XG5cbiAgICAgICAgbGV0IHByZXZSb3dDb3VudCA9IC0xO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvd3MubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHJvdyA9IHJvd3NbaV07XG5cbiAgICAgICAgICAgIGlmIChyb3cuY29sdW1ucy5sZW5ndGggIT09IHByZXZSb3dDb3VudCAmJiBwcmV2Um93Q291bnQgIT0gLTEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBpc1N1Y2NlZWRlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGDQntGI0LjQsdC60LAg0L/RgNC4INC+0LHRgNCw0LHQvtGC0LrQtSDRgNCw0LfQvNC10YLQutC4INGC0LDQsdC70LjRhtGLLiBgXG4gICAgICAgICAgICAgICAgICAgICAgICArIGDQmtC+0LvQuNGH0LXRgdGC0LLQviDQutC+0LvQvtC90L7QuiDQsiDQutCw0LbQtNC+0Lkg0YHRgtGA0L7QutC1INGC0LDQsdC70LjRhtGLINC00L7Qu9C20L3QviDRgdC+0L7RgtCy0LXRgdGC0LLQvtCy0LDRgtGMINC00YDRg9CzINC00YDRg9Cz0YMuIGBcbiAgICAgICAgICAgICAgICAgICAgICAgICsgYNCSINGB0YLRgNC+0LrQtSDRgtCw0LHQu9C40YbRiyDihJYke2kgKyAxfSDQutC+0LvQuNGH0LXRgdGC0LLQviDQutC+0LvQvtC90L7QuiA9ICR7cm93LmNvbHVtbnMubGVuZ3RofSwg0LAg0LIg0YHRgtGA0L7QutC1INCy0YvRiNC1ICR7cHJldlJvd0NvdW50fS5gXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHByZXZSb3dDb3VudCA9IHJvdy5jb2x1bW5zLmxlbmd0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpc1N1Y2NlZWRlZDogdHJ1ZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6IFwiT2tcIlxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBzdGF0aWMgZ2V0SGVhZGVyKHRhYmxlVGFnOiBIVE1MVGFibGVFbGVtZW50KSA6IFRhYmxlSGVhZGVyRGF0YSB7XG4gICAgICAgIGxldCBoZWFkZXIgPSB0YWJsZVRhZy50SGVhZDtcblxuICAgICAgICBpZihoZWFkZXIgPT09IG51bGwpe1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgdHIgPSBoZWFkZXIuY2hpbGRyZW4uaXRlbSgwKTtcblxuICAgICAgICBsZXQgaGVhZGVyQ29sdW1uczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRyLmNoaWxkcmVuLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICBjb25zdCBqRWxlbWVudCA9IHRyLmNoaWxkcmVuLml0ZW0oaikgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICAgIGhlYWRlckNvbHVtbnMucHVzaChqRWxlbWVudC5pbm5lckhUTUwpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHR5cGU6IFwidGFibGUtaGVhZGVyXCIsXG4gICAgICAgICAgICBjb2x1bW5zOiBoZWFkZXJDb2x1bW5zXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgc3RhdGljIGdldFRhYmxlUm93cyh0YWJsZVRhZzogSFRNTFRhYmxlRWxlbWVudCwgb3B0aW9uczogQ3JvY29IdG1sT3B0aW9ucyk6IEFycmF5PFRhYmxlUm93RGF0YT4ge1xuICAgICAgICBsZXQgdEJvZHkgPSB0YWJsZVRhZy50Qm9kaWVzLml0ZW0oMCk7XG5cbiAgICAgICAgbGV0IHJvd3M6IFRhYmxlUm93RGF0YVtdID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0Qm9keS5jaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgaUVsZW1lbnQgPSB0Qm9keS5jaGlsZHJlbi5pdGVtKGkpO1xuXG4gICAgICAgICAgICBsZXQgcm93Q29sdW1uczogVGFibGVSb3dDb2x1bW5EYXRhW10gPSBbXTtcblxuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBpRWxlbWVudC5jaGlsZHJlbi5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGpFbGVtZW50ID0gaUVsZW1lbnQuY2hpbGRyZW4uaXRlbShqKSBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICAgICAgICAgIGxldCBjaGlsZHJlbiA9IEh0bWxFeHRyYWN0aW9uTWV0aG9kcy50cmFuc2Zvcm1IdG1sRWxlbWVudFRvQmxvY2tzKGpFbGVtZW50LCBvcHRpb25zKTtcblxuICAgICAgICAgICAgICAgIGlmKGNoaWxkcmVuLmxlbmd0aCA9PT0gMCl7XG4gICAgICAgICAgICAgICAgICAgIHZhciB0ZXh0VGFnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInBcIik7XG4gICAgICAgICAgICAgICAgICAgIHRleHRUYWcuaW5uZXJIVE1MID0gakVsZW1lbnQuaW5uZXJIVE1MO1xuXG4gICAgICAgICAgICAgICAgICAgIHZhciB0ZXh0RWxlbSA9IFRleHRTaW1wbGVNZXRob2RzLkV4dHJhY3RUZXh0VGFnKHRleHRUYWcpO1xuXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2godGV4dEVsZW0pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHZhciByZXN1bHQ6VGFibGVSb3dDb2x1bW5EYXRhID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBUYWJsZVR5cGVzLlRhYmxlUm93Q29sdW1uRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogakVsZW1lbnQuaW5uZXJIVE1MLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICByb3dDb2x1bW5zLnB1c2gocmVzdWx0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcm93cy5wdXNoKHtcbiAgICAgICAgICAgICAgICB0eXBlOiBUYWJsZVR5cGVzLlRhYmxlUm93Q29sdW1uLFxuICAgICAgICAgICAgICAgIGNvbHVtbnM6IHJvd0NvbHVtbnNcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJvd3M7XG4gICAgfVxufVxuIl19
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVNZXRob2RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JvY28taHRtbC9zcmMvbGliL2V4dGVuc2lvbnMvVGFibGVNZXRob2RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBb0IscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQW1DeEQsTUFBTSxPQUFPLFVBQVU7YUFDSCx1QkFBa0IsR0FBRyx1QkFBdUIsQ0FBQzthQUM3QyxVQUFLLEdBQUcsT0FBTyxDQUFDO2FBQ2hCLG1CQUFjLEdBQUcsa0JBQWtCLENBQUM7O0FBR3hELE1BQU0sT0FBTyxZQUFZO0lBRXJCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUEwQixFQUFFLE9BQXlCO1FBQzVFLElBQUksU0FBUyxHQUFlO1lBQ3hCLE1BQU0sRUFBRSxZQUFZLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUN4QyxJQUFJLEVBQUUsWUFBWSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDO1NBQ3JELENBQUM7UUFFRixJQUFJLE1BQU0sR0FBRztZQUNULElBQUksRUFBRSxVQUFVLENBQUMsS0FBSztZQUN0QixJQUFJLEVBQUUsU0FBUztZQUNmLGdCQUFnQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDO1lBQzVDLGFBQWEsRUFBRSxFQUFFO1NBQ3BCLENBQUE7UUFFRCxJQUFHLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFDLENBQUM7WUFDekIsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELE1BQU0sQ0FBQyxhQUFhLEdBQUcscUJB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SiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuZ3VsYXJNYXRlcmlhbFRhYmxlTWV0aG9kcyB9IGZyb20gJy4vQW5ndWxhck1hdGVyaWFsVGFibGVNZXRob2RzJztcbmltcG9ydCB7IEJvb3RzdHJhcFRhYmxlTWV0aG9kcyB9IGZyb20gJy4vQm9vdHN0cmFwVGFibGVNZXRob2RzJztcbmltcG9ydCB7IENyb2NvSHRtbE9wdGlvbnMsIEh0bWxFeHRyYWN0aW9uTWV0aG9kcyB9IGZyb20gJy4vSHRtbEV4dHJhY3Rpb25NZXRob2RzJztcbmltcG9ydCB7IEludGVyZmFjZUJsb2NrIH0gZnJvbSBcIi4vSW50ZXJmYWNlQmxvY2tcIjtcbmltcG9ydCB7IFRleHRTaW1wbGVNZXRob2RzIH0gZnJvbSAnLi9UZXh0U2ltcGxlTWV0aG9kcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUFwaVJlc3BvbnNlIHtcbiAgICBpc1N1Y2NlZWRlZDogYm9vbGVhbjtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVIZWFkZXJEYXRhe1xuICAgIHR5cGU6IFwidGFibGUtaGVhZGVyXCI7XG4gICAgY29sdW1uczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVSb3dDb2x1bW5EYXRhIHtcbiAgICB0eXBlOiBcInRhYmxlLXJvdy1jb2x1bW4tZGF0YVwiO1xuICAgIGRhdGE6IHtcbiAgICAgICAgdGV4dDogc3RyaW5nO1xuICAgICAgICBjaGlsZHJlbjogSW50ZXJmYWNlQmxvY2tbXTtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVSb3dEYXRhIHtcbiAgICB0eXBlOiBcInRhYmxlLXJvdy1jb2x1bW5cIjtcbiAgICBjb2x1bW5zOiBUYWJsZVJvd0NvbHVtbkRhdGFbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZURhdGF7XG4gICAgaGVhZGVyOiBUYWJsZUhlYWRlckRhdGEsXG4gICAgcm93czogVGFibGVSb3dEYXRhW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBUYWJsZVRhZ0RhdGF7XG4gICAgdHlwZTogXCJ0YWJsZVwiO1xuICAgIGRhdGE6IFRhYmxlRGF0YTtcbn1cblxuZXhwb3J0IGNsYXNzIFRhYmxlVHlwZXMge1xuICAgIHN0YXRpYyByZWFkb25seSBUYWJsZVJvd0NvbHVtbkRhdGEgPSBcInRhYmxlLXJvdy1jb2x1bW4tZGF0YVwiO1xuICAgIHN0YXRpYyByZWFkb25seSBUYWJsZSA9IFwidGFibGVcIjtcbiAgICBzdGF0aWMgcmVhZG9ubHkgVGFibGVSb3dDb2x1bW4gPSBcInRhYmxlLXJvdy1jb2x1bW5cIjtcbn1cblxuZXhwb3J0IGNsYXNzIFRhYmxlTWV0aG9kcyB7XG5cbiAgICBzdGF0aWMgZ2V0VGFibGVGcm9tSHRtbFRhZyh0YWJsZVRhZzogSFRNTFRhYmxlRWxlbWVudCwgb3B0aW9uczogQ3JvY29IdG1sT3B0aW9ucykge1xuICAgICAgICBsZXQgdGFibGVEYXRhIDogVGFibGVEYXRhID0ge1xuICAgICAgICAgICAgaGVhZGVyOiBUYWJsZU1ldGhvZHMuZ2V0SGVhZGVyKHRhYmxlVGFnKSxcbiAgICAgICAgICAgIHJvd3M6IFRhYmxlTWV0aG9kcy5nZXRUYWJsZVJvd3ModGFibGVUYWcsIG9wdGlvbnMpXG4gICAgICAgIH07XG5cbiAgICAgICAgdmFyIHJlc3VsdCA9IHtcbiAgICAgICAgICAgIHR5cGU6IFRhYmxlVHlwZXMuVGFibGUsXG4gICAgICAgICAgICBkYXRhOiB0YWJsZURhdGEsXG4gICAgICAgICAgICB2YWxpZGF0aW9uUmVzdWx0OiB0aGlzLmNoZWNrVGFibGUodGFibGVEYXRhKSxcbiAgICAgICAgICAgIGJvb3RzdHJhcEh0bWw6IFwiXCJcbiAgICAgICAgfVxuXG4gICAgICAgIGlmKCFyZXN1bHQudmFsaWRhdGlvblJlc3VsdCl7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdC5ib290c3RyYXBIdG1sID0gQm9vdHN0cmFwVGFibGVNZXRob2RzLkJ1aWxkVGFibGUocmVzdWx0LmRhdGEpO1xuXG4gICAgICAgIHZhciBhbmd1bGFyTWF0ZXJpYWxUYWJsZURhdGFDaGVjayA9IEFuZ3VsYXJNYXRlcmlhbFRhYmxlTWV0aG9kcy5jaGVja0FuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YSh0YWJsZURhdGEpO1xuXG4gICAgICAgIGlmICghYW5ndWxhck1hdGVyaWFsVGFibGVEYXRhQ2hlY2suaXNTdWNjZWVkZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgICAgIGFuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YUNoZWNrXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAgIGFuZ3VsYXJNYXRlcmlhbFRhYmxlRGF0YUNoZWNrLFxuICAgICAgICAgICAgaHRtbDogdGFibGVUYWcub3V0ZXJIVE1MLFxuICAgICAgICAgICAgYW5ndWxhck1hdGVyaWFsVGFibGVEYXRhOiBBbmd1bGFyTWF0ZXJpYWxUYWJsZU1ldGhvZHMuZ2V0QW5ndWxhck1hdGVyaWFsVGFibGVEYXRhKHRhYmxlRGF0YS5oZWFkZXIuY29sdW1ucywgdGFibGVEYXRhLnJvd3MpLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHN0YXRpYyBjaGVja1RhYmxlKHRhYmxlRGF0YTogVGFibGVEYXRhKSA6IEJhc2VBcGlSZXNwb25zZXtcblxuICAgICAgICBsZXQgcm93cyA9IHRhYmxlRGF0YS5yb3dzO1xuXG4gICAgICAgIGxldCBwcmV2Um93Q291bnQgPSAtMTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3dzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCByb3cgPSByb3dzW2ldO1xuXG4gICAgICAgICAgICBpZiAocm93LmNvbHVtbnMubGVuZ3RoICE9PSBwcmV2Um93Q291bnQgJiYgcHJldlJvd0NvdW50ICE9IC0xKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgaXNTdWNjZWVkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiBg0J7RiNC40LHQutCwINC/0YDQuCDQvtCx0YDQsNCx0L7RgtC60LUg0YDQsNC30LzQtdGC0LrQuCDRgtCw0LHQu9C40YbRiy4gYFxuICAgICAgICAgICAgICAgICAgICAgICAgKyBg0JrQvtC70LjRh9C10YHRgtCy0L4g0LrQvtC70L7QvdC+0Log0LIg0LrQsNC20LTQvtC5INGB0YLRgNC+0LrQtSDRgtCw0LHQu9C40YbRiyDQtNC+0LvQttC90L4g0YHQvtC+0YLQstC10YHRgtCy0L7QstCw0YLRjCDQtNGA0YPQsyDQtNGA0YPQs9GDLiBgXG4gICAgICAgICAgICAgICAgICAgICAgICArIGDQkiDRgdGC0YDQvtC60LUg0YLQsNCx0LvQuNGG0Ysg4oSWJHtpICsgMX0g0LrQvtC70LjRh9C10YHRgtCy0L4g0LrQvtC70L7QvdC+0LogPSAke3Jvdy5jb2x1bW5zLmxlbmd0aH0sINCwINCyINGB0YLRgNC+0LrQtSDQstGL0YjQtSAke3ByZXZSb3dDb3VudH0uYFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcmV2Um93Q291bnQgPSByb3cuY29sdW1ucy5sZW5ndGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXNTdWNjZWVkZWQ6IHRydWUsXG4gICAgICAgICAgICBtZXNzYWdlOiBcIk9rXCJcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgc3RhdGljIGdldEhlYWRlcih0YWJsZVRhZzogSFRNTFRhYmxlRWxlbWVudCkgOiBUYWJsZUhlYWRlckRhdGEge1xuICAgICAgICBsZXQgaGVhZGVyID0gdGFibGVUYWcudEhlYWQ7XG5cbiAgICAgICAgaWYoaGVhZGVyID09PSBudWxsKXtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHRyID0gaGVhZGVyLmNoaWxkcmVuLml0ZW0oMCk7XG5cbiAgICAgICAgbGV0IGhlYWRlckNvbHVtbnM6IHN0cmluZ1tdID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0ci5jaGlsZHJlbi5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgY29uc3QgakVsZW1lbnQgPSB0ci5jaGlsZHJlbi5pdGVtKGopIGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgICAgICBoZWFkZXJDb2x1bW5zLnB1c2goakVsZW1lbnQuaW5uZXJIVE1MKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB0eXBlOiBcInRhYmxlLWhlYWRlclwiLFxuICAgICAgICAgICAgY29sdW1uczogaGVhZGVyQ29sdW1uc1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRUYWJsZVJvd3ModGFibGVUYWc6IEhUTUxUYWJsZUVsZW1lbnQsIG9wdGlvbnM6IENyb2NvSHRtbE9wdGlvbnMpOiBBcnJheTxUYWJsZVJvd0RhdGE+IHtcbiAgICAgICAgbGV0IHRCb2R5ID0gdGFibGVUYWcudEJvZGllcy5pdGVtKDApO1xuXG4gICAgICAgIGxldCByb3dzOiBUYWJsZVJvd0RhdGFbXSA9IFtdO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdEJvZHkuY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGlFbGVtZW50ID0gdEJvZHkuY2hpbGRyZW4uaXRlbShpKTtcblxuICAgICAgICAgICAgbGV0IHJvd0NvbHVtbnM6IFRhYmxlUm93Q29sdW1uRGF0YVtdID0gW107XG5cbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgaUVsZW1lbnQuY2hpbGRyZW4ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBqRWxlbWVudCA9IGlFbGVtZW50LmNoaWxkcmVuLml0ZW0oaikgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgICAgICAgICBsZXQgY2hpbGRyZW4gPSBIdG1sRXh0cmFjdGlvbk1ldGhvZHMudHJhbnNmb3JtSHRtbEVsZW1lbnRUb0Jsb2NrcyhqRWxlbWVudCwgb3B0aW9ucyk7XG5cbiAgICAgICAgICAgICAgICBpZihjaGlsZHJlbi5sZW5ndGggPT09IDApe1xuICAgICAgICAgICAgICAgICAgICB2YXIgdGV4dFRhZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJwXCIpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0VGFnLmlubmVySFRNTCA9IGpFbGVtZW50LmlubmVySFRNTDtcblxuICAgICAgICAgICAgICAgICAgICB2YXIgdGV4dEVsZW0gPSBUZXh0U2ltcGxlTWV0aG9kcy5FeHRyYWN0VGV4dFRhZyh0ZXh0VGFnKTtcblxuICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbi5wdXNoKHRleHRFbGVtKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB2YXIgcmVzdWx0OlRhYmxlUm93Q29sdW1uRGF0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogVGFibGVUeXBlcy5UYWJsZVJvd0NvbHVtbkRhdGEsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGpFbGVtZW50LmlubmVySFRNTCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgcm93Q29sdW1ucy5wdXNoKHJlc3VsdCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJvd3MucHVzaCh7XG4gICAgICAgICAgICAgICAgdHlwZTogVGFibGVUeXBlcy5UYWJsZVJvd0NvbHVtbixcbiAgICAgICAgICAgICAgICBjb2x1bW5zOiByb3dDb2x1bW5zXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByb3dzO1xuICAgIH1cbn1cbiJdfQ==