@worktile/theia 3.1.0-next.2 → 3.1.0-next.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/editor.component.d.ts +1 -1
- package/esm2020/core/create-plugin.mjs +3 -3
- package/esm2020/core/utils/flatten-deep-plugins.mjs +3 -3
- package/esm2020/core/utils/merge-deep-plugins.mjs +1 -1
- package/esm2020/core/utils/merge-options.mjs +3 -3
- package/esm2020/core/utils/plugins-by-key.mjs +1 -1
- package/esm2020/editor.component.mjs +6 -6
- package/esm2020/plugins/node-id/node-id.plugin.mjs +4 -4
- package/esm2020/plugins/soft-break/soft-break.plugin.mjs +3 -3
- package/esm2020/plugins/table/table.plugin.mjs +3 -3
- package/esm2020/plugins/table/table.store.mjs +8 -8
- package/esm2020/plugins/table/utils/is-virtual-key.mjs +4 -4
- package/esm2020/queries/get-point-before.mjs +3 -3
- package/esm2020/shortcuts/mark.mjs +3 -3
- package/esm2020/transforms/merge-deep-to-nodes.mjs +3 -3
- package/esm2020/transforms/on-keydown-reset-block-type.mjs +3 -3
- package/esm2020/utils/lodash.mjs +3 -3
- package/fesm2015/worktile-theia.mjs +33 -35
- package/fesm2015/worktile-theia.mjs.map +1 -1
- package/fesm2020/worktile-theia.mjs +33 -35
- package/fesm2020/worktile-theia.mjs.map +1 -1
- package/package.json +9 -4
- package/utils/lodash.d.ts +2 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { isKeyHotkey } from 'is-hotkey';
|
|
2
2
|
export function isVirtualKey(e) {
|
|
3
3
|
const isMod = e.ctrlKey || e.metaKey;
|
|
4
|
-
const isAlt =
|
|
5
|
-
const isShift =
|
|
4
|
+
const isAlt = isKeyHotkey('alt', e);
|
|
5
|
+
const isShift = isKeyHotkey('shift', e);
|
|
6
6
|
const isCapsLock = e.key.includes('CapsLock');
|
|
7
7
|
const isTab = e.key.includes('Tab');
|
|
8
8
|
const isEsc = e.key.includes('Escape');
|
|
@@ -10,4 +10,4 @@ export function isVirtualKey(e) {
|
|
|
10
10
|
const isArrow = e.key.includes('Arrow') ? true : false;
|
|
11
11
|
return isCapsLock || isMod || isAlt || isArrow || isShift || isTab || isEsc || isF;
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtdmlydHVhbC1rZXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS91dGlscy9pcy12aXJ0dWFsLWtleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXhDLE1BQU0sVUFBVSxZQUFZLENBQUMsQ0FBZ0I7SUFDekMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQ3JDLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEMsTUFBTSxPQUFPLEdBQUcsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN4QyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM5QyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsQyxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDdkQsT0FBTyxVQUFVLElBQUksS0FBSyxJQUFJLEtBQUssSUFBSSxPQUFPLElBQUksT0FBTyxJQUFJLEtBQUssSUFBSSxLQUFLLElBQUksR0FBRyxDQUFDO0FBQ3ZGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0tleUhvdGtleSB9IGZyb20gJ2lzLWhvdGtleSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1ZpcnR1YWxLZXkoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGNvbnN0IGlzTW9kID0gZS5jdHJsS2V5IHx8IGUubWV0YUtleTtcbiAgICBjb25zdCBpc0FsdCA9IGlzS2V5SG90a2V5KCdhbHQnLCBlKTtcbiAgICBjb25zdCBpc1NoaWZ0ID0gaXNLZXlIb3RrZXkoJ3NoaWZ0JywgZSk7XG4gICAgY29uc3QgaXNDYXBzTG9jayA9IGUua2V5LmluY2x1ZGVzKCdDYXBzTG9jaycpO1xuICAgIGNvbnN0IGlzVGFiID0gZS5rZXkuaW5jbHVkZXMoJ1RhYicpO1xuICAgIGNvbnN0IGlzRXNjID0gZS5rZXkuaW5jbHVkZXMoJ0VzY2FwZScpO1xuICAgIGNvbnN0IGlzRiA9IGUua2V5LnN0YXJ0c1dpdGgoJ0YnKTtcbiAgICBjb25zdCBpc0Fycm93ID0gZS5rZXkuaW5jbHVkZXMoJ0Fycm93JykgPyB0cnVlIDogZmFsc2U7XG4gICAgcmV0dXJuIGlzQ2Fwc0xvY2sgfHwgaXNNb2QgfHwgaXNBbHQgfHwgaXNBcnJvdyB8fCBpc1NoaWZ0IHx8IGlzVGFiIHx8IGlzRXNjIHx8IGlzRjtcbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Editor, Path } from 'slate';
|
|
2
2
|
import { castArray } from '../utils/cast-array';
|
|
3
|
-
import {
|
|
3
|
+
import { map } from '../utils/lodash';
|
|
4
4
|
/**
|
|
5
5
|
* {@link Editor.before} with additional options.
|
|
6
6
|
* TODO: support for sequence of any characters.
|
|
@@ -37,7 +37,7 @@ export const getPointBefore = (editor, at, options) => {
|
|
|
37
37
|
text: beforeString
|
|
38
38
|
});
|
|
39
39
|
stack.pop();
|
|
40
|
-
beforeStringToMatch =
|
|
40
|
+
beforeStringToMatch = map(stack.slice(0, -1), 'text').join('');
|
|
41
41
|
}
|
|
42
42
|
if (matchString.includes(beforeStringToMatch) ||
|
|
43
43
|
(options.match ? options.match({ beforeString: beforeStringToMatch, beforePoint, at }) : '')) {
|
|
@@ -59,4 +59,4 @@ export const getPointBefore = (editor, at, options) => {
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXBvaW50LWJlZm9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9xdWVyaWVzL2dldC1wb2ludC1iZWZvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBWSxJQUFJLEVBQVMsTUFBTSxPQUFPLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQW9DdEM7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsTUFBYyxFQUFFLEVBQVksRUFBRSxPQUE0QixFQUFFLEVBQUU7SUFDekYsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUN0RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztLQUM3QztJQUVELElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNsQixJQUFJLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBRXBFLE1BQU0sV0FBVyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvRSxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFakMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO0lBRTlELElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNkLE9BQU8sSUFBSSxFQUFFO1FBQ1QsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRTdELFlBQVk7UUFDWixJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2QsT0FBTztTQUNWO1FBRUQsaUJBQWlCO1FBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pGLE9BQU87U0FDVjtRQUVELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ3ZDLE1BQU0sRUFBRSxXQUFXO1lBQ25CLEtBQUssRUFBRSxtQkFBbUI7U0FDN0IsQ0FBQyxDQUFDO1FBRUgsTUFBTSxXQUFXLEdBQWEsU0FBUyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU3RCxJQUFJLG1CQUFtQixHQUFHLFlBQVksQ0FBQztRQUV2QyxJQUFJLFVBQVUsSUFBSSxXQUFXLEVBQUU7WUFDM0IsS0FBSyxDQUFDLE9BQU8sQ0FBQztnQkFDVixLQUFLLEVBQUUsV0FBVztnQkFDbEIsSUFBSSxFQUFFLFlBQVk7YUFDckIsQ0FBQyxDQUFDO1lBQ0gsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBRVosbUJBQW1CLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsSUFDSSxXQUFXLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDO1lBQ3pDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzlGO1lBQ0UsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO2dCQUNwQixJQUFJLFdBQVcsSUFBSSxVQUFVLEVBQUU7b0JBQzNCLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2lCQUN2RTtnQkFDRCxPQUFPLG1CQUFtQixDQUFDO2FBQzlCO1lBQ0QsT0FBTyxXQUFXLENBQUM7U0FDdEI7UUFFRCxtQkFBbUIsR0FBRyxXQUFXLENBQUM7UUFDbEMsUUFBUSxHQUFHLFdBQVcsQ0FBQztRQUV2QixLQUFLLElBQUksQ0FBQyxDQUFDO1FBRVgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFdBQVcsSUFBSSxLQUFLLEdBQUcsV0FBVyxDQUFDLE1BQU0sRUFBRTtnQkFDNUMsT0FBTzthQUNWO1NBQ0o7S0FDSjtBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvciwgTG9jYXRpb24sIFBhdGgsIFBvaW50IH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgY2FzdEFycmF5IH0gZnJvbSAnLi4vdXRpbHMvY2FzdC1hcnJheSc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICcuLi91dGlscy9sb2Rhc2gnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJlZm9yZU9wdGlvbnMge1xuICAgIGRpc3RhbmNlPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIHVuaXQ/OiAnY2hhcmFjdGVyJyB8ICd3b3JkJyB8ICdsaW5lJyB8ICdibG9jaycgfCAnb2Zmc2V0JyB8IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2ludEJlZm9yZU9wdGlvbnMgZXh0ZW5kcyBCZWZvcmVPcHRpb25zIHtcbiAgICAvKipcbiAgICAgKiBMb29rdXAgYmVmb3JlIHRoZSBsb2NhdGlvbiBmb3IgYG1hdGNoU3RyaW5nYC5cbiAgICAgKi9cbiAgICBtYXRjaFN0cmluZz86IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gICAgLyoqXG4gICAgICogTG9va3VwIGJlZm9yZSB0aGUgbG9jYXRpb24gdW50aWwgdGhpcyBwcmVkaWNhdGUgaXMgdHJ1ZVxuICAgICAqL1xuICAgIG1hdGNoPzogKHZhbHVlOiB7IGJlZm9yZVN0cmluZzogc3RyaW5nOyBiZWZvcmVQb2ludDogUG9pbnQ7IGF0OiBMb2NhdGlvbiB9KSA9PiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgZ2V0IHRoZSBwb2ludCBhZnRlciB0aGUgbWF0Y2hpbmcgcG9pbnQuXG4gICAgICogSWYgZmFsc2UsIGdldCB0aGUgbWF0Y2hpbmcgcG9pbnQuXG4gICAgICovXG4gICAgYWZ0ZXJNYXRjaD86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCBsb29rdXAgdW50aWwgdGhlIHN0YXJ0IG9mIHRoZSBlZGl0b3IgdmFsdWUuXG4gICAgICogSWYgZmFsc2UsIGxvb2t1cCB1bnRpbCB0aGUgZmlyc3QgaW52YWxpZCBjaGFyYWN0ZXIuXG4gICAgICovXG4gICAgc2tpcEludmFsaWQ/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQWxsb3cgbG9va3VwIGFjcm9zcyBtdWx0aXBsZSBub2RlIHBhdGhzLlxuICAgICAqL1xuICAgIG11bHRpUGF0aHM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIHtAbGluayBFZGl0b3IuYmVmb3JlfSB3aXRoIGFkZGl0aW9uYWwgb3B0aW9ucy5cbiAqIFRPRE86IHN1cHBvcnQgZm9yIHNlcXVlbmNlIG9mIGFueSBjaGFyYWN0ZXJzLlxuICovXG5leHBvcnQgY29uc3QgZ2V0UG9pbnRCZWZvcmUgPSAoZWRpdG9yOiBFZGl0b3IsIGF0OiBMb2NhdGlvbiwgb3B0aW9ucz86IFBvaW50QmVmb3JlT3B0aW9ucykgPT4ge1xuICAgIGlmICghb3B0aW9ucyB8fCAoIW9wdGlvbnMubWF0Y2ggJiYgIW9wdGlvbnMubWF0Y2hTdHJpbmcpKSB7XG4gICAgICAgIHJldHVybiBFZGl0b3IuYmVmb3JlKGVkaXRvciwgYXQsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGxldCBiZWZvcmVBdCA9IGF0O1xuICAgIGxldCBwcmV2aW91c0JlZm9yZVBvaW50ID0gRWRpdG9yLnBvaW50KGVkaXRvciwgYXQsIHsgZWRnZTogJ2VuZCcgfSk7XG5cbiAgICBjb25zdCBzdGFja0xlbmd0aCA9IChvcHRpb25zLm1hdGNoU3RyaW5nID8gb3B0aW9ucy5tYXRjaFN0cmluZy5sZW5ndGggOiAwKSArIDE7XG4gICAgY29uc3Qgc3RhY2sgPSBBcnJheShzdGFja0xlbmd0aCk7XG5cbiAgICBjb25zdCB1bml0T2Zmc2V0ID0gIW9wdGlvbnMudW5pdCB8fCBvcHRpb25zLnVuaXQgPT09ICdvZmZzZXQnO1xuXG4gICAgbGV0IGNvdW50ID0gMDtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICBjb25zdCBiZWZvcmVQb2ludCA9IEVkaXRvci5iZWZvcmUoZWRpdG9yLCBiZWZvcmVBdCwgb3B0aW9ucyk7XG5cbiAgICAgICAgLy8gbm90IGZvdW5kXG4gICAgICAgIGlmICghYmVmb3JlUG9pbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGRpZmZlcmVudCBwYXRoXG4gICAgICAgIGlmICghb3B0aW9ucy5tdWx0aVBhdGhzICYmICFQYXRoLmVxdWFscyhiZWZvcmVQb2ludC5wYXRoLCBwcmV2aW91c0JlZm9yZVBvaW50LnBhdGgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBiZWZvcmVTdHJpbmcgPSBFZGl0b3Iuc3RyaW5nKGVkaXRvciwge1xuICAgICAgICAgICAgYW5jaG9yOiBiZWZvcmVQb2ludCxcbiAgICAgICAgICAgIGZvY3VzOiBwcmV2aW91c0JlZm9yZVBvaW50XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IG1hdGNoU3RyaW5nOiBzdHJpbmdbXSA9IGNhc3RBcnJheShvcHRpb25zLm1hdGNoU3RyaW5nKTtcblxuICAgICAgICBsZXQgYmVmb3JlU3RyaW5nVG9NYXRjaCA9IGJlZm9yZVN0cmluZztcblxuICAgICAgICBpZiAodW5pdE9mZnNldCAmJiBzdGFja0xlbmd0aCkge1xuICAgICAgICAgICAgc3RhY2sudW5zaGlmdCh7XG4gICAgICAgICAgICAgICAgcG9pbnQ6IGJlZm9yZVBvaW50LFxuICAgICAgICAgICAgICAgIHRleHQ6IGJlZm9yZVN0cmluZ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzdGFjay5wb3AoKTtcblxuICAgICAgICAgICAgYmVmb3JlU3RyaW5nVG9NYXRjaCA9IG1hcChzdGFjay5zbGljZSgwLCAtMSksICd0ZXh0Jykuam9pbignJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBtYXRjaFN0cmluZy5pbmNsdWRlcyhiZWZvcmVTdHJpbmdUb01hdGNoKSB8fFxuICAgICAgICAgICAgKG9wdGlvbnMubWF0Y2ggPyBvcHRpb25zLm1hdGNoKHsgYmVmb3JlU3RyaW5nOiBiZWZvcmVTdHJpbmdUb01hdGNoLCBiZWZvcmVQb2ludCwgYXQgfSkgOiAnJylcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5hZnRlck1hdGNoKSB7XG4gICAgICAgICAgICAgICAgaWYgKHN0YWNrTGVuZ3RoICYmIHVuaXRPZmZzZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YWNrW3N0YWNrLmxlbmd0aCAtIDFdID8gc3RhY2tbc3RhY2subGVuZ3RoIC0gMV0ucG9pbnQgOiAnJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHByZXZpb3VzQmVmb3JlUG9pbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYmVmb3JlUG9pbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBwcmV2aW91c0JlZm9yZVBvaW50ID0gYmVmb3JlUG9pbnQ7XG4gICAgICAgIGJlZm9yZUF0ID0gYmVmb3JlUG9pbnQ7XG5cbiAgICAgICAgY291bnQgKz0gMTtcblxuICAgICAgICBpZiAoIW9wdGlvbnMuc2tpcEludmFsaWQpIHtcbiAgICAgICAgICAgIGlmICghbWF0Y2hTdHJpbmcgfHwgY291bnQgPiBtYXRjaFN0cmluZy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { isKeyHotkey } from 'is-hotkey';
|
|
2
2
|
import { InlineCodeEditor } from '../plugins/inline-code/inline-code.editor';
|
|
3
3
|
import { ElementKinds, MarkTypes } from '../constants/node-types';
|
|
4
4
|
import { MarkEditor } from '../plugins/mark/mark.editor';
|
|
@@ -10,7 +10,7 @@ const HOTKEYS = {
|
|
|
10
10
|
};
|
|
11
11
|
export const markShortcuts = (editor, event) => {
|
|
12
12
|
for (const hotkey in HOTKEYS) {
|
|
13
|
-
if (
|
|
13
|
+
if (isKeyHotkey(hotkey, event)) {
|
|
14
14
|
event.preventDefault();
|
|
15
15
|
const mark = HOTKEYS[hotkey];
|
|
16
16
|
if (mark === ElementKinds.inlineCode) {
|
|
@@ -22,4 +22,4 @@ export const markShortcuts = (editor, event) => {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFyay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9zaG9ydGN1dHMvbWFyay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXhDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXpELE1BQU0sT0FBTyxHQUFHO0lBQ1osT0FBTyxFQUFFLFNBQVMsQ0FBQyxJQUFJO0lBQ3ZCLE9BQU8sRUFBRSxTQUFTLENBQUMsTUFBTTtJQUN6QixPQUFPLEVBQUUsU0FBUyxDQUFDLFNBQVM7SUFDNUIsT0FBTyxFQUFFLFlBQVksQ0FBQyxVQUFVO0NBQ25DLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxNQUFjLEVBQUUsS0FBb0IsRUFBRSxFQUFFO0lBQ2xFLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzFCLElBQUksV0FBVyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRTtZQUM1QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdCLElBQUksSUFBSSxLQUFLLFlBQVksQ0FBQyxVQUFVLEVBQUU7Z0JBQ2xDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzdDO2lCQUFNO2dCQUNILFVBQVUsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3ZDO1NBQ0o7S0FDSjtBQUNMLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzS2V5SG90a2V5IH0gZnJvbSAnaXMtaG90a2V5JztcbmltcG9ydCB7IEVkaXRvciB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IElubGluZUNvZGVFZGl0b3IgfSBmcm9tICcuLi9wbHVnaW5zL2lubGluZS1jb2RlL2lubGluZS1jb2RlLmVkaXRvcic7XG5pbXBvcnQgeyBFbGVtZW50S2luZHMsIE1hcmtUeXBlcyB9IGZyb20gJy4uL2NvbnN0YW50cy9ub2RlLXR5cGVzJztcbmltcG9ydCB7IE1hcmtFZGl0b3IgfSBmcm9tICcuLi9wbHVnaW5zL21hcmsvbWFyay5lZGl0b3InO1xuXG5jb25zdCBIT1RLRVlTID0ge1xuICAgICdtb2QrYic6IE1hcmtUeXBlcy5ib2xkLFxuICAgICdtb2QraSc6IE1hcmtUeXBlcy5pdGFsaWMsXG4gICAgJ21vZCt1JzogTWFya1R5cGVzLnVuZGVybGluZSxcbiAgICAnbW9kK2UnOiBFbGVtZW50S2luZHMuaW5saW5lQ29kZVxufTtcbmV4cG9ydCBjb25zdCBtYXJrU2hvcnRjdXRzID0gKGVkaXRvcjogRWRpdG9yLCBldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgIGZvciAoY29uc3QgaG90a2V5IGluIEhPVEtFWVMpIHtcbiAgICAgICAgaWYgKGlzS2V5SG90a2V5KGhvdGtleSwgZXZlbnQpKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgY29uc3QgbWFyayA9IEhPVEtFWVNbaG90a2V5XTtcbiAgICAgICAgICAgIGlmIChtYXJrID09PSBFbGVtZW50S2luZHMuaW5saW5lQ29kZSkge1xuICAgICAgICAgICAgICAgIElubGluZUNvZGVFZGl0b3IudG9nZ2xlSW5saW5lQ29kZShlZGl0b3IpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBNYXJrRWRpdG9yLnRvZ2dsZU1hcmsoZWRpdG9yLCBtYXJrKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn07XG4iXX0=
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { defaults } from '../utils/lodash';
|
|
2
2
|
import { applyDeepToNodes } from './apply-deep-to-nodes';
|
|
3
3
|
/**
|
|
4
4
|
* Recursively merge a source object to children nodes with a query.
|
|
5
5
|
*/
|
|
6
6
|
export const mergeDeepToNodes = (options) => {
|
|
7
|
-
applyDeepToNodes({ ...options, apply:
|
|
7
|
+
applyDeepToNodes({ ...options, apply: defaults });
|
|
8
8
|
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UtZGVlcC10by1ub2Rlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy90cmFuc2Zvcm1zL21lcmdlLWRlZXAtdG8tbm9kZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMkIsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsT0FBK0MsRUFBRSxFQUFFO0lBQ2hGLGdCQUFnQixDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDdEQsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVmYXVsdHMgfSBmcm9tICcuLi91dGlscy9sb2Rhc2gnO1xuaW1wb3J0IHsgYXBwbHlEZWVwVG9Ob2RlcywgQXBwbHlEZWVwVG9Ob2Rlc09wdGlvbnMgfSBmcm9tICcuL2FwcGx5LWRlZXAtdG8tbm9kZXMnO1xuXG4vKipcbiAqIFJlY3Vyc2l2ZWx5IG1lcmdlIGEgc291cmNlIG9iamVjdCB0byBjaGlsZHJlbiBub2RlcyB3aXRoIGEgcXVlcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBtZXJnZURlZXBUb05vZGVzID0gKG9wdGlvbnM6IE9taXQ8QXBwbHlEZWVwVG9Ob2Rlc09wdGlvbnMsICdhcHBseSc+KSA9PiB7XG4gICAgYXBwbHlEZWVwVG9Ob2Rlcyh7IC4uLm9wdGlvbnMsIGFwcGx5OiBkZWZhdWx0cyB9KTtcbn07XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { isKeyHotkey } from 'is-hotkey';
|
|
2
2
|
import { Transforms } from 'slate';
|
|
3
3
|
import * as TheQueries from '../queries';
|
|
4
4
|
import { isCollapsed } from '../queries/is-collapsed';
|
|
@@ -6,7 +6,7 @@ export const onKeyDownResetBlockType = ({ rules }) => (event, editor) => {
|
|
|
6
6
|
let reset;
|
|
7
7
|
if (editor.selection && isCollapsed(editor.selection)) {
|
|
8
8
|
rules.forEach(({ types, defaultType, hotkey, predicate, onReset }) => {
|
|
9
|
-
if (!event || (hotkey &&
|
|
9
|
+
if (!event || (hotkey && isKeyHotkey(hotkey, event))) {
|
|
10
10
|
if (predicate(editor) && TheQueries.isNodeTypeIn(editor, types)) {
|
|
11
11
|
if (event !== null) {
|
|
12
12
|
event.preventDefault();
|
|
@@ -20,4 +20,4 @@ export const onKeyDownResetBlockType = ({ rules }) => (event, editor) => {
|
|
|
20
20
|
}
|
|
21
21
|
return reset;
|
|
22
22
|
};
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24ta2V5ZG93bi1yZXNldC1ibG9jay10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3RyYW5zZm9ybXMvb24ta2V5ZG93bi1yZXNldC1ibG9jay10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEMsT0FBTyxFQUFVLFVBQVUsRUFBVyxNQUFNLE9BQU8sQ0FBQztBQUVwRCxPQUFPLEtBQUssVUFBVSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQ2hDLENBQUMsRUFBRSxLQUFLLEVBQStCLEVBQUUsRUFBRSxDQUMzQyxDQUFDLEtBQTJCLEVBQUUsTUFBYyxFQUFFLEVBQUU7SUFDNUMsSUFBSSxLQUEwQixDQUFDO0lBRS9CLElBQUksTUFBTSxDQUFDLFNBQVMsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ25ELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxNQUFNLElBQUksV0FBVyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUNsRCxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxVQUFVLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRTtvQkFDN0QsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO3dCQUNoQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7cUJBQzFCO29CQUNELFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBYSxDQUFDLENBQUM7b0JBRTlELE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFFaEIsS0FBSyxHQUFHLElBQUksQ0FBQztpQkFDaEI7YUFDSjtRQUNMLENBQUMsQ0FBQyxDQUFDO0tBQ047SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0tleUhvdGtleSB9IGZyb20gJ2lzLWhvdGtleSc7XG5pbXBvcnQgeyBFZGl0b3IsIFRyYW5zZm9ybXMsIEVsZW1lbnQgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBSZXNldEJsb2NrVHlwZVBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3Jlc2V0LWJsb2NrLXR5cGUtcGx1Z2luLW9wdGlvbnMnO1xuaW1wb3J0ICogYXMgVGhlUXVlcmllcyBmcm9tICcuLi9xdWVyaWVzJztcbmltcG9ydCB7IGlzQ29sbGFwc2VkIH0gZnJvbSAnLi4vcXVlcmllcy9pcy1jb2xsYXBzZWQnO1xuXG5leHBvcnQgY29uc3Qgb25LZXlEb3duUmVzZXRCbG9ja1R5cGUgPVxuICAgICh7IHJ1bGVzIH06IFJlc2V0QmxvY2tUeXBlUGx1Z2luT3B0aW9ucykgPT5cbiAgICAoZXZlbnQ6IEtleWJvYXJkRXZlbnQgfCBudWxsLCBlZGl0b3I6IEVkaXRvcikgPT4ge1xuICAgICAgICBsZXQgcmVzZXQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgICAgICAgaWYgKGVkaXRvci5zZWxlY3Rpb24gJiYgaXNDb2xsYXBzZWQoZWRpdG9yLnNlbGVjdGlvbikpIHtcbiAgICAgICAgICAgIHJ1bGVzLmZvckVhY2goKHsgdHlwZXMsIGRlZmF1bHRUeXBlLCBob3RrZXksIHByZWRpY2F0ZSwgb25SZXNldCB9KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFldmVudCB8fCAoaG90a2V5ICYmIGlzS2V5SG90a2V5KGhvdGtleSwgZXZlbnQpKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAocHJlZGljYXRlKGVkaXRvcikgJiYgVGhlUXVlcmllcy5pc05vZGVUeXBlSW4oZWRpdG9yLCB0eXBlcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChldmVudCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGVzKGVkaXRvciwgeyB0eXBlOiBkZWZhdWx0VHlwZSB9IGFzIEVsZW1lbnQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBvblJlc2V0KGVkaXRvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc2V0O1xuICAgIH07XG4iXX0=
|
package/esm2020/utils/lodash.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
export
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { debounce, cloneDeep, groupBy, uniq, map, assign, defaults } from 'lodash';
|
|
2
|
+
export { debounce, cloneDeep, groupBy, uniq, map, assign, defaults };
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9kYXNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL3V0aWxzL2xvZGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRW5GLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlYm91bmNlLCBjbG9uZURlZXAsIGdyb3VwQnksIHVuaXEsIG1hcCwgYXNzaWduLCBkZWZhdWx0cyB9IGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCB7IGRlYm91bmNlLCBjbG9uZURlZXAsIGdyb3VwQnksIHVuaXEsIG1hcCwgYXNzaWduLCBkZWZhdWx0cyB9O1xuIl19
|
|
@@ -7,7 +7,7 @@ import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
|
7
7
|
import * as i1 from 'slate-angular';
|
|
8
8
|
import { BaseTextComponent, BaseElementComponent, AngularEditor, NODE_TO_PARENT, NODE_TO_INDEX, IS_SAFARI, hotkeys, getPlainText as getPlainText$1, ELEMENT_TO_COMPONENT, hasBlockCard, isCardLeft, FAKE_RIGHT_BLOCK_CARD_OFFSET, isComponentType, EDITOR_TO_ELEMENT, withAngular, SlateModule } from 'slate-angular';
|
|
9
9
|
import { mixinUnsubscribe, MixinBase } from 'ngx-tethys/core';
|
|
10
|
-
import
|
|
10
|
+
import { isKeyHotkey } from 'is-hotkey';
|
|
11
11
|
import { Range, Node, Element as Element$1, Text, Editor, Transforms, Span, Path, Point, Operation, createEditor } from 'slate';
|
|
12
12
|
import { HistoryEditor, withHistory } from 'slate-history';
|
|
13
13
|
import { Subject, fromEvent, timer, combineLatest, Observable, BehaviorSubject, merge, ReplaySubject } from 'rxjs';
|
|
@@ -18,7 +18,7 @@ import { ThyIconModule } from 'ngx-tethys/icon';
|
|
|
18
18
|
import * as i5 from 'ngx-tethys/input';
|
|
19
19
|
import { ThyInputModule } from 'ngx-tethys/input';
|
|
20
20
|
import { TheiaConverter } from '@atinc/selene';
|
|
21
|
-
import
|
|
21
|
+
import { cloneDeep, assign, map, defaults, groupBy, uniq, debounce } from 'lodash';
|
|
22
22
|
import { isObject } from 'ngx-tethys/util';
|
|
23
23
|
import * as i2 from '@angular/cdk/overlay';
|
|
24
24
|
import { Overlay, OverlayModule } from '@angular/cdk/overlay';
|
|
@@ -28,7 +28,7 @@ import * as i1$6 from 'ngx-tethys';
|
|
|
28
28
|
import { isArray } from 'ngx-tethys';
|
|
29
29
|
import * as i1$2 from 'ngx-tethys/alert';
|
|
30
30
|
import { ThyAlertModule } from 'ngx-tethys/alert';
|
|
31
|
-
import { map, takeUntil, take, delay, startWith, distinctUntilChanged, skip, share, filter, mapTo, debounceTime, pairwise } from 'rxjs/operators';
|
|
31
|
+
import { map as map$1, takeUntil, take, delay, startWith, distinctUntilChanged, skip, share, filter, mapTo, debounceTime, pairwise } from 'rxjs/operators';
|
|
32
32
|
import { ThyUploadStatus } from 'ngx-tethys/upload';
|
|
33
33
|
import * as i1$3 from '@angular/platform-browser';
|
|
34
34
|
import * as i6 from 'ngx-tethys/progress';
|
|
@@ -1061,8 +1061,6 @@ const autoScrollViewHandle = (editor, scrollContainer) => {
|
|
|
1061
1061
|
previousHeight = currentHeight;
|
|
1062
1062
|
};
|
|
1063
1063
|
|
|
1064
|
-
const _ = _lodash;
|
|
1065
|
-
|
|
1066
1064
|
/**
|
|
1067
1065
|
* 循环 plugins 到 editor.plugins 和 editor.pluginsByKey
|
|
1068
1066
|
* 如果有 key 重复则进行覆盖
|
|
@@ -1071,7 +1069,7 @@ const flattenDeepPlugins = (editor, plugins) => {
|
|
|
1071
1069
|
if (!plugins)
|
|
1072
1070
|
return;
|
|
1073
1071
|
plugins.forEach((plugin) => {
|
|
1074
|
-
let p =
|
|
1072
|
+
let p = cloneDeep(plugin);
|
|
1075
1073
|
if (!p.options)
|
|
1076
1074
|
p.options = {};
|
|
1077
1075
|
if (!p.nestedStructureByKey)
|
|
@@ -1116,7 +1114,7 @@ const mergeOptions = (plugin, override) => {
|
|
|
1116
1114
|
continue;
|
|
1117
1115
|
}
|
|
1118
1116
|
if (isObject(override.options[option]) && newOptions[option]) {
|
|
1119
|
-
newOptions[option] =
|
|
1117
|
+
newOptions[option] = assign(newOptions[option], override.options[option]);
|
|
1120
1118
|
continue;
|
|
1121
1119
|
}
|
|
1122
1120
|
newOptions[option] = override.options[option];
|
|
@@ -1191,7 +1189,7 @@ const withTheia = (editor, plugins = []) => {
|
|
|
1191
1189
|
};
|
|
1192
1190
|
|
|
1193
1191
|
const createPluginFactory = (defaultPlugin) => (override, overrideByKey = {}) => {
|
|
1194
|
-
return
|
|
1192
|
+
return cloneDeep(defaultPlugin);
|
|
1195
1193
|
};
|
|
1196
1194
|
|
|
1197
1195
|
const toolbarInitialize = (toolbarItems, global = DefaultGlobalToolbarDefinition, inline = DefaultInlineToolbarDefinition, quick = DefaultQuickToolbarDefinition) => {
|
|
@@ -1793,7 +1791,7 @@ const getPointBefore = (editor, at, options) => {
|
|
|
1793
1791
|
text: beforeString
|
|
1794
1792
|
});
|
|
1795
1793
|
stack.pop();
|
|
1796
|
-
beforeStringToMatch =
|
|
1794
|
+
beforeStringToMatch = map(stack.slice(0, -1), 'text').join('');
|
|
1797
1795
|
}
|
|
1798
1796
|
if (matchString.includes(beforeStringToMatch) ||
|
|
1799
1797
|
(options.match ? options.match({ beforeString: beforeStringToMatch, beforePoint, at }) : '')) {
|
|
@@ -2180,7 +2178,7 @@ const onKeyDownResetBlockType = ({ rules }) => (event, editor) => {
|
|
|
2180
2178
|
let reset;
|
|
2181
2179
|
if (editor.selection && isCollapsed(editor.selection)) {
|
|
2182
2180
|
rules.forEach(({ types, defaultType, hotkey, predicate, onReset }) => {
|
|
2183
|
-
if (!event || (hotkey &&
|
|
2181
|
+
if (!event || (hotkey && isKeyHotkey(hotkey, event))) {
|
|
2184
2182
|
if (predicate(editor) && isNodeTypeIn(editor, types)) {
|
|
2185
2183
|
if (event !== null) {
|
|
2186
2184
|
event.preventDefault();
|
|
@@ -2244,7 +2242,7 @@ const applyDeepToNodes = ({ node, source, apply, query }) => {
|
|
|
2244
2242
|
* Recursively merge a source object to children nodes with a query.
|
|
2245
2243
|
*/
|
|
2246
2244
|
const mergeDeepToNodes = (options) => {
|
|
2247
|
-
applyDeepToNodes(Object.assign(Object.assign({}, options), { apply:
|
|
2245
|
+
applyDeepToNodes(Object.assign(Object.assign({}, options), { apply: defaults }));
|
|
2248
2246
|
};
|
|
2249
2247
|
|
|
2250
2248
|
const unWrap = (editor, kind) => {
|
|
@@ -2868,7 +2866,7 @@ class TheImageComponent extends TheBaseElementComponent {
|
|
|
2868
2866
|
this.mouseUpSubscription = this.theContextService.onMouseUp$.subscribe(e => this.endDrag(e));
|
|
2869
2867
|
this.uploadingSubscription = this.imageUploaderService
|
|
2870
2868
|
.getUploadingItems$()
|
|
2871
|
-
.pipe(map(fileUploadingItem => { var _a; return ((_a = this.fileItem) === null || _a === void 0 ? void 0 : _a.file) && fileUploadingItem.find(item => { var _a; return item.file === ((_a = this.fileItem) === null || _a === void 0 ? void 0 : _a.file); }); }))
|
|
2869
|
+
.pipe(map$1(fileUploadingItem => { var _a; return ((_a = this.fileItem) === null || _a === void 0 ? void 0 : _a.file) && fileUploadingItem.find(item => { var _a; return item.file === ((_a = this.fileItem) === null || _a === void 0 ? void 0 : _a.file); }); }))
|
|
2872
2870
|
.subscribe(uploadingItem => {
|
|
2873
2871
|
if (!uploadingItem || !uploadingItem.result) {
|
|
2874
2872
|
return;
|
|
@@ -5758,7 +5756,7 @@ const withNodeID = (e) => {
|
|
|
5758
5756
|
// fix can not find path by orign node
|
|
5759
5757
|
let node = operation.node;
|
|
5760
5758
|
if (!Object.isExtensible(node)) {
|
|
5761
|
-
node =
|
|
5759
|
+
node = cloneDeep(node);
|
|
5762
5760
|
}
|
|
5763
5761
|
// it will not overwrite ids once it's set as it's read-only
|
|
5764
5762
|
mergeDeepToNodes({
|
|
@@ -5786,7 +5784,7 @@ const withNodeID = (e) => {
|
|
|
5786
5784
|
return apply(operation);
|
|
5787
5785
|
};
|
|
5788
5786
|
editor.getFragment = () => {
|
|
5789
|
-
const fragment =
|
|
5787
|
+
const fragment = cloneDeep(getFragment());
|
|
5790
5788
|
return deleteElementKey(fragment, idKey);
|
|
5791
5789
|
};
|
|
5792
5790
|
return editor;
|
|
@@ -7740,7 +7738,7 @@ class TableCellEventDispatcher {
|
|
|
7740
7738
|
this.tableCellHovered = new Subject();
|
|
7741
7739
|
this.overlayHandleActiveForCell = new Subject();
|
|
7742
7740
|
this.tableCellHoveredOrActiveDistinct = combineLatest(this.tableCellHovered.pipe(startWith(null), distinctUntilChanged()), this.overlayHandleActiveForCell.pipe(startWith(null), distinctUntilChanged())).pipe(skip(1), // Ignore initial [null, null] emission.
|
|
7743
|
-
map(([hovered, active]) => active || hovered), distinctUntilChanged(), share());
|
|
7741
|
+
map$1(([hovered, active]) => active || hovered), distinctUntilChanged(), share());
|
|
7744
7742
|
this._tableCellHoveredDistinctReenterZone = this.tableCellHoveredOrActiveDistinct.pipe(this._enterZone(), share());
|
|
7745
7743
|
this._lastSeenCell = null;
|
|
7746
7744
|
this._lastSeenCellHover = null;
|
|
@@ -7752,7 +7750,7 @@ class TableCellEventDispatcher {
|
|
|
7752
7750
|
resizeOverlayVisibleForTableCell(cell) {
|
|
7753
7751
|
if (cell !== this._lastSeenCell) {
|
|
7754
7752
|
this._lastSeenCell = cell;
|
|
7755
|
-
this._lastSeenCellHover = this._tableCellHoveredDistinctReenterZone.pipe(map(hoveredCell => {
|
|
7753
|
+
this._lastSeenCellHover = this._tableCellHoveredDistinctReenterZone.pipe(map$1(hoveredCell => {
|
|
7756
7754
|
if (hoveredCell && hoveredCell.cell === cell) {
|
|
7757
7755
|
return hoveredCell;
|
|
7758
7756
|
}
|
|
@@ -7913,8 +7911,8 @@ class TableStore {
|
|
|
7913
7911
|
return TablePosition.create(opts, editor, path);
|
|
7914
7912
|
}
|
|
7915
7913
|
setSelectedCells(cells, pos) {
|
|
7916
|
-
const rowGroup =
|
|
7917
|
-
const colGroup =
|
|
7914
|
+
const rowGroup = groupBy(cells, ({ row, col }) => row);
|
|
7915
|
+
const colGroup = groupBy(cells, ({ row, col }) => col);
|
|
7918
7916
|
this.selectedRowsIndex = [];
|
|
7919
7917
|
this.selectedColumnsIndex = [];
|
|
7920
7918
|
for (const row in rowGroup) {
|
|
@@ -7927,8 +7925,8 @@ class TableStore {
|
|
|
7927
7925
|
this.selectedColumnsIndex.push(parseInt(col, 10));
|
|
7928
7926
|
}
|
|
7929
7927
|
}
|
|
7930
|
-
this.selectedRowsIndex =
|
|
7931
|
-
this.selectedColumnsIndex =
|
|
7928
|
+
this.selectedRowsIndex = uniq(this.selectedRowsIndex);
|
|
7929
|
+
this.selectedColumnsIndex = uniq(this.selectedColumnsIndex);
|
|
7932
7930
|
if (this.selectedRowsIndex.length === pos.getHeight() && this.selectedColumnsIndex.length === pos.getWidth()) {
|
|
7933
7931
|
this.isSelectedTable = true;
|
|
7934
7932
|
}
|
|
@@ -8190,7 +8188,7 @@ class TableStore {
|
|
|
8190
8188
|
}
|
|
8191
8189
|
setDangerousRows() {
|
|
8192
8190
|
const cells = this.selectedCells;
|
|
8193
|
-
const rows =
|
|
8191
|
+
const rows = uniq(map(cells, 'col'));
|
|
8194
8192
|
const pos = this.createTablePosition();
|
|
8195
8193
|
const result = [];
|
|
8196
8194
|
this.dangerousRowsIndex = rows;
|
|
@@ -8210,7 +8208,7 @@ class TableStore {
|
|
|
8210
8208
|
}
|
|
8211
8209
|
setDangerousColumns() {
|
|
8212
8210
|
const cells = this.selectedCells;
|
|
8213
|
-
const cols =
|
|
8211
|
+
const cols = uniq(map(cells, 'col'));
|
|
8214
8212
|
const pos = this.createTablePosition();
|
|
8215
8213
|
const result = [];
|
|
8216
8214
|
this.dangerousColumnsIndex = cols;
|
|
@@ -8677,8 +8675,8 @@ var DeleteIcon;
|
|
|
8677
8675
|
|
|
8678
8676
|
function isVirtualKey(e) {
|
|
8679
8677
|
const isMod = e.ctrlKey || e.metaKey;
|
|
8680
|
-
const isAlt =
|
|
8681
|
-
const isShift =
|
|
8678
|
+
const isAlt = isKeyHotkey('alt', e);
|
|
8679
|
+
const isShift = isKeyHotkey('shift', e);
|
|
8682
8680
|
const isCapsLock = e.key.includes('CapsLock');
|
|
8683
8681
|
const isTab = e.key.includes('Tab');
|
|
8684
8682
|
const isEsc = e.key.includes('Escape');
|
|
@@ -9132,7 +9130,7 @@ class TheColumnResizeDirective {
|
|
|
9132
9130
|
this.ngZone.runOutsideAngular(() => {
|
|
9133
9131
|
const element = this.elementRef.nativeElement;
|
|
9134
9132
|
fromEvent(element, 'mousemove') // mouseover to mousemove 增加灵敏性
|
|
9135
|
-
.pipe(filter(() => !this.resizeStarted), map(event => {
|
|
9133
|
+
.pipe(filter(() => !this.resizeStarted), map$1(event => {
|
|
9136
9134
|
if (!this.theTableComponent.isCollapsed) {
|
|
9137
9135
|
return null;
|
|
9138
9136
|
}
|
|
@@ -9962,7 +9960,7 @@ class TheColumnResizeOverlayHandleComponent {
|
|
|
9962
9960
|
this._notifyResizeEnded(size);
|
|
9963
9961
|
});
|
|
9964
9962
|
mousemove
|
|
9965
|
-
.pipe(map(({ clientX, clientY }) => {
|
|
9963
|
+
.pipe(map$1(({ clientX, clientY }) => {
|
|
9966
9964
|
return {
|
|
9967
9965
|
clientX,
|
|
9968
9966
|
clientY
|
|
@@ -10312,7 +10310,7 @@ class TheTdComponent extends TheBaseElementComponent {
|
|
|
10312
10310
|
this.ngZone.runOutsideAngular(() => {
|
|
10313
10311
|
const element = this.elementRef.nativeElement;
|
|
10314
10312
|
fromEvent(element, 'mousedown')
|
|
10315
|
-
.pipe(takeUntil(this.destroy$), filter((e) => e.button !== 2), map(event => {
|
|
10313
|
+
.pipe(takeUntil(this.destroy$), filter((e) => e.button !== 2), map$1(event => {
|
|
10316
10314
|
const cell = event.target.closest(SLA_TABLE_CELL_SELECTOR);
|
|
10317
10315
|
return cell;
|
|
10318
10316
|
}), filter(cell => !!cell))
|
|
@@ -10327,7 +10325,7 @@ class TheTdComponent extends TheBaseElementComponent {
|
|
|
10327
10325
|
}
|
|
10328
10326
|
listenCellMouseEvents() {
|
|
10329
10327
|
const mouseoverObservable = fromEvent(document, 'mouseover')
|
|
10330
|
-
.pipe(takeUntil(this.destroy$), map(event => {
|
|
10328
|
+
.pipe(takeUntil(this.destroy$), map$1(event => {
|
|
10331
10329
|
event.preventDefault();
|
|
10332
10330
|
const cell = event.target.closest(SLA_TABLE_CELL_SELECTOR);
|
|
10333
10331
|
return cell;
|
|
@@ -10352,7 +10350,7 @@ class TheTdComponent extends TheBaseElementComponent {
|
|
|
10352
10350
|
const element = this.elementRef.nativeElement;
|
|
10353
10351
|
this.eventDispatcher
|
|
10354
10352
|
.resizeOverlayVisibleForTableCell(element)
|
|
10355
|
-
.pipe(takeUntil(this.destroy$), map(value => {
|
|
10353
|
+
.pipe(takeUntil(this.destroy$), map$1(value => {
|
|
10356
10354
|
// 禁止第一列左侧
|
|
10357
10355
|
if (value && value.position === Position.left && this.tablePosition.getColumnIndex() === 0) {
|
|
10358
10356
|
return null;
|
|
@@ -11095,7 +11093,7 @@ const withTable = (editor) => {
|
|
|
11095
11093
|
};
|
|
11096
11094
|
}
|
|
11097
11095
|
if (tableFragment) {
|
|
11098
|
-
tableFragment = normalizeTable(
|
|
11096
|
+
tableFragment = normalizeTable(cloneDeep(tableFragment));
|
|
11099
11097
|
const plainText = Node.string(tableFragment);
|
|
11100
11098
|
tableFragment = [tableFragment];
|
|
11101
11099
|
const stringObj = JSON.stringify(tableFragment);
|
|
@@ -11619,7 +11617,7 @@ const withSoftBreak = (editor) => {
|
|
|
11619
11617
|
editor.onKeydown = (event) => {
|
|
11620
11618
|
const entry = getBlockAbove(editor);
|
|
11621
11619
|
rules.forEach(({ hotkey, query }) => {
|
|
11622
|
-
if (
|
|
11620
|
+
if (isKeyHotkey(hotkey, event) && isNodeType(entry, query)) {
|
|
11623
11621
|
event.preventDefault();
|
|
11624
11622
|
editor.insertText('\n');
|
|
11625
11623
|
}
|
|
@@ -12445,7 +12443,7 @@ const HOTKEYS = {
|
|
|
12445
12443
|
};
|
|
12446
12444
|
const markShortcuts = (editor, event) => {
|
|
12447
12445
|
for (const hotkey in HOTKEYS) {
|
|
12448
|
-
if (
|
|
12446
|
+
if (isKeyHotkey(hotkey, event)) {
|
|
12449
12447
|
event.preventDefault();
|
|
12450
12448
|
const mark = HOTKEYS[hotkey];
|
|
12451
12449
|
if (mark === ElementKinds.inlineCode) {
|
|
@@ -13020,7 +13018,7 @@ class TheEditorComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
13020
13018
|
this.theOnDOMEvent = new EventEmitter();
|
|
13021
13019
|
this.theEditorCreated = new EventEmitter();
|
|
13022
13020
|
this.theUploadingStatus = new EventEmitter(); // true 上传结束 false 上传中
|
|
13023
|
-
this.autoScrollView =
|
|
13021
|
+
this.autoScrollView = debounce(function (editor, scrollContainer) {
|
|
13024
13022
|
return autoScrollViewHandle(editor, scrollContainer);
|
|
13025
13023
|
}, 80);
|
|
13026
13024
|
this.elementToHtml = new WeakMap();
|
|
@@ -13053,14 +13051,14 @@ class TheEditorComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
13053
13051
|
key: event.key
|
|
13054
13052
|
}
|
|
13055
13053
|
});
|
|
13056
|
-
if (
|
|
13054
|
+
if (isKeyHotkey('mod+s', event)) {
|
|
13057
13055
|
this.ngZone.run(() => {
|
|
13058
13056
|
this.theOnSave.emit(this.editorValue);
|
|
13059
13057
|
});
|
|
13060
13058
|
event.preventDefault();
|
|
13061
13059
|
return;
|
|
13062
13060
|
}
|
|
13063
|
-
if (
|
|
13061
|
+
if (isKeyHotkey('mod+a', event)) {
|
|
13064
13062
|
this.handleSelectAll();
|
|
13065
13063
|
}
|
|
13066
13064
|
AngularEditor.onKeydown(this.editor, event);
|