myrta-ui 17.1.4 → 17.1.5
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/editor/editor.component.mjs +50 -3
- package/esm2022/lib/services/save-store/auto-save.store.mjs +3 -3
- package/fesm2022/myrta-ui.mjs +51 -4
- package/fesm2022/myrta-ui.mjs.map +1 -1
- package/lib/components/form/editor/editor.component.d.ts +4 -0
- package/package.json +1 -1
|
@@ -12,6 +12,7 @@ import 'jodit/esm/plugins/line-height/line-height.js';
|
|
|
12
12
|
import 'jodit/esm/plugins/indent/indent.js';
|
|
13
13
|
import 'jodit/esm/plugins/video/video.js';
|
|
14
14
|
import 'jodit/esm/plugins/search/search.js';
|
|
15
|
+
import 'jodit/esm/plugins/resizer/resizer.js';
|
|
15
16
|
import { InputEditorModeEnum } from './editor.enum';
|
|
16
17
|
import * as i0 from "@angular/core";
|
|
17
18
|
import * as i1 from "@angular/common";
|
|
@@ -77,8 +78,11 @@ export class EditorComponent {
|
|
|
77
78
|
},
|
|
78
79
|
blur: () => {
|
|
79
80
|
this.changeFocused(false);
|
|
80
|
-
}
|
|
81
|
-
|
|
81
|
+
},
|
|
82
|
+
paste: (event) => {
|
|
83
|
+
this.handlePaste(event);
|
|
84
|
+
},
|
|
85
|
+
},
|
|
82
86
|
// uploader: {
|
|
83
87
|
// insertImageAsBase64URI: true
|
|
84
88
|
// },
|
|
@@ -184,6 +188,49 @@ export class EditorComponent {
|
|
|
184
188
|
this.isFocused = value;
|
|
185
189
|
this.changeDetection.detectChanges();
|
|
186
190
|
}
|
|
191
|
+
handlePaste(event) {
|
|
192
|
+
if (!event.clipboardData || this.hasImageButton()) {
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
const { clipboardData } = event;
|
|
196
|
+
const htmlData = clipboardData.getData('text/html');
|
|
197
|
+
const hasHtmlImage = htmlData?.includes('<img');
|
|
198
|
+
const hasImage = Array.from(clipboardData.items).some(item => item.type.startsWith('image/'));
|
|
199
|
+
if (!hasImage && !hasHtmlImage) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
event.preventDefault();
|
|
203
|
+
const sanitizedHtml = this.removeImagesFromHtml(htmlData);
|
|
204
|
+
const textData = clipboardData.getData('text/plain');
|
|
205
|
+
const contentToInsert = sanitizedHtml || textData;
|
|
206
|
+
if (contentToInsert) {
|
|
207
|
+
this.editorElementRef.jodit.s.insertHTML(contentToInsert);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
removeImagesFromHtml(html) {
|
|
211
|
+
if (!html) {
|
|
212
|
+
return null;
|
|
213
|
+
}
|
|
214
|
+
const div = document.createElement('div');
|
|
215
|
+
div.innerHTML = html;
|
|
216
|
+
div.querySelectorAll('img').forEach(img => img.remove());
|
|
217
|
+
return div.innerHTML;
|
|
218
|
+
}
|
|
219
|
+
hasImageButton() {
|
|
220
|
+
const buttons = this.defaultConfig?.buttons;
|
|
221
|
+
if (!buttons) {
|
|
222
|
+
return false;
|
|
223
|
+
}
|
|
224
|
+
if (typeof buttons === 'string') {
|
|
225
|
+
return buttons.includes('image');
|
|
226
|
+
}
|
|
227
|
+
if (Array.isArray(buttons)) {
|
|
228
|
+
return buttons.some(item => typeof item === 'string'
|
|
229
|
+
? item === 'image'
|
|
230
|
+
: item?.name === 'image');
|
|
231
|
+
}
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
187
234
|
onChange = (value) => {
|
|
188
235
|
};
|
|
189
236
|
onTouched = () => {
|
|
@@ -278,4 +325,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
278
325
|
}], modelChange: [{
|
|
279
326
|
type: Output
|
|
280
327
|
}] } });
|
|
281
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2VkaXRvci9lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZWRpdG9yL2VkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUMsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsRUFBRSxJQUFJLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRzlCLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXZDLE9BQU8sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyw4Q0FBOEMsQ0FBQztBQUN0RCxPQUFPLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sa0NBQWtDLENBQUM7QUFDMUMsT0FBTyxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQTBCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQUU1RSxL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STt5QkFDWjtxQkFDRjtzRkFpRWUsTUFBTTtzQkFBckIsS0FBSztnQkFFVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsU0FBUztzQkFBeEIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLE1BQU07c0JBQXJCLEtBQUs7Z0JBQ1Usa0JBQWtCO3NCQUFqQyxLQUFLO2dCQUNVLE1BQU07c0JBQXJCLEtBQUs7Z0JBRVUsb0JBQW9CO3NCQUFuQyxLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRXlCLGdCQUFnQjtzQkFBOUMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBRVosT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBjaGFuZ2VJY29uc0Z1bmN0aW9uIH0gZnJvbSAnLi9tb2R1bGVzL2NoYW5nZS1pY29uLW1vZHVsZSc7XHJcbmltcG9ydCB7IGRlZmF1bHRUb29sYmFyIH0gZnJvbSAnLi9jb25maWcnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IHBvcHVwVG9vbGJhcnMgfSBmcm9tICcuL2NvbmZpZy9wb3B1cHMtdG9vbGJhcic7XHJcbmltcG9ydCB7IFRvb2xiYXJDb25maWcgfSBmcm9tICcuL21vZGVscy90b29sYmFyLm1vZGVsJztcclxuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvc2F2ZS1zdG9yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBkZWZhdWx0SW5saW5lU3R5bGVDb25zdGFudCB9IGZyb20gJy4vY29uZmlnL2RlZmF1bHQtaW5saW5lLXN0eWxlJztcclxuXHJcbmltcG9ydCB7IEpvZGl0IH0gZnJvbSAnam9kaXQnO1xyXG5pbXBvcnQgeyBKb2RpdENvbmZpZyB9IGZyb20gJ25neC1qb2RpdCc7XHJcblxyXG5pbXBvcnQgcnUgZnJvbSAnam9kaXQvZXNtL2xhbmdzL3J1LmpzJztcclxuXHJcbmltcG9ydCAnam9kaXQvZXNtL3BsdWdpbnMvc291cmNlL3NvdXJjZS5qcyc7XHJcbmltcG9ydCAnam9kaXQvZXNtL3BsdWdpbnMvbGluZS1oZWlnaHQvbGluZS1oZWlnaHQuanMnO1xyXG5pbXBvcnQgJ2pvZGl0L2VzbS9wbHVnaW5zL2luZGVudC9pbmRlbnQuanMnO1xyXG5pbXBvcnQgJ2pvZGl0L2VzbS9wbHVnaW5zL3ZpZGVvL3ZpZGVvLmpzJztcclxuaW1wb3J0ICdqb2RpdC9lc20vcGx1Z2lucy9zZWFyY2gvc2VhcmNoLmpzJztcclxuaW1wb3J0IHsgSW5wdXRFZGl0b3JNb2RlRW51bSwgSW5wdXRFZGl0b3JWYWx1ZVdpdGhJZCB9IGZyb20gJy4vZWRpdG9yLmVudW0nO1xyXG5cclxuSm9kaXQubGFuZy5kZSA9IHJ1O1xyXG5cclxuLy8gZXhwb3J0IGludGVyZmFjZSBDdXN0b21Kb2RpdENvbmZpZyBleHRlbmRzIEpvZGl0Q29uZmlnIHtcclxuLy8gICBnZXRJY29uOiAoYTogYW55KSA9PiB2b2lkLFxyXG4vLyAgIGxpbms6IGFueSxcclxuLy8gICBjbGVhbkhUTUw6IGFueSxcclxuLy8gfVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtZWRpdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lZGl0b3IuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzIHtcclxuICBwcml2YXRlIF9pc0luaXQgPSBmYWxzZTtcclxuICBwdWJsaWMgdmFsdWUgPSAnJztcclxuICBwdWJsaWMgdmFsdWVMZW5ndGggPSAwO1xyXG4gIHB1YmxpYyBpc0ZvY3VzZWQ6IGJvb2xlYW4gfCBudWxsID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBvcHRpb25zID0ge1xyXG4gICAgbGFuZ3VhZ2U6ICdydSdcclxuICB9O1xyXG5cclxuICBwdWJsaWMgZGVmYXVsdENvbmZpZzogYW55ID0ge1xyXG4gICAgLi4uZGVmYXVsdFRvb2xiYXIsXHJcbiAgICBwb3B1cDogcG9wdXBUb29sYmFycyxcclxuICAgIGRlZmF1bHRNb2RlOiBJbnB1dEVkaXRvck1vZGVFbnVtLk1PREVfV1lTSVdZRyxcclxuICAgIGxhbmd1YWdlOiAncnUnLFxyXG4gICAgc2hvd0NoYXJzQ291bnRlcjogZmFsc2UsXHJcbiAgICBzaG93V29yZHNDb3VudGVyOiBmYWxzZSxcclxuICAgIHNob3dYUGF0aEluU3RhdHVzYmFyOiBmYWxzZSxcclxuICAgIGxpbms6IHtcclxuICAgICAgbm9Gb2xsb3dDaGVja2JveDogZmFsc2VcclxuICAgIH0sXHJcbiAgICBtaW5IZWlnaHQ6IDExMCxcclxuICAgIGlmcmFtZTogZmFsc2UsXHJcbiAgICBpbWFnZURlZmF1bHRXaWR0aDogMjAwLFxyXG4gICAgZWRpdEhUTUxEb2N1bWVudE1vZGU6IHRydWUsXHJcbiAgICBjbGVhbkhUTUw6IHtcclxuICAgICAgZmlsbEVtcHR5UGFyYWdyYXBoOiB0cnVlXHJcbiAgICB9LFxyXG4gICAgcGxhY2Vob2xkZXI6ICcnLFxyXG4gICAgdG9vbGJhckFkYXB0aXZlOiBmYWxzZSxcclxuICAgIHRvb2xiYXJJbmxpbmU6IHRydWUsXHJcbiAgICB0b29sYmFySW5saW5lRm9yU2VsZWN0aW9uOiBmYWxzZSxcclxuICAgIHRvb2xiYXJJbmxpbmVEaXNhYmxlRm9yOiBbXSxcclxuICAgIHRvb2xiYXJJbmxpbmVEaXNhYmxlZEJ1dHRvbnM6IFsnc291cmNlJ10sXHJcbiAgICBkaXNhYmxlZDogZmFsc2UsXHJcbiAgICByZWFkb25seTogZmFsc2UsXHJcbiAgICBhc2tCZWZvcmVQYXN0ZUhUTUw6IGZhbHNlLFxyXG4gICAgZGVmYXVsdEFjdGlvbk9uUGFzdGU6ICdpbnNlcnRfb25seV90ZXh0JyxcclxuICAgIGFza0JlZm9yZVBhc3RlRnJvbVdvcmQ6IGZhbHNlLFxyXG4gICAgaGlkZVBvd2VyZWRCeUpvZGl0OiB0cnVlLFxyXG4gICAgYmVhdXRpZnlIVE1MOiB0cnVlLFxyXG4gICAgYWRkTmV3TGluZTogdHJ1ZSxcclxuICAgIGNyZWF0ZUF0dHJpYnV0ZXM6IHt9LFxyXG4gICAgZ2V0SWNvbjogKGljb25OYW1lOiBzdHJpbmcpID0+IHtcclxuICAgICAgcmV0dXJuIGNoYW5nZUljb25zRnVuY3Rpb24oaWNvbk5hbWUpO1xyXG4gICAgfSxcclxuICAgIGV2ZW50czoge1xyXG4gICAgICBmb2N1czogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRm9jdXNlZCh0cnVlKTtcclxuICAgICAgfSxcclxuICAgICAgYmx1cjogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRm9jdXNlZChmYWxzZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIHVwbG9hZGVyOiB7XHJcbiAgICAvLyAgIGluc2VydEltYWdlQXNCYXNlNjRVUkk6IHRydWVcclxuICAgIC8vIH0sXHJcbiAgICAvLyBsaW1pdENoYXJzOiAxMCxcclxuICAgIC8vIGxpbWl0SFRNTDogMTcwLFxyXG4gIH07XHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgdG9vbGJhciE6IFRvb2xiYXJDb25maWc7XHJcbiAgQElucHV0KCkgcHVibGljIG1heExlbmd0aCA9IDA7XHJcbiAgQElucHV0KCkgcHVibGljIG1pbkhlaWdodCA9IDExMDtcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlciA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpZnJhbWUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZGVmYXVsdElubGluZVN0eWxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGNvbmZpZzogYW55ID0gdGhpcy5kZWZhdWx0Q29uZmlnO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZWRpdEhUTUxEb2N1bWVudE1vZGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZGVmYXVsdE1vZGU6IElucHV0RWRpdG9yTW9kZUVudW0gPSBJbnB1dEVkaXRvck1vZGVFbnVtLk1PREVfV1lTSVdZRztcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2VkaXRvckVsZW1lbnRSZWYnKSBlZGl0b3JFbGVtZW50UmVmITogYW55O1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0RWRpdG9yVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dEVkaXRvclZhbHVlV2l0aElkPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzWyd0b29sYmFyJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgLi4uY2hhbmdlc1sndG9vbGJhciddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snbWF4TGVuZ3RoJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgbGltaXRDaGFyczogY2hhbmdlc1snbWF4TGVuZ3RoJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydwbGFjZWhvbGRlciddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHsuLi50aGlzLmRlZmF1bHRDb25maWcsIHBsYWNlaG9sZGVyOiBjaGFuZ2VzWydwbGFjZWhvbGRlciddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snZGlzYWJsZWQnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCBkaXNhYmxlZDogY2hhbmdlc1snZGlzYWJsZWQnXS5jdXJyZW50VmFsdWV9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ3JlYWRvbmx5J10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgcmVhZG9ubHk6IGNoYW5nZXNbJ3JlYWRvbmx5J10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydpZnJhbWUnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCBpZnJhbWU6IGNoYW5nZXNbJ2lmcmFtZSddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snZGVmYXVsdElubGluZVN0eWxlJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0ge1xyXG4gICAgICAgIC4uLnRoaXMuZGVmYXVsdENvbmZpZyxcclxuICAgICAgICBjcmVhdGVBdHRyaWJ1dGVzOiB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLmNyZWF0ZUF0dHJpYnV0ZXMsIC4uLmRlZmF1bHRJbmxpbmVTdHlsZUNvbnN0YW50fVxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ2VkaXRIVE1MRG9jdW1lbnRNb2RlJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0ge1xyXG4gICAgICAgIC4uLnRoaXMuZGVmYXVsdENvbmZpZyxcclxuICAgICAgICBlZGl0SFRNTERvY3VtZW50TW9kZTogY2hhbmdlc1snZWRpdEhUTUxEb2N1bWVudE1vZGUnXS5jdXJyZW50VmFsdWVcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydhc2tCZWZvcmVQYXN0ZUhUTUwnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCBhc2tCZWZvcmVQYXN0ZUhUTUw6IGNoYW5nZXNbJ2Fza0JlZm9yZVBhc3RlSFRNTCddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snYXNrQmVmb3JlUGFzdGVGcm9tV29yZCddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHtcclxuICAgICAgICAuLi50aGlzLmRlZmF1bHRDb25maWcsXHJcbiAgICAgICAgYXNrQmVmb3JlUGFzdGVGcm9tV29yZDogY2hhbmdlc1snYXNrQmVmb3JlUGFzdGVGcm9tV29yZCddLmN1cnJlbnRWYWx1ZVxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ2RlZmF1bHRNb2RlJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgZGVmYXVsdE1vZGU6IGNoYW5nZXNbJ2RlZmF1bHRNb2RlJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydkZWZhdWx0QWN0aW9uT25QYXN0ZSddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHtcclxuICAgICAgICAuLi50aGlzLmRlZmF1bHRDb25maWcsXHJcbiAgICAgICAgZGVmYXVsdEFjdGlvbk9uUGFzdGU6IGNoYW5nZXNbJ2RlZmF1bHRBY3Rpb25PblBhc3RlJ10uY3VycmVudFZhbHVlXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snbWluSGVpZ2h0J10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgbWluSGVpZ2h0OiBjaGFuZ2VzWydtaW5IZWlnaHQnXS5jdXJyZW50VmFsdWV9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ2NvbmZpZyddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHsuLi50aGlzLmRlZmF1bHRDb25maWcsIC4uLmNoYW5nZXNbJ2NvbmZpZyddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNJbnZhbGlkTWVzc2FnZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMuaW52YWxpZE1lc3NhZ2UgfHwgISF0aGlzLmludmFsaWRNZXNzYWdlPy5sZW5ndGg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID8gJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDogdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJyc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmN1c3RvbUNsYXNzZXN9ICR7dGhpcy5jaGVja1ZhbGlkQ2xhc3Nlc31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluc2VydFBvc2l0aW9uVGV4dCh0ZXh0OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZWRpdG9yRWxlbWVudFJlZi5qb2RpdC5zLmluc2VydEhUTUwodGV4dCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2hhbmdlRm9jdXNlZCh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB2YWx1ZTtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5fc2FuaXRpemVWYWx1ZShvdXRzaWRlVmFsdWUpO1xyXG4gICAgaWYgKG91dHNpZGVWYWx1ZSAhPT0gbnVsbCkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLl9pc0luaXQgPSB0cnVlO1xyXG4gICAgICB9LCAxMDApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKGluc2lkZVZhbHVlOiBzdHJpbmcpIHtcclxuXHJcbiAgICBpZiAodGhpcy5tYXhMZW5ndGgpIHtcclxuICAgICAgdGhpcy5fY2FsY3VsYXRlQ2hhcnRzQ291bnQoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9pc0luaXQpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlO1xyXG4gICAgICB0aGlzLmNoYW5nZWQuZW1pdChpbnNpZGVWYWx1ZSk7XHJcbiAgICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh7dmFsdWU6IGluc2lkZVZhbHVlLCBpZDogdGhpcy51dWlkfSk7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UoaW5zaWRlVmFsdWUpO1xyXG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2FuaXRpemVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB2YWx1ZSA/IHZhbHVlLnJlcGxhY2UoLzxzY3JpcHRcXGJbXjxdKig/Oig/ITxcXC9zY3JpcHQ+KTxbXjxdKikqPFxcL3NjcmlwdD4vZ2ksICcnKSA6IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfY2FsY3VsYXRlQ2hhcnRzQ291bnQoKSB7XHJcbiAgICB0aGlzLnZhbHVlTGVuZ3RoID0gdGhpcy5lZGl0b3JFbGVtZW50UmVmLmVkaXRvci50ZXh0LnJlcGxhY2UoL1xccysvZywgJycpLmxlbmd0aDtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwibXJ4LWVkaXRvclwiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC1mb2N1c2VkXT1cImlzRm9jdXNlZFwiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC1lcnJvcl09XCIhaXNWYWxpZCB8fCBpbnZhbGlkXCJcclxuICBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiXHJcbj5cclxuICA8bmd4LWpvZGl0XHJcbiAgICAjZWRpdG9yRWxlbWVudFJlZlxyXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICBbb3B0aW9uc109XCJkZWZhdWx0Q29uZmlnXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcclxuICA+PC9uZ3gtam9kaXQ+XHJcblxyXG4gIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgKm5nSWY9XCIoIWlzVmFsaWQgfHwgaW52YWxpZCkgJiYgaXNJbnZhbGlkTWVzc2FnZVwiXHJcbiAgICBbaW52YWxpZE1lc3NhZ2VdPVwiaW52YWxpZE1lc3NhZ2VcIlxyXG4gID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG5cclxuICA8bXJ4LWNoYXJzLWxlZnQgW21heGxlbmd0aF09XCJtYXhMZW5ndGhcIiBbdmFsdWVMZW5ndGhdPVwidmFsdWVMZW5ndGhcIj48L21yeC1jaGFycy1sZWZ0PlxyXG5cclxuICA8bXJ4LXNhdmUtc3RhdGUgdHlwZT1cImVkaXRvclwiIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuIl19
|
|
328
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2VkaXRvci9lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZWRpdG9yL2VkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUMsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsRUFBRSxJQUFJLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRzlCLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXZDLE9BQU8sb0NBQW9DLENBQUM7QUFDNUMsT0FBTyw4Q0FBOEMsQ0FBQztBQUN0RCxPQUFPLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sa0NBQWtDLENBQUM7QUFDMUMsT0FBTyxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLHNDQUFzQyxDQUFDO0FBQzlDLE9BQU8sRUFBRSxtQkFBbUIsRUFBMEIsTUFBTSxl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S0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUVVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUVVLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxZQUFZO3NCQUEzQixLQUFLO2dCQUV5QixnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCO2dCQUVaLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgY2hhbmdlSWNvbnNGdW5jdGlvbiB9IGZyb20gJy4vbW9kdWxlcy9jaGFuZ2UtaWNvbi1tb2R1bGUnO1xyXG5pbXBvcnQgeyBkZWZhdWx0VG9vbGJhciB9IGZyb20gJy4vY29uZmlnJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBwb3B1cFRvb2xiYXJzIH0gZnJvbSAnLi9jb25maWcvcG9wdXBzLXRvb2xiYXInO1xyXG5pbXBvcnQgeyBUb29sYmFyQ29uZmlnIH0gZnJvbSAnLi9tb2RlbHMvdG9vbGJhci5tb2RlbCc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3NhdmUtc3RvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgZGVmYXVsdElubGluZVN0eWxlQ29uc3RhbnQgfSBmcm9tICcuL2NvbmZpZy9kZWZhdWx0LWlubGluZS1zdHlsZSc7XHJcblxyXG5pbXBvcnQgeyBKb2RpdCB9IGZyb20gJ2pvZGl0JztcclxuaW1wb3J0IHsgSm9kaXRDb25maWcgfSBmcm9tICduZ3gtam9kaXQnO1xyXG5cclxuaW1wb3J0IHJ1IGZyb20gJ2pvZGl0L2VzbS9sYW5ncy9ydS5qcyc7XHJcblxyXG5pbXBvcnQgJ2pvZGl0L2VzbS9wbHVnaW5zL3NvdXJjZS9zb3VyY2UuanMnO1xyXG5pbXBvcnQgJ2pvZGl0L2VzbS9wbHVnaW5zL2xpbmUtaGVpZ2h0L2xpbmUtaGVpZ2h0LmpzJztcclxuaW1wb3J0ICdqb2RpdC9lc20vcGx1Z2lucy9pbmRlbnQvaW5kZW50LmpzJztcclxuaW1wb3J0ICdqb2RpdC9lc20vcGx1Z2lucy92aWRlby92aWRlby5qcyc7XHJcbmltcG9ydCAnam9kaXQvZXNtL3BsdWdpbnMvc2VhcmNoL3NlYXJjaC5qcyc7XHJcbmltcG9ydCAnam9kaXQvZXNtL3BsdWdpbnMvcmVzaXplci9yZXNpemVyLmpzJztcclxuaW1wb3J0IHsgSW5wdXRFZGl0b3JNb2RlRW51bSwgSW5wdXRFZGl0b3JWYWx1ZVdpdGhJZCB9IGZyb20gJy4vZWRpdG9yLmVudW0nO1xyXG5cclxuSm9kaXQubGFuZy5kZSA9IHJ1O1xyXG5cclxuLy8gZXhwb3J0IGludGVyZmFjZSBDdXN0b21Kb2RpdENvbmZpZyBleHRlbmRzIEpvZGl0Q29uZmlnIHtcclxuLy8gICBnZXRJY29uOiAoYTogYW55KSA9PiB2b2lkLFxyXG4vLyAgIGxpbms6IGFueSxcclxuLy8gICBjbGVhbkhUTUw6IGFueSxcclxuLy8gfVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtZWRpdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lZGl0b3IuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzIHtcclxuICBwcml2YXRlIF9pc0luaXQgPSBmYWxzZTtcclxuICBwdWJsaWMgdmFsdWUgPSAnJztcclxuICBwdWJsaWMgdmFsdWVMZW5ndGggPSAwO1xyXG4gIHB1YmxpYyBpc0ZvY3VzZWQ6IGJvb2xlYW4gfCBudWxsID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBvcHRpb25zID0ge1xyXG4gICAgbGFuZ3VhZ2U6ICdydSdcclxuICB9O1xyXG5cclxuICBwdWJsaWMgZGVmYXVsdENvbmZpZzogYW55ID0ge1xyXG4gICAgLi4uZGVmYXVsdFRvb2xiYXIsXHJcbiAgICBwb3B1cDogcG9wdXBUb29sYmFycyxcclxuICAgIGRlZmF1bHRNb2RlOiBJbnB1dEVkaXRvck1vZGVFbnVtLk1PREVfV1lTSVdZRyxcclxuICAgIGxhbmd1YWdlOiAncnUnLFxyXG4gICAgc2hvd0NoYXJzQ291bnRlcjogZmFsc2UsXHJcbiAgICBzaG93V29yZHNDb3VudGVyOiBmYWxzZSxcclxuICAgIHNob3dYUGF0aEluU3RhdHVzYmFyOiBmYWxzZSxcclxuICAgIGxpbms6IHtcclxuICAgICAgbm9Gb2xsb3dDaGVja2JveDogZmFsc2VcclxuICAgIH0sXHJcbiAgICBtaW5IZWlnaHQ6IDExMCxcclxuICAgIGlmcmFtZTogZmFsc2UsXHJcbiAgICBpbWFnZURlZmF1bHRXaWR0aDogMjAwLFxyXG4gICAgZWRpdEhUTUxEb2N1bWVudE1vZGU6IHRydWUsXHJcbiAgICBjbGVhbkhUTUw6IHtcclxuICAgICAgZmlsbEVtcHR5UGFyYWdyYXBoOiB0cnVlXHJcbiAgICB9LFxyXG4gICAgcGxhY2Vob2xkZXI6ICcnLFxyXG4gICAgdG9vbGJhckFkYXB0aXZlOiBmYWxzZSxcclxuICAgIHRvb2xiYXJJbmxpbmU6IHRydWUsXHJcbiAgICB0b29sYmFySW5saW5lRm9yU2VsZWN0aW9uOiBmYWxzZSxcclxuICAgIHRvb2xiYXJJbmxpbmVEaXNhYmxlRm9yOiBbXSxcclxuICAgIHRvb2xiYXJJbmxpbmVEaXNhYmxlZEJ1dHRvbnM6IFsnc291cmNlJ10sXHJcbiAgICBkaXNhYmxlZDogZmFsc2UsXHJcbiAgICByZWFkb25seTogZmFsc2UsXHJcbiAgICBhc2tCZWZvcmVQYXN0ZUhUTUw6IGZhbHNlLFxyXG4gICAgZGVmYXVsdEFjdGlvbk9uUGFzdGU6ICdpbnNlcnRfb25seV90ZXh0JyxcclxuICAgIGFza0JlZm9yZVBhc3RlRnJvbVdvcmQ6IGZhbHNlLFxyXG4gICAgaGlkZVBvd2VyZWRCeUpvZGl0OiB0cnVlLFxyXG4gICAgYmVhdXRpZnlIVE1MOiB0cnVlLFxyXG4gICAgYWRkTmV3TGluZTogdHJ1ZSxcclxuICAgIGNyZWF0ZUF0dHJpYnV0ZXM6IHt9LFxyXG4gICAgZ2V0SWNvbjogKGljb25OYW1lOiBzdHJpbmcpID0+IHtcclxuICAgICAgcmV0dXJuIGNoYW5nZUljb25zRnVuY3Rpb24oaWNvbk5hbWUpO1xyXG4gICAgfSxcclxuICAgIGV2ZW50czoge1xyXG4gICAgICBmb2N1czogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRm9jdXNlZCh0cnVlKTtcclxuICAgICAgfSxcclxuICAgICAgYmx1cjogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRm9jdXNlZChmYWxzZSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIHBhc3RlOiAoZXZlbnQ6IENsaXBib2FyZEV2ZW50KSA9PiB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVQYXN0ZShldmVudCk7XHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgLy8gdXBsb2FkZXI6IHtcclxuICAgIC8vICAgaW5zZXJ0SW1hZ2VBc0Jhc2U2NFVSSTogdHJ1ZVxyXG4gICAgLy8gfSxcclxuICAgIC8vIGxpbWl0Q2hhcnM6IDEwLFxyXG4gICAgLy8gbGltaXRIVE1MOiAxNzAsXHJcbiAgfTtcclxuXHJcbiAgLy8gU0FWRSBTVEFURVxyXG4gIHB1YmxpYyB1dWlkOiBzdHJpbmcgPSB1dWlkdjQoKTtcclxuICBASW5wdXQoKSBwdWJsaWMgZmllbGRzOiBGaWVsZFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyITogVG9vbGJhckNvbmZpZztcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4TGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWluSGVpZ2h0ID0gMTEwO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGlmcmFtZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkZWZhdWx0SW5saW5lU3R5bGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgY29uZmlnOiBhbnkgPSB0aGlzLmRlZmF1bHRDb25maWc7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBlZGl0SFRNTERvY3VtZW50TW9kZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkZWZhdWx0TW9kZTogSW5wdXRFZGl0b3JNb2RlRW51bSA9IElucHV0RWRpdG9yTW9kZUVudW0uTU9ERV9XWVNJV1lHO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkTWVzc2FnZTogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tJbnZhbGlkOiB0cnVlIHwgZmFsc2UgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZWRpdG9yRWxlbWVudFJlZicpIGVkaXRvckVsZW1lbnRSZWYhOiBhbnk7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXRFZGl0b3JWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0RWRpdG9yVmFsdWVXaXRoSWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbJ3Rvb2xiYXInXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCAuLi5jaGFuZ2VzWyd0b29sYmFyJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydtYXhMZW5ndGgnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCBsaW1pdENoYXJzOiBjaGFuZ2VzWydtYXhMZW5ndGgnXS5jdXJyZW50VmFsdWV9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ3BsYWNlaG9sZGVyJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgcGxhY2Vob2xkZXI6IGNoYW5nZXNbJ3BsYWNlaG9sZGVyJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydkaXNhYmxlZCddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHsuLi50aGlzLmRlZmF1bHRDb25maWcsIGRpc2FibGVkOiBjaGFuZ2VzWydkaXNhYmxlZCddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1sncmVhZG9ubHknXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCByZWFkb25seTogY2hhbmdlc1sncmVhZG9ubHknXS5jdXJyZW50VmFsdWV9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ2lmcmFtZSddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHsuLi50aGlzLmRlZmF1bHRDb25maWcsIGlmcmFtZTogY2hhbmdlc1snaWZyYW1lJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydkZWZhdWx0SW5saW5lU3R5bGUnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7XHJcbiAgICAgICAgLi4udGhpcy5kZWZhdWx0Q29uZmlnLFxyXG4gICAgICAgIGNyZWF0ZUF0dHJpYnV0ZXM6IHsuLi50aGlzLmRlZmF1bHRDb25maWcuY3JlYXRlQXR0cmlidXRlcywgLi4uZGVmYXVsdElubGluZVN0eWxlQ29uc3RhbnR9XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snZWRpdEhUTUxEb2N1bWVudE1vZGUnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7XHJcbiAgICAgICAgLi4udGhpcy5kZWZhdWx0Q29uZmlnLFxyXG4gICAgICAgIGVkaXRIVE1MRG9jdW1lbnRNb2RlOiBjaGFuZ2VzWydlZGl0SFRNTERvY3VtZW50TW9kZSddLmN1cnJlbnRWYWx1ZVxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ2Fza0JlZm9yZVBhc3RlSFRNTCddKSB7XHJcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyA9IHsuLi50aGlzLmRlZmF1bHRDb25maWcsIGFza0JlZm9yZVBhc3RlSFRNTDogY2hhbmdlc1snYXNrQmVmb3JlUGFzdGVIVE1MJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydhc2tCZWZvcmVQYXN0ZUZyb21Xb3JkJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0ge1xyXG4gICAgICAgIC4uLnRoaXMuZGVmYXVsdENvbmZpZyxcclxuICAgICAgICBhc2tCZWZvcmVQYXN0ZUZyb21Xb3JkOiBjaGFuZ2VzWydhc2tCZWZvcmVQYXN0ZUZyb21Xb3JkJ10uY3VycmVudFZhbHVlXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snZGVmYXVsdE1vZGUnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCBkZWZhdWx0TW9kZTogY2hhbmdlc1snZGVmYXVsdE1vZGUnXS5jdXJyZW50VmFsdWV9O1xyXG4gICAgfVxyXG4gICAgaWYgKGNoYW5nZXNbJ2RlZmF1bHRBY3Rpb25PblBhc3RlJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0ge1xyXG4gICAgICAgIC4uLnRoaXMuZGVmYXVsdENvbmZpZyxcclxuICAgICAgICBkZWZhdWx0QWN0aW9uT25QYXN0ZTogY2hhbmdlc1snZGVmYXVsdEFjdGlvbk9uUGFzdGUnXS5jdXJyZW50VmFsdWVcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VzWydtaW5IZWlnaHQnXSkge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgPSB7Li4udGhpcy5kZWZhdWx0Q29uZmlnLCBtaW5IZWlnaHQ6IGNoYW5nZXNbJ21pbkhlaWdodCddLmN1cnJlbnRWYWx1ZX07XHJcbiAgICB9XHJcbiAgICBpZiAoY2hhbmdlc1snY29uZmlnJ10pIHtcclxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnID0gey4uLnRoaXMuZGVmYXVsdENvbmZpZywgLi4uY2hhbmdlc1snY29uZmlnJ10uY3VycmVudFZhbHVlfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNWYWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc0ludmFsaWRNZXNzYWdlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5pbnZhbGlkTWVzc2FnZSB8fCAhIXRoaXMuaW52YWxpZE1lc3NhZ2U/Lmxlbmd0aDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2hlY2tWYWxpZENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gZmFsc2UgPyAnbXJ4LWlucHV0LWNoZWNrZWQtc3VjY2VzcycgOiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gdHJ1ZSA/ICdtcngtaW5wdXQtY2hlY2tlZC1lcnJvcicgOiAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke3RoaXMuY3VzdG9tQ2xhc3Nlc30gJHt0aGlzLmNoZWNrVmFsaWRDbGFzc2VzfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5zZXJ0UG9zaXRpb25UZXh0KHRleHQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5lZGl0b3JFbGVtZW50UmVmLmpvZGl0LnMuaW5zZXJ0SFRNTCh0ZXh0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VGb2N1c2VkKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKCFldmVudC5jbGlwYm9hcmREYXRhIHx8IHRoaXMuaGFzSW1hZ2VCdXR0b24oKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qge2NsaXBib2FyZERhdGF9ID0gZXZlbnQ7XHJcbiAgICBjb25zdCBodG1sRGF0YSA9IGNsaXBib2FyZERhdGEuZ2V0RGF0YSgndGV4dC9odG1sJyk7XHJcbiAgICBjb25zdCBoYXNIdG1sSW1hZ2UgPSBodG1sRGF0YT8uaW5jbHVkZXMoJzxpbWcnKTtcclxuICAgIGNvbnN0IGhhc0ltYWdlID0gQXJyYXkuZnJvbShjbGlwYm9hcmREYXRhLml0ZW1zKS5zb21lKGl0ZW0gPT4gaXRlbS50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKTtcclxuXHJcbiAgICBpZiAoIWhhc0ltYWdlICYmICFoYXNIdG1sSW1hZ2UpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG4gICAgY29uc3Qgc2FuaXRpemVkSHRtbCA9IHRoaXMucmVtb3ZlSW1hZ2VzRnJvbUh0bWwoaHRtbERhdGEpO1xyXG4gICAgY29uc3QgdGV4dERhdGEgPSBjbGlwYm9hcmREYXRhLmdldERhdGEoJ3RleHQvcGxhaW4nKTtcclxuICAgIGNvbnN0IGNvbnRlbnRUb0luc2VydCA9IHNhbml0aXplZEh0bWwgfHwgdGV4dERhdGE7XHJcblxyXG4gICAgaWYgKGNvbnRlbnRUb0luc2VydCkge1xyXG4gICAgICB0aGlzLmVkaXRvckVsZW1lbnRSZWYuam9kaXQucy5pbnNlcnRIVE1MKGNvbnRlbnRUb0luc2VydCk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlbW92ZUltYWdlc0Zyb21IdG1sKGh0bWw6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgaWYgKCFodG1sKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xyXG4gICAgZGl2LmlubmVySFRNTCA9IGh0bWw7XHJcbiAgICBkaXYucXVlcnlTZWxlY3RvckFsbCgnaW1nJykuZm9yRWFjaChpbWcgPT4gaW1nLnJlbW92ZSgpKTtcclxuXHJcbiAgICByZXR1cm4gZGl2LmlubmVySFRNTDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYXNJbWFnZUJ1dHRvbigpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGJ1dHRvbnMgPSB0aGlzLmRlZmF1bHRDb25maWc/LmJ1dHRvbnM7XHJcblxyXG4gICAgaWYgKCFidXR0b25zKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZW9mIGJ1dHRvbnMgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybiBidXR0b25zLmluY2x1ZGVzKCdpbWFnZScpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChBcnJheS5pc0FycmF5KGJ1dHRvbnMpKSB7XHJcbiAgICAgIHJldHVybiBidXR0b25zLnNvbWUoaXRlbSA9PlxyXG4gICAgICAgIHR5cGVvZiBpdGVtID09PSAnc3RyaW5nJ1xyXG4gICAgICAgICAgPyBpdGVtID09PSAnaW1hZ2UnXHJcbiAgICAgICAgICA6IGl0ZW0/Lm5hbWUgPT09ICdpbWFnZSdcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICB9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4ge30pOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShvdXRzaWRlVmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHRoaXMuX3Nhbml0aXplVmFsdWUob3V0c2lkZVZhbHVlKTtcclxuICAgIGlmIChvdXRzaWRlVmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5faXNJbml0ID0gdHJ1ZTtcclxuICAgICAgfSwgMTAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZShpbnNpZGVWYWx1ZTogc3RyaW5nKSB7XHJcblxyXG4gICAgaWYgKHRoaXMubWF4TGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuX2NhbGN1bGF0ZUNoYXJ0c0NvdW50KCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5faXNJbml0KSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBpbnNpZGVWYWx1ZTtcclxuICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoaW5zaWRlVmFsdWUpO1xyXG4gICAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiBpbnNpZGVWYWx1ZSwgaWQ6IHRoaXMudXVpZH0pO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlKGluc2lkZVZhbHVlKTtcclxuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Nhbml0aXplVmFsdWUodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdmFsdWUgPyB2YWx1ZS5yZXBsYWNlKC88c2NyaXB0XFxiW148XSooPzooPyE8XFwvc2NyaXB0Pik8W148XSopKjxcXC9zY3JpcHQ+L2dpLCAnJykgOiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NhbGN1bGF0ZUNoYXJ0c0NvdW50KCkge1xyXG4gICAgdGhpcy52YWx1ZUxlbmd0aCA9IHRoaXMuZWRpdG9yRWxlbWVudFJlZi5lZGl0b3IudGV4dC5yZXBsYWNlKC9cXHMrL2csICcnKS5sZW5ndGg7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cIm1yeC1lZGl0b3JcIlxyXG4gIFtjbGFzcy5tcngtaW5wdXQtZm9jdXNlZF09XCJpc0ZvY3VzZWRcIlxyXG4gIFtjbGFzcy5tcngtaW5wdXQtZXJyb3JdPVwiIWlzVmFsaWQgfHwgaW52YWxpZFwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4+XHJcbiAgPG5neC1qb2RpdFxyXG4gICAgI2VkaXRvckVsZW1lbnRSZWZcclxuICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgW29wdGlvbnNdPVwiZGVmYXVsdENvbmZpZ1wiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiXHJcbiAgPjwvbmd4LWpvZGl0PlxyXG5cclxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICpuZ0lmPVwiKCFpc1ZhbGlkIHx8IGludmFsaWQpICYmIGlzSW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgW2ludmFsaWRNZXNzYWdlXT1cImludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG1yeC1jaGFycy1sZWZ0IFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCIgW3ZhbHVlTGVuZ3RoXT1cInZhbHVlTGVuZ3RoXCI+PC9tcngtY2hhcnMtbGVmdD5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIHR5cGU9XCJlZGl0b3JcIiBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -24,8 +24,8 @@ export class AutoSaveStore {
|
|
|
24
24
|
this.clearSubscription(id);
|
|
25
25
|
this.state.update(current => ({
|
|
26
26
|
fields: current.fields.map(field => field.id === id
|
|
27
|
-
? { ...field, state:
|
|
28
|
-
: field)
|
|
27
|
+
? { ...field, state: 'saving' }
|
|
28
|
+
: { ...field, state: field.state === 'saved' ? 'stopped' : field.state })
|
|
29
29
|
}));
|
|
30
30
|
}
|
|
31
31
|
stop() {
|
|
@@ -117,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
117
117
|
type: Injectable,
|
|
118
118
|
args: [{ providedIn: 'root' }]
|
|
119
119
|
}] });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1zYXZlLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9zYXZlLXN0b3JlL2F1dG8tc2F2ZS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBZ0IsTUFBTSxNQUFNLENBQUM7O0FBUTNDLE1BQU0sT0FBTyxhQUFhO0lBQ1AsS0FBSyxHQUFHLE1BQU0sQ0FBZ0IsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUU5QyxhQUFhLEdBQW9DLEVBQUUsQ0FBQztJQUU1RCxNQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUUvQyxRQUFRLENBQUMsRUFBVTtRQUN4QixPQUFPLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU0sS0FBSyxDQUFDLEVBQVUsRUFBRSxPQUF1QjtRQUM5QyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM1QixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0s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YUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQztJQUVELHdCQUF3QjtJQUNoQixxQkFBcUI7UUFDM0IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzVDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0F2SVUsYUFBYTs0R0FBYixhQUFhLGNBREEsTUFBTTs7NEZBQ25CLGFBQWE7a0JBRHpCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsLCBjb21wdXRlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0aW1lciwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBdXRvU2F2ZVN0YXRlIHtcclxuICBmaWVsZHM6IEZpZWxkW107XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBBdXRvU2F2ZVN0b3JlIHtcclxuICBwcml2YXRlIHJlYWRvbmx5IHN0YXRlID0gc2lnbmFsPEF1dG9TYXZlU3RhdGU+KHsgZmllbGRzOiBbXSB9KTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdWJzY3JpcHRpb25zOiB7IFtrZXk6IHN0cmluZ106IFN1YnNjcmlwdGlvbiB9ID0ge307XHJcblxyXG4gIHJlYWRvbmx5IGZpZWxkcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuc3RhdGUoKS5maWVsZHMpO1xyXG5cclxuICBwdWJsaWMgZ2V0RmllbGQoaWQ6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGNvbXB1dGVkKCgpID0+IHRoaXMuc3RhdGUoKS5maWVsZHMuZmluZChmaWVsZCA9PiBmaWVsZC5pZCA9PT0gaWQpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRJZChpZDogc3RyaW5nLCBncm91cElkPzogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgdGhpcy51cHNlcnRGaWVsZCh7IGlkLCBzdGF0ZTogJ3N0b3BwZWQnLCBncm91cElkIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXJ0KCkge1xyXG4gICAgdGhpcy5jbGVhckFsbFN1YnNjcmlwdGlvbnMoKTtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4gKHtcclxuICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5tYXAoZmllbGQgPT4gKHtcclxuICAgICAgICAuLi5maWVsZCxcclxuICAgICAgICBzdGF0ZTogZmllbGQuc3RhdGUgPT09ICdzYXZlZCcgPyAnc3RvcHBlZCcgOiAnc2F2aW5nJ1xyXG4gICAgICB9KSlcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGFydEZvcihpZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsZWFyU3Vic2NyaXB0aW9uKGlkKTtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4gKHtcclxuICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5tYXAoZmllbGQgPT5cclxuICAgICAgICBmaWVsZC5pZCA9PT0gaWRcclxuICAgICAgICAgID8geyAuLi5maWVsZCwgc3RhdGU6IGZpZWxkLnN0YXRlID09PSAnc2F2ZWQnID8gJ3N0b3BwZWQnIDogJ3NhdmluZycgfVxyXG4gICAgICAgICAgOiBmaWVsZFxyXG4gICAgICApXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RvcCgpIHtcclxuICAgIHRoaXMuY2xlYXJBbGxTdWJzY3JpcHRpb25zKCk7XHJcbiAgICB0aGlzLmNsZWFyKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RvcEZvcihpZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsZWFyU3Vic2NyaXB0aW9uKGlkKTtcclxuICAgIHRoaXMucmVtb3ZlRmllbGQoaWQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN1Y2Nlc3MoKSB7XHJcbiAgICB0aGlzLmNsZWFyQWxsU3Vic2NyaXB0aW9ucygpO1xyXG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoY3VycmVudCA9PiAoe1xyXG4gICAgICBmaWVsZHM6IGN1cnJlbnQuZmllbGRzLm1hcChmaWVsZCA9PiAoe1xyXG4gICAgICAgIC4uLmZpZWxkLCBzdGF0ZTogJ3NhdmVkJ1xyXG4gICAgICB9KSlcclxuICAgIH0pKTtcclxuXHJcbiAgICB0aGlzLnN0YXRlKCkuZmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnNbZmllbGQuaWRdID0gdGltZXIoMzAwMCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc3RvcCgpKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN1Y2Nlc3NGb3IoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5jbGVhclN1YnNjcmlwdGlvbihpZCk7XHJcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZShjdXJyZW50ID0+ICh7XHJcbiAgICAgIGZpZWxkczogY3VycmVudC5maWVsZHMubWFwKGZpZWxkID0+XHJcbiAgICAgICAgZmllbGQuaWQgPT09IGlkID8geyAuLi5maWVsZCwgc3RhdGU6ICdzYXZlZCcgfSA6IGZpZWxkXHJcbiAgICAgIClcclxuICAgIH0pKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uc1tpZF0gPSB0aW1lcigzMDAwKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zdG9wRm9yKGlkKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZXJyb3IoKSB7XHJcbiAgICB0aGlzLmNsZWFyQWxsU3Vic2NyaXB0aW9ucygpO1xyXG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoY3VycmVudCA9PiAoe1xyXG4gICAgICBmaWVsZHM6IGN1cnJlbnQuZmllbGRzLm1hcChmaWVsZCA9PiAoe1xyXG4gICAgICAgIC4uLmZpZWxkLCBzdGF0ZTogJ2Vycm9yJ1xyXG4gICAgICB9KSlcclxuICAgIH0pKTtcclxuXHJcbiAgICB0aGlzLnN0YXRlKCkuZmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnNbZmllbGQuaWRdID0gdGltZXIoMzAwMCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc3RvcCgpKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGVycm9yRm9yKGlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuY2xlYXJTdWJzY3JpcHRpb24oaWQpO1xyXG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoY3VycmVudCA9PiAoe1xyXG4gICAgICBmaWVsZHM6IGN1cnJlbnQuZmllbGRzLm1hcChmaWVsZCA9PlxyXG4gICAgICAgIGZpZWxkLmlkID09PSBpZCA/IHsgLi4uZmllbGQsIHN0YXRlOiAnZXJyb3InfSA6IGZpZWxkXHJcbiAgICAgIClcclxuICAgIH0pKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uc1tpZF0gPSB0aW1lcigzMDAwKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zdG9wRm9yKGlkKSk7XHJcbiAgfVxyXG5cclxuICAvLyDQlNC+0LHQsNCy0LjRgtGMINC40LvQuCDQvtCx0L3QvtCy0LjRgtGMINC/0L7Qu9C1XHJcbiAgcHJpdmF0ZSB1cHNlcnRGaWVsZChmaWVsZDogRmllbGQpIHtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4ge1xyXG4gICAgICBjb25zdCBleGlzdHMgPSBjdXJyZW50LmZpZWxkcy5zb21lKGYgPT4gZi5pZCA9PT0gZmllbGQuaWQpO1xyXG5cclxuICAgICAgaWYgKGV4aXN0cykge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBmaWVsZHM6IGN1cnJlbnQuZmllbGRzLm1hcChmID0+IGYuaWQgPT09IGZpZWxkLmlkID8geyAuLi5mLCAuLi5maWVsZCB9IDogZilcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGZpZWxkczogWy4uLmN1cnJlbnQuZmllbGRzLCBmaWVsZF1cclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8g0KPQtNCw0LvQuNGC0Ywg0L/QvtC70LVcclxuICBwcml2YXRlIHJlbW92ZUZpZWxkKGlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4gKHtcclxuICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5maWx0ZXIoZmllbGQgPT4gZmllbGQuaWQgIT09IGlkKVxyXG4gICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgLy8g0J7Rh9C40YHRgtC40YLRjCDQstGB0LUg0L/QvtC70Y9cclxuICBwcml2YXRlIGNsZWFyKCkge1xyXG4gICAgdGhpcy5zdGF0ZS5zZXQoeyBmaWVsZHM6IFtdIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8g0J7Rh9C40YHRgtC40YLRjCDQv9C+0LTQv9C40YHQutGDINC00LvRjyDQv9C+0LvRj1xyXG4gIHByaXZhdGUgY2xlYXJTdWJzY3JpcHRpb24oaWQ6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uc1tpZF0pIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2lkXS51bnN1YnNjcmliZSgpO1xyXG4gICAgICBkZWxldGUgdGhpcy5zdWJzY3JpcHRpb25zW2lkXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vINCe0YfQuNGB0YLQuNGC0Ywg0LLRgdC1INC/0L7QtNC/0LjRgdC60LhcclxuICBwcml2YXRlIGNsZWFyQWxsU3Vic2NyaXB0aW9ucygpIHtcclxuICAgIE9iamVjdC5rZXlzKHRoaXMuc3Vic2NyaXB0aW9ucykuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnNba2V5XS51bnN1YnNjcmliZSgpO1xyXG4gICAgICBkZWxldGUgdGhpcy5zdWJzY3JpcHRpb25zW2tleV07XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1zYXZlLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9zYXZlLXN0b3JlL2F1dG8tc2F2ZS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBZ0IsTUFBTSxNQUFNLENBQUM7O0FBUTNDLE1BQU0sT0FBTyxhQUFhO0lBQ1AsS0FBSyxHQUFHLE1BQU0sQ0FBZ0IsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUU5QyxhQUFhLEdBQW9DLEVBQUUsQ0FBQztJQUU1RCxNQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUUvQyxRQUFRLENBQUMsRUFBVTtRQUN4QixPQUFPLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU0sS0FBSyxDQUFDLEVBQVUsRUFBRSxPQUF1QjtRQUM5QyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM1QixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0s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YUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEMsQ0FBQztJQUNILENBQUM7SUFFRCx3QkFBd0I7SUFDaEIscUJBQXFCO1FBQzNCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM1QyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBdklVLGFBQWE7NEdBQWIsYUFBYSxjQURBLE1BQU07OzRGQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdGltZXIsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vbW9kZWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQXV0b1NhdmVTdGF0ZSB7XHJcbiAgZmllbGRzOiBGaWVsZFtdO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQXV0b1NhdmVTdG9yZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdGF0ZSA9IHNpZ25hbDxBdXRvU2F2ZVN0YXRlPih7IGZpZWxkczogW10gfSk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgc3Vic2NyaXB0aW9uczogeyBba2V5OiBzdHJpbmddOiBTdWJzY3JpcHRpb24gfSA9IHt9O1xyXG5cclxuICByZWFkb25seSBmaWVsZHMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnN0YXRlKCkuZmllbGRzKTtcclxuXHJcbiAgcHVibGljIGdldEZpZWxkKGlkOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBjb21wdXRlZCgoKSA9PiB0aGlzLnN0YXRlKCkuZmllbGRzLmZpbmQoZmllbGQgPT4gZmllbGQuaWQgPT09IGlkKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkSWQoaWQ6IHN0cmluZywgZ3JvdXBJZD86IHN0cmluZyB8IG51bGwpIHtcclxuICAgIHRoaXMudXBzZXJ0RmllbGQoeyBpZCwgc3RhdGU6ICdzdG9wcGVkJywgZ3JvdXBJZCB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGFydCgpIHtcclxuICAgIHRoaXMuY2xlYXJBbGxTdWJzY3JpcHRpb25zKCk7XHJcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZShjdXJyZW50ID0+ICh7XHJcbiAgICAgIGZpZWxkczogY3VycmVudC5maWVsZHMubWFwKGZpZWxkID0+ICh7XHJcbiAgICAgICAgLi4uZmllbGQsXHJcbiAgICAgICAgc3RhdGU6IGZpZWxkLnN0YXRlID09PSAnc2F2ZWQnID8gJ3N0b3BwZWQnIDogJ3NhdmluZydcclxuICAgICAgfSkpXHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhcnRGb3IoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5jbGVhclN1YnNjcmlwdGlvbihpZCk7XHJcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZShjdXJyZW50ID0+ICh7XHJcbiAgICAgIGZpZWxkczogY3VycmVudC5maWVsZHMubWFwKGZpZWxkID0+XHJcbiAgICAgICAgZmllbGQuaWQgPT09IGlkXHJcbiAgICAgICAgICA/IHsgLi4uZmllbGQsIHN0YXRlOiAnc2F2aW5nJyB9XHJcbiAgICAgICAgICA6IHsgLi4uZmllbGQsIHN0YXRlOiBmaWVsZC5zdGF0ZSA9PT0gJ3NhdmVkJyA/ICdzdG9wcGVkJyA6IGZpZWxkLnN0YXRlIH1cclxuICAgICAgKVxyXG4gICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0b3AoKSB7XHJcbiAgICB0aGlzLmNsZWFyQWxsU3Vic2NyaXB0aW9ucygpO1xyXG4gICAgdGhpcy5jbGVhcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0b3BGb3IoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5jbGVhclN1YnNjcmlwdGlvbihpZCk7XHJcbiAgICB0aGlzLnJlbW92ZUZpZWxkKGlkKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdWNjZXNzKCkge1xyXG4gICAgdGhpcy5jbGVhckFsbFN1YnNjcmlwdGlvbnMoKTtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4gKHtcclxuICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5tYXAoZmllbGQgPT4gKHtcclxuICAgICAgICAuLi5maWVsZCwgc3RhdGU6ICdzYXZlZCdcclxuICAgICAgfSkpXHJcbiAgICB9KSk7XHJcblxyXG4gICAgdGhpcy5zdGF0ZSgpLmZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2ZpZWxkLmlkXSA9IHRpbWVyKDMwMDApLnN1YnNjcmliZSgoKSA9PiB0aGlzLnN0b3AoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdWNjZXNzRm9yKGlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuY2xlYXJTdWJzY3JpcHRpb24oaWQpO1xyXG4gICAgdGhpcy5zdGF0ZS51cGRhdGUoY3VycmVudCA9PiAoe1xyXG4gICAgICBmaWVsZHM6IGN1cnJlbnQuZmllbGRzLm1hcChmaWVsZCA9PlxyXG4gICAgICAgIGZpZWxkLmlkID09PSBpZCA/IHsgLi4uZmllbGQsIHN0YXRlOiAnc2F2ZWQnIH0gOiBmaWVsZFxyXG4gICAgICApXHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnNbaWRdID0gdGltZXIoMzAwMCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc3RvcEZvcihpZCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGVycm9yKCkge1xyXG4gICAgdGhpcy5jbGVhckFsbFN1YnNjcmlwdGlvbnMoKTtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4gKHtcclxuICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5tYXAoZmllbGQgPT4gKHtcclxuICAgICAgICAuLi5maWVsZCwgc3RhdGU6ICdlcnJvcidcclxuICAgICAgfSkpXHJcbiAgICB9KSk7XHJcblxyXG4gICAgdGhpcy5zdGF0ZSgpLmZpZWxkcy5mb3JFYWNoKGZpZWxkID0+IHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2ZpZWxkLmlkXSA9IHRpbWVyKDMwMDApLnN1YnNjcmliZSgoKSA9PiB0aGlzLnN0b3AoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBlcnJvckZvcihpZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNsZWFyU3Vic2NyaXB0aW9uKGlkKTtcclxuICAgIHRoaXMuc3RhdGUudXBkYXRlKGN1cnJlbnQgPT4gKHtcclxuICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5tYXAoZmllbGQgPT5cclxuICAgICAgICBmaWVsZC5pZCA9PT0gaWQgPyB7IC4uLmZpZWxkLCBzdGF0ZTogJ2Vycm9yJ30gOiBmaWVsZFxyXG4gICAgICApXHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnNbaWRdID0gdGltZXIoMzAwMCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc3RvcEZvcihpZCkpO1xyXG4gIH1cclxuXHJcbiAgLy8g0JTQvtCx0LDQstC40YLRjCDQuNC70Lgg0L7QsdC90L7QstC40YLRjCDQv9C+0LvQtVxyXG4gIHByaXZhdGUgdXBzZXJ0RmllbGQoZmllbGQ6IEZpZWxkKSB7XHJcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZShjdXJyZW50ID0+IHtcclxuICAgICAgY29uc3QgZXhpc3RzID0gY3VycmVudC5maWVsZHMuc29tZShmID0+IGYuaWQgPT09IGZpZWxkLmlkKTtcclxuXHJcbiAgICAgIGlmIChleGlzdHMpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgZmllbGRzOiBjdXJyZW50LmZpZWxkcy5tYXAoZiA9PiBmLmlkID09PSBmaWVsZC5pZCA/IHsgLi4uZiwgLi4uZmllbGQgfSA6IGYpXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBmaWVsZHM6IFsuLi5jdXJyZW50LmZpZWxkcywgZmllbGRdXHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vINCj0LTQsNC70LjRgtGMINC/0L7Qu9C1XHJcbiAgcHJpdmF0ZSByZW1vdmVGaWVsZChpZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnN0YXRlLnVwZGF0ZShjdXJyZW50ID0+ICh7XHJcbiAgICAgIGZpZWxkczogY3VycmVudC5maWVsZHMuZmlsdGVyKGZpZWxkID0+IGZpZWxkLmlkICE9PSBpZClcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIC8vINCe0YfQuNGB0YLQuNGC0Ywg0LLRgdC1INC/0L7Qu9GPXHJcbiAgcHJpdmF0ZSBjbGVhcigpIHtcclxuICAgIHRoaXMuc3RhdGUuc2V0KHsgZmllbGRzOiBbXSB9KTtcclxuICB9XHJcblxyXG4gIC8vINCe0YfQuNGB0YLQuNGC0Ywg0L/QvtC00L/QuNGB0LrRgyDQtNC70Y8g0L/QvtC70Y9cclxuICBwcml2YXRlIGNsZWFyU3Vic2NyaXB0aW9uKGlkOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbnNbaWRdKSB7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uc1tpZF0udW5zdWJzY3JpYmUoKTtcclxuICAgICAgZGVsZXRlIHRoaXMuc3Vic2NyaXB0aW9uc1tpZF07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyDQntGH0LjRgdGC0LjRgtGMINCy0YHQtSDQv9C+0LTQv9C40YHQutC4XHJcbiAgcHJpdmF0ZSBjbGVhckFsbFN1YnNjcmlwdGlvbnMoKSB7XHJcbiAgICBPYmplY3Qua2V5cyh0aGlzLnN1YnNjcmlwdGlvbnMpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zW2tleV0udW5zdWJzY3JpYmUoKTtcclxuICAgICAgZGVsZXRlIHRoaXMuc3Vic2NyaXB0aW9uc1trZXldO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/fesm2022/myrta-ui.mjs
CHANGED
|
@@ -35,6 +35,7 @@ import 'jodit/esm/plugins/line-height/line-height.js';
|
|
|
35
35
|
import 'jodit/esm/plugins/indent/indent.js';
|
|
36
36
|
import 'jodit/esm/plugins/video/video.js';
|
|
37
37
|
import 'jodit/esm/plugins/search/search.js';
|
|
38
|
+
import 'jodit/esm/plugins/resizer/resizer.js';
|
|
38
39
|
import * as i3 from 'ngx-jodit';
|
|
39
40
|
import { NgxJoditComponent } from 'ngx-jodit';
|
|
40
41
|
import 'ace-builds/src-min-noconflict/ace.js';
|
|
@@ -3094,8 +3095,8 @@ class AutoSaveStore {
|
|
|
3094
3095
|
this.clearSubscription(id);
|
|
3095
3096
|
this.state.update(current => ({
|
|
3096
3097
|
fields: current.fields.map(field => field.id === id
|
|
3097
|
-
? { ...field, state:
|
|
3098
|
-
: field)
|
|
3098
|
+
? { ...field, state: 'saving' }
|
|
3099
|
+
: { ...field, state: field.state === 'saved' ? 'stopped' : field.state })
|
|
3099
3100
|
}));
|
|
3100
3101
|
}
|
|
3101
3102
|
stop() {
|
|
@@ -7543,8 +7544,11 @@ class EditorComponent {
|
|
|
7543
7544
|
},
|
|
7544
7545
|
blur: () => {
|
|
7545
7546
|
this.changeFocused(false);
|
|
7546
|
-
}
|
|
7547
|
-
|
|
7547
|
+
},
|
|
7548
|
+
paste: (event) => {
|
|
7549
|
+
this.handlePaste(event);
|
|
7550
|
+
},
|
|
7551
|
+
},
|
|
7548
7552
|
// uploader: {
|
|
7549
7553
|
// insertImageAsBase64URI: true
|
|
7550
7554
|
// },
|
|
@@ -7650,6 +7654,49 @@ class EditorComponent {
|
|
|
7650
7654
|
this.isFocused = value;
|
|
7651
7655
|
this.changeDetection.detectChanges();
|
|
7652
7656
|
}
|
|
7657
|
+
handlePaste(event) {
|
|
7658
|
+
if (!event.clipboardData || this.hasImageButton()) {
|
|
7659
|
+
return;
|
|
7660
|
+
}
|
|
7661
|
+
const { clipboardData } = event;
|
|
7662
|
+
const htmlData = clipboardData.getData('text/html');
|
|
7663
|
+
const hasHtmlImage = htmlData?.includes('<img');
|
|
7664
|
+
const hasImage = Array.from(clipboardData.items).some(item => item.type.startsWith('image/'));
|
|
7665
|
+
if (!hasImage && !hasHtmlImage) {
|
|
7666
|
+
return;
|
|
7667
|
+
}
|
|
7668
|
+
event.preventDefault();
|
|
7669
|
+
const sanitizedHtml = this.removeImagesFromHtml(htmlData);
|
|
7670
|
+
const textData = clipboardData.getData('text/plain');
|
|
7671
|
+
const contentToInsert = sanitizedHtml || textData;
|
|
7672
|
+
if (contentToInsert) {
|
|
7673
|
+
this.editorElementRef.jodit.s.insertHTML(contentToInsert);
|
|
7674
|
+
}
|
|
7675
|
+
}
|
|
7676
|
+
removeImagesFromHtml(html) {
|
|
7677
|
+
if (!html) {
|
|
7678
|
+
return null;
|
|
7679
|
+
}
|
|
7680
|
+
const div = document.createElement('div');
|
|
7681
|
+
div.innerHTML = html;
|
|
7682
|
+
div.querySelectorAll('img').forEach(img => img.remove());
|
|
7683
|
+
return div.innerHTML;
|
|
7684
|
+
}
|
|
7685
|
+
hasImageButton() {
|
|
7686
|
+
const buttons = this.defaultConfig?.buttons;
|
|
7687
|
+
if (!buttons) {
|
|
7688
|
+
return false;
|
|
7689
|
+
}
|
|
7690
|
+
if (typeof buttons === 'string') {
|
|
7691
|
+
return buttons.includes('image');
|
|
7692
|
+
}
|
|
7693
|
+
if (Array.isArray(buttons)) {
|
|
7694
|
+
return buttons.some(item => typeof item === 'string'
|
|
7695
|
+
? item === 'image'
|
|
7696
|
+
: item?.name === 'image');
|
|
7697
|
+
}
|
|
7698
|
+
return false;
|
|
7699
|
+
}
|
|
7653
7700
|
onChange = (value) => {
|
|
7654
7701
|
};
|
|
7655
7702
|
onTouched = () => {
|