@worktile/theia 2.2.10 → 2.3.0-next.2
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/bundles/worktile-theia.umd.js +464 -229
- package/bundles/worktile-theia.umd.js.map +1 -1
- package/constants/default.d.ts +2 -0
- package/constants/node-types.d.ts +4 -0
- package/custom-types.d.ts +3 -1
- package/editor.component.d.ts +1 -1
- package/esm2015/constants/default.js +1 -1
- package/esm2015/constants/node-types.js +6 -1
- package/esm2015/custom-types.js +1 -1
- package/esm2015/editor.component.js +1 -2
- package/esm2015/interfaces/editor.js +1 -1
- package/esm2015/interfaces/image.js +1 -1
- package/esm2015/interfaces/valid-children-types.js +2 -1
- package/esm2015/plugins/align/align.editor.js +14 -2
- package/esm2015/plugins/align/options.js +3 -2
- package/esm2015/plugins/common/auto-insert-data..js +2 -18
- package/esm2015/plugins/image/image.component.js +168 -14
- package/esm2015/plugins/image/image.editor.js +4 -1
- package/esm2015/plugins/quick-insert/components/quick-insert.component.js +13 -2
- package/esm2015/services/context.service.js +5 -1
- package/esm2015/utils/dom.js +40 -2
- package/esm2015/utils/index.js +3 -1
- package/esm2015/utils/merge-element-options.js +20 -0
- package/fesm2015/worktile-theia.js +417 -197
- package/fesm2015/worktile-theia.js.map +1 -1
- package/interfaces/editor.d.ts +4 -1
- package/interfaces/image.d.ts +7 -1
- package/interfaces/valid-children-types.d.ts +1 -0
- package/package.json +1 -1
- package/plugins/align/align.editor.d.ts +1 -0
- package/plugins/image/image.component.d.ts +27 -3
- package/plugins/image/image.component.scss +12 -2
- package/plugins/image/image.editor.d.ts +6 -1
- package/plugins/quick-insert/components/quick-insert.component.d.ts +1 -0
- package/plugins/table/components/table.component.scss +3 -2
- package/services/context.service.d.ts +1 -0
- package/styles/editor.scss +11 -0
- package/styles/index.scss +1 -1
- package/styles/typo.scss +56 -1
- package/utils/dom.d.ts +5 -1
- package/utils/index.d.ts +2 -0
- package/utils/merge-element-options.d.ts +2 -0
package/esm2015/utils/dom.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { AngularEditor, EDITOR_TO_ELEMENT } from 'slate-angular';
|
|
1
2
|
import { Alignment } from '../constants';
|
|
2
3
|
/** Converts CSS pixel values to numbers, eg "123px" to 123. Returns NaN for non pixel values. */
|
|
3
4
|
export function coercePixelsFromCssValue(cssValue) {
|
|
4
|
-
const match = cssValue.match(/(\d+)px/);
|
|
5
|
+
const match = cssValue.match(/(\d+(\.\d+)?)px/);
|
|
5
6
|
if (match) {
|
|
6
7
|
return Number(match[1]);
|
|
7
8
|
}
|
|
@@ -44,4 +45,41 @@ export function getElementClassByPrefix(el, prefix) {
|
|
|
44
45
|
});
|
|
45
46
|
return matchClass;
|
|
46
47
|
}
|
|
47
|
-
|
|
48
|
+
export function findRelativeElementByPoint(editor, x, y, mode) {
|
|
49
|
+
const editableElement = EDITOR_TO_ELEMENT.get(editor);
|
|
50
|
+
const rectEditable = editableElement.getBoundingClientRect();
|
|
51
|
+
if (x > rectEditable.x && x < rectEditable.x + rectEditable.width) {
|
|
52
|
+
const centerX = rectEditable.x + rectEditable.width / 2;
|
|
53
|
+
let relativeElement = document.elementFromPoint(mode === 'highest' ? centerX : x, y);
|
|
54
|
+
return relativeElement;
|
|
55
|
+
}
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
export function findNodeEntryByPoint(editor, x, y, mode) {
|
|
59
|
+
const editableElement = EDITOR_TO_ELEMENT.get(editor);
|
|
60
|
+
let rootElement = null;
|
|
61
|
+
let relativeElement = findRelativeElementByPoint(editor, x, y, mode);
|
|
62
|
+
// 获取最顶层的DOM
|
|
63
|
+
if (mode === 'highest') {
|
|
64
|
+
while (relativeElement && editableElement.contains(relativeElement)) {
|
|
65
|
+
relativeElement = relativeElement.closest('[data-slate-node="element"]');
|
|
66
|
+
if (relativeElement) {
|
|
67
|
+
rootElement = relativeElement;
|
|
68
|
+
relativeElement = relativeElement.parentElement;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (!mode) {
|
|
73
|
+
if (relativeElement && editableElement.contains(relativeElement)) {
|
|
74
|
+
relativeElement = relativeElement.closest('[data-slate-node="element"]');
|
|
75
|
+
rootElement = relativeElement;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (rootElement) {
|
|
79
|
+
const node = AngularEditor.toSlateNode(editor, rootElement);
|
|
80
|
+
const path = AngularEditor.findPath(editor, node);
|
|
81
|
+
return [node, path];
|
|
82
|
+
}
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL2RvbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFjLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdFLE9BQU8sRUFBRSxTQUFTLEVBQWEsTUFBTSxjQUFjLENBQUM7QUFFcEQsaUdBQWlHO0FBQ2pHLE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxRQUFnQjtJQUNyRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDaEQsSUFBSSxLQUFLLEVBQUU7UUFDUCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMzQjtBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLE9BQW9CO0lBQ2hELHFGQUFxRjtJQUNyRixxQ0FBcUM7SUFDckMsT0FBTyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUM7QUFDaEYsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxPQUFvQjtJQUNqRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUEyQjtJQUN6RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDOUIsT0FBTyxLQUFLLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNWLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsSUFBMkI7SUFDMUQsT0FBTyxJQUFJLENB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QUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFO1lBQzlELGVBQWUsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDLDZCQUE2QixDQUFDLENBQUM7WUFDekUsV0FBVyxHQUFHLGVBQWUsQ0FBQztTQUNqQztLQUNKO0lBRUQsSUFBSSxXQUFXLEVBQUU7UUFDYixNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQVksQ0FBQztRQUN2RSxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNsRCxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQ3ZCO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgRWxlbWVudCwgTm9kZUVudHJ5IH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgQW5ndWxhckVkaXRvciwgRE9NRWxlbWVudCwgRURJVE9SX1RPX0VMRU1FTlQgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IFRoZUVkaXRvciB9IGZyb20gJy4uL2ludGVyZmFjZXMvZWRpdG9yJztcbmltcG9ydCB7IEFsaWdubWVudCwgTm9kZUxldmVsIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuLyoqIENvbnZlcnRzIENTUyBwaXhlbCB2YWx1ZXMgdG8gbnVtYmVycywgZWcgXCIxMjNweFwiIHRvIDEyMy4gUmV0dXJucyBOYU4gZm9yIG5vbiBwaXhlbCB2YWx1ZXMuICovXG5leHBvcnQgZnVuY3Rpb24gY29lcmNlUGl4ZWxzRnJvbUNzc1ZhbHVlKGNzc1ZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IG1hdGNoID0gY3NzVmFsdWUubWF0Y2goLyhcXGQrKFxcLlxcZCspPylweC8pO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgICByZXR1cm4gTnVtYmVyKG1hdGNoWzFdKTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbGVtZW50V2lkdGgoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICAvLyBPcHRpbWl6YXRpb246IENoZWNrIHN0eWxlLndpZHRoIGZpcnN0IGFzIHdlIHByb2JhYmx5IHNldCBpdCBhbHJlYWR5IGJlZm9yZSByZWFkaW5nXG4gICAgLy8gb2Zmc2V0V2lkdGggd2hpY2ggdHJpZ2dlcnMgbGF5b3V0LlxuICAgIHJldHVybiBjb2VyY2VQaXhlbHNGcm9tQ3NzVmFsdWUoZWxlbWVudC5zdHlsZS53aWR0aCkgfHwgZWxlbWVudC5vZmZzZXRXaWR0aDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVsZW1lbnRIZWlnaHQoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2xzVG90YWxXaWR0aChjb2xzOiBIVE1MVGFibGVDb2xFbGVtZW50W10pIHtcbiAgICByZXR1cm4gY29scy5yZWR1Y2UoKHRvdGFsLCBjb2wpID0+IHtcbiAgICAgICAgcmV0dXJuIHRvdGFsICsgZ2V0RWxlbWVudFdpZHRoKGNvbCk7XG4gICAgfSwgMCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSb3dzVG90YWxIZWlnaHQocm93czogSFRNTFRhYmxlUm93RWxlbWVudFtdKSB7XG4gICAgcmV0dXJuIHJvd3MucmVkdWNlKCh0b3RhbCwgcm93KSA9PiB7XG4gICAgICAgIHJldHVybiB0b3RhbCArIGdldEVsZW1lbnRIZWlnaHQocm93KTtcbiAgICB9LCAwKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUVsZW1lbnRTdHlsZShlbDogSFRNTEVsZW1lbnQsIGVsZW1lbnQ6IEVsZW1lbnQpIHtcbiAgICBpZiAoZWxlbWVudC5hbGlnbikge1xuICAgICAgICBlbC5zdHlsZS50ZXh0QWxpZ24gPSAoZWxlbWVudC5hbGlnbiBhcyBzdHJpbmcpIHx8IEFsaWdubWVudC5sZWZ0O1xuICAgIH1cblxuICAgIGlmIChlbGVtZW50LnRleHRJbmRlbnQpIHtcbiAgICAgICAgZWwuc3R5bGUudGV4dEluZGVudCA9IGVsZW1lbnQudGV4dEluZGVudCArICdlbSc7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQudmVydGljYWxBbGlnbikge1xuICAgICAgICBlbC5zdHlsZS52ZXJ0aWNhbEFsaWduID0gZWxlbWVudC52ZXJ0aWNhbEFsaWduO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVsZW1lbnRDbGFzc0J5UHJlZml4KGVsOiBET01FbGVtZW50LCBwcmVmaXg6IHN0cmluZykge1xuICAgIGxldCBtYXRjaENsYXNzID0gbnVsbDtcbiAgICBlbC5jbGFzc0xpc3QuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUuaW5jbHVkZXMocHJlZml4KSkge1xuICAgICAgICAgICAgbWF0Y2hDbGFzcyA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG1hdGNoQ2xhc3M7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kUmVsYXRpdmVFbGVtZW50QnlQb2ludChlZGl0b3I6IFRoZUVkaXRvciwgeDogbnVtYmVyLCB5OiBudW1iZXIsIG1vZGU/OiBOb2RlTGV2ZWwpIHtcbiAgICBjb25zdCBlZGl0YWJsZUVsZW1lbnQgPSBFRElUT1JfVE9fRUxFTUVOVC5nZXQoZWRpdG9yKTtcbiAgICBjb25zdCByZWN0RWRpdGFibGUgPSBlZGl0YWJsZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgaWYgKHggPiByZWN0RWRpdGFibGUueCAmJiB4IDwgcmVjdEVkaXRhYmxlLnggKyByZWN0RWRpdGFibGUud2lkdGgpIHtcbiAgICAgICAgY29uc3QgY2VudGVyWCA9IHJlY3RFZGl0YWJsZS54ICsgcmVjdEVkaXRhYmxlLndpZHRoIC8gMjtcbiAgICAgICAgbGV0IHJlbGF0aXZlRWxlbWVudCA9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQobW9kZSA9PT0gJ2hpZ2hlc3QnID8gY2VudGVyWCA6IHgsIHkpO1xuICAgICAgICByZXR1cm4gcmVsYXRpdmVFbGVtZW50O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmROb2RlRW50cnlCeVBvaW50KGVkaXRvcjogVGhlRWRpdG9yLCB4OiBudW1iZXIsIHk6IG51bWJlciwgbW9kZT86IE5vZGVMZXZlbCk6IE5vZGVFbnRyeTxFbGVtZW50PiB8IG51bGwge1xuICAgIGNvbnN0IGVkaXRhYmxlRWxlbWVudCA9IEVESVRPUl9UT19FTEVNRU5ULmdldChlZGl0b3IpO1xuICAgIGxldCByb290RWxlbWVudDogRE9NRWxlbWVudCA9IG51bGw7XG4gICAgbGV0IHJlbGF0aXZlRWxlbWVudCA9IGZpbmRSZWxhdGl2ZUVsZW1lbnRCeVBvaW50KGVkaXRvciwgeCwgeSwgbW9kZSk7XG4gICAgLy8g6I635Y+W5pyA6aG25bGC55qERE9NXG4gICAgaWYgKG1vZGUgPT09ICdoaWdoZXN0Jykge1xuICAgICAgICB3aGlsZSAocmVsYXRpdmVFbGVtZW50ICYmIGVkaXRhYmxlRWxlbWVudC5jb250YWlucyhyZWxhdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZWxhdGl2ZUVsZW1lbnQgPSByZWxhdGl2ZUVsZW1lbnQuY2xvc2VzdCgnW2RhdGEtc2xhdGUtbm9kZT1cImVsZW1lbnRcIl0nKTtcbiAgICAgICAgICAgIGlmIChyZWxhdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICByb290RWxlbWVudCA9IHJlbGF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICByZWxhdGl2ZUVsZW1lbnQgPSByZWxhdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlmICghbW9kZSkge1xuICAgICAgICBpZiAocmVsYXRpdmVFbGVtZW50ICYmIGVkaXRhYmxlRWxlbWVudC5jb250YWlucyhyZWxhdGl2ZUVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZWxhdGl2ZUVsZW1lbnQgPSByZWxhdGl2ZUVsZW1lbnQuY2xvc2VzdCgnW2RhdGEtc2xhdGUtbm9kZT1cImVsZW1lbnRcIl0nKTtcbiAgICAgICAgICAgIHJvb3RFbGVtZW50ID0gcmVsYXRpdmVFbGVtZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHJvb3RFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBBbmd1bGFyRWRpdG9yLnRvU2xhdGVOb2RlKGVkaXRvciwgcm9vdEVsZW1lbnQpIGFzIEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHBhdGggPSBBbmd1bGFyRWRpdG9yLmZpbmRQYXRoKGVkaXRvciwgbm9kZSk7XG4gICAgICAgIHJldHVybiBbbm9kZSwgcGF0aF07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufVxuIl19
|
package/esm2015/utils/index.js
CHANGED
|
@@ -4,4 +4,6 @@ export * from './get-toolbar-class';
|
|
|
4
4
|
export * from './create-empty-paragraph';
|
|
5
5
|
export * from './common';
|
|
6
6
|
export * from './is-clean-empty-paragraph';
|
|
7
|
-
|
|
7
|
+
export * from './merge-element-options';
|
|
8
|
+
export * from './dom';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXRhLXRyYW5zZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL3dlYWstbWFwcyc7XG5leHBvcnQgKiBmcm9tICcuL2dldC10b29sYmFyLWNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLWVtcHR5LXBhcmFncmFwaCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbic7XG5leHBvcnQgKiBmcm9tICcuL2lzLWNsZWFuLWVtcHR5LXBhcmFncmFwaCc7XG5leHBvcnQgKiBmcm9tICcuL21lcmdlLWVsZW1lbnQtb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2RvbSc7XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DefaultElementOptions } from '../interfaces';
|
|
2
|
+
export const mergeElementOptions = (elementOptions) => {
|
|
3
|
+
elementOptions = elementOptions.filter(item => item.inValidChildrenTypes.length > 0);
|
|
4
|
+
const combinationData = [...DefaultElementOptions, ...elementOptions];
|
|
5
|
+
const dataInfo = {};
|
|
6
|
+
combinationData.forEach(item => {
|
|
7
|
+
const { type, inValidChildrenTypes, isIndivisible, isSecondaryContainer } = item;
|
|
8
|
+
if (!dataInfo[type]) {
|
|
9
|
+
dataInfo[type] = {
|
|
10
|
+
type,
|
|
11
|
+
inValidChildrenTypes,
|
|
12
|
+
isIndivisible,
|
|
13
|
+
isSecondaryContainer
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
dataInfo[type].inValidChildrenTypes = Array.from(new Set([...inValidChildrenTypes, ...dataInfo[type].inValidChildrenTypes]));
|
|
17
|
+
});
|
|
18
|
+
return dataInfo;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtZWxlbWVudC1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL21lcmdlLWVsZW1lbnQtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQXNCLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsY0FBb0MsRUFBRSxFQUFFO0lBQ3hFLGNBQWMsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyRixNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQUcscUJBQXFCLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztJQUN0RSxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDcEIsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUMzQixNQUFNLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxHQUFHLElBQUksQ0FBQztRQUNqRixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRztnQkFDYixJQUFJO2dCQUNKLG9CQUFvQjtnQkFDcEIsYUFBYTtnQkFDYixvQkFBb0I7YUFDdkIsQ0FBQztTQUNMO1FBQ0QsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLG9CQUFvQixFQUFFLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pJLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxRQUFRLENBQUM7QUFDcEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVmYXVsdEVsZW1lbnRPcHRpb25zLCBFbGVtZW50T3B0aW9uc0luZm8gfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IG1lcmdlRWxlbWVudE9wdGlvbnMgPSAoZWxlbWVudE9wdGlvbnM6IEVsZW1lbnRPcHRpb25zSW5mb1tdKSA9PiB7XG4gICAgZWxlbWVudE9wdGlvbnMgPSBlbGVtZW50T3B0aW9ucy5maWx0ZXIoaXRlbSA9PiBpdGVtLmluVmFsaWRDaGlsZHJlblR5cGVzLmxlbmd0aCA+IDApO1xuICAgIGNvbnN0IGNvbWJpbmF0aW9uRGF0YSA9IFsuLi5EZWZhdWx0RWxlbWVudE9wdGlvbnMsIC4uLmVsZW1lbnRPcHRpb25zXTtcbiAgICBjb25zdCBkYXRhSW5mbyA9IHt9O1xuICAgIGNvbWJpbmF0aW9uRGF0YS5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBjb25zdCB7IHR5cGUsIGluVmFsaWRDaGlsZHJlblR5cGVzLCBpc0luZGl2aXNpYmxlLCBpc1NlY29uZGFyeUNvbnRhaW5lciB9ID0gaXRlbTtcbiAgICAgICAgaWYgKCFkYXRhSW5mb1t0eXBlXSkge1xuICAgICAgICAgICAgZGF0YUluZm9bdHlwZV0gPSB7XG4gICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICBpblZhbGlkQ2hpbGRyZW5UeXBlcyxcbiAgICAgICAgICAgICAgICBpc0luZGl2aXNpYmxlLFxuICAgICAgICAgICAgICAgIGlzU2Vjb25kYXJ5Q29udGFpbmVyXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGRhdGFJbmZvW3R5cGVdLmluVmFsaWRDaGlsZHJlblR5cGVzID0gQXJyYXkuZnJvbShuZXcgU2V0KFsuLi5pblZhbGlkQ2hpbGRyZW5UeXBlcywgLi4uZGF0YUluZm9bdHlwZV0uaW5WYWxpZENoaWxkcmVuVHlwZXNdKSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGRhdGFJbmZvO1xufTtcbiJdfQ==
|