@wizishop/wizi-block 4.2.23-beta → 4.2.26-beta
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/assets/i18n/en.json +1 -1
- package/assets/i18n/fr.json +1 -1
- package/bundles/wizishop-wizi-block.umd.js +97 -32
- package/bundles/wizishop-wizi-block.umd.js.map +1 -1
- package/bundles/wizishop-wizi-block.umd.min.js +1 -1
- package/bundles/wizishop-wizi-block.umd.min.js.map +1 -1
- package/esm2015/lib/shared/components/editorjs/tools/inline/link-tool.component.js +52 -11
- package/esm2015/lib/shared/components/editorjs/tools/inline/text-background-color-tool.component.js +2 -1
- package/esm2015/lib/shared/components/editorjs/tools/inline/tool-type/inline-style-tool.component.js +5 -2
- package/esm2015/lib/shared/components/editorjs/tools/paragraph/tool-type/paragraph-style-tool.component.js +19 -5
- package/esm2015/lib/shared/components/editorjs/tools/paragraph/tool-type/text-edition.component.js +13 -14
- package/esm2015/lib/shared/components/editorjs/tools/utils/editorjs-tool.component.js +6 -1
- package/esm2015/lib/shared/components/editorjs/tools/utils/i18n/en-i18n.component.js +3 -3
- package/esm2015/lib/shared/components/editorjs/tools/utils/i18n/fr-i18n.component.js +3 -3
- package/fesm2015/wizishop-wizi-block.js +95 -32
- package/fesm2015/wizishop-wizi-block.js.map +1 -1
- package/lib/shared/components/editorjs/tools/inline/link-tool.component.d.ts +1 -0
- package/lib/shared/components/editorjs/tools/inline/tool-type/inline-style-tool.component.d.ts +1 -0
- package/lib/shared/components/editorjs/tools/utils/editorjs-tool.component.d.ts +1 -0
- package/package.json +4 -2
- package/wizi-block.scss +723 -689
package/esm2015/lib/shared/components/editorjs/tools/paragraph/tool-type/text-edition.component.js
CHANGED
|
@@ -48,8 +48,7 @@ export class TextEditionTool extends ParagraphStyleTool {
|
|
|
48
48
|
}
|
|
49
49
|
editHTML() {
|
|
50
50
|
let content = this.getEditorContent();
|
|
51
|
-
|
|
52
|
-
document.querySelector('body').appendChild(modal);
|
|
51
|
+
this.createHTMLEditModal(content);
|
|
53
52
|
}
|
|
54
53
|
createHTMLEditModal(content) {
|
|
55
54
|
let container = document.createElement('div');
|
|
@@ -58,11 +57,6 @@ export class TextEditionTool extends ParagraphStyleTool {
|
|
|
58
57
|
modal.classList.add(this.modalClass);
|
|
59
58
|
let editorContainer = document.createElement('div');
|
|
60
59
|
editorContainer.classList.add(this.editorClass);
|
|
61
|
-
var monacoEditor = monaco.editor.create(editorContainer, {
|
|
62
|
-
value: content,
|
|
63
|
-
language: 'html',
|
|
64
|
-
automaticLayout: true,
|
|
65
|
-
});
|
|
66
60
|
codeEditEditor = this.findParentEditor();
|
|
67
61
|
codeEditApi = this.api;
|
|
68
62
|
let buttonContainer = document.createElement('div');
|
|
@@ -71,17 +65,22 @@ export class TextEditionTool extends ParagraphStyleTool {
|
|
|
71
65
|
cancelButton.innerText = editorJSI18nDictionnary.messages.tools.codeEdit['Cancel'];
|
|
72
66
|
saveButton.innerText = editorJSI18nDictionnary.messages.tools.codeEdit['Save'];
|
|
73
67
|
cancelButton.addEventListener('click', closeCodeEditModal, true);
|
|
74
|
-
saveButton.addEventListener('click', () => {
|
|
75
|
-
let content = monacoEditor.getValue();
|
|
76
|
-
saveCodeEditModal(content);
|
|
77
|
-
}, true);
|
|
78
68
|
buttonContainer.appendChild(cancelButton);
|
|
79
|
-
buttonContainer.appendChild(saveButton);
|
|
80
69
|
buttonContainer.classList.add(this.buttonClass);
|
|
81
70
|
modal.appendChild(editorContainer);
|
|
82
71
|
modal.appendChild(buttonContainer);
|
|
83
72
|
container.appendChild(modal);
|
|
84
|
-
|
|
73
|
+
document.querySelector('body').appendChild(container);
|
|
74
|
+
var monacoEditor = monaco.editor.create(editorContainer, {
|
|
75
|
+
value: content,
|
|
76
|
+
language: 'html',
|
|
77
|
+
});
|
|
78
|
+
saveButton.addEventListener('click', () => {
|
|
79
|
+
console.log("here");
|
|
80
|
+
let content = monacoEditor.getValue();
|
|
81
|
+
saveCodeEditModal(content);
|
|
82
|
+
}, true);
|
|
83
|
+
buttonContainer.appendChild(saveButton);
|
|
85
84
|
}
|
|
86
85
|
getSavedEditorContent(name) {
|
|
87
86
|
return localStorage.getItem(name);
|
|
@@ -264,4 +263,4 @@ function onEditList(event) {
|
|
|
264
263
|
}
|
|
265
264
|
}
|
|
266
265
|
}
|
|
267
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9wYXVsaW5lL0RvY3VtZW50cy93b3Jrc3BhY2Uvd2l6aS1ibG9jay9wcm9qZWN0cy93aXppLWJsb2NrL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zaGFyZWQvY29tcG9uZW50cy9lZGl0b3Jqcy90b29scy9wYXJhZ3JhcGgvdG9vbC10eXBlL3RleHQtZWRpdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFbkYsTUFBTSxPQUFnQixlQUFnQixTQUFRLGtCQUFrQjtJQUFoRTs7UUFLSSxtQkFBYyxHQUFHLHFCQUFxQixDQUFDO1FBQ3ZDLGVBQVUsR0FBRyw0QkFBNEIsQ0FBQztRQUMxQyxnQkFBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ25ELGdCQUFXLEdBQUcscUNBQXFDLENBQUM7SUF3S3hELENBQUM7SUF0S0csSUFBSTtRQUNBLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3JDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEQsSUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDO1lBQ2pFLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUM7WUFDNUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxD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bXBvcnQgeyBQYXJhZ3JhcGhTdHlsZVRvb2wgfSBmcm9tICcuL3BhcmFncmFwaC1zdHlsZS10b29sLmNvbXBvbmVudCc7XG5pbXBvcnQgKiBhcyBtb25hY28gZnJvbSAnbW9uYWNvLWVkaXRvcic7XG5pbXBvcnQgeyBMSVNUX0VESVRfS0VZX0NPREVTIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29sb3JzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBlZGl0b3JKU0kxOG5EaWN0aW9ubmFyeSB9IGZyb20gJy4uLy4uL3V0aWxzL2VkaXRvcmpzLXRyYW5zbGF0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVGV4dEVkaXRpb25Ub29sIGV4dGVuZHMgUGFyYWdyYXBoU3R5bGVUb29sIHtcbiAgICBub2RlczogeyBidXR0b246IEhUTUxCdXR0b25FbGVtZW50IH07XG5cbiAgICBDU1M6IGFueTtcblxuICAgIGNvbnRhaW5lckNsYXNzID0gJ2NvZGVFZGl0X19jb250YWluZXInO1xuICAgIG1vZGFsQ2xhc3MgPSAnY29kZUVkaXRfX2NvbnRhaW5lcl9fbW9kYWwnO1xuICAgIGVkaXRvckNsYXNzID0gJ2NvZGVFZGl0X19jb250YWluZXJfX21vZGFsX19lZGl0b3InO1xuICAgIGJ1dHRvbkNsYXNzID0gJ2NvZGVFZGl0X19jb250YWluZXJfX21vZGFsX19idXR0b25zJztcblxuICAgIHVuZG8oKSB7XG4gICAgICAgIGxldCBlZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcbiAgICAgICAgbGV0IHNhdmVkRGF0YSA9IHRoaXMuZ2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCk7XG4gICAgICAgIGxldCBzYXZlZERhdGFJbmRleCA9IHRoaXMuZ2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCArICctaW5kZXgnKVxuICAgICAgICAgICAgPyBwYXJzZUludCh0aGlzLmdldFNhdmVkRWRpdG9yQ29udGVudChlZGl0b3IuaWQgKyAnLWluZGV4JykpXG4gICAgICAgICAgICA6IC0xO1xuICAgICAgICBsZXQgcGFyc2VkU2F2ZWREYXRhOiBBcnJheTxzdHJpbmc+ID0gW107XG4gICAgICAgIGlmICghc2F2ZWREYXRhKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcGFyc2VkU2F2ZWREYXRhID0gSlNPTi5wYXJzZShzYXZlZERhdGEpO1xuICAgICAgICAtLXNhdmVkRGF0YUluZGV4O1xuICAgICAgICBzYXZlZERhdGFJbmRleCA9IHNhdmVkRGF0YUluZGV4IDwgMCA/IDAgOiBzYXZlZERhdGFJbmRleDtcbiAgICAgICAgY29kZUVkaXRFZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcbiAgICAgICAgY29kZUVkaXRBcGkgPSB0aGlzLmFwaTtcbiAgICAgICAgc2F2ZUNvZGVFZGl0TW9kYWwocGFyc2VkU2F2ZWREYXRhW3NhdmVkRGF0YUluZGV4XSk7XG4gICAgICAgIHRoaXMuc2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCArICctaW5kZXgnLCBzYXZlZERhdGFJbmRleC50b1N0cmluZygpKTtcbiAgICB9XG5cbiAgICByZWRvKCkge1xuICAgICAgICBsZXQgZWRpdG9yID0gdGhpcy5maW5kUGFyZW50RWRpdG9yKCk7XG5cbiAgICAgICAgbGV0IHNhdmVkRGF0YSA9IHRoaXMuZ2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCk7XG4gICAgICAgIGxldCBzYXZlZERhdGFJbmRleCA9IHRoaXMuZ2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCArICctaW5kZXgnKVxuICAgICAgICAgICAgPyBwYXJzZUludCh0aGlzLmdldFNhdmVkRWRpdG9yQ29udGVudChlZGl0b3IuaWQgKyAnLWluZGV4JykpXG4gICAgICAgICAgICA6IC0xO1xuICAgICAgICBsZXQgcGFyc2VkU2F2ZWREYXRhOiBBcnJheTxzdHJpbmc+ID0gW107XG4gICAgICAgIGlmICghc2F2ZWREYXRhKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcGFyc2VkU2F2ZWREYXRhID0gSlNPTi5wYXJzZShzYXZlZERhdGEpO1xuICAgICAgICArK3NhdmVkRGF0YUluZGV4O1xuICAgICAgICBzYXZlZERhdGFJbmRleCA9IHNhdmVkRGF0YUluZGV4ID4gcGFyc2VkU2F2ZWREYXRhLmxlbmd0aCA/IHBhcnNlZFNhdmVkRGF0YS5sZW5ndGggOiBzYXZlZERhdGFJbmRleDtcbiAgICAgICAgY29kZUVkaXRFZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcbiAgICAgICAgY29kZUVkaXRBcGkgPSB0aGlzLmFwaTtcbiAgICAgICAgc2F2ZUNvZGVFZGl0TW9kYWwocGFyc2VkU2F2ZWREYXRhW3NhdmVkRGF0YUluZGV4XSk7XG4gICAgICAgIHRoaXMuc2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCArICctaW5kZXgnLCBzYXZlZERhdGFJbmRleC50b1N0cmluZygpKTtcbiAgICB9XG5cbiAgICBlZGl0SFRNTCgpIHtcbiAgICAgICAgbGV0IGNvbnRlbnQgPSB0aGlzLmdldEVkaXRvckNvbnRlbnQoKTtcbiAgICAgICAgbGV0IG1vZGFsID0gdGhpcy5jcmVhdGVIVE1MRWRpdE1vZGFsKGNvbnRlbnQpO1xuICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdib2R5JykuYXBwZW5kQ2hpbGQobW9kYWwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlSFRNTEVkaXRNb2RhbChjb250ZW50OiBzdHJpbmcpIHtcbiAgICAgICAgbGV0IGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBjb250YWluZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmNvbnRhaW5lckNsYXNzKTtcbiAgICAgICAgbGV0IG1vZGFsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIG1vZGFsLmNsYXNzTGlzdC5hZGQodGhpcy5tb2RhbENsYXNzKTtcbiAgICAgICAgbGV0IGVkaXRvckNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICBlZGl0b3JDb250YWluZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmVkaXRvckNsYXNzKTtcbiAgICAgICAgdmFyIG1vbmFjb0VkaXRvciA9IG1vbmFjby5lZGl0b3IuY3JlYXRlKGVkaXRvckNvbnRhaW5lciwge1xuICAgICAgICAgICAgdmFsdWU6IGNvbnRlbnQsXG4gICAgICAgICAgICBsYW5ndWFnZTogJ2h0bWwnLFxuICAgICAgICAgICAgYXV0b21hdGljTGF5b3V0OiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgY29kZUVkaXRFZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcbiAgICAgICAgY29kZUVkaXRBcGkgPSB0aGlzLmFwaTtcblxuICAgICAgICBsZXQgYnV0dG9uQ29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGxldCBjYW5jZWxCdXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKTtcbiAgICAgICAgbGV0IHNhdmVCdXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKTtcbiAgICAgICAgY2FuY2VsQnV0dG9uLmlubmVyVGV4dCA9IGVkaXRvckpTSTE4bkRpY3Rpb25uYXJ5Lm1lc3NhZ2VzLnRvb2xzLmNvZGVFZGl0WydDYW5jZWwnXTtcbiAgICAgICAgc2F2ZUJ1dHRvbi5pbm5lclRleHQgPSBlZGl0b3JKU0kxOG5EaWN0aW9ubmFyeS5tZXNzYWdlcy50b29scy5jb2RlRWRpdFsnU2F2ZSddO1xuICAgICAgICBjYW5jZWxCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjbG9zZUNvZGVFZGl0TW9kYWwsIHRydWUpO1xuICAgICAgICBzYXZlQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgICAnY2xpY2snLFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBjb250ZW50ID0gbW9uYWNvRWRpdG9yLmdldFZhbHVlKCk7XG4gICAgICAgICAgICAgICAgc2F2ZUNvZGVFZGl0TW9kYWwoY29udGVudCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdHJ1ZVxuICAgICAgICApO1xuICAgICAgICBidXR0b25Db250YWluZXIuYXBwZW5kQ2hpbGQoY2FuY2VsQnV0dG9uKTtcbiAgICAgICAgYnV0dG9uQ29udGFpbmVyLmFwcGVuZENoaWxkKHNhdmVCdXR0b24pO1xuICAgICAgICBidXR0b25Db250YWluZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmJ1dHRvbkNsYXNzKTtcblxuICAgICAgICBtb2RhbC5hcHBlbmRDaGlsZChlZGl0b3JDb250YWluZXIpO1xuICAgICAgICBtb2RhbC5hcHBlbmRDaGlsZChidXR0b25Db250YWluZXIpO1xuICAgICAgICBjb250YWluZXIuYXBwZW5kQ2hpbGQobW9kYWwpO1xuICAgICAgICByZXR1cm4gY29udGFpbmVyO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2F2ZWRFZGl0b3JDb250ZW50KG5hbWU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0obmFtZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRTYXZlZEVkaXRvckNvbnRlbnQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKG5hbWUsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEVkaXRvckNvbnRlbnQoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGN1cnJlbnRFZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcbiAgICAgICAgbGV0IGVkaXRvckJsb2NrcyA9IGN1cnJlbnRFZGl0b3IucXVlcnlTZWxlY3RvckFsbCgnLmNvZGV4LWVkaXRvcl9fcmVkYWN0b3IgLmNlLXBhcmFncmFwaCcpO1xuICAgICAgICBsZXQgY29udGVudCA9ICcnO1xuICAgICAgICBlZGl0b3JCbG9ja3MuZm9yRWFjaCgoYmxvY2spID0+IHtcbiAgICAgICAgICAgIGxldCBjbG9zaW5nVGFnID0gJzwvJyArIGJsb2NrLmNoaWxkcmVuWzBdPy50YWdOYW1lLnRvTG93ZXJDYXNlKCkgKyAnPic7XG4gICAgICAgICAgICBsZXQgcmVnZXhwID0gLygoPFxcLylcXHcrKD4pKSg/IVtcXHNcXFNdKigoPFxcLylcXHcrKD4pKVtcXHNcXFNdKiQpL2k7XG4gICAgICAgICAgICBsZXQgbGFzdENvbnRlbnRDbG9zaW5nVGFnID0gY29udGVudC5tYXRjaChyZWdleHApID8gY29udGVudC5tYXRjaChyZWdleHApWzBdIDogJyc7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgKGJsb2NrLmNoaWxkcmVuWzBdPy50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICd1bCcgfHwgYmxvY2suY2hpbGRyZW5bMF0/LnRhZ05hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ29sJykgJiZcbiAgICAgICAgICAgICAgICBsYXN0Q29udGVudENsb3NpbmdUYWcgPT09IGNsb3NpbmdUYWdcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQgPSBjb250ZW50LnN1YnN0cmluZygwLCBjb250ZW50Lmxlbmd0aCAtIGNsb3NpbmdUYWcubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBjb250ZW50ICs9IGJsb2NrLmlubmVySFRNTC5zdWJzdHJpbmcoY2xvc2luZ1RhZy5yZXBsYWNlKCcvJywgJycpLmxlbmd0aCwgYmxvY2suaW5uZXJIVE1MLmxlbmd0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQgKz0gYmxvY2suaW5uZXJIVE1MO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMuRm9ybWF0SFRNTFN0cmluZ0luZGVudGF0aW9uKGNvbnRlbnQpO1xuICAgIH1cblxuICAgIC8vIEFkYXB0ZWQgRlJPTSBqc2ZpZGRsZSBoZXJlOiBodHRwczovL2pzZmlkZGxlLm5ldC9idWtzeS9yeHVjZzFnZC9cbiAgICBwcml2YXRlIEZvcm1hdEhUTUxTdHJpbmdJbmRlbnRhdGlvbihjb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBsZXQgc3RyaXBXaGl0ZVNwYWNlcyA9IHRydWU7XG4gICAgICAgIGxldCBzdHJpcEVtcHR5TGluZXMgPSB0cnVlO1xuICAgICAgICBjb25zdCB3aGl0ZXNwYWNlID0gJyAnLnJlcGVhdCgyKTsgLy8gRGVmYXVsdCBpbmRlbnRpbmcgNCB3aGl0ZXNwYWNlc1xuICAgICAgICBsZXQgY3VycmVudEluZGVudCA9IDA7XG4gICAgICAgIGNvbnN0IG5ld2xpbmVDaGFyID0gJ1xcbic7XG4gICAgICAgIGxldCBwcmV2Q2hhciA9IG51bGw7XG4gICAgICAgIGxldCBjaGFyID0gbnVsbDtcbiAgICAgICAgbGV0IG5leHRDaGFyID0gbnVsbDtcblxuICAgICAgICBsZXQgcmVzdWx0ID0gJyc7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDA7IHBvcyA8PSBjb2RlLmxlbmd0aDsgcG9zKyspIHtcbiAgICAgICAgICAgIHByZXZDaGFyID0gY2hhcjtcbiAgICAgICAgICAgIGNoYXIgPSBjb2RlLnN1YnN0cihwb3MsIDEpO1xuICAgICAgICAgICAgbmV4dENoYXIgPSBjb2RlLnN1YnN0cihwb3MgKyAxLCAxKTtcblxuICAgICAgICAgICAgY29uc3QgaXNCclRhZyA9IGNvZGUuc3Vic3RyKHBvcywgNCkgPT09ICc8YnI+JztcbiAgICAgICAgICAgIGNvbnN0IGlzT3BlbmluZ1RhZyA9IGNoYXIgPT09ICc8JyAmJiBuZXh0Q2hhciAhPT0gJy8nICYmICFpc0JyVGFnO1xuICAgICAgICAgICAgY29uc3QgaXNDbG9zaW5nVGFnID0gY2hhciA9PT0gJzwnICYmIG5leHRDaGFyID09PSAnLycgJiYgIWlzQnJUYWc7XG4gICAgICAgICAgICBjb25zdCBpc1RhZ0VuZCA9IHByZXZDaGFyID09PSAnPicgJiYgY2hhciAhPT0gJzwnICYmIGN1cnJlbnRJbmRlbnQgPiAwO1xuICAgICAgICAgICAgY29uc3QgaXNUYWdOZXh0ID1cbiAgICAgICAgICAgICAgICAhaXNCclRhZyAmJiAhaXNPcGVuaW5nVGFnICYmICFpc0Nsb3NpbmdUYWcgJiYgaXNUYWdFbmQgJiYgY29kZS5zdWJzdHIocG9zLCBjb2RlLnN1YnN0cihwb3MpLmluZGV4T2YoJzwnKSkudHJpbSgpID09PSAnJztcbiAgICAgICAgICAgIGlmIChpc0JyVGFnKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgb3BlbmluZyB0YWcsIGFkZCBuZXdsaW5lIGNoYXJhY3RlciBhbmQgaW5kZW50aW9uXG4gICAgICAgICAgICAgICAgcmVzdWx0ICs9IG5ld2xpbmVDaGFyICsgd2hpdGVzcGFjZS5yZXBlYXQoY3VycmVudEluZGVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNPcGVuaW5nVGFnKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgb3BlbmluZyB0YWcsIGFkZCBuZXdsaW5lIGNoYXJhY3RlciBhbmQgaW5kZW50aW9uXG4gICAgICAgICAgICAgICAgcmVzdWx0ICs9IChwb3MgPT09IDAgPyAnJyA6IG5ld2xpbmVDaGFyKSArIHdoaXRlc3BhY2UucmVwZWF0KGN1cnJlbnRJbmRlbnQpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRJbmRlbnQrKztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGlmIENsb3NpbmcgdGFnLCBhZGQgbmV3bGluZSBhbmQgaW5kZW50aW9uXG4gICAgICAgICAgICBlbHNlIGlmIChpc0Nsb3NpbmdUYWcpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGVyZSdyZSBtb3JlIGNsb3NpbmcgdGFncyB0aGFuIG9wZW5pbmdcbiAgICAgICAgICAgICAgICBpZiAoLS1jdXJyZW50SW5kZW50IDwgMCkgY3VycmVudEluZGVudCA9IDA7XG4gICAgICAgICAgICAgICAgcmVzdWx0ICs9IG5ld2xpbmVDaGFyICsgd2hpdGVzcGFjZS5yZXBlYXQoY3VycmVudEluZGVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyByZW1vdmUgbXVsdGlwbGUgd2hpdGVzcGFjZXNcbiAgICAgICAgICAgIGVsc2UgaWYgKHN0cmlwV2hpdGVTcGFjZXMgPT09IHRydWUgJiYgY2hhciA9PT0gJyAnICYmIG5leHRDaGFyID09PSAnICcpIGNoYXIgPSAnJztcbiAgICAgICAgICAgIC8vIHJlbW92ZSBlbXB0eSBsaW5lc1xuICAgICAgICAgICAgZWxzZSBpZiAoc3RyaXBFbXB0eUxpbmVzID09PSB0cnVlICYmIGNoYXIgPT09IG5ld2xpbmVDaGFyKSB7XG4gICAgICAgICAgICAgICAgLy9kZWJ1Z2dlcjtcbiAgICAgICAgICAgICAgICBpZiAoY29kZS5zdWJzdHIocG9zLCBjb2RlLnN1YnN0cihwb3MpLmluZGV4T2YoJzwnKSkudHJpbSgpID09PSAnJykgY2hhciA9ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzVGFnRW5kICYmICFpc1RhZ05leHQpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgKz0gbmV3bGluZUNoYXIgKyB3aGl0ZXNwYWNlLnJlcGVhdChjdXJyZW50SW5kZW50KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmVzdWx0ICs9IGNoYXI7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG5cbnZhciBjb2RlRWRpdEVkaXRvciA9IG51bGw7XG52YXIgY29kZUVkaXRBcGkgPSBudWxsO1xuXG5mdW5jdGlvbiBjbG9zZUNvZGVFZGl0TW9kYWwoKSB7XG4gICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmNvZGVFZGl0X19jb250YWluZXInKT8ucmVtb3ZlKCk7XG59XG5cbmZ1bmN0aW9uIHNhdmVDb2RlRWRpdE1vZGFsKGNvbnRlbnQpIHtcbiAgICBsZXQgdG1wRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRtcEVsZW1lbnQuaW5uZXJIVE1MID0gY29udGVudDtcblxuICAgIGNvZGVFZGl0QXBpLmJsb2Nrcy5jbGVhcigpO1xuICAgIGxldCBwYXJhZ3JhcGggPSBjb2RlRWRpdEVkaXRvci5xdWVyeVNlbGVjdG9yQWxsKCcuY2UtcGFyYWdyYXBoJyk7XG4gICAgbGV0IGkgPSAwO1xuXG4gICAgd2hpbGUgKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQpIHtcbiAgICAgICAgaWYgKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAndWwnIHx8IHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnb2wnKSB7XG4gICAgICAgICAgICBsZXQgbGlzdE1hcmtlciA9IDE7XG4gICAgICAgICAgICBsZXQgcHJldmlvdXNDb250YWluZXJXYXNPbCA9IGZhbHNlO1xuICAgICAgICAgICAgd2hpbGUgKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQuZmlyc3RFbGVtZW50Q2hpbGQpIHtcbiAgICAgICAgICAgICAgICBsZXQgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLnRhZ05hbWUpO1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZCh0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZpcnN0RWxlbWVudENoaWxkLmNsb25lTm9kZSh0cnVlKSk7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5lci50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdvbCcpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFwcmV2aW91c0NvbnRhaW5lcldhc09sKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0TWFya2VyID0gMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb250YWluZXIuZmlyc3RFbGVtZW50Q2hpbGQuc2V0QXR0cmlidXRlKCd2YWx1ZScsIGxpc3RNYXJrZXIudG9TdHJpbmcoKSk7XG4gICAgICAgICAgICAgICAgICAgIHByZXZpb3VzQ29udGFpbmVyV2FzT2wgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICArK2xpc3RNYXJrZXI7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNDb250YWluZXJXYXNPbCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaSA+PSBwYXJhZ3JhcGgubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvZGVFZGl0QXBpLmJsb2Nrcy5pbnNlcnQoKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRtcFBhcmFncmFwaCA9IGNvZGVFZGl0RWRpdG9yLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jZS1wYXJhZ3JhcGgnKTtcbiAgICAgICAgICAgICAgICAgICAgdG1wUGFyYWdyYXBoW3RtcFBhcmFncmFwaC5sZW5ndGggLSAxXS5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgICAgICAgICAgICAgdG1wUGFyYWdyYXBoW3RtcFBhcmFncmFwaC5sZW5ndGggLSAxXS5hcHBlbmRDaGlsZChjb250YWluZXIpO1xuICAgICAgICAgICAgICAgICAgICB0bXBQYXJhZ3JhcGhbdG1wUGFyYWdyYXBoLmxlbmd0aCAtIDFdLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbkVkaXRMaXN0LCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBwYXJhZ3JhcGhbaV0uaW5uZXJIVE1MID0gJyc7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFncmFwaFtpXS5hcHBlbmRDaGlsZChjb250YWluZXIpO1xuICAgICAgICAgICAgICAgICAgICBwYXJhZ3JhcGhbaV0uYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uRWRpdExpc3QsIHRydWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZpcnN0RWxlbWVudENoaWxkLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgICsraTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChpID49IHBhcmFncmFwaC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBjb2RlRWRpdEFwaS5ibG9ja3MuaW5zZXJ0KCk7XG4gICAgICAgICAgICAgICAgbGV0IHRtcFBhcmFncmFwaCA9IGNvZGVFZGl0RWRpdG9yLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jZS1wYXJhZ3JhcGgnKTtcbiAgICAgICAgICAgICAgICB0bXBQYXJhZ3JhcGhbdG1wUGFyYWdyYXBoLmxlbmd0aCAtIDFdLmlubmVySFRNTCA9ICcnO1xuICAgICAgICAgICAgICAgIHRtcFBhcmFncmFwaFt0bXBQYXJhZ3JhcGgubGVuZ3RoIC0gMV0uYXBwZW5kQ2hpbGQodG1wRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZC5jbG9uZU5vZGUodHJ1ZSkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwYXJhZ3JhcGhbaV0uaW5uZXJIVE1MID0gJyc7XG4gICAgICAgICAgICAgICAgcGFyYWdyYXBoW2ldLmFwcGVuZENoaWxkKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQuY2xvbmVOb2RlKHRydWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICsraTtcbiAgICAgICAgfVxuICAgICAgICB0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLnJlbW92ZSgpO1xuICAgIH1cblxuICAgIGNsb3NlQ29kZUVkaXRNb2RhbCgpO1xufVxuXG5mdW5jdGlvbiBvbkVkaXRMaXN0KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgbGV0IGZvY3VzZWRCbG9jayA9IDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQ7XG4gICAgaWYgKExJU1RfRURJVF9LRVlfQ09ERVMuaW5kZXhPZihldmVudC5jb2RlKSA+IC0xKSB7XG4gICAgICAgIGlmIChldmVudC5jb2RlID09PSAnQmFja3NwYWNlJykge1xuICAgICAgICAgICAgaWYgKGZvY3VzZWRCbG9jay5pbm5lclRleHQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgbGV0IGN1cnJlbnRQYXJhZ3JhcGggPSBjb2RlRWRpdEVkaXRvci5xdWVyeVNlbGVjdG9yQWxsKCcuY2UtcGFyYWdyYXBoJylbY29kZUVkaXRBcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCldO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGguaW5uZXJIVE1MID0gJyc7XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdwJykpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGgucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uRWRpdExpc3QsIHRydWUpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoY3VycmVudFBhcmFncmFwaC5xdWVyeVNlbGVjdG9yKCdwJyksIDAsIGN1cnJlbnRQYXJhZ3JhcGgucXVlcnlTZWxlY3RvcigncCcpLCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGlmIChmb2N1c2VkQmxvY2suaW5uZXJUZXh0ICE9PSAnJykge1xuICAgICAgICAgICAgICAgIGNvZGVFZGl0QXBpLmJsb2Nrcy5pbnNlcnQoJ3BhcmFncmFwaCcsIGNvZGVFZGl0QXBpLmJsb2Nrcy5nZXRDdXJyZW50QmxvY2tJbmRleCgpKTtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudEJsb2NrID0gY29kZUVkaXRFZGl0b3IucXVlcnlTZWxlY3RvckFsbCgnLmNlLWJsb2NrJylbY29kZUVkaXRBcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCldO1xuICAgICAgICAgICAgICAgIGxldCBwcmV2aW91c0Jsb2NrID0gY29kZUVkaXRFZGl0b3IucXVlcnlTZWxlY3RvckFsbCgnLmNlLWJsb2NrJylbY29kZUVkaXRBcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCkgLSAxXTtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudFBhcmFncmFwaCA9IGN1cnJlbnRCbG9jay5xdWVyeVNlbGVjdG9yKCcuY2UtcGFyYWdyYXBoJyk7XG4gICAgICAgICAgICAgICAgbGV0IGxpc3RFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChwcmV2aW91c0Jsb2NrLnF1ZXJ5U2VsZWN0b3IoJy5jZS1wYXJhZ3JhcGgnKS5maXJzdEVsZW1lbnRDaGlsZC50YWdOYW1lKTtcbiAgICAgICAgICAgICAgICBsaXN0RWxlbWVudC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaScpKTtcbiAgICAgICAgICAgICAgICBpZiAobGlzdEVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnb2wnKSB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3RFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAocGFyc2VJbnQocHJldmlvdXNCbG9jay5xdWVyeVNlbGVjdG9yKCdsaScpLmdldEF0dHJpYnV0ZSgndmFsdWUnKSkgKyAxKS50b1N0cmluZygpXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGguYXBwZW5kQ2hpbGQobGlzdEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGguYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uRWRpdExpc3QsIHRydWUpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoY3VycmVudFBhcmFncmFwaC5xdWVyeVNlbGVjdG9yKCdsaScpLCAwLCBjdXJyZW50UGFyYWdyYXBoLnF1ZXJ5U2VsZWN0b3IoJ2xpJyksIDApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudFBhcmFncmFwaCA9IGNvZGVFZGl0RWRpdG9yLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jZS1wYXJhZ3JhcGgnKVtjb2RlRWRpdEFwaS5ibG9ja3MuZ2V0Q3VycmVudEJsb2NrSW5kZXgoKV07XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgICAgICAgICBjdXJyZW50UGFyYWdyYXBoLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3AnKSk7XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgb25FZGl0TGlzdCwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0U2VsZWN0aW9uKCkuc2V0QmFzZUFuZEV4dGVudChjdXJyZW50UGFyYWdyYXBoLnF1ZXJ5U2VsZWN0b3IoJ3AnKSwgMCwgY3VycmVudFBhcmFncmFwaC5xdWVyeVNlbGVjdG9yKCdwJyksIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
266
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9wYXVsaW5lL0RvY3VtZW50cy93b3Jrc3BhY2Uvd2l6aS1ibG9jay9wcm9qZWN0cy93aXppLWJsb2NrL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zaGFyZWQvY29tcG9uZW50cy9lZGl0b3Jqcy90b29scy9wYXJhZ3JhcGgvdG9vbC10eXBlL3RleHQtZWRpdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFbkYsTUFBTSxPQUFnQixlQUFnQixTQUFRLGtCQUFrQjtJQUFoRTs7UUFLSSxtQkFBYyxHQUFHLHFCQUFxQixDQUFDO1FBQ3ZDLGVBQVUsR0FBRyw0QkFBNEIsQ0FBQztRQUMxQyxnQkFBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ25ELGdCQUFXLEdBQUcscUNBQXFDLENBQUM7SUF5S3hELENBQUM7SUF2S0csSUFBSTtRQUNBLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3JDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEQsSUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDO1lBQ2pFLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUM7WUFDNUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxD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aFN0eWxlVG9vbCB9IGZyb20gJy4vcGFyYWdyYXBoLXN0eWxlLXRvb2wuY29tcG9uZW50JztcbmltcG9ydCAqIGFzIG1vbmFjbyBmcm9tICdtb25hY28tZWRpdG9yJztcbmltcG9ydCB7IExJU1RfRURJVF9LRVlfQ09ERVMgfSBmcm9tICcuLi8uLi91dGlscy9jb2xvcnMuY29tcG9uZW50JztcbmltcG9ydCB7IGVkaXRvckpTSTE4bkRpY3Rpb25uYXJ5IH0gZnJvbSAnLi4vLi4vdXRpbHMvZWRpdG9yanMtdHJhbnNsYXRpb24uc2VydmljZSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUZXh0RWRpdGlvblRvb2wgZXh0ZW5kcyBQYXJhZ3JhcGhTdHlsZVRvb2wge1xuICAgIG5vZGVzOiB7IGJ1dHRvbjogSFRNTEJ1dHRvbkVsZW1lbnQgfTtcblxuICAgIENTUzogYW55O1xuXG4gICAgY29udGFpbmVyQ2xhc3MgPSAnY29kZUVkaXRfX2NvbnRhaW5lcic7XG4gICAgbW9kYWxDbGFzcyA9ICdjb2RlRWRpdF9fY29udGFpbmVyX19tb2RhbCc7XG4gICAgZWRpdG9yQ2xhc3MgPSAnY29kZUVkaXRfX2NvbnRhaW5lcl9fbW9kYWxfX2VkaXRvcic7XG4gICAgYnV0dG9uQ2xhc3MgPSAnY29kZUVkaXRfX2NvbnRhaW5lcl9fbW9kYWxfX2J1dHRvbnMnO1xuXG4gICAgdW5kbygpIHtcbiAgICAgICAgbGV0IGVkaXRvciA9IHRoaXMuZmluZFBhcmVudEVkaXRvcigpO1xuICAgICAgICBsZXQgc2F2ZWREYXRhID0gdGhpcy5nZXRTYXZlZEVkaXRvckNvbnRlbnQoZWRpdG9yLmlkKTtcbiAgICAgICAgbGV0IHNhdmVkRGF0YUluZGV4ID0gdGhpcy5nZXRTYXZlZEVkaXRvckNvbnRlbnQoZWRpdG9yLmlkICsgJy1pbmRleCcpXG4gICAgICAgICAgICA/IHBhcnNlSW50KHRoaXMuZ2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCArICctaW5kZXgnKSlcbiAgICAgICAgICAgIDogLTE7XG4gICAgICAgIGxldCBwYXJzZWRTYXZlZERhdGE6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgICAgICAgaWYgKCFzYXZlZERhdGEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBwYXJzZWRTYXZlZERhdGEgPSBKU09OLnBhcnNlKHNhdmVkRGF0YSk7XG4gICAgICAgIC0tc2F2ZWREYXRhSW5kZXg7XG4gICAgICAgIHNhdmVkRGF0YUluZGV4ID0gc2F2ZWREYXRhSW5kZXggPCAwID8gMCA6IHNhdmVkRGF0YUluZGV4O1xuICAgICAgICBjb2RlRWRpdEVkaXRvciA9IHRoaXMuZmluZFBhcmVudEVkaXRvcigpO1xuICAgICAgICBjb2RlRWRpdEFwaSA9IHRoaXMuYXBpO1xuICAgICAgICBzYXZlQ29kZUVkaXRNb2RhbChwYXJzZWRTYXZlZERhdGFbc2F2ZWREYXRhSW5kZXhdKTtcbiAgICAgICAgdGhpcy5zZXRTYXZlZEVkaXRvckNvbnRlbnQoZWRpdG9yLmlkICsgJy1pbmRleCcsIHNhdmVkRGF0YUluZGV4LnRvU3RyaW5nKCkpO1xuICAgIH1cblxuICAgIHJlZG8oKSB7XG4gICAgICAgIGxldCBlZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcblxuICAgICAgICBsZXQgc2F2ZWREYXRhID0gdGhpcy5nZXRTYXZlZEVkaXRvckNvbnRlbnQoZWRpdG9yLmlkKTtcbiAgICAgICAgbGV0IHNhdmVkRGF0YUluZGV4ID0gdGhpcy5nZXRTYXZlZEVkaXRvckNvbnRlbnQoZWRpdG9yLmlkICsgJy1pbmRleCcpXG4gICAgICAgICAgICA/IHBhcnNlSW50KHRoaXMuZ2V0U2F2ZWRFZGl0b3JDb250ZW50KGVkaXRvci5pZCArICctaW5kZXgnKSlcbiAgICAgICAgICAgIDogLTE7XG4gICAgICAgIGxldCBwYXJzZWRTYXZlZERhdGE6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgICAgICAgaWYgKCFzYXZlZERhdGEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBwYXJzZWRTYXZlZERhdGEgPSBKU09OLnBhcnNlKHNhdmVkRGF0YSk7XG4gICAgICAgICsrc2F2ZWREYXRhSW5kZXg7XG4gICAgICAgIHNhdmVkRGF0YUluZGV4ID0gc2F2ZWREYXRhSW5kZXggPiBwYXJzZWRTYXZlZERhdGEubGVuZ3RoID8gcGFyc2VkU2F2ZWREYXRhLmxlbmd0aCA6IHNhdmVkRGF0YUluZGV4O1xuICAgICAgICBjb2RlRWRpdEVkaXRvciA9IHRoaXMuZmluZFBhcmVudEVkaXRvcigpO1xuICAgICAgICBjb2RlRWRpdEFwaSA9IHRoaXMuYXBpO1xuICAgICAgICBzYXZlQ29kZUVkaXRNb2RhbChwYXJzZWRTYXZlZERhdGFbc2F2ZWREYXRhSW5kZXhdKTtcbiAgICAgICAgdGhpcy5zZXRTYXZlZEVkaXRvckNvbnRlbnQoZWRpdG9yLmlkICsgJy1pbmRleCcsIHNhdmVkRGF0YUluZGV4LnRvU3RyaW5nKCkpO1xuICAgIH1cblxuICAgIGVkaXRIVE1MKCkge1xuICAgICAgICBsZXQgY29udGVudCA9IHRoaXMuZ2V0RWRpdG9yQ29udGVudCgpO1xuICAgICAgICB0aGlzLmNyZWF0ZUhUTUxFZGl0TW9kYWwoY29udGVudCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVIVE1MRWRpdE1vZGFsKGNvbnRlbnQ6IHN0cmluZykge1xuICAgICAgICBsZXQgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKHRoaXMuY29udGFpbmVyQ2xhc3MpO1xuICAgICAgICBsZXQgbW9kYWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgbW9kYWwuY2xhc3NMaXN0LmFkZCh0aGlzLm1vZGFsQ2xhc3MpO1xuICAgICAgICBsZXQgZWRpdG9yQ29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIGVkaXRvckNvbnRhaW5lci5jbGFzc0xpc3QuYWRkKHRoaXMuZWRpdG9yQ2xhc3MpO1xuICAgICAgICBjb2RlRWRpdEVkaXRvciA9IHRoaXMuZmluZFBhcmVudEVkaXRvcigpO1xuICAgICAgICBjb2RlRWRpdEFwaSA9IHRoaXMuYXBpO1xuXG4gICAgICAgIGxldCBidXR0b25Db250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgbGV0IGNhbmNlbEJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpO1xuICAgICAgICBsZXQgc2F2ZUJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpO1xuICAgICAgICBjYW5jZWxCdXR0b24uaW5uZXJUZXh0ID0gZWRpdG9ySlNJMThuRGljdGlvbm5hcnkubWVzc2FnZXMudG9vbHMuY29kZUVkaXRbJ0NhbmNlbCddO1xuICAgICAgICBzYXZlQnV0dG9uLmlubmVyVGV4dCA9IGVkaXRvckpTSTE4bkRpY3Rpb25uYXJ5Lm1lc3NhZ2VzLnRvb2xzLmNvZGVFZGl0WydTYXZlJ107XG4gICAgICAgIGNhbmNlbEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNsb3NlQ29kZUVkaXRNb2RhbCwgdHJ1ZSk7XG4gICAgICAgIGJ1dHRvbkNvbnRhaW5lci5hcHBlbmRDaGlsZChjYW5jZWxCdXR0b24pO1xuICAgICAgICBidXR0b25Db250YWluZXIuY2xhc3NMaXN0LmFkZCh0aGlzLmJ1dHRvbkNsYXNzKTtcblxuICAgICAgICBtb2RhbC5hcHBlbmRDaGlsZChlZGl0b3JDb250YWluZXIpO1xuICAgICAgICBtb2RhbC5hcHBlbmRDaGlsZChidXR0b25Db250YWluZXIpO1xuICAgICAgICBjb250YWluZXIuYXBwZW5kQ2hpbGQobW9kYWwpO1xuICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdib2R5JykuYXBwZW5kQ2hpbGQoY29udGFpbmVyKTtcblxuICAgICAgICB2YXIgbW9uYWNvRWRpdG9yID0gbW9uYWNvLmVkaXRvci5jcmVhdGUoZWRpdG9yQ29udGFpbmVyLCB7XG4gICAgICAgICAgICB2YWx1ZTogY29udGVudCxcbiAgICAgICAgICAgIGxhbmd1YWdlOiAnaHRtbCcsXG4gICAgICAgIH0pOyAgICAgICAgXG4gICAgICAgIFxuICAgICAgICBzYXZlQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgICAnY2xpY2snLFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiaGVyZVwiKTtcbiAgICAgICAgICAgICAgICBsZXQgY29udGVudCA9IG1vbmFjb0VkaXRvci5nZXRWYWx1ZSgpO1xuICAgICAgICAgICAgICAgIHNhdmVDb2RlRWRpdE1vZGFsKGNvbnRlbnQpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRydWVcbiAgICAgICAgKTtcbiAgICAgICAgYnV0dG9uQ29udGFpbmVyLmFwcGVuZENoaWxkKHNhdmVCdXR0b24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U2F2ZWRFZGl0b3JDb250ZW50KG5hbWU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0obmFtZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRTYXZlZEVkaXRvckNvbnRlbnQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKG5hbWUsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEVkaXRvckNvbnRlbnQoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGN1cnJlbnRFZGl0b3IgPSB0aGlzLmZpbmRQYXJlbnRFZGl0b3IoKTtcbiAgICAgICAgbGV0IGVkaXRvckJsb2NrcyA9IGN1cnJlbnRFZGl0b3IucXVlcnlTZWxlY3RvckFsbCgnLmNvZGV4LWVkaXRvcl9fcmVkYWN0b3IgLmNlLXBhcmFncmFwaCcpO1xuICAgICAgICBsZXQgY29udGVudCA9ICcnO1xuICAgICAgICBlZGl0b3JCbG9ja3MuZm9yRWFjaCgoYmxvY2spID0+IHtcbiAgICAgICAgICAgIGxldCBjbG9zaW5nVGFnID0gJzwvJyArIGJsb2NrLmNoaWxkcmVuWzBdPy50YWdOYW1lLnRvTG93ZXJDYXNlKCkgKyAnPic7XG4gICAgICAgICAgICBsZXQgcmVnZXhwID0gLygoPFxcLylcXHcrKD4pKSg/IVtcXHNcXFNdKigoPFxcLylcXHcrKD4pKVtcXHNcXFNdKiQpL2k7XG4gICAgICAgICAgICBsZXQgbGFzdENvbnRlbnRDbG9zaW5nVGFnID0gY29udGVudC5tYXRjaChyZWdleHApID8gY29udGVudC5tYXRjaChyZWdleHApWzBdIDogJyc7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgKGJsb2NrLmNoaWxkcmVuWzBdPy50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICd1bCcgfHwgYmxvY2suY2hpbGRyZW5bMF0/LnRhZ05hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ29sJykgJiZcbiAgICAgICAgICAgICAgICBsYXN0Q29udGVudENsb3NpbmdUYWcgPT09IGNsb3NpbmdUYWdcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQgPSBjb250ZW50LnN1YnN0cmluZygwLCBjb250ZW50Lmxlbmd0aCAtIGNsb3NpbmdUYWcubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBjb250ZW50ICs9IGJsb2NrLmlubmVySFRNTC5zdWJzdHJpbmcoY2xvc2luZ1RhZy5yZXBsYWNlKCcvJywgJycpLmxlbmd0aCwgYmxvY2suaW5uZXJIVE1MLmxlbmd0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQgKz0gYmxvY2suaW5uZXJIVE1MO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMuRm9ybWF0SFRNTFN0cmluZ0luZGVudGF0aW9uKGNvbnRlbnQpO1xuICAgIH1cblxuICAgIC8vIEFkYXB0ZWQgRlJPTSBqc2ZpZGRsZSBoZXJlOiBodHRwczovL2pzZmlkZGxlLm5ldC9idWtzeS9yeHVjZzFnZC9cbiAgICBwcml2YXRlIEZvcm1hdEhUTUxTdHJpbmdJbmRlbnRhdGlvbihjb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBsZXQgc3RyaXBXaGl0ZVNwYWNlcyA9IHRydWU7XG4gICAgICAgIGxldCBzdHJpcEVtcHR5TGluZXMgPSB0cnVlO1xuICAgICAgICBjb25zdCB3aGl0ZXNwYWNlID0gJyAnLnJlcGVhdCgyKTsgLy8gRGVmYXVsdCBpbmRlbnRpbmcgNCB3aGl0ZXNwYWNlc1xuICAgICAgICBsZXQgY3VycmVudEluZGVudCA9IDA7XG4gICAgICAgIGNvbnN0IG5ld2xpbmVDaGFyID0gJ1xcbic7XG4gICAgICAgIGxldCBwcmV2Q2hhciA9IG51bGw7XG4gICAgICAgIGxldCBjaGFyID0gbnVsbDtcbiAgICAgICAgbGV0IG5leHRDaGFyID0gbnVsbDtcblxuICAgICAgICBsZXQgcmVzdWx0ID0gJyc7XG4gICAgICAgIGZvciAobGV0IHBvcyA9IDA7IHBvcyA8PSBjb2RlLmxlbmd0aDsgcG9zKyspIHtcbiAgICAgICAgICAgIHByZXZDaGFyID0gY2hhcjtcbiAgICAgICAgICAgIGNoYXIgPSBjb2RlLnN1YnN0cihwb3MsIDEpO1xuICAgICAgICAgICAgbmV4dENoYXIgPSBjb2RlLnN1YnN0cihwb3MgKyAxLCAxKTtcblxuICAgICAgICAgICAgY29uc3QgaXNCclRhZyA9IGNvZGUuc3Vic3RyKHBvcywgNCkgPT09ICc8YnI+JztcbiAgICAgICAgICAgIGNvbnN0IGlzT3BlbmluZ1RhZyA9IGNoYXIgPT09ICc8JyAmJiBuZXh0Q2hhciAhPT0gJy8nICYmICFpc0JyVGFnO1xuICAgICAgICAgICAgY29uc3QgaXNDbG9zaW5nVGFnID0gY2hhciA9PT0gJzwnICYmIG5leHRDaGFyID09PSAnLycgJiYgIWlzQnJUYWc7XG4gICAgICAgICAgICBjb25zdCBpc1RhZ0VuZCA9IHByZXZDaGFyID09PSAnPicgJiYgY2hhciAhPT0gJzwnICYmIGN1cnJlbnRJbmRlbnQgPiAwO1xuICAgICAgICAgICAgY29uc3QgaXNUYWdOZXh0ID1cbiAgICAgICAgICAgICAgICAhaXNCclRhZyAmJiAhaXNPcGVuaW5nVGFnICYmICFpc0Nsb3NpbmdUYWcgJiYgaXNUYWdFbmQgJiYgY29kZS5zdWJzdHIocG9zLCBjb2RlLnN1YnN0cihwb3MpLmluZGV4T2YoJzwnKSkudHJpbSgpID09PSAnJztcbiAgICAgICAgICAgIGlmIChpc0JyVGFnKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgb3BlbmluZyB0YWcsIGFkZCBuZXdsaW5lIGNoYXJhY3RlciBhbmQgaW5kZW50aW9uXG4gICAgICAgICAgICAgICAgcmVzdWx0ICs9IG5ld2xpbmVDaGFyICsgd2hpdGVzcGFjZS5yZXBlYXQoY3VycmVudEluZGVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNPcGVuaW5nVGFnKSB7XG4gICAgICAgICAgICAgICAgLy8gSWYgb3BlbmluZyB0YWcsIGFkZCBuZXdsaW5lIGNoYXJhY3RlciBhbmQgaW5kZW50aW9uXG4gICAgICAgICAgICAgICAgcmVzdWx0ICs9IChwb3MgPT09IDAgPyAnJyA6IG5ld2xpbmVDaGFyKSArIHdoaXRlc3BhY2UucmVwZWF0KGN1cnJlbnRJbmRlbnQpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRJbmRlbnQrKztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGlmIENsb3NpbmcgdGFnLCBhZGQgbmV3bGluZSBhbmQgaW5kZW50aW9uXG4gICAgICAgICAgICBlbHNlIGlmIChpc0Nsb3NpbmdUYWcpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGVyZSdyZSBtb3JlIGNsb3NpbmcgdGFncyB0aGFuIG9wZW5pbmdcbiAgICAgICAgICAgICAgICBpZiAoLS1jdXJyZW50SW5kZW50IDwgMCkgY3VycmVudEluZGVudCA9IDA7XG4gICAgICAgICAgICAgICAgcmVzdWx0ICs9IG5ld2xpbmVDaGFyICsgd2hpdGVzcGFjZS5yZXBlYXQoY3VycmVudEluZGVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyByZW1vdmUgbXVsdGlwbGUgd2hpdGVzcGFjZXNcbiAgICAgICAgICAgIGVsc2UgaWYgKHN0cmlwV2hpdGVTcGFjZXMgPT09IHRydWUgJiYgY2hhciA9PT0gJyAnICYmIG5leHRDaGFyID09PSAnICcpIGNoYXIgPSAnJztcbiAgICAgICAgICAgIC8vIHJlbW92ZSBlbXB0eSBsaW5lc1xuICAgICAgICAgICAgZWxzZSBpZiAoc3RyaXBFbXB0eUxpbmVzID09PSB0cnVlICYmIGNoYXIgPT09IG5ld2xpbmVDaGFyKSB7XG4gICAgICAgICAgICAgICAgLy9kZWJ1Z2dlcjtcbiAgICAgICAgICAgICAgICBpZiAoY29kZS5zdWJzdHIocG9zLCBjb2RlLnN1YnN0cihwb3MpLmluZGV4T2YoJzwnKSkudHJpbSgpID09PSAnJykgY2hhciA9ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzVGFnRW5kICYmICFpc1RhZ05leHQpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgKz0gbmV3bGluZUNoYXIgKyB3aGl0ZXNwYWNlLnJlcGVhdChjdXJyZW50SW5kZW50KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmVzdWx0ICs9IGNoYXI7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG5cbnZhciBjb2RlRWRpdEVkaXRvciA9IG51bGw7XG52YXIgY29kZUVkaXRBcGkgPSBudWxsO1xuXG5mdW5jdGlvbiBjbG9zZUNvZGVFZGl0TW9kYWwoKSB7XG4gICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmNvZGVFZGl0X19jb250YWluZXInKT8ucmVtb3ZlKCk7XG59XG5cbmZ1bmN0aW9uIHNhdmVDb2RlRWRpdE1vZGFsKGNvbnRlbnQpIHtcbiAgICBsZXQgdG1wRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRtcEVsZW1lbnQuaW5uZXJIVE1MID0gY29udGVudDtcblxuICAgIGNvZGVFZGl0QXBpLmJsb2Nrcy5jbGVhcigpO1xuICAgIGxldCBwYXJhZ3JhcGggPSBjb2RlRWRpdEVkaXRvci5xdWVyeVNlbGVjdG9yQWxsKCcuY2UtcGFyYWdyYXBoJyk7XG4gICAgbGV0IGkgPSAwO1xuXG4gICAgd2hpbGUgKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQpIHtcbiAgICAgICAgaWYgKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAndWwnIHx8IHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnb2wnKSB7XG4gICAgICAgICAgICBsZXQgbGlzdE1hcmtlciA9IDE7XG4gICAgICAgICAgICBsZXQgcHJldmlvdXNDb250YWluZXJXYXNPbCA9IGZhbHNlO1xuICAgICAgICAgICAgd2hpbGUgKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQuZmlyc3RFbGVtZW50Q2hpbGQpIHtcbiAgICAgICAgICAgICAgICBsZXQgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLnRhZ05hbWUpO1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZCh0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZpcnN0RWxlbWVudENoaWxkLmNsb25lTm9kZSh0cnVlKSk7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5lci50YWdOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdvbCcpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFwcmV2aW91c0NvbnRhaW5lcldhc09sKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0TWFya2VyID0gMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb250YWluZXIuZmlyc3RFbGVtZW50Q2hpbGQuc2V0QXR0cmlidXRlKCd2YWx1ZScsIGxpc3RNYXJrZXIudG9TdHJpbmcoKSk7XG4gICAgICAgICAgICAgICAgICAgIHByZXZpb3VzQ29udGFpbmVyV2FzT2wgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICArK2xpc3RNYXJrZXI7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNDb250YWluZXJXYXNPbCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaSA+PSBwYXJhZ3JhcGgubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvZGVFZGl0QXBpLmJsb2Nrcy5pbnNlcnQoKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHRtcFBhcmFncmFwaCA9IGNvZGVFZGl0RWRpdG9yLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jZS1wYXJhZ3JhcGgnKTtcbiAgICAgICAgICAgICAgICAgICAgdG1wUGFyYWdyYXBoW3RtcFBhcmFncmFwaC5sZW5ndGggLSAxXS5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgICAgICAgICAgICAgdG1wUGFyYWdyYXBoW3RtcFBhcmFncmFwaC5sZW5ndGggLSAxXS5hcHBlbmRDaGlsZChjb250YWluZXIpO1xuICAgICAgICAgICAgICAgICAgICB0bXBQYXJhZ3JhcGhbdG1wUGFyYWdyYXBoLmxlbmd0aCAtIDFdLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbkVkaXRMaXN0LCB0cnVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBwYXJhZ3JhcGhbaV0uaW5uZXJIVE1MID0gJyc7XG4gICAgICAgICAgICAgICAgICAgIHBhcmFncmFwaFtpXS5hcHBlbmRDaGlsZChjb250YWluZXIpO1xuICAgICAgICAgICAgICAgICAgICBwYXJhZ3JhcGhbaV0uYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uRWRpdExpc3QsIHRydWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZpcnN0RWxlbWVudENoaWxkLnJlbW92ZSgpO1xuICAgICAgICAgICAgICAgICsraTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChpID49IHBhcmFncmFwaC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBjb2RlRWRpdEFwaS5ibG9ja3MuaW5zZXJ0KCk7XG4gICAgICAgICAgICAgICAgbGV0IHRtcFBhcmFncmFwaCA9IGNvZGVFZGl0RWRpdG9yLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jZS1wYXJhZ3JhcGgnKTtcbiAgICAgICAgICAgICAgICB0bXBQYXJhZ3JhcGhbdG1wUGFyYWdyYXBoLmxlbmd0aCAtIDFdLmlubmVySFRNTCA9ICcnO1xuICAgICAgICAgICAgICAgIHRtcFBhcmFncmFwaFt0bXBQYXJhZ3JhcGgubGVuZ3RoIC0gMV0uYXBwZW5kQ2hpbGQodG1wRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZC5jbG9uZU5vZGUodHJ1ZSkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwYXJhZ3JhcGhbaV0uaW5uZXJIVE1MID0gJyc7XG4gICAgICAgICAgICAgICAgcGFyYWdyYXBoW2ldLmFwcGVuZENoaWxkKHRtcEVsZW1lbnQuZmlyc3RFbGVtZW50Q2hpbGQuY2xvbmVOb2RlKHRydWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICsraTtcbiAgICAgICAgfVxuICAgICAgICB0bXBFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLnJlbW92ZSgpO1xuICAgIH1cblxuICAgIGNsb3NlQ29kZUVkaXRNb2RhbCgpO1xufVxuXG5mdW5jdGlvbiBvbkVkaXRMaXN0KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgbGV0IGZvY3VzZWRCbG9jayA9IDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQ7XG4gICAgaWYgKExJU1RfRURJVF9LRVlfQ09ERVMuaW5kZXhPZihldmVudC5jb2RlKSA+IC0xKSB7XG4gICAgICAgIGlmIChldmVudC5jb2RlID09PSAnQmFja3NwYWNlJykge1xuICAgICAgICAgICAgaWYgKGZvY3VzZWRCbG9jay5pbm5lclRleHQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgbGV0IGN1cnJlbnRQYXJhZ3JhcGggPSBjb2RlRWRpdEVkaXRvci5xdWVyeVNlbGVjdG9yQWxsKCcuY2UtcGFyYWdyYXBoJylbY29kZUVkaXRBcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCldO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGguaW5uZXJIVE1MID0gJyc7XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdwJykpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGgucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uRWRpdExpc3QsIHRydWUpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoY3VycmVudFBhcmFncmFwaC5xdWVyeVNlbGVjdG9yKCdwJyksIDAsIGN1cnJlbnRQYXJhZ3JhcGgucXVlcnlTZWxlY3RvcigncCcpLCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGlmIChmb2N1c2VkQmxvY2suaW5uZXJUZXh0ICE9PSAnJykge1xuICAgICAgICAgICAgICAgIGNvZGVFZGl0QXBpLmJsb2Nrcy5pbnNlcnQoJ3BhcmFncmFwaCcsIGNvZGVFZGl0QXBpLmJsb2Nrcy5nZXRDdXJyZW50QmxvY2tJbmRleCgpKTtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudEJsb2NrID0gY29kZUVkaXRFZGl0b3IucXVlcnlTZWxlY3RvckFsbCgnLmNlLWJsb2NrJylbY29kZUVkaXRBcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCldO1xuICAgICAgICAgICAgICAgIGxldCBwcmV2aW91c0Jsb2NrID0gY29kZUVkaXRFZGl0b3IucXVlcnlTZWxlY3RvckFsbCgnLmNlLWJsb2NrJylbY29kZUVkaXRBcGkuYmxvY2tzLmdldEN1cnJlbnRCbG9ja0luZGV4KCkgLSAxXTtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudFBhcmFncmFwaCA9IGN1cnJlbnRCbG9jay5xdWVyeVNlbGVjdG9yKCcuY2UtcGFyYWdyYXBoJyk7XG4gICAgICAgICAgICAgICAgbGV0IGxpc3RFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChwcmV2aW91c0Jsb2NrLnF1ZXJ5U2VsZWN0b3IoJy5jZS1wYXJhZ3JhcGgnKS5maXJzdEVsZW1lbnRDaGlsZC50YWdOYW1lKTtcbiAgICAgICAgICAgICAgICBsaXN0RWxlbWVudC5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaScpKTtcbiAgICAgICAgICAgICAgICBpZiAobGlzdEVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnb2wnKSB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3RFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICd2YWx1ZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAocGFyc2VJbnQocHJldmlvdXNCbG9jay5xdWVyeVNlbGVjdG9yKCdsaScpLmdldEF0dHJpYnV0ZSgndmFsdWUnKSkgKyAxKS50b1N0cmluZygpXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGguYXBwZW5kQ2hpbGQobGlzdEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJhZ3JhcGguYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uRWRpdExpc3QsIHRydWUpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoY3VycmVudFBhcmFncmFwaC5xdWVyeVNlbGVjdG9yKCdsaScpLCAwLCBjdXJyZW50UGFyYWdyYXBoLnF1ZXJ5U2VsZWN0b3IoJ2xpJyksIDApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudFBhcmFncmFwaCA9IGNvZGVFZGl0RWRpdG9yLnF1ZXJ5U2VsZWN0b3JBbGwoJy5jZS1wYXJhZ3JhcGgnKVtjb2RlRWRpdEFwaS5ibG9ja3MuZ2V0Q3VycmVudEJsb2NrSW5kZXgoKV07XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgICAgICAgICBjdXJyZW50UGFyYWdyYXBoLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3AnKSk7XG4gICAgICAgICAgICAgICAgY3VycmVudFBhcmFncmFwaC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgb25FZGl0TGlzdCwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0U2VsZWN0aW9uKCkuc2V0QmFzZUFuZEV4dGVudChjdXJyZW50UGFyYWdyYXBoLnF1ZXJ5U2VsZWN0b3IoJ3AnKSwgMCwgY3VycmVudFBhcmFncmFwaC5xdWVyeVNlbGVjdG9yKCdwJyksIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -45,6 +45,7 @@ export class EditorJSTool {
|
|
|
45
45
|
}
|
|
46
46
|
resetUserSelection() {
|
|
47
47
|
var _a;
|
|
48
|
+
console.log('reset here');
|
|
48
49
|
if (this.selectedAnchorNode.nodeType === Node.ELEMENT_NODE && this.selectedAnchorNode.children) {
|
|
49
50
|
while (this.selectedAnchorNode.children &&
|
|
50
51
|
this.selectedAnchorNode.innerText === ((_a = this.selectedAnchorNode.children[0]) === null || _a === void 0 ? void 0 : _a.innerText) &&
|
|
@@ -68,6 +69,10 @@ export class EditorJSTool {
|
|
|
68
69
|
}
|
|
69
70
|
document.getSelection().setBaseAndExtent(this.selectedAnchorNode, this.anchorOffset, this.selectedFocusNode, this.focusOffset);
|
|
70
71
|
}
|
|
72
|
+
collapseSelection() {
|
|
73
|
+
let selection = this.getSelection();
|
|
74
|
+
document.getSelection().setBaseAndExtent(selection.anchorNode, 0, selection.anchorNode, 0);
|
|
75
|
+
}
|
|
71
76
|
findParentEditor() {
|
|
72
77
|
const selection = this.currentSelection ? this.currentSelection : this.getSelection();
|
|
73
78
|
return selection.anchorNode.parentElement.closest('.editorJs');
|
|
@@ -115,4 +120,4 @@ export function resetBlockFocus(parentEditor) {
|
|
|
115
120
|
containerToFocus.classList.remove('editorjs-focused');
|
|
116
121
|
}
|
|
117
122
|
}
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yanMtdG9vbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcGF1bGluZS9Eb2N1bWVudHMvd29ya3NwYWNlL3dpemktYmxvY2svcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvIiwic291cmNlcyI6WyJsaWIvc2hhcmVkL2NvbXBvbmVudHMvZWRpdG9yanMvdG9vbHMvdXRpbHMvZWRpdG9yanMtdG9vbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFdBQVc7Q0FNdkI7QUFFRCxNQUFNLE9BQU8sZUFBZTtDQUczQjtBQUVELE1BQU0sT0FBZ0IsWUFBWTtJQUFsQztRQUNJLGlCQUFZLEdBQW1CLElBQUksQ0FBQztRQUVwQyxtQkFBYyxHQUFHLHdCQUF3QixDQUFDO1FBSTFDLHVCQUFrQixHQUFTLElBQUksQ0FBQztRQUVoQyxzQkFBaUIsR0FBUyxJQUFJLENBQUM7UUFFL0IsaUJBQVksR0FBVyxDQUFDLENBQUMsQ0FBQztRQUUxQixnQkFBVyxHQUFXLENBQUMsQ0FBQyxDQUFDO1FBRXpCLHVCQUFrQixHQUFhLEtBQUssQ0FBQztRQUVyQyxtQkFBYyxHQUFXLDJCQUEyQixDQUFDO0lBaUZ6RCxDQUFDO0lBL0VHLFlBQVk7UUFDUixJQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLEVBQUU7WUFDdEIsT0FBTyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDaEM7YUFBTSxJQUFJLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxZQUFZLEVBQUU7WUFDL0IsT0FBTyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDbEM7YUFBTSxJQUFJLFFBQVEsSUFBSyxRQUFnQixDQUFDLFNBQVMsRUFBRTtZQUNoRCxPQUFRLFFBQWdCLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQztTQUN6RDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFF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QkFBa0IsQ0FBQyxFQUFFO1FBQ3pELGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQUN6RDtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgU3R5bGVPYmplY3Qge1xuICAgIHByb3BlcnR5OiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBkZWZhdWx0OiBzdHJpbmc7XG4gICAgaW5wdXQ/OiBzdHJpbmc7XG4gICAgY2xhc3M/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBBdHRyaWJ1dGVPYmplY3Qge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRWRpdG9ySlNUb29sIHtcbiAgICBwYXJlbnRFZGl0b3I6IEhUTUxEaXZFbGVtZW50ID0gbnVsbDtcblxuICAgIHRleHRDb250YWluZXJzID0gJ2gxLGgyLGgzLGg0LGg1LGg2LHAsbGknO1xuXG4gICAgY3VycmVudFNlbGVjdGlvbj86IFNlbGVjdGlvbjtcblxuICAgIHNlbGVjdGVkQW5jaG9yTm9kZTogTm9kZSA9IG51bGw7XG5cbiAgICBzZWxlY3RlZEZvY3VzTm9kZTogTm9kZSA9IG51bGw7XG5cbiAgICBhbmNob3JPZmZzZXQ6IG51bWJlciA9IC0xO1xuXG4gICAgZm9jdXNPZmZzZXQ6IG51bWJlciA9IC0xO1xuXG4gICAgaGFzU2VwYXJhdG9yQmVmb3JlPzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgc2VwYXJhdG9yQ2xhc3M6IHN0cmluZyA9ICdjZS1pbmxpbmUtdG9vbC0tc2VwYXJhdG9yJztcblxuICAgIGdldFNlbGVjdGlvbigpOiBTZWxlY3Rpb24ge1xuICAgICAgICBpZiAod2luZG93Py5nZXRTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJldHVybiB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZG9jdW1lbnQ/LmdldFNlbGVjdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LmdldFNlbGVjdGlvbigpO1xuICAgICAgICB9IGVsc2UgaWYgKGRvY3VtZW50ICYmIChkb2N1bWVudCBhcyBhbnkpLnNlbGVjdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIChkb2N1bWVudCBhcyBhbnkpLnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLnRleHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgZ2V0UmFuZ2VPYmplY3Qoc2VsZWN0aW9uT2JqZWN0OiBTZWxlY3Rpb24pOiBSYW5nZSB7XG4gICAgICAgIGlmIChzZWxlY3Rpb25PYmplY3QuZ2V0UmFuZ2VBdCkge1xuICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGlvbk9iamVjdC5nZXRSYW5nZUF0KDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGV0IHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtcbiAgICAgICAgICAgIHJhbmdlLnNldFN0YXJ0KHNlbGVjdGlvbk9iamVjdC5hbmNob3JOb2RlLnBhcmVudEVsZW1lbnQsIHNlbGVjdGlvbk9iamVjdC5hbmNob3JPZmZzZXQpO1xuICAgICAgICAgICAgcmFuZ2Uuc2V0RW5kKHNlbGVjdGlvbk9iamVjdC5mb2N1c05vZGUsIHNlbGVjdGlvbk9iamVjdC5mb2N1c09mZnNldCk7XG4gICAgICAgICAgICByZXR1cm4gcmFuZ2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzYXZlVXNlclNlbGVjdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdXJyZW50U2VsZWN0aW9uID0gdGhpcy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEFuY2hvck5vZGUgPSB0aGlzLmN1cnJlbnRTZWxlY3Rpb24uYW5jaG9yTm9kZTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZvY3VzTm9kZSA9IHRoaXMuY3VycmVudFNlbGVjdGlvbi5mb2N1c05vZGU7XG4gICAgICAgIHRoaXMuYW5jaG9yT2Zmc2V0ID0gdGhpcy5jdXJyZW50U2VsZWN0aW9uLmFuY2hvck9mZnNldDtcbiAgICAgICAgdGhpcy5mb2N1c09mZnNldCA9IHRoaXMuY3VycmVudFNlbGVjdGlvbi5mb2N1c09mZnNldDtcbiAgICB9XG5cbiAgICByZXNldFVzZXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQW5jaG9yTm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUgJiYgKDxIVE1MRWxlbWVudD50aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSkuY2hpbGRyZW4pIHtcbiAgICAgICAgICAgIHdoaWxlIChcbiAgICAgICAgICAgICAgICAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZHJlbiAmJlxuICAgICAgICAgICAgICAgICg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZEFuY2hvck5vZGUpLmlubmVyVGV4dCA9PT1cbiAgICAgICAgICAgICAgICAgICAgKDxIVE1MRWxlbWVudD4oPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZHJlblswXSk/LmlubmVyVGV4dCAmJlxuICAgICAgICAgICAgICAgICg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZEFuY2hvck5vZGUpLmNoaWxkcmVuLmxlbmd0aCA9PT0gMVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEFuY2hvck5vZGUgPSAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZHJlblswXTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRm9jdXNOb2RlID0gdGhpcy5zZWxlY3RlZEFuY2hvck5vZGU7XG4gICAgICAgICAgICAgICAgdGhpcy5hbmNob3JPZmZzZXQgPSAwO1xuICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNPZmZzZXQgPSAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMudGV4dENvbnRhaW5lcnMuc3BsaXQoJywnKS5pbmRleE9mKCg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZEFuY2hvck5vZGUpLnRhZ05hbWUudG9Mb3dlckNhc2UoKSkgPiAtMSkge1xuICAgICAgICAgICAgICAgIGxldCBjaGlsZFRleHROb2RlcyA9IHRoaXMuZ2V0VGV4dE5vZGVzKHRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKTtcbiAgICAgICAgICAgICAgICBsZXQgZm9jdXNOb2RlID1cbiAgICAgICAgICAgICAgICAgICAgY2hpbGRUZXh0Tm9kZXMubGVuZ3RoID4gMVxuICAgICAgICAgICAgICAgICAgICAgICAgPyAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZE5vZGVzW2NoaWxkVGV4dE5vZGVzLmxlbmd0aCAtIDFdXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZEFuY2hvck5vZGUpLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICAgICAgbGV0IGZvY3VzT2Zmc2V0ID0gY2hpbGRUZXh0Tm9kZXMubGVuZ3RoID4gMSA/IGNoaWxkVGV4dE5vZGVzLmxlbmd0aCA6IGNoaWxkVGV4dE5vZGVzWzBdLnRleHRDb250ZW50Lmxlbmd0aDtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSA9ICg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZEFuY2hvck5vZGUpLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICAgICAgdGhpcy5hbmNob3JPZmZzZXQgPSAwO1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRGb2N1c05vZGUgPSBmb2N1c05vZGU7XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c09mZnNldCA9IGZvY3VzT2Zmc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRvY3VtZW50LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQodGhpcy5zZWxlY3RlZEFuY2hvck5vZGUsIHRoaXMuYW5jaG9yT2Zmc2V0LCB0aGlzLnNlbGVjdGVkRm9jdXNOb2RlLCB0aGlzLmZvY3VzT2Zmc2V0KTtcbiAgICB9XG5cbiAgICBmaW5kUGFyZW50RWRpdG9yKCk6IEhUTUxEaXZFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbjogU2VsZWN0aW9uIHwgbnVsbCA9IHRoaXMuY3VycmVudFNlbGVjdGlvbiA/IHRoaXMuY3VycmVudFNlbGVjdGlvbiA6IHRoaXMuZ2V0U2VsZWN0aW9uKCk7XG4gICAgICAgIHJldHVybiBzZWxlY3Rpb24uYW5jaG9yTm9kZS5wYXJlbnRFbGVtZW50LmNsb3Nlc3QoJy5lZGl0b3JKcycpO1xuICAgIH1cblxuICAgIGNsZWFyKCkge1xuICAgICAgICByZXNldEJsb2NrRm9jdXModGhpcy5wYXJlbnRFZGl0b3IpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VGV4dE5vZGVzKGNvbnRhaW5lcik6IEFycmF5PE5vZGU+IHtcbiAgICAgICAgbGV0IGNoaWxkVGV4dE5vZGVzOiBBcnJheTxOb2RlPiA9IFtdO1xuICAgICAgICBpZiAoY29udGFpbmVyLmNoaWxkTm9kZXMpIHtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY29udGFpbmVyLmNoaWxkTm9kZXMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgICAgICBpZiAoY29udGFpbmVyLmNoaWxkTm9kZXNbaV0ubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkVGV4dE5vZGVzLnB1c2goY29udGFpbmVyLmNoaWxkTm9kZXNbaV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2hpbGRUZXh0Tm9kZXM7XG4gICAgfVxufVxuXG5leHBvcnQgdmFyIGlzVGV4dEVkaXRpb25Ub29sOiBib29sZWFuID0gZmFsc2U7XG5cbmV4cG9ydCB2YXIgaXNCbG9ja0ZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuZXhwb3J0IGZ1bmN0aW9uIHNldElzVGV4dEVkaXRpb25Ub29sKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaXNUZXh0RWRpdGlvblRvb2wgPSB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldElzQmxvY2tGb2N1c2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaXNCbG9ja0ZvY3VzZWQgPSB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldEJsb2NrRm9jdXMocGFyZW50RWRpdG9yOiBIVE1MRWxlbWVudCkge1xuICAgIGxldCBibG9jayA9IHBhcmVudEVkaXRvci5jbG9zZXN0KCcud2ItYmxvY2tzX19jb250YWluZXInKTtcbiAgICBpZiAoIWJsb2NrLmNsYXNzTGlzdC5jb250YWlucygnd2ItYmxvY2tzX19jb250YWluZXItLWZvY3VzZWQnKSkge1xuICAgICAgICBibG9jay5jbGFzc0xpc3QuYWRkKCd3Yi1ibG9ja3NfX2NvbnRhaW5lci0tZm9jdXNlZCcpO1xuICAgIH1cblxuICAgIGxldCBjb250YWluZXJUb0ZvY3VzID0gcGFyZW50RWRpdG9yLmNsb3Nlc3QoJy5jb2x1bW4nKTtcbiAgICBpZiAoIWNvbnRhaW5lclRvRm9jdXMuY2xhc3NMaXN0LmNvbnRhaW5zKCdlZGl0b3Jqcy1mb2N1c2VkJykpIHtcbiAgICAgICAgY29udGFpbmVyVG9Gb2N1cy5jbGFzc0xpc3QuYWRkKCdlZGl0b3Jqcy1mb2N1c2VkJyk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzZXRCbG9ja0ZvY3VzKHBhcmVudEVkaXRvcjogSFRNTEVsZW1lbnQpIHtcbiAgICBsZXQgYmxvY2sgPSBwYXJlbnRFZGl0b3IuY2xvc2VzdCgnLndiLWJsb2Nrc19fY29udGFpbmVyJyk7XG4gICAgaWYgKGJsb2NrLmNsYXNzTGlzdC5jb250YWlucygnd2ItYmxvY2tzX19jb250YWluZXItLWZvY3VzZWQnKSkge1xuICAgICAgICBibG9jay5jbGFzc0xpc3QucmVtb3ZlKCd3Yi1ibG9ja3NfX2NvbnRhaW5lci0tZm9jdXNlZCcpO1xuICAgIH1cblxuICAgIGxldCBjb250YWluZXJUb0ZvY3VzID0gcGFyZW50RWRpdG9yLmNsb3Nlc3QoJy5jb2x1bW4nKTtcbiAgICBpZiAoY29udGFpbmVyVG9Gb2N1cy5jbGFzc0xpc3QuY29udGFpbnMoJ2VkaXRvcmpzLWZvY3VzZWQnKSkge1xuICAgICAgICBjb250YWluZXJUb0ZvY3VzLmNsYXNzTGlzdC5yZW1vdmUoJ2VkaXRvcmpzLWZvY3VzZWQnKTtcbiAgICB9XG59XG4iXX0=
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yanMtdG9vbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcGF1bGluZS9Eb2N1bWVudHMvd29ya3NwYWNlL3dpemktYmxvY2svcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvIiwic291cmNlcyI6WyJsaWIvc2hhcmVkL2NvbXBvbmVudHMvZWRpdG9yanMvdG9vbHMvdXRpbHMvZWRpdG9yanMtdG9vbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFdBQVc7Q0FNdkI7QUFFRCxNQUFNLE9BQU8sZUFBZTtDQUczQjtBQUVELE1BQU0sT0FBZ0IsWUFBWTtJQUFsQztRQUNJLGlCQUFZLEdBQW1CLElBQUksQ0FBQztRQUVwQyxtQkFBYyxHQUFHLHdCQUF3QixDQUFDO1FBSTFDLHVCQUFrQixHQUFTLElBQUksQ0FBQztRQUVoQyxzQkFBaUIsR0FBUyxJQUFJLENBQUM7UUFFL0IsaUJBQVksR0FBVyxDQUFDLENBQUMsQ0FBQztRQUUxQixnQkFBVyxHQUFXLENBQUMsQ0FBQyxDQUFDO1FBRXpCLHVCQUFrQixHQUFhLEtBQUssQ0FBQztRQUVyQyxtQkFBYyxHQUFXLDJCQUEyQixDQUFDO0lBdUZ6RCxDQUFDO0lBckZHLFlBQVk7UUFDUixJQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLEVBQUU7WUFDdEIsT0FBTyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDaEM7YUFBTSxJQUFJLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxZQUFZLEVBQUU7WUFDL0IsT0FBTyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDbEM7YUFBTSxJQUFJLFFBQVEsSUFBSyxRQUFnQixDQUFDLFNBQVMsRUFBRTtZQUNoRCxPQUFRLFFBQWdCLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQztTQUN6RDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFF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QUMxRCxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLCtCQUErQixDQUFDLEVBQUU7UUFDM0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQztLQUMzRDtJQUVELElBQUksZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2RCxJQUFJLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRTtRQUN6RCxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7S0FDekQ7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFN0eWxlT2JqZWN0IHtcbiAgICBwcm9wZXJ0eTogc3RyaW5nO1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgZGVmYXVsdDogc3RyaW5nO1xuICAgIGlucHV0Pzogc3RyaW5nO1xuICAgIGNsYXNzPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXR0cmlidXRlT2JqZWN0IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEVkaXRvckpTVG9vbCB7XG4gICAgcGFyZW50RWRpdG9yOiBIVE1MRGl2RWxlbWVudCA9IG51bGw7XG5cbiAgICB0ZXh0Q29udGFpbmVycyA9ICdoMSxoMixoMyxoNCxoNSxoNixwLGxpJztcblxuICAgIGN1cnJlbnRTZWxlY3Rpb24/OiBTZWxlY3Rpb247XG5cbiAgICBzZWxlY3RlZEFuY2hvck5vZGU6IE5vZGUgPSBudWxsO1xuXG4gICAgc2VsZWN0ZWRGb2N1c05vZGU6IE5vZGUgPSBudWxsO1xuXG4gICAgYW5jaG9yT2Zmc2V0OiBudW1iZXIgPSAtMTtcblxuICAgIGZvY3VzT2Zmc2V0OiBudW1iZXIgPSAtMTtcblxuICAgIGhhc1NlcGFyYXRvckJlZm9yZT86IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHNlcGFyYXRvckNsYXNzOiBzdHJpbmcgPSAnY2UtaW5saW5lLXRvb2wtLXNlcGFyYXRvcic7XG5cbiAgICBnZXRTZWxlY3Rpb24oKTogU2VsZWN0aW9uIHtcbiAgICAgICAgaWYgKHdpbmRvdz8uZ2V0U2VsZWN0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gd2luZG93LmdldFNlbGVjdGlvbigpO1xuICAgICAgICB9IGVsc2UgaWYgKGRvY3VtZW50Py5nZXRTZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgfSBlbHNlIGlmIChkb2N1bWVudCAmJiAoZG9jdW1lbnQgYXMgYW55KS5zZWxlY3Rpb24pIHtcbiAgICAgICAgICAgIHJldHVybiAoZG9jdW1lbnQgYXMgYW55KS5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKS50ZXh0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGdldFJhbmdlT2JqZWN0KHNlbGVjdGlvbk9iamVjdDogU2VsZWN0aW9uKTogUmFuZ2Uge1xuICAgICAgICBpZiAoc2VsZWN0aW9uT2JqZWN0LmdldFJhbmdlQXQpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3Rpb25PYmplY3QuZ2V0UmFuZ2VBdCgwKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICAgICAgICByYW5nZS5zZXRTdGFydChzZWxlY3Rpb25PYmplY3QuYW5jaG9yTm9kZS5wYXJlbnRFbGVtZW50LCBzZWxlY3Rpb25PYmplY3QuYW5jaG9yT2Zmc2V0KTtcbiAgICAgICAgICAgIHJhbmdlLnNldEVuZChzZWxlY3Rpb25PYmplY3QuZm9jdXNOb2RlLCBzZWxlY3Rpb25PYmplY3QuZm9jdXNPZmZzZXQpO1xuICAgICAgICAgICAgcmV0dXJuIHJhbmdlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2F2ZVVzZXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudFNlbGVjdGlvbiA9IHRoaXMuZ2V0U2VsZWN0aW9uKCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlID0gdGhpcy5jdXJyZW50U2VsZWN0aW9uLmFuY2hvck5vZGU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGb2N1c05vZGUgPSB0aGlzLmN1cnJlbnRTZWxlY3Rpb24uZm9jdXNOb2RlO1xuICAgICAgICB0aGlzLmFuY2hvck9mZnNldCA9IHRoaXMuY3VycmVudFNlbGVjdGlvbi5hbmNob3JPZmZzZXQ7XG4gICAgICAgIHRoaXMuZm9jdXNPZmZzZXQgPSB0aGlzLmN1cnJlbnRTZWxlY3Rpb24uZm9jdXNPZmZzZXQ7XG4gICAgfVxuXG4gICAgcmVzZXRVc2VyU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgICAgICBjb25zb2xlLmxvZygncmVzZXQgaGVyZScpO1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZEFuY2hvck5vZGUubm9kZVR5cGUgPT09IE5vZGUuRUxFTUVOVF9OT0RFICYmICg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZEFuY2hvck5vZGUpLmNoaWxkcmVuKSB7XG4gICAgICAgICAgICB3aGlsZSAoXG4gICAgICAgICAgICAgICAgKDxIVE1MRWxlbWVudD50aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSkuY2hpbGRyZW4gJiZcbiAgICAgICAgICAgICAgICAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5pbm5lclRleHQgPT09XG4gICAgICAgICAgICAgICAgICAgICg8SFRNTEVsZW1lbnQ+KDxIVE1MRWxlbWVudD50aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSkuY2hpbGRyZW5bMF0pPy5pbm5lclRleHQgJiZcbiAgICAgICAgICAgICAgICAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZHJlbi5sZW5ndGggPT09IDFcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlID0gKDxIVE1MRWxlbWVudD50aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSkuY2hpbGRyZW5bMF07XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEZvY3VzTm9kZSA9IHRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlO1xuICAgICAgICAgICAgICAgIHRoaXMuYW5jaG9yT2Zmc2V0ID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLmZvY3VzT2Zmc2V0ID0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLnRleHRDb250YWluZXJzLnNwbGl0KCcsJykuaW5kZXhPZigoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS50YWdOYW1lLnRvTG93ZXJDYXNlKCkpID4gLTEpIHtcbiAgICAgICAgICAgICAgICBsZXQgY2hpbGRUZXh0Tm9kZXMgPSB0aGlzLmdldFRleHROb2Rlcyh0aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSk7XG4gICAgICAgICAgICAgICAgbGV0IGZvY3VzTm9kZSA9XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkVGV4dE5vZGVzLmxlbmd0aCA+IDFcbiAgICAgICAgICAgICAgICAgICAgICAgID8gKDxIVE1MRWxlbWVudD50aGlzLnNlbGVjdGVkQW5jaG9yTm9kZSkuY2hpbGROb2Rlc1tjaGlsZFRleHROb2Rlcy5sZW5ndGggLSAxXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZE5vZGVzWzBdO1xuICAgICAgICAgICAgICAgIGxldCBmb2N1c09mZnNldCA9IGNoaWxkVGV4dE5vZGVzLmxlbmd0aCA+IDEgPyBjaGlsZFRleHROb2Rlcy5sZW5ndGggOiBjaGlsZFRleHROb2Rlc1swXS50ZXh0Q29udGVudC5sZW5ndGg7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEFuY2hvck5vZGUgPSAoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlKS5jaGlsZE5vZGVzWzBdO1xuICAgICAgICAgICAgICAgIHRoaXMuYW5jaG9yT2Zmc2V0ID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkRm9jdXNOb2RlID0gZm9jdXNOb2RlO1xuICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNPZmZzZXQgPSBmb2N1c09mZnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KHRoaXMuc2VsZWN0ZWRBbmNob3JOb2RlLCB0aGlzLmFuY2hvck9mZnNldCwgdGhpcy5zZWxlY3RlZEZvY3VzTm9kZSwgdGhpcy5mb2N1c09mZnNldCk7XG4gICAgfVxuXG4gICAgY29sbGFwc2VTZWxlY3Rpb24oKSB7XG4gICAgICAgIGxldCBzZWxlY3Rpb24gPSB0aGlzLmdldFNlbGVjdGlvbigpO1xuICAgICAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KHNlbGVjdGlvbi5hbmNob3JOb2RlLCAwLCBzZWxlY3Rpb24uYW5jaG9yTm9kZSwgMCk7XG4gICAgfVxuXG4gICAgZmluZFBhcmVudEVkaXRvcigpOiBIVE1MRGl2RWxlbWVudCB8IG51bGwge1xuICAgICAgICBjb25zdCBzZWxlY3Rpb246IFNlbGVjdGlvbiB8IG51bGwgPSB0aGlzLmN1cnJlbnRTZWxlY3Rpb24gPyB0aGlzLmN1cnJlbnRTZWxlY3Rpb24gOiB0aGlzLmdldFNlbGVjdGlvbigpO1xuICAgICAgICByZXR1cm4gc2VsZWN0aW9uLmFuY2hvck5vZGUucGFyZW50RWxlbWVudC5jbG9zZXN0KCcuZWRpdG9ySnMnKTtcbiAgICB9XG5cbiAgICBjbGVhcigpIHtcbiAgICAgICAgcmVzZXRCbG9ja0ZvY3VzKHRoaXMucGFyZW50RWRpdG9yKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFRleHROb2Rlcyhjb250YWluZXIpOiBBcnJheTxOb2RlPiB7XG4gICAgICAgIGxldCBjaGlsZFRleHROb2RlczogQXJyYXk8Tm9kZT4gPSBbXTtcbiAgICAgICAgaWYgKGNvbnRhaW5lci5jaGlsZE5vZGVzKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvbnRhaW5lci5jaGlsZE5vZGVzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5lci5jaGlsZE5vZGVzW2ldLm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkge1xuICAgICAgICAgICAgICAgICAgICBjaGlsZFRleHROb2Rlcy5wdXNoKGNvbnRhaW5lci5jaGlsZE5vZGVzW2ldKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNoaWxkVGV4dE5vZGVzO1xuICAgIH1cbn1cblxuZXhwb3J0IHZhciBpc1RleHRFZGl0aW9uVG9vbDogYm9vbGVhbiA9IGZhbHNlO1xuXG5leHBvcnQgdmFyIGlzQmxvY2tGb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRJc1RleHRFZGl0aW9uVG9vbCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlzVGV4dEVkaXRpb25Ub29sID0gdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRJc0Jsb2NrRm9jdXNlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlzQmxvY2tGb2N1c2VkID0gdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRCbG9ja0ZvY3VzKHBhcmVudEVkaXRvcjogSFRNTEVsZW1lbnQpIHtcbiAgICBsZXQgYmxvY2sgPSBwYXJlbnRFZGl0b3IuY2xvc2VzdCgnLndiLWJsb2Nrc19fY29udGFpbmVyJyk7XG4gICAgaWYgKCFibG9jay5jbGFzc0xpc3QuY29udGFpbnMoJ3diLWJsb2Nrc19fY29udGFpbmVyLS1mb2N1c2VkJykpIHtcbiAgICAgICAgYmxvY2suY2xhc3NMaXN0LmFkZCgnd2ItYmxvY2tzX19jb250YWluZXItLWZvY3VzZWQnKTtcbiAgICB9XG5cbiAgICBsZXQgY29udGFpbmVyVG9Gb2N1cyA9IHBhcmVudEVkaXRvci5jbG9zZXN0KCcuY29sdW1uJyk7XG4gICAgaWYgKCFjb250YWluZXJUb0ZvY3VzLmNsYXNzTGlzdC5jb250YWlucygnZWRpdG9yanMtZm9jdXNlZCcpKSB7XG4gICAgICAgIGNvbnRhaW5lclRvRm9jdXMuY2xhc3NMaXN0LmFkZCgnZWRpdG9yanMtZm9jdXNlZCcpO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0QmxvY2tGb2N1cyhwYXJlbnRFZGl0b3I6IEhUTUxFbGVtZW50KSB7XG4gICAgbGV0IGJsb2NrID0gcGFyZW50RWRpdG9yLmNsb3Nlc3QoJy53Yi1ibG9ja3NfX2NvbnRhaW5lcicpO1xuICAgIGlmIChibG9jay5jbGFzc0xpc3QuY29udGFpbnMoJ3diLWJsb2Nrc19fY29udGFpbmVyLS1mb2N1c2VkJykpIHtcbiAgICAgICAgYmxvY2suY2xhc3NMaXN0LnJlbW92ZSgnd2ItYmxvY2tzX19jb250YWluZXItLWZvY3VzZWQnKTtcbiAgICB9XG5cbiAgICBsZXQgY29udGFpbmVyVG9Gb2N1cyA9IHBhcmVudEVkaXRvci5jbG9zZXN0KCcuY29sdW1uJyk7XG4gICAgaWYgKGNvbnRhaW5lclRvRm9jdXMuY2xhc3NMaXN0LmNvbnRhaW5zKCdlZGl0b3Jqcy1mb2N1c2VkJykpIHtcbiAgICAgICAgY29udGFpbmVyVG9Gb2N1cy5jbGFzc0xpc3QucmVtb3ZlKCdlZGl0b3Jqcy1mb2N1c2VkJyk7XG4gICAgfVxufVxuIl19
|
|
@@ -42,7 +42,7 @@ export const enI18nDictionnary = {
|
|
|
42
42
|
placeholder: 'https://www.myshop.fr or /mylink/',
|
|
43
43
|
external: 'External?',
|
|
44
44
|
obfuscated: 'Obfuscated link?',
|
|
45
|
-
info: 'Link obfuscation is an advanced SEO technique that consists in hiding a link from search engine robots, while leaving it available for users. <a href="https://wizishop.com/blog/url-obfuscation">Read more</a>',
|
|
45
|
+
info: 'Link obfuscation is an advanced SEO technique that consists in hiding a link from search engine robots, while leaving it available for users. <a href="https://wizishop.com/blog/url-obfuscation" target="_blank">Read more</a>',
|
|
46
46
|
},
|
|
47
47
|
textBackgroundColor: {
|
|
48
48
|
customColor: 'Select a custom color :',
|
|
@@ -61,7 +61,7 @@ export const enI18nDictionnary = {
|
|
|
61
61
|
Small: 'Small',
|
|
62
62
|
Normal: 'Normal',
|
|
63
63
|
Large: 'Large',
|
|
64
|
-
Huge: '
|
|
64
|
+
Huge: 'Very large',
|
|
65
65
|
},
|
|
66
66
|
codeEdit: {
|
|
67
67
|
Cancel: 'Cancel',
|
|
@@ -81,4 +81,4 @@ export const enI18nDictionnary = {
|
|
|
81
81
|
},
|
|
82
82
|
},
|
|
83
83
|
};
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4taTE4bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcGF1bGluZS9Eb2N1bWVudHMvd29ya3NwYWNlL3dpemktYmxvY2svcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvIiwic291cmNlcyI6WyJsaWIvc2hhcmVkL2NvbXBvbmVudHMvZWRpdG9yanMvdG9vbHMvdXRpbHMvaTE4bi9lbi1pMThuLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBZTtJQUN6QyxRQUFRLEVBQUU7UUFDTixFQUFFLEVBQUU7WUFDQSxVQUFVLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFO29CQUNMLGVBQWUsRUFBRSxlQUFlO29CQUNoQyxpQkFBaUIsRUFBRSxpQkFBaUI7aUJBQ3ZDO2FBQ0o7WUFDRCxPQUFPLEVBQUU7Z0JBQ0wsT0FBTyxFQUFFO29CQUNMLEdBQUcsRUFBRSxLQUFLO2lCQUNiO2FBQ0o7U0FDSjtRQUNELFNBQVMsRUFBRTtZQUNQLFdBQVcsRUFBRSxXQUFXO1lBQ3hCLFdBQVcsRUFBRSxXQUFXO1lBQ3hCLElBQUksRUFBRSxNQUFNO1lBQ1osSUFBSSxFQUFFLE1BQU07WUFDWixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFNBQVMsRUFBRSxXQUFXO1lBQ3RCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLFNBQVMsRUFBRSxXQUFXO1lBQ3RCLFdBQVcsRUFBRSxhQUFhO1lBQzFCLFlBQVksRUFBRSxZQUFZO1lBQzFCLGtCQUFrQixFQUFFLGtCQUFrQjtZQUN0QyxJQUFJLEVBQUUsTUFBTTtZQUNaLEtBQUssRUFBRSxPQUFPO1lBQ2QsWUFBWSxFQUFFLFlBQVk7WUFDMUIsY0FBYyxFQUFFLGNBQWM7WUFDOUIsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFdBQVcsRUFBRSxXQUFXO1NBQzNCO1FBQ0QsS0FBSyxFQUFFO1lBQ0gsSUFBSSxFQUFFO2dCQUNGLEdBQUcsRUFBRSxZQUFZO2dCQUNqQixXQUFXLEVBQUUsbUNBQW1DO2dCQUNoRCxRQUFRLEVBQUUsV0FBVztnQkFDckIsVUFBVSxFQUFFLGtCQUFrQjtnQkFDOUIsSUFBSSxFQUNBLGtPQUFrTzthQUN6TztZQUNELG1CQUFtQixFQUFFO2dCQUNqQixXQUFXLEVBQUUseUJBQXlCO2dCQUN0QyxJQUFJLEVBQUUsTUFBTTthQUNmO1lBQ0QsUUFBUSxFQUFFO2dCQUNOLFdBQVcsRUFBRSxXQUFXO2dCQUN4QixXQUFXLEVBQUUsV0FBVztnQkFDeEIsV0FBVyxFQUFFLFdBQVc7Z0JBQ3hCLFdBQVcsRUFBRSxXQUFXO2dCQUN4QixXQUFXLEVBQUUsV0FBVztnQkFDeEIsV0FBVyxFQUFFLFdBQVc7Z0JBQ3hCLFNBQVMsRUFBRSxXQUFXO2FBQ3pCO1lBQ0QsUUFBUSxFQUFFO2dCQUNOLEtBQUssRUFBRSxPQUFPO2dCQUNkLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixLQUFLLEVBQUUsT0FBTztnQkFDZCxJQUFJLEVBQUUsWUFBWTthQUNyQjtZQUNELFFBQVEsRUFBRTtnQkFDTixNQUFNLEVBQUUsUUFBUTtnQkFDaEIsSUFBSSxFQUFFLE1BQU07YUFDZjtTQUNKO1FBQ0QsVUFBVSxFQUFFO1lBQ1IsTUFBTSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxRQUFRO2FBQ25CO1lBQ0QsTUFBTSxFQUFFO2dCQUNKLFNBQVMsRUFBRSxTQUFTO2FBQ3ZCO1lBQ0QsUUFBUSxFQUFFO2dCQUNOLFdBQVcsRUFBRSxXQUFXO2FBQzNCO1NBQ0o7S0FDSjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJMThuQ29uZmlnIH0gZnJvbSAnQGVkaXRvcmpzL2VkaXRvcmpzJztcblxuZXhwb3J0IGNvbnN0IGVuSTE4bkRpY3Rpb25uYXJ5OiBJMThuQ29uZmlnID0ge1xuICAgIG1lc3NhZ2VzOiB7XG4gICAgICAgIHVpOiB7XG4gICAgICAgICAgICBibG9ja1R1bmVzOiB7XG4gICAgICAgICAgICAgICAgdG9nZ2xlcjoge1xuICAgICAgICAgICAgICAgICAgICAnQ2xpY2sgdG8gdHVuZSc6ICdDbGljayB0byB0dW5lJyxcbiAgICAgICAgICAgICAgICAgICAgJ29yIGRyYWcgdG8gbW92ZSc6ICdvciBkcmFnIHRvIG1vdmUnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdG9vbGJhcjoge1xuICAgICAgICAgICAgICAgIHRvb2xib3g6IHtcbiAgICAgICAgICAgICAgICAgICAgQWRkOiAnQWRkJyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdG9vbE5hbWVzOiB7XG4gICAgICAgICAgICAnVGV4dCBUeXBlJzogJ1RleHQgVHlwZScsXG4gICAgICAgICAgICAnVGV4dCBTaXplJzogJ1RleHQgU2l6ZScsXG4gICAgICAgICAgICBVbmRvOiAnVW5kbycsXG4gICAgICAgICAgICBSZWRvOiAnUmVkbycsXG4gICAgICAgICAgICBCb2xkOiAnQm9sZCcsXG4gICAgICAgICAgICBJdGFsaWM6ICdJdGFsaWMnLFxuICAgICAgICAgICAgVW5kZXJsaW5lOiAnVW5kZXJsaW5lJyxcbiAgICAgICAgICAgIFN0cmlrZTogJ1N0cmlrZScsXG4gICAgICAgICAgICBDYXBpdGFsaXplOiAnQ2FwaXRhbGl6ZScsXG4gICAgICAgICAgICBTdWJzY3JpcHQ6ICdTdWJzY3JpcHQnLFxuICAgICAgICAgICAgU3VwZXJzY3JpcHQ6ICdTdXBlcnNjcmlwdCcsXG4gICAgICAgICAgICAnVGV4dCBDb2xvcic6ICdUZXh0IENvbG9yJyxcbiAgICAgICAgICAgICdCYWNrZ3JvdW5kIENvbG9yJzogJ0JhY2tncm91bmQgQ29sb3InLFxuICAgICAgICAgICAgTGluazogJ0xpbmsnLFxuICAgICAgICAgICAgUXVvdGU6ICdRdW90ZScsXG4gICAgICAgICAgICAnVGV4dCBBbGlnbic6ICdUZXh0IEFsaWduJyxcbiAgICAgICAgICAgICdPcmRlcmVkIExpc3QnOiAnT3JkZXJlZCBMaXN0JyxcbiAgICAgICAgICAgICdVbm9yZGVyZWQgTGlzdCc6ICdVbm9yZGVyZWQgTGlzdCcsXG4gICAgICAgICAgICBJbmRlbnQ6ICdJbmRlbnQnLFxuICAgICAgICAgICAgT3V0ZGVudDogJ091dGRlbnQnLFxuICAgICAgICAgICAgJ0NvZGUgRWRpdCc6ICdDb2RlIEVkaXQnLFxuICAgICAgICB9LFxuICAgICAgICB0b29sczoge1xuICAgICAgICAgICAgbGluazoge1xuICAgICAgICAgICAgICAgIGFkZDogJ0FkZCBhIGxpbmsnLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnaHR0cHM6Ly93d3cubXlzaG9wLmZyIG9yIC9teWxpbmsvJyxcbiAgICAgICAgICAgICAgICBleHRlcm5hbDogJ0V4dGVybmFsPycsXG4gICAgICAgICAgICAgICAgb2JmdXNjYXRlZDogJ09iZnVzY2F0ZWQgbGluaz8nLFxuICAgICAgICAgICAgICAgIGluZm86XG4gICAgICAgICAgICAgICAgICAgICdMaW5rIG9iZnVzY2F0aW9uIGlzIGFuIGFkdmFuY2VkIFNFTyB0ZWNobmlxdWUgdGhhdCBjb25zaXN0cyBpbiBoaWRpbmcgYSBsaW5rIGZyb20gc2VhcmNoIGVuZ2luZSByb2JvdHMsIHdoaWxlIGxlYXZpbmcgaXQgYXZhaWxhYmxlIGZvciB1c2Vycy4gIDxhIGhyZWY9XCJodHRwczovL3dpemlzaG9wLmNvbS9ibG9nL3VybC1vYmZ1c2NhdGlvblwiIHRhcmdldD1cIl9ibGFua1wiPlJlYWQgbW9yZTwvYT4nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRleHRCYWNrZ3JvdW5kQ29sb3I6IHtcbiAgICAgICAgICAgICAgICBjdXN0b21Db2xvcjogJ1NlbGVjdCBhIGN1c3RvbSBjb2xvciA6JyxcbiAgICAgICAgICAgICAgICBOb25lOiAnTm9uZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdGV4dFR5cGU6IHtcbiAgICAgICAgICAgICAgICAnSGVhZGluZyAxJzogJ0hlYWRpbmcgMScsXG4gICAgICAgICAgICAgICAgJ0hlYWRpbmcgMic6ICdIZWFkaW5nIDInLFxuICAgICAgICAgICAgICAgICdIZWFkaW5nIDMnOiAnSGVhZGluZyAzJyxcbiAgICAgICAgICAgICAgICAnSGVhZGluZyA0JzogJ0hlYWRpbmcgNCcsXG4gICAgICAgICAgICAgICAgJ0hlYWRpbmcgNSc6ICdIZWFkaW5nIDUnLFxuICAgICAgICAgICAgICAgICdIZWFkaW5nIDYnOiAnSGVhZGluZyA2JyxcbiAgICAgICAgICAgICAgICBQYXJhZ3JhcGg6ICdQYXJhZ3JhcGgnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRleHRTaXplOiB7XG4gICAgICAgICAgICAgICAgU21hbGw6ICdTbWFsbCcsXG4gICAgICAgICAgICAgICAgTm9ybWFsOiAnTm9ybWFsJyxcbiAgICAgICAgICAgICAgICBMYXJnZTogJ0xhcmdlJyxcbiAgICAgICAgICAgICAgICBIdWdlOiAnVmVyeSBsYXJnZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29kZUVkaXQ6IHtcbiAgICAgICAgICAgICAgICBDYW5jZWw6ICdDYW5jZWwnLFxuICAgICAgICAgICAgICAgIFNhdmU6ICdTYXZlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGJsb2NrVHVuZXM6IHtcbiAgICAgICAgICAgIGRlbGV0ZToge1xuICAgICAgICAgICAgICAgIERlbGV0ZTogJ0RlbGV0ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbW92ZVVwOiB7XG4gICAgICAgICAgICAgICAgJ01vdmUgdXAnOiAnTW92ZSB1cCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbW92ZURvd246IHtcbiAgICAgICAgICAgICAgICAnTW92ZSBkb3duJzogJ01vdmUgZG93bicsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgIH0sXG59O1xuIl19
|
|
@@ -42,7 +42,7 @@ export const frI18nDictionnary = {
|
|
|
42
42
|
placeholder: 'https://www.maboutique.fr or /monlien/',
|
|
43
43
|
external: 'Externe ?',
|
|
44
44
|
obfuscated: 'Lien Obfusqué ?',
|
|
45
|
-
info: 'L\'obfuscation de liens est une technique SEO avancée qui consiste à cacher un lien aux robots des moteurs de recherche, tout en le laissant accessible pour les internautes. <a href="https://www.wizishop.fr/blog/obfuscation-lien">Découvrir l\'article complet.</a>',
|
|
45
|
+
info: 'L\'obfuscation de liens est une technique SEO avancée qui consiste à cacher un lien aux robots des moteurs de recherche, tout en le laissant accessible pour les internautes. <a href="https://www.wizishop.fr/blog/obfuscation-lien" target="_blank">Découvrir l\'article complet.</a>',
|
|
46
46
|
},
|
|
47
47
|
textBackgroundColor: {
|
|
48
48
|
customColor: 'Sélectionner une couleur personnalisée :',
|
|
@@ -61,7 +61,7 @@ export const frI18nDictionnary = {
|
|
|
61
61
|
Small: 'Petit',
|
|
62
62
|
Normal: 'Normal',
|
|
63
63
|
Large: 'Grand',
|
|
64
|
-
Huge: '
|
|
64
|
+
Huge: 'Très grand',
|
|
65
65
|
},
|
|
66
66
|
codeEdit: {
|
|
67
67
|
Cancel: 'Annuler',
|
|
@@ -81,4 +81,4 @@ export const frI18nDictionnary = {
|
|
|
81
81
|
},
|
|
82
82
|
},
|
|
83
83
|
};
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnItaTE4bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcGF1bGluZS9Eb2N1bWVudHMvd29ya3NwYWNlL3dpemktYmxvY2svcHJvamVjdHMvd2l6aS1ibG9jay9zcmMvIiwic291cmNlcyI6WyJsaWIvc2hhcmVkL2NvbXBvbmVudHMvZWRpdG9yanMvdG9vbHMvdXRpbHMvaTE4bi9mci1pMThuLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBZTtJQUN6QyxRQUFRLEVBQUU7UUFDTixFQUFFLEVBQUU7WUFDQSxVQUFVLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFO29CQUNMLGVBQWUsRUFBRSxxQkFBcUI7b0JBQ3RDLGlCQUFpQixFQUFFLGdDQUFnQztpQkFDdEQ7YUFDSjtZQUNELE9BQU8sRUFBRTtnQkFDTCxPQUFPLEVBQUU7b0JBQ0wsR0FBRyxFQUFFLFNBQVM7aUJBQ2pCO2FBQ0o7U0FDSjtRQUNELFNBQVMsRUFBRTtZQUNQLFdBQVcsRUFBRSxlQUFlO1lBQzVCLFdBQVcsRUFBRSxpQkFBaUI7WUFDOUIsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsVUFBVTtZQUNoQixJQUFJLEVBQUUsTUFBTTtZQUNaLE1BQU0sRUFBRSxVQUFVO1lBQ2xCLFNBQVMsRUFBRSxXQUFXO1lBQ3RCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLFNBQVMsRUFBRSxRQUFRO1lBQ25CLFdBQVcsRUFBRSxVQUFVO1lBQ3ZCLFlBQVksRUFBRSxrQkFBa0I7WUFDaEMsa0JBQWtCLEVBQUUsdUJBQXVCO1lBQzNDLElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFFLFVBQVU7WUFDakIsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxjQUFjLEVBQUUsaUJBQWlCO1lBQ2pDLGdCQUFnQixFQUFFLGVBQWU7WUFDakMsTUFBTSxFQUFFLHNCQUFzQjtZQUM5QixPQUFPLEVBQUUscUJBQXFCO1lBQzlCLFdBQVcsRUFBRSxpQkFBaUI7U0FDakM7UUFDRCxLQUFLLEVBQUU7WUFDSCxJQUFJLEVBQUU7Z0JBQ0YsR0FBRyxFQUFFLGlCQUFpQjtnQkFDdEIsV0FBVyxFQUFFLHdDQUF3QztnQkFDckQsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFVBQVUsRUFBRSxpQkFBaUI7Z0JBQzdCLElBQUksRUFDQSx5UkFBeVI7YUFDaFM7WUFDRCxtQkFBbUIsRUFBRTtnQkFDakIsV0FBVyxFQUFFLDBDQUEwQztnQkFDdkQsSUFBSSxFQUFFLFFBQVE7YUFDakI7WUFDRCxRQUFRLEVBQUU7Z0JBQ04sV0FBVyxFQUFFLFdBQVc7Z0JBQ3hCLFdBQVcsRUFBRSxXQUFXO2dCQUN4QixXQUFXLEVBQUUsV0FBVztnQkFDeEIsV0FBVyxFQUFFLFdBQVc7Z0JBQ3hCLFdBQVcsRUFBRSxXQUFXO2dCQUN4QixXQUFXLEVBQUUsV0FBVztnQkFDeEIsU0FBUyxFQUFFLFlBQVk7YUFDMUI7WUFDRCxRQUFRLEVBQUU7Z0JBQ04sS0FBSyxFQUFFLE9BQU87Z0JBQ2QsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLEtBQUssRUFBRSxPQUFPO2dCQUNkLElBQUksRUFBRSxZQUFZO2FBQ3JCO1lBQ0QsUUFBUSxFQUFFO2dCQUNOLE1BQU0sRUFBRSxTQUFTO2dCQUNqQixJQUFJLEVBQUUsYUFBYTthQUN0QjtTQUNKO1FBQ0QsVUFBVSxFQUFFO1lBQ1IsTUFBTSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxXQUFXO2FBQ3RCO1lBQ0QsTUFBTSxFQUFFO2dCQUNKLFNBQVMsRUFBRSx1QkFBdUI7YUFDckM7WUFDRCxRQUFRLEVBQUU7Z0JBQ04sV0FBVyxFQUFFLHNCQUFzQjthQUN0QztTQUNKO0tBQ0o7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSTE4bkNvbmZpZyB9IGZyb20gJ0BlZGl0b3Jqcy9lZGl0b3Jqcyc7XG5cbmV4cG9ydCBjb25zdCBmckkxOG5EaWN0aW9ubmFyeTogSTE4bkNvbmZpZyA9IHtcbiAgICBtZXNzYWdlczoge1xuICAgICAgICB1aToge1xuICAgICAgICAgICAgYmxvY2tUdW5lczoge1xuICAgICAgICAgICAgICAgIHRvZ2dsZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgJ0NsaWNrIHRvIHR1bmUnOiAnQ2xpcXVlciBwb3VyIHLDqWdsZXInLFxuICAgICAgICAgICAgICAgICAgICAnb3IgZHJhZyB0byBtb3ZlJzogJ291IGZhaXJlIGdsaXNzZXIgcG91ciBkw6lwbGFjZXInLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdG9vbGJhcjoge1xuICAgICAgICAgICAgICAgIHRvb2xib3g6IHtcbiAgICAgICAgICAgICAgICAgICAgQWRkOiAnQWpvdXRlcicsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHRvb2xOYW1lczoge1xuICAgICAgICAgICAgJ1RleHQgVHlwZSc6ICdUeXBlIGRlIHRleHRlJyxcbiAgICAgICAgICAgICdUZXh0IFNpemUnOiAnVGFpbGxlIGRlIHRleHRlJyxcbiAgICAgICAgICAgIFVuZG86ICdBbm51bGVyJyxcbiAgICAgICAgICAgIFJlZG86ICdSw6l0YWJsaXInLFxuICAgICAgICAgICAgQm9sZDogJ0dyYXMnLFxuICAgICAgICAgICAgSXRhbGljOiAnSXRhbGlxdWUnLFxuICAgICAgICAgICAgVW5kZXJsaW5lOiAnU291bGlnbmVyJyxcbiAgICAgICAgICAgIFN0cmlrZTogJ0JhcnJlcicsXG4gICAgICAgICAgICBDYXBpdGFsaXplOiAnTWFqdXNjdWxlcycsXG4gICAgICAgICAgICBTdWJzY3JpcHQ6ICdJbmRpY2UnLFxuICAgICAgICAgICAgU3VwZXJzY3JpcHQ6ICdFeHBvc2FudCcsXG4gICAgICAgICAgICAnVGV4dCBDb2xvcic6ICdDb3VsZXVyIGR1IHRleHRlJyxcbiAgICAgICAgICAgICdCYWNrZ3JvdW5kIENvbG9yJzogJ0NvdWxldXIgZGUgc3VybGlnbmFnZScsXG4gICAgICAgICAgICBMaW5rOiAnTGllbicsXG4gICAgICAgICAgICBRdW90ZTogJ0NpdGF0aW9uJyxcbiAgICAgICAgICAgICdUZXh0IEFsaWduJzogJ0FsaWduZW1lbnQgZHUgdGV4dGUnLFxuICAgICAgICAgICAgJ09yZGVyZWQgTGlzdCc6ICdMaXN0ZSBudW3DqXJvdMOpZScsXG4gICAgICAgICAgICAnVW5vcmRlcmVkIExpc3QnOiAnTGlzdGUgw6AgcHVjZXMnLFxuICAgICAgICAgICAgSW5kZW50OiAnQXVnbWVudGVyIGxlIHJldHJhaXQnLFxuICAgICAgICAgICAgT3V0ZGVudDogJ0RpbWludWVyIGxlIHJldHJhaXQnLFxuICAgICAgICAgICAgJ0NvZGUgRWRpdCc6ICdFZGl0aW9uIGRlIGNvZGUnLFxuICAgICAgICB9LFxuICAgICAgICB0b29sczoge1xuICAgICAgICAgICAgbGluazoge1xuICAgICAgICAgICAgICAgIGFkZDogJ0Fqb3V0ZXIgdW4gbGllbicsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6ICdodHRwczovL3d3dy5tYWJvdXRpcXVlLmZyIG9yIC9tb25saWVuLycsXG4gICAgICAgICAgICAgICAgZXh0ZXJuYWw6ICdFeHRlcm5lID8nLFxuICAgICAgICAgICAgICAgIG9iZnVzY2F0ZWQ6ICdMaWVuIE9iZnVzcXXDqSA/JyxcbiAgICAgICAgICAgICAgICBpbmZvOlxuICAgICAgICAgICAgICAgICAgICAnTFxcJ29iZnVzY2F0aW9uIGRlIGxpZW5zIGVzdCB1bmUgdGVjaG5pcXVlIFNFTyBhdmFuY8OpZSBxdWkgY29uc2lzdGUgw6AgY2FjaGVyIHVuIGxpZW4gYXV4IHJvYm90cyBkZXMgbW90ZXVycyBkZSByZWNoZXJjaGUsIHRvdXQgZW4gbGUgbGFpc3NhbnQgYWNjZXNzaWJsZSBwb3VyIGxlcyBpbnRlcm5hdXRlcy4gPGEgaHJlZj1cImh0dHBzOi8vd3d3LndpemlzaG9wLmZyL2Jsb2cvb2JmdXNjYXRpb24tbGllblwiIHRhcmdldD1cIl9ibGFua1wiPkTDqWNvdXZyaXIgbFxcJ2FydGljbGUgY29tcGxldC48L2E+JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0ZXh0QmFja2dyb3VuZENvbG9yOiB7XG4gICAgICAgICAgICAgICAgY3VzdG9tQ29sb3I6ICdTw6lsZWN0aW9ubmVyIHVuZSBjb3VsZXVyIHBlcnNvbm5hbGlzw6llIDonLFxuICAgICAgICAgICAgICAgIE5vbmU6ICdBdWN1bmUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRleHRUeXBlOiB7XG4gICAgICAgICAgICAgICAgJ0hlYWRpbmcgMSc6ICdIZWFkaW5nIDEnLFxuICAgICAgICAgICAgICAgICdIZWFkaW5nIDInOiAnSGVhZGluZyAyJyxcbiAgICAgICAgICAgICAgICAnSGVhZGluZyAzJzogJ0hlYWRpbmcgMycsXG4gICAgICAgICAgICAgICAgJ0hlYWRpbmcgNCc6ICdIZWFkaW5nIDQnLFxuICAgICAgICAgICAgICAgICdIZWFkaW5nIDUnOiAnSGVhZGluZyA1JyxcbiAgICAgICAgICAgICAgICAnSGVhZGluZyA2JzogJ0hlYWRpbmcgNicsXG4gICAgICAgICAgICAgICAgUGFyYWdyYXBoOiAnUGFyYWdyYXBoZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdGV4dFNpemU6IHtcbiAgICAgICAgICAgICAgICBTbWFsbDogJ1BldGl0JyxcbiAgICAgICAgICAgICAgICBOb3JtYWw6ICdOb3JtYWwnLFxuICAgICAgICAgICAgICAgIExhcmdlOiAnR3JhbmQnLFxuICAgICAgICAgICAgICAgIEh1Z2U6ICdUcsOocyBncmFuZCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29kZUVkaXQ6IHtcbiAgICAgICAgICAgICAgICBDYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgICAgICAgICAgICBTYXZlOiAnRW5yZWdpc3RyZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgYmxvY2tUdW5lczoge1xuICAgICAgICAgICAgZGVsZXRlOiB7XG4gICAgICAgICAgICAgICAgRGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtb3ZlVXA6IHtcbiAgICAgICAgICAgICAgICAnTW92ZSB1cCc6ICdEw6lwbGFjZXIgdmVycyBsZSBoYXV0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtb3ZlRG93bjoge1xuICAgICAgICAgICAgICAgICdNb3ZlIGRvd24nOiAnRMOpcGxhY2VyIHZlcnMgbGUgYmFzJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgfSxcbn07XG4iXX0=
|