myrta-ui 17.1.10 → 17.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/form/code-editor/code-editor.component.mjs +238 -0
- package/esm2022/lib/components/form/code-editor/code-editor.enum.mjs +2 -0
- package/esm2022/lib/components/form/code-editor/code-editor.module.mjs +28 -0
- package/esm2022/lib/components/form/code-editor/utils/codeeditoroptions.mjs +65 -0
- package/esm2022/lib/components/modal/modal.component.mjs +5 -7
- package/esm2022/lib/components/side-page/side-page.component.mjs +3 -3
- package/esm2022/lib/components/side-page/side-page.module.mjs +21 -5
- package/esm2022/public-api.mjs +5 -1
- package/fesm2022/myrta-ui.mjs +12035 -11965
- package/fesm2022/myrta-ui.mjs.map +1 -1
- package/lib/components/form/code-editor/code-editor.component.d.ts +57 -0
- package/lib/components/form/code-editor/code-editor.enum.d.ts +5 -0
- package/lib/components/form/code-editor/code-editor.module.d.ts +10 -0
- package/lib/components/form/code-editor/utils/codeeditoroptions.d.ts +51 -0
- package/lib/components/side-page/side-page.module.d.ts +4 -2
- package/package.json +6 -2
- package/public-api.d.ts +4 -0
- package/esm2022/lib/myrta-ui.module.mjs +0 -322
- package/lib/myrta-ui.module.d.ts +0 -62
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
4
|
+
import { CodeEditorOptions } from "./utils/codeeditoroptions";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "ngx-monaco-editor-v2";
|
|
7
|
+
export class CodeEditorComponent {
|
|
8
|
+
_data = {};
|
|
9
|
+
_editor;
|
|
10
|
+
_debounceTimeout;
|
|
11
|
+
isFocused = false;
|
|
12
|
+
editorModel;
|
|
13
|
+
editorOptions;
|
|
14
|
+
uuid = uuidv4();
|
|
15
|
+
fields = [];
|
|
16
|
+
options = new CodeEditorOptions();
|
|
17
|
+
debug = false;
|
|
18
|
+
disabled = false;
|
|
19
|
+
set data(value) {
|
|
20
|
+
this._data = value;
|
|
21
|
+
if (this._editor) {
|
|
22
|
+
this._editor.destroy();
|
|
23
|
+
this.ngOnInit();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
get data() {
|
|
27
|
+
return this._data;
|
|
28
|
+
}
|
|
29
|
+
changed = new EventEmitter();
|
|
30
|
+
modelChange = new EventEmitter();
|
|
31
|
+
jsonChange = new EventEmitter();
|
|
32
|
+
editorContainer;
|
|
33
|
+
ngOnInit() {
|
|
34
|
+
this._initializeEditor();
|
|
35
|
+
}
|
|
36
|
+
ngOnDestroy() {
|
|
37
|
+
this._destroyEditor();
|
|
38
|
+
this._clearDebounce();
|
|
39
|
+
}
|
|
40
|
+
onEditorInit(editor) {
|
|
41
|
+
this._editor = editor;
|
|
42
|
+
this.setDisabledState(this.disabled);
|
|
43
|
+
editor.onDidChangeModelContent(() => {
|
|
44
|
+
try {
|
|
45
|
+
const parsedValue = JSON.parse(editor.getValue());
|
|
46
|
+
this.updateValue(parsedValue);
|
|
47
|
+
this.jsonChange.emit(parsedValue);
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
if (this.debug) {
|
|
51
|
+
console.log(error);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
const debouncedUpdateHeight = this._debounce(() => this._updateEditorHeight(), 50);
|
|
56
|
+
editor.onDidChangeModelDecorations(() => {
|
|
57
|
+
debouncedUpdateHeight();
|
|
58
|
+
});
|
|
59
|
+
this._updateEditorHeight();
|
|
60
|
+
}
|
|
61
|
+
onChangeJSON = () => {
|
|
62
|
+
if (this._editor) {
|
|
63
|
+
try {
|
|
64
|
+
this.jsonChange.emit(this._editor.getValue());
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
if (this.debug) {
|
|
68
|
+
console.log(error);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
onChange = () => {
|
|
74
|
+
if (this._editor) {
|
|
75
|
+
try {
|
|
76
|
+
const json = this._editor.getValue();
|
|
77
|
+
this.updateValue(json);
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
if (this.debug) {
|
|
81
|
+
console.log(error);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
focus() {
|
|
87
|
+
this._editor?.focus();
|
|
88
|
+
}
|
|
89
|
+
get() {
|
|
90
|
+
return this._editor?.getValue();
|
|
91
|
+
}
|
|
92
|
+
getText() {
|
|
93
|
+
return this._editor?.getText();
|
|
94
|
+
}
|
|
95
|
+
set(json) {
|
|
96
|
+
this._editor.setValue(json);
|
|
97
|
+
this._updateEditorHeight();
|
|
98
|
+
}
|
|
99
|
+
setSelection(start, end) {
|
|
100
|
+
if (!this._editor)
|
|
101
|
+
return;
|
|
102
|
+
const monaco = window.monaco;
|
|
103
|
+
if (monaco) {
|
|
104
|
+
this._editor.setSelection(new monaco.Range(start.line, start.column, end.line, end.column));
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
getSelection() {
|
|
108
|
+
return this._editor.getSelection();
|
|
109
|
+
}
|
|
110
|
+
setOptions(newOptions) {
|
|
111
|
+
this._destroyEditor();
|
|
112
|
+
this.options = newOptions;
|
|
113
|
+
this._initializeEditor();
|
|
114
|
+
}
|
|
115
|
+
destroy() {
|
|
116
|
+
this._destroyEditor();
|
|
117
|
+
}
|
|
118
|
+
getEditor() {
|
|
119
|
+
return this._editor;
|
|
120
|
+
}
|
|
121
|
+
isValidJson() {
|
|
122
|
+
try {
|
|
123
|
+
JSON.parse(this.getText());
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
catch (e) {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
setDisabledState(isDisabled) {
|
|
131
|
+
this.disabled = isDisabled;
|
|
132
|
+
this._editor?.updateOptions({ readOnly: isDisabled });
|
|
133
|
+
}
|
|
134
|
+
writeValue(value) {
|
|
135
|
+
this.data = value;
|
|
136
|
+
}
|
|
137
|
+
updateValue(insideValue) {
|
|
138
|
+
this.changed.emit(insideValue);
|
|
139
|
+
this.modelChange.emit({ value: insideValue, id: this.uuid });
|
|
140
|
+
this.onChangeFn(insideValue);
|
|
141
|
+
this.onTouchedFn();
|
|
142
|
+
}
|
|
143
|
+
registerOnChange(fn) {
|
|
144
|
+
this.onChangeFn = fn;
|
|
145
|
+
}
|
|
146
|
+
registerOnTouched(fn) {
|
|
147
|
+
this.onTouchedFn = fn;
|
|
148
|
+
}
|
|
149
|
+
_initializeEditor() {
|
|
150
|
+
this._updateEditorModel();
|
|
151
|
+
this._updateEditorOptions();
|
|
152
|
+
this.options.onChangeJSON = this.options.onChangeJSON || this.onChangeJSON;
|
|
153
|
+
this.options.onChange = this.options.onChange || this.onChange;
|
|
154
|
+
if (this.debug) {
|
|
155
|
+
console.log(this.options, this._data);
|
|
156
|
+
}
|
|
157
|
+
if (!this.editorContainer?.nativeElement) {
|
|
158
|
+
console.error(`Can't find the ElementRef reference for jsoneditor`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
_updateEditorModel() {
|
|
162
|
+
const value = typeof this._data === 'string' ? this._data : JSON.stringify(this._data, null, 2);
|
|
163
|
+
this.editorModel = {
|
|
164
|
+
value: value,
|
|
165
|
+
language: this.options.language,
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
_updateEditorOptions() {
|
|
169
|
+
this.editorOptions = { ...this.options };
|
|
170
|
+
}
|
|
171
|
+
_updateEditorHeight() {
|
|
172
|
+
if (!this._editor || !this.editorContainer)
|
|
173
|
+
return;
|
|
174
|
+
this.editorContainer.nativeElement.style.height = `${this._editor.getContentHeight()}px`;
|
|
175
|
+
this._editor.layout();
|
|
176
|
+
}
|
|
177
|
+
_debounce(func, wait) {
|
|
178
|
+
this._clearDebounce();
|
|
179
|
+
return (...args) => {
|
|
180
|
+
this._debounceTimeout = setTimeout(() => func(...args), wait);
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
_clearDebounce() {
|
|
184
|
+
if (this._debounceTimeout) {
|
|
185
|
+
clearTimeout(this._debounceTimeout);
|
|
186
|
+
this._debounceTimeout = null;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
_destroyEditor() {
|
|
190
|
+
if (this._editor) {
|
|
191
|
+
this._editor.dispose();
|
|
192
|
+
this._editor = null;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
onChangeFn = (value) => {
|
|
196
|
+
};
|
|
197
|
+
onTouchedFn = () => {
|
|
198
|
+
};
|
|
199
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CodeEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
200
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: CodeEditorComponent, selector: "mrx-code-editor", inputs: { fields: "fields", options: "options", debug: "debug", disabled: "disabled", data: "data" }, outputs: { changed: "changed", modelChange: "modelChange", jsonChange: "jsonChange" }, providers: [
|
|
201
|
+
{
|
|
202
|
+
provide: NG_VALUE_ACCESSOR,
|
|
203
|
+
useExisting: forwardRef(() => CodeEditorComponent),
|
|
204
|
+
multi: true,
|
|
205
|
+
},
|
|
206
|
+
], viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, static: true }], ngImport: i0, template: "<div [id]=\"uuid\" #editorContainer class=\"editor-wrapper\">\r\n\t\t<ngx-monaco-editor\r\n\t\t\t\t\t\t[options]=\"editorOptions\"\r\n\t\t\t\t\t\t[model]=\"editorModel\"\r\n\t\t\t\t\t\t(onInit)=\"onEditorInit($event)\"\r\n\t\t></ngx-monaco-editor>\r\n</div>\r\n", styles: [":host{display:block;width:100%}.editor-wrapper{width:100%;min-height:140px;height:auto}ngx-monaco-editor{height:100%!important;min-height:140px}.monaco-editor,.monaco-editor .overflow-guard{width:100%!important;height:auto!important}\n"], dependencies: [{ kind: "component", type: i1.EditorComponent, selector: "ngx-monaco-editor", inputs: ["options", "model"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
207
|
+
}
|
|
208
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CodeEditorComponent, decorators: [{
|
|
209
|
+
type: Component,
|
|
210
|
+
args: [{ selector: 'mrx-code-editor', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
211
|
+
{
|
|
212
|
+
provide: NG_VALUE_ACCESSOR,
|
|
213
|
+
useExisting: forwardRef(() => CodeEditorComponent),
|
|
214
|
+
multi: true,
|
|
215
|
+
},
|
|
216
|
+
], template: "<div [id]=\"uuid\" #editorContainer class=\"editor-wrapper\">\r\n\t\t<ngx-monaco-editor\r\n\t\t\t\t\t\t[options]=\"editorOptions\"\r\n\t\t\t\t\t\t[model]=\"editorModel\"\r\n\t\t\t\t\t\t(onInit)=\"onEditorInit($event)\"\r\n\t\t></ngx-monaco-editor>\r\n</div>\r\n", styles: [":host{display:block;width:100%}.editor-wrapper{width:100%;min-height:140px;height:auto}ngx-monaco-editor{height:100%!important;min-height:140px}.monaco-editor,.monaco-editor .overflow-guard{width:100%!important;height:auto!important}\n"] }]
|
|
217
|
+
}], propDecorators: { fields: [{
|
|
218
|
+
type: Input
|
|
219
|
+
}], options: [{
|
|
220
|
+
type: Input
|
|
221
|
+
}], debug: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}], disabled: [{
|
|
224
|
+
type: Input
|
|
225
|
+
}], data: [{
|
|
226
|
+
type: Input,
|
|
227
|
+
args: ['data']
|
|
228
|
+
}], changed: [{
|
|
229
|
+
type: Output
|
|
230
|
+
}], modelChange: [{
|
|
231
|
+
type: Output
|
|
232
|
+
}], jsonChange: [{
|
|
233
|
+
type: Output
|
|
234
|
+
}], editorContainer: [{
|
|
235
|
+
type: ViewChild,
|
|
236
|
+
args: ['editorContainer', { static: true }]
|
|
237
|
+
}] } });
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY29kZS1lZGl0b3IvY29kZS1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY29kZS1lZGl0b3IvY29kZS1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7OztBQWlCOUQsTUFBTSxPQUFPLG1CQUFtQjtJQUN0QixLQUFLLEdBQVcsRUFBRSxDQUFDO0lBQ25CLE9BQU8sQ0FBTTtJQUNiLGdCQUFnQixDQUFNO0lBRXZCLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFDM0IsV0FBVyxDQUFrQjtJQUM3QixhQUFhLENBQXFCO0lBRWxDLElBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztJQUNmLE1BQU0sR0FBWSxFQUFFLENBQUM7SUFDNUIsT0FBTyxHQUFzQixJQUFJLGlCQUFpQixFQUFFLENBQUM7SUFDckQsS0FBSyxHQUFZLEtBQUssQ0FBQztJQUN2QixRQUFRLEdBQVksS0FBSyxDQUFDO0lBRW5DLElBQW1CLElBQUksQ0FBQyxLQUFhO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxD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dUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQzs0QkFDbEQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OEJBWWUsTUFBTTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRWEsSUFBSTtzQkFBdEIsS0FBSzt1QkFBQyxNQUFNO2dCQVlILE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUV1QyxlQUFlO3NCQUE1RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBOZ3hFZGl0b3JNb2RlbCB9IGZyb20gJ25neC1tb25hY28tZWRpdG9yLXYyJztcclxuaW1wb3J0IHsgQ29kZUVkaXRvck9wdGlvbnMgfSBmcm9tIFwiLi91dGlscy9jb2RlZWRpdG9yb3B0aW9uc1wiO1xyXG5pbXBvcnQgeyBDb2RlRWRpdG9yVmFsdWVUeXBlcywgQ29kZUVkaXRvclZhbHVlV2l0aElkIH0gZnJvbSBcIi4vY29kZS1lZGl0b3IuZW51bVwiO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtY29kZS1lZGl0b3InLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2RlLWVkaXRvci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29kZS1lZGl0b3IuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENvZGVFZGl0b3JDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvZGVFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgX2RhdGE6IE9iamVjdCA9IHt9O1xyXG4gIHByaXZhdGUgX2VkaXRvcjogYW55O1xyXG4gIHByaXZhdGUgX2RlYm91bmNlVGltZW91dDogYW55O1xyXG5cclxuICBwdWJsaWMgaXNGb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGVkaXRvck1vZGVsITogTmd4RWRpdG9yTW9kZWw7XHJcbiAgcHVibGljIGVkaXRvck9wdGlvbnMhOiBDb2RlRWRpdG9yT3B0aW9ucztcclxuXHJcbiAgcHVibGljIHV1aWQ6IHN0cmluZyA9IHV1aWR2NCgpO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWVsZHM6IEZpZWxkW10gPSBbXTtcclxuICBASW5wdXQoKSBvcHRpb25zOiBDb2RlRWRpdG9yT3B0aW9ucyA9IG5ldyBDb2RlRWRpdG9yT3B0aW9ucygpO1xyXG4gIEBJbnB1dCgpIGRlYnVnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCdkYXRhJykgc2V0IGRhdGEodmFsdWU6IE9iamVjdCkge1xyXG4gICAgdGhpcy5fZGF0YSA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xyXG4gICAgICB0aGlzLl9lZGl0b3IuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLm5nT25Jbml0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgZGF0YSgpOiBPYmplY3Qge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RhdGE7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KCkgY2hhbmdlZDogRXZlbnRFbWl0dGVyPENvZGVFZGl0b3JWYWx1ZVR5cGVzPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29kZUVkaXRvclZhbHVlVHlwZXM+KCk7XHJcbiAgQE91dHB1dCgpIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q29kZUVkaXRvclZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29kZUVkaXRvclZhbHVlV2l0aElkPigpO1xyXG4gIEBPdXRwdXQoKSBqc29uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdlZGl0b3JDb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgZWRpdG9yQ29udGFpbmVyITogRWxlbWVudFJlZjtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9pbml0aWFsaXplRWRpdG9yKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Rlc3Ryb3lFZGl0b3IoKTtcclxuICAgIHRoaXMuX2NsZWFyRGVib3VuY2UoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkVkaXRvckluaXQoZWRpdG9yOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuX2VkaXRvciA9IGVkaXRvcjtcclxuICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSh0aGlzLmRpc2FibGVkKTtcclxuXHJcbiAgICBlZGl0b3Iub25EaWRDaGFuZ2VNb2RlbENvbnRlbnQoKCkgPT4ge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbnN0IHBhcnNlZFZhbHVlID0gSlNPTi5wYXJzZShlZGl0b3IuZ2V0VmFsdWUoKSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShwYXJzZWRWYWx1ZSk7XHJcbiAgICAgICAgdGhpcy5qc29uQ2hhbmdlLmVtaXQocGFyc2VkVmFsdWUpO1xyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIGlmICh0aGlzLmRlYnVnKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBkZWJvdW5jZWRVcGRhdGVIZWlnaHQgPSB0aGlzLl9kZWJvdW5jZSgoKSA9PiB0aGlzLl91cGRhdGVFZGl0b3JIZWlnaHQoKSwgNTApO1xyXG4gICAgZWRpdG9yLm9uRGlkQ2hhbmdlTW9kZWxEZWNvcmF0aW9ucygoKSA9PiB7XHJcbiAgICAgIGRlYm91bmNlZFVwZGF0ZUhlaWdodCgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5fdXBkYXRlRWRpdG9ySGVpZ2h0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DaGFuZ2VKU09OID0gKCk6IHZvaWQgPT4ge1xyXG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHRoaXMuanNvbkNoYW5nZS5lbWl0KHRoaXMuX2VkaXRvci5nZXRWYWx1ZSgpKTtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICBpZiAodGhpcy5kZWJ1Zykge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBvbkNoYW5nZSA9ICgpOiB2b2lkID0+IHtcclxuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25zdCBqc29uID0gdGhpcy5fZWRpdG9yLmdldFZhbHVlKCk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShqc29uKTtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICBpZiAodGhpcy5kZWJ1Zykge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBmb2N1cygpOiB2b2lkIHtcclxuICAgIHRoaXMuX2VkaXRvcj8uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQoKTogSlNPTiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yPy5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFRleHQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9lZGl0b3I/LmdldFRleHQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQoanNvbjogSlNPTik6IHZvaWQge1xyXG4gICAgdGhpcy5fZWRpdG9yLnNldFZhbHVlKGpzb24pO1xyXG4gICAgdGhpcy5fdXBkYXRlRWRpdG9ySGVpZ2h0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0U2VsZWN0aW9uKHN0YXJ0OiBhbnksIGVuZDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuX2VkaXRvcikgcmV0dXJuO1xyXG4gICAgY29uc3QgbW9uYWNvID0gKHdpbmRvdyBhcyBhbnkpLm1vbmFjbztcclxuICAgIGlmIChtb25hY28pIHtcclxuICAgICAgdGhpcy5fZWRpdG9yLnNldFNlbGVjdGlvbihuZXcgbW9uYWNvLlJhbmdlKHN0YXJ0LmxpbmUsIHN0YXJ0LmNvbHVtbiwgZW5kLmxpbmUsIGVuZC5jb2x1bW4pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZWxlY3Rpb24oKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl9lZGl0b3IuZ2V0U2VsZWN0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0T3B0aW9ucyhuZXdPcHRpb25zOiBDb2RlRWRpdG9yT3B0aW9ucyk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveUVkaXRvcigpO1xyXG4gICAgdGhpcy5vcHRpb25zID0gbmV3T3B0aW9ucztcclxuICAgIHRoaXMuX2luaXRpYWxpemVFZGl0b3IoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveUVkaXRvcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEVkaXRvcigpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2VkaXRvcjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpc1ZhbGlkSnNvbigpOiBib29sZWFuIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIEpTT04ucGFyc2UodGhpcy5nZXRUZXh0KCkpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgICB0aGlzLl9lZGl0b3I/LnVwZGF0ZU9wdGlvbnMoe3JlYWRPbmx5OiBpc0Rpc2FibGVkfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGEgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZShpbnNpZGVWYWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLmNoYW5nZWQuZW1pdChpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiBpbnNpZGVWYWx1ZSwgaWQ6IHRoaXMudXVpZH0pO1xyXG4gICAgdGhpcy5vbkNoYW5nZUZuKGluc2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkRm4oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2VGbiA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZEZuID0gZm47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbml0aWFsaXplRWRpdG9yKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdXBkYXRlRWRpdG9yTW9kZWwoKTtcclxuICAgIHRoaXMuX3VwZGF0ZUVkaXRvck9wdGlvbnMoKTtcclxuXHJcbiAgICB0aGlzLm9wdGlvbnMub25DaGFuZ2VKU09OID0gdGhpcy5vcHRpb25zLm9uQ2hhbmdlSlNPTiB8fCB0aGlzLm9uQ2hhbmdlSlNPTjtcclxuICAgIHRoaXMub3B0aW9ucy5vbkNoYW5nZSA9IHRoaXMub3B0aW9ucy5vbkNoYW5nZSB8fCB0aGlzLm9uQ2hhbmdlO1xyXG5cclxuICAgIGlmICh0aGlzLmRlYnVnKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMub3B0aW9ucywgdGhpcy5fZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLmVkaXRvckNvbnRhaW5lcj8ubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKGBDYW4ndCBmaW5kIHRoZSBFbGVtZW50UmVmIHJlZmVyZW5jZSBmb3IganNvbmVkaXRvcmApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlRWRpdG9yTW9kZWwoKTogdm9pZCB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHR5cGVvZiB0aGlzLl9kYXRhID09PSAnc3RyaW5nJyA/IHRoaXMuX2RhdGEgOiBKU09OLnN0cmluZ2lmeSh0aGlzLl9kYXRhLCBudWxsLCAyKTtcclxuICAgIHRoaXMuZWRpdG9yTW9kZWwgPSB7XHJcbiAgICAgIHZhbHVlOiB2YWx1ZSxcclxuICAgICAgbGFuZ3VhZ2U6IHRoaXMub3B0aW9ucy5sYW5ndWFnZSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91cGRhdGVFZGl0b3JPcHRpb25zKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lZGl0b3JPcHRpb25zID0gey4uLnRoaXMub3B0aW9uc307XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91cGRhdGVFZGl0b3JIZWlnaHQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuX2VkaXRvciB8fCAhdGhpcy5lZGl0b3JDb250YWluZXIpIHJldHVybjtcclxuICAgIHRoaXMuZWRpdG9yQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gYCR7dGhpcy5fZWRpdG9yLmdldENvbnRlbnRIZWlnaHQoKX1weGA7XHJcbiAgICB0aGlzLl9lZGl0b3IubGF5b3V0KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9kZWJvdW5jZShmdW5jOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQsIHdhaXQ6IG51bWJlcik6ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCB7XHJcbiAgICB0aGlzLl9jbGVhckRlYm91bmNlKCk7XHJcbiAgICByZXR1cm4gKC4uLmFyZ3M6IGFueVtdKSA9PiB7XHJcbiAgICAgIHRoaXMuX2RlYm91bmNlVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gZnVuYyguLi5hcmdzKSwgd2FpdCk7XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY2xlYXJEZWJvdW5jZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9kZWJvdW5jZVRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2RlYm91bmNlVGltZW91dCk7XHJcbiAgICAgIHRoaXMuX2RlYm91bmNlVGltZW91dCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9kZXN0cm95RWRpdG9yKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xyXG4gICAgICB0aGlzLl9lZGl0b3IuZGlzcG9zZSgpO1xyXG4gICAgICB0aGlzLl9lZGl0b3IgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZUZuID0gKHZhbHVlOiBhbnkpOiB2b2lkID0+IHtcclxuICB9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkRm4gPSAoKTogdm9pZCA9PiB7XHJcbiAgfTtcclxufSIsIjxkaXYgW2lkXT1cInV1aWRcIiAjZWRpdG9yQ29udGFpbmVyIGNsYXNzPVwiZWRpdG9yLXdyYXBwZXJcIj5cclxuXHRcdDxuZ3gtbW9uYWNvLWVkaXRvclxyXG5cdFx0XHRcdFx0XHRbb3B0aW9uc109XCJlZGl0b3JPcHRpb25zXCJcclxuXHRcdFx0XHRcdFx0W21vZGVsXT1cImVkaXRvck1vZGVsXCJcclxuXHRcdFx0XHRcdFx0KG9uSW5pdCk9XCJvbkVkaXRvckluaXQoJGV2ZW50KVwiXHJcblx0XHQ+PC9uZ3gtbW9uYWNvLWVkaXRvcj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2NvZGUtZWRpdG9yL2NvZGUtZWRpdG9yLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIENvZGVFZGl0b3JWYWx1ZVR5cGVzID0gYW55O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb2RlRWRpdG9yVmFsdWVXaXRoSWQge1xyXG4gIHZhbHVlOiBDb2RlRWRpdG9yVmFsdWVUeXBlcztcclxuICBpZDogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CodeEditorComponent } from "./code-editor.component";
|
|
4
|
+
import { FormsModule } from "@angular/forms";
|
|
5
|
+
import { MonacoEditorModule } from 'ngx-monaco-editor-v2';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class CodeEditorModule {
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CodeEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: CodeEditorModule, declarations: [CodeEditorComponent], imports: [CommonModule,
|
|
10
|
+
FormsModule,
|
|
11
|
+
MonacoEditorModule], exports: [CodeEditorComponent] });
|
|
12
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CodeEditorModule, imports: [CommonModule,
|
|
13
|
+
FormsModule,
|
|
14
|
+
MonacoEditorModule] });
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CodeEditorModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
declarations: [CodeEditorComponent],
|
|
20
|
+
imports: [
|
|
21
|
+
CommonModule,
|
|
22
|
+
FormsModule,
|
|
23
|
+
MonacoEditorModule
|
|
24
|
+
],
|
|
25
|
+
exports: [CodeEditorComponent]
|
|
26
|
+
}]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vY29kZS1lZGl0b3IvY29kZS1lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFXMUQsTUFBTSxPQUFPLGdCQUFnQjt3R0FBaEIsZ0JBQWdCO3lHQUFoQixnQkFBZ0IsaUJBUlosbUJBQW1CLGFBRWhDLFlBQVk7WUFDWixXQUFXO1lBQ1gsa0JBQWtCLGFBRVYsbUJBQW1CO3lHQUVsQixnQkFBZ0IsWUFOekIsWUFBWTtZQUNaLFdBQVc7WUFDWCxrQkFBa0I7OzRGQUlULGdCQUFnQjtrQkFUNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvZGVFZGl0b3JDb21wb25lbnQgfSBmcm9tIFwiLi9jb2RlLWVkaXRvci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgTW9uYWNvRWRpdG9yTW9kdWxlIH0gZnJvbSAnbmd4LW1vbmFjby1lZGl0b3ItdjInO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtDb2RlRWRpdG9yQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1vbmFjb0VkaXRvck1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW0NvZGVFZGl0b3JDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb2RlRWRpdG9yTW9kdWxlIHtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export class CodeEditorOptions {
|
|
2
|
+
theme;
|
|
3
|
+
language;
|
|
4
|
+
automaticLayout;
|
|
5
|
+
minimap;
|
|
6
|
+
lineNumbers;
|
|
7
|
+
readOnly;
|
|
8
|
+
fontSize;
|
|
9
|
+
wordWrap;
|
|
10
|
+
folding;
|
|
11
|
+
renderWhitespace;
|
|
12
|
+
tabSize;
|
|
13
|
+
formatOnPaste;
|
|
14
|
+
formatOnType;
|
|
15
|
+
suggest;
|
|
16
|
+
scrollBeyondLastLine;
|
|
17
|
+
foldingHighlight;
|
|
18
|
+
foldingStrategy;
|
|
19
|
+
_enableSchemaValidation;
|
|
20
|
+
validateJson;
|
|
21
|
+
setSchemaValidation;
|
|
22
|
+
onChange;
|
|
23
|
+
onChangeJSON;
|
|
24
|
+
onError;
|
|
25
|
+
onValidate;
|
|
26
|
+
onInit;
|
|
27
|
+
constructor() {
|
|
28
|
+
this.theme = 'vs-light';
|
|
29
|
+
this.language = 'json';
|
|
30
|
+
this.automaticLayout = true;
|
|
31
|
+
this.minimap = { enabled: true };
|
|
32
|
+
this.lineNumbers = 'on';
|
|
33
|
+
this.readOnly = false;
|
|
34
|
+
this.fontSize = 14;
|
|
35
|
+
this.wordWrap = 'off';
|
|
36
|
+
this.folding = true;
|
|
37
|
+
this.renderWhitespace = 'none';
|
|
38
|
+
this.tabSize = 2;
|
|
39
|
+
this.scrollBeyondLastLine = false;
|
|
40
|
+
this.foldingHighlight = true;
|
|
41
|
+
this.foldingStrategy = 'auto';
|
|
42
|
+
this.formatOnPaste = true;
|
|
43
|
+
this.formatOnType = true;
|
|
44
|
+
this.suggest = {
|
|
45
|
+
showWords: true,
|
|
46
|
+
showSnippets: false,
|
|
47
|
+
};
|
|
48
|
+
this._enableSchemaValidation = true;
|
|
49
|
+
this.validateJson = true;
|
|
50
|
+
this.setSchemaValidation = (enabled) => {
|
|
51
|
+
this._enableSchemaValidation = enabled;
|
|
52
|
+
};
|
|
53
|
+
this.onChange = () => {
|
|
54
|
+
};
|
|
55
|
+
this.onChangeJSON = () => {
|
|
56
|
+
};
|
|
57
|
+
this.onError = () => {
|
|
58
|
+
};
|
|
59
|
+
this.onValidate = () => {
|
|
60
|
+
};
|
|
61
|
+
this.onInit = () => {
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZWVkaXRvcm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9jb2RlLWVkaXRvci91dGlscy9jb2RlZWRpdG9yb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1QkEsTUFBTSxPQUFPLGlCQUFpQjtJQUNyQixLQUFLLENBQVU7SUFDZixRQUFRLENBQVU7SUFDbEIsZUFBZSxDQUFXO0lBQzFCLE9BQU8sQ0FBd0I7SUFDL0IsV0FBVyxDQUE2QjtJQUN4QyxRQUFRLENBQVc7SUFDbkIsUUFBUSxDQUFVO0lBQ2xCLFFBQVEsQ0FBK0M7SUFDdkQsT0FBTyxDQUFXO0lBQ2xCLGdCQUFnQixDQUE2QztJQUM3RCxPQUFPLENBQVU7SUFDakIsYUFBYSxDQUFXO0lBQ3hCLFlBQVksQ0FBVztJQUN2QixPQUFPLENBQWtEO0lBQ3pELG9CQUFvQixDQUFXO0lBQy9CLGdCQUFnQixDQUFXO0lBQzNCLGVBQWUsQ0FBVTtJQUN6Qix1QkFBdUIsQ0FBVztJQUNsQyxZQUFZLENBQVc7SUFFdkIsbUJBQW1CLENBQThCO0lBQ2pELFFBQVEsQ0FBNkI7SUFDckMsWUFBWSxDQUF1QjtJQUNuQyxPQUFPLENBQXNDO0lBQzdDLFVBQVUsQ0FBeUM7SUFDbkQsTUFBTSxDQUFnQztJQUU3QztRQUNFLElBQUksQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQztRQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUM7UUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLE9BQU8sR0FBRztZQUNiLFNBQVMsRUFBRSxJQUFJO1lBQ2YsWUFBWSxFQUFFLEtBQUs7U0FDcEIsQ0FBQztRQUNGLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFFekIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsT0FBZ0IsRUFBRSxFQUFFO1lBQzlDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxPQUFPLENBQUM7UUFDekMsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEVBQUU7UUFDckIsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFlBQVksR0FBRyxHQUFHLEVBQUU7UUFDekIsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLEVBQUU7UUFDcEIsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLEVBQUU7UUFDdkIsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUU7UUFDbkIsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ29kZUVkaXRvck1vZGUgPSAnY29kZScgfCAndGV4dCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvZGVFZGl0b3JFcnJvciB7XHJcbiAgcGF0aDogKHN0cmluZyB8IG51bWJlcilbXTtcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbiAgc2V2ZXJpdHk/OiAnZXJyb3InIHwgJ3dhcm5pbmcnIHwgJ2luZm8nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvZGVFZGl0b3JNYXJrZXIge1xyXG4gIHN0YXJ0TGluZU51bWJlcjogbnVtYmVyO1xyXG4gIHN0YXJ0Q29sdW1uOiBudW1iZXI7XHJcbiAgZW5kTGluZU51bWJlcjogbnVtYmVyO1xyXG4gIGVuZENvbHVtbjogbnVtYmVyO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxuICBzZXZlcml0eTogJ0Vycm9yJyB8ICdXYXJuaW5nJyB8ICdJbmZvJztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb2RlRWRpdG9yIHtcclxuICBnZXRWYWx1ZSgpOiBzdHJpbmc7XHJcblxyXG4gIHNldFZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ29kZUVkaXRvck9wdGlvbnMge1xyXG4gIHB1YmxpYyB0aGVtZT86IHN0cmluZztcclxuICBwdWJsaWMgbGFuZ3VhZ2U/OiBzdHJpbmc7XHJcbiAgcHVibGljIGF1dG9tYXRpY0xheW91dD86IGJvb2xlYW47XHJcbiAgcHVibGljIG1pbmltYXA/OiB7IGVuYWJsZWQ6IGJvb2xlYW4gfTtcclxuICBwdWJsaWMgbGluZU51bWJlcnM/OiAnb24nIHwgJ29mZicgfCAncmVsYXRpdmUnO1xyXG4gIHB1YmxpYyByZWFkT25seT86IGJvb2xlYW47XHJcbiAgcHVibGljIGZvbnRTaXplPzogbnVtYmVyO1xyXG4gIHB1YmxpYyB3b3JkV3JhcD86ICdvbicgfCAnb2ZmJyB8ICd3b3JkV3JhcENvbHVtbicgfCAnYm91bmRlZCc7XHJcbiAgcHVibGljIGZvbGRpbmc/OiBib29sZWFuO1xyXG4gIHB1YmxpYyByZW5kZXJXaGl0ZXNwYWNlPzogJ25vbmUnIHwgJ2JvdW5kYXJ5JyB8ICdzZWxlY3Rpb24nIHwgJ2FsbCc7XHJcbiAgcHVibGljIHRhYlNpemU/OiBudW1iZXI7XHJcbiAgcHVibGljIGZvcm1hdE9uUGFzdGU/OiBib29sZWFuO1xyXG4gIHB1YmxpYyBmb3JtYXRPblR5cGU/OiBib29sZWFuO1xyXG4gIHB1YmxpYyBzdWdnZXN0PzogeyBzaG93V29yZHM6IGJvb2xlYW47IHNob3dTbmlwcGV0czogYm9vbGVhbjsgfTtcclxuICBwdWJsaWMgc2Nyb2xsQmV5b25kTGFzdExpbmU/OiBib29sZWFuO1xyXG4gIHB1YmxpYyBmb2xkaW5nSGlnaGxpZ2h0PzogYm9vbGVhbjtcclxuICBwdWJsaWMgZm9sZGluZ1N0cmF0ZWd5Pzogc3RyaW5nO1xyXG4gIHB1YmxpYyBfZW5hYmxlU2NoZW1hVmFsaWRhdGlvbj86IGJvb2xlYW47XHJcbiAgcHVibGljIHZhbGlkYXRlSnNvbj86IGJvb2xlYW47XHJcblxyXG4gIHB1YmxpYyBzZXRTY2hlbWFWYWxpZGF0aW9uPzogKGVuYWJsZWQ6IGJvb2xlYW4pID0+IHZvaWQ7XHJcbiAgcHVibGljIG9uQ2hhbmdlITogKGNvbnRlbnQ6IHN0cmluZykgPT4gdm9pZDtcclxuICBwdWJsaWMgb25DaGFuZ2VKU09OPzogKGpzb246IGFueSkgPT4gdm9pZDtcclxuICBwdWJsaWMgb25FcnJvciE6IChlcnJvcjogQ29kZUVkaXRvckVycm9yW10pID0+IHZvaWQ7XHJcbiAgcHVibGljIG9uVmFsaWRhdGUhOiAobWFya2VyczogQ29kZUVkaXRvck1hcmtlcltdKSA9PiB2b2lkO1xyXG4gIHB1YmxpYyBvbkluaXQhOiAoZWRpdG9yOiBDb2RlRWRpdG9yKSA9PiB2b2lkO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMudGhlbWUgPSAndnMtbGlnaHQnO1xyXG4gICAgdGhpcy5sYW5ndWFnZSA9ICdqc29uJztcclxuICAgIHRoaXMuYXV0b21hdGljTGF5b3V0ID0gdHJ1ZTtcclxuICAgIHRoaXMubWluaW1hcCA9IHtlbmFibGVkOiB0cnVlfTtcclxuICAgIHRoaXMubGluZU51bWJlcnMgPSAnb24nO1xyXG4gICAgdGhpcy5yZWFkT25seSA9IGZhbHNlO1xyXG4gICAgdGhpcy5mb250U2l6ZSA9IDE0O1xyXG4gICAgdGhpcy53b3JkV3JhcCA9ICdvZmYnO1xyXG4gICAgdGhpcy5mb2xkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMucmVuZGVyV2hpdGVzcGFjZSA9ICdub25lJztcclxuICAgIHRoaXMudGFiU2l6ZSA9IDI7XHJcbiAgICB0aGlzLnNjcm9sbEJleW9uZExhc3RMaW5lID0gZmFsc2U7XHJcbiAgICB0aGlzLmZvbGRpbmdIaWdobGlnaHQgPSB0cnVlO1xyXG4gICAgdGhpcy5mb2xkaW5nU3RyYXRlZ3kgPSAnYXV0byc7XHJcbiAgICB0aGlzLmZvcm1hdE9uUGFzdGUgPSB0cnVlO1xyXG4gICAgdGhpcy5mb3JtYXRPblR5cGUgPSB0cnVlO1xyXG4gICAgdGhpcy5zdWdnZXN0ID0ge1xyXG4gICAgICBzaG93V29yZHM6IHRydWUsXHJcbiAgICAgIHNob3dTbmlwcGV0czogZmFsc2UsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5fZW5hYmxlU2NoZW1hVmFsaWRhdGlvbiA9IHRydWU7XHJcbiAgICB0aGlzLnZhbGlkYXRlSnNvbiA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5zZXRTY2hlbWFWYWxpZGF0aW9uID0gKGVuYWJsZWQ6IGJvb2xlYW4pID0+IHtcclxuICAgICAgdGhpcy5fZW5hYmxlU2NoZW1hVmFsaWRhdGlvbiA9IGVuYWJsZWQ7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9ICgpID0+IHtcclxuICAgIH07XHJcbiAgICB0aGlzLm9uQ2hhbmdlSlNPTiA9ICgpID0+IHtcclxuICAgIH07XHJcbiAgICB0aGlzLm9uRXJyb3IgPSAoKSA9PiB7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5vblZhbGlkYXRlID0gKCkgPT4ge1xyXG4gICAgfTtcclxuICAgIHRoaXMub25Jbml0ID0gKCkgPT4ge1xyXG4gICAgfTtcclxuICB9XHJcbn0iXX0=
|
|
@@ -59,14 +59,13 @@ export class ModalComponent {
|
|
|
59
59
|
this.isEmbed = !this.isEmbed;
|
|
60
60
|
}
|
|
61
61
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
62
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ModalComponent, selector: "mrx-modal", inputs: { title: "title", message: "message", alert: "alert", okText: "okText", closeText: "closeText", size: "size", color: "color", customClasses: "customClasses", expandable: "expandable", isEmbed: "isEmbed", isClose: "isClose", isBack: "isBack", backText: "backText", enableFooter: "enableFooter", alignButtons: "alignButtons", isLoading: "isLoading", iconPosition: "iconPosition" }, outputs: { ok: "ok", close: "close", back: "back" }, queries: [{ propertyName: "footerContent", first: true, predicate: ["footerContent"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-modal-content\" [class]=\"getClasses\" [@animateExpand]=\"isEmbed ? 'open' : 'closed'\">\r\n <div class=\"mrx-modal-header\">\r\n <div class=\"mrx-modal-title\" [innerHTML]=\"title\" [style]=\"{padding: expandable ? '0 56px' : '0 24px'}\"></div>\r\n\r\n @if (expandable) {\r\n <span\r\n class=\"mrx-icon icon-font-24\"\r\n [class]=\"isEmbed ? 'icon-arrow-collapse' : 'icon-arrow-expand'\"\r\n (click)=\"onExpanding()\"\r\n ></span>\r\n }\r\n\r\n @if (isClose) {\r\n <span class=\"mrx-icon icon-close icon-font-24\" (click)=\"onClose()\"></span>\r\n }\r\n </div>\r\n\r\n <div class=\"mrx-modal-body\">\r\n @if (isBack) {\r\n <div class=\"mrx-modal__back d-flex align-items-center mb-3 mt-2\" (click)=\"onBack()\">\r\n <span class=\"mrx-icon icon-arrow-left icon-font-16 mr-1\"></span>\r\n <span>{{ backText }}</span>\r\n </div>\r\n }\r\n\r\n @if (alert && (alert.title || alert.message)) {\r\n <mrx-alert\r\n [customClasses]=\"'mb-3'\"\r\n [title]=\"alert.title || ''\"\r\n [message]=\"alert.message || ''\"\r\n [color]=\"alert.color || 'default'\"\r\n ></mrx-alert>\r\n }\r\n\r\n <div class=\"mrx-modal-body__message\" [innerHTML]=\"message\"></div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-modal-footer\" [class]=\"alignButtonsClass\">\r\n @if (!footerContent) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"getButtonColor\"\r\n [size]=\"'medium'\"\r\n (click)=\"onClose()\"\r\n >{{closeText}}</mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"getButtonColor\"\r\n [iconPosition]=\"iconPosition\"\r\n [isLoading]=\"isLoading\"\r\n (click)=\"onOk()\"\r\n >{{okText}}</mrx-button>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: ["::ng-deep .mrx-modal
|
|
62
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ModalComponent, selector: "mrx-modal", inputs: { title: "title", message: "message", alert: "alert", okText: "okText", closeText: "closeText", size: "size", color: "color", customClasses: "customClasses", expandable: "expandable", isEmbed: "isEmbed", isClose: "isClose", isBack: "isBack", backText: "backText", enableFooter: "enableFooter", alignButtons: "alignButtons", isLoading: "isLoading", iconPosition: "iconPosition" }, outputs: { ok: "ok", close: "close", back: "back" }, queries: [{ propertyName: "footerContent", first: true, predicate: ["footerContent"], descendants: true }], ngImport: i0, template: "<div class=\"mrx-modal-content\" [class]=\"getClasses\" [@animateExpand]=\"isEmbed ? 'open' : 'closed'\">\r\n <div class=\"mrx-modal-header\">\r\n <div class=\"mrx-modal-title\" [innerHTML]=\"title\" [style]=\"{padding: expandable ? '0 56px' : '0 24px'}\"></div>\r\n\r\n @if (expandable) {\r\n <span\r\n class=\"mrx-icon icon-font-24\"\r\n [class]=\"isEmbed ? 'icon-arrow-collapse' : 'icon-arrow-expand'\"\r\n (click)=\"onExpanding()\"\r\n ></span>\r\n }\r\n\r\n @if (isClose) {\r\n <span class=\"mrx-icon icon-close icon-font-24\" (click)=\"onClose()\"></span>\r\n }\r\n </div>\r\n\r\n <div class=\"mrx-modal-body\">\r\n @if (isBack) {\r\n <div class=\"mrx-modal__back d-flex align-items-center mb-3 mt-2\" (click)=\"onBack()\">\r\n <span class=\"mrx-icon icon-arrow-left icon-font-16 mr-1\"></span>\r\n <span>{{ backText }}</span>\r\n </div>\r\n }\r\n\r\n @if (alert && (alert.title || alert.message)) {\r\n <mrx-alert\r\n [customClasses]=\"'mb-3'\"\r\n [title]=\"alert.title || ''\"\r\n [message]=\"alert.message || ''\"\r\n [color]=\"alert.color || 'default'\"\r\n ></mrx-alert>\r\n }\r\n\r\n <div class=\"mrx-modal-body__message\" [innerHTML]=\"message\"></div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-modal-footer\" [class]=\"alignButtonsClass\">\r\n @if (!footerContent) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"getButtonColor\"\r\n [size]=\"'medium'\"\r\n (click)=\"onClose()\"\r\n >{{closeText}}</mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"getButtonColor\"\r\n [iconPosition]=\"iconPosition\"\r\n [isLoading]=\"isLoading\"\r\n (click)=\"onOk()\"\r\n >{{okText}}</mrx-button>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: ["::ng-deep .mrx-modal>*{display:flex;align-items:center;justify-content:center;height:100%;width:100%}:host{margin:auto 0;width:100vw}.mrx-modal-content{margin:24px auto;background-color:#fff;border-radius:4px;position:relative;transition:opacity .5s ease-out;width:calc(100vw - 32px);max-height:calc(100vh - 48px);will-change:opacity;display:flex;flex-direction:column;text-align:left;overflow:hidden}::ng-deep .mrx-modal-backdrop.cdk-overlay-backdrop{height:100%;inset:0;overflow-x:hidden;overflow-y:auto;padding:0 16px;position:absolute;text-align:center;z-index:1000;display:block}::ng-deep .mrx-modal-backdrop.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:var(--neutral-bg-modal)}::ng-deep .mrx-modal.fade-anim{transition:opacity .4s ease-in-out;will-change:opacity;opacity:0}::ng-deep .mrx-modal.fade-anim.in{opacity:1}.mrx-modal-body{padding:var(--spacing-6, 24px) var(--spacing-4, 16px) var(--spacing-4, 16px);flex-grow:1;overflow-y:auto;border-bottom:1px solid var(--neutral-bg-divider);margin-bottom:var(--spacing-4, 16px)}.mrx-modal-body .mrx-modal__back{font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);font-size:var(--body-md-font-size)}.mrx-modal-body__message{color:var(--neutral-text-primary);font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);font-size:var(--body-md-font-size)}.mrx-modal-content.type-default .mrx-modal-header{background:var(--brand-bg-primary-default);color:var(--neutral-icon-inverse)}.mrx-modal-content.type-default .mrx-modal-header .icon-close,.mrx-modal-content.type-default .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-default .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-default .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-inverse)}.mrx-modal-content.type-info .mrx-modal-header{background:var(--neutral-bg-island-default);color:var(--neutral-text-primary)}.mrx-modal-content.type-info .mrx-modal-header .icon-close,.mrx-modal-content.type-info .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-info .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-info .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-default)}.mrx-modal-content.type-attention .mrx-modal-header{background:var(--system-bg-controls-attention-default);color:var(--neutral-icon-inverse)}.mrx-modal-content.type-attention .mrx-modal-header .icon-close,.mrx-modal-content.type-attention .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-attention .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-attention .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-inverse)}.mrx-modal-content.type-negative .mrx-modal-header{background:var(--system-bg-controls-negative-default);color:var(--neutral-icon-inverse)}.mrx-modal-content.type-negative .mrx-modal-header .icon-close,.mrx-modal-content.type-negative .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-negative .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-negative .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-inverse)}.mrx-modal-content .mrx-modal__back{cursor:pointer;color:var(--brand-text-controls-default)}.mrx-modal-content .mrx-modal__back .mrx-icon{color:var(--brand-text-controls-default)}.mrx-modal-content .mrx-modal__back:hover,.mrx-modal-content .mrx-modal__back:hover .mrx-icon{color:var(--brand-text-controls-hover)}.mrx-modal-footer{align-items:center;display:flex;gap:var(--spacing-4);padding:var(--spacing-6);padding-top:0}.mrx-modal-header{padding:16px;position:relative;border-top-left-radius:4px;border-top-right-radius:4px}.mrx-modal-header .mrx-modal-title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size);text-align:center;text-transform:uppercase}.mrx-modal-header .icon-arrow-expand,.mrx-modal-header .icon-arrow-collapse{position:absolute;top:16px;right:48px;cursor:pointer}.mrx-modal-header .icon-arrow-expand:hover,.mrx-modal-header .icon-arrow-collapse:hover{transform:scale(1.1)}.mrx-modal-header .icon-close{position:absolute;top:16px;right:16px;cursor:pointer}.mrx-modal-header .icon-close:hover{transform:scale(1.1)}.mrx-modal-content.mrx-modal-sm{max-width:440px}.mrx-modal-content.mrx-modal-md{max-width:670px}.mrx-modal-content.mrx-modal-lg{max-width:904px}.mrx-modal-content.mrx-modal-extra-lg{max-width:1024px}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "mrx-button", inputs: ["size", "type", "color", "iconPosition", "active", "disabled", "isLoading", "iconOnly", "customClasses", "label", "icon", "iconClass", "buttonType", "href", "target", "routerLink", "queryParams"], outputs: ["mrxClick"] }, { kind: "component", type: i3.AlertComponent, selector: "mrx-alert", inputs: ["customClasses", "color", "customColor", "message", "title", "closable"], outputs: ["close"] }], animations: [
|
|
63
63
|
trigger('animateExpand', [
|
|
64
64
|
state('open', style({
|
|
65
|
-
height: '
|
|
65
|
+
height: '100vh',
|
|
66
66
|
width: '100%',
|
|
67
67
|
maxWidth: 'none',
|
|
68
68
|
minHeight: '100vh',
|
|
69
|
-
minWidth: '100vw',
|
|
70
69
|
marginTop: '0',
|
|
71
70
|
marginBottom: '0'
|
|
72
71
|
})),
|
|
@@ -81,11 +80,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
81
80
|
args: [{ selector: 'mrx-modal', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
82
81
|
trigger('animateExpand', [
|
|
83
82
|
state('open', style({
|
|
84
|
-
height: '
|
|
83
|
+
height: '100vh',
|
|
85
84
|
width: '100%',
|
|
86
85
|
maxWidth: 'none',
|
|
87
86
|
minHeight: '100vh',
|
|
88
|
-
minWidth: '100vw',
|
|
89
87
|
marginTop: '0',
|
|
90
88
|
marginBottom: '0'
|
|
91
89
|
})),
|
|
@@ -93,7 +91,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
93
91
|
transition('open => closed', [animate('0.5s ease')]),
|
|
94
92
|
transition('closed => open', [animate('0.5s ease')]),
|
|
95
93
|
]),
|
|
96
|
-
], template: "<div class=\"mrx-modal-content\" [class]=\"getClasses\" [@animateExpand]=\"isEmbed ? 'open' : 'closed'\">\r\n <div class=\"mrx-modal-header\">\r\n <div class=\"mrx-modal-title\" [innerHTML]=\"title\" [style]=\"{padding: expandable ? '0 56px' : '0 24px'}\"></div>\r\n\r\n @if (expandable) {\r\n <span\r\n class=\"mrx-icon icon-font-24\"\r\n [class]=\"isEmbed ? 'icon-arrow-collapse' : 'icon-arrow-expand'\"\r\n (click)=\"onExpanding()\"\r\n ></span>\r\n }\r\n\r\n @if (isClose) {\r\n <span class=\"mrx-icon icon-close icon-font-24\" (click)=\"onClose()\"></span>\r\n }\r\n </div>\r\n\r\n <div class=\"mrx-modal-body\">\r\n @if (isBack) {\r\n <div class=\"mrx-modal__back d-flex align-items-center mb-3 mt-2\" (click)=\"onBack()\">\r\n <span class=\"mrx-icon icon-arrow-left icon-font-16 mr-1\"></span>\r\n <span>{{ backText }}</span>\r\n </div>\r\n }\r\n\r\n @if (alert && (alert.title || alert.message)) {\r\n <mrx-alert\r\n [customClasses]=\"'mb-3'\"\r\n [title]=\"alert.title || ''\"\r\n [message]=\"alert.message || ''\"\r\n [color]=\"alert.color || 'default'\"\r\n ></mrx-alert>\r\n }\r\n\r\n <div class=\"mrx-modal-body__message\" [innerHTML]=\"message\"></div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-modal-footer\" [class]=\"alignButtonsClass\">\r\n @if (!footerContent) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"getButtonColor\"\r\n [size]=\"'medium'\"\r\n (click)=\"onClose()\"\r\n >{{closeText}}</mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"getButtonColor\"\r\n [iconPosition]=\"iconPosition\"\r\n [isLoading]=\"isLoading\"\r\n (click)=\"onOk()\"\r\n >{{okText}}</mrx-button>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: ["::ng-deep .mrx-modal
|
|
94
|
+
], template: "<div class=\"mrx-modal-content\" [class]=\"getClasses\" [@animateExpand]=\"isEmbed ? 'open' : 'closed'\">\r\n <div class=\"mrx-modal-header\">\r\n <div class=\"mrx-modal-title\" [innerHTML]=\"title\" [style]=\"{padding: expandable ? '0 56px' : '0 24px'}\"></div>\r\n\r\n @if (expandable) {\r\n <span\r\n class=\"mrx-icon icon-font-24\"\r\n [class]=\"isEmbed ? 'icon-arrow-collapse' : 'icon-arrow-expand'\"\r\n (click)=\"onExpanding()\"\r\n ></span>\r\n }\r\n\r\n @if (isClose) {\r\n <span class=\"mrx-icon icon-close icon-font-24\" (click)=\"onClose()\"></span>\r\n }\r\n </div>\r\n\r\n <div class=\"mrx-modal-body\">\r\n @if (isBack) {\r\n <div class=\"mrx-modal__back d-flex align-items-center mb-3 mt-2\" (click)=\"onBack()\">\r\n <span class=\"mrx-icon icon-arrow-left icon-font-16 mr-1\"></span>\r\n <span>{{ backText }}</span>\r\n </div>\r\n }\r\n\r\n @if (alert && (alert.title || alert.message)) {\r\n <mrx-alert\r\n [customClasses]=\"'mb-3'\"\r\n [title]=\"alert.title || ''\"\r\n [message]=\"alert.message || ''\"\r\n [color]=\"alert.color || 'default'\"\r\n ></mrx-alert>\r\n }\r\n\r\n <div class=\"mrx-modal-body__message\" [innerHTML]=\"message\"></div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-modal-footer\" [class]=\"alignButtonsClass\">\r\n @if (!footerContent) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"getButtonColor\"\r\n [size]=\"'medium'\"\r\n (click)=\"onClose()\"\r\n >{{closeText}}</mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"getButtonColor\"\r\n [iconPosition]=\"iconPosition\"\r\n [isLoading]=\"isLoading\"\r\n (click)=\"onOk()\"\r\n >{{okText}}</mrx-button>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\r\n }\r\n </div>\r\n }\r\n</div>\r\n", styles: ["::ng-deep .mrx-modal>*{display:flex;align-items:center;justify-content:center;height:100%;width:100%}:host{margin:auto 0;width:100vw}.mrx-modal-content{margin:24px auto;background-color:#fff;border-radius:4px;position:relative;transition:opacity .5s ease-out;width:calc(100vw - 32px);max-height:calc(100vh - 48px);will-change:opacity;display:flex;flex-direction:column;text-align:left;overflow:hidden}::ng-deep .mrx-modal-backdrop.cdk-overlay-backdrop{height:100%;inset:0;overflow-x:hidden;overflow-y:auto;padding:0 16px;position:absolute;text-align:center;z-index:1000;display:block}::ng-deep .mrx-modal-backdrop.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:var(--neutral-bg-modal)}::ng-deep .mrx-modal.fade-anim{transition:opacity .4s ease-in-out;will-change:opacity;opacity:0}::ng-deep .mrx-modal.fade-anim.in{opacity:1}.mrx-modal-body{padding:var(--spacing-6, 24px) var(--spacing-4, 16px) var(--spacing-4, 16px);flex-grow:1;overflow-y:auto;border-bottom:1px solid var(--neutral-bg-divider);margin-bottom:var(--spacing-4, 16px)}.mrx-modal-body .mrx-modal__back{font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);font-size:var(--body-md-font-size)}.mrx-modal-body__message{color:var(--neutral-text-primary);font-family:var(--body-md-font-family);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);font-size:var(--body-md-font-size)}.mrx-modal-content.type-default .mrx-modal-header{background:var(--brand-bg-primary-default);color:var(--neutral-icon-inverse)}.mrx-modal-content.type-default .mrx-modal-header .icon-close,.mrx-modal-content.type-default .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-default .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-default .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-inverse)}.mrx-modal-content.type-info .mrx-modal-header{background:var(--neutral-bg-island-default);color:var(--neutral-text-primary)}.mrx-modal-content.type-info .mrx-modal-header .icon-close,.mrx-modal-content.type-info .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-info .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-info .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-default)}.mrx-modal-content.type-attention .mrx-modal-header{background:var(--system-bg-controls-attention-default);color:var(--neutral-icon-inverse)}.mrx-modal-content.type-attention .mrx-modal-header .icon-close,.mrx-modal-content.type-attention .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-attention .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-attention .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-inverse)}.mrx-modal-content.type-negative .mrx-modal-header{background:var(--system-bg-controls-negative-default);color:var(--neutral-icon-inverse)}.mrx-modal-content.type-negative .mrx-modal-header .icon-close,.mrx-modal-content.type-negative .mrx-modal-header .icon-arrow-expand,.mrx-modal-content.type-negative .mrx-modal-header .icon-arrow-collapse,.mrx-modal-content.type-negative .mrx-modal-header .icon-arrow-left{color:var(--neutral-icon-inverse)}.mrx-modal-content .mrx-modal__back{cursor:pointer;color:var(--brand-text-controls-default)}.mrx-modal-content .mrx-modal__back .mrx-icon{color:var(--brand-text-controls-default)}.mrx-modal-content .mrx-modal__back:hover,.mrx-modal-content .mrx-modal__back:hover .mrx-icon{color:var(--brand-text-controls-hover)}.mrx-modal-footer{align-items:center;display:flex;gap:var(--spacing-4);padding:var(--spacing-6);padding-top:0}.mrx-modal-header{padding:16px;position:relative;border-top-left-radius:4px;border-top-right-radius:4px}.mrx-modal-header .mrx-modal-title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size);text-align:center;text-transform:uppercase}.mrx-modal-header .icon-arrow-expand,.mrx-modal-header .icon-arrow-collapse{position:absolute;top:16px;right:48px;cursor:pointer}.mrx-modal-header .icon-arrow-expand:hover,.mrx-modal-header .icon-arrow-collapse:hover{transform:scale(1.1)}.mrx-modal-header .icon-close{position:absolute;top:16px;right:16px;cursor:pointer}.mrx-modal-header .icon-close:hover{transform:scale(1.1)}.mrx-modal-content.mrx-modal-sm{max-width:440px}.mrx-modal-content.mrx-modal-md{max-width:670px}.mrx-modal-content.mrx-modal-lg{max-width:904px}.mrx-modal-content.mrx-modal-extra-lg{max-width:1024px}\n"] }]
|
|
97
95
|
}], propDecorators: { title: [{
|
|
98
96
|
type: Input
|
|
99
97
|
}], message: [{
|
|
@@ -138,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
138
136
|
}], back: [{
|
|
139
137
|
type: Output
|
|
140
138
|
}] } });
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLHFCQUFxQixFQUVyQixjQUFjLEVBRWQsY0FBYyxFQUVmLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBeUJqRixNQUFNLE9BQU8sY0FBYztJQUNoQixLQUFLLEdBQW1CLEVBQUUsQ0FBQTtJQUMxQixPQUFPLEdBQW1CLEVBQUUsQ0FBQTtJQUM1QixLQUFLLENBQWE7SUFDbEIsTUFBTSxHQUFHLGFBQWEsQ0FBQTtJQUN0QixTQUFTLEdBQUcsVUFBVSxDQUFBO0lBQ3RCLElBQUksR0FBb0IsT0FBTyxDQUFBO0lBQy9CLEtBQUssR0FBb0IsU0FBUyxDQUFBO0lBQ2xDLGFBQWEsR0FBRyxFQUFFLENBQUE7SUFDbEIsVUFBVSxHQUFHLEtBQUssQ0FBQTtJQUNsQixPQUFPLEdBQUcsS0FBSyxDQUFBO0lBQ2YsT0FBTyxHQUFHLElBQUksQ0FBQTtJQUNkLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFDZCxRQUFRLEdBQUcsT0FBTyxDQUFBO0lBQ2xCLFlBQVksR0FBRyxJQUFJLENBQUE7SUFDbkIsWUFBWSxHQUEyQixRQUFR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LEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7NEJBQ25ELFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDOzRCQUNwRCxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQzt5QkFDckQsQ0FBQztxQkFDSDs4QkFHUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRXlCLGFBQWE7c0JBQTNDLFlBQVk7dUJBQUMsZUFBZTtnQkFFbkIsRUFBRTtzQkFBWCxNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBUZW1wbGF0ZVJlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICBNb2RhbEFsZXJ0LFxyXG4gIE1vZGFsQWxpZ25CdXR0b25zRW51bSxcclxuICBNb2RhbEFsaWduQnV0dG9uc1R5cGVzLFxyXG4gIE1vZGFsQ29sb3JFbnVtLFxyXG4gIE1vZGFsQ29sb3JUeXBlcyxcclxuICBNb2RhbFNpemVzRW51bSxcclxuICBNb2RhbFNpemVzVHlwZXNcclxufSBmcm9tICcuL21vZGFsLmVtdW4nO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgQnV0dG9uQ29sb3JzVHlwZXMsIEJ1dHRvbkljb25Qb3NpdGlvblR5cGVzIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5lbnVtJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LW1vZGFsJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21vZGFsLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcignYW5pbWF0ZUV4cGFuZCcsIFtcclxuICAgICAgc3RhdGUoJ29wZW4nLCBzdHlsZSh7XHJcbiAgICAgICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICAgICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICAgICBtYXhXaWR0aDogJ25vbmUnLFxyXG4gICAgICAgIG1pbkhlaWdodDogJzEwMHZoJyxcclxuICAgICAgICBtaW5XaWR0aDogJzEwMHZ3JyxcclxuICAgICAgICBtYXJnaW5Ub3A6ICcwJyxcclxuICAgICAgICBtYXJnaW5Cb3R0b206ICcwJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7IGhlaWdodDogJyonLCB3aWR0aDogJyonIH0pKSxcclxuICAgICAgdHJhbnNpdGlvbignb3BlbiA9PiBjbG9zZWQnLCBbYW5pbWF0ZSgnMC41cyBlYXNlJyldKSxcclxuICAgICAgdHJhbnNpdGlvbignY2xvc2VkID0+IG9wZW4nLCBbYW5pbWF0ZSgnMC41cyBlYXNlJyldKSxcclxuICAgIF0pLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbENvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmcgfCBudWxsID0gJydcclxuICBASW5wdXQoKSBtZXNzYWdlPzogc3RyaW5nIHwgbnVsbCA9ICcnXHJcbiAgQElucHV0KCkgYWxlcnQ/OiBNb2RhbEFsZXJ0XHJcbiAgQElucHV0KCkgb2tUZXh0ID0gJ9Cf0L7QtNGC0LLQtdGA0LTQuNGC0YwnXHJcbiAgQElucHV0KCkgY2xvc2VUZXh0ID0gJ9Ce0YLQvNC10L3QuNGC0YwnXHJcbiAgQElucHV0KCkgc2l6ZTogTW9kYWxTaXplc1R5cGVzID0gJ3NtYWxsJ1xyXG4gIEBJbnB1dCgpIGNvbG9yOiBNb2RhbENvbG9yVHlwZXMgPSAnZGVmYXVsdCdcclxuICBASW5wdXQoKSBjdXN0b21DbGFzc2VzID0gJydcclxuICBASW5wdXQoKSBleHBhbmRhYmxlID0gZmFsc2VcclxuICBASW5wdXQoKSBpc0VtYmVkID0gZmFsc2VcclxuICBASW5wdXQoKSBpc0Nsb3NlID0gdHJ1ZVxyXG4gIEBJbnB1dCgpIGlzQmFjayA9IGZhbHNlXHJcbiAgQElucHV0KCkgYmFja1RleHQgPSAn0J3QsNC30LDQtCdcclxuICBASW5wdXQoKSBlbmFibGVGb290ZXIgPSB0cnVlXHJcbiAgQElucHV0KCkgYWxpZ25CdXR0b25zOiBNb2RhbEFsaWduQnV0dG9uc1R5cGVzID0gJ2NlbnRlcidcclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpY29uUG9zaXRpb246IEJ1dHRvbkljb25Qb3NpdGlvblR5cGVzID0gJ2xlZnQnO1xyXG5cclxuICBAQ29udGVudENoaWxkKCdmb290ZXJDb250ZW50JykgZm9vdGVyQ29udGVudCE6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PjtcclxuXHJcbiAgQE91dHB1dCgpIG9rOiBFdmVudEVtaXR0ZXI8bnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcbiAgQE91dHB1dCgpIGNsb3NlOiBFdmVudEVtaXR0ZXI8bnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcbiAgQE91dHB1dCgpIGJhY2s6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuXHJcbiAgcHVibGljIGdldCBnZXRDb2xvckNsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29sb3IgPyBNb2RhbENvbG9yRW51bVt0aGlzLmNvbG9yXSA6ICcnXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHsgTW9kYWxTaXplc0VudW1bdGhpcy5zaXplXSB9ICR7IHRoaXMuZ2V0Q29sb3JDbGFzcyB9ICR7IHRoaXMuY3VzdG9tQ2xhc3NlcyB9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0QnV0dG9uQ29sb3IoKTogQnV0dG9uQ29sb3JzVHlwZXMge1xyXG4gICAgc3dpdGNoICh0aGlzLmNvbG9yKSB7XHJcbiAgICAgIGNhc2UgJ25lZ2F0aXZlJzpcclxuICAgICAgICByZXR1cm4gJ25lZ2F0aXZlJ1xyXG4gICAgICBjYXNlICdhdHRlbnRpb24nOlxyXG4gICAgICAgIHJldHVybiAnYXR0ZW50aW9uJ1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnZGVmYXVsdCdcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgYWxpZ25CdXR0b25zQ2xhc3MoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBNb2RhbEFsaWduQnV0dG9uc0VudW1bdGhpcy5hbGlnbkJ1dHRvbnNdXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25PaygpOiB2b2lkIHtcclxuICAgIHRoaXMub2suZW1pdCgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DbG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2UuZW1pdCgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25CYWNrKCkge1xyXG4gICAgdGhpcy5iYWNrLmVtaXQoKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRXhwYW5kaW5nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc0VtYmVkID0gIXRoaXMuaXNFbWJlZFxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibXJ4LW1vZGFsLWNvbnRlbnRcIiBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiIFtAYW5pbWF0ZUV4cGFuZF09XCJpc0VtYmVkID8gJ29wZW4nIDogJ2Nsb3NlZCdcIj5cclxuICA8ZGl2IGNsYXNzPVwibXJ4LW1vZGFsLWhlYWRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1tb2RhbC10aXRsZVwiIFtpbm5lckhUTUxdPVwidGl0bGVcIiBbc3R5bGVdPVwie3BhZGRpbmc6IGV4cGFuZGFibGUgPyAnMCA1NnB4JyA6ICcwIDI0cHgnfVwiPjwvZGl2PlxyXG5cclxuICAgIEBpZiAoZXhwYW5kYWJsZSkge1xyXG4gICAgICA8c3BhblxyXG4gICAgICAgIGNsYXNzPVwibXJ4LWljb24gaWNvbi1mb250LTI0XCJcclxuICAgICAgICBbY2xhc3NdPVwiaXNFbWJlZCA/ICdpY29uLWFycm93LWNvbGxhcHNlJyA6ICdpY29uLWFycm93LWV4cGFuZCdcIlxyXG4gICAgICAgIChjbGljayk9XCJvbkV4cGFuZGluZygpXCJcclxuICAgICAgPjwvc3Bhbj5cclxuICAgIH1cclxuXHJcbiAgICBAaWYgKGlzQ2xvc2UpIHtcclxuICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaWNvbiBpY29uLWNsb3NlIGljb24tZm9udC0yNFwiIChjbGljayk9XCJvbkNsb3NlKClcIj48L3NwYW4+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtcngtbW9kYWwtYm9keVwiPlxyXG4gICAgQGlmIChpc0JhY2spIHtcclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC1tb2RhbF9fYmFjayBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG1iLTMgbXQtMlwiIChjbGljayk9XCJvbkJhY2soKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWljb24gaWNvbi1hcnJvdy1sZWZ0IGljb24tZm9udC0xNiBtci0xXCI+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuPnt7IGJhY2tUZXh0IH19PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuXHJcbiAgICBAaWYgKGFsZXJ0ICYmIChhbGVydC50aXRsZSB8fCBhbGVydC5tZXNzYWdlKSkge1xyXG4gICAgICA8bXJ4LWFsZXJ0XHJcbiAgICAgICAgW2N1c3RvbUNsYXNzZXNdPVwiJ21iLTMnXCJcclxuICAgICAgICBbdGl0bGVdPVwiYWxlcnQudGl0bGUgfHwgJydcIlxyXG4gICAgICAgIFttZXNzYWdlXT1cImFsZXJ0Lm1lc3NhZ2UgfHwgJydcIlxyXG4gICAgICAgIFtjb2xvcl09XCJhbGVydC5jb2xvciB8fCAnZGVmYXVsdCdcIlxyXG4gICAgICA+PC9tcngtYWxlcnQ+XHJcbiAgICB9XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1tb2RhbC1ib2R5X19tZXNzYWdlXCIgW2lubmVySFRNTF09XCJtZXNzYWdlXCI+PC9kaXY+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIEBpZiAoZW5hYmxlRm9vdGVyKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LW1vZGFsLWZvb3RlclwiIFtjbGFzc109XCJhbGlnbkJ1dHRvbnNDbGFzc1wiPlxyXG4gICAgICBAaWYgKCFmb290ZXJDb250ZW50KSB7XHJcbiAgICAgICAgPG1yeC1idXR0b25cclxuICAgICAgICAgIFt0eXBlXT1cIidzZWNvbmRhcnknXCJcclxuICAgICAgICAgIFtjb2xvcl09XCJnZXRCdXR0b25Db2xvclwiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICAoY2xpY2spPVwib25DbG9zZSgpXCJcclxuICAgICAgICA+e3tjbG9zZVRleHR9fTwvbXJ4LWJ1dHRvbj5cclxuXHJcbiAgICAgICAgPG1yeC1idXR0b25cclxuICAgICAgICAgIFt0eXBlXT1cIidwcmltYXJ5J1wiXHJcbiAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICBbY29sb3JdPVwiZ2V0QnV0dG9uQ29sb3JcIlxyXG4gICAgICAgICAgW2ljb25Qb3NpdGlvbl09XCJpY29uUG9zaXRpb25cIlxyXG4gICAgICAgICAgW2lzTG9hZGluZ109XCJpc0xvYWRpbmdcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIm9uT2soKVwiXHJcbiAgICAgICAgPnt7b2tUZXh0fX08L21yeC1idXR0b24+XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb290ZXJDb250ZW50XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gIH1cclxuPC9kaXY+XHJcbiJdfQ==
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVMLHFCQUFxQixFQUVyQixjQUFjLEVBRWQsY0FBYyxFQUVmLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBd0JqRixNQUFNLE9BQU8sY0FBYztJQUNoQixLQUFLLEdBQW1CLEVBQUUsQ0FBQTtJQUMxQixPQUFPLEdBQW1CLEVBQUUsQ0FBQTtJQUM1QixLQUFLLENBQWE7SUFDbEIsTUFBTSxHQUFHLGFBQWEsQ0FBQTtJQUN0QixTQUFTLEdBQUcsVUFBVSxDQUFBO0lBQ3RCLElBQUksR0FBb0IsT0FBTyxDQUFBO0lBQy9CLEtBQUssR0FBb0IsU0FBUyxDQUFBO0lBQ2xDLGFBQWEsR0FBRyxFQUFFLENBQUE7SUFDbEIsVUFBVSxHQUFHLEtBQUssQ0FBQTtJQUNsQixPQUFPLEdBQUcsS0FBSyxDQUFBO0lBQ2YsT0FBTyxHQUFHLElBQUksQ0FBQTtJQUNkLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFDZCxRQUFRLEdBQUcsT0FBTyxDQUFBO0lBQ2xCLFlBQVksR0FBRyxJQUFJLENBQUE7SUFDbkIsWUFBWSxHQUEyQixRQUFRLENBQUE7SUFDL0MsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixZQUFZLEdBQTRCLE1BQU0sQ0FBQztJQUV6QixhQUFhLENBQTRCO0lBRTlELEVBQUUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUNsRCxLQUFLLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7SUFDckQsSUFBSSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO0lBRTlELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUNyRCxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sR0FBSSxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBRSxJQUFLLElBQUksQ0FBQyxhQUFjLElBQUssSUFBSSxDQUFDLGFBQWMsRUFBRSxDQUFDO0lBQzFGLENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsUUFBUSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkIsS0FBSyxVQUFVO2dCQUNiLE9BQU8sVUFBVSxDQUFBO1lBQ25CLEtBQUssV0FBVztnQkFDZCxPQUFPLFdBQVcsQ0FBQTtZQUNwQjtnQkFDRSxPQUFPLFNBQVMsQ0FBQTtRQUNwQixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQ2pELENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNoQixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ2xCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFBO0lBQzlCLENBQUM7d0dBOURVLGNBQWM7NEZBQWQsY0FBYyxzbEJDM0MzQiw4akVBOERBLCtuS0RuQ2M7WUFDVixPQUFPLENBQUMsZUFBZSxFQUFFO2dCQUN2QixLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQztvQkFDbEIsTUFBTSxFQUFFLE9BQU87b0JBQ2YsS0FBSyxFQUFFLE1BQU07b0JBQ2IsUUFBUSxFQUFFLE1BQU07b0JBQ2hCLFNBQVMsRUFBRSxPQUFPO29CQUNsQixTQUFTLEVBQUUsR0FBRztvQkFDZCxZQUFZLEVBQUUsR0FBRztpQkFDbEIsQ0FBQyxDQUFDO2dCQUNILEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDbkQsVUFBVSxDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BELFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2FBQ3JELENBQUM7U0FDSDs7NEZBRVUsY0FBYztrQkFyQjFCLFNBQVM7K0JBQ0UsV0FBVyxtQkFHSix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DO3dCQUNWLE9BQU8sQ0FBQyxlQUFlLEVBQUU7NEJBQ3ZCLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDO2dDQUNsQixNQUFNLEVBQUUsT0FBTztnQ0FDZixLQUFLLEVBQUUsTUFBTTtnQ0FDYixRQUFRLEVBQUUsTUFBTTtnQ0FDaEIsU0FBUyxFQUFFLE9BQU87Z0NBQ2xCLFNBQVMsRUFBRSxHQUFHO2dDQUNkLFlBQVksRUFBRSxHQUFHOzZCQUNsQixDQUFDLENBQUM7NEJBQ0gsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDOzRCQUNuRCxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQzs0QkFDcEQsVUFBVSxDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7eUJBQ3JELENBQUM7cUJBQ0g7OEJBR1EsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUV5QixhQUFhO3NCQUEzQyxZQUFZO3VCQUFDLGVBQWU7Z0JBRW5CLEVBQUU7c0JBQVgsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csSUFBSTtzQkFBYixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVGVtcGxhdGVSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7XHJcbiAgTW9kYWxBbGVydCxcclxuICBNb2RhbEFsaWduQnV0dG9uc0VudW0sXHJcbiAgTW9kYWxBbGlnbkJ1dHRvbnNUeXBlcyxcclxuICBNb2RhbENvbG9yRW51bSxcclxuICBNb2RhbENvbG9yVHlwZXMsXHJcbiAgTW9kYWxTaXplc0VudW0sXHJcbiAgTW9kYWxTaXplc1R5cGVzXHJcbn0gZnJvbSAnLi9tb2RhbC5lbXVuJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IEJ1dHRvbkNvbG9yc1R5cGVzLCBCdXR0b25JY29uUG9zaXRpb25UeXBlcyB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uZW51bSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC1tb2RhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC5jb21wb25lbnQubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ2FuaW1hdGVFeHBhbmQnLCBbXHJcbiAgICAgIHN0YXRlKCdvcGVuJywgc3R5bGUoe1xyXG4gICAgICAgIGhlaWdodDogJzEwMHZoJyxcclxuICAgICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICAgIG1heFdpZHRoOiAnbm9uZScsXHJcbiAgICAgICAgbWluSGVpZ2h0OiAnMTAwdmgnLFxyXG4gICAgICAgIG1hcmdpblRvcDogJzAnLFxyXG4gICAgICAgIG1hcmdpbkJvdHRvbTogJzAnXHJcbiAgICAgIH0pKSxcclxuICAgICAgc3RhdGUoJ2Nsb3NlZCcsIHN0eWxlKHsgaGVpZ2h0OiAnKicsIHdpZHRoOiAnKicgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlZCcsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgXSksXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSB0aXRsZT86IHN0cmluZyB8IG51bGwgPSAnJ1xyXG4gIEBJbnB1dCgpIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsID0gJydcclxuICBASW5wdXQoKSBhbGVydD86IE1vZGFsQWxlcnRcclxuICBASW5wdXQoKSBva1RleHQgPSAn0J/QvtC00YLQstC10YDQtNC40YLRjCdcclxuICBASW5wdXQoKSBjbG9zZVRleHQgPSAn0J7RgtC80LXQvdC40YLRjCdcclxuICBASW5wdXQoKSBzaXplOiBNb2RhbFNpemVzVHlwZXMgPSAnc21hbGwnXHJcbiAgQElucHV0KCkgY29sb3I6IE1vZGFsQ29sb3JUeXBlcyA9ICdkZWZhdWx0J1xyXG4gIEBJbnB1dCgpIGN1c3RvbUNsYXNzZXMgPSAnJ1xyXG4gIEBJbnB1dCgpIGV4cGFuZGFibGUgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIGlzRW1iZWQgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIGlzQ2xvc2UgPSB0cnVlXHJcbiAgQElucHV0KCkgaXNCYWNrID0gZmFsc2VcclxuICBASW5wdXQoKSBiYWNrVGV4dCA9ICfQndCw0LfQsNC0J1xyXG4gIEBJbnB1dCgpIGVuYWJsZUZvb3RlciA9IHRydWVcclxuICBASW5wdXQoKSBhbGlnbkJ1dHRvbnM6IE1vZGFsQWxpZ25CdXR0b25zVHlwZXMgPSAnY2VudGVyJ1xyXG4gIEBJbnB1dCgpIGlzTG9hZGluZyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGljb25Qb3NpdGlvbjogQnV0dG9uSWNvblBvc2l0aW9uVHlwZXMgPSAnbGVmdCc7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoJ2Zvb3RlckNvbnRlbnQnKSBmb290ZXJDb250ZW50ITogVGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+O1xyXG5cclxuICBAT3V0cHV0KCkgb2s6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgY2xvc2U6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgYmFjazogRXZlbnRFbWl0dGVyPG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxudWxsPigpO1xyXG5cclxuICBwdWJsaWMgZ2V0IGdldENvbG9yQ2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb2xvciA/IE1vZGFsQ29sb3JFbnVtW3RoaXMuY29sb3JdIDogJydcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAkeyBNb2RhbFNpemVzRW51bVt0aGlzLnNpemVdIH0gJHsgdGhpcy5nZXRDb2xvckNsYXNzIH0gJHsgdGhpcy5jdXN0b21DbGFzc2VzIH1gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRCdXR0b25Db2xvcigpOiBCdXR0b25Db2xvcnNUeXBlcyB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuY29sb3IpIHtcclxuICAgICAgY2FzZSAnbmVnYXRpdmUnOlxyXG4gICAgICAgIHJldHVybiAnbmVnYXRpdmUnXHJcbiAgICAgIGNhc2UgJ2F0dGVudGlvbic6XHJcbiAgICAgICAgcmV0dXJuICdhdHRlbnRpb24nXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICdkZWZhdWx0J1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBhbGlnbkJ1dHRvbnNDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE1vZGFsQWxpZ25CdXR0b25zRW51bVt0aGlzLmFsaWduQnV0dG9uc11cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk9rKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vay5lbWl0KClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNsb3NlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZS5lbWl0KClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkJhY2soKSB7XHJcbiAgICB0aGlzLmJhY2suZW1pdCgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25FeHBhbmRpbmcoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRW1iZWQgPSAhdGhpcy5pc0VtYmVkXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtbW9kYWwtY29udGVudFwiIFtjbGFzc109XCJnZXRDbGFzc2VzXCIgW0BhbmltYXRlRXhwYW5kXT1cImlzRW1iZWQgPyAnb3BlbicgOiAnY2xvc2VkJ1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJtcngtbW9kYWwtaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LW1vZGFsLXRpdGxlXCIgW2lubmVySFRNTF09XCJ0aXRsZVwiIFtzdHlsZV09XCJ7cGFkZGluZzogZXhwYW5kYWJsZSA/ICcwIDU2cHgnIDogJzAgMjRweCd9XCI+PC9kaXY+XHJcblxyXG4gICAgQGlmIChleHBhbmRhYmxlKSB7XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBpY29uLWZvbnQtMjRcIlxyXG4gICAgICAgIFtjbGFzc109XCJpc0VtYmVkID8gJ2ljb24tYXJyb3ctY29sbGFwc2UnIDogJ2ljb24tYXJyb3ctZXhwYW5kJ1wiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uRXhwYW5kaW5nKClcIlxyXG4gICAgICA+PC9zcGFuPlxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAoaXNDbG9zZSkge1xyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tY2xvc2UgaWNvbi1mb250LTI0XCIgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPjwvc3Bhbj5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1tb2RhbC1ib2R5XCI+XHJcbiAgICBAaWYgKGlzQmFjaykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LW1vZGFsX19iYWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbWItMyBtdC0yXCIgKGNsaWNrKT1cIm9uQmFjaygpXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaWNvbiBpY29uLWFycm93LWxlZnQgaWNvbi1mb250LTE2IG1yLTFcIj48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4+e3sgYmFja1RleHQgfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAoYWxlcnQgJiYgKGFsZXJ0LnRpdGxlIHx8IGFsZXJ0Lm1lc3NhZ2UpKSB7XHJcbiAgICAgIDxtcngtYWxlcnRcclxuICAgICAgICBbY3VzdG9tQ2xhc3Nlc109XCInbWItMydcIlxyXG4gICAgICAgIFt0aXRsZV09XCJhbGVydC50aXRsZSB8fCAnJ1wiXHJcbiAgICAgICAgW21lc3NhZ2VdPVwiYWxlcnQubWVzc2FnZSB8fCAnJ1wiXHJcbiAgICAgICAgW2NvbG9yXT1cImFsZXJ0LmNvbG9yIHx8ICdkZWZhdWx0J1wiXHJcbiAgICAgID48L21yeC1hbGVydD5cclxuICAgIH1cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LW1vZGFsLWJvZHlfX21lc3NhZ2VcIiBbaW5uZXJIVE1MXT1cIm1lc3NhZ2VcIj48L2Rpdj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuXHJcbiAgQGlmIChlbmFibGVGb290ZXIpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJtcngtbW9kYWwtZm9vdGVyXCIgW2NsYXNzXT1cImFsaWduQnV0dG9uc0NsYXNzXCI+XHJcbiAgICAgIEBpZiAoIWZvb3RlckNvbnRlbnQpIHtcclxuICAgICAgICA8bXJ4LWJ1dHRvblxyXG4gICAgICAgICAgW3R5cGVdPVwiJ3NlY29uZGFyeSdcIlxyXG4gICAgICAgICAgW2NvbG9yXT1cImdldEJ1dHRvbkNvbG9yXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlKClcIlxyXG4gICAgICAgID57e2Nsb3NlVGV4dH19PC9tcngtYnV0dG9uPlxyXG5cclxuICAgICAgICA8bXJ4LWJ1dHRvblxyXG4gICAgICAgICAgW3R5cGVdPVwiJ3ByaW1hcnknXCJcclxuICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgIFtjb2xvcl09XCJnZXRCdXR0b25Db2xvclwiXHJcbiAgICAgICAgICBbaWNvblBvc2l0aW9uXT1cImljb25Qb3NpdGlvblwiXHJcbiAgICAgICAgICBbaXNMb2FkaW5nXT1cImlzTG9hZGluZ1wiXHJcbiAgICAgICAgICAoY2xpY2spPVwib25PaygpXCJcclxuICAgICAgICA+e3tva1RleHR9fTwvbXJ4LWJ1dHRvbj5cclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImZvb3RlckNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
|