@plait/core 0.29.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/interfaces/board.mjs +1 -1
- package/esm2022/interfaces/rectangle-client.mjs +33 -2
- package/esm2022/interfaces/selection.mjs +1 -1
- package/esm2022/plugins/create-board.mjs +5 -3
- package/esm2022/plugins/with-moving.mjs +11 -10
- package/esm2022/plugins/with-selection.mjs +10 -10
- package/esm2022/transforms/general.mjs +2 -2
- package/esm2022/transforms/selection.mjs +2 -2
- package/esm2022/utils/selected-element.mjs +35 -33
- package/fesm2022/plait-core.mjs +90 -54
- package/fesm2022/plait-core.mjs.map +1 -1
- package/interfaces/board.d.ts +4 -2
- package/interfaces/rectangle-client.d.ts +11 -1
- package/interfaces/selection.d.ts +2 -5
- package/package.json +1 -1
- package/utils/selected-element.d.ts +4 -4
|
@@ -102,7 +102,7 @@ const applyToDraft = (board, selection, viewport, theme, op) => {
|
|
|
102
102
|
selection = op.newProperties;
|
|
103
103
|
}
|
|
104
104
|
else {
|
|
105
|
-
selection
|
|
105
|
+
selection = newProperties;
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
break;
|
|
@@ -143,4 +143,4 @@ export const GeneralTransforms = {
|
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
};
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3RyYW5zZm9ybXMvZ2VuZXJhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWxELE9BQU8sRUFBWSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFPMUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFpQixFQUFFLFNBQTJCLEVBQUUsUUFBa0IsRUFBRSxLQUFpQixFQUFFLEVBQWtCLEVBQUUsRUFBRTtJQUMvSCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUU7UUFDYixLQUFLLGFBQWEsQ0FBQyxDQUFDO1lBQ2hCLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDO1lBQzFCLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBRXBDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtnQkFDcEQsTUFBTSxJQUFJLEtBQUssQ0FDWCxvREFBb0QsSUFBSSx3REFBd0QsQ0FDbkgsQ0FBQzthQUNMO1lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN2QyxNQUFNO1NBQ1Q7UUFDRCxLQUFLLGFBQWEsQ0FBQyxDQUFD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QUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFFLFdBQVcsQ0FBQyxTQUFTLENBQWUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2FBQzVGO2lCQUFNO2dCQUNILEtBQUssQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2FBQzFCO1lBRUQsS0FBSyxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFFLFdBQVcsQ0FBQyxRQUFRLENBQWMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1lBQ3BGLEtBQUssQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztTQUM3RDtJQUNMLENBQUM7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhaXRPcGVyYXRpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL29wZXJhdGlvbic7XG5pbXBvcnQgeyBQbGFpdEJvYXJkIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ib2FyZCc7XG5pbXBvcnQgeyBjcmVhdGVEcmFmdCwgZmluaXNoRHJhZnQsIGlzRHJhZnQgfSBmcm9tICdpbW1lcic7XG5pbXBvcnQgeyBWaWV3cG9ydCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdmlld3BvcnQnO1xuaW1wb3J0IHsgU2VsZWN0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9zZWxlY3Rpb24nO1xuaW1wb3J0IHsgQW5jZXN0b3IsIFBsYWl0Tm9kZSB9IGZyb20gJy4uL2ludGVyZmFjZXMvbm9kZSc7XG5pbXBvcnQgeyBQYXRoIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9wYXRoJztcbmltcG9ydCB7IFBsYWl0VGhlbWUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3RoZW1lJztcblxuZXhwb3J0IGludGVyZmFjZSBHZW5lcmFsVHJhbnNmb3JtcyB7XG4gICAgdHJhbnNmb3JtOiAoYm9hcmQ6IFBsYWl0Qm9hcmQsIG9wOiBQbGFpdE9wZXJhdGlvbikgPT4gdm9pZDtcbn1cblxuY29uc3QgYXBwbHlUb0RyYWZ0ID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBzZWxlY3Rpb246IFNlbGVjdGlvbiB8IG51bGwsIHZpZXdwb3J0OiBWaWV3cG9ydCwgdGhlbWU6IFBsYWl0VGhlbWUsIG9wOiBQbGFpdE9wZXJhdGlvbikgPT4ge1xuICAgIHN3aXRjaCAob3AudHlwZSkge1xuICAgICAgICBjYXNlICdpbnNlcnRfbm9kZSc6IHtcbiAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgbm9kZSB9ID0gb3A7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnQgPSBQbGFpdE5vZGUucGFyZW50KGJvYXJkLCBwYXRoKTtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcGF0aFtwYXRoLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICBpZiAoIXBhcmVudC5jaGlsZHJlbiB8fCBpbmRleCA+IHBhcmVudC5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgIGBDYW5ub3QgYXBwbHkgYW4gXCJpbnNlcnRfbm9kZVwiIG9wZXJhdGlvbiBhdCBwYXRoIFske3BhdGh9XSBiZWNhdXNlIHRoZSBkZXN0aW5hdGlvbiBpcyBwYXN0IHRoZSBlbmQgb2YgdGhlIG5vZGUuYFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBhcmVudC5jaGlsZHJlbi5zcGxpY2UoaW5kZXgsIDAsIG5vZGUpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAncmVtb3ZlX25vZGUnOiB7XG4gICAgICAgICAgICBjb25zdCB7IHBhdGggfSA9IG9wO1xuICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gUGxhaXROb2RlLnBhcmVudChib2FyZCwgcGF0aCk7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHBhdGhbcGF0aC5sZW5ndGggLSAxXTtcblxuICAgICAgICAgICAgaWYgKCFwYXJlbnQuY2hpbGRyZW4gfHwgaW5kZXggPiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICBgQ2Fubm90IGFwcGx5IGFuIFwiaW5zZXJ0X25vZGVcIiBvcGVyYXRpb24gYXQgcGF0aCBbJHtwYXRofV0gYmVjYXVzZSB0aGUgZGVzdGluYXRpb24gaXMgcGFzdCB0aGUgZW5kIG9mIHRoZSBub2RlLmBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyZW50LmNoaWxkcmVuLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdtb3ZlX25vZGUnOiB7XG4gICAgICAgICAgICBjb25zdCB7IHBhdGgsIG5ld1BhdGggfSA9IG9wO1xuXG4gICAgICAgICAgICBpZiAoUGF0aC5pc0FuY2VzdG9yKHBhdGgsIG5ld1BhdGgpKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgbW92ZSBhIHBhdGggWyR7cGF0aH1dIHRvIG5ldyBwYXRoIFske25ld1BhdGh9XSBiZWNhdXNlIHRoZSBkZXN0aW5hdGlvbiBpcyBpbnNpZGUgaXRzZWxmLmApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBub2RlID0gUGxhaXROb2RlLmdldChib2FyZCwgcGF0aCk7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnQgPSBQbGFpdE5vZGUucGFyZW50KGJvYXJkLCBwYXRoKTtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcGF0aFtwYXRoLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICAvLyBUaGlzIGlzIHRyaWNreSwgYnV0IHNpbmNlIHRoZSBgcGF0aGAgYW5kIGBuZXdQYXRoYCBib3RoIHJlZmVyIHRvXG4gICAgICAgICAgICAvLyB0aGUgc2FtZSBzbmFwc2hvdCBpbiB0aW1lLCB0aGVyZSdzIGEgbWlzbWF0Y2guIEFmdGVyIGVpdGhlclxuICAgICAgICAgICAgLy8gcmVtb3ZpbmcgdGhlIG9yaWdpbmFsIHBvc2l0aW9uLCB0aGUgc2Vjb25kIHN0ZXAncyBwYXRoIGNhbiBiZSBvdXRcbiAgICAgICAgICAgIC8vIG9mIGRhdGUuIFNvIGluc3RlYWQgb2YgdXNpbmcgdGhlIGBvcC5uZXdQYXRoYCBkaXJlY3RseSwgd2VcbiAgICAgICAgICAgIC8vIHRyYW5zZm9ybSBgb3AucGF0aGAgdG8gYXNjZXJ0YWluIHdoYXQgdGhlIGBuZXdQYXRoYCB3b3VsZCBiZSBhZnRlclxuICAgICAgICAgICAgLy8gdGhlIG9wZXJhdGlvbiB3YXMgYXBwbGllZC5cbiAgICAgICAgICAgIHBhcmVudC5jaGlsZHJlbj8uc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgIGNvbnN0IHRydWVQYXRoID0gUGF0aC50cmFuc2Zvcm0ocGF0aCwgb3ApITtcbiAgICAgICAgICAgIGNvbnN0IG5ld1BhcmVudCA9IFBsYWl0Tm9kZS5nZXQoYm9hcmQsIFBhdGgucGFyZW50KHRydWVQYXRoKSkgYXMgQW5jZXN0b3I7XG4gICAgICAgICAgICBjb25zdCBuZXdJbmRleCA9IHRydWVQYXRoW3RydWVQYXRoLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICBuZXdQYXJlbnQuY2hpbGRyZW4/LnNwbGljZShuZXdJbmRleCwgMCwgbm9kZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdzZXRfbm9kZSc6IHtcbiAgICAgICAgICAgIGNvbnN0IHsgcGF0aCwgcHJvcGVydGllcywgbmV3UHJvcGVydGllcyB9ID0gb3A7XG5cbiAgICAgICAgICAgIGlmIChwYXRoLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHNldCBwcm9wZXJ0aWVzIG9uIHRoZSByb290IG5vZGUhYCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IG5vZGUgPSBQbGFpdE5vZGUuZ2V0KGJvYXJkLCBwYXRoKTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gbmV3UHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gbmV3UHJvcGVydGllc1trZXldO1xuXG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlIG5vZGVba2V5XTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub2RlW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIHByb3BlcnRpZXMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgZGVmaW5lZCwgYnV0IGFyZSBub3cgbWlzc2luZywgbXVzdCBiZSBkZWxldGVkXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBwcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFuZXdQcm9wZXJ0aWVzLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlIG5vZGVba2V5XTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ3NldF92aWV3cG9ydCc6IHtcbiAgICAgICAgICAgIGNvbnN0IHsgbmV3UHJvcGVydGllcyB9ID0gb3A7XG4gICAgICAgICAgICBpZiAobmV3UHJvcGVydGllcyA9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdmlld3BvcnQgPSBuZXdQcm9wZXJ0aWVzO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAodmlld3BvcnQgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIVZpZXdwb3J0LmlzVmlld3BvcnQobmV3UHJvcGVydGllcykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgQ2Fubm90IGFwcGx5IGFuIGluY29tcGxldGUgXCJzZXRfdmlld3BvcnRcIiBvcGVyYXRpb24gcHJvcGVydGllcyAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdQcm9wZXJ0aWVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX0gd2hlbiB0aGVyZSBpcyBubyBjdXJyZW50IHZpZXdwb3J0LmBcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmlld3BvcnQgPSB7IC4uLm5ld1Byb3BlcnRpZXMgfTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBuZXdQcm9wZXJ0aWVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gbmV3UHJvcGVydGllc1trZXldO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgdmlld3BvcnRba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdwb3J0W2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ3NldF9zZWxlY3Rpb24nOiB7XG4gICAgICAgICAgICBjb25zdCB7IG5ld1Byb3BlcnRpZXMgfSA9IG9wO1xuICAgICAgICAgICAgaWYgKG5ld1Byb3BlcnRpZXMgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHNlbGVjdGlvbiA9IG5ld1Byb3BlcnRpZXM7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChzZWxlY3Rpb24gPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uID0gb3AubmV3UHJvcGVydGllcztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3Rpb24ucmFuZ2VzID0gbmV3UHJvcGVydGllcy5yYW5nZXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnc2V0X3RoZW1lJzoge1xuICAgICAgICAgICAgY29uc3QgeyBuZXdQcm9wZXJ0aWVzIH0gPSBvcDtcbiAgICAgICAgICAgIHRoZW1lID0gbmV3UHJvcGVydGllcyBhcyBQbGFpdFRoZW1lO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgc2VsZWN0aW9uLCB2aWV3cG9ydCwgdGhlbWUgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBHZW5lcmFsVHJhbnNmb3JtczogR2VuZXJhbFRyYW5zZm9ybXMgPSB7XG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtIHRoZSBib2FyZCBieSBhbiBvcGVyYXRpb24uXG4gICAgICovXG4gICAgdHJhbnNmb3JtKGJvYXJkOiBQbGFpdEJvYXJkLCBvcDogUGxhaXRPcGVyYXRpb24pOiB2b2lkIHtcbiAgICAgICAgYm9hcmQuY2hpbGRyZW4gPSBjcmVhdGVEcmFmdChib2FyZC5jaGlsZHJlbik7XG4gICAgICAgIGxldCB2aWV3cG9ydCA9IGJvYXJkLnZpZXdwb3J0ICYmIGNyZWF0ZURyYWZ0KGJvYXJkLnZpZXdwb3J0KTtcbiAgICAgICAgbGV0IHNlbGVjdGlvbiA9IGJvYXJkLnNlbGVjdGlvbiAmJiBjcmVhdGVEcmFmdChib2FyZC5zZWxlY3Rpb24pO1xuICAgICAgICBsZXQgdGhlbWUgPSBib2FyZC50aGVtZSAmJiBjcmVhdGVEcmFmdChib2FyZC50aGVtZSk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXRlID0gYXBwbHlUb0RyYWZ0KGJvYXJkLCBzZWxlY3Rpb24sIHZpZXdwb3J0LCB0aGVtZSwgb3ApO1xuICAgICAgICAgICAgdmlld3BvcnQgPSBzdGF0ZS52aWV3cG9ydDtcbiAgICAgICAgICAgIHNlbGVjdGlvbiA9IHN0YXRlLnNlbGVjdGlvbjtcbiAgICAgICAgICAgIHRoZW1lID0gc3RhdGUudGhlbWU7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICBib2FyZC5jaGlsZHJlbiA9IGZpbmlzaERyYWZ0KGJvYXJkLmNoaWxkcmVuKTtcblxuICAgICAgICAgICAgaWYgKHNlbGVjdGlvbikge1xuICAgICAgICAgICAgICAgIGJvYXJkLnNlbGVjdGlvbiA9IGlzRHJhZnQoc2VsZWN0aW9uKSA/IChmaW5pc2hEcmFmdChzZWxlY3Rpb24pIGFzIFNlbGVjdGlvbikgOiBzZWxlY3Rpb247XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGJvYXJkLnNlbGVjdGlvbiA9IG51bGw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJvYXJkLnZpZXdwb3J0ID0gaXNEcmFmdCh2aWV3cG9ydCkgPyAoZmluaXNoRHJhZnQodmlld3BvcnQpIGFzIFZpZXdwb3J0KSA6IHZpZXdwb3J0O1xuICAgICAgICAgICAgYm9hcmQudGhlbWUgPSBpc0RyYWZ0KHRoZW1lKSA/IGZpbmlzaERyYWZ0KHRoZW1lKSA6IHRoZW1lO1xuICAgICAgICB9XG4gICAgfVxufTtcbiJdfQ==
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3RyYW5zZm9ybXMvZ2VuZXJhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWxELE9BQU8sRUFBWSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFPMUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFpQixFQUFFLFNBQTJCLEVBQUUsUUFBa0IsRUFBRSxLQUFpQixFQUFFLEVBQWtCLEVBQUUsRUFBRTtJQUMvSCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUU7UUFDYixLQUFLLGFBQWEsQ0FBQyxDQUFDO1lBQ2hCLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDO1lBQzFCLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBRXBDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtnQkFDcEQsTUFBTSxJQUFJLEtBQUssQ0FDWCxvREFBb0QsSUFBSSx3REFBd0QsQ0FDbkgsQ0FBQzthQUNMO1lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN2QyxNQUFNO1NBQ1Q7UUFDRCxLQUFLLGFBQWEsQ0FBQyxDQUFD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QUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBRSxXQUFXLENBQUMsU0FBUyxDQUFlLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQzthQUM1RjtpQkFBTTtnQkFDSCxLQUFLLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQzthQUMxQjtZQUVELEtBQUssQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBRSxXQUFXLENBQUMsUUFBUSxDQUFjLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztZQUNwRixLQUFLLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7U0FDN0Q7SUFDTCxDQUFDO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0T3BlcmF0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9vcGVyYXRpb24nO1xuaW1wb3J0IHsgUGxhaXRCb2FyZCB9IGZyb20gJy4uL2ludGVyZmFjZXMvYm9hcmQnO1xuaW1wb3J0IHsgY3JlYXRlRHJhZnQsIGZpbmlzaERyYWZ0LCBpc0RyYWZ0IH0gZnJvbSAnaW1tZXInO1xuaW1wb3J0IHsgVmlld3BvcnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3ZpZXdwb3J0JztcbmltcG9ydCB7IFNlbGVjdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvc2VsZWN0aW9uJztcbmltcG9ydCB7IEFuY2VzdG9yLCBQbGFpdE5vZGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL25vZGUnO1xuaW1wb3J0IHsgUGF0aCB9IGZyb20gJy4uL2ludGVyZmFjZXMvcGF0aCc7XG5pbXBvcnQgeyBQbGFpdFRoZW1lIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90aGVtZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VuZXJhbFRyYW5zZm9ybXMge1xuICAgIHRyYW5zZm9ybTogKGJvYXJkOiBQbGFpdEJvYXJkLCBvcDogUGxhaXRPcGVyYXRpb24pID0+IHZvaWQ7XG59XG5cbmNvbnN0IGFwcGx5VG9EcmFmdCA9IChib2FyZDogUGxhaXRCb2FyZCwgc2VsZWN0aW9uOiBTZWxlY3Rpb24gfCBudWxsLCB2aWV3cG9ydDogVmlld3BvcnQsIHRoZW1lOiBQbGFpdFRoZW1lLCBvcDogUGxhaXRPcGVyYXRpb24pID0+IHtcbiAgICBzd2l0Y2ggKG9wLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnaW5zZXJ0X25vZGUnOiB7XG4gICAgICAgICAgICBjb25zdCB7IHBhdGgsIG5vZGUgfSA9IG9wO1xuICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gUGxhaXROb2RlLnBhcmVudChib2FyZCwgcGF0aCk7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHBhdGhbcGF0aC5sZW5ndGggLSAxXTtcblxuICAgICAgICAgICAgaWYgKCFwYXJlbnQuY2hpbGRyZW4gfHwgaW5kZXggPiBwYXJlbnQuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICBgQ2Fubm90IGFwcGx5IGFuIFwiaW5zZXJ0X25vZGVcIiBvcGVyYXRpb24gYXQgcGF0aCBbJHtwYXRofV0gYmVjYXVzZSB0aGUgZGVzdGluYXRpb24gaXMgcGFzdCB0aGUgZW5kIG9mIHRoZSBub2RlLmBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4uc3BsaWNlKGluZGV4LCAwLCBub2RlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ3JlbW92ZV9ub2RlJzoge1xuICAgICAgICAgICAgY29uc3QgeyBwYXRoIH0gPSBvcDtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudCA9IFBsYWl0Tm9kZS5wYXJlbnQoYm9hcmQsIHBhdGgpO1xuICAgICAgICAgICAgY29uc3QgaW5kZXggPSBwYXRoW3BhdGgubGVuZ3RoIC0gMV07XG5cbiAgICAgICAgICAgIGlmICghcGFyZW50LmNoaWxkcmVuIHx8IGluZGV4ID4gcGFyZW50LmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgYENhbm5vdCBhcHBseSBhbiBcImluc2VydF9ub2RlXCIgb3BlcmF0aW9uIGF0IHBhdGggWyR7cGF0aH1dIGJlY2F1c2UgdGhlIGRlc3RpbmF0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiB0aGUgbm9kZS5gXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBhcmVudC5jaGlsZHJlbi5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnbW92ZV9ub2RlJzoge1xuICAgICAgICAgICAgY29uc3QgeyBwYXRoLCBuZXdQYXRoIH0gPSBvcDtcblxuICAgICAgICAgICAgaWYgKFBhdGguaXNBbmNlc3RvcihwYXRoLCBuZXdQYXRoKSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IG1vdmUgYSBwYXRoIFske3BhdGh9XSB0byBuZXcgcGF0aCBbJHtuZXdQYXRofV0gYmVjYXVzZSB0aGUgZGVzdGluYXRpb24gaXMgaW5zaWRlIGl0c2VsZi5gKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IFBsYWl0Tm9kZS5nZXQoYm9hcmQsIHBhdGgpO1xuICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gUGxhaXROb2RlLnBhcmVudChib2FyZCwgcGF0aCk7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHBhdGhbcGF0aC5sZW5ndGggLSAxXTtcblxuICAgICAgICAgICAgLy8gVGhpcyBpcyB0cmlja3ksIGJ1dCBzaW5jZSB0aGUgYHBhdGhgIGFuZCBgbmV3UGF0aGAgYm90aCByZWZlciB0b1xuICAgICAgICAgICAgLy8gdGhlIHNhbWUgc25hcHNob3QgaW4gdGltZSwgdGhlcmUncyBhIG1pc21hdGNoLiBBZnRlciBlaXRoZXJcbiAgICAgICAgICAgIC8vIHJlbW92aW5nIHRoZSBvcmlnaW5hbCBwb3NpdGlvbiwgdGhlIHNlY29uZCBzdGVwJ3MgcGF0aCBjYW4gYmUgb3V0XG4gICAgICAgICAgICAvLyBvZiBkYXRlLiBTbyBpbnN0ZWFkIG9mIHVzaW5nIHRoZSBgb3AubmV3UGF0aGAgZGlyZWN0bHksIHdlXG4gICAgICAgICAgICAvLyB0cmFuc2Zvcm0gYG9wLnBhdGhgIHRvIGFzY2VydGFpbiB3aGF0IHRoZSBgbmV3UGF0aGAgd291bGQgYmUgYWZ0ZXJcbiAgICAgICAgICAgIC8vIHRoZSBvcGVyYXRpb24gd2FzIGFwcGxpZWQuXG4gICAgICAgICAgICBwYXJlbnQuY2hpbGRyZW4/LnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgICBjb25zdCB0cnVlUGF0aCA9IFBhdGgudHJhbnNmb3JtKHBhdGgsIG9wKSE7XG4gICAgICAgICAgICBjb25zdCBuZXdQYXJlbnQgPSBQbGFpdE5vZGUuZ2V0KGJvYXJkLCBQYXRoLnBhcmVudCh0cnVlUGF0aCkpIGFzIEFuY2VzdG9yO1xuICAgICAgICAgICAgY29uc3QgbmV3SW5kZXggPSB0cnVlUGF0aFt0cnVlUGF0aC5sZW5ndGggLSAxXTtcblxuICAgICAgICAgICAgbmV3UGFyZW50LmNoaWxkcmVuPy5zcGxpY2UobmV3SW5kZXgsIDAsIG5vZGUpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnc2V0X25vZGUnOiB7XG4gICAgICAgICAgICBjb25zdCB7IHBhdGgsIHByb3BlcnRpZXMsIG5ld1Byb3BlcnRpZXMgfSA9IG9wO1xuXG4gICAgICAgICAgICBpZiAocGF0aC5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBzZXQgcHJvcGVydGllcyBvbiB0aGUgcm9vdCBub2RlIWApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBub2RlID0gUGxhaXROb2RlLmdldChib2FyZCwgcGF0aCk7XG5cbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIG5ld1Byb3BlcnRpZXMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IG5ld1Byb3BlcnRpZXNba2V5XTtcblxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBub2RlW2tleV07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZVtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBwcm9wZXJ0aWVzIHRoYXQgd2VyZSBwcmV2aW91c2x5IGRlZmluZWQsIGJ1dCBhcmUgbm93IG1pc3NpbmcsIG11c3QgYmUgZGVsZXRlZFxuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgIGlmICghbmV3UHJvcGVydGllcy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBub2RlW2tleV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdzZXRfdmlld3BvcnQnOiB7XG4gICAgICAgICAgICBjb25zdCB7IG5ld1Byb3BlcnRpZXMgfSA9IG9wO1xuICAgICAgICAgICAgaWYgKG5ld1Byb3BlcnRpZXMgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHZpZXdwb3J0ID0gbmV3UHJvcGVydGllcztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKHZpZXdwb3J0ID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFWaWV3cG9ydC5pc1ZpZXdwb3J0KG5ld1Byb3BlcnRpZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYENhbm5vdCBhcHBseSBhbiBpbmNvbXBsZXRlIFwic2V0X3ZpZXdwb3J0XCIgb3BlcmF0aW9uIHByb3BlcnRpZXMgJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3UHJvcGVydGllc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9IHdoZW4gdGhlcmUgaXMgbm8gY3VycmVudCB2aWV3cG9ydC5gXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHZpZXdwb3J0ID0geyAuLi5uZXdQcm9wZXJ0aWVzIH07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gbmV3UHJvcGVydGllcykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IG5ld1Byb3BlcnRpZXNba2V5XTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHZpZXdwb3J0W2tleV07XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aWV3cG9ydFtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdzZXRfc2VsZWN0aW9uJzoge1xuICAgICAgICAgICAgY29uc3QgeyBuZXdQcm9wZXJ0aWVzIH0gPSBvcDtcbiAgICAgICAgICAgIGlmIChuZXdQcm9wZXJ0aWVzID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBzZWxlY3Rpb24gPSBuZXdQcm9wZXJ0aWVzO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoc2VsZWN0aW9uID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGlvbiA9IG9wLm5ld1Byb3BlcnRpZXM7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uID0gbmV3UHJvcGVydGllcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdzZXRfdGhlbWUnOiB7XG4gICAgICAgICAgICBjb25zdCB7IG5ld1Byb3BlcnRpZXMgfSA9IG9wO1xuICAgICAgICAgICAgdGhlbWUgPSBuZXdQcm9wZXJ0aWVzIGFzIFBsYWl0VGhlbWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4geyBzZWxlY3Rpb24sIHZpZXdwb3J0LCB0aGVtZSB9O1xufTtcblxuZXhwb3J0IGNvbnN0IEdlbmVyYWxUcmFuc2Zvcm1zOiBHZW5lcmFsVHJhbnNmb3JtcyA9IHtcbiAgICAvKipcbiAgICAgKiBUcmFuc2Zvcm0gdGhlIGJvYXJkIGJ5IGFuIG9wZXJhdGlvbi5cbiAgICAgKi9cbiAgICB0cmFuc2Zvcm0oYm9hcmQ6IFBsYWl0Qm9hcmQsIG9wOiBQbGFpdE9wZXJhdGlvbik6IHZvaWQge1xuICAgICAgICBib2FyZC5jaGlsZHJlbiA9IGNyZWF0ZURyYWZ0KGJvYXJkLmNoaWxkcmVuKTtcbiAgICAgICAgbGV0IHZpZXdwb3J0ID0gYm9hcmQudmlld3BvcnQgJiYgY3JlYXRlRHJhZnQoYm9hcmQudmlld3BvcnQpO1xuICAgICAgICBsZXQgc2VsZWN0aW9uID0gYm9hcmQuc2VsZWN0aW9uICYmIGNyZWF0ZURyYWZ0KGJvYXJkLnNlbGVjdGlvbik7XG4gICAgICAgIGxldCB0aGVtZSA9IGJvYXJkLnRoZW1lICYmIGNyZWF0ZURyYWZ0KGJvYXJkLnRoZW1lKTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3Qgc3RhdGUgPSBhcHBseVRvRHJhZnQoYm9hcmQsIHNlbGVjdGlvbiwgdmlld3BvcnQsIHRoZW1lLCBvcCk7XG4gICAgICAgICAgICB2aWV3cG9ydCA9IHN0YXRlLnZpZXdwb3J0O1xuICAgICAgICAgICAgc2VsZWN0aW9uID0gc3RhdGUuc2VsZWN0aW9uO1xuICAgICAgICAgICAgdGhlbWUgPSBzdGF0ZS50aGVtZTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIGJvYXJkLmNoaWxkcmVuID0gZmluaXNoRHJhZnQoYm9hcmQuY2hpbGRyZW4pO1xuXG4gICAgICAgICAgICBpZiAoc2VsZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgYm9hcmQuc2VsZWN0aW9uID0gaXNEcmFmdChzZWxlY3Rpb24pID8gKGZpbmlzaERyYWZ0KHNlbGVjdGlvbikgYXMgU2VsZWN0aW9uKSA6IHNlbGVjdGlvbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgYm9hcmQuc2VsZWN0aW9uID0gbnVsbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYm9hcmQudmlld3BvcnQgPSBpc0RyYWZ0KHZpZXdwb3J0KSA/IChmaW5pc2hEcmFmdCh2aWV3cG9ydCkgYXMgVmlld3BvcnQpIDogdmlld3BvcnQ7XG4gICAgICAgICAgICBib2FyZC50aGVtZSA9IGlzRHJhZnQodGhlbWUpID8gZmluaXNoRHJhZnQodGhlbWUpIDogdGhlbWU7XG4gICAgICAgIH1cbiAgICB9XG59O1xuIl19
|
|
@@ -10,7 +10,7 @@ export const SelectionTransforms = {
|
|
|
10
10
|
};
|
|
11
11
|
export function addSelectionWithTemporaryElements(board, elements) {
|
|
12
12
|
const timeoutId = setTimeout(() => {
|
|
13
|
-
setSelection(board,
|
|
13
|
+
setSelection(board, null);
|
|
14
14
|
}, 0);
|
|
15
15
|
let ref = getTemporaryRef(board);
|
|
16
16
|
if (ref) {
|
|
@@ -23,4 +23,4 @@ export function addSelectionWithTemporaryElements(board, elements) {
|
|
|
23
23
|
BOARD_TO_TEMPORARY_ELEMENTS.set(board, { timeoutId, elements });
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdHJhbnNmb3Jtcy9zZWxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTVELE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBaUIsRUFBRSxTQUEyQjtJQUN2RSxNQUFNLFNBQVMsR0FBMEIsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsQ0FBQztJQUMxSCxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzNCLENBQUM7QUFPRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBd0I7SUFDcEQsWUFBWTtJQUNaLGlDQUFpQztDQUNwQyxDQUFDO0FBRUYsTUFBTSxVQUFVLGlDQUFpQyxDQUFDLEtBQWlCLEVBQUUsUUFBd0I7SUFDekYsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUM5QixZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNOLElBQUksR0FBRyxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxJQUFJLEdBQUcsRUFBRTtRQUNMLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUIsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUNyQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JGLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0tBQzdCO1NBQU07UUFDSCwyQkFBMkIsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7S0FDbkU7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2V0U2VsZWN0aW9uT3BlcmF0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9vcGVyYXRpb24nO1xuaW1wb3J0IHsgUGxhaXRCb2FyZCB9IGZyb20gJy4uL2ludGVyZmFjZXMvYm9hcmQnO1xuaW1wb3J0IHsgU2VsZWN0aW9uIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9zZWxlY3Rpb24nO1xuaW1wb3J0IHsgQk9BUkRfVE9fVEVNUE9SQVJZX0VMRU1FTlRTIH0gZnJvbSAnLi4vdXRpbHMvd2Vhay1tYXBzJztcbmltcG9ydCB7IFBsYWl0RWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMvZWxlbWVudCc7XG5pbXBvcnQgeyBnZXRUZW1wb3JhcnlSZWYgfSBmcm9tICcuLi9wbHVnaW5zL3dpdGgtc2VsZWN0aW9uJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFNlbGVjdGlvbihib2FyZDogUGxhaXRCb2FyZCwgc2VsZWN0aW9uOiBTZWxlY3Rpb24gfCBudWxsKSB7XG4gICAgY29uc3Qgb3BlcmF0aW9uOiBTZXRTZWxlY3Rpb25PcGVyYXRpb24gPSB7IHR5cGU6ICdzZXRfc2VsZWN0aW9uJywgcHJvcGVydGllczogYm9hcmQuc2VsZWN0aW9uLCBuZXdQcm9wZXJ0aWVzOiBzZWxlY3Rpb24gfTtcbiAgICBib2FyZC5hcHBseShvcGVyYXRpb24pO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvblRyYW5zZm9ybXMge1xuICAgIHNldFNlbGVjdGlvbjogKGJvYXJkOiBQbGFpdEJvYXJkLCBzZWxlY3Rpb246IFNlbGVjdGlvbiB8IG51bGwpID0+IHZvaWQ7XG4gICAgYWRkU2VsZWN0aW9uV2l0aFRlbXBvcmFyeUVsZW1lbnRzOiAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzOiBQbGFpdEVsZW1lbnRbXSkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IFNlbGVjdGlvblRyYW5zZm9ybXM6IFNlbGVjdGlvblRyYW5zZm9ybXMgPSB7XG4gICAgc2V0U2VsZWN0aW9uLFxuICAgIGFkZFNlbGVjdGlvbldpdGhUZW1wb3JhcnlFbGVtZW50c1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGFkZFNlbGVjdGlvbldpdGhUZW1wb3JhcnlFbGVtZW50cyhib2FyZDogUGxhaXRCb2FyZCwgZWxlbWVudHM6IFBsYWl0RWxlbWVudFtdKSB7XG4gICAgY29uc3QgdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHNldFNlbGVjdGlvbihib2FyZCwgbnVsbCk7XG4gICAgfSwgMCk7XG4gICAgbGV0IHJlZiA9IGdldFRlbXBvcmFyeVJlZihib2FyZCk7XG4gICAgaWYgKHJlZikge1xuICAgICAgICBjbGVhclRpbWVvdXQocmVmLnRpbWVvdXRJZCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRFbGVtZW50cyA9IHJlZi5lbGVtZW50cztcbiAgICAgICAgcmVmLmVsZW1lbnRzLnB1c2goLi4uZWxlbWVudHMuZmlsdGVyKGVsZW1lbnQgPT4gIWN1cnJlbnRFbGVtZW50cy5pbmNsdWRlcyhlbGVtZW50KSkpO1xuICAgICAgICByZWYudGltZW91dElkID0gdGltZW91dElkO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIEJPQVJEX1RPX1RFTVBPUkFSWV9FTEVNRU5UUy5zZXQoYm9hcmQsIHsgdGltZW91dElkLCBlbGVtZW50cyB9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -2,43 +2,45 @@ import { PlaitBoard } from '../interfaces/board';
|
|
|
2
2
|
import { depthFirstRecursion, getIsRecursionFunc } from './tree';
|
|
3
3
|
import { BOARD_TO_SELECTED_ELEMENT } from './weak-maps';
|
|
4
4
|
import { Selection } from '../interfaces/selection';
|
|
5
|
-
export const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const isCollapsed =
|
|
5
|
+
export const getHitElementsBySelection = (board, selection, match = () => true) => {
|
|
6
|
+
const newSelection = selection || board.selection;
|
|
7
|
+
const rectangleHitElements = [];
|
|
8
|
+
const isCollapsed = newSelection && Selection.isCollapsed(newSelection);
|
|
9
|
+
if (isCollapsed) {
|
|
10
|
+
const hitElement = getHitElementByPoint(board, newSelection.anchor, match);
|
|
11
|
+
if (hitElement) {
|
|
12
|
+
return [hitElement];
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
depthFirstRecursion(board, node => {
|
|
19
|
+
if (!PlaitBoard.isBoard(node) && match(node) && board.isRectangleHit(node, newSelection)) {
|
|
20
|
+
rectangleHitElements.push(node);
|
|
21
|
+
}
|
|
22
|
+
}, getIsRecursionFunc(board), true);
|
|
23
|
+
return rectangleHitElements;
|
|
24
|
+
};
|
|
25
|
+
export const getHitElementByPoint = (board, point, match = () => true) => {
|
|
26
|
+
let rectangleHitElement = undefined;
|
|
27
|
+
let hitElement = undefined;
|
|
9
28
|
depthFirstRecursion(board, node => {
|
|
10
|
-
if (
|
|
29
|
+
if (hitElement) {
|
|
11
30
|
return;
|
|
12
31
|
}
|
|
13
|
-
if (
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
32
|
+
if (PlaitBoard.isBoard(node) || !match(node)) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (board.isHit(node, point)) {
|
|
36
|
+
hitElement = node;
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
if (!rectangleHitElement && board.isRectangleHit(node, { anchor: point, focus: point })) {
|
|
40
|
+
rectangleHitElement = node;
|
|
20
41
|
}
|
|
21
42
|
}, getIsRecursionFunc(board), true);
|
|
22
|
-
return
|
|
23
|
-
};
|
|
24
|
-
export const getHitElementOfRoot = (board, rootElements, range) => {
|
|
25
|
-
const newRootElements = [...rootElements].reverse();
|
|
26
|
-
return newRootElements.find(item => {
|
|
27
|
-
return board.isHitSelection(item, range);
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
export const isHitElements = (board, elements, ranges) => {
|
|
31
|
-
let isIntersectionElements = false;
|
|
32
|
-
if (elements.length) {
|
|
33
|
-
elements.map(item => {
|
|
34
|
-
if (!isIntersectionElements) {
|
|
35
|
-
isIntersectionElements = ranges.some(range => {
|
|
36
|
-
return board.isHitSelection(item, range);
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
return isIntersectionElements;
|
|
43
|
+
return hitElement || rectangleHitElement;
|
|
42
44
|
};
|
|
43
45
|
export const cacheSelectedElements = (board, selectedElements) => {
|
|
44
46
|
BOARD_TO_SELECTED_ELEMENT.set(board, selectedElements);
|
|
@@ -62,4 +64,4 @@ export const isSelectedElement = (board, element) => {
|
|
|
62
64
|
const selectedElements = getSelectedElements(board);
|
|
63
65
|
return !!selectedElements.find(value => value === element);
|
|
64
66
|
};
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0ZWQtZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3V0aWxzL3NlbGVjdGVkLWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWpELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNqRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXBELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQ3JDLEtBQWlCLEVBQ2pCLFNBQXFCLEVBQ3JCLFFBQTRDLEdBQUcsRUFBRSxDQUFDLElBQUksRUFDeEQsRUFBRTtJQUNBLE1BQU0sWUFBWSxHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUMsU0FBc0IsQ0FBQztJQUMvRCxNQUFNLG9CQUFvQixHQUFtQixFQUFFLENBQUM7SUFDaEQsTUFBTSxXQUFXLEdBQUcsWUFBWSxJQUFJLFNBQVMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDeEUsSUFBSSxXQUFXLEVBQUU7UUFDYixNQUFNLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRSxJQUFJLFVBQVUsRUFBRTtZQUNaLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2QjthQUFNO1lBQ0gsT0FBTyxFQUFFLENBQUM7U0FDYjtLQUNKO0lBQ0QsbUJBQW1CLENBQ2YsS0FBSyxFQUNMLElBQUksQ0FBQyxFQUFFO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FB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QyxLQUFLLENBQUMsQ0FBQztJQUNwRCxPQUFPLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUM7QUFDL0QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhaXRCb2FyZCB9IGZyb20gJy4uL2ludGVyZmFjZXMvYm9hcmQnO1xuaW1wb3J0IHsgQW5jZXN0b3IgfSBmcm9tICcuLi9pbnRlcmZhY2VzL25vZGUnO1xuaW1wb3J0IHsgZGVwdGhGaXJzdFJlY3Vyc2lvbiwgZ2V0SXNSZWN1cnNpb25GdW5jIH0gZnJvbSAnLi90cmVlJztcbmltcG9ydCB7IEJPQVJEX1RPX1NFTEVDVEVEX0VMRU1FTlQgfSBmcm9tICcuL3dlYWstbWFwcyc7XG5pbXBvcnQgeyBTZWxlY3Rpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBQbGFpdEVsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2VsZW1lbnQnO1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3BvaW50JztcblxuZXhwb3J0IGNvbnN0IGdldEhpdEVsZW1lbnRzQnlTZWxlY3Rpb24gPSAoXG4gICAgYm9hcmQ6IFBsYWl0Qm9hcmQsXG4gICAgc2VsZWN0aW9uPzogU2VsZWN0aW9uLFxuICAgIG1hdGNoOiAoZWxlbWVudDogUGxhaXRFbGVtZW50KSA9PiBib29sZWFuID0gKCkgPT4gdHJ1ZVxuKSA9PiB7XG4gICAgY29uc3QgbmV3U2VsZWN0aW9uID0gc2VsZWN0aW9uIHx8IGJvYXJkLnNlbGVjdGlvbiBhcyBTZWxlY3Rpb247XG4gICAgY29uc3QgcmVjdGFuZ2xlSGl0RWxlbWVudHM6IFBsYWl0RWxlbWVudFtdID0gW107XG4gICAgY29uc3QgaXNDb2xsYXBzZWQgPSBuZXdTZWxlY3Rpb24gJiYgU2VsZWN0aW9uLmlzQ29sbGFwc2VkKG5ld1NlbGVjdGlvbik7XG4gICAgaWYgKGlzQ29sbGFwc2VkKSB7XG4gICAgICAgIGNvbnN0IGhpdEVsZW1lbnQgPSBnZXRIaXRFbGVtZW50QnlQb2ludChib2FyZCwgbmV3U2VsZWN0aW9uLmFuY2hvciwgbWF0Y2gpO1xuICAgICAgICBpZiAoaGl0RWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIFtoaXRFbGVtZW50XTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkZXB0aEZpcnN0UmVjdXJzaW9uPEFuY2VzdG9yPihcbiAgICAgICAgYm9hcmQsXG4gICAgICAgIG5vZGUgPT4ge1xuICAgICAgICAgICAgaWYgKCFQbGFpdEJvYXJkLmlzQm9hcmQobm9kZSkgJiYgbWF0Y2gobm9kZSkgJiYgYm9hcmQuaXNSZWN0YW5nbGVIaXQobm9kZSwgbmV3U2VsZWN0aW9uKSkge1xuICAgICAgICAgICAgICAgIHJlY3RhbmdsZUhpdEVsZW1lbnRzLnB1c2gobm9kZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGdldElzUmVjdXJzaW9uRnVuYyhib2FyZCksXG4gICAgICAgIHRydWVcbiAgICApO1xuICAgIHJldHVybiByZWN0YW5nbGVIaXRFbGVtZW50cztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRIaXRFbGVtZW50QnlQb2ludCA9IChcbiAgICBib2FyZDogUGxhaXRCb2FyZCxcbiAgICBwb2ludDogUG9pbnQsXG4gICAgbWF0Y2g6IChlbGVtZW50OiBQbGFpdEVsZW1lbnQpID0+IGJvb2xlYW4gPSAoKSA9PiB0cnVlXG4pOiB1bmRlZmluZWQgfCBQbGFpdEVsZW1lbnQgPT4ge1xuICAgIGxldCByZWN0YW5nbGVIaXRFbGVtZW50OiBQbGFpdEVsZW1lbnQgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgbGV0IGhpdEVsZW1lbnQ6IFBsYWl0RWxlbWVudCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBkZXB0aEZpcnN0UmVjdXJzaW9uPEFuY2VzdG9yPihcbiAgICAgICAgYm9hcmQsXG4gICAgICAgIG5vZGUgPT4ge1xuICAgICAgICAgICAgaWYgKGhpdEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoUGxhaXRCb2FyZC5pc0JvYXJkKG5vZGUpIHx8ICFtYXRjaChub2RlKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChib2FyZC5pc0hpdChub2RlLCBwb2ludCkpIHtcbiAgICAgICAgICAgICAgICBoaXRFbGVtZW50ID0gbm9kZTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlY3RhbmdsZUhpdEVsZW1lbnQgJiYgYm9hcmQuaXNSZWN0YW5nbGVIaXQobm9kZSwgeyBhbmNob3I6IHBvaW50LCBmb2N1czogcG9pbnQgfSkpIHtcbiAgICAgICAgICAgICAgICByZWN0YW5nbGVIaXRFbGVtZW50ID0gbm9kZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZ2V0SXNSZWN1cnNpb25GdW5jKGJvYXJkKSxcbiAgICAgICAgdHJ1ZVxuICAgICk7XG4gICAgcmV0dXJuIGhpdEVsZW1lbnQgfHwgcmVjdGFuZ2xlSGl0RWxlbWVudDtcbn07XG5cbmV4cG9ydCBjb25zdCBjYWNoZVNlbGVjdGVkRWxlbWVudHMgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIHNlbGVjdGVkRWxlbWVudHM6IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgQk9BUkRfVE9fU0VMRUNURURfRUxFTUVOVC5zZXQoYm9hcmQsIHNlbGVjdGVkRWxlbWVudHMpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFNlbGVjdGVkRWxlbWVudHMgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQpID0+IHtcbiAgICByZXR1cm4gQk9BUkRfVE9fU0VMRUNURURfRUxFTUVOVC5nZXQoYm9hcmQpIHx8IFtdO1xufTtcblxuZXhwb3J0IGNvbnN0IGFkZFNlbGVjdGVkRWxlbWVudCA9IChib2FyZDogUGxhaXRCb2FyZCwgZWxlbWVudDogUGxhaXRFbGVtZW50KSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRFbGVtZW50cyA9IGdldFNlbGVjdGVkRWxlbWVudHMoYm9hcmQpO1xuICAgIGNhY2hlU2VsZWN0ZWRFbGVtZW50cyhib2FyZCwgWy4uLnNlbGVjdGVkRWxlbWVudHMsIGVsZW1lbnRdKTtcbn07XG5cbmV4cG9ydCBjb25zdCByZW1vdmVTZWxlY3RlZEVsZW1lbnQgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnQ6IFBsYWl0RWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IHNlbGVjdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZEVsZW1lbnRzKGJvYXJkKTtcbiAgICBjb25zdCBuZXdTZWxlY3RlZEVsZW1lbnRzID0gc2VsZWN0ZWRFbGVtZW50cy5maWx0ZXIodmFsdWUgPT4gdmFsdWUgIT09IGVsZW1lbnQpO1xuICAgIGNhY2hlU2VsZWN0ZWRFbGVtZW50cyhib2FyZCwgbmV3U2VsZWN0ZWRFbGVtZW50cyk7XG59O1xuXG5leHBvcnQgY29uc3QgY2xlYXJTZWxlY3RlZEVsZW1lbnQgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQpID0+IHtcbiAgICBjYWNoZVNlbGVjdGVkRWxlbWVudHMoYm9hcmQsIFtdKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpc1NlbGVjdGVkRWxlbWVudCA9IChib2FyZDogUGxhaXRCb2FyZCwgZWxlbWVudDogUGxhaXRFbGVtZW50KSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRFbGVtZW50cyA9IGdldFNlbGVjdGVkRWxlbWVudHMoYm9hcmQpO1xuICAgIHJldHVybiAhIXNlbGVjdGVkRWxlbWVudHMuZmluZCh2YWx1ZSA9PiB2YWx1ZSA9PT0gZWxlbWVudCk7XG59O1xuIl19
|
package/fesm2022/plait-core.mjs
CHANGED
|
@@ -75,43 +75,45 @@ const Selection = {
|
|
|
75
75
|
}
|
|
76
76
|
};
|
|
77
77
|
|
|
78
|
-
const
|
|
79
|
-
const
|
|
80
|
-
const
|
|
81
|
-
const isCollapsed =
|
|
78
|
+
const getHitElementsBySelection = (board, selection, match = () => true) => {
|
|
79
|
+
const newSelection = selection || board.selection;
|
|
80
|
+
const rectangleHitElements = [];
|
|
81
|
+
const isCollapsed = newSelection && Selection.isCollapsed(newSelection);
|
|
82
|
+
if (isCollapsed) {
|
|
83
|
+
const hitElement = getHitElementByPoint(board, newSelection.anchor, match);
|
|
84
|
+
if (hitElement) {
|
|
85
|
+
return [hitElement];
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
return [];
|
|
89
|
+
}
|
|
90
|
+
}
|
|
82
91
|
depthFirstRecursion(board, node => {
|
|
83
|
-
if (
|
|
92
|
+
if (!PlaitBoard.isBoard(node) && match(node) && board.isRectangleHit(node, newSelection)) {
|
|
93
|
+
rectangleHitElements.push(node);
|
|
94
|
+
}
|
|
95
|
+
}, getIsRecursionFunc(board), true);
|
|
96
|
+
return rectangleHitElements;
|
|
97
|
+
};
|
|
98
|
+
const getHitElementByPoint = (board, point, match = () => true) => {
|
|
99
|
+
let rectangleHitElement = undefined;
|
|
100
|
+
let hitElement = undefined;
|
|
101
|
+
depthFirstRecursion(board, node => {
|
|
102
|
+
if (hitElement) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (PlaitBoard.isBoard(node) || !match(node)) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
if (board.isHit(node, point)) {
|
|
109
|
+
hitElement = node;
|
|
84
110
|
return;
|
|
85
111
|
}
|
|
86
|
-
if (!
|
|
87
|
-
|
|
88
|
-
realSelection &&
|
|
89
|
-
realSelection.ranges.some(range => {
|
|
90
|
-
return board.isHitSelection(node, range);
|
|
91
|
-
})) {
|
|
92
|
-
selectedElements.push(node);
|
|
112
|
+
if (!rectangleHitElement && board.isRectangleHit(node, { anchor: point, focus: point })) {
|
|
113
|
+
rectangleHitElement = node;
|
|
93
114
|
}
|
|
94
115
|
}, getIsRecursionFunc(board), true);
|
|
95
|
-
return
|
|
96
|
-
};
|
|
97
|
-
const getHitElementOfRoot = (board, rootElements, range) => {
|
|
98
|
-
const newRootElements = [...rootElements].reverse();
|
|
99
|
-
return newRootElements.find(item => {
|
|
100
|
-
return board.isHitSelection(item, range);
|
|
101
|
-
});
|
|
102
|
-
};
|
|
103
|
-
const isHitElements = (board, elements, ranges) => {
|
|
104
|
-
let isIntersectionElements = false;
|
|
105
|
-
if (elements.length) {
|
|
106
|
-
elements.map(item => {
|
|
107
|
-
if (!isIntersectionElements) {
|
|
108
|
-
isIntersectionElements = ranges.some(range => {
|
|
109
|
-
return board.isHitSelection(item, range);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
return isIntersectionElements;
|
|
116
|
+
return hitElement || rectangleHitElement;
|
|
115
117
|
};
|
|
116
118
|
const cacheSelectedElements = (board, selectedElements) => {
|
|
117
119
|
BOARD_TO_SELECTED_ELEMENT.set(board, selectedElements);
|
|
@@ -443,12 +445,24 @@ const ELEMENT_TO_COMPONENT = new WeakMap();
|
|
|
443
445
|
|
|
444
446
|
const RectangleClient = {
|
|
445
447
|
isHit: (origin, target) => {
|
|
448
|
+
return RectangleClient.isHitX(origin, target) && RectangleClient.isHitY(origin, target);
|
|
449
|
+
},
|
|
450
|
+
isHitX: (origin, target) => {
|
|
446
451
|
const minX = origin.x < target.x ? origin.x : target.x;
|
|
447
452
|
const maxX = origin.x + origin.width > target.x + target.width ? origin.x + origin.width : target.x + target.width;
|
|
453
|
+
// float calculate error( eg: 1.4210854715202004e-14 > 0)
|
|
454
|
+
if (Math.floor(maxX - minX - origin.width - target.width) <= 0) {
|
|
455
|
+
return true;
|
|
456
|
+
}
|
|
457
|
+
else {
|
|
458
|
+
return false;
|
|
459
|
+
}
|
|
460
|
+
},
|
|
461
|
+
isHitY: (origin, target) => {
|
|
448
462
|
const minY = origin.y < target.y ? origin.y : target.y;
|
|
449
463
|
const maxY = origin.y + origin.height > target.y + target.height ? origin.y + origin.height : target.y + target.height;
|
|
450
464
|
// float calculate error( eg: 1.4210854715202004e-14 > 0)
|
|
451
|
-
if (Math.floor(
|
|
465
|
+
if (Math.floor(maxY - minY - origin.height - target.height) <= 0) {
|
|
452
466
|
return true;
|
|
453
467
|
}
|
|
454
468
|
else {
|
|
@@ -506,6 +520,25 @@ const RectangleClient = {
|
|
|
506
520
|
},
|
|
507
521
|
getConnectionPoint: (rectangle, point) => {
|
|
508
522
|
return [rectangle.x + rectangle.width * point[0], rectangle.y + rectangle.height * point[1]];
|
|
523
|
+
},
|
|
524
|
+
expand(rectangle, left, top = left, right = left, bottom = top) {
|
|
525
|
+
return {
|
|
526
|
+
x: rectangle.x - left,
|
|
527
|
+
y: rectangle.y - top,
|
|
528
|
+
width: rectangle.width + left + right,
|
|
529
|
+
height: rectangle.height + top + bottom
|
|
530
|
+
};
|
|
531
|
+
},
|
|
532
|
+
getGapCenter(rectangle1, rectangle2, isHorizontal) {
|
|
533
|
+
const axis = isHorizontal ? 'y' : 'x';
|
|
534
|
+
const side = isHorizontal ? 'height' : 'width';
|
|
535
|
+
const align = [rectangle1[axis], rectangle1[axis] + rectangle1[side], rectangle2[axis], rectangle2[axis] + rectangle2[side]];
|
|
536
|
+
const sortArr = align.sort((a, b) => a - b);
|
|
537
|
+
return (sortArr[1] + sortArr[2]) / 2;
|
|
538
|
+
},
|
|
539
|
+
isPointInRectangle(rectangle, point) {
|
|
540
|
+
const x = point[0], y = point[1];
|
|
541
|
+
return x > rectangle.x && x < rectangle.x + rectangle.width && y > rectangle.y && y < rectangle.y + rectangle.height;
|
|
509
542
|
}
|
|
510
543
|
};
|
|
511
544
|
|
|
@@ -2160,7 +2193,7 @@ const applyToDraft = (board, selection, viewport, theme, op) => {
|
|
|
2160
2193
|
selection = op.newProperties;
|
|
2161
2194
|
}
|
|
2162
2195
|
else {
|
|
2163
|
-
selection
|
|
2196
|
+
selection = newProperties;
|
|
2164
2197
|
}
|
|
2165
2198
|
}
|
|
2166
2199
|
break;
|
|
@@ -2257,22 +2290,22 @@ function withSelection(board) {
|
|
|
2257
2290
|
}
|
|
2258
2291
|
const options = board.getPluginOptions(PlaitPluginKey.withSelection);
|
|
2259
2292
|
const point = transformPoint(board, toPoint(event.x, event.y, PlaitBoard.getHost(board)));
|
|
2260
|
-
const
|
|
2261
|
-
const
|
|
2293
|
+
const selection = { anchor: point, focus: point };
|
|
2294
|
+
const hitElement = getHitElementByPoint(board, point);
|
|
2262
2295
|
const selectedElements = getSelectedElements(board);
|
|
2263
|
-
if (
|
|
2296
|
+
if (hitElement && selectedElements.includes(hitElement) && !options.isDisabledSelect) {
|
|
2264
2297
|
pointerDown(event);
|
|
2265
2298
|
return;
|
|
2266
2299
|
}
|
|
2267
2300
|
if (PlaitBoard.isPointer(board, PlaitPointerType.selection) &&
|
|
2268
|
-
|
|
2301
|
+
!hitElement &&
|
|
2269
2302
|
options.isMultiple &&
|
|
2270
2303
|
!options.isDisabledSelect) {
|
|
2271
2304
|
selectionRectangleG?.remove();
|
|
2272
2305
|
start = point;
|
|
2273
2306
|
preventTouchMove(board, event, true);
|
|
2274
2307
|
}
|
|
2275
|
-
Transforms.setSelection(board,
|
|
2308
|
+
Transforms.setSelection(board, selection);
|
|
2276
2309
|
pointerDown(event);
|
|
2277
2310
|
};
|
|
2278
2311
|
board.globalPointerMove = (event) => {
|
|
@@ -2288,7 +2321,7 @@ function withSelection(board) {
|
|
|
2288
2321
|
end = movedTarget;
|
|
2289
2322
|
throttleRAF(() => {
|
|
2290
2323
|
if (start && end) {
|
|
2291
|
-
Transforms.setSelection(board, {
|
|
2324
|
+
Transforms.setSelection(board, { anchor: start, focus: end });
|
|
2292
2325
|
}
|
|
2293
2326
|
});
|
|
2294
2327
|
setSelectionMoving(board);
|
|
@@ -2307,7 +2340,7 @@ function withSelection(board) {
|
|
|
2307
2340
|
if (start && end) {
|
|
2308
2341
|
selectionMovingG?.remove();
|
|
2309
2342
|
clearSelectionMoving(board);
|
|
2310
|
-
Transforms.setSelection(board, {
|
|
2343
|
+
Transforms.setSelection(board, { anchor: start, focus: end });
|
|
2311
2344
|
}
|
|
2312
2345
|
if (PlaitBoard.isFocus(board)) {
|
|
2313
2346
|
const isInBoard = event.target instanceof Node && PlaitBoard.getBoardContainer(board).contains(event.target);
|
|
@@ -2336,7 +2369,7 @@ function withSelection(board) {
|
|
|
2336
2369
|
if (board.operations.find(value => value.type === 'set_selection')) {
|
|
2337
2370
|
selectionRectangleG?.remove();
|
|
2338
2371
|
const temporaryElements = getTemporaryElements(board);
|
|
2339
|
-
let elements = temporaryElements ? temporaryElements :
|
|
2372
|
+
let elements = temporaryElements ? temporaryElements : getHitElementsBySelection(board);
|
|
2340
2373
|
if (!options.isMultiple && elements.length > 1) {
|
|
2341
2374
|
elements = [elements[0]];
|
|
2342
2375
|
}
|
|
@@ -2429,7 +2462,7 @@ const SelectionTransforms = {
|
|
|
2429
2462
|
};
|
|
2430
2463
|
function addSelectionWithTemporaryElements(board, elements) {
|
|
2431
2464
|
const timeoutId = setTimeout(() => {
|
|
2432
|
-
setSelection(board,
|
|
2465
|
+
setSelection(board, null);
|
|
2433
2466
|
}, 0);
|
|
2434
2467
|
let ref = getTemporaryRef(board);
|
|
2435
2468
|
if (ref) {
|
|
@@ -2692,7 +2725,8 @@ function createBoard(children, options) {
|
|
|
2692
2725
|
redrawElement: (context, previousContext) => { },
|
|
2693
2726
|
destroyElement: (context) => { },
|
|
2694
2727
|
isWithinSelection: element => false,
|
|
2695
|
-
|
|
2728
|
+
isRectangleHit: element => false,
|
|
2729
|
+
isHit: element => false,
|
|
2696
2730
|
isRecursion: element => true,
|
|
2697
2731
|
isMovable: element => false,
|
|
2698
2732
|
getRectangle: element => null,
|
|
@@ -2705,7 +2739,8 @@ function createBoard(children, options) {
|
|
|
2705
2739
|
pointerOut: pointer => { },
|
|
2706
2740
|
pointerLeave: pointer => { },
|
|
2707
2741
|
globalPointerMove: pointer => { },
|
|
2708
|
-
globalPointerUp: pointer => { }
|
|
2742
|
+
globalPointerUp: pointer => { },
|
|
2743
|
+
isImageBindingAllowed: (element) => false,
|
|
2709
2744
|
};
|
|
2710
2745
|
return board;
|
|
2711
2746
|
}
|
|
@@ -3265,17 +3300,18 @@ function withMoving(board) {
|
|
|
3265
3300
|
board.pointerDown = (event) => {
|
|
3266
3301
|
const host = BOARD_TO_HOST.get(board);
|
|
3267
3302
|
const point = transformPoint(board, toPoint(event.x, event.y, host));
|
|
3268
|
-
const range = { anchor: point, focus: point };
|
|
3269
3303
|
let movableElements = board.children.filter(item => board.isMovable(item));
|
|
3270
3304
|
if (movableElements.length && !isPreventTouchMove(board)) {
|
|
3271
3305
|
startPoint = point;
|
|
3272
|
-
const
|
|
3273
|
-
const hitElement =
|
|
3274
|
-
if (hitElement &&
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
|
|
3278
|
-
|
|
3306
|
+
const selectedMovableElements = getSelectedElements(board).filter(item => movableElements.includes(item));
|
|
3307
|
+
const hitElement = getHitElementByPoint(board, point);
|
|
3308
|
+
if (hitElement && movableElements.includes(hitElement)) {
|
|
3309
|
+
if (selectedMovableElements.includes(hitElement)) {
|
|
3310
|
+
activeElements = selectedMovableElements;
|
|
3311
|
+
}
|
|
3312
|
+
else {
|
|
3313
|
+
activeElements = [hitElement];
|
|
3314
|
+
}
|
|
3279
3315
|
}
|
|
3280
3316
|
if (activeElements.length > 0) {
|
|
3281
3317
|
preventTouchMove(board, event, true);
|
|
@@ -4222,5 +4258,5 @@ function createModModifierKeys() {
|
|
|
4222
4258
|
* Generated bundle index. Do not edit.
|
|
4223
4259
|
*/
|
|
4224
4260
|
|
|
4225
|
-
export { A, ACTIVE_STROKE_WIDTH, ALT, APOSTROPHE, ATTACHED_ELEMENT_CLASS_NAME, AT_SIGN, B, BACKSLASH, BACKSPACE, BOARD_TO_COMPONENT, BOARD_TO_ELEMENT_HOST, BOARD_TO_HOST, BOARD_TO_IS_SELECTION_MOVING, BOARD_TO_MOVING_ELEMENT, BOARD_TO_MOVING_POINT, BOARD_TO_MOVING_POINT_IN_BOARD, BOARD_TO_ON_CHANGE, BOARD_TO_ROUGH_SVG, BOARD_TO_SELECTED_ELEMENT, BOARD_TO_TEMPORARY_ELEMENTS, BOARD_TO_TOUCH_REF, BOARD_TO_VIEWPORT_ORIGINATION, BoardTransforms, C, CAPS_LOCK, CLIP_BOARD_FORMAT_KEY, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, ColorfulThemeColor, CoreTransforms, D, DASH, DELETE, DOWN_ARROW, DarkThemeColor, DefaultThemeColor, Direction, E, EIGHT, ELEMENT_TO_COMPONENT, END, ENTER, EQUALS, ESCAPE, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FLUSHING, FOUR, G, H, HOME, HOST_CLASS_NAME, I, INSERT, IS_APPLE, IS_BOARD_CACHE, IS_CHROME, IS_CHROME_LEGACY, IS_EDGE_LEGACY, IS_FIREFOX, IS_IOS, IS_MAC, IS_SAFARI, IS_TEXT_EDITABLE, J, K, L, LAST_MEDIA, LEFT_ARROW, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, MAX_RADIUS, MERGING, META, MUTE, N, NINE, NODE_TO_INDEX, NODE_TO_PARENT, NS, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PATH_REFS, PAUSE, PERIOD, PLUS_SIGN, POINTER_BUTTON, PRESS_AND_MOVE_BUFFER, PRINT_SCREEN, Path, PlaitBoard, PlaitBoardComponent, PlaitChildrenElementComponent, PlaitContextService, PlaitElement, PlaitElementComponent, PlaitHistoryBoard, PlaitIslandBaseComponent, PlaitIslandPopoverBaseComponent, PlaitNode, PlaitOperation, PlaitPluginElementComponent, PlaitPluginKey, PlaitPointerType, Point, Q, QUESTION_MARK, R, RIGHT_ARROW, RectangleClient, ResizeCursorClass, RetroThemeColor, S, SAVING, SCROLL_BAR_WIDTH, SCROLL_LOCK, SELECTION_BORDER_COLOR, SELECTION_FILL_COLOR, SELECTION_RECTANGLE_CLASS_NAME, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, Selection, SoftThemeColor, StarryThemeColor, T, TAB, THREE, TILDE, TWO, ThemeColorMode, ThemeColors, Transforms, U, UP_ARROW, V, VOLUME_DOWN, VOLUME_UP, Viewport, W, X, Y, Z, ZERO, addMovingElements, addSelectedElement, arrowPoints, cacheMovingElements, cacheSelectedElements, clampZoomLevel, clearNodeWeakMap, clearSelectedElement, clearSelectionMoving, clearViewportOrigination, createFakeEvent, createForeignObject, createG, createKeyboardEvent, createMask, createModModifierKeys, createMouseEvent, createPath, createPointerEvent, createRect, createSVG, createSelectionRectangleG, createTestingBoard, createText, createTouchEvent, debounce, deleteTemporaryElements, depthFirstRecursion, distanceBetweenPointAndPoint, distanceBetweenPointAndRectangle, distanceBetweenPointAndSegment, distanceBetweenPointAndSegments, downloadImage, drawArrow, drawBezierPath, drawCircle, drawLine, drawLinearPath, drawRectangle, drawRoundRectangle, fakeNodeWeakMap, findElements, getBoardRectangle, getClipboardByKey, getClipboardDataByMedia, getDataFromClipboard, getElementById, getElementHostBBox,
|
|
4261
|
+
export { A, ACTIVE_STROKE_WIDTH, ALT, APOSTROPHE, ATTACHED_ELEMENT_CLASS_NAME, AT_SIGN, B, BACKSLASH, BACKSPACE, BOARD_TO_COMPONENT, BOARD_TO_ELEMENT_HOST, BOARD_TO_HOST, BOARD_TO_IS_SELECTION_MOVING, BOARD_TO_MOVING_ELEMENT, BOARD_TO_MOVING_POINT, BOARD_TO_MOVING_POINT_IN_BOARD, BOARD_TO_ON_CHANGE, BOARD_TO_ROUGH_SVG, BOARD_TO_SELECTED_ELEMENT, BOARD_TO_TEMPORARY_ELEMENTS, BOARD_TO_TOUCH_REF, BOARD_TO_VIEWPORT_ORIGINATION, BoardTransforms, C, CAPS_LOCK, CLIP_BOARD_FORMAT_KEY, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, ColorfulThemeColor, CoreTransforms, D, DASH, DELETE, DOWN_ARROW, DarkThemeColor, DefaultThemeColor, Direction, E, EIGHT, ELEMENT_TO_COMPONENT, END, ENTER, EQUALS, ESCAPE, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FLUSHING, FOUR, G, H, HOME, HOST_CLASS_NAME, I, INSERT, IS_APPLE, IS_BOARD_CACHE, IS_CHROME, IS_CHROME_LEGACY, IS_EDGE_LEGACY, IS_FIREFOX, IS_IOS, IS_MAC, IS_SAFARI, IS_TEXT_EDITABLE, J, K, L, LAST_MEDIA, LEFT_ARROW, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, MAX_RADIUS, MERGING, META, MUTE, N, NINE, NODE_TO_INDEX, NODE_TO_PARENT, NS, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PATH_REFS, PAUSE, PERIOD, PLUS_SIGN, POINTER_BUTTON, PRESS_AND_MOVE_BUFFER, PRINT_SCREEN, Path, PlaitBoard, PlaitBoardComponent, PlaitChildrenElementComponent, PlaitContextService, PlaitElement, PlaitElementComponent, PlaitHistoryBoard, PlaitIslandBaseComponent, PlaitIslandPopoverBaseComponent, PlaitNode, PlaitOperation, PlaitPluginElementComponent, PlaitPluginKey, PlaitPointerType, Point, Q, QUESTION_MARK, R, RIGHT_ARROW, RectangleClient, ResizeCursorClass, RetroThemeColor, S, SAVING, SCROLL_BAR_WIDTH, SCROLL_LOCK, SELECTION_BORDER_COLOR, SELECTION_FILL_COLOR, SELECTION_RECTANGLE_CLASS_NAME, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, Selection, SoftThemeColor, StarryThemeColor, T, TAB, THREE, TILDE, TWO, ThemeColorMode, ThemeColors, Transforms, U, UP_ARROW, V, VOLUME_DOWN, VOLUME_UP, Viewport, W, X, Y, Z, ZERO, addMovingElements, addSelectedElement, arrowPoints, cacheMovingElements, cacheSelectedElements, clampZoomLevel, clearNodeWeakMap, clearSelectedElement, clearSelectionMoving, clearViewportOrigination, createFakeEvent, createForeignObject, createG, createKeyboardEvent, createMask, createModModifierKeys, createMouseEvent, createPath, createPointerEvent, createRect, createSVG, createSelectionRectangleG, createTestingBoard, createText, createTouchEvent, debounce, deleteTemporaryElements, depthFirstRecursion, distanceBetweenPointAndPoint, distanceBetweenPointAndRectangle, distanceBetweenPointAndSegment, distanceBetweenPointAndSegments, downloadImage, drawArrow, drawBezierPath, drawCircle, drawLine, drawLinearPath, drawRectangle, drawRoundRectangle, fakeNodeWeakMap, findElements, getBoardRectangle, getClipboardByKey, getClipboardDataByMedia, getDataFromClipboard, getElementById, getElementHostBBox, getHitElementByPoint, getHitElementsBySelection, getIsRecursionFunc, getMovingElements, getNearestPointBetweenPointAndSegment, getNearestPointBetweenPointAndSegments, getRealScrollBarWidth, getRectangleByElements, getSelectedElements, getTemporaryElements, getTemporaryRef, getTextFromClipboard, getViewBox, getViewBoxCenterPoint, getViewportContainerRect, getViewportOrigination, handleTouchTarget, hasBeforeContextChange, hasInputOrTextareaTarget, hasOnBoardChange, hasOnContextChanged, hotkeys, idCreator, initializeViewBox, initializeViewportContainer, initializeViewportOffset, inverse, isDOMElement, isDOMNode, isFromScrolling, isFromViewportChange, isInPlaitBoard, isLineHitLine, isMainPointer, isNullOrUndefined, isPointInEllipse, isPointInPolygon, isPointInRoundRectangle, isPolylineHitRectangle, isPreventTouchMove, isSecondaryPointer, isSelectedElement, isSelectionMoving, isSetViewportOperation, normalizePoint, preventTouchMove, removeMovingElements, removeSelectedElement, rotate, scrollToRectangle, setClipboardData, setClipboardDataByMedia, setClipboardDataByText, setIsFromScrolling, setIsFromViewportChange, setPathStrokeLinecap, setSVGViewBox, setSelectionMoving, setStrokeLinecap, shouldClear, shouldMerge, shouldSave, throttleRAF, toImage, toPoint, transformPoint, transformPoints, updateForeignObject, updateForeignObjectWidth, updateViewportContainerScroll, updateViewportOffset, updateViewportOrigination, withMoving, withOptions, withSelection };
|
|
4226
4262
|
//# sourceMappingURL=plait-core.mjs.map
|