@worktile/theia 14.3.10 → 14.3.11
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/editor.module.d.ts +3 -2
- package/esm2020/components/column-resize/column-resize.directive.mjs +4 -4
- package/esm2020/editor.module.mjs +4 -4
- package/esm2020/plugins/code/code.component.mjs +3 -6
- package/esm2020/plugins/table/components/insert-mark/insert-mark.component.mjs +5 -3
- package/esm2020/plugins/table/components/row/row.component.mjs +23 -17
- package/esm2020/plugins/table/components/table.component.mjs +188 -23
- package/esm2020/plugins/table/components/td/td.component.mjs +4 -35
- package/esm2020/plugins/table/components/toolbar/table-options.component.mjs +24 -9
- package/esm2020/plugins/table/components/toolbar/table-toolbar.component.mjs +38 -28
- package/esm2020/plugins/table/table.editor.mjs +6 -5
- package/esm2020/plugins/table/table.pipe.mjs +19 -3
- package/esm2020/plugins/table/table.plugin.mjs +2 -1
- package/esm2020/plugins/table/table.service.mjs +5 -7
- package/esm2020/plugins/table/table.store.mjs +46 -67
- package/esm2020/plugins/table/table.types.mjs +9 -4
- package/esm2020/plugins/table/transforms/insert-column.mjs +6 -2
- package/esm2020/plugins/table/utils/add-columns.mjs +16 -2
- package/esm2020/plugins/table/utils/create-table.mjs +5 -3
- package/esm2020/plugins/table/utils/is-selection-in-table.mjs +30 -8
- package/esm2020/plugins/table/utils/set-menu-cell-invisibility.mjs +9 -9
- package/esm2020/plugins/table/utils/table-position.mjs +1 -1
- package/esm2020/services/context.service.mjs +28 -4
- package/esm2020/services/table-contextmenu.service.mjs +8 -2
- package/esm2020/utils/copy-node.mjs +28 -13
- package/esm2020/utils/refocus.mjs +7 -7
- package/fesm2015/worktile-theia.mjs +501 -249
- package/fesm2015/worktile-theia.mjs.map +1 -1
- package/fesm2020/worktile-theia.mjs +489 -250
- package/fesm2020/worktile-theia.mjs.map +1 -1
- package/package.json +1 -1
- package/plugins/table/components/row/row.component.d.ts +5 -3
- package/plugins/table/components/table.component.d.ts +19 -4
- package/plugins/table/components/table.component.scss +168 -59
- package/plugins/table/components/td/td.component.d.ts +0 -3
- package/plugins/table/components/toolbar/table-toolbar.component.d.ts +9 -5
- package/plugins/table/table.editor.d.ts +2 -2
- package/plugins/table/table.pipe.d.ts +5 -0
- package/plugins/table/table.service.d.ts +2 -2
- package/plugins/table/table.store.d.ts +3 -3
- package/plugins/table/table.types.d.ts +7 -2
- package/plugins/table/utils/add-columns.d.ts +1 -1
- package/plugins/table/utils/is-selection-in-table.d.ts +2 -1
- package/plugins/table/utils/set-menu-cell-invisibility.d.ts +1 -1
- package/plugins/table/utils/table-position.d.ts +2 -2
- package/services/context.service.d.ts +7 -2
- package/utils/copy-node.d.ts +3 -1
- package/utils/refocus.d.ts +1 -2
|
@@ -2,6 +2,7 @@ import { Transforms, Editor } from 'slate';
|
|
|
2
2
|
import { TablePosition, createCell } from '../utils';
|
|
3
3
|
import { calcSpanForColumn } from '../utils/calc-span';
|
|
4
4
|
import { addColumns } from '../utils/add-columns';
|
|
5
|
+
import { AngularEditor } from 'slate-angular';
|
|
5
6
|
/**
|
|
6
7
|
* Insert a new column in current table
|
|
7
8
|
*/
|
|
@@ -41,7 +42,10 @@ getCell) {
|
|
|
41
42
|
});
|
|
42
43
|
}
|
|
43
44
|
if (table.columns) {
|
|
44
|
-
|
|
45
|
+
const theTableWrapper = AngularEditor.toDOMNode(editor, table).querySelector('.the-table-wrapper');
|
|
46
|
+
const scrollWidth = theTableWrapper.scrollWidth;
|
|
47
|
+
const clientWidth = theTableWrapper.clientWidth;
|
|
48
|
+
Transforms.setNodes(editor, { columns: addColumns(table, table.columns.length + 1, insertColumnIndex, scrollWidth > clientWidth) }, { at: tableEntry[1] });
|
|
45
49
|
}
|
|
46
50
|
});
|
|
47
51
|
}
|
|
@@ -58,4 +62,4 @@ export function insertColumnAtRow(opts, editor, count = 1, tableEntry, rowIndex,
|
|
|
58
62
|
}
|
|
59
63
|
});
|
|
60
64
|
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RyYW5zZm9ybXMvaW5zZXJ0LWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBYSxNQUFNLE9BQU8sQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5Qzs7R0FFRztBQUNILE1BQU0sVUFBVSxZQUFZLENBQ3hCLElBQWtCLEVBQ2xCLE1BQWMsRUFDZCxLQUFLLEdBQUcsQ0FBQyxFQUNULEVBQVcsRUFBRSxlQUFlO0FBQzVCLE9BQTJEO0lBRTNELE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDN0IsTUFBTSxFQUNGLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxFQUNuQixHQUFHLFNBQVMsQ0FBQztJQUVkLE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvRCxJQUFJLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ2hDLElBQUksVUFBVSxHQUFHLGFBQWEsQ0FBQyxVQUFVLENBQUM7SUFFMUMsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUU5RixzQkFBc0I7SUFFdEIsTUFBTSxD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QUNULFVBQW1DLEVBQ25DLFFBQWdCLEVBQ2hCLFdBQW1CLEVBQ25CLE9BQTJEO0lBRTNELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1FBQ25DLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDNUIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUUsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDdEMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUM7YUFDcEQsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2Zvcm1zLCBFZGl0b3IsIE5vZGVFbnRyeSB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRhYmxlUG9zaXRpb24sIGNyZWF0ZUNlbGwgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBjYWxjU3BhbkZvckNvbHVtbiB9IGZyb20gJy4uL3V0aWxzL2NhbGMtc3Bhbic7XG5pbXBvcnQgeyBhZGRDb2x1bW5zIH0gZnJvbSAnLi4vdXRpbHMvYWRkLWNvbHVtbnMnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCwgVGFibGVFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3IgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcblxuLyoqXG4gKiBJbnNlcnQgYSBuZXcgY29sdW1uIGluIGN1cnJlbnQgdGFibGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluc2VydENvbHVtbihcbiAgICBvcHRzOiBUYWJsZU9wdGlvbnMsXG4gICAgZWRpdG9yOiBFZGl0b3IsXG4gICAgY291bnQgPSAxLFxuICAgIGF0PzogbnVtYmVyLCAvLyBDb2x1bW4gaW5kZXhcbiAgICBnZXRDZWxsPzogKGNvbHVtbjogbnVtYmVyLCByb3c6IG51bWJlcikgPT4gVGFibGVDZWxsRWxlbWVudFxuKSB7XG4gICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IGVkaXRvcjtcbiAgICBjb25zdCB7XG4gICAgICAgIGFuY2hvcjogeyBwYXRoIH1cbiAgICB9ID0gc2VsZWN0aW9uO1xuXG4gICAgY29uc3QgdGFibGVQb3NpdGlvbiA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG9wdHMsIGVkaXRvciwgcGF0aCk7XG4gICAgbGV0IHRhYmxlID0gdGFibGVQb3NpdGlvbi50YWJsZTtcbiAgICBsZXQgdGFibGVFbnRyeSA9IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeTtcblxuICAgIGNvbnN0IGluc2VydENvbHVtbkluZGV4ID0gdHlwZW9mIGF0ID09PSAndW5kZWZpbmVkJyA/IHRhYmxlUG9zaXRpb24uZ2V0Q29sdW1uSW5kZXgoKSArIDEgOiBhdDtcblxuICAgIC8vIEluc2VydCB0aGUgbmV3IGNlbGxcblxuICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbHNwYW4gPSBjYWxjU3BhbkZvckNvbHVtbih0YWJsZSwgaW5zZXJ0Q29sdW1uSW5kZXgpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcbiAgICAgICAgICAgIHRhYmxlLmNoaWxkcmVuLmZvckVhY2goKHJvdywgcm93SW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBpc0luc2lkZSA9IGNvbHNwYW5bcm93SW5kZXhdO1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0NlbGwgPSBnZXRDZWxsID8gZ2V0Q2VsbChpbnNlcnRDb2x1bW5JbmRleCwgcm93SW5kZXgpIDogY3JlYXRlQ2VsbChvcHRzKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNJbnNpZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgbmV3Q2VsbC5oaWRkZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkaXJ0eUNlbGwgPSByb3cuY2hpbGRyZW4uZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgIChjZWxsOiBUYWJsZUNlbGxFbGVtZW50LCBjb2x1bW5JbmRleDogbnVtYmVyKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICFjZWxsLmhpZGRlbiAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbkluZGV4IDwgaW5zZXJ0Q29sdW1uSW5kZXggJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZWxsLmNvbHNwYW4gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZWxsLmNvbHNwYW4gKyBjb2x1bW5JbmRleCA+IGluc2VydENvbHVtbkluZGV4XG4gICAgICAgICAgICAgICAgICAgICkgYXMgVGFibGVDZWxsRWxlbWVudDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGRpcnR5Q2VsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBjb2xzcGFuOiBkaXJ0eUNlbGwuY29sc3BhbiArIDEgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0OiB0YWJsZVBvc2l0aW9uLnRhYmxlRW50cnlbMV0uY29uY2F0KHJvd0luZGV4KS5jb25jYXQocm93LmNoaWxkcmVuLmluZGV4T2YoZGlydHlDZWxsKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcG9zaXRpb24gPSBUYWJsZVBvc2l0aW9uLmNyZWF0ZShvcHRzLCBlZGl0b3IsIHBhdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFibGUgPSBwb3NpdGlvbi50YWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlRW50cnkgPSBwb3NpdGlvbi50YWJsZUVudHJ5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZXMoZWRpdG9yLCBbbmV3Q2VsbF0sIHtcbiAgICAgICAgICAgICAgICAgICAgYXQ6IHRhYmxlUG9zaXRpb24udGFibGVFbnRyeVsxXS5jb25jYXQocm93SW5kZXgpLmNvbmNhdChpbnNlcnRDb2x1bW5JbmRleClcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0YWJsZS5jb2x1bW5zKSB7XG4gICAgICAgICAgICBjb25zdCB0aGVUYWJsZVdyYXBwZXIgPSBBbmd1bGFyRWRpdG9yLnRvRE9NTm9kZShlZGl0b3IsIHRhYmxlKS5xdWVyeVNlbGVjdG9yKCcudGhlLXRhYmxlLXdyYXBwZXInKTtcbiAgICAgICAgICAgIGNvbnN0IHNjcm9sbFdpZHRoID0gdGhlVGFibGVXcmFwcGVyLnNjcm9sbFdpZHRoO1xuICAgICAgICAgICAgY29uc3QgY2xpZW50V2lkdGggPSB0aGVUYWJsZVdyYXBwZXIuY2xpZW50V2lkdGg7XG4gICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKFxuICAgICAgICAgICAgICAgIGVkaXRvcixcbiAgICAgICAgICAgICAgICB7IGNvbHVtbnM6IGFkZENvbHVtbnModGFibGUsIHRhYmxlLmNvbHVtbnMubGVuZ3RoICsgMSwgaW5zZXJ0Q29sdW1uSW5kZXgsIHNjcm9sbFdpZHRoID4gY2xpZW50V2lkdGgpIH0sXG4gICAgICAgICAgICAgICAgeyBhdDogdGFibGVFbnRyeVsxXSB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfSk7XG59XG5cbi8qKlxuICogSW5zZXJ0IG5ldyBjb2x1bW4gaW4gdGhlIHJvd1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0Q29sdW1uQXRSb3coXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGVkaXRvcjogRWRpdG9yLFxuICAgIGNvdW50ID0gMSxcbiAgICB0YWJsZUVudHJ5OiBOb2RlRW50cnk8VGFibGVFbGVtZW50PixcbiAgICByb3dJbmRleDogbnVtYmVyLFxuICAgIGNvbHVtbkluZGV4OiBudW1iZXIsXG4gICAgZ2V0Q2VsbD86IChjb2x1bW46IG51bWJlciwgcm93OiBudW1iZXIpID0+IFRhYmxlQ2VsbEVsZW1lbnRcbikge1xuICAgIEVkaXRvci53aXRob3V0Tm9ybWFsaXppbmcoZWRpdG9yLCAoKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgbmV3Q2VsbCA9IGdldENlbGwgPyBnZXRDZWxsKGNvbHVtbkluZGV4LCByb3dJbmRleCkgOiBjcmVhdGVDZWxsKG9wdHMpO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5pbnNlcnROb2RlcyhlZGl0b3IsIFtuZXdDZWxsXSwge1xuICAgICAgICAgICAgICAgIGF0OiB0YWJsZUVudHJ5WzFdLmNvbmNhdChbcm93SW5kZXgsIGNvbHVtbkluZGV4XSlcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TableOptions } from '../table.types';
|
|
2
|
-
export function addColumns(table, columnsCount, insertIndex) {
|
|
2
|
+
export function addColumns(table, columnsCount, insertIndex, canScroll) {
|
|
3
3
|
if (table.columns.length < columnsCount) {
|
|
4
4
|
if (!insertIndex && insertIndex !== 0) {
|
|
5
5
|
insertIndex = table.columns.length;
|
|
@@ -11,6 +11,20 @@ export function addColumns(table, columnsCount, insertIndex) {
|
|
|
11
11
|
const preTotalWidth = table.columns.reduce((prevValue, column) => {
|
|
12
12
|
return prevValue + column.width;
|
|
13
13
|
}, 0);
|
|
14
|
+
const isEqualColumns = table.columns.every(col => col.width === table.columns[0].width);
|
|
15
|
+
if (isEqualColumns) {
|
|
16
|
+
if (canScroll) {
|
|
17
|
+
columns.push(columns[0]);
|
|
18
|
+
return columns;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
const width = Math.round(preTotalWidth / columnsCount > opts.minWidthPx ? preTotalWidth / columnsCount : opts.minWidthPx);
|
|
22
|
+
columns.push({ width });
|
|
23
|
+
return columns.map(() => {
|
|
24
|
+
return { width };
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
14
28
|
for (let i = 0; i < columnsCount - table.columns.length; i++) {
|
|
15
29
|
columns.splice(insertIndex, 0, { width: opts.defaultWidth });
|
|
16
30
|
}
|
|
@@ -25,4 +39,4 @@ export function addColumns(table, columnsCount, insertIndex) {
|
|
|
25
39
|
}
|
|
26
40
|
return table.columns;
|
|
27
41
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWNvbHVtbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9hZGQtY29sdW1ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsTUFBTSxVQUFVLFVBQVUsQ0FBQyxLQUFtQixFQUFFLFlBQW9CLEVBQUUsV0FBb0IsRUFBRSxTQUFtQjtJQUMzRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLFlBQVksRUFBRTtRQUNyQyxJQUFJLENBQUMsV0FBVyxJQUFJLFdBQVcsS0FBSyxDQUFDLEVBQUU7WUFDbkMsV0FBVyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1NBQ3RDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoQyxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDN0QsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFTixNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV4RixJQUFJLGNBQWMsRUFBRTtZQUNoQixJQUFJLFNBQVMsRUFBRTtnQkFDWCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN6QixPQUFPLE9BQU8sQ0FBQzthQUNsQjtpQkFBTTtnQkFDSCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMxSCxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFFeEIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDcEIsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO2dCQUNyQixDQUFDLENBQUMsQ0FBQzthQUNOO1NBQ0o7UUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsWUFBWSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzFELE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztTQUNoRTtRQUNELE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUMzRCxPQUFPLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ3BDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVOLE1BQU0sVUFBVSxHQUFHLGFBQWEsR0FBRyxpQkFBaUIsQ0FBQztRQUNyRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3BILE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztLQUNOO0lBQ0QsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYWJsZUVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdHlwZXMnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYWRkQ29sdW1ucyh0YWJsZTogVGFibGVFbGVtZW50LCBjb2x1bW5zQ291bnQ6IG51bWJlciwgaW5zZXJ0SW5kZXg/OiBudW1iZXIsIGNhblNjcm9sbD86IGJvb2xlYW4pIHtcbiAgICBpZiAodGFibGUuY29sdW1ucy5sZW5ndGggPCBjb2x1bW5zQ291bnQpIHtcbiAgICAgICAgaWYgKCFpbnNlcnRJbmRleCAmJiBpbnNlcnRJbmRleCAhPT0gMCkge1xuICAgICAgICAgICAgaW5zZXJ0SW5kZXggPSB0YWJsZS5jb2x1bW5zLmxlbmd0aDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvcHRzID0gbmV3IFRhYmxlT3B0aW9ucygpO1xuICAgICAgICBsZXQgY29sdW1ucyA9IHRhYmxlLmNvbHVtbnMuc2xpY2UoMCwgY29sdW1uc0NvdW50KS5tYXAoaXRlbSA9PiB7XG4gICAgICAgICAgICByZXR1cm4geyB3aWR0aDogaXRlbS53aWR0aCB9O1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcHJlVG90YWxXaWR0aCA9IHRhYmxlLmNvbHVtbnMucmVkdWNlKChwcmV2VmFsdWUsIGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHByZXZWYWx1ZSArIGNvbHVtbi53aWR0aDtcbiAgICAgICAgfSwgMCk7XG5cbiAgICAgICAgY29uc3QgaXNFcXVhbENvbHVtbnMgPSB0YWJsZS5jb2x1bW5zLmV2ZXJ5KGNvbCA9PiBjb2wud2lkdGggPT09IHRhYmxlLmNvbHVtbnNbMF0ud2lkdGgpO1xuXG4gICAgICAgIGlmIChpc0VxdWFsQ29sdW1ucykge1xuICAgICAgICAgICAgaWYgKGNhblNjcm9sbCkge1xuICAgICAgICAgICAgICAgIGNvbHVtbnMucHVzaChjb2x1bW5zWzBdKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29sdW1ucztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgd2lkdGggPSBNYXRoLnJvdW5kKHByZVRvdGFsV2lkdGggLyBjb2x1bW5zQ291bnQgPiBvcHRzLm1pbldpZHRoUHggPyBwcmVUb3RhbFdpZHRoIC8gY29sdW1uc0NvdW50IDogb3B0cy5taW5XaWR0aFB4KTtcbiAgICAgICAgICAgICAgICBjb2x1bW5zLnB1c2goeyB3aWR0aCB9KTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBjb2x1bW5zLm1hcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHdpZHRoIH07XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbHVtbnNDb3VudCAtIHRhYmxlLmNvbHVtbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbHVtbnMuc3BsaWNlKGluc2VydEluZGV4LCAwLCB7IHdpZHRoOiBvcHRzLmRlZmF1bHRXaWR0aCB9KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjdXJyZW50VG90YWxXaWR0aCA9IGNvbHVtbnMucmVkdWNlKChwcmV2VmFsdWUsIGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHByZXZWYWx1ZSArIGNvbHVtbi53aWR0aDtcbiAgICAgICAgfSwgMCk7XG5cbiAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IHByZVRvdGFsV2lkdGggLyBjdXJyZW50VG90YWxXaWR0aDtcbiAgICAgICAgcmV0dXJuIGNvbHVtbnMubWFwKChjb2x1bW4sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB3aWR0aCA9IE1hdGgucm91bmQoY29sdW1uLndpZHRoICogcGVyY2VudGFnZSA+IG9wdHMubWluV2lkdGhQeCA/IGNvbHVtbi53aWR0aCAqIHBlcmNlbnRhZ2UgOiBvcHRzLm1pbldpZHRoUHgpO1xuICAgICAgICAgICAgcmV0dXJuIHsgd2lkdGggfTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB0YWJsZS5jb2x1bW5zO1xufVxuIl19
|
|
@@ -4,10 +4,12 @@ import { createRow } from './create-row';
|
|
|
4
4
|
*/
|
|
5
5
|
export function createTable(opts, columns, rows, getCellContent) {
|
|
6
6
|
const rowNodes = new Array(rows).fill(1).map(i => createRow(opts, columns, getCellContent ? getCellContent.bind(null, i) : undefined));
|
|
7
|
-
rowNodes[0].header = true;
|
|
8
7
|
return {
|
|
9
8
|
type: opts.typeTable,
|
|
10
|
-
children: rowNodes
|
|
9
|
+
children: rowNodes,
|
|
10
|
+
options: {
|
|
11
|
+
headerRow: true
|
|
12
|
+
}
|
|
11
13
|
};
|
|
12
14
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdXRpbHMvY3JlYXRlLXRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekM7O0dBRUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUN2QixJQUFrQixFQUNsQixPQUFlLEVBQ2YsSUFBWSxFQUNaLGNBQXdEO0lBRXhELE1BQU0sUUFBUSxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBRXZJLE9BQU87UUFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVM7UUFDcEIsUUFBUSxFQUFFLFFBQVE7UUFDbEIsT0FBTyxFQUFFO1lBQ0wsU0FBUyxFQUFFLElBQUk7U0FDbEI7S0FDSixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGUgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZUVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdHlwZXMnO1xuaW1wb3J0IHsgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlUm93IH0gZnJvbSAnLi9jcmVhdGUtcm93JztcblxuLyoqXG4gKiBDcmVhdGUgYSB0YWJsZVxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVGFibGUoXG4gICAgb3B0czogVGFibGVPcHRpb25zLFxuICAgIGNvbHVtbnM6IG51bWJlcixcbiAgICByb3dzOiBudW1iZXIsXG4gICAgZ2V0Q2VsbENvbnRlbnQ/OiAocm93OiBudW1iZXIsIGNvbHVtbjogbnVtYmVyKSA9PiBOb2RlW11cbik6IFRhYmxlRWxlbWVudCB7XG4gICAgY29uc3Qgcm93Tm9kZXMgPSBuZXcgQXJyYXkocm93cykuZmlsbCgxKS5tYXAoaSA9PiBjcmVhdGVSb3cob3B0cywgY29sdW1ucywgZ2V0Q2VsbENvbnRlbnQgPyBnZXRDZWxsQ29udGVudC5iaW5kKG51bGwsIGkpIDogdW5kZWZpbmVkKSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBvcHRzLnR5cGVUYWJsZSxcbiAgICAgICAgY2hpbGRyZW46IHJvd05vZGVzLFxuICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICBoZWFkZXJSb3c6IHRydWVcbiAgICAgICAgfVxuICAgIH07XG59XG4iXX0=
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { TableOptions } from '../table.types';
|
|
1
2
|
import { isRangeInTable } from './is-range-in-table';
|
|
3
|
+
import { TablePosition } from './table-position';
|
|
2
4
|
/**
|
|
3
5
|
* Is the selection in a table
|
|
4
6
|
*/
|
|
@@ -10,21 +12,41 @@ export function isSelectionInTable(opts, editor) {
|
|
|
10
12
|
}
|
|
11
13
|
/**
|
|
12
14
|
* Whether the cells passed in can form a rectangle
|
|
15
|
+
* @param editor
|
|
13
16
|
* @param cells
|
|
14
17
|
* @returns boolean
|
|
15
18
|
*/
|
|
16
|
-
export function isRectangularInTableCells(cells) {
|
|
19
|
+
export function isRectangularInTableCells(editor, cells) {
|
|
20
|
+
let selectCellSize = cells.length;
|
|
21
|
+
if (selectCellSize === 0) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
17
24
|
const { row, col } = cells[0];
|
|
18
25
|
let maxCol = col;
|
|
19
26
|
let minCol = col;
|
|
20
27
|
let maxRow = row;
|
|
21
28
|
let minRow = row;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
29
|
+
const path = editor.selection.anchor.path;
|
|
30
|
+
const pos = TablePosition.create(new TableOptions(), editor, path);
|
|
31
|
+
for (let { row, col } of cells) {
|
|
32
|
+
const node = pos.findCellByPath({ row, col });
|
|
33
|
+
if (node.hidden) {
|
|
34
|
+
selectCellSize--;
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
const { rowspan, colspan } = pos.table.children[row].children[col];
|
|
38
|
+
if (rowspan && colspan) {
|
|
39
|
+
// 更新视觉选中的个数
|
|
40
|
+
selectCellSize = selectCellSize + (rowspan * colspan - 1);
|
|
41
|
+
// 纠正合并单元格下的 row 和 col 的真实值
|
|
42
|
+
col = col + colspan - 1;
|
|
43
|
+
row = row + rowspan - 1;
|
|
44
|
+
}
|
|
45
|
+
maxCol = col > maxCol ? col : maxCol;
|
|
46
|
+
minCol = col < minCol ? col : minCol;
|
|
47
|
+
maxRow = row > maxRow ? row : maxRow;
|
|
48
|
+
minRow = row < minRow ? row : minRow;
|
|
27
49
|
}
|
|
28
|
-
return (maxRow + 1 - minRow) * (maxCol + 1 - minCol) ===
|
|
50
|
+
return (maxRow + 1 - minRow) * (maxCol + 1 - minCol) === selectCellSize;
|
|
29
51
|
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtc2VsZWN0aW9uLWluLXRhYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3BsdWdpbnMvdGFibGUvdXRpbHMvaXMtc2VsZWN0aW9uLWluLXRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRDs7R0FFRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxJQUFrQixFQUFFLE1BQWM7SUFDakUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUU7UUFDbkIsT0FBTyxLQUFLLENBQUM7S0FDaEI7SUFDRCxPQUFPLGNBQWMsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMxRCxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUseUJBQXlCLENBQUMsTUFBYyxFQUFFLEtBQXFCO0lBQzNFLElBQUksY0FBYyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDbEMsSUFBSSxjQUFjLEtBQUssQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBQ0QsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUIsSUFBSSxNQUFNLEdBQVcsR0FBRyxDQUFDO0lBQ3pCLElBQUksTUFBTSxHQUFXLEdBQUcsQ0FBQztJQUN6QixJQUFJLE1BQU0sR0FBVyxHQUFHLENBQUM7SUFDekIsSUFBSSxNQUFNLEdBQVcsR0FBRyxDQUFDO0lBQ3pCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUMxQyxNQUFNLEdBQUcsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25FLEtBQUssSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxLQUFLLEVBQUU7UUFDNUIsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzlDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNiLGNBQWMsRUFBRSxDQUFDO1lBQ2pCLFNBQVM7U0FDWjtRQUNELE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25FLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRTtZQUNwQixZQUFZO1lBQ1osY0FBYyxHQUFHLGNBQWMsR0FBRyxDQUFDLE9BQU8sR0FBRyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUQsMkJBQTJCO1lBQzNCLEdBQUcsR0FBRyxHQUFHLEdBQUcsT0FBTyxHQUFHLENBQUMsQ0FBQztZQUN4QixHQUFHLEdBQUcsR0FBRyxHQUFHLE9BQU8sR0FBRyxDQUFDLENBQUM7U0FDM0I7UUFDRCxNQUFNLEdBQUcsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDckMsTUFBTSxHQUFHLEdBQUcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ3JDLE1BQU0sR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNyQyxNQUFNLEdBQUcsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7S0FDeEM7SUFDRCxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssY0FBYyxDQUFDO0FBQzVFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3IgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBTZWxlY3RlZENlbGwsIFRhYmxlT3B0aW9ucyB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IGlzUmFuZ2VJblRhYmxlIH0gZnJvbSAnLi9pcy1yYW5nZS1pbi10YWJsZSc7XG5pbXBvcnQgeyBUYWJsZVBvc2l0aW9uIH0gZnJvbSAnLi90YWJsZS1wb3NpdGlvbic7XG5cbi8qKlxuICogSXMgdGhlIHNlbGVjdGlvbiBpbiBhIHRhYmxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1NlbGVjdGlvbkluVGFibGUob3B0czogVGFibGVPcHRpb25zLCBlZGl0b3I6IEVkaXRvcik6IGJvb2xlYW4ge1xuICAgIGlmICghZWRpdG9yLnNlbGVjdGlvbikge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiBpc1JhbmdlSW5UYWJsZShvcHRzLCBlZGl0b3IsIGVkaXRvci5zZWxlY3Rpb24pO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGNlbGxzIHBhc3NlZCBpbiBjYW4gZm9ybSBhIHJlY3RhbmdsZVxuICogQHBhcmFtIGVkaXRvclxuICogQHBhcmFtIGNlbGxzXG4gKiBAcmV0dXJucyBib29sZWFuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1JlY3Rhbmd1bGFySW5UYWJsZUNlbGxzKGVkaXRvcjogRWRpdG9yLCBjZWxsczogU2VsZWN0ZWRDZWxsW10pOiBib29sZWFuIHtcbiAgICBsZXQgc2VsZWN0Q2VsbFNpemUgPSBjZWxscy5sZW5ndGg7XG4gICAgaWYgKHNlbGVjdENlbGxTaXplID09PSAwKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgeyByb3csIGNvbCB9ID0gY2VsbHNbMF07XG4gICAgbGV0IG1heENvbDogbnVtYmVyID0gY29sO1xuICAgIGxldCBtaW5Db2w6IG51bWJlciA9IGNvbDtcbiAgICBsZXQgbWF4Um93OiBudW1iZXIgPSByb3c7XG4gICAgbGV0IG1pblJvdzogbnVtYmVyID0gcm93O1xuICAgIGNvbnN0IHBhdGggPSBlZGl0b3Iuc2VsZWN0aW9uLmFuY2hvci5wYXRoO1xuICAgIGNvbnN0IHBvcyA9IFRhYmxlUG9zaXRpb24uY3JlYXRlKG5ldyBUYWJsZU9wdGlvbnMoKSwgZWRpdG9yLCBwYXRoKTtcbiAgICBmb3IgKGxldCB7IHJvdywgY29sIH0gb2YgY2VsbHMpIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHBvcy5maW5kQ2VsbEJ5UGF0aCh7IHJvdywgY29sIH0pO1xuICAgICAgICBpZiAobm9kZS5oaWRkZW4pIHtcbiAgICAgICAgICAgIHNlbGVjdENlbGxTaXplLS07XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB7IHJvd3NwYW4sIGNvbHNwYW4gfSA9IHBvcy50YWJsZS5jaGlsZHJlbltyb3ddLmNoaWxkcmVuW2NvbF07XG4gICAgICAgIGlmIChyb3dzcGFuICYmIGNvbHNwYW4pIHtcbiAgICAgICAgICAgIC8vIOabtOaWsOinhuiniemAieS4reeahOS4quaVsFxuICAgICAgICAgICAgc2VsZWN0Q2VsbFNpemUgPSBzZWxlY3RDZWxsU2l6ZSArIChyb3dzcGFuICogY29sc3BhbiAtIDEpO1xuICAgICAgICAgICAgLy8g57qg5q2j5ZCI5bm25Y2V5YWD5qC85LiL55qEIHJvdyDlkowgY29sIOeahOecn+WunuWAvFxuICAgICAgICAgICAgY29sID0gY29sICsgY29sc3BhbiAtIDE7XG4gICAgICAgICAgICByb3cgPSByb3cgKyByb3dzcGFuIC0gMTtcbiAgICAgICAgfVxuICAgICAgICBtYXhDb2wgPSBjb2wgPiBtYXhDb2wgPyBjb2wgOiBtYXhDb2w7XG4gICAgICAgIG1pbkNvbCA9IGNvbCA8IG1pbkNvbCA/IGNvbCA6IG1pbkNvbDtcbiAgICAgICAgbWF4Um93ID0gcm93ID4gbWF4Um93ID8gcm93IDogbWF4Um93O1xuICAgICAgICBtaW5Sb3cgPSByb3cgPCBtaW5Sb3cgPyByb3cgOiBtaW5Sb3c7XG4gICAgfVxuICAgIHJldHVybiAobWF4Um93ICsgMSAtIG1pblJvdykgKiAobWF4Q29sICsgMSAtIG1pbkNvbCkgPT09IHNlbGVjdENlbGxTaXplO1xufVxuIl19
|
|
@@ -3,18 +3,18 @@ import { getSelectCellNode } from './get-select-cell-node';
|
|
|
3
3
|
import { isRectangularInTableCells } from './is-selection-in-table';
|
|
4
4
|
import { TableInsertType } from '../table.types';
|
|
5
5
|
import { TableEditor } from '../table.editor';
|
|
6
|
-
export function setCellMenuVisibility(editor, menuList, tableInfo
|
|
6
|
+
export function setCellMenuVisibility(editor, menuList, tableInfo) {
|
|
7
7
|
const { selectedCells, isFullscreen, selectedRowsIndex, selectedColumnsIndex } = tableInfo;
|
|
8
8
|
const isCellMerged = isSelectedCellMerged(editor);
|
|
9
9
|
const selectCellNodes = getSelectCellNode(editor, selectedCells).filter(item => !item.node.hidden);
|
|
10
|
-
const isRect = isRectangularInTableCells(selectedCells);
|
|
10
|
+
const isRect = isRectangularInTableCells(editor, selectedCells);
|
|
11
11
|
menuList.forEach(item => {
|
|
12
12
|
switch (item.key) {
|
|
13
13
|
case 'merge-cells':
|
|
14
|
-
item.visibility = selectCellNodes && selectCellNodes.length > 1 &&
|
|
14
|
+
item.visibility = selectCellNodes && selectCellNodes.length > 1 && isRect;
|
|
15
15
|
break;
|
|
16
16
|
case 'split-cells':
|
|
17
|
-
item.visibility = selectCellNodes && selectCellNodes.length === 1 && isCellMerged
|
|
17
|
+
item.visibility = selectCellNodes && selectCellNodes.length === 1 && isCellMerged;
|
|
18
18
|
break;
|
|
19
19
|
case 'delete-selection-rows':
|
|
20
20
|
item.visibility = !isFullscreen || !selectedColumnsIndex.length;
|
|
@@ -26,15 +26,15 @@ export function setCellMenuVisibility(editor, menuList, tableInfo, isFromControl
|
|
|
26
26
|
item.visibility = !isFullscreen;
|
|
27
27
|
break;
|
|
28
28
|
case TableInsertType.insertRowsUp:
|
|
29
|
-
const
|
|
30
|
-
item.visibility = !
|
|
29
|
+
const hasHeaderRowCell = TableEditor.hasHeaderRowCell(editor);
|
|
30
|
+
item.visibility = !hasHeaderRowCell && isRect;
|
|
31
31
|
break;
|
|
32
32
|
case TableInsertType.insertRowsDown:
|
|
33
33
|
item.visibility = isRect;
|
|
34
34
|
break;
|
|
35
35
|
case TableInsertType.insertColumnsLeft:
|
|
36
|
-
const
|
|
37
|
-
item.visibility = !
|
|
36
|
+
const hasHeaderColumnCell = TableEditor.hasHeaderColumnCell(editor);
|
|
37
|
+
item.visibility = !hasHeaderColumnCell && isRect;
|
|
38
38
|
break;
|
|
39
39
|
case TableInsertType.insertColumnsRight:
|
|
40
40
|
item.visibility = isRect;
|
|
@@ -42,4 +42,4 @@ export function setCellMenuVisibility(editor, menuList, tableInfo, isFromControl
|
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LW1lbnUtY2VsbC1pbnZpc2liaWxpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9zZXQtbWVudS1jZWxsLWludmlzaWJpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEUsT0FBTyxFQUE0QixlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsTUFBTSxVQUFVLHFCQUFxQixDQUNqQyxNQUFjLEVBQ2QsUUFBc0IsRUFDdEIsU0FBbUk7SUFFbkksTUFBTSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxTQUFTLENBQUM7SUFDM0YsTUFBTSxZQUFZLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsTUFBTSxlQUFlLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRyxNQUFNLE1BQU0sR0FBRyx5QkFBeUIsQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDaEUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNwQixRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDZCxLQUFLLGFBQWE7Z0JBQ2QsSUFBSSxDQUFDLFVBQVUsR0FBRyxlQUFlLElBQUksZUFBZSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDO2dCQUMxRSxNQUFNO1lBQ1YsS0FBSyxhQUFhO2dCQUNkLElBQUksQ0FBQyxVQUFVLEdBQUcsZUFBZSxJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQztnQkFDbEYsTUFBTTtZQUNWLEtBQUssdUJBQXVCO2dCQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsWUFBWSxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDO2dCQUNoRSxNQUFNO1lBQ1YsS0FBSywwQkFBMEI7Z0JBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxZQUFZLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7Z0JBQzdELE1BQU07WUFDVixLQUFLLGNBQWM7Z0JBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLFlBQVksQ0FBQztnQkFDaEMsTUFBTTtZQUNWLEtBQUssZUFBZSxDQUFDLFlBQVk7Z0JBQzdCLE1BQU0sZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUM5RCxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsZ0JBQWdCLElBQUksTUFBTSxDQUFDO2dCQUM5QyxNQUFNO1lBQ1YsS0FBSyxlQUFlLENBQUMsY0FBYztnQkFDL0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7Z0JBQ3pCLE1BQU07WUFDVixLQUFLLGVBQWUsQ0FBQyxpQkFBaUI7Z0JBQ2xDLE1BQU0sbUJBQW1CLEdBQUcsV0FBVyxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNwRSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsbUJBQW1CLElBQUksTUFBTSxDQUFDO2dCQUNqRCxNQUFNO1lBQ1YsS0FBSyxlQUFlLENBQUMsa0JBQWtCO2dCQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztnQkFDekIsTUFBTTtTQUNiO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgaXNTZWxlY3RlZENlbGxNZXJnZWQgfSBmcm9tICcuL21lcmdlLWNlbGwnO1xuaW1wb3J0IHsgZ2V0U2VsZWN0Q2VsbE5vZGUgfSBmcm9tICcuL2dldC1zZWxlY3QtY2VsbC1ub2RlJztcbmltcG9ydCB7IGlzUmVjdGFuZ3VsYXJJblRhYmxlQ2VsbHMgfSBmcm9tICcuL2lzLXNlbGVjdGlvbi1pbi10YWJsZSc7XG5pbXBvcnQgeyBNZW51RW50aXR5LCBTZWxlY3RlZENlbGwsIFRhYmxlSW5zZXJ0VHlwZSB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IFRhYmxlRWRpdG9yIH0gZnJvbSAnLi4vdGFibGUuZWRpdG9yJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldENlbGxNZW51VmlzaWJpbGl0eShcbiAgICBlZGl0b3I6IEVkaXRvcixcbiAgICBtZW51TGlzdDogTWVudUVudGl0eVtdLFxuICAgIHRhYmxlSW5mbzogeyBzZWxlY3RlZENlbGxzOiBTZWxlY3RlZENlbGxbXTsgaXNGdWxsc2NyZWVuPzogYm9vbGVhbjsgc2VsZWN0ZWRSb3dzSW5kZXg/OiBudW1iZXJbXTsgc2VsZWN0ZWRDb2x1bW5zSW5kZXg/OiBudW1iZXJbXSB9XG4pIHtcbiAgICBjb25zdCB7IHNlbGVjdGVkQ2VsbHMsIGlzRnVsbHNjcmVlbiwgc2VsZWN0ZWRSb3dzSW5kZXgsIHNlbGVjdGVkQ29sdW1uc0luZGV4IH0gPSB0YWJsZUluZm87XG4gICAgY29uc3QgaXNDZWxsTWVyZ2VkID0gaXNTZWxlY3RlZENlbGxNZXJnZWQoZWRpdG9yKTtcbiAgICBjb25zdCBzZWxlY3RDZWxsTm9kZXMgPSBnZXRTZWxlY3RDZWxsTm9kZShlZGl0b3IsIHNlbGVjdGVkQ2VsbHMpLmZpbHRlcihpdGVtID0+ICFpdGVtLm5vZGUuaGlkZGVuKTtcbiAgICBjb25zdCBpc1JlY3QgPSBpc1JlY3Rhbmd1bGFySW5UYWJsZUNlbGxzKGVkaXRvciwgc2VsZWN0ZWRDZWxscyk7XG4gICAgbWVudUxpc3QuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgc3dpdGNoIChpdGVtLmtleSkge1xuICAgICAgICAgICAgY2FzZSAnbWVyZ2UtY2VsbHMnOlxuICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJpbGl0eSA9IHNlbGVjdENlbGxOb2RlcyAmJiBzZWxlY3RDZWxsTm9kZXMubGVuZ3RoID4gMSAmJiBpc1JlY3Q7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdzcGxpdC1jZWxscyc6XG4gICAgICAgICAgICAgICAgaXRlbS52aXNpYmlsaXR5ID0gc2VsZWN0Q2VsbE5vZGVzICYmIHNlbGVjdENlbGxOb2Rlcy5sZW5ndGggPT09IDEgJiYgaXNDZWxsTWVyZ2VkO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnZGVsZXRlLXNlbGVjdGlvbi1yb3dzJzpcbiAgICAgICAgICAgICAgICBpdGVtLnZpc2liaWxpdHkgPSAhaXNGdWxsc2NyZWVuIHx8ICFzZWxlY3RlZENvbHVtbnNJbmRleC5sZW5ndGg7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdkZWxldGUtc2VsZWN0aW9uLWNvbHVtbnMnOlxuICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJpbGl0eSA9ICFpc0Z1bGxzY3JlZW4gfHwgIXNlbGVjdGVkUm93c0luZGV4Lmxlbmd0aDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2RlbGV0ZS10YWJsZSc6XG4gICAgICAgICAgICAgICAgaXRlbS52aXNpYmlsaXR5ID0gIWlzRnVsbHNjcmVlbjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFibGVJbnNlcnRUeXBlLmluc2VydFJvd3NVcDpcbiAgICAgICAgICAgICAgICBjb25zdCBoYXNIZWFkZXJSb3dDZWxsID0gVGFibGVFZGl0b3IuaGFzSGVhZGVyUm93Q2VsbChlZGl0b3IpO1xuICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJpbGl0eSA9ICFoYXNIZWFkZXJSb3dDZWxsICYmIGlzUmVjdDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFibGVJbnNlcnRUeXBlLmluc2VydFJvd3NEb3duOlxuICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJpbGl0eSA9IGlzUmVjdDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgVGFibGVJbnNlcnRUeXBlLmluc2VydENvbHVtbnNMZWZ0OlxuICAgICAgICAgICAgICAgIGNvbnN0IGhhc0hlYWRlckNvbHVtbkNlbGwgPSBUYWJsZUVkaXRvci5oYXNIZWFkZXJDb2x1bW5DZWxsKGVkaXRvcik7XG4gICAgICAgICAgICAgICAgaXRlbS52aXNpYmlsaXR5ID0gIWhhc0hlYWRlckNvbHVtbkNlbGwgJiYgaXNSZWN0O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBUYWJsZUluc2VydFR5cGUuaW5zZXJ0Q29sdW1uc1JpZ2h0OlxuICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJpbGl0eSA9IGlzUmVjdDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH0pO1xufVxuIl19
|
|
@@ -240,4 +240,4 @@ export class TablePosition {
|
|
|
240
240
|
return this.table.children[cell.row].children[cell.col];
|
|
241
241
|
}
|
|
242
242
|
}
|
|
243
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy90YWJsZS1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFtQixPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFJdkQsTUFBTSxPQUFPLGFBQWE7SUFhdEIsWUFDSSxPQUFPLEdBQUc7UUFDTixVQUFVLEVBQUUsSUFBSTtRQUNoQixRQUFRLEVBQUUsSUFBSTtRQUNkLFNBQVMsRUFBRSxJQUFJO1FBQ2YsWUFBWSxFQUFFLElBQUk7S0FDckI7UUFFRCxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQWtCLEVBQUUsYUFBbUIsRUFBRSxJQUFVO1FBQzdELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRSxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEcsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hHLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsRyxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFeEcsT0FBTyxJQUFJLGFBQWEsQ0FBQztZQUNyQixVQUFVO1lBQ1YsUUFBUTtZQUNSLFNBQVM7WUFDVCxZQUFZO1NBQ2YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELElBQUksS0FBSztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2xCLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUNyQztRQUNELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxHQUFHO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNuQztRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUNwQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ0osT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNILE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDTCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1AsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFekMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM3QixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV6RSxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNWLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBRXpDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDN0IsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFekUsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsUUFBUTtRQUNKLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUM1QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBa0IsQ0FBQztRQUV6QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUztRQUNMLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUU1QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNQLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQzVCLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFFNUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDVixNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztRQUMzQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBRTNCLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ0wsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQztRQUN2QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNWLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxFQUFFO1lBQ04sQ0FBQyxFQUFFLENBQUM7WUFDSixJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDcEYsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDdkQsT0FBTyxDQUFDLENBQUM7YUFDWjtZQUNELE9BQU87U0FDVjtJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbEMsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3hDLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDekIsT0FBTyxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRTtZQUNoQyxJQUFJLFdBQVcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNuQyxXQUFXLEVBQUUsQ0FBQztnQkFDZCxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2xFO2lCQUFNLElBQUksUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ3hDLFdBQVcsR0FBRyxDQUFDLENBQUM7Z0JBQ2hCLFFBQVEsRUFBRSxDQUFDO2dCQUNYLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbEU7aUJBQU07Z0JBQ0gsUUFBUSxHQUFHLElBQUksQ0FBQzthQUNuQjtTQUNKO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQVk7UUFDUixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEMsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM3QixPQUFPLFlBQVksSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFO1lBQ3hDLElBQUksV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3RCLFdBQVcsRUFBRSxDQUFDO2dCQUNkLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDdEU7aUJBQU07Z0JBQ0gsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ2xDLFFBQVEsRUFBRSxDQUFDO2dCQUNYLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDdEU7U0FDSjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDTCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkQsT0FBTyxDQUFDLEVBQUU7WUFDTixDQUFDLEVBQUUsQ0FBQztZQUNKLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUNwRixDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUN2RCxPQUFPLENBQUMsQ0FBQzthQUNaO1lBQ0QsT0FBTztTQUNWO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ04sT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUztRQUNMLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYTtRQUNULE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZO1FBQ1IsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7O09BRUc7SUFFSCxjQUFjLENBQUMsSUFBa0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQXFCLENBQUM7SUFDaEYsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTm9kZSwgUGF0aCwgTm9kZUVudHJ5LCBFbGVtZW50IH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVDZWxsRWxlbWVudCwgVGFibGVFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFNlbGVjdGVkQ2VsbCwgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgVGFibGVQb3NpdGlvbiB7XG4gICAgLy8gVGhlRWxlbWVudCBjb250YWluZXIgZm9yIHRoZSB0YWJsZVxuICAgIHRhYmxlRW50cnk/OiBOb2RlRW50cnk8VGFibGVFbGVtZW50PjtcblxuICAgIC8vIFRoZUVsZW1lbnQgZm9yIGN1cnJlbnQgcm93XG4gICAgcm93RW50cnk/OiBOb2RlRW50cnk8RWxlbWVudD47XG5cbiAgICAvLyBUaGVFbGVtZW50IGZvciBjdXJyZW50IGNlbGxcbiAgICBjZWxsRW50cnk/OiBOb2RlRW50cnk8VGFibGVDZWxsRWxlbWVudD47XG5cbiAgICAvLyBDdXJyZW50IGNvbnRlbnQgVGhlRWxlbWVudCBpbiB0aGUgY2VsbFxuICAgIGNvbnRlbnRFbnRyeT86IE5vZGVFbnRyeTxFbGVtZW50PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBvcHRpb25zID0ge1xuICAgICAgICAgICAgdGFibGVFbnRyeTogbnVsbCxcbiAgICAgICAgICAgIHJvd0VudHJ5OiBudWxsLFxuICAgICAgICAgICAgY2VsbEVudHJ5OiBudWxsLFxuICAgICAgICAgICAgY29udGVudEVudHJ5OiBudWxsXG4gICAgICAgIH1cbiAgICApIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZUVudHJ5LCByb3dFbnRyeSwgY2VsbEVudHJ5LCBjb250ZW50RW50cnkgfSA9IG9wdGlvbnM7XG4gICAgICAgIHRoaXMudGFibGVFbnRyeSA9IHRhYmxlRW50cnk7XG4gICAgICAgIHRoaXMucm93RW50cnkgPSByb3dFbnRyeTtcbiAgICAgICAgdGhpcy5jZWxsRW50cnkgPSBjZWxsRW50cnk7XG4gICAgICAgIHRoaXMuY29udGVudEVudHJ5ID0gY29udGVudEVudHJ5O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBhIFRhYmxlUG9zaXRpb24gZnJvbSBhIFNsYXRlIGRvY3VtZW50XG4gICAgICogYW5kIGEgbm9kZSBrZXkuXG4gICAgICovXG4gICAgc3RhdGljIGNyZWF0ZShvcHRzOiBUYWJsZU9wdGlvbnMsIGNvbnRhaW5lck5vZGU6IE5vZGUsIHBhdGg6IFBhdGgpOiBUYWJsZVBvc2l0aW9uIHtcbiAgICAgICAgY29uc3QgYW5jZXN0b3JzID0gQXJyYXkuZnJvbShOb2RlLmFuY2VzdG9ycyhjb250YWluZXJOb2RlLCBwYXRoKSk7XG4gICAgICAgIGNvbnN0IHRhYmxlRW50cnkgPSBhbmNlc3RvcnMuZmluZCgoW3BdKSA9PiBFbGVtZW50LmlzRWxlbWVudChwKSAmJiBwLnR5cGUgPT09IG9wdHMudHlwZVRhYmxlKSB8fCBbXTtcbiAgICAgICAgY29uc3Qgcm93RW50cnkgPSBhbmNlc3RvcnMuZmluZCgoW3BdKSA9PiBFbGVtZW50LmlzRWxlbWVudChwKSAmJiBwLnR5cGUgPT09IG9wdHMudHlwZVJvdykgfHwgW107XG4gICAgICAgIGNvbnN0IGNlbGxFbnRyeSA9IGFuY2VzdG9ycy5maW5kKChbcF0pID0+IEVsZW1lbnQuaXNFbGVtZW50KHApICYmIHAudHlwZSA9PT0gb3B0cy50eXBlQ2VsbCkgfHwgW107XG4gICAgICAgIGNvbnN0IGNvbnRlbnRFbnRyeSA9IGFuY2VzdG9ycy5maW5kKChbcF0pID0+IEVsZW1lbnQuaXNFbGVtZW50KHApICYmIHAudHlwZSA9PT0gb3B0cy50eXBlQ29udGVudCkgfHwgW107XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZVBvc2l0aW9uKHtcbiAgICAgICAgICAgIHRhYmxlRW50cnksXG4gICAgICAgICAgICByb3dFbnRyeSxcbiAgICAgICAgICAgIGNlbGxFbnRyeSxcbiAgICAgICAgICAgIGNvbnRlbnRFbnRyeVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgdGFibGUoKTogVGFibGVFbGVtZW50IHtcbiAgICAgICAgaWYgKCF0aGlzLnRhYmxlRW50cnkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm90IGluIGEgdGFibGUnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy50YWJsZUVudHJ5WzBdO1xuICAgIH1cblxuICAgIGdldCByb3coKTogRWxlbWVudCB7XG4gICAgICAgIGlmICghdGhpcy5yb3dFbnRyeSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW4gYSByb3cnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5yb3dFbnRyeVswXTtcbiAgICB9XG5cbiAgICBnZXQgY2VsbCgpOiBUYWJsZUNlbGxFbGVtZW50IHtcbiAgICAgICAgaWYgKCF0aGlzLmNlbGxFbnRyeSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW4gYSBjZWxsJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY2VsbEVudHJ5WzBdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIHRvIHNlZSBpZiB0aGlzIHBvc2l0aW9uIGlzIHdpdGhpbiBhIGNlbGxcbiAgICAgKi9cbiAgICBpc0luQ2VsbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5jZWxsRW50cnkubGVuZ3RoID4gMCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgdG8gc2VlIGlmIHRoaXMgcG9zaXRpb24gaXMgd2l0aGluIGEgcm93XG4gICAgICovXG4gICAgaXNJblJvdygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5yb3dFbnRyeS5sZW5ndGggPiAwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayB0byBzZWUgaWYgdGhpcyBwb3NpdGlvbiBpcyB3aXRoaW4gYSB0YWJsZVxuICAgICAqL1xuICAgIGlzSW5UYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy50YWJsZUVudHJ5Lmxlbmd0aCA+IDApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIHRvIHNlZSBpZiB0aGlzIHBvc2l0aW9uIGlzIGF0IHRoZSB0b3Agb2YgdGhlIGNlbGwuXG4gICAgICovXG4gICAgaXNUb3BPZkNlbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHsgY29udGVudEVudHJ5LCBjZWxsRW50cnkgfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFjb250ZW50RW50cnkgfHwgIWNlbGxFbnRyeSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gY2VsbEVudHJ5WzBdO1xuICAgICAgICBjb25zdCBpbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChjb250ZW50ID0+IGNvbnRlbnQgPT09IGNvbnRlbnRFbnRyeVswXSk7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIHRvIHNlZSBpZiB0aGlzIHBvc2l0aW9uIGlzIGF0IHRoZSBib3R0b20gb2YgdGhlIGNlbGwuXG4gICAgICovXG4gICAgaXNCb3R0b21PZkNlbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHsgY29udGVudEVudHJ5LCBjZWxsRW50cnkgfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFjb250ZW50RW50cnkgfHwgIWNlbGxFbnRyeSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gY2VsbEVudHJ5WzBdO1xuICAgICAgICBjb25zdCBpbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChjb250ZW50ID0+IGNvbnRlbnQgPT09IGNvbnRlbnRFbnRyeVswXSk7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSBjaGlsZHJlbi5sZW5ndGggLSAxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBjb3VudCBvZiBjb2x1bW5zXG4gICAgICovXG4gICAgZ2V0V2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuO1xuICAgICAgICBjb25zdCBjZWxscyA9IHJvd3NbMF0uY2hpbGRyZW4gYXMgTm9kZVtdO1xuXG4gICAgICAgIHJldHVybiBjZWxscy5sZW5ndGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGNvdW50IG9mIHJvd3NcbiAgICAgKi9cbiAgICBnZXRIZWlnaHQoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuO1xuXG4gICAgICAgIHJldHVybiByb3dzLmxlbmd0aDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgaW5kZXggb2YgY3VycmVudCByb3cgaW4gdGhlIHRhYmxlLlxuICAgICAqL1xuICAgIGdldFJvd0luZGV4KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHsgdGFibGUsIHJvdyB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuO1xuXG4gICAgICAgIHJldHVybiByb3dzLmZpbmRJbmRleCh4ID0+IHggPT09IHJvdyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGluZGV4IG9mIGN1cnJlbnQgY29sdW1uIGluIHRoZSByb3cuXG4gICAgICovXG4gICAgZ2V0Q29sdW1uSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyByb3csIGNlbGwgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGNlbGxzID0gcm93LmNoaWxkcmVuO1xuXG4gICAgICAgIHJldHVybiBjZWxscy5maW5kSW5kZXgoeCA9PiB4ID09PSBjZWxsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBmaW5kIGN1cnJlbnQgYWJvdmUgY29sdW1uIGluIHRoZSB0YWJsZVxuICAgICAqL1xuICAgIGZpbmRBYm92ZSgpIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93SW5kZXggPSB0aGlzLmdldFJvd0luZGV4KCk7XG4gICAgICAgIGNvbnN0IGNvbHVtbkluZGV4ID0gdGhpcy5nZXRDb2x1bW5JbmRleCgpO1xuICAgICAgICBsZXQgeSA9IDA7XG4gICAgICAgIGxldCB0ID0gdGFibGUuY2hpbGRyZW5bcm93SW5kZXhdLmNoaWxkcmVuW2NvbHVtbkluZGV4XTtcbiAgICAgICAgd2hpbGUgKHQpIHtcbiAgICAgICAgICAgIHkrKztcbiAgICAgICAgICAgIGlmICh0YWJsZS5jaGlsZHJlbltyb3dJbmRleCAtIHldICYmIHRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4IC0geV0uY2hpbGRyZW5bY29sdW1uSW5kZXhdKSB7XG4gICAgICAgICAgICAgICAgdCA9IHRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4IC0geV0uY2hpbGRyZW5bY29sdW1uSW5kZXhdO1xuICAgICAgICAgICAgICAgIHJldHVybiB0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZmluZE5leHQoKSB7XG4gICAgICAgIGNvbnN0IHsgdGFibGUgfSA9IHRoaXM7XG4gICAgICAgIGxldCByb3dJbmRleCA9IHRoaXMuZ2V0Um93SW5kZXgoKTtcbiAgICAgICAgbGV0IGNvbHVtbkluZGV4ID0gdGhpcy5nZXRDb2x1bW5JbmRleCgpO1xuICAgICAgICBsZXQgbmV4dENlbGwgPSB0aGlzLmNlbGw7XG4gICAgICAgIHdoaWxlIChuZXh0Q2VsbCAmJiBuZXh0Q2VsbC5oaWRkZW4pIHtcbiAgICAgICAgICAgIGlmIChjb2x1bW5JbmRleCArIDEgPCB0aGlzLmdldFdpZHRoKCkpIHtcbiAgICAgICAgICAgICAgICBjb2x1bW5JbmRleCsrO1xuICAgICAgICAgICAgICAgIG5leHRDZWxsID0gdGhpcy50YWJsZS5jaGlsZHJlbltyb3dJbmRleF0uY2hpbGRyZW5bY29sdW1uSW5kZXhdO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChyb3dJbmRleCArIDEgPCB0aGlzLmdldEhlaWdodCgpKSB7XG4gICAgICAgICAgICAgICAgY29sdW1uSW5kZXggPSAwO1xuICAgICAgICAgICAgICAgIHJvd0luZGV4Kys7XG4gICAgICAgICAgICAgICAgbmV4dENlbGwgPSB0aGlzLnRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4XS5jaGlsZHJlbltjb2x1bW5JbmRleF07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG5leHRDZWxsID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV4dENlbGw7XG4gICAgfVxuXG4gICAgZmluZFByZXZpb3VzKCkge1xuICAgICAgICBjb25zdCB7IHRhYmxlIH0gPSB0aGlzO1xuICAgICAgICBsZXQgcm93SW5kZXggPSB0aGlzLmdldFJvd0luZGV4KCk7XG4gICAgICAgIGxldCBjb2x1bW5JbmRleCA9IHRoaXMuZ2V0Q29sdW1uSW5kZXgoKTtcbiAgICAgICAgbGV0IHByZXZpb3VzQ2VsbCA9IHRoaXMuY2VsbDtcbiAgICAgICAgd2hpbGUgKHByZXZpb3VzQ2VsbCAmJiBwcmV2aW91c0NlbGwuaGlkZGVuKSB7XG4gICAgICAgICAgICBpZiAoY29sdW1uSW5kZXggLSAxID49IDApIHtcbiAgICAgICAgICAgICAgICBjb2x1bW5JbmRleC0tO1xuICAgICAgICAgICAgICAgIHByZXZpb3VzQ2VsbCA9IHRoaXMudGFibGUuY2hpbGRyZW5bcm93SW5kZXhdLmNoaWxkcmVuW2NvbHVtbkluZGV4XTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29sdW1uSW5kZXggPSB0aGlzLmdldFdpZHRoKCkgLSAxO1xuICAgICAgICAgICAgICAgIHJvd0luZGV4LS07XG4gICAgICAgICAgICAgICAgcHJldmlvdXNDZWxsID0gdGhpcy50YWJsZS5jaGlsZHJlbltyb3dJbmRleF0uY2hpbGRyZW5bY29sdW1uSW5kZXhdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwcmV2aW91c0NlbGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZmluZCBjdXJyZW50IGJlbG93IGNvbHVtbiBpbiB0aGUgdGFibGVcbiAgICAgKi9cbiAgICBmaW5kQmVsb3coKSB7XG4gICAgICAgIGNvbnN0IHsgdGFibGUgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IHJvd0luZGV4ID0gdGhpcy5nZXRSb3dJbmRleCgpO1xuICAgICAgICBjb25zdCBjb2x1bW5JbmRleCA9IHRoaXMuZ2V0Q29sdW1uSW5kZXgoKTtcbiAgICAgICAgbGV0IHkgPSAwO1xuICAgICAgICBsZXQgdCA9IHRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4XS5jaGlsZHJlbltjb2x1bW5JbmRleF07XG4gICAgICAgIHdoaWxlICh0KSB7XG4gICAgICAgICAgICB5Kys7XG4gICAgICAgICAgICBpZiAodGFibGUuY2hpbGRyZW5bcm93SW5kZXggKyB5XSAmJiB0YWJsZS5jaGlsZHJlbltyb3dJbmRleCArIHldLmNoaWxkcmVuW2NvbHVtbkluZGV4XSkge1xuICAgICAgICAgICAgICAgIHQgPSB0YWJsZS5jaGlsZHJlbltyb3dJbmRleCArIHldLmNoaWxkcmVuW2NvbHVtbkluZGV4XTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gZmlyc3QgY2VsbCBvZiB0aGUgdGFibGVcbiAgICAgKi9cbiAgICBpc0ZpcnN0Q2VsbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNGaXJzdFJvdygpICYmIHRoaXMuaXNGaXJzdENvbHVtbigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gbGFzdCBjZWxsIG9mIHRoZSB0YWJsZVxuICAgICAqL1xuICAgIGlzTGFzdENlbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzTGFzdFJvdygpICYmIHRoaXMuaXNMYXN0Q29sdW1uKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJ1ZSBpZiBvbiBmaXJzdCByb3dcbiAgICAgKi9cbiAgICBpc0ZpcnN0Um93KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRSb3dJbmRleCgpID09PSAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gbGFzdCByb3dcbiAgICAgKi9cbiAgICBpc0xhc3RSb3coKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFJvd0luZGV4KCkgPT09IHRoaXMuZ2V0SGVpZ2h0KCkgLSAxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gZmlyc3QgY29sdW1uXG4gICAgICovXG4gICAgaXNGaXJzdENvbHVtbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29sdW1uSW5kZXgoKSA9PT0gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcnVlIGlmIG9uIGxhc3QgY29sdW1uXG4gICAgICovXG4gICAgaXNMYXN0Q29sdW1uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb2x1bW5JbmRleCgpID09PSB0aGlzLmdldFdpZHRoKCkgLSAxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGZpbmQgY2VsbCBkYXRhIHdpdGggY29sIGFuZCByb3dcbiAgICAgKi9cblxuICAgIGZpbmRDZWxsQnlQYXRoKGNlbGw6IFNlbGVjdGVkQ2VsbCk6IFRhYmxlQ2VsbEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZS5jaGlsZHJlbltjZWxsLnJvd10uY2hpbGRyZW5bY2VsbC5jb2xdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgfVxufVxuIl19
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcG9zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy90YWJsZS1wb3NpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFtQixPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFJdkQsTUFBTSxPQUFPLGFBQWE7SUFhdEIsWUFDSSxPQUFPLEdBQUc7UUFDTixVQUFVLEVBQUUsSUFBSTtRQUNoQixRQUFRLEVBQUUsSUFBSTtRQUNkLFNBQVMsRUFBRSxJQUFJO1FBQ2YsWUFBWSxFQUFFLElBQUk7S0FDckI7UUFFRCxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQWtCLEVBQUUsYUFBbUIsRUFBRSxJQUFVO1FBQzdELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRSxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEcsTUFBTSxR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QyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDTCxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNILGFBQWE7UUFDVCxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWTtRQUNSLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVEOztPQUVHO0lBRUgsY0FBYyxDQUFDLElBQWtCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFxQixDQUFDO0lBQ2hGLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGUsIFBhdGgsIE5vZGVFbnRyeSwgRWxlbWVudCB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRhYmxlQ2VsbEVsZW1lbnQsIFRhYmxlRWxlbWVudCwgVGFibGVSb3dFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFNlbGVjdGVkQ2VsbCwgVGFibGVPcHRpb25zIH0gZnJvbSAnLi4vdGFibGUudHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgVGFibGVQb3NpdGlvbiB7XG4gICAgLy8gVGhlRWxlbWVudCBjb250YWluZXIgZm9yIHRoZSB0YWJsZVxuICAgIHRhYmxlRW50cnk/OiBOb2RlRW50cnk8VGFibGVFbGVtZW50PjtcblxuICAgIC8vIFRoZUVsZW1lbnQgZm9yIGN1cnJlbnQgcm93XG4gICAgcm93RW50cnk/OiBOb2RlRW50cnk8RWxlbWVudD47XG5cbiAgICAvLyBUaGVFbGVtZW50IGZvciBjdXJyZW50IGNlbGxcbiAgICBjZWxsRW50cnk/OiBOb2RlRW50cnk8VGFibGVDZWxsRWxlbWVudD47XG5cbiAgICAvLyBDdXJyZW50IGNvbnRlbnQgVGhlRWxlbWVudCBpbiB0aGUgY2VsbFxuICAgIGNvbnRlbnRFbnRyeT86IE5vZGVFbnRyeTxFbGVtZW50PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBvcHRpb25zID0ge1xuICAgICAgICAgICAgdGFibGVFbnRyeTogbnVsbCxcbiAgICAgICAgICAgIHJvd0VudHJ5OiBudWxsLFxuICAgICAgICAgICAgY2VsbEVudHJ5OiBudWxsLFxuICAgICAgICAgICAgY29udGVudEVudHJ5OiBudWxsXG4gICAgICAgIH1cbiAgICApIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZUVudHJ5LCByb3dFbnRyeSwgY2VsbEVudHJ5LCBjb250ZW50RW50cnkgfSA9IG9wdGlvbnM7XG4gICAgICAgIHRoaXMudGFibGVFbnRyeSA9IHRhYmxlRW50cnk7XG4gICAgICAgIHRoaXMucm93RW50cnkgPSByb3dFbnRyeTtcbiAgICAgICAgdGhpcy5jZWxsRW50cnkgPSBjZWxsRW50cnk7XG4gICAgICAgIHRoaXMuY29udGVudEVudHJ5ID0gY29udGVudEVudHJ5O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBhIFRhYmxlUG9zaXRpb24gZnJvbSBhIFNsYXRlIGRvY3VtZW50XG4gICAgICogYW5kIGEgbm9kZSBrZXkuXG4gICAgICovXG4gICAgc3RhdGljIGNyZWF0ZShvcHRzOiBUYWJsZU9wdGlvbnMsIGNvbnRhaW5lck5vZGU6IE5vZGUsIHBhdGg6IFBhdGgpOiBUYWJsZVBvc2l0aW9uIHtcbiAgICAgICAgY29uc3QgYW5jZXN0b3JzID0gQXJyYXkuZnJvbShOb2RlLmFuY2VzdG9ycyhjb250YWluZXJOb2RlLCBwYXRoKSk7XG4gICAgICAgIGNvbnN0IHRhYmxlRW50cnkgPSBhbmNlc3RvcnMuZmluZCgoW3BdKSA9PiBFbGVtZW50LmlzRWxlbWVudChwKSAmJiBwLnR5cGUgPT09IG9wdHMudHlwZVRhYmxlKSB8fCBbXTtcbiAgICAgICAgY29uc3Qgcm93RW50cnkgPSBhbmNlc3RvcnMuZmluZCgoW3BdKSA9PiBFbGVtZW50LmlzRWxlbWVudChwKSAmJiBwLnR5cGUgPT09IG9wdHMudHlwZVJvdykgfHwgW107XG4gICAgICAgIGNvbnN0IGNlbGxFbnRyeSA9IGFuY2VzdG9ycy5maW5kKChbcF0pID0+IEVsZW1lbnQuaXNFbGVtZW50KHApICYmIHAudHlwZSA9PT0gb3B0cy50eXBlQ2VsbCkgfHwgW107XG4gICAgICAgIGNvbnN0IGNvbnRlbnRFbnRyeSA9IGFuY2VzdG9ycy5maW5kKChbcF0pID0+IEVsZW1lbnQuaXNFbGVtZW50KHApICYmIHAudHlwZSA9PT0gb3B0cy50eXBlQ29udGVudCkgfHwgW107XG5cbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZVBvc2l0aW9uKHtcbiAgICAgICAgICAgIHRhYmxlRW50cnksXG4gICAgICAgICAgICByb3dFbnRyeSxcbiAgICAgICAgICAgIGNlbGxFbnRyeSxcbiAgICAgICAgICAgIGNvbnRlbnRFbnRyeVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgdGFibGUoKTogVGFibGVFbGVtZW50IHtcbiAgICAgICAgaWYgKCF0aGlzLnRhYmxlRW50cnkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm90IGluIGEgdGFibGUnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy50YWJsZUVudHJ5WzBdO1xuICAgIH1cblxuICAgIGdldCByb3coKTogVGFibGVSb3dFbGVtZW50IHtcbiAgICAgICAgaWYgKCF0aGlzLnJvd0VudHJ5KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbiBhIHJvdycpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnJvd0VudHJ5WzBdIGFzIFRhYmxlUm93RWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgY2VsbCgpOiBUYWJsZUNlbGxFbGVtZW50IHtcbiAgICAgICAgaWYgKCF0aGlzLmNlbGxFbnRyeSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW4gYSBjZWxsJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY2VsbEVudHJ5WzBdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIHRvIHNlZSBpZiB0aGlzIHBvc2l0aW9uIGlzIHdpdGhpbiBhIGNlbGxcbiAgICAgKi9cbiAgICBpc0luQ2VsbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5jZWxsRW50cnkubGVuZ3RoID4gMCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgdG8gc2VlIGlmIHRoaXMgcG9zaXRpb24gaXMgd2l0aGluIGEgcm93XG4gICAgICovXG4gICAgaXNJblJvdygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5yb3dFbnRyeS5sZW5ndGggPiAwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVjayB0byBzZWUgaWYgdGhpcyBwb3NpdGlvbiBpcyB3aXRoaW4gYSB0YWJsZVxuICAgICAqL1xuICAgIGlzSW5UYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy50YWJsZUVudHJ5Lmxlbmd0aCA+IDApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIHRvIHNlZSBpZiB0aGlzIHBvc2l0aW9uIGlzIGF0IHRoZSB0b3Agb2YgdGhlIGNlbGwuXG4gICAgICovXG4gICAgaXNUb3BPZkNlbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHsgY29udGVudEVudHJ5LCBjZWxsRW50cnkgfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFjb250ZW50RW50cnkgfHwgIWNlbGxFbnRyeSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gY2VsbEVudHJ5WzBdO1xuICAgICAgICBjb25zdCBpbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChjb250ZW50ID0+IGNvbnRlbnQgPT09IGNvbnRlbnRFbnRyeVswXSk7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrIHRvIHNlZSBpZiB0aGlzIHBvc2l0aW9uIGlzIGF0IHRoZSBib3R0b20gb2YgdGhlIGNlbGwuXG4gICAgICovXG4gICAgaXNCb3R0b21PZkNlbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHsgY29udGVudEVudHJ5LCBjZWxsRW50cnkgfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFjb250ZW50RW50cnkgfHwgIWNlbGxFbnRyeSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gY2VsbEVudHJ5WzBdO1xuICAgICAgICBjb25zdCBpbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChjb250ZW50ID0+IGNvbnRlbnQgPT09IGNvbnRlbnRFbnRyeVswXSk7XG5cbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSBjaGlsZHJlbi5sZW5ndGggLSAxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBjb3VudCBvZiBjb2x1bW5zXG4gICAgICovXG4gICAgZ2V0V2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuO1xuICAgICAgICBjb25zdCBjZWxscyA9IHJvd3NbMF0uY2hpbGRyZW4gYXMgTm9kZVtdO1xuXG4gICAgICAgIHJldHVybiBjZWxscy5sZW5ndGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGNvdW50IG9mIHJvd3NcbiAgICAgKi9cbiAgICBnZXRIZWlnaHQoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuO1xuXG4gICAgICAgIHJldHVybiByb3dzLmxlbmd0aDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgaW5kZXggb2YgY3VycmVudCByb3cgaW4gdGhlIHRhYmxlLlxuICAgICAqL1xuICAgIGdldFJvd0luZGV4KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHsgdGFibGUsIHJvdyB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuO1xuXG4gICAgICAgIHJldHVybiByb3dzLmZpbmRJbmRleCh4ID0+IHggPT09IHJvdyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IGluZGV4IG9mIGN1cnJlbnQgY29sdW1uIGluIHRoZSByb3cuXG4gICAgICovXG4gICAgZ2V0Q29sdW1uSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyByb3csIGNlbGwgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGNlbGxzID0gcm93LmNoaWxkcmVuO1xuXG4gICAgICAgIHJldHVybiBjZWxscy5maW5kSW5kZXgoeCA9PiB4ID09PSBjZWxsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBmaW5kIGN1cnJlbnQgYWJvdmUgY29sdW1uIGluIHRoZSB0YWJsZVxuICAgICAqL1xuICAgIGZpbmRBYm92ZSgpIHtcbiAgICAgICAgY29uc3QgeyB0YWJsZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3Qgcm93SW5kZXggPSB0aGlzLmdldFJvd0luZGV4KCk7XG4gICAgICAgIGNvbnN0IGNvbHVtbkluZGV4ID0gdGhpcy5nZXRDb2x1bW5JbmRleCgpO1xuICAgICAgICBsZXQgeSA9IDA7XG4gICAgICAgIGxldCB0ID0gdGFibGUuY2hpbGRyZW5bcm93SW5kZXhdLmNoaWxkcmVuW2NvbHVtbkluZGV4XTtcbiAgICAgICAgd2hpbGUgKHQpIHtcbiAgICAgICAgICAgIHkrKztcbiAgICAgICAgICAgIGlmICh0YWJsZS5jaGlsZHJlbltyb3dJbmRleCAtIHldICYmIHRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4IC0geV0uY2hpbGRyZW5bY29sdW1uSW5kZXhdKSB7XG4gICAgICAgICAgICAgICAgdCA9IHRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4IC0geV0uY2hpbGRyZW5bY29sdW1uSW5kZXhdO1xuICAgICAgICAgICAgICAgIHJldHVybiB0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZmluZE5leHQoKSB7XG4gICAgICAgIGNvbnN0IHsgdGFibGUgfSA9IHRoaXM7XG4gICAgICAgIGxldCByb3dJbmRleCA9IHRoaXMuZ2V0Um93SW5kZXgoKTtcbiAgICAgICAgbGV0IGNvbHVtbkluZGV4ID0gdGhpcy5nZXRDb2x1bW5JbmRleCgpO1xuICAgICAgICBsZXQgbmV4dENlbGwgPSB0aGlzLmNlbGw7XG4gICAgICAgIHdoaWxlIChuZXh0Q2VsbCAmJiBuZXh0Q2VsbC5oaWRkZW4pIHtcbiAgICAgICAgICAgIGlmIChjb2x1bW5JbmRleCArIDEgPCB0aGlzLmdldFdpZHRoKCkpIHtcbiAgICAgICAgICAgICAgICBjb2x1bW5JbmRleCsrO1xuICAgICAgICAgICAgICAgIG5leHRDZWxsID0gdGhpcy50YWJsZS5jaGlsZHJlbltyb3dJbmRleF0uY2hpbGRyZW5bY29sdW1uSW5kZXhdO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChyb3dJbmRleCArIDEgPCB0aGlzLmdldEhlaWdodCgpKSB7XG4gICAgICAgICAgICAgICAgY29sdW1uSW5kZXggPSAwO1xuICAgICAgICAgICAgICAgIHJvd0luZGV4Kys7XG4gICAgICAgICAgICAgICAgbmV4dENlbGwgPSB0aGlzLnRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4XS5jaGlsZHJlbltjb2x1bW5JbmRleF07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG5leHRDZWxsID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV4dENlbGw7XG4gICAgfVxuXG4gICAgZmluZFByZXZpb3VzKCkge1xuICAgICAgICBjb25zdCB7IHRhYmxlIH0gPSB0aGlzO1xuICAgICAgICBsZXQgcm93SW5kZXggPSB0aGlzLmdldFJvd0luZGV4KCk7XG4gICAgICAgIGxldCBjb2x1bW5JbmRleCA9IHRoaXMuZ2V0Q29sdW1uSW5kZXgoKTtcbiAgICAgICAgbGV0IHByZXZpb3VzQ2VsbCA9IHRoaXMuY2VsbDtcbiAgICAgICAgd2hpbGUgKHByZXZpb3VzQ2VsbCAmJiBwcmV2aW91c0NlbGwuaGlkZGVuKSB7XG4gICAgICAgICAgICBpZiAoY29sdW1uSW5kZXggLSAxID49IDApIHtcbiAgICAgICAgICAgICAgICBjb2x1bW5JbmRleC0tO1xuICAgICAgICAgICAgICAgIHByZXZpb3VzQ2VsbCA9IHRoaXMudGFibGUuY2hpbGRyZW5bcm93SW5kZXhdLmNoaWxkcmVuW2NvbHVtbkluZGV4XTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29sdW1uSW5kZXggPSB0aGlzLmdldFdpZHRoKCkgLSAxO1xuICAgICAgICAgICAgICAgIHJvd0luZGV4LS07XG4gICAgICAgICAgICAgICAgcHJldmlvdXNDZWxsID0gdGhpcy50YWJsZS5jaGlsZHJlbltyb3dJbmRleF0uY2hpbGRyZW5bY29sdW1uSW5kZXhdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwcmV2aW91c0NlbGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZmluZCBjdXJyZW50IGJlbG93IGNvbHVtbiBpbiB0aGUgdGFibGVcbiAgICAgKi9cbiAgICBmaW5kQmVsb3coKSB7XG4gICAgICAgIGNvbnN0IHsgdGFibGUgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IHJvd0luZGV4ID0gdGhpcy5nZXRSb3dJbmRleCgpO1xuICAgICAgICBjb25zdCBjb2x1bW5JbmRleCA9IHRoaXMuZ2V0Q29sdW1uSW5kZXgoKTtcbiAgICAgICAgbGV0IHkgPSAwO1xuICAgICAgICBsZXQgdCA9IHRhYmxlLmNoaWxkcmVuW3Jvd0luZGV4XS5jaGlsZHJlbltjb2x1bW5JbmRleF07XG4gICAgICAgIHdoaWxlICh0KSB7XG4gICAgICAgICAgICB5Kys7XG4gICAgICAgICAgICBpZiAodGFibGUuY2hpbGRyZW5bcm93SW5kZXggKyB5XSAmJiB0YWJsZS5jaGlsZHJlbltyb3dJbmRleCArIHldLmNoaWxkcmVuW2NvbHVtbkluZGV4XSkge1xuICAgICAgICAgICAgICAgIHQgPSB0YWJsZS5jaGlsZHJlbltyb3dJbmRleCArIHldLmNoaWxkcmVuW2NvbHVtbkluZGV4XTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gZmlyc3QgY2VsbCBvZiB0aGUgdGFibGVcbiAgICAgKi9cbiAgICBpc0ZpcnN0Q2VsbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNGaXJzdFJvdygpICYmIHRoaXMuaXNGaXJzdENvbHVtbigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gbGFzdCBjZWxsIG9mIHRoZSB0YWJsZVxuICAgICAqL1xuICAgIGlzTGFzdENlbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzTGFzdFJvdygpICYmIHRoaXMuaXNMYXN0Q29sdW1uKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJ1ZSBpZiBvbiBmaXJzdCByb3dcbiAgICAgKi9cbiAgICBpc0ZpcnN0Um93KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRSb3dJbmRleCgpID09PSAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gbGFzdCByb3dcbiAgICAgKi9cbiAgICBpc0xhc3RSb3coKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFJvd0luZGV4KCkgPT09IHRoaXMuZ2V0SGVpZ2h0KCkgLSAxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRydWUgaWYgb24gZmlyc3QgY29sdW1uXG4gICAgICovXG4gICAgaXNGaXJzdENvbHVtbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29sdW1uSW5kZXgoKSA9PT0gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcnVlIGlmIG9uIGxhc3QgY29sdW1uXG4gICAgICovXG4gICAgaXNMYXN0Q29sdW1uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb2x1bW5JbmRleCgpID09PSB0aGlzLmdldFdpZHRoKCkgLSAxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGZpbmQgY2VsbCBkYXRhIHdpdGggY29sIGFuZCByb3dcbiAgICAgKi9cblxuICAgIGZpbmRDZWxsQnlQYXRoKGNlbGw6IFNlbGVjdGVkQ2VsbCk6IFRhYmxlQ2VsbEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZS5jaGlsZHJlbltjZWxsLnJvd10uY2hpbGRyZW5bY2VsbC5jb2xdIGFzIFRhYmxlQ2VsbEVsZW1lbnQ7XG4gICAgfVxufVxuIl19
|
|
@@ -1,24 +1,41 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { fromEvent, Subject } from 'rxjs';
|
|
3
3
|
import { FontSizes } from '../constants/node-types';
|
|
4
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export class TheContextService {
|
|
6
7
|
constructor(ngZone) {
|
|
7
8
|
this.ngZone = ngZone;
|
|
9
|
+
this.destroy$ = new Subject();
|
|
8
10
|
this.uploadingFiles = [];
|
|
9
11
|
this.paintFormatStatus = {
|
|
10
12
|
isActive: false,
|
|
11
13
|
marks: {}
|
|
12
14
|
};
|
|
15
|
+
this.containerScrolled$ = new Subject();
|
|
13
16
|
this.uploadingStatus$ = new Subject();
|
|
14
17
|
this.ngZone.runOutsideAngular(() => {
|
|
15
|
-
this.onMouseUp$ = fromEvent(window, `mouseup`);
|
|
16
|
-
this.onMouseMove$ = fromEvent(window, `mousemove`);
|
|
17
|
-
this.onMouseDown$ = fromEvent(window, `mousedown`);
|
|
18
|
+
this.onMouseUp$ = fromEvent(window, `mouseup`).pipe(takeUntil(this.destroy$));
|
|
19
|
+
this.onMouseMove$ = fromEvent(window, `mousemove`).pipe(takeUntil(this.destroy$));
|
|
20
|
+
this.onMouseDown$ = fromEvent(window, `mousedown`).pipe(takeUntil(this.destroy$));
|
|
18
21
|
});
|
|
19
22
|
}
|
|
20
23
|
initialize(options) {
|
|
21
24
|
this.options = options;
|
|
25
|
+
this.rebindContainerScroll();
|
|
26
|
+
}
|
|
27
|
+
rebindContainerScroll() {
|
|
28
|
+
this.scrollSubscription?.unsubscribe();
|
|
29
|
+
if (this.options.theOptions.scrollContainer) {
|
|
30
|
+
const containerElement = this.options.nativeElement.closest(this.options.theOptions.scrollContainer);
|
|
31
|
+
if (containerElement) {
|
|
32
|
+
this.ngZone.runOutsideAngular(() => {
|
|
33
|
+
this.scrollSubscription = fromEvent(containerElement, 'scroll').subscribe(event => {
|
|
34
|
+
this.containerScrolled$.next(event);
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
22
39
|
}
|
|
23
40
|
getOptions() {
|
|
24
41
|
if (!this.options.width) {
|
|
@@ -46,10 +63,17 @@ export class TheContextService {
|
|
|
46
63
|
removeUploadFile(file) {
|
|
47
64
|
this.uploadingFiles.splice(this.uploadingFiles.findIndex(item => item.url === file.url), 1);
|
|
48
65
|
}
|
|
66
|
+
ngOnDestroy() {
|
|
67
|
+
this.uploadingStatus$.complete();
|
|
68
|
+
this.containerScrolled$?.complete();
|
|
69
|
+
this.scrollSubscription?.unsubscribe();
|
|
70
|
+
this.destroy$.next();
|
|
71
|
+
this.destroy$.complete();
|
|
72
|
+
}
|
|
49
73
|
}
|
|
50
74
|
TheContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TheContextService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
51
75
|
TheContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TheContextService });
|
|
52
76
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TheContextService, decorators: [{
|
|
53
77
|
type: Injectable
|
|
54
78
|
}], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3NlcnZpY2VzL2NvbnRleHQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsU0FBUyxFQUFjLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFcEUsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFlM0MsTUFBTSxPQUFPLGlCQUFpQjtJQXlCMUIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUF0QjFCLGFBQVEsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUl6QyxtQkFBYyxHQUFrQyxFQUFFLENBQUM7UUFFbkQsc0JBQWlCLEdBQXNCO1lBQzFDLFFBQVEsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLEVBQUU7U0FDWixDQUFDO1FBU0ssdUJBQWtCLEdBQUcsSUFBSSxPQUFPLEVBQVMsQ0FBQztRQUUxQyxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBRzdDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFhLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzFGLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFhLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzlGLElBQUksQ0FBQyxZQUFZLEdBQUcs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QUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUsIE9uRGVzdHJveSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRoZU9wdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2VkaXRvcic7XG5pbXBvcnQgeyBGb250U2l6ZXMsIE1hcmtUeXBlcyB9IGZyb20gJy4uL2NvbnN0YW50cy9ub2RlLXR5cGVzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGludGVyZmFjZSBUaGVDb250ZXh0T3B0aW9ucyB7XG4gICAgdGhlT3B0aW9uczogVGhlT3B0aW9ucztcbiAgICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcbiAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmO1xuICAgIHdpZHRoPzogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgUGFpbnRGb3JtYXRTdGF0dXMge1xuICAgIGlzQWN0aXZlOiBib29sZWFuO1xuICAgIG1hcmtzOiB7IFtrZXkgaW4gTWFya1R5cGVzXT86IGFueSB9O1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGhlQ29udGV4dFNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgc2Nyb2xsU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBwcml2YXRlIG9wdGlvbnM6IFRoZUNvbnRleHRPcHRpb25zO1xuXG4gICAgcHVibGljIHVwbG9hZGluZ0ZpbGVzOiB7IHVybDogc3RyaW5nOyBmaWxlOiBGaWxlIH1bXSA9IFtdO1xuXG4gICAgcHVibGljIHBhaW50Rm9ybWF0U3RhdHVzOiBQYWludEZvcm1hdFN0YXR1cyA9IHtcbiAgICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAgICBtYXJrczoge31cbiAgICB9O1xuXG5cbiAgICBwdWJsaWMgb25Nb3VzZVVwJDogT2JzZXJ2YWJsZTxNb3VzZUV2ZW50PjtcblxuICAgIHB1YmxpYyBvbk1vdXNlTW92ZSQ6IE9ic2VydmFibGU8TW91c2VFdmVudD47XG5cbiAgICBwdWJsaWMgb25Nb3VzZURvd24kOiBPYnNlcnZhYmxlPE1vdXNlRXZlbnQ+O1xuXG4gICAgcHVibGljIGNvbnRhaW5lclNjcm9sbGVkJCA9IG5ldyBTdWJqZWN0PEV2ZW50PigpO1xuXG4gICAgcHVibGljIHVwbG9hZGluZ1N0YXR1cyQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uTW91c2VVcCQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4od2luZG93LCBgbW91c2V1cGApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZU1vdmUkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHdpbmRvdywgYG1vdXNlbW92ZWApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcbiAgICAgICAgICAgIHRoaXMub25Nb3VzZURvd24kID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHdpbmRvdywgYG1vdXNlZG93bmApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGluaXRpYWxpemUob3B0aW9uczogVGhlQ29udGV4dE9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICAgICAgdGhpcy5yZWJpbmRDb250YWluZXJTY3JvbGwoKTtcbiAgICB9XG5cbiAgICByZWJpbmRDb250YWluZXJTY3JvbGwoKSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMudGhlT3B0aW9ucy5zY3JvbGxDb250YWluZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLm9wdGlvbnMubmF0aXZlRWxlbWVudC5jbG9zZXN0KHRoaXMub3B0aW9ucy50aGVPcHRpb25zLnNjcm9sbENvbnRhaW5lcik7XG4gICAgICAgICAgICBpZiAoY29udGFpbmVyRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQ8RXZlbnQ+KGNvbnRhaW5lckVsZW1lbnQsICdzY3JvbGwnKS5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250YWluZXJTY3JvbGxlZCQubmV4dChldmVudCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldE9wdGlvbnMoKSB7XG4gICAgICAgIGlmICghdGhpcy5vcHRpb25zLndpZHRoKSB7XG4gICAgICAgICAgICBjb25zdCBmaXJzdEVsZW1lbnRDaGlsZCA9IHRoaXMuZ2V0Rmlyc3RFbGVtZW50Q2hpbGQoKTtcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy53aWR0aCA9IGZpcnN0RWxlbWVudENoaWxkLm9mZnNldFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFRoZU9wdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMudGhlT3B0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGVmYXVsdEZvbnRTaXplKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLnRoZU9wdGlvbnM/LmZvbnRTaXplIHx8IEZvbnRTaXplcy5mb250U2l6ZTE0O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRFZGl0YWJsZUVsZW1lbnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcudGhlLWVkaXRvci10eXBvJyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpcnN0RWxlbWVudENoaWxkKCkge1xuICAgICAgICBjb25zdCBlZGl0YWJsZUVsZW1lbnQgPSB0aGlzLmdldEVkaXRhYmxlRWxlbWVudCgpO1xuICAgICAgICByZXR1cm4gZWRpdGFibGVFbGVtZW50Py5maXJzdEVsZW1lbnRDaGlsZCBhcyBIVE1MRWxlbWVudDtcbiAgICB9XG5cbiAgICBhZGRVcGxvYWRpbmdGaWxlcyhmaWxlOiB7IHVybDogc3RyaW5nOyBmaWxlOiBGaWxlIH0pIHtcbiAgICAgICAgdGhpcy51cGxvYWRpbmdGaWxlcy5wdXNoKGZpbGUpO1xuICAgIH1cblxuICAgIHJlbW92ZVVwbG9hZEZpbGUoZmlsZTogeyB1cmw6IHN0cmluZzsgZmlsZTogRmlsZSB9KSB7XG4gICAgICAgIHRoaXMudXBsb2FkaW5nRmlsZXMuc3BsaWNlKFxuICAgICAgICAgICAgdGhpcy51cGxvYWRpbmdGaWxlcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLnVybCA9PT0gZmlsZS51cmwpLFxuICAgICAgICAgICAgMVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwbG9hZGluZ1N0YXR1cyQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5jb250YWluZXJTY3JvbGxlZCQ/LmNvbXBsZXRlKCk7XG5cbiAgICAgICAgdGhpcy5zY3JvbGxTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxufVxuIl19
|