@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1317-c → 1.5.1317-d

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.
@@ -2,11 +2,13 @@ import { ChangeDetectionStrategy, Component, input, signal, ViewChild, ViewEncap
2
2
  import { FormControl } from '@angular/forms';
3
3
  import { BmbButtonDirective } from '../../directives/bmb-button/button.directive';
4
4
  import { BmbIconComponent } from '../bmb-icon/bmb-icon.component';
5
+ import { BmbTextEditorPromptComponent, } from './bmb-text-editor-prompt/bmb-text-editor-prompt.component';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/platform-browser";
8
+ import * as i2 from "../../services/projection/projection.service";
7
9
  export class BmbTextEditorComponent {
8
10
  detectAlignment() {
9
- const selection = window.getSelection();
11
+ const selection = globalThis.getSelection();
10
12
  if (selection && selection.rangeCount > 0) {
11
13
  const element = selection.getRangeAt(0)
12
14
  .commonAncestorContainer;
@@ -21,19 +23,24 @@ export class BmbTextEditorComponent {
21
23
  this.execCommand('styleWithCSS', 'true');
22
24
  this.execCommand('justify' + alignment.charAt(0).toUpperCase() + alignment.slice(1));
23
25
  }
24
- constructor(sanitizer) {
26
+ constructor(sanitizer, projectionContent) {
25
27
  this.sanitizer = sanitizer;
28
+ this.projectionContent = projectionContent;
26
29
  this.control = input(new FormControl(''));
27
30
  this.sanitizedContent = signal('');
28
31
  this.currentAlignment = 'left';
29
32
  this.showTableDialog = false;
30
33
  this.tableRows = 2;
31
34
  this.tableColumns = 2;
35
+ this.userSelection = null;
32
36
  }
33
37
  ngOnInit() {
34
- this.sanitizedContent.set(this.sanitizer.bypassSecurityTrustHtml(this.control().value || ''));
38
+ this.sanitizedContent.set(
39
+ // NOSONAR: Initial content sanitization
40
+ this.sanitizer.bypassSecurityTrustHtml(this.control().value || ''));
35
41
  this.control().valueChanges?.subscribe((value) => {
36
42
  if (value === null) {
43
+ // NOSONAR: Clear content sanitization
37
44
  this.sanitizedContent.set(this.sanitizer.bypassSecurityTrustHtml(''));
38
45
  }
39
46
  });
@@ -48,14 +55,60 @@ export class BmbTextEditorComponent {
48
55
  }
49
56
  }
50
57
  execCommand(command, value = null) {
58
+ if (this.userSelection) {
59
+ const selection = globalThis.getSelection();
60
+ if (selection) {
61
+ selection.removeAllRanges();
62
+ selection.addRange(this.userSelection);
63
+ }
64
+ }
51
65
  document.execCommand(command, false, value || undefined);
52
66
  this.updateContent();
67
+ this.userSelection = null;
68
+ }
69
+ openPrompt(type, event) {
70
+ this.userSelection = globalThis.getSelection()?.getRangeAt(0) || null;
71
+ const buttonNode = event.currentTarget;
72
+ this.projectionContent.openContent({
73
+ content: BmbTextEditorPromptComponent,
74
+ inputContext: { type },
75
+ outputContext: {
76
+ formValues: (values) => this.handleClosePrompt({ ...values, type }),
77
+ cancelForm: () => this.projectionContent.closeContent(),
78
+ },
79
+ targetRef: buttonNode,
80
+ });
81
+ }
82
+ handleClosePrompt(values) {
83
+ if (values['type'] === 'link' && values['prompt_url']) {
84
+ this.insertLink(values);
85
+ }
86
+ else if (values['type'] === 'image' && values['prompt_url']) {
87
+ this.insertImage(values);
88
+ }
89
+ this.projectionContent.closeContent();
90
+ }
91
+ insertLink(values) {
92
+ const selection = globalThis.getSelection();
93
+ if (!selection || selection.rangeCount === 0 || !values['prompt_url']) {
94
+ return;
95
+ }
96
+ this.execCommand('createLink', values['prompt_url']);
97
+ const range = selection.getRangeAt(0);
98
+ const parentNode = range.commonAncestorContainer.parentNode;
99
+ if (parentNode && parentNode instanceof HTMLAnchorElement) {
100
+ parentNode.target = values['target'] || '_self';
101
+ if (values['rel']) {
102
+ parentNode.rel = 'noopener noreferrer';
103
+ }
104
+ }
53
105
  }
54
- insertLink() {
55
- const url = prompt('Ingrese la URL:');
56
- if (url) {
57
- this.execCommand('createLink', url);
106
+ insertImage(values) {
107
+ const selection = globalThis.getSelection();
108
+ if (!selection || selection.rangeCount === 0 || !values['prompt_url']) {
109
+ return;
58
110
  }
111
+ this.execCommand('insertImage', values['prompt_url']);
59
112
  }
60
113
  updateContent() {
61
114
  this.control().setValue(this.editor.nativeElement.innerHTML);
@@ -67,17 +120,6 @@ export class BmbTextEditorComponent {
67
120
  getCurrentState() {
68
121
  return this.control().value;
69
122
  }
70
- insertImage() {
71
- const url = prompt('Ingrese la URL de la imagen:');
72
- if (url) {
73
- if (this.isValidImageUrl(url)) {
74
- this.execCommand('insertImage', url);
75
- }
76
- else {
77
- alert('La URL de la imagen no es válida.');
78
- }
79
- }
80
- }
81
123
  isValidImageUrl(url) {
82
124
  try {
83
125
  new URL(url); // Intenta crear un objeto URL
@@ -120,7 +162,7 @@ export class BmbTextEditorComponent {
120
162
  }
121
163
  // Método para insertar HTML en el editor
122
164
  insertHtml(html) {
123
- const selection = window.getSelection();
165
+ const selection = globalThis.getSelection();
124
166
  if (selection && selection.rangeCount > 0) {
125
167
  const range = selection.getRangeAt(0);
126
168
  const div = document.createElement('div');
@@ -129,14 +171,14 @@ export class BmbTextEditorComponent {
129
171
  this.updateContent();
130
172
  }
131
173
  }
132
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbTextEditorComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
133
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BmbTextEditorComponent, isStandalone: true, selector: "bmb-text-editor", inputs: { control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "editor", first: true, predicate: ["editor"], descendants: true }], ngImport: i0, template: "<section class=\"bmb_text-editor\">\n <header class=\"bmb_text-editor-header\">\n <span class=\"bmb_text-editor-header-group\">\n <select\n id=\"BmbTextEditorSelect\"\n class=\"bmb_text-editor-header-select\"\n (change)=\"handleChange($event, 'formatBlock')\"\n title=\"Estilo de p\u00E1rrafo\"\n >\n <option value=\"p\">P\u00E1rrafo</option>\n <option value=\"h1\">T\u00EDtulo 1</option>\n <option value=\"h2\">T\u00EDtulo 2</option>\n <option value=\"h3\">T\u00EDtulo 3</option>\n <option value=\"blockquote\">Cita</option>\n </select>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('bold')\"\n title=\"Negrita\"\n >\n <bmb-icon icon=\"format_bold\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('italic')\"\n title=\"Cursiva\"\n >\n <bmb-icon icon=\"format_italic\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('underline')\"\n title=\"Subrayado\"\n >\n <bmb-icon icon=\"format_underlined\" [size]=\"24\" />\n </button>\n <input\n id=\"BmbTextEditorColor\"\n type=\"color\"\n (change)=\"handleChange($event, 'foreColor')\"\n title=\"Color de texto\"\n />\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('left')\"\n [class.active]=\"currentAlignment === 'left'\"\n title=\"Alinear a la izquierda\"\n >\n <bmb-icon icon=\"format_align_left\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('center')\"\n [class.active]=\"currentAlignment === 'center'\"\n title=\"Centrar\"\n >\n <bmb-icon icon=\"format_align_center\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('right')\"\n [class.active]=\"currentAlignment === 'right'\"\n title=\"Alinear a la derecha\"\n >\n <bmb-icon icon=\"format_align_right\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertOrderedList')\"\n title=\"Lista numerada\"\n >\n <bmb-icon icon=\"format_list_numbered\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertUnorderedList')\"\n title=\"Lista con vi\u00F1etas\"\n >\n <bmb-icon icon=\"format_list_bulleted\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('indent')\"\n title=\"Aumentar sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_increase\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('outdent')\"\n title=\"Disminuir sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_decrease\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"insertLink()\"\n title=\"Insertar enlace\"\n >\n <bmb-icon icon=\"link\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"insertImage()\"\n title=\"Insertar imagen\"\n >\n <bmb-icon icon=\"image\" [size]=\"24\" />\n </button>\n <!-- <button bmbButton appearance=\"transparent\" size=\"micro\" type=\"button\" (click)=\"openTableDialog()\" title=\"Insertar tabla\">\n <bmb-icon icon=\"table_chart\" [size]=\"24\"/>\n </button> -->\n </span>\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"clearFormatting()\"\n title=\"Limpiar formato\"\n >\n <bmb-icon icon=\"format_clear\" [size]=\"24\" />\n </button>\n </span>\n </header>\n\n <div\n class=\"bmb_text-editor-content\"\n #editor\n contenteditable=\"true\"\n (input)=\"updateContent()\"\n [innerHTML]=\"sanitizedContent()\"\n ></div>\n</section>\n\n<!-- Di\u00E1logo para definir filas y columnas -->\n<dialog class=\"dialog-overlay\" [open]=\"showTableDialog\">\n <div class=\"dialog\">\n <h3>Insertar tabla</h3>\n <label for=\"rows\">Filas:</label>\n <input type=\"number\" id=\"rows\" min=\"1\" max=\"10\" />\n\n <label for=\"columns\">Columnas:</label>\n <input type=\"number\" id=\"columns\" min=\"1\" max=\"10\" />\n\n <div class=\"dialog-buttons\">\n <button type=\"button\" (click)=\"insertTable()\">Insertar</button>\n <button type=\"button\" (click)=\"closeTableDialog()\">Cancelar</button>\n </div>\n </div>\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_text-editor{border:.0625rem solid var(--general_contrasts-50);border-radius:var(--bmb-spacing-s);container-type:inline-size;display:flex;flex-flow:column}.bmb_text-editor-header{border-bottom:.0625rem solid var(--general_contrasts-50);padding:var(--bmb-spacing-s);display:flex;flex-wrap:nowrap;align-items:center;gap:var(--bmb-spacing-m);overflow:auto}.bmb_text-editor-header-select{background:transparent;border:0;cursor:pointer;color:var(--general_contrasts-100)}.bmb_text-editor-header-group{display:inline-flex;align-items:center;flex-wrap:nowrap}.bmb_text-editor-header-group:not(:last-child){padding-right:var(--bmb-spacing-m);border-right:.0625rem solid var(--general_contrasts-50)}.bmb_text-editor-content{padding:var(--bmb-spacing-s);background-color:var(--general_contrasts-input-background);min-height:100px;border-radius:0 0 var(--bmb-spacing-s) var(--bmb-spacing-s);flex:1}\n"], dependencies: [{ kind: "directive", type: BmbButtonDirective, selector: "[bmbButton]", inputs: ["icon", "iconSize", "position", "case", "appearance", "size", "isToggleActive", "enableButtonToggle", "isRounded", "isMobile", "iconAlt"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
174
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbTextEditorComponent, deps: [{ token: i1.DomSanitizer }, { token: i2.BmbProjectionContentService }], target: i0.ɵɵFactoryTarget.Component }); }
175
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BmbTextEditorComponent, isStandalone: true, selector: "bmb-text-editor", inputs: { control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "editor", first: true, predicate: ["editor"], descendants: true }], ngImport: i0, template: "<section class=\"bmb_text-editor\">\n <header class=\"bmb_text-editor-header\">\n <span class=\"bmb_text-editor-header-group\">\n <select\n id=\"BmbTextEditorSelect\"\n class=\"bmb_text-editor-header-select\"\n (change)=\"handleChange($event, 'formatBlock')\"\n title=\"Estilo de p\u00E1rrafo\"\n >\n <option value=\"p\">P\u00E1rrafo</option>\n <option value=\"h1\">T\u00EDtulo 1</option>\n <option value=\"h2\">T\u00EDtulo 2</option>\n <option value=\"h3\">T\u00EDtulo 3</option>\n <option value=\"blockquote\">Cita</option>\n </select>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('bold')\"\n title=\"Negrita\"\n >\n <bmb-icon icon=\"format_bold\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('italic')\"\n title=\"Cursiva\"\n >\n <bmb-icon icon=\"format_italic\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('underline')\"\n title=\"Subrayado\"\n >\n <bmb-icon icon=\"format_underlined\" [size]=\"24\" />\n </button>\n <input\n id=\"BmbTextEditorColor\"\n type=\"color\"\n (change)=\"handleChange($event, 'foreColor')\"\n title=\"Color de texto\"\n />\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('left')\"\n [class.active]=\"currentAlignment === 'left'\"\n title=\"Alinear a la izquierda\"\n >\n <bmb-icon icon=\"format_align_left\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('center')\"\n [class.active]=\"currentAlignment === 'center'\"\n title=\"Centrar\"\n >\n <bmb-icon icon=\"format_align_center\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('right')\"\n [class.active]=\"currentAlignment === 'right'\"\n title=\"Alinear a la derecha\"\n >\n <bmb-icon icon=\"format_align_right\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertOrderedList')\"\n title=\"Lista numerada\"\n >\n <bmb-icon icon=\"format_list_numbered\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertUnorderedList')\"\n title=\"Lista con vi\u00F1etas\"\n >\n <bmb-icon icon=\"format_list_bulleted\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('indent')\"\n title=\"Aumentar sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_increase\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('outdent')\"\n title=\"Disminuir sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_decrease\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"openPrompt('link', $event)\"\n title=\"Insertar enlace\"\n >\n <bmb-icon icon=\"link\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"openPrompt('image', $event)\"\n title=\"Insertar imagen\"\n >\n <bmb-icon icon=\"image\" [size]=\"24\" />\n </button>\n <!-- <button bmbButton appearance=\"transparent\" size=\"micro\" type=\"button\" (click)=\"openTableDialog()\" title=\"Insertar tabla\">\n <bmb-icon icon=\"table_chart\" [size]=\"24\"/>\n </button> -->\n </span>\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"clearFormatting()\"\n title=\"Limpiar formato\"\n >\n <bmb-icon icon=\"format_clear\" [size]=\"24\" />\n </button>\n </span>\n </header>\n\n <div\n class=\"bmb_text-editor-content\"\n #editor\n contenteditable=\"true\"\n (input)=\"updateContent()\"\n [innerHTML]=\"sanitizedContent()\"\n ></div>\n</section>\n\n<!-- Di\u00E1logo para definir filas y columnas -->\n<dialog class=\"dialog-overlay\" [open]=\"showTableDialog\">\n <div class=\"dialog\">\n <h3>Insertar tabla</h3>\n <label for=\"rows\">Filas:</label>\n <input type=\"number\" id=\"rows\" min=\"1\" max=\"10\" />\n\n <label for=\"columns\">Columnas:</label>\n <input type=\"number\" id=\"columns\" min=\"1\" max=\"10\" />\n\n <div class=\"dialog-buttons\">\n <button type=\"button\" (click)=\"insertTable()\">Insertar</button>\n <button type=\"button\" (click)=\"closeTableDialog()\">Cancelar</button>\n </div>\n </div>\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_text-editor{border:.0625rem solid var(--general_contrasts-50);border-radius:var(--bmb-spacing-s);container-type:inline-size;display:flex;flex-flow:column}.bmb_text-editor-header{border-bottom:.0625rem solid var(--general_contrasts-50);padding:var(--bmb-spacing-s);display:flex;flex-wrap:nowrap;align-items:center;gap:var(--bmb-spacing-m);overflow:auto}.bmb_text-editor-header-select{background:transparent;border:0;cursor:pointer;color:var(--general_contrasts-100)}.bmb_text-editor-header-group{display:inline-flex;align-items:center;flex-wrap:nowrap}.bmb_text-editor-header-group:not(:last-child){padding-right:var(--bmb-spacing-m);border-right:.0625rem solid var(--general_contrasts-50)}.bmb_text-editor-content{padding:var(--bmb-spacing-s);background-color:var(--general_contrasts-input-background);min-height:100px;border-radius:0 0 var(--bmb-spacing-s) var(--bmb-spacing-s);flex:1}\n"], dependencies: [{ kind: "directive", type: BmbButtonDirective, selector: "[bmbButton]", inputs: ["icon", "iconSize", "position", "case", "appearance", "size", "isToggleActive", "enableButtonToggle", "isRounded", "isMobile", "iconAlt"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
134
176
  }
135
177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbTextEditorComponent, decorators: [{
136
178
  type: Component,
137
- args: [{ selector: 'bmb-text-editor', standalone: true, imports: [BmbButtonDirective, BmbIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"bmb_text-editor\">\n <header class=\"bmb_text-editor-header\">\n <span class=\"bmb_text-editor-header-group\">\n <select\n id=\"BmbTextEditorSelect\"\n class=\"bmb_text-editor-header-select\"\n (change)=\"handleChange($event, 'formatBlock')\"\n title=\"Estilo de p\u00E1rrafo\"\n >\n <option value=\"p\">P\u00E1rrafo</option>\n <option value=\"h1\">T\u00EDtulo 1</option>\n <option value=\"h2\">T\u00EDtulo 2</option>\n <option value=\"h3\">T\u00EDtulo 3</option>\n <option value=\"blockquote\">Cita</option>\n </select>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('bold')\"\n title=\"Negrita\"\n >\n <bmb-icon icon=\"format_bold\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('italic')\"\n title=\"Cursiva\"\n >\n <bmb-icon icon=\"format_italic\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('underline')\"\n title=\"Subrayado\"\n >\n <bmb-icon icon=\"format_underlined\" [size]=\"24\" />\n </button>\n <input\n id=\"BmbTextEditorColor\"\n type=\"color\"\n (change)=\"handleChange($event, 'foreColor')\"\n title=\"Color de texto\"\n />\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('left')\"\n [class.active]=\"currentAlignment === 'left'\"\n title=\"Alinear a la izquierda\"\n >\n <bmb-icon icon=\"format_align_left\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('center')\"\n [class.active]=\"currentAlignment === 'center'\"\n title=\"Centrar\"\n >\n <bmb-icon icon=\"format_align_center\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('right')\"\n [class.active]=\"currentAlignment === 'right'\"\n title=\"Alinear a la derecha\"\n >\n <bmb-icon icon=\"format_align_right\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertOrderedList')\"\n title=\"Lista numerada\"\n >\n <bmb-icon icon=\"format_list_numbered\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertUnorderedList')\"\n title=\"Lista con vi\u00F1etas\"\n >\n <bmb-icon icon=\"format_list_bulleted\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('indent')\"\n title=\"Aumentar sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_increase\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('outdent')\"\n title=\"Disminuir sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_decrease\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"insertLink()\"\n title=\"Insertar enlace\"\n >\n <bmb-icon icon=\"link\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"insertImage()\"\n title=\"Insertar imagen\"\n >\n <bmb-icon icon=\"image\" [size]=\"24\" />\n </button>\n <!-- <button bmbButton appearance=\"transparent\" size=\"micro\" type=\"button\" (click)=\"openTableDialog()\" title=\"Insertar tabla\">\n <bmb-icon icon=\"table_chart\" [size]=\"24\"/>\n </button> -->\n </span>\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"clearFormatting()\"\n title=\"Limpiar formato\"\n >\n <bmb-icon icon=\"format_clear\" [size]=\"24\" />\n </button>\n </span>\n </header>\n\n <div\n class=\"bmb_text-editor-content\"\n #editor\n contenteditable=\"true\"\n (input)=\"updateContent()\"\n [innerHTML]=\"sanitizedContent()\"\n ></div>\n</section>\n\n<!-- Di\u00E1logo para definir filas y columnas -->\n<dialog class=\"dialog-overlay\" [open]=\"showTableDialog\">\n <div class=\"dialog\">\n <h3>Insertar tabla</h3>\n <label for=\"rows\">Filas:</label>\n <input type=\"number\" id=\"rows\" min=\"1\" max=\"10\" />\n\n <label for=\"columns\">Columnas:</label>\n <input type=\"number\" id=\"columns\" min=\"1\" max=\"10\" />\n\n <div class=\"dialog-buttons\">\n <button type=\"button\" (click)=\"insertTable()\">Insertar</button>\n <button type=\"button\" (click)=\"closeTableDialog()\">Cancelar</button>\n </div>\n </div>\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_text-editor{border:.0625rem solid var(--general_contrasts-50);border-radius:var(--bmb-spacing-s);container-type:inline-size;display:flex;flex-flow:column}.bmb_text-editor-header{border-bottom:.0625rem solid var(--general_contrasts-50);padding:var(--bmb-spacing-s);display:flex;flex-wrap:nowrap;align-items:center;gap:var(--bmb-spacing-m);overflow:auto}.bmb_text-editor-header-select{background:transparent;border:0;cursor:pointer;color:var(--general_contrasts-100)}.bmb_text-editor-header-group{display:inline-flex;align-items:center;flex-wrap:nowrap}.bmb_text-editor-header-group:not(:last-child){padding-right:var(--bmb-spacing-m);border-right:.0625rem solid var(--general_contrasts-50)}.bmb_text-editor-content{padding:var(--bmb-spacing-s);background-color:var(--general_contrasts-input-background);min-height:100px;border-radius:0 0 var(--bmb-spacing-s) var(--bmb-spacing-s);flex:1}\n"] }]
138
- }], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { editor: [{
179
+ args: [{ selector: 'bmb-text-editor', standalone: true, imports: [BmbButtonDirective, BmbIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"bmb_text-editor\">\n <header class=\"bmb_text-editor-header\">\n <span class=\"bmb_text-editor-header-group\">\n <select\n id=\"BmbTextEditorSelect\"\n class=\"bmb_text-editor-header-select\"\n (change)=\"handleChange($event, 'formatBlock')\"\n title=\"Estilo de p\u00E1rrafo\"\n >\n <option value=\"p\">P\u00E1rrafo</option>\n <option value=\"h1\">T\u00EDtulo 1</option>\n <option value=\"h2\">T\u00EDtulo 2</option>\n <option value=\"h3\">T\u00EDtulo 3</option>\n <option value=\"blockquote\">Cita</option>\n </select>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('bold')\"\n title=\"Negrita\"\n >\n <bmb-icon icon=\"format_bold\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('italic')\"\n title=\"Cursiva\"\n >\n <bmb-icon icon=\"format_italic\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('underline')\"\n title=\"Subrayado\"\n >\n <bmb-icon icon=\"format_underlined\" [size]=\"24\" />\n </button>\n <input\n id=\"BmbTextEditorColor\"\n type=\"color\"\n (change)=\"handleChange($event, 'foreColor')\"\n title=\"Color de texto\"\n />\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('left')\"\n [class.active]=\"currentAlignment === 'left'\"\n title=\"Alinear a la izquierda\"\n >\n <bmb-icon icon=\"format_align_left\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('center')\"\n [class.active]=\"currentAlignment === 'center'\"\n title=\"Centrar\"\n >\n <bmb-icon icon=\"format_align_center\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"applyAlignment('right')\"\n [class.active]=\"currentAlignment === 'right'\"\n title=\"Alinear a la derecha\"\n >\n <bmb-icon icon=\"format_align_right\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertOrderedList')\"\n title=\"Lista numerada\"\n >\n <bmb-icon icon=\"format_list_numbered\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('insertUnorderedList')\"\n title=\"Lista con vi\u00F1etas\"\n >\n <bmb-icon icon=\"format_list_bulleted\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('indent')\"\n title=\"Aumentar sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_increase\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"execCommand('outdent')\"\n title=\"Disminuir sangr\u00EDa\"\n >\n <bmb-icon icon=\"format_indent_decrease\" [size]=\"24\" />\n </button>\n </span>\n\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"openPrompt('link', $event)\"\n title=\"Insertar enlace\"\n >\n <bmb-icon icon=\"link\" [size]=\"24\" />\n </button>\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"openPrompt('image', $event)\"\n title=\"Insertar imagen\"\n >\n <bmb-icon icon=\"image\" [size]=\"24\" />\n </button>\n <!-- <button bmbButton appearance=\"transparent\" size=\"micro\" type=\"button\" (click)=\"openTableDialog()\" title=\"Insertar tabla\">\n <bmb-icon icon=\"table_chart\" [size]=\"24\"/>\n </button> -->\n </span>\n <span class=\"bmb_text-editor-header-group\">\n <button\n bmbButton\n appearance=\"transparent\"\n size=\"micro\"\n type=\"button\"\n (click)=\"clearFormatting()\"\n title=\"Limpiar formato\"\n >\n <bmb-icon icon=\"format_clear\" [size]=\"24\" />\n </button>\n </span>\n </header>\n\n <div\n class=\"bmb_text-editor-content\"\n #editor\n contenteditable=\"true\"\n (input)=\"updateContent()\"\n [innerHTML]=\"sanitizedContent()\"\n ></div>\n</section>\n\n<!-- Di\u00E1logo para definir filas y columnas -->\n<dialog class=\"dialog-overlay\" [open]=\"showTableDialog\">\n <div class=\"dialog\">\n <h3>Insertar tabla</h3>\n <label for=\"rows\">Filas:</label>\n <input type=\"number\" id=\"rows\" min=\"1\" max=\"10\" />\n\n <label for=\"columns\">Columnas:</label>\n <input type=\"number\" id=\"columns\" min=\"1\" max=\"10\" />\n\n <div class=\"dialog-buttons\">\n <button type=\"button\" (click)=\"insertTable()\">Insertar</button>\n <button type=\"button\" (click)=\"closeTableDialog()\">Cancelar</button>\n </div>\n </div>\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_text-editor{border:.0625rem solid var(--general_contrasts-50);border-radius:var(--bmb-spacing-s);container-type:inline-size;display:flex;flex-flow:column}.bmb_text-editor-header{border-bottom:.0625rem solid var(--general_contrasts-50);padding:var(--bmb-spacing-s);display:flex;flex-wrap:nowrap;align-items:center;gap:var(--bmb-spacing-m);overflow:auto}.bmb_text-editor-header-select{background:transparent;border:0;cursor:pointer;color:var(--general_contrasts-100)}.bmb_text-editor-header-group{display:inline-flex;align-items:center;flex-wrap:nowrap}.bmb_text-editor-header-group:not(:last-child){padding-right:var(--bmb-spacing-m);border-right:.0625rem solid var(--general_contrasts-50)}.bmb_text-editor-content{padding:var(--bmb-spacing-s);background-color:var(--general_contrasts-input-background);min-height:100px;border-radius:0 0 var(--bmb-spacing-s) var(--bmb-spacing-s);flex:1}\n"] }]
180
+ }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i2.BmbProjectionContentService }], propDecorators: { editor: [{
139
181
  type: ViewChild,
140
182
  args: ['editor']
141
183
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItdGV4dC1lZGl0b3IvYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItdGV4dC1lZGl0b3IvYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7OztBQVdsRSxNQUFNLE9BQU8sc0JBQXNCO0lBV2pDLGVBQWU7UUFDYixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEMsSUFBSSxTQUFTLElBQUksU0FBUyxDQUFDLFVBQVUsR0FBRyxDQUFDLEVBQUU7WUFDekMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7aUJBQ3BDLHVCQUFzQyxDQUFDO1lBQzFDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUM7WUFFNUMsSUFBSSxhQUFhLEVBQUU7Z0JBQ2pCLE1BQU0sU0FBUyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLE1BQU0sQ0FBQztnQkFDMUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQzthQUNu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Q0FBQztZQUNwQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUNoQyxTQUFTLElBQUksK0RBQStELENBQUM7YUFDOUU7WUFDRCxTQUFTLElBQUksT0FBTyxDQUFDO1NBQ3RCO1FBQ0QsU0FBUyxJQUFJLFVBQVUsQ0FBQztRQUN4QixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQseUNBQXlDO0lBQ3pDLFVBQVUsQ0FBQyxJQUFZO1FBQ3JCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QyxJQUFJLFNBQVMsSUFBSSxTQUFTLENBQUMsVUFBVSxHQUFHLENBQUMsRUFBRTtZQUN6QyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUMsR0FBRyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDckIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7SUFDSCxDQUFDOytHQXBKVSxzQkFBc0I7bUdBQXRCLHNCQUFzQix1VEN6Qm5DLHc2TEF1TUEsMnhORHBMWSxrQkFBa0IsNE1BQUUsZ0JBQWdCOzs0RkFNbkMsc0JBQXNCO2tCQVRsQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUCxDQUFDLGtCQUFrQixFQUFFLGdCQUFnQixDQUFDLGlCQUdoQyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO2lGQUsxQixNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBpbnB1dCxcbiAgT25Jbml0LFxuICBzaWduYWwsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBCbWJCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1idXR0b24vYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCbWJJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWljb24vYm1iLWljb24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLXRleHQtZWRpdG9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0JtYkJ1dHRvbkRpcmVjdGl2ZSwgQm1iSWNvbkNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItdGV4dC1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYlRleHRFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkluaXQge1xuICBjb250cm9sID0gaW5wdXQ8Rm9ybUNvbnRyb2w+KG5ldyBGb3JtQ29udHJvbCgnJykpO1xuXG4gIEBWaWV3Q2hpbGQoJ2VkaXRvcicpIGVkaXRvciE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIHNhbml0aXplZENvbnRlbnQgPSBzaWduYWw8U2FmZUh0bWw+KCcnKTtcbiAgY3VycmVudEFsaWdubWVudDogc3RyaW5nID0gJ2xlZnQnO1xuICBzaG93VGFibGVEaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcbiAgdGFibGVSb3dzOiBudW1iZXIgPSAyO1xuICB0YWJsZUNvbHVtbnM6IG51bWJlciA9IDI7XG5cbiAgZGV0ZWN0QWxpZ25tZW50KCkge1xuICAgIGNvbnN0IHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICBpZiAoc2VsZWN0aW9uICYmIHNlbGVjdGlvbi5yYW5nZUNvdW50ID4gMCkge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApXG4gICAgICAgIC5jb21tb25BbmNlc3RvckNvbnRhaW5lciBhcyBIVE1MRWxlbWVudDtcbiAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSBlbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICAgIGlmIChwYXJlbnRFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHRleHRBbGlnbiA9IHBhcmVudEVsZW1lbnQuc3R5bGUudGV4dEFsaWduIHx8ICdsZWZ0JztcbiAgICAgICAgdGhpcy5jdXJyZW50QWxpZ25tZW50ID0gdGV4dEFsaWduO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGFwcGx5QWxpZ25tZW50KGFsaWdubWVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5leGVjQ29tbWFuZCgnc3R5bGVXaXRoQ1NTJywgJ3RydWUnKTtcbiAgICB0aGlzLmV4ZWNDb21tYW5kKFxuICAgICAgJ2p1c3RpZnknICsgYWxpZ25tZW50LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgYWxpZ25tZW50LnNsaWNlKDEpLFxuICAgICk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2FuaXRpemVkQ29udGVudC5zZXQodGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoXG4gICAgICB0aGlzLmNvbnRyb2woKS52YWx1ZSB8fCAnJyxcbiAgICApKTtcblxuICAgIHRoaXMuY29udHJvbCgpLnZhbHVlQ2hhbmdlcz8uc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICB0aGlzLnNhbml0aXplZENvbnRlbnQuc2V0KHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKCcnKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5lZGl0b3IubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgaGFuZGxlQ2hhbmdlKGV2ZW50OiBFdmVudCwgdHlwZTogc3RyaW5nKSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxTZWxlY3RFbGVtZW50O1xuICAgIGlmICh0YXJnZXQ/LnZhbHVlKSB7XG4gICAgICB0aGlzLmV4ZWNDb21tYW5kKHR5cGUsIHRhcmdldC52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgZXhlY0NvbW1hbmQoY29tbWFuZDogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGwpIHtcbiAgICBkb2N1bWVudC5leGVjQ29tbWFuZChjb21tYW5kLCBmYWxzZSwgdmFsdWUgfHwgdW5kZWZpbmVkKTtcbiAgICB0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcbiAgfVxuXG4gIGluc2VydExpbmsoKSB7XG4gICAgY29uc3QgdXJsID0gcHJvbXB0KCdJbmdyZXNlIGxhIFVSTDonKTtcbiAgICBpZiAodXJsKSB7XG4gICAgICB0aGlzLmV4ZWNDb21tYW5kKCdjcmVhdGVMaW5rJywgdXJsKTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVDb250ZW50KCkge1xuICAgIHRoaXMuY29udHJvbCgpLnNldFZhbHVlKHRoaXMuZWRpdG9yLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MKTtcbiAgfVxuXG4gIGNsZWFyRm9ybWF0dGluZygpIHtcbiAgICB0aGlzLmV4ZWNDb21tYW5kKCdyZW1vdmVGb3JtYXQnKTtcbiAgICB0aGlzLmV4ZWNDb21tYW5kKCd1bmxpbmsnKTtcbiAgfVxuXG4gIGdldEN1cnJlbnRTdGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sKCkudmFsdWU7XG4gIH1cblxuICBpbnNlcnRJbWFnZSgpIHtcbiAgICBjb25zdCB1cmwgPSBwcm9tcHQoJ0luZ3Jlc2UgbGEgVVJMIGRlIGxhIGltYWdlbjonKTtcbiAgICBpZiAodXJsKSB7XG4gICAgICBpZiAodGhpcy5pc1ZhbGlkSW1hZ2VVcmwodXJsKSkge1xuICAgICAgICB0aGlzLmV4ZWNDb21tYW5kKCdpbnNlcnRJbWFnZScsIHVybCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhbGVydCgnTGEgVVJMIGRlIGxhIGltYWdlbiBubyBlcyB2w6FsaWRhLicpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlzVmFsaWRJbWFnZVVybCh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRyeSB7XG4gICAgICBuZXcgVVJMKHVybCk7IC8vIEludGVudGEgY3JlYXIgdW4gb2JqZXRvIFVSTFxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvLyBNw6l0b2RvIHBhcmEgYWJyaXIgZWwgZGnDoWxvZ28gZGUgbGEgdGFibGFcbiAgb3BlblRhYmxlRGlhbG9nKCkge1xuICAgIHRoaXMuc2hvd1RhYmxlRGlhbG9nID0gdHJ1ZTtcbiAgfVxuXG4gIC8vIE3DqXRvZG8gcGFyYSBjZXJyYXIgZWwgZGnDoWxvZ28gZGUgbGEgdGFibGFcbiAgY2xvc2VUYWJsZURpYWxvZygpIHtcbiAgICB0aGlzLnNob3dUYWJsZURpYWxvZyA9IGZhbHNlO1xuICB9XG5cbiAgLy8gTcOpdG9kbyBwYXJhIGluc2VydGFyIGxhIHRhYmxhXG4gIGluc2VydFRhYmxlKCkge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLnRhYmxlUm93cztcbiAgICBjb25zdCBjb2x1bW5zID0gdGhpcy50YWJsZUNvbHVtbnM7XG5cbiAgICBpZiAocm93cyA+IDAgJiYgY29sdW1ucyA+IDApIHtcbiAgICAgIGNvbnN0IHRhYmxlSHRtbCA9IHRoaXMuZ2VuZXJhdGVUYWJsZUh0bWwocm93cywgY29sdW1ucyk7XG4gICAgICB0aGlzLmluc2VydEh0bWwodGFibGVIdG1sKTtcbiAgICAgIHRoaXMuY2xvc2VUYWJsZURpYWxvZygpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE3DqXRvZG8gcGFyYSBnZW5lcmFyIGVsIEhUTUwgZGUgbGEgdGFibGFcbiAgZ2VuZXJhdGVUYWJsZUh0bWwocm93czogbnVtYmVyLCBjb2x1bW5zOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGxldCB0YWJsZUh0bWwgPSAnPHRhYmxlIHN0eWxlPVwiYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgd2lkdGg6IDEwMCU7XCI+JztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvd3M7IGkrKykge1xuICAgICAgdGFibGVIdG1sICs9ICc8dHI+JztcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgY29sdW1uczsgaisrKSB7XG4gICAgICAgIHRhYmxlSHRtbCArPSBgPHRkIHN0eWxlPVwiYm9yZGVyOiAxcHggc29saWQgIzAwMDsgcGFkZGluZzogOHB4O1wiPiZuYnNwOzwvdGQ+YDtcbiAgICAgIH1cbiAgICAgIHRhYmxlSHRtbCArPSAnPC90cj4nO1xuICAgIH1cbiAgICB0YWJsZUh0bWwgKz0gJzwvdGFibGU+JztcbiAgICByZXR1cm4gdGFibGVIdG1sO1xuICB9XG5cbiAgLy8gTcOpdG9kbyBwYXJhIGluc2VydGFyIEhUTUwgZW4gZWwgZWRpdG9yXG4gIGluc2VydEh0bWwoaHRtbDogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpO1xuICAgIGlmIChzZWxlY3Rpb24gJiYgc2VsZWN0aW9uLnJhbmdlQ291bnQgPiAwKSB7XG4gICAgICBjb25zdCByYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApO1xuICAgICAgY29uc3QgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICBkaXYuaW5uZXJIVE1MID0gaHRtbDtcbiAgICAgIHJhbmdlLmluc2VydE5vZGUoZGl2KTtcbiAgICAgIHRoaXMudXBkYXRlQ29udGVudCgpO1xuICAgIH1cbiAgfVxufVxuIiwiPHNlY3Rpb24gY2xhc3M9XCJibWJfdGV4dC1lZGl0b3JcIj5cbiAgPGhlYWRlciBjbGFzcz1cImJtYl90ZXh0LWVkaXRvci1oZWFkZXJcIj5cbiAgICA8c3BhbiBjbGFzcz1cImJtYl90ZXh0LWVkaXRvci1oZWFkZXItZ3JvdXBcIj5cbiAgICAgIDxzZWxlY3RcbiAgICAgICAgaWQ9XCJCbWJUZXh0RWRpdG9yU2VsZWN0XCJcbiAgICAgICAgY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyLXNlbGVjdFwiXG4gICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudCwgJ2Zvcm1hdEJsb2NrJylcIlxuICAgICAgICB0aXRsZT1cIkVzdGlsbyBkZSBww6FycmFmb1wiXG4gICAgICA+XG4gICAgICAgIDxvcHRpb24gdmFsdWU9XCJwXCI+UMOhcnJhZm88L29wdGlvbj5cbiAgICAgICAgPG9wdGlvbiB2YWx1ZT1cImgxXCI+VMOtdHVsbyAxPC9vcHRpb24+XG4gICAgICAgIDxvcHRpb24gdmFsdWU9XCJoMlwiPlTDrXR1bG8gMjwvb3B0aW9uPlxuICAgICAgICA8b3B0aW9uIHZhbHVlPVwiaDNcIj5Uw610dWxvIDM8L29wdGlvbj5cbiAgICAgICAgPG9wdGlvbiB2YWx1ZT1cImJsb2NrcXVvdGVcIj5DaXRhPC9vcHRpb24+XG4gICAgICA8L3NlbGVjdD5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZXhlY0NvbW1hbmQoJ2JvbGQnKVwiXG4gICAgICAgIHRpdGxlPVwiTmVncml0YVwiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X2JvbGRcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZXhlY0NvbW1hbmQoJ2l0YWxpYycpXCJcbiAgICAgICAgdGl0bGU9XCJDdXJzaXZhXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJmb3JtYXRfaXRhbGljXCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImV4ZWNDb21tYW5kKCd1bmRlcmxpbmUnKVwiXG4gICAgICAgIHRpdGxlPVwiU3VicmF5YWRvXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJmb3JtYXRfdW5kZXJsaW5lZFwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGlucHV0XG4gICAgICAgIGlkPVwiQm1iVGV4dEVkaXRvckNvbG9yXCJcbiAgICAgICAgdHlwZT1cImNvbG9yXCJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50LCAnZm9yZUNvbG9yJylcIlxuICAgICAgICB0aXRsZT1cIkNvbG9yIGRlIHRleHRvXCJcbiAgICAgIC8+XG4gICAgPC9zcGFuPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyLWdyb3VwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImFwcGx5QWxpZ25tZW50KCdsZWZ0JylcIlxuICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImN1cnJlbnRBbGlnbm1lbnQgPT09ICdsZWZ0J1wiXG4gICAgICAgIHRpdGxlPVwiQWxpbmVhciBhIGxhIGl6cXVpZXJkYVwiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X2FsaWduX2xlZnRcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiYXBwbHlBbGlnbm1lbnQoJ2NlbnRlcicpXCJcbiAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJjdXJyZW50QWxpZ25tZW50ID09PSAnY2VudGVyJ1wiXG4gICAgICAgIHRpdGxlPVwiQ2VudHJhclwiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X2FsaWduX2NlbnRlclwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJhcHBseUFsaWdubWVudCgncmlnaHQnKVwiXG4gICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiY3VycmVudEFsaWdubWVudCA9PT0gJ3JpZ2h0J1wiXG4gICAgICAgIHRpdGxlPVwiQWxpbmVhciBhIGxhIGRlcmVjaGFcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9hbGlnbl9yaWdodFwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvc3Bhbj5cblxuICAgIDxzcGFuIGNsYXNzPVwiYm1iX3RleHQtZWRpdG9yLWhlYWRlci1ncm91cFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJleGVjQ29tbWFuZCgnaW5zZXJ0T3JkZXJlZExpc3QnKVwiXG4gICAgICAgIHRpdGxlPVwiTGlzdGEgbnVtZXJhZGFcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9saXN0X251bWJlcmVkXCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImV4ZWNDb21tYW5kKCdpbnNlcnRVbm9yZGVyZWRMaXN0JylcIlxuICAgICAgICB0aXRsZT1cIkxpc3RhIGNvbiB2acOxZXRhc1wiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X2xpc3RfYnVsbGV0ZWRcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NwYW4+XG5cbiAgICA8c3BhbiBjbGFzcz1cImJtYl90ZXh0LWVkaXRvci1oZWFkZXItZ3JvdXBcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZXhlY0NvbW1hbmQoJ2luZGVudCcpXCJcbiAgICAgICAgdGl0bGU9XCJBdW1lbnRhciBzYW5ncsOtYVwiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X2luZGVudF9pbmNyZWFzZVwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJleGVjQ29tbWFuZCgnb3V0ZGVudCcpXCJcbiAgICAgICAgdGl0bGU9XCJEaXNtaW51aXIgc2FuZ3LDrWFcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9pbmRlbnRfZGVjcmVhc2VcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NwYW4+XG5cbiAgICA8c3BhbiBjbGFzcz1cImJtYl90ZXh0LWVkaXRvci1oZWFkZXItZ3JvdXBcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiaW5zZXJ0TGluaygpXCJcbiAgICAgICAgdGl0bGU9XCJJbnNlcnRhciBlbmxhY2VcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImxpbmtcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiaW5zZXJ0SW1hZ2UoKVwiXG4gICAgICAgIHRpdGxlPVwiSW5zZXJ0YXIgaW1hZ2VuXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJpbWFnZVwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPCEtLSA8YnV0dG9uIGJtYkJ1dHRvbiBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIiBzaXplPVwibWljcm9cIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9wZW5UYWJsZURpYWxvZygpXCIgdGl0bGU9XCJJbnNlcnRhciB0YWJsYVwiPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cInRhYmxlX2NoYXJ0XCIgW3NpemVdPVwiMjRcIi8+XG4gICAgICA8L2J1dHRvbj4gLS0+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwiYm1iX3RleHQtZWRpdG9yLWhlYWRlci1ncm91cFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJjbGVhckZvcm1hdHRpbmcoKVwiXG4gICAgICAgIHRpdGxlPVwiTGltcGlhciBmb3JtYXRvXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJmb3JtYXRfY2xlYXJcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NwYW4+XG4gIDwvaGVhZGVyPlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cImJtYl90ZXh0LWVkaXRvci1jb250ZW50XCJcbiAgICAjZWRpdG9yXG4gICAgY29udGVudGVkaXRhYmxlPVwidHJ1ZVwiXG4gICAgKGlucHV0KT1cInVwZGF0ZUNvbnRlbnQoKVwiXG4gICAgW2lubmVySFRNTF09XCJzYW5pdGl6ZWRDb250ZW50KClcIlxuICA+PC9kaXY+XG48L3NlY3Rpb24+XG5cbjwhLS0gRGnDoWxvZ28gcGFyYSBkZWZpbmlyIGZpbGFzIHkgY29sdW1uYXMgLS0+XG48ZGlhbG9nIGNsYXNzPVwiZGlhbG9nLW92ZXJsYXlcIiBbb3Blbl09XCJzaG93VGFibGVEaWFsb2dcIj5cbiAgPGRpdiBjbGFzcz1cImRpYWxvZ1wiPlxuICAgIDxoMz5JbnNlcnRhciB0YWJsYTwvaDM+XG4gICAgPGxhYmVsIGZvcj1cInJvd3NcIj5GaWxhczo8L2xhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgaWQ9XCJyb3dzXCIgbWluPVwiMVwiIG1heD1cIjEwXCIgLz5cblxuICAgIDxsYWJlbCBmb3I9XCJjb2x1bW5zXCI+Q29sdW1uYXM6PC9sYWJlbD5cbiAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIGlkPVwiY29sdW1uc1wiIG1pbj1cIjFcIiBtYXg9XCIxMFwiIC8+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nLWJ1dHRvbnNcIj5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJpbnNlcnRUYWJsZSgpXCI+SW5zZXJ0YXI8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjbG9zZVRhYmxlRGlhbG9nKClcIj5DYW5jZWxhcjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGlhbG9nPlxuIl19
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItdGV4dC1lZGl0b3IvYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItdGV4dC1lZGl0b3IvYm1iLXRleHQtZWRpdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFbEUsT0FBTyxFQUNMLDRCQUE0QixHQUU3QixNQUFNLDJEQUEyRCxDQUFDOzs7O0FBV25FLE1BQU0sT0FBTyxzQkFBc0I7SUFZakMsZUFBZTtRQUNiLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1QyxJQUFJLFNBQVMsSUFBSSxTQUFTLENBQUMsVUFBVSxHQUFHLENBQUMsRUFBRTtZQUN6QyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztpQkFDcEMsdUJBQXNDLENBQUM7WUFDMUMsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztZQUU1QyxJQUFJLGFBQWEsRUFBRTtnQkFDakIsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksTUFBTSxD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QVk7UUFDckIsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzVDLElBQUksU0FBUyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxFQUFFO1lBQ3pDLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEMsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQyxHQUFHLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUNyQixLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtJQUNILENBQUM7K0dBdk1VLHNCQUFzQjttR0FBdEIsc0JBQXNCLHVUQzlCbkMsbzhMQXVNQSwyeE5EL0tZLGtCQUFrQiw0TUFBRSxnQkFBZ0I7OzRGQU1uQyxzQkFBc0I7a0JBVGxDLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUNQLENBQUMsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQUMsaUJBR2hDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07MkhBSzFCLE1BQU07c0JBQTFCLFNBQVM7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGlucHV0LFxuICBPbkluaXQsXG4gIHNpZ25hbCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEJtYkJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvYm1iLWJ1dHRvbi9idXR0b24uZGlyZWN0aXZlJztcbmltcG9ydCB7IEJtYkljb25Db21wb25lbnQgfSBmcm9tICcuLi9ibWItaWNvbi9ibWItaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iUHJvamVjdGlvbkNvbnRlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcHJvamVjdGlvbi9wcm9qZWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQm1iVGV4dEVkaXRvclByb21wdENvbXBvbmVudCxcbiAgSUJtYlRleHRFZGl0b3JQcm9tcHRUeXBlLFxufSBmcm9tICcuL2JtYi10ZXh0LWVkaXRvci1wcm9tcHQvYm1iLXRleHQtZWRpdG9yLXByb21wdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdibWItdGV4dC1lZGl0b3InLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQm1iQnV0dG9uRGlyZWN0aXZlLCBCbWJJY29uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi10ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9ibWItdGV4dC1lZGl0b3IuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iVGV4dEVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gIGNvbnRyb2wgPSBpbnB1dDxGb3JtQ29udHJvbD4obmV3IEZvcm1Db250cm9sKCcnKSk7XG5cbiAgQFZpZXdDaGlsZCgnZWRpdG9yJykgZWRpdG9yITogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgc2FuaXRpemVkQ29udGVudCA9IHNpZ25hbDxTYWZlSHRtbD4oJycpO1xuICBjdXJyZW50QWxpZ25tZW50OiBzdHJpbmcgPSAnbGVmdCc7XG4gIHNob3dUYWJsZURpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xuICB0YWJsZVJvd3M6IG51bWJlciA9IDI7XG4gIHRhYmxlQ29sdW1uczogbnVtYmVyID0gMjtcbiAgdXNlclNlbGVjdGlvbjogUmFuZ2UgfCBudWxsID0gbnVsbDtcblxuICBkZXRlY3RBbGlnbm1lbnQoKSB7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gZ2xvYmFsVGhpcy5nZXRTZWxlY3Rpb24oKTtcbiAgICBpZiAoc2VsZWN0aW9uICYmIHNlbGVjdGlvbi5yYW5nZUNvdW50ID4gMCkge1xuICAgICAgY29uc3QgZWxlbWVudCA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApXG4gICAgICAgIC5jb21tb25BbmNlc3RvckNvbnRhaW5lciBhcyBIVE1MRWxlbWVudDtcbiAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSBlbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgICAgIGlmIChwYXJlbnRFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHRleHRBbGlnbiA9IHBhcmVudEVsZW1lbnQuc3R5bGUudGV4dEFsaWduIHx8ICdsZWZ0JztcbiAgICAgICAgdGhpcy5jdXJyZW50QWxpZ25tZW50ID0gdGV4dEFsaWduO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGFwcGx5QWxpZ25tZW50KGFsaWdubWVudDogc3RyaW5nKSB7XG4gICAgdGhpcy5leGVjQ29tbWFuZCgnc3R5bGVXaXRoQ1NTJywgJ3RydWUnKTtcbiAgICB0aGlzLmV4ZWNDb21tYW5kKFxuICAgICAgJ2p1c3RpZnknICsgYWxpZ25tZW50LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgYWxpZ25tZW50LnNsaWNlKDEpLFxuICAgICk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvamVjdGlvbkNvbnRlbnQ6IEJtYlByb2plY3Rpb25Db250ZW50U2VydmljZSxcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2FuaXRpemVkQ29udGVudC5zZXQoXG4gICAgICAvLyBOT1NPTkFSOiBJbml0aWFsIGNvbnRlbnQgc2FuaXRpemF0aW9uXG4gICAgICB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbCh0aGlzLmNvbnRyb2woKS52YWx1ZSB8fCAnJyksXG4gICAgKTtcblxuICAgIHRoaXMuY29udHJvbCgpLnZhbHVlQ2hhbmdlcz8uc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIC8vIE5PU09OQVI6IENsZWFyIGNvbnRlbnQgc2FuaXRpemF0aW9uXG4gICAgICAgIHRoaXMuc2FuaXRpemVkQ29udGVudC5zZXQodGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoJycpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmVkaXRvci5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IEV2ZW50LCB0eXBlOiBzdHJpbmcpIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldD8udmFsdWUpIHtcbiAgICAgIHRoaXMuZXhlY0NvbW1hbmQodHlwZSwgdGFyZ2V0LnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBleGVjQ29tbWFuZChjb21tYW5kOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbCkge1xuICAgIGlmICh0aGlzLnVzZXJTZWxlY3Rpb24pIHtcbiAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IGdsb2JhbFRoaXMuZ2V0U2VsZWN0aW9uKCk7XG4gICAgICBpZiAoc2VsZWN0aW9uKSB7XG4gICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTtcbiAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHRoaXMudXNlclNlbGVjdGlvbik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoY29tbWFuZCwgZmFsc2UsIHZhbHVlIHx8IHVuZGVmaW5lZCk7XG4gICAgdGhpcy51cGRhdGVDb250ZW50KCk7XG5cbiAgICB0aGlzLnVzZXJTZWxlY3Rpb24gPSBudWxsO1xuICB9XG5cbiAgb3BlblByb21wdCh0eXBlOiBJQm1iVGV4dEVkaXRvclByb21wdFR5cGUsIGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy51c2VyU2VsZWN0aW9uID0gZ2xvYmFsVGhpcy5nZXRTZWxlY3Rpb24oKT8uZ2V0UmFuZ2VBdCgwKSB8fCBudWxsO1xuICAgIGNvbnN0IGJ1dHRvbk5vZGUgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgIHRoaXMucHJvamVjdGlvbkNvbnRlbnQub3BlbkNvbnRlbnQoe1xuICAgICAgY29udGVudDogQm1iVGV4dEVkaXRvclByb21wdENvbXBvbmVudCxcbiAgICAgIGlucHV0Q29udGV4dDogeyB0eXBlIH0sXG4gICAgICBvdXRwdXRDb250ZXh0OiB7XG4gICAgICAgIGZvcm1WYWx1ZXM6ICh2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PlxuICAgICAgICAgIHRoaXMuaGFuZGxlQ2xvc2VQcm9tcHQoeyAuLi52YWx1ZXMsIHR5cGUgfSksXG4gICAgICAgIGNhbmNlbEZvcm06ICgpID0+IHRoaXMucHJvamVjdGlvbkNvbnRlbnQuY2xvc2VDb250ZW50KCksXG4gICAgICB9LFxuICAgICAgdGFyZ2V0UmVmOiBidXR0b25Ob2RlLFxuICAgIH0pO1xuICB9XG5cbiAgaGFuZGxlQ2xvc2VQcm9tcHQodmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikge1xuICAgIGlmICh2YWx1ZXNbJ3R5cGUnXSA9PT0gJ2xpbmsnICYmIHZhbHVlc1sncHJvbXB0X3VybCddKSB7XG4gICAgICB0aGlzLmluc2VydExpbmsodmFsdWVzKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlc1sndHlwZSddID09PSAnaW1hZ2UnICYmIHZhbHVlc1sncHJvbXB0X3VybCddKSB7XG4gICAgICB0aGlzLmluc2VydEltYWdlKHZhbHVlcyk7XG4gICAgfVxuICAgIHRoaXMucHJvamVjdGlvbkNvbnRlbnQuY2xvc2VDb250ZW50KCk7XG4gIH1cblxuICBpbnNlcnRMaW5rKHZhbHVlczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBjb25zdCBzZWxlY3Rpb24gPSBnbG9iYWxUaGlzLmdldFNlbGVjdGlvbigpO1xuXG4gICAgaWYgKCFzZWxlY3Rpb24gfHwgc2VsZWN0aW9uLnJhbmdlQ291bnQgPT09IDAgfHwgIXZhbHVlc1sncHJvbXB0X3VybCddKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5leGVjQ29tbWFuZCgnY3JlYXRlTGluaycsIHZhbHVlc1sncHJvbXB0X3VybCddIGFzIHN0cmluZyk7XG4gICAgY29uc3QgcmFuZ2UgPSBzZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKTtcbiAgICBjb25zdCBwYXJlbnROb2RlID0gcmFuZ2UuY29tbW9uQW5jZXN0b3JDb250YWluZXIucGFyZW50Tm9kZTtcbiAgICBpZiAocGFyZW50Tm9kZSAmJiBwYXJlbnROb2RlIGluc3RhbmNlb2YgSFRNTEFuY2hvckVsZW1lbnQpIHtcbiAgICAgIHBhcmVudE5vZGUudGFyZ2V0ID0gKHZhbHVlc1sndGFyZ2V0J10gYXMgc3RyaW5nKSB8fCAnX3NlbGYnO1xuXG4gICAgICBpZiAodmFsdWVzWydyZWwnXSkge1xuICAgICAgICBwYXJlbnROb2RlLnJlbCA9ICdub29wZW5lciBub3JlZmVycmVyJztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnNlcnRJbWFnZSh2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSB7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gZ2xvYmFsVGhpcy5nZXRTZWxlY3Rpb24oKTtcblxuICAgIGlmICghc2VsZWN0aW9uIHx8IHNlbGVjdGlvbi5yYW5nZUNvdW50ID09PSAwIHx8ICF2YWx1ZXNbJ3Byb21wdF91cmwnXSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZXhlY0NvbW1hbmQoJ2luc2VydEltYWdlJywgdmFsdWVzWydwcm9tcHRfdXJsJ10gYXMgc3RyaW5nKTtcbiAgfVxuXG4gIHVwZGF0ZUNvbnRlbnQoKSB7XG4gICAgdGhpcy5jb250cm9sKCkuc2V0VmFsdWUodGhpcy5lZGl0b3IubmF0aXZlRWxlbWVudC5pbm5lckhUTUwpO1xuICB9XG5cbiAgY2xlYXJGb3JtYXR0aW5nKCkge1xuICAgIHRoaXMuZXhlY0NvbW1hbmQoJ3JlbW92ZUZvcm1hdCcpO1xuICAgIHRoaXMuZXhlY0NvbW1hbmQoJ3VubGluaycpO1xuICB9XG5cbiAgZ2V0Q3VycmVudFN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2woKS52YWx1ZTtcbiAgfVxuXG4gIGlzVmFsaWRJbWFnZVVybCh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHRyeSB7XG4gICAgICBuZXcgVVJMKHVybCk7IC8vIEludGVudGEgY3JlYXIgdW4gb2JqZXRvIFVSTFxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvLyBNw6l0b2RvIHBhcmEgYWJyaXIgZWwgZGnDoWxvZ28gZGUgbGEgdGFibGFcbiAgb3BlblRhYmxlRGlhbG9nKCkge1xuICAgIHRoaXMuc2hvd1RhYmxlRGlhbG9nID0gdHJ1ZTtcbiAgfVxuXG4gIC8vIE3DqXRvZG8gcGFyYSBjZXJyYXIgZWwgZGnDoWxvZ28gZGUgbGEgdGFibGFcbiAgY2xvc2VUYWJsZURpYWxvZygpIHtcbiAgICB0aGlzLnNob3dUYWJsZURpYWxvZyA9IGZhbHNlO1xuICB9XG5cbiAgLy8gTcOpdG9kbyBwYXJhIGluc2VydGFyIGxhIHRhYmxhXG4gIGluc2VydFRhYmxlKCkge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLnRhYmxlUm93cztcbiAgICBjb25zdCBjb2x1bW5zID0gdGhpcy50YWJsZUNvbHVtbnM7XG5cbiAgICBpZiAocm93cyA+IDAgJiYgY29sdW1ucyA+IDApIHtcbiAgICAgIGNvbnN0IHRhYmxlSHRtbCA9IHRoaXMuZ2VuZXJhdGVUYWJsZUh0bWwocm93cywgY29sdW1ucyk7XG4gICAgICB0aGlzLmluc2VydEh0bWwodGFibGVIdG1sKTtcbiAgICAgIHRoaXMuY2xvc2VUYWJsZURpYWxvZygpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE3DqXRvZG8gcGFyYSBnZW5lcmFyIGVsIEhUTUwgZGUgbGEgdGFibGFcbiAgZ2VuZXJhdGVUYWJsZUh0bWwocm93czogbnVtYmVyLCBjb2x1bW5zOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGxldCB0YWJsZUh0bWwgPSAnPHRhYmxlIHN0eWxlPVwiYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgd2lkdGg6IDEwMCU7XCI+JztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvd3M7IGkrKykge1xuICAgICAgdGFibGVIdG1sICs9ICc8dHI+JztcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgY29sdW1uczsgaisrKSB7XG4gICAgICAgIHRhYmxlSHRtbCArPSBgPHRkIHN0eWxlPVwiYm9yZGVyOiAxcHggc29saWQgIzAwMDsgcGFkZGluZzogOHB4O1wiPiZuYnNwOzwvdGQ+YDtcbiAgICAgIH1cbiAgICAgIHRhYmxlSHRtbCArPSAnPC90cj4nO1xuICAgIH1cbiAgICB0YWJsZUh0bWwgKz0gJzwvdGFibGU+JztcbiAgICByZXR1cm4gdGFibGVIdG1sO1xuICB9XG5cbiAgLy8gTcOpdG9kbyBwYXJhIGluc2VydGFyIEhUTUwgZW4gZWwgZWRpdG9yXG4gIGluc2VydEh0bWwoaHRtbDogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gZ2xvYmFsVGhpcy5nZXRTZWxlY3Rpb24oKTtcbiAgICBpZiAoc2VsZWN0aW9uICYmIHNlbGVjdGlvbi5yYW5nZUNvdW50ID4gMCkge1xuICAgICAgY29uc3QgcmFuZ2UgPSBzZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKTtcbiAgICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgZGl2LmlubmVySFRNTCA9IGh0bWw7XG4gICAgICByYW5nZS5pbnNlcnROb2RlKGRpdik7XG4gICAgICB0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwiYm1iX3RleHQtZWRpdG9yXCI+XG4gIDxoZWFkZXIgY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyLWdyb3VwXCI+XG4gICAgICA8c2VsZWN0XG4gICAgICAgIGlkPVwiQm1iVGV4dEVkaXRvclNlbGVjdFwiXG4gICAgICAgIGNsYXNzPVwiYm1iX3RleHQtZWRpdG9yLWhlYWRlci1zZWxlY3RcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQsICdmb3JtYXRCbG9jaycpXCJcbiAgICAgICAgdGl0bGU9XCJFc3RpbG8gZGUgcMOhcnJhZm9cIlxuICAgICAgPlxuICAgICAgICA8b3B0aW9uIHZhbHVlPVwicFwiPlDDoXJyYWZvPC9vcHRpb24+XG4gICAgICAgIDxvcHRpb24gdmFsdWU9XCJoMVwiPlTDrXR1bG8gMTwvb3B0aW9uPlxuICAgICAgICA8b3B0aW9uIHZhbHVlPVwiaDJcIj5Uw610dWxvIDI8L29wdGlvbj5cbiAgICAgICAgPG9wdGlvbiB2YWx1ZT1cImgzXCI+VMOtdHVsbyAzPC9vcHRpb24+XG4gICAgICAgIDxvcHRpb24gdmFsdWU9XCJibG9ja3F1b3RlXCI+Q2l0YTwvb3B0aW9uPlxuICAgICAgPC9zZWxlY3Q+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImV4ZWNDb21tYW5kKCdib2xkJylcIlxuICAgICAgICB0aXRsZT1cIk5lZ3JpdGFcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9ib2xkXCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImV4ZWNDb21tYW5kKCdpdGFsaWMnKVwiXG4gICAgICAgIHRpdGxlPVwiQ3Vyc2l2YVwiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X2l0YWxpY1wiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJleGVjQ29tbWFuZCgndW5kZXJsaW5lJylcIlxuICAgICAgICB0aXRsZT1cIlN1YnJheWFkb1wiXG4gICAgICA+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwiZm9ybWF0X3VuZGVybGluZWRcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cIkJtYlRleHRFZGl0b3JDb2xvclwiXG4gICAgICAgIHR5cGU9XCJjb2xvclwiXG4gICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudCwgJ2ZvcmVDb2xvcicpXCJcbiAgICAgICAgdGl0bGU9XCJDb2xvciBkZSB0ZXh0b1wiXG4gICAgICAvPlxuICAgIDwvc3Bhbj5cblxuICAgIDxzcGFuIGNsYXNzPVwiYm1iX3RleHQtZWRpdG9yLWhlYWRlci1ncm91cFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJhcHBseUFsaWdubWVudCgnbGVmdCcpXCJcbiAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJjdXJyZW50QWxpZ25tZW50ID09PSAnbGVmdCdcIlxuICAgICAgICB0aXRsZT1cIkFsaW5lYXIgYSBsYSBpenF1aWVyZGFcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9hbGlnbl9sZWZ0XCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImFwcGx5QWxpZ25tZW50KCdjZW50ZXInKVwiXG4gICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiY3VycmVudEFsaWdubWVudCA9PT0gJ2NlbnRlcidcIlxuICAgICAgICB0aXRsZT1cIkNlbnRyYXJcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9hbGlnbl9jZW50ZXJcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiYXBwbHlBbGlnbm1lbnQoJ3JpZ2h0JylcIlxuICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImN1cnJlbnRBbGlnbm1lbnQgPT09ICdyaWdodCdcIlxuICAgICAgICB0aXRsZT1cIkFsaW5lYXIgYSBsYSBkZXJlY2hhXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJmb3JtYXRfYWxpZ25fcmlnaHRcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NwYW4+XG5cbiAgICA8c3BhbiBjbGFzcz1cImJtYl90ZXh0LWVkaXRvci1oZWFkZXItZ3JvdXBcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZXhlY0NvbW1hbmQoJ2luc2VydE9yZGVyZWRMaXN0JylcIlxuICAgICAgICB0aXRsZT1cIkxpc3RhIG51bWVyYWRhXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJmb3JtYXRfbGlzdF9udW1iZXJlZFwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBibWJCdXR0b25cbiAgICAgICAgYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgc2l6ZT1cIm1pY3JvXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJleGVjQ29tbWFuZCgnaW5zZXJ0VW5vcmRlcmVkTGlzdCcpXCJcbiAgICAgICAgdGl0bGU9XCJMaXN0YSBjb24gdmnDsWV0YXNcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9saXN0X2J1bGxldGVkXCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9zcGFuPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyLWdyb3VwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImV4ZWNDb21tYW5kKCdpbmRlbnQnKVwiXG4gICAgICAgIHRpdGxlPVwiQXVtZW50YXIgc2FuZ3LDrWFcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9pbmRlbnRfaW5jcmVhc2VcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZXhlY0NvbW1hbmQoJ291dGRlbnQnKVwiXG4gICAgICAgIHRpdGxlPVwiRGlzbWludWlyIHNhbmdyw61hXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1pY29uIGljb249XCJmb3JtYXRfaW5kZW50X2RlY3JlYXNlXCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9zcGFuPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyLWdyb3VwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cIm9wZW5Qcm9tcHQoJ2xpbmsnLCAkZXZlbnQpXCJcbiAgICAgICAgdGl0bGU9XCJJbnNlcnRhciBlbmxhY2VcIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImxpbmtcIiBbc2l6ZV09XCIyNFwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYm1iQnV0dG9uXG4gICAgICAgIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgIHNpemU9XCJtaWNyb1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwib3BlblByb21wdCgnaW1hZ2UnLCAkZXZlbnQpXCJcbiAgICAgICAgdGl0bGU9XCJJbnNlcnRhciBpbWFnZW5cIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImltYWdlXCIgW3NpemVdPVwiMjRcIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8IS0tIDxidXR0b24gYm1iQnV0dG9uIGFwcGVhcmFuY2U9XCJ0cmFuc3BhcmVudFwiIHNpemU9XCJtaWNyb1wiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib3BlblRhYmxlRGlhbG9nKClcIiB0aXRsZT1cIkluc2VydGFyIHRhYmxhXCI+XG4gICAgICAgIDxibWItaWNvbiBpY29uPVwidGFibGVfY2hhcnRcIiBbc2l6ZV09XCIyNFwiLz5cbiAgICAgIDwvYnV0dG9uPiAtLT5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJibWJfdGV4dC1lZGl0b3ItaGVhZGVyLWdyb3VwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGJtYkJ1dHRvblxuICAgICAgICBhcHBlYXJhbmNlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICBzaXplPVwibWljcm9cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyRm9ybWF0dGluZygpXCJcbiAgICAgICAgdGl0bGU9XCJMaW1waWFyIGZvcm1hdG9cIlxuICAgICAgPlxuICAgICAgICA8Ym1iLWljb24gaWNvbj1cImZvcm1hdF9jbGVhclwiIFtzaXplXT1cIjI0XCIgLz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvc3Bhbj5cbiAgPC9oZWFkZXI+XG5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYm1iX3RleHQtZWRpdG9yLWNvbnRlbnRcIlxuICAgICNlZGl0b3JcbiAgICBjb250ZW50ZWRpdGFibGU9XCJ0cnVlXCJcbiAgICAoaW5wdXQpPVwidXBkYXRlQ29udGVudCgpXCJcbiAgICBbaW5uZXJIVE1MXT1cInNhbml0aXplZENvbnRlbnQoKVwiXG4gID48L2Rpdj5cbjwvc2VjdGlvbj5cblxuPCEtLSBEacOhbG9nbyBwYXJhIGRlZmluaXIgZmlsYXMgeSBjb2x1bW5hcyAtLT5cbjxkaWFsb2cgY2xhc3M9XCJkaWFsb2ctb3ZlcmxheVwiIFtvcGVuXT1cInNob3dUYWJsZURpYWxvZ1wiPlxuICA8ZGl2IGNsYXNzPVwiZGlhbG9nXCI+XG4gICAgPGgzPkluc2VydGFyIHRhYmxhPC9oMz5cbiAgICA8bGFiZWwgZm9yPVwicm93c1wiPkZpbGFzOjwvbGFiZWw+XG4gICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBpZD1cInJvd3NcIiBtaW49XCIxXCIgbWF4PVwiMTBcIiAvPlxuXG4gICAgPGxhYmVsIGZvcj1cImNvbHVtbnNcIj5Db2x1bW5hczo8L2xhYmVsPlxuICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgaWQ9XCJjb2x1bW5zXCIgbWluPVwiMVwiIG1heD1cIjEwXCIgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctYnV0dG9uc1wiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImluc2VydFRhYmxlKClcIj5JbnNlcnRhcjwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlVGFibGVEaWFsb2coKVwiPkNhbmNlbGFyPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaWFsb2c+XG4iXX0=
@@ -2,6 +2,7 @@ import { ChangeDetectionStrategy, Component, computed, input, model, output, sig
2
2
  import { BmbCheckExternalLinkButtonComponent } from '../../bmb-check-external-link-button/bmb-check-external-link-button.component';
3
3
  import { BmbIconComponent } from '../../bmb-icon/bmb-icon.component';
4
4
  import { CommonModule } from '@angular/common';
5
+ import { TranslatePipe } from '../../../pipes/translations';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/common";
7
8
  export class BmbDropdownContentComponent {
@@ -41,7 +42,7 @@ export class BmbDropdownContentComponent {
41
42
  }
42
43
  }
43
44
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbDropdownContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbDropdownContentComponent, isStandalone: true, selector: "bmb-dropdown-content", inputs: { selectedOption: { classPropertyName: "selectedOption", publicName: "selectedOption", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, isKeyboardEvent: { classPropertyName: "isKeyboardEvent", publicName: "isKeyboardEvent", isSignal: true, isRequired: false, transformFunction: null }, enableFilter: { classPropertyName: "enableFilter", publicName: "enableFilter", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { items: "itemsChange", isKeyboardEvent: "isKeyboardEventChange", clickedItem: "clickedItem", isOpen: "isOpenChange" }, ngImport: i0, template: "<div class=\"bmb_dropdown-content-modal\" [tabindex]=\"1\">\n <ul class=\"bmb_dropdown-content-container\" [tabindex]=\"-1\">\n @if (enableFilter()) {\n <li class=\"bmb_dropdown-content-item bmb_dropdown-content-item-filter\">\n <input\n type=\"text\"\n class=\"bmb_dropdown-content-item-filter-input\"\n placeholder=\"Select an option\"\n (input)=\"filterList($event)\"\n />\n <bmb-icon\n class=\"bmb_dropdown-content-item-filter-icon\"\n icon=\"search\"\n [size]=\"24\"\n />\n </li>\n }\n @for (item of filteredItems(); track $index) {\n <li\n class=\"bmb_dropdown-content-item\"\n [ngClass]=\"{\n 'bmb_dropdown-content-item-selected': isSelected(item.value!)\n }\"\n [id]=\"item.idItem\"\n >\n <bmb-check-external-link-button\n [link]=\"item.url!\"\n [target]=\"item.target!\"\n (buttonClick)=\"handleDropdown(item)\"\n >\n @if (!!item.icon) {\n <bmb-icon\n class=\"bmb_dropdown-content-item-icon\"\n [icon]=\"item.icon\"\n [size]=\"24\"\n [dotNotification]=\"item.dotNotification\"\n />\n }\n <span class=\"bmb_dropdown-content-item-text\">\n {{ item.text }}\n </span>\n </bmb-check-external-link-button>\n </li>\n }\n </ul>\n</div>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_dropdown-content-modal{background-color:var(--containers-main);border:0;z-index:1;box-shadow:var(--bmb-box-shadow-3);max-height:18rem;overflow:auto;width:100%;border-radius:.5rem;padding:0;margin:.5rem 0 0}.bmb_dropdown-content-container{list-style:none;padding:0;margin:0}.bmb_dropdown-content-item{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item .bmb_check-external-link-button-element{display:flex;align-items:center;background-color:transparent;border:none;padding:.5rem 1rem;text-decoration:none;width:100%;height:3rem;gap:var(--bmb-spacing-m)}.bmb_dropdown-content-item .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus-visible{background-color:var(--menu_select-on-surface-hovered);outline:0 none}.bmb_dropdown-content-item-selected{color:var(--menu_select-label-menu-active)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element{background-color:var(--menu_select-surface-activated)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus-visible{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Poppins-Regular,sans-serif;font-size:.875rem}.bmb_dropdown-content-item-filter{position:sticky;top:0;left:0}.bmb_dropdown-content-item-filter-icon{position:absolute;left:.5rem;top:.5rem}.bmb_dropdown-content-item-filter-input{border-radius:.5rem .5rem 0 0;border:.0625rem solid var(--general_contrasts-50);background-color:var(--general_contrasts-input-background);padding:.5rem .5rem .5rem 3rem;color:var(--menu_select-label-menu-inactive);width:100%}.bmb_dropdown-content-item-filter-input:hover,.bmb_dropdown-content-item-filter-input:focus,.bmb_dropdown-content-item-filter-input:focus-visible{outline:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BmbCheckExternalLinkButtonComponent, selector: "bmb-check-external-link-button", inputs: ["idElement", "link", "target", "disabled", "buttonName"], outputs: ["buttonPress", "buttonClick", "buttonKeyPress"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: BmbDropdownContentComponent, isStandalone: true, selector: "bmb-dropdown-content", inputs: { selectedOption: { classPropertyName: "selectedOption", publicName: "selectedOption", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, isKeyboardEvent: { classPropertyName: "isKeyboardEvent", publicName: "isKeyboardEvent", isSignal: true, isRequired: false, transformFunction: null }, enableFilter: { classPropertyName: "enableFilter", publicName: "enableFilter", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { items: "itemsChange", isKeyboardEvent: "isKeyboardEventChange", clickedItem: "clickedItem", isOpen: "isOpenChange" }, ngImport: i0, template: "<div class=\"bmb_dropdown-content-modal\" [tabindex]=\"1\">\n <ul class=\"bmb_dropdown-content-container\" [tabindex]=\"-1\">\n @if (enableFilter()) {\n <li class=\"bmb_dropdown-content-item bmb_dropdown-content-item-filter\">\n <input\n type=\"text\"\n class=\"bmb_dropdown-content-item-filter-input\"\n [placeholder]=\"'dropdown.menu.filter_placeholder' | translate\"\n (input)=\"filterList($event)\"\n />\n <bmb-icon\n class=\"bmb_dropdown-content-item-filter-icon\"\n icon=\"search\"\n [size]=\"24\"\n />\n </li>\n }\n @for (item of filteredItems(); track $index) {\n <li\n class=\"bmb_dropdown-content-item\"\n [ngClass]=\"{\n 'bmb_dropdown-content-item-selected': isSelected(item.value!)\n }\"\n [id]=\"item.idItem\"\n >\n <bmb-check-external-link-button\n [link]=\"item.url!\"\n [target]=\"item.target!\"\n (buttonClick)=\"handleDropdown(item)\"\n >\n @if (!!item.icon) {\n <bmb-icon\n class=\"bmb_dropdown-content-item-icon\"\n [icon]=\"item.icon\"\n [size]=\"24\"\n [dotNotification]=\"item.dotNotification\"\n />\n }\n <span class=\"bmb_dropdown-content-item-text\">\n {{ item.text }}\n </span>\n </bmb-check-external-link-button>\n </li>\n }\n </ul>\n</div>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_dropdown-content-modal{background-color:var(--containers-main);border:0;z-index:1;box-shadow:var(--bmb-box-shadow-3);max-height:18rem;overflow:auto;width:100%;border-radius:.5rem;padding:0;margin:.5rem 0 0}.bmb_dropdown-content-container{list-style:none;padding:0;margin:0}.bmb_dropdown-content-item{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item .bmb_check-external-link-button-element{display:flex;align-items:center;background-color:transparent;border:none;padding:.5rem 1rem;text-decoration:none;width:100%;height:3rem;gap:var(--bmb-spacing-m)}.bmb_dropdown-content-item .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus-visible{background-color:var(--menu_select-on-surface-hovered);outline:0 none}.bmb_dropdown-content-item-selected{color:var(--menu_select-label-menu-active)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element{background-color:var(--menu_select-surface-activated)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus-visible{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Poppins-Regular,sans-serif;font-size:.875rem}.bmb_dropdown-content-item-filter{position:sticky;top:0;left:0;background-color:var(--containers-main)}.bmb_dropdown-content-item-filter-icon{position:absolute;left:.5rem;top:.5rem}.bmb_dropdown-content-item-filter-input{border-radius:.5rem .5rem 0 0;border:.0625rem solid var(--general_contrasts-50);background-color:var(--general_contrasts-input-background);padding:.5rem .5rem .5rem 3rem;color:var(--menu_select-label-menu-inactive);width:100%}.bmb_dropdown-content-item-filter-input:hover,.bmb_dropdown-content-item-filter-input:focus,.bmb_dropdown-content-item-filter-input:focus-visible{outline:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BmbCheckExternalLinkButtonComponent, selector: "bmb-check-external-link-button", inputs: ["idElement", "link", "target", "disabled", "buttonName"], outputs: ["buttonPress", "buttonClick", "buttonKeyPress"] }, { kind: "component", type: BmbIconComponent, selector: "bmb-icon", inputs: ["icon", "materialIcon", "styleIcon", "isFill", "fontWeight", "size", "alt", "dotNotification"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
45
46
  }
46
47
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BmbDropdownContentComponent, decorators: [{
47
48
  type: Component,
@@ -49,6 +50,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
49
50
  CommonModule,
50
51
  BmbCheckExternalLinkButtonComponent,
51
52
  BmbIconComponent,
52
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bmb_dropdown-content-modal\" [tabindex]=\"1\">\n <ul class=\"bmb_dropdown-content-container\" [tabindex]=\"-1\">\n @if (enableFilter()) {\n <li class=\"bmb_dropdown-content-item bmb_dropdown-content-item-filter\">\n <input\n type=\"text\"\n class=\"bmb_dropdown-content-item-filter-input\"\n placeholder=\"Select an option\"\n (input)=\"filterList($event)\"\n />\n <bmb-icon\n class=\"bmb_dropdown-content-item-filter-icon\"\n icon=\"search\"\n [size]=\"24\"\n />\n </li>\n }\n @for (item of filteredItems(); track $index) {\n <li\n class=\"bmb_dropdown-content-item\"\n [ngClass]=\"{\n 'bmb_dropdown-content-item-selected': isSelected(item.value!)\n }\"\n [id]=\"item.idItem\"\n >\n <bmb-check-external-link-button\n [link]=\"item.url!\"\n [target]=\"item.target!\"\n (buttonClick)=\"handleDropdown(item)\"\n >\n @if (!!item.icon) {\n <bmb-icon\n class=\"bmb_dropdown-content-item-icon\"\n [icon]=\"item.icon\"\n [size]=\"24\"\n [dotNotification]=\"item.dotNotification\"\n />\n }\n <span class=\"bmb_dropdown-content-item-text\">\n {{ item.text }}\n </span>\n </bmb-check-external-link-button>\n </li>\n }\n </ul>\n</div>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_dropdown-content-modal{background-color:var(--containers-main);border:0;z-index:1;box-shadow:var(--bmb-box-shadow-3);max-height:18rem;overflow:auto;width:100%;border-radius:.5rem;padding:0;margin:.5rem 0 0}.bmb_dropdown-content-container{list-style:none;padding:0;margin:0}.bmb_dropdown-content-item{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item .bmb_check-external-link-button-element{display:flex;align-items:center;background-color:transparent;border:none;padding:.5rem 1rem;text-decoration:none;width:100%;height:3rem;gap:var(--bmb-spacing-m)}.bmb_dropdown-content-item .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus-visible{background-color:var(--menu_select-on-surface-hovered);outline:0 none}.bmb_dropdown-content-item-selected{color:var(--menu_select-label-menu-active)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element{background-color:var(--menu_select-surface-activated)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus-visible{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Poppins-Regular,sans-serif;font-size:.875rem}.bmb_dropdown-content-item-filter{position:sticky;top:0;left:0}.bmb_dropdown-content-item-filter-icon{position:absolute;left:.5rem;top:.5rem}.bmb_dropdown-content-item-filter-input{border-radius:.5rem .5rem 0 0;border:.0625rem solid var(--general_contrasts-50);background-color:var(--general_contrasts-input-background);padding:.5rem .5rem .5rem 3rem;color:var(--menu_select-label-menu-inactive);width:100%}.bmb_dropdown-content-item-filter-input:hover,.bmb_dropdown-content-item-filter-input:focus,.bmb_dropdown-content-item-filter-input:focus-visible{outline:none}\n"] }]
53
+ TranslatePipe,
54
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bmb_dropdown-content-modal\" [tabindex]=\"1\">\n <ul class=\"bmb_dropdown-content-container\" [tabindex]=\"-1\">\n @if (enableFilter()) {\n <li class=\"bmb_dropdown-content-item bmb_dropdown-content-item-filter\">\n <input\n type=\"text\"\n class=\"bmb_dropdown-content-item-filter-input\"\n [placeholder]=\"'dropdown.menu.filter_placeholder' | translate\"\n (input)=\"filterList($event)\"\n />\n <bmb-icon\n class=\"bmb_dropdown-content-item-filter-icon\"\n icon=\"search\"\n [size]=\"24\"\n />\n </li>\n }\n @for (item of filteredItems(); track $index) {\n <li\n class=\"bmb_dropdown-content-item\"\n [ngClass]=\"{\n 'bmb_dropdown-content-item-selected': isSelected(item.value!)\n }\"\n [id]=\"item.idItem\"\n >\n <bmb-check-external-link-button\n [link]=\"item.url!\"\n [target]=\"item.target!\"\n (buttonClick)=\"handleDropdown(item)\"\n >\n @if (!!item.icon) {\n <bmb-icon\n class=\"bmb_dropdown-content-item-icon\"\n [icon]=\"item.icon\"\n [size]=\"24\"\n [dotNotification]=\"item.dotNotification\"\n />\n }\n <span class=\"bmb_dropdown-content-item-text\">\n {{ item.text }}\n </span>\n </bmb-check-external-link-button>\n </li>\n }\n </ul>\n</div>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_dropdown-content-modal{background-color:var(--containers-main);border:0;z-index:1;box-shadow:var(--bmb-box-shadow-3);max-height:18rem;overflow:auto;width:100%;border-radius:.5rem;padding:0;margin:.5rem 0 0}.bmb_dropdown-content-container{list-style:none;padding:0;margin:0}.bmb_dropdown-content-item{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item .bmb_check-external-link-button-element{display:flex;align-items:center;background-color:transparent;border:none;padding:.5rem 1rem;text-decoration:none;width:100%;height:3rem;gap:var(--bmb-spacing-m)}.bmb_dropdown-content-item .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item .bmb_check-external-link-button-element:focus-visible{background-color:var(--menu_select-on-surface-hovered);outline:0 none}.bmb_dropdown-content-item-selected{color:var(--menu_select-label-menu-active)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element{background-color:var(--menu_select-surface-activated)}.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:hover,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus,.bmb_dropdown-content-item-selected .bmb_check-external-link-button-element:focus-visible{color:var(--menu_select-label-menu-inactive)}.bmb_dropdown-content-item-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Poppins-Regular,sans-serif;font-size:.875rem}.bmb_dropdown-content-item-filter{position:sticky;top:0;left:0;background-color:var(--containers-main)}.bmb_dropdown-content-item-filter-icon{position:absolute;left:.5rem;top:.5rem}.bmb_dropdown-content-item-filter-input{border-radius:.5rem .5rem 0 0;border:.0625rem solid var(--general_contrasts-50);background-color:var(--general_contrasts-input-background);padding:.5rem .5rem .5rem 3rem;color:var(--menu_select-label-menu-inactive);width:100%}.bmb_dropdown-content-item-filter-input:hover,.bmb_dropdown-content-item-filter-input:focus,.bmb_dropdown-content-item-filter-input:focus-visible{outline:none}\n"] }]
53
55
  }] });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWRyb3Bkb3duLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL3V0aWxzL2JtYi1kcm9wZG93bi1jb250ZW50L2JtYi1kcm9wZG93bi1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy91dGlscy9ibWItZHJvcGRvd24tY29udGVudC9ibWItZHJvcGRvd24tY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUNwSSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQWUvQyxNQUFNLE9BQU8sMkJBQTJCO0lBYnhDO1FBY0UsbUJBQWMsR0FBRyxLQUFLLEVBQXFCLENBQUMsQ0FBQyxVQUFVO1FBQ3ZELFVBQUssR0FBRyxLQUFLLENBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLG9CQUFlLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUNuRCxpQkFBWSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUVyQyxnQkFBVyxHQUFHLE1BQU0sRUFBaUIsQ0FBQztRQUV0QyxXQUFNLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDLENBQUMsYUFBYTtRQUU3QyxrQkFBYSxHQUFHLFFBQVEsQ0FBa0IsR0FBRyxFQUFFO1lBQzdDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQ3JELE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO29CQUNsQyxPQUFPLENBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7d0JBQzNELElBQUksQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO3dCQUM3RCxJQUFJLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUNyRSxDQUFDO2dCQUNKLENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztRQUNILGlCQUFZLEdBQUcsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0tBcUJuQztJQW5CQyxVQUFVLENBQUMsS0FBWTtRQUNyQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBMEIsQ0FBQztRQUMvQyxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxVQUFVLENBQUMsSUFBWTtRQUNyQixJQUFJLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLFFBQVE7WUFDM0MsT0FBTyxJQUFJLEtBQUssSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXhDLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUM7SUFDeEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFtQjtRQUNoQyxJQUFJLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDN0I7SUFDSCxDQUFDOytHQTNDVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixzNEJDNUJ4QyxvOENBOENBLDg5UEQzQkksWUFBWSw2SEFDWixtQ0FBbUMseU1BQ25DLGdCQUFnQjs7NEZBT1AsMkJBQTJCO2tCQWJ2QyxTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixtQ0FBbUM7d0JBQ25DLGdCQUFnQjtxQkFDakIsaUJBR2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBpbnB1dCxcbiAgbW9kZWwsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCbWJDaGVja0V4dGVybmFsTGlua0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2JtYi1jaGVjay1leHRlcm5hbC1saW5rLWJ1dHRvbi9ibWItY2hlY2stZXh0ZXJuYWwtbGluay1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItaWNvbi9ibWItaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSURyb3Bkb3duSXRlbSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1kcm9wZG93bi1jb250ZW50JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJDaGVja0V4dGVybmFsTGlua0J1dHRvbkNvbXBvbmVudCxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLWRyb3Bkb3duLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYm1iLWRyb3Bkb3duLWNvbnRlbnQuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iRHJvcGRvd25Db250ZW50Q29tcG9uZW50IHtcbiAgc2VsZWN0ZWRPcHRpb24gPSBpbnB1dDxzdHJpbmcgfCBzdHJpbmdbXT4oKTsgLy9JbnRlcm5hbFxuICBpdGVtcyA9IG1vZGVsPElEcm9wZG93bkl0ZW1bXT4oW10pO1xuICBpc0tleWJvYXJkRXZlbnQgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7IC8vSW50ZXJuYWxcbiAgZW5hYmxlRmlsdGVyID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIGNsaWNrZWRJdGVtID0gb3V0cHV0PElEcm9wZG93bkl0ZW0+KCk7XG5cbiAgaXNPcGVuID0gbW9kZWw8Ym9vbGVhbj4oZmFsc2UpOyAvL3JlbW92ZSB0aGlzXG5cbiAgZmlsdGVyZWRJdGVtcyA9IGNvbXB1dGVkPElEcm9wZG93bkl0ZW1bXT4oKCkgPT4ge1xuICAgIGlmICh0aGlzLmVuYWJsZUZpbHRlcigpICYmIHRoaXMuZmlsdGVyU3RyaW5nKCkgIT09ICcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtcygpLmZpbHRlcigoaXRlbSkgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIGl0ZW0udGV4dC50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuZmlsdGVyU3RyaW5nKCkpIHx8XG4gICAgICAgICAgaXRlbS52YWx1ZT8udG9Mb2NhbGVMb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLmZpbHRlclN0cmluZygpKSB8fFxuICAgICAgICAgIGl0ZW0uc2VsZWN0ZWRUZXh0Py50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuZmlsdGVyU3RyaW5nKCkpXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pdGVtcygpO1xuICB9KTtcbiAgZmlsdGVyU3RyaW5nID0gc2lnbmFsPHN0cmluZz4oJycpO1xuXG4gIGZpbHRlckxpc3QoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGlucHV0LnZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgdGhpcy5maWx0ZXJTdHJpbmcuc2V0KGZpbHRlclZhbHVlKTtcbiAgfVxuXG4gIGlzU2VsZWN0ZWQoaXRlbTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLnNlbGVjdGVkT3B0aW9uKCkgPT09ICdzdHJpbmcnKVxuICAgICAgcmV0dXJuIGl0ZW0gPT09IHRoaXMuc2VsZWN0ZWRPcHRpb24oKTtcblxuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkT3B0aW9uKCk/LmluY2x1ZGVzKGl0ZW0pIHx8IGZhbHNlO1xuICB9XG5cbiAgaGFuZGxlRHJvcGRvd24oaXRlbTogSURyb3Bkb3duSXRlbSkge1xuICAgIGlmIChpdGVtPy5hY3Rpb24pIHtcbiAgICAgIGl0ZW0uYWN0aW9uKCk7XG4gICAgICB0aGlzLmNsaWNrZWRJdGVtLmVtaXQoaXRlbSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYm1iX2Ryb3Bkb3duLWNvbnRlbnQtbW9kYWxcIiBbdGFiaW5kZXhdPVwiMVwiPlxuICA8dWwgY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1jb250YWluZXJcIiBbdGFiaW5kZXhdPVwiLTFcIj5cbiAgICBAaWYgKGVuYWJsZUZpbHRlcigpKSB7XG4gICAgICA8bGkgY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1pdGVtIGJtYl9kcm9wZG93bi1jb250ZW50LWl0ZW0tZmlsdGVyXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBjbGFzcz1cImJtYl9kcm9wZG93bi1jb250ZW50LWl0ZW0tZmlsdGVyLWlucHV0XCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBhbiBvcHRpb25cIlxuICAgICAgICAgIChpbnB1dCk9XCJmaWx0ZXJMaXN0KCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgICA8Ym1iLWljb25cbiAgICAgICAgICBjbGFzcz1cImJtYl9kcm9wZG93bi1jb250ZW50LWl0ZW0tZmlsdGVyLWljb25cIlxuICAgICAgICAgIGljb249XCJzZWFyY2hcIlxuICAgICAgICAgIFtzaXplXT1cIjI0XCJcbiAgICAgICAgLz5cbiAgICAgIDwvbGk+XG4gICAgfVxuICAgIEBmb3IgKGl0ZW0gb2YgZmlsdGVyZWRJdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxsaVxuICAgICAgICBjbGFzcz1cImJtYl9kcm9wZG93bi1jb250ZW50LWl0ZW1cIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ2JtYl9kcm9wZG93bi1jb250ZW50LWl0ZW0tc2VsZWN0ZWQnOiBpc1NlbGVjdGVkKGl0ZW0udmFsdWUhKVxuICAgICAgICB9XCJcbiAgICAgICAgW2lkXT1cIml0ZW0uaWRJdGVtXCJcbiAgICAgID5cbiAgICAgICAgPGJtYi1jaGVjay1leHRlcm5hbC1saW5rLWJ1dHRvblxuICAgICAgICAgIFtsaW5rXT1cIml0ZW0udXJsIVwiXG4gICAgICAgICAgW3RhcmdldF09XCJpdGVtLnRhcmdldCFcIlxuICAgICAgICAgIChidXR0b25DbGljayk9XCJoYW5kbGVEcm9wZG93bihpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICBAaWYgKCEhaXRlbS5pY29uKSB7XG4gICAgICAgICAgICA8Ym1iLWljb25cbiAgICAgICAgICAgICAgY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1pdGVtLWljb25cIlxuICAgICAgICAgICAgICBbaWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgICAgICAgIFtkb3ROb3RpZmljYXRpb25dPVwiaXRlbS5kb3ROb3RpZmljYXRpb25cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICB9XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1pdGVtLXRleHRcIj5cbiAgICAgICAgICAgIHt7IGl0ZW0udGV4dCB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9ibWItY2hlY2stZXh0ZXJuYWwtbGluay1idXR0b24+XG4gICAgICA8L2xpPlxuICAgIH1cbiAgPC91bD5cbjwvZGl2PlxuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWRyb3Bkb3duLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL3V0aWxzL2JtYi1kcm9wZG93bi1jb250ZW50L2JtYi1kcm9wZG93bi1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy91dGlscy9ibWItZHJvcGRvd24tY29udGVudC9ibWItZHJvcGRvd24tY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUNwSSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7QUFnQjVELE1BQU0sT0FBTywyQkFBMkI7SUFkeEM7UUFlRSxtQkFBYyxHQUFHLEtBQUssRUFBcUIsQ0FBQyxDQUFDLFVBQVU7UUFDdkQsVUFBSyxHQUFHLEtBQUssQ0FBa0IsRUFBRSxDQUFDLENBQUM7UUFDbkMsb0JBQWUsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQ25ELGlCQUFZLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRXJDLGdCQUFXLEdBQUcsTUFBTSxFQUFpQixDQUFDO1FBRXRDLFdBQU0sR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxhQUFhO1FBRTdDLGtCQUFhLEdBQUcsUUFBUSxDQUFrQixHQUFHLEVBQUU7WUFDN0MsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDckQsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ2xDLE9BQU8sQ0FDTCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzt3QkFDM0QsSUFBSSxDQUFDLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7d0JBQzdELElBQUksQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQ3JFLENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7YUFDSjtZQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsaUJBQVksR0FBRyxNQUFNLENBQVMsRUFBRSxDQUFDLENBQUM7S0FxQm5DO0lBbkJDLFVBQVUsQ0FBQyxLQUFZO1FBQ3JCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUEwQixDQUFDO1FBQy9DLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFZO1FBQ3JCLElBQUksT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssUUFBUTtZQUMzQyxPQUFPLElBQUksS0FBSyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFeEMsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUN4RCxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQW1CO1FBQ2hDLElBQUksSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUNoQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtJQUNILENBQUM7K0dBM0NVLDJCQUEyQjttR0FBM0IsMkJBQTJCLHM0QkM5QnhDLG8rQ0E4Q0Esc2dRRDFCSSxZQUFZLDZIQUNaLG1DQUFtQyx5TUFDbkMsZ0JBQWdCLHlKQUNoQixhQUFhOzs0RkFPSiwyQkFBMkI7a0JBZHZDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1DQUFtQzt3QkFDbkMsZ0JBQWdCO3dCQUNoQixhQUFhO3FCQUNkLGlCQUdjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm1iQ2hlY2tFeHRlcm5hbExpbmtCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItY2hlY2stZXh0ZXJuYWwtbGluay1idXR0b24vYm1iLWNoZWNrLWV4dGVybmFsLWxpbmstYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYm1iLWljb24vYm1iLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IElEcm9wZG93bkl0ZW0gfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uLy4uL3BpcGVzL3RyYW5zbGF0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1kcm9wZG93bi1jb250ZW50JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJDaGVja0V4dGVybmFsTGlua0J1dHRvbkNvbXBvbmVudCxcbiAgICBCbWJJY29uQ29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZVBpcGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItZHJvcGRvd24tY29udGVudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9ibWItZHJvcGRvd24tY29udGVudC5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJEcm9wZG93bkNvbnRlbnRDb21wb25lbnQge1xuICBzZWxlY3RlZE9wdGlvbiA9IGlucHV0PHN0cmluZyB8IHN0cmluZ1tdPigpOyAvL0ludGVybmFsXG4gIGl0ZW1zID0gbW9kZWw8SURyb3Bkb3duSXRlbVtdPihbXSk7XG4gIGlzS2V5Ym9hcmRFdmVudCA9IG1vZGVsPGJvb2xlYW4+KGZhbHNlKTsgLy9JbnRlcm5hbFxuICBlbmFibGVGaWx0ZXIgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cbiAgY2xpY2tlZEl0ZW0gPSBvdXRwdXQ8SURyb3Bkb3duSXRlbT4oKTtcblxuICBpc09wZW4gPSBtb2RlbDxib29sZWFuPihmYWxzZSk7IC8vcmVtb3ZlIHRoaXNcblxuICBmaWx0ZXJlZEl0ZW1zID0gY29tcHV0ZWQ8SURyb3Bkb3duSXRlbVtdPigoKSA9PiB7XG4gICAgaWYgKHRoaXMuZW5hYmxlRmlsdGVyKCkgJiYgdGhpcy5maWx0ZXJTdHJpbmcoKSAhPT0gJycpIHtcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zKCkuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgaXRlbS50ZXh0LnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5maWx0ZXJTdHJpbmcoKSkgfHxcbiAgICAgICAgICBpdGVtLnZhbHVlPy50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuZmlsdGVyU3RyaW5nKCkpIHx8XG4gICAgICAgICAgaXRlbS5zZWxlY3RlZFRleHQ/LnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5maWx0ZXJTdHJpbmcoKSlcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLml0ZW1zKCk7XG4gIH0pO1xuICBmaWx0ZXJTdHJpbmcgPSBzaWduYWw8c3RyaW5nPignJyk7XG5cbiAgZmlsdGVyTGlzdChldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBpbnB1dCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIGNvbnN0IGZpbHRlclZhbHVlID0gaW5wdXQudmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICB0aGlzLmZpbHRlclN0cmluZy5zZXQoZmlsdGVyVmFsdWUpO1xuICB9XG5cbiAgaXNTZWxlY3RlZChpdGVtOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuc2VsZWN0ZWRPcHRpb24oKSA9PT0gJ3N0cmluZycpXG4gICAgICByZXR1cm4gaXRlbSA9PT0gdGhpcy5zZWxlY3RlZE9wdGlvbigpO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRPcHRpb24oKT8uaW5jbHVkZXMoaXRlbSkgfHwgZmFsc2U7XG4gIH1cblxuICBoYW5kbGVEcm9wZG93bihpdGVtOiBJRHJvcGRvd25JdGVtKSB7XG4gICAgaWYgKGl0ZW0/LmFjdGlvbikge1xuICAgICAgaXRlbS5hY3Rpb24oKTtcbiAgICAgIHRoaXMuY2xpY2tlZEl0ZW0uZW1pdChpdGVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1tb2RhbFwiIFt0YWJpbmRleF09XCIxXCI+XG4gIDx1bCBjbGFzcz1cImJtYl9kcm9wZG93bi1jb250ZW50LWNvbnRhaW5lclwiIFt0YWJpbmRleF09XCItMVwiPlxuICAgIEBpZiAoZW5hYmxlRmlsdGVyKCkpIHtcbiAgICAgIDxsaSBjbGFzcz1cImJtYl9kcm9wZG93bi1jb250ZW50LWl0ZW0gYm1iX2Ryb3Bkb3duLWNvbnRlbnQtaXRlbS1maWx0ZXJcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX2Ryb3Bkb3duLWNvbnRlbnQtaXRlbS1maWx0ZXItaW5wdXRcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInZHJvcGRvd24ubWVudS5maWx0ZXJfcGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAoaW5wdXQpPVwiZmlsdGVyTGlzdCgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICAgICAgPGJtYi1pY29uXG4gICAgICAgICAgY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1pdGVtLWZpbHRlci1pY29uXCJcbiAgICAgICAgICBpY29uPVwic2VhcmNoXCJcbiAgICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgIC8+XG4gICAgICA8L2xpPlxuICAgIH1cbiAgICBAZm9yIChpdGVtIG9mIGZpbHRlcmVkSXRlbXMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8bGlcbiAgICAgICAgY2xhc3M9XCJibWJfZHJvcGRvd24tY29udGVudC1pdGVtXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICdibWJfZHJvcGRvd24tY29udGVudC1pdGVtLXNlbGVjdGVkJzogaXNTZWxlY3RlZChpdGVtLnZhbHVlISlcbiAgICAgICAgfVwiXG4gICAgICAgIFtpZF09XCJpdGVtLmlkSXRlbVwiXG4gICAgICA+XG4gICAgICAgIDxibWItY2hlY2stZXh0ZXJuYWwtbGluay1idXR0b25cbiAgICAgICAgICBbbGlua109XCJpdGVtLnVybCFcIlxuICAgICAgICAgIFt0YXJnZXRdPVwiaXRlbS50YXJnZXQhXCJcbiAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwiaGFuZGxlRHJvcGRvd24oaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgICAgQGlmICghIWl0ZW0uaWNvbikge1xuICAgICAgICAgICAgPGJtYi1pY29uXG4gICAgICAgICAgICAgIGNsYXNzPVwiYm1iX2Ryb3Bkb3duLWNvbnRlbnQtaXRlbS1pY29uXCJcbiAgICAgICAgICAgICAgW2ljb25dPVwiaXRlbS5pY29uXCJcbiAgICAgICAgICAgICAgW3NpemVdPVwiMjRcIlxuICAgICAgICAgICAgICBbZG90Tm90aWZpY2F0aW9uXT1cIml0ZW0uZG90Tm90aWZpY2F0aW9uXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm1iX2Ryb3Bkb3duLWNvbnRlbnQtaXRlbS10ZXh0XCI+XG4gICAgICAgICAgICB7eyBpdGVtLnRleHQgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvYm1iLWNoZWNrLWV4dGVybmFsLWxpbmstYnV0dG9uPlxuICAgICAgPC9saT5cbiAgICB9XG4gIDwvdWw+XG48L2Rpdj5cbiJdfQ==
@@ -11,7 +11,7 @@ export class BmbLayoutItemDirective {
11
11
  this.isDynamicItem = input(false);
12
12
  }
13
13
  get elementClass() {
14
- const classes = [];
14
+ const classes = ['bmb_layout-item'];
15
15
  if (this.colSm())
16
16
  classes.push(`bmb_col-sm-${this.colSm()}`);
17
17
  if (this.colLg())
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
61
61
  type: HostBinding,
62
62
  args: ['style.flex']
63
63
  }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWxheW91dC1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvZGlyZWN0aXZlcy9ibWItbGF5b3V0L2JtYi1sYXlvdXQtaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDOztBQTBCdkIsTUFBTSxPQUFPLHNCQUFzQjtJQVFqQyxZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQVBsQyxVQUFLLEdBQUcsS0FBSyxDQUFtQixDQUFDLENBQUMsQ0FBQztRQUNuQyxVQUFLLEdBQUcsS0FBSyxDQUFpQixDQUFDLENBQUMsQ0FBQztRQUNqQyxlQUFVLEdBQUcsS0FBSyxDQUFVLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QyxnQkFBVyxHQUFHLEtBQUssQ0FBVSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0MsWUFBTyxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUMzQixrQkFBYSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUVELENBQUM7SUFFdEMsSUFBMEIsWUFBWTtRQUNwQyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFFbkIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFMUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRTtnQkFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDN0Q7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUU1RCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFO2dCQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUMvRDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFJRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQztTQUN0QztJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUVsQyxJQUNFLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDO1lBQ2pELENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsMkJBQTJCLENBQUMsRUFDckQ7WUFDQSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQ2pEO2FBQU0sSUFDTCxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUM7WUFDdkMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUMzQztZQUNBLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDdkM7SUFDSCxDQUFDOytHQXJEVSxzQkFBc0I7bUdBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7K0VBVzJCLFlBQVk7c0JBQXJDLFdBQVc7dUJBQUMsT0FBTztnQkFvQk8sSUFBSTtzQkFBOUIsV0FBVzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgaW5wdXQsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIElDb2x1bVNpemVNb2JpbGUgPSAwIHwgMSB8IDIgfCAzIHwgNDtcbmV4cG9ydCB0eXBlIElDb2x1bVNpemVGdWxsID1cbiAgfCAwXG4gIHwgMVxuICB8IDJcbiAgfCAzXG4gIHwgNFxuICB8IDVcbiAgfCA2XG4gIHwgN1xuICB8IDhcbiAgfCA5XG4gIHwgMTBcbiAgfCAxMVxuICB8IDEyO1xuZXhwb3J0IGludGVyZmFjZSBJTWFyZ2luIHtcbiAgc206IG51bWJlcjtcbiAgbGc/OiBudW1iZXI7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tibWJMYXlvdXRJdGVtXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkxheW91dEl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBjb2xTbSA9IGlucHV0PElDb2x1bVNpemVNb2JpbGU+KDApO1xuICBjb2xMZyA9IGlucHV0PElDb2x1bVNpemVGdWxsPigwKTtcbiAgbWFyZ2luTGVmdCA9IGlucHV0PElNYXJnaW4+KHsgc206IDAsIGxnOiAwIH0pO1xuICBtYXJnaW5SaWdodCA9IGlucHV0PElNYXJnaW4+KHsgc206IDAsIGxnOiAwIH0pO1xuICBjb2xHcm93ID0gaW5wdXQ8bnVtYmVyPigwKTtcbiAgaXNEeW5hbWljSXRlbSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7fVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBnZXQgZWxlbWVudENsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjbGFzc2VzID0gW107XG5cbiAgICBpZiAodGhpcy5jb2xTbSgpKSBjbGFzc2VzLnB1c2goYGJtYl9jb2wtc20tJHt0aGlzLmNvbFNtKCl9YCk7XG4gICAgaWYgKHRoaXMuY29sTGcoKSkgY2xhc3Nlcy5wdXNoKGBibWJfY29sLWxnLSR7dGhpcy5jb2xMZygpfWApO1xuICAgIGlmICh0aGlzLm1hcmdpbkxlZnQoKSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKGBibWJfc3BhY2Utc20tbGVmdC0ke3RoaXMubWFyZ2luTGVmdCgpLnNtfWApO1xuXG4gICAgICBpZiAodGhpcy5tYXJnaW5MZWZ0KCkubGcpXG4gICAgICAgIGNsYXNzZXMucHVzaChgYm1iX3NwYWNlLWxnLWxlZnQtJHt0aGlzLm1hcmdpbkxlZnQoKS5sZ31gKTtcbiAgICB9XG4gICAgaWYgKHRoaXMubWFyZ2luUmlnaHQoKSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKGBibWJfc3BhY2Utc20tcmlnaHQtJHt0aGlzLm1hcmdpblJpZ2h0KCkuc219YCk7XG5cbiAgICAgIGlmICh0aGlzLm1hcmdpblJpZ2h0KCkubGcpXG4gICAgICAgIGNsYXNzZXMucHVzaChgYm1iX3NwYWNlLWxnLXJpZ2h0LSR7dGhpcy5tYXJnaW5SaWdodCgpLmxnfWApO1xuICAgIH1cbiAgICByZXR1cm4gY2xhc3NlcztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuZmxleCcpIGZsZXg/OiBzdHJpbmc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNEeW5hbWljSXRlbSgpICYmIHRoaXMuY29sR3JvdygpKSB7XG4gICAgICB0aGlzLmZsZXggPSBgJHt0aGlzLmNvbEdyb3coKX0gMCAwJWA7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGhvc3QgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgcGFyZW50ID0gaG9zdC5wYXJlbnRFbGVtZW50O1xuXG4gICAgaWYgKFxuICAgICAgcGFyZW50LmNsYXNzTGlzdC5jb250YWlucygnYm1iX2xheW91dC1jb250YWluZXInKSAmJlxuICAgICAgIWhvc3QuY2xhc3NMaXN0LmNvbnRhaW5zKCdibWJfbGF5b3V0LWNvbnRhaW5lci1pdGVtJylcbiAgICApIHtcbiAgICAgIGhvc3QuY2xhc3NMaXN0LmFkZCgnYm1iX2xheW91dC1jb250YWluZXItaXRlbScpO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBwYXJlbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdibWJfbGF5b3V0JykgJiZcbiAgICAgICFob3N0LmNsYXNzTGlzdC5jb250YWlucygnYm1iX2xheW91dC1pdGVtJylcbiAgICApIHtcbiAgICAgIGhvc3QuY2xhc3NMaXN0LmFkZCgnYm1iX2xheW91dC1pdGVtJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWxheW91dC1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvZGlyZWN0aXZlcy9ibWItbGF5b3V0L2JtYi1sYXlvdXQtaXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDOztBQTBCdkIsTUFBTSxPQUFPLHNCQUFzQjtJQVFqQyxZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQVBsQyxVQUFLLEdBQUcsS0FBSyxDQUFtQixDQUFDLENBQUMsQ0FBQztRQUNuQyxVQUFLLEdBQUcsS0FBSyxDQUFpQixDQUFDLENBQUMsQ0FBQztRQUNqQyxlQUFVLEdBQUcsS0FBSyxDQUFVLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QyxnQkFBVyxHQUFHLEtBQUssQ0FBVSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0MsWUFBTyxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUMzQixrQkFBYSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUVELENBQUM7SUFFdEMsSUFBMEIsWUFBWTtRQUNwQyxNQUFNLE9BQU8sR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFcEMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFMUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRTtnQkFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDN0Q7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUU1RCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFO2dCQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUMvRDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFJRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQztTQUN0QztJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUVsQyxJQUNFLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDO1lBQ2pELENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsMkJBQTJCLENBQUMsRUFDckQ7WUFDQSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQ2pEO2FBQU0sSUFDTCxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUM7WUFDdkMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxFQUMzQztZQUNBLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDdkM7SUFDSCxDQUFDOytHQXJEVSxzQkFBc0I7bUdBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7K0VBVzJCLFlBQVk7c0JBQXJDLFdBQVc7dUJBQUMsT0FBTztnQkFvQk8sSUFBSTtzQkFBOUIsV0FBVzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgaW5wdXQsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIElDb2x1bVNpemVNb2JpbGUgPSAwIHwgMSB8IDIgfCAzIHwgNDtcbmV4cG9ydCB0eXBlIElDb2x1bVNpemVGdWxsID1cbiAgfCAwXG4gIHwgMVxuICB8IDJcbiAgfCAzXG4gIHwgNFxuICB8IDVcbiAgfCA2XG4gIHwgN1xuICB8IDhcbiAgfCA5XG4gIHwgMTBcbiAgfCAxMVxuICB8IDEyO1xuZXhwb3J0IGludGVyZmFjZSBJTWFyZ2luIHtcbiAgc206IG51bWJlcjtcbiAgbGc/OiBudW1iZXI7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tibWJMYXlvdXRJdGVtXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEJtYkxheW91dEl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBjb2xTbSA9IGlucHV0PElDb2x1bVNpemVNb2JpbGU+KDApO1xuICBjb2xMZyA9IGlucHV0PElDb2x1bVNpemVGdWxsPigwKTtcbiAgbWFyZ2luTGVmdCA9IGlucHV0PElNYXJnaW4+KHsgc206IDAsIGxnOiAwIH0pO1xuICBtYXJnaW5SaWdodCA9IGlucHV0PElNYXJnaW4+KHsgc206IDAsIGxnOiAwIH0pO1xuICBjb2xHcm93ID0gaW5wdXQ8bnVtYmVyPigwKTtcbiAgaXNEeW5hbWljSXRlbSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7fVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBnZXQgZWxlbWVudENsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjbGFzc2VzID0gWydibWJfbGF5b3V0LWl0ZW0nXTtcblxuICAgIGlmICh0aGlzLmNvbFNtKCkpIGNsYXNzZXMucHVzaChgYm1iX2NvbC1zbS0ke3RoaXMuY29sU20oKX1gKTtcbiAgICBpZiAodGhpcy5jb2xMZygpKSBjbGFzc2VzLnB1c2goYGJtYl9jb2wtbGctJHt0aGlzLmNvbExnKCl9YCk7XG4gICAgaWYgKHRoaXMubWFyZ2luTGVmdCgpKSB7XG4gICAgICBjbGFzc2VzLnB1c2goYGJtYl9zcGFjZS1zbS1sZWZ0LSR7dGhpcy5tYXJnaW5MZWZ0KCkuc219YCk7XG5cbiAgICAgIGlmICh0aGlzLm1hcmdpbkxlZnQoKS5sZylcbiAgICAgICAgY2xhc3Nlcy5wdXNoKGBibWJfc3BhY2UtbGctbGVmdC0ke3RoaXMubWFyZ2luTGVmdCgpLmxnfWApO1xuICAgIH1cbiAgICBpZiAodGhpcy5tYXJnaW5SaWdodCgpKSB7XG4gICAgICBjbGFzc2VzLnB1c2goYGJtYl9zcGFjZS1zbS1yaWdodC0ke3RoaXMubWFyZ2luUmlnaHQoKS5zbX1gKTtcblxuICAgICAgaWYgKHRoaXMubWFyZ2luUmlnaHQoKS5sZylcbiAgICAgICAgY2xhc3Nlcy5wdXNoKGBibWJfc3BhY2UtbGctcmlnaHQtJHt0aGlzLm1hcmdpblJpZ2h0KCkubGd9YCk7XG4gICAgfVxuICAgIHJldHVybiBjbGFzc2VzO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5mbGV4JykgZmxleD86IHN0cmluZztcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0R5bmFtaWNJdGVtKCkgJiYgdGhpcy5jb2xHcm93KCkpIHtcbiAgICAgIHRoaXMuZmxleCA9IGAke3RoaXMuY29sR3JvdygpfSAwIDAlYDtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgaG9zdCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBwYXJlbnQgPSBob3N0LnBhcmVudEVsZW1lbnQ7XG5cbiAgICBpZiAoXG4gICAgICBwYXJlbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdibWJfbGF5b3V0LWNvbnRhaW5lcicpICYmXG4gICAgICAhaG9zdC5jbGFzc0xpc3QuY29udGFpbnMoJ2JtYl9sYXlvdXQtY29udGFpbmVyLWl0ZW0nKVxuICAgICkge1xuICAgICAgaG9zdC5jbGFzc0xpc3QuYWRkKCdibWJfbGF5b3V0LWNvbnRhaW5lci1pdGVtJyk7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHBhcmVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2JtYl9sYXlvdXQnKSAmJlxuICAgICAgIWhvc3QuY2xhc3NMaXN0LmNvbnRhaW5zKCdibWJfbGF5b3V0LWl0ZW0nKVxuICAgICkge1xuICAgICAgaG9zdC5jbGFzc0xpc3QuYWRkKCdibWJfbGF5b3V0LWl0ZW0nKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==