@plait/core 0.54.0 → 0.55.1

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.
Files changed (74) hide show
  1. package/board/board.component.d.ts +8 -3
  2. package/constants/index.d.ts +2 -0
  3. package/core/element/context.d.ts +6 -2
  4. package/core/element/plugin-element.d.ts +13 -4
  5. package/core/list-render.d.ts +16 -0
  6. package/esm2022/board/board.component.mjs +28 -23
  7. package/esm2022/constants/index.mjs +3 -1
  8. package/esm2022/core/element/context.mjs +1 -1
  9. package/esm2022/core/element/plugin-element.mjs +79 -12
  10. package/esm2022/core/list-render.mjs +210 -0
  11. package/esm2022/interfaces/board.mjs +3 -3
  12. package/esm2022/interfaces/element.mjs +28 -2
  13. package/esm2022/interfaces/node.mjs +18 -1
  14. package/esm2022/interfaces/path.mjs +56 -57
  15. package/esm2022/plugins/create-board.mjs +10 -10
  16. package/esm2022/plugins/with-hotkey.mjs +32 -3
  17. package/esm2022/plugins/with-moving.mjs +12 -12
  18. package/esm2022/plugins/with-related-fragment.mjs +5 -5
  19. package/esm2022/public-api.mjs +2 -4
  20. package/esm2022/services/context.service.mjs +30 -0
  21. package/esm2022/transforms/group.mjs +23 -6
  22. package/esm2022/transforms/index.mjs +6 -3
  23. package/esm2022/transforms/z-index.mjs +20 -0
  24. package/esm2022/utils/angle.mjs +17 -3
  25. package/esm2022/utils/clipboard/clipboard.mjs +5 -5
  26. package/esm2022/utils/clipboard/common.mjs +5 -5
  27. package/esm2022/utils/clipboard/types.mjs +1 -1
  28. package/esm2022/utils/common.mjs +29 -1
  29. package/esm2022/utils/fragment.mjs +22 -1
  30. package/esm2022/utils/group.mjs +33 -4
  31. package/esm2022/utils/helper.mjs +37 -1
  32. package/esm2022/utils/index.mjs +4 -1
  33. package/esm2022/utils/math.mjs +37 -1
  34. package/esm2022/utils/position.mjs +3 -3
  35. package/esm2022/utils/snap/snap-moving.mjs +199 -0
  36. package/esm2022/utils/snap/snap.mjs +208 -0
  37. package/esm2022/utils/to-image.mjs +2 -2
  38. package/esm2022/utils/weak-maps.mjs +3 -1
  39. package/esm2022/utils/z-index.mjs +166 -0
  40. package/fesm2022/plait-core.mjs +1667 -1075
  41. package/fesm2022/plait-core.mjs.map +1 -1
  42. package/interfaces/board.d.ts +5 -5
  43. package/interfaces/element.d.ts +5 -0
  44. package/interfaces/node.d.ts +1 -0
  45. package/package.json +1 -1
  46. package/public-api.d.ts +1 -3
  47. package/services/{image-context.service.d.ts → context.service.d.ts} +3 -0
  48. package/styles/styles.scss +9 -0
  49. package/transforms/group.d.ts +4 -0
  50. package/transforms/index.d.ts +3 -2
  51. package/transforms/z-index.d.ts +13 -0
  52. package/utils/angle.d.ts +2 -0
  53. package/utils/clipboard/common.d.ts +1 -1
  54. package/utils/clipboard/types.d.ts +1 -1
  55. package/utils/common.d.ts +8 -0
  56. package/utils/fragment.d.ts +3 -1
  57. package/utils/group.d.ts +3 -1
  58. package/utils/helper.d.ts +4 -1
  59. package/utils/index.d.ts +3 -0
  60. package/utils/math.d.ts +1 -0
  61. package/utils/position.d.ts +1 -1
  62. package/utils/snap/snap-moving.d.ts +5 -0
  63. package/utils/snap/snap.d.ts +31 -0
  64. package/utils/weak-maps.d.ts +2 -0
  65. package/utils/z-index.d.ts +5 -0
  66. package/core/children/children.component.d.ts +0 -17
  67. package/core/children/effect.d.ts +0 -2
  68. package/core/element/element.component.d.ts +0 -30
  69. package/esm2022/core/children/children.component.mjs +0 -60
  70. package/esm2022/core/children/effect.mjs +0 -2
  71. package/esm2022/core/element/element.component.mjs +0 -105
  72. package/esm2022/services/image-context.service.mjs +0 -22
  73. package/esm2022/utils/moving-snap.mjs +0 -372
  74. package/utils/moving-snap.d.ts +0 -41
@@ -1,7 +1,7 @@
1
1
  import { createClipboardContext, WritableClipboardType, addClipboardContext } from '../utils';
2
2
  export function withRelatedFragment(board) {
3
- const { setFragment } = board;
4
- board.setFragment = (data, clipboardContext, rectangle, type) => {
3
+ const { buildFragment } = board;
4
+ board.buildFragment = (clipboardContext, rectangle, type) => {
5
5
  const relatedFragment = board.getRelatedFragment([]);
6
6
  if (!clipboardContext) {
7
7
  clipboardContext = createClipboardContext(WritableClipboardType.elements, relatedFragment, '');
@@ -10,11 +10,11 @@ export function withRelatedFragment(board) {
10
10
  clipboardContext = addClipboardContext(clipboardContext, {
11
11
  text: '',
12
12
  type: WritableClipboardType.elements,
13
- data: relatedFragment
13
+ elements: relatedFragment
14
14
  });
15
15
  }
16
- setFragment(data, clipboardContext, rectangle, type);
16
+ return buildFragment(clipboardContext, rectangle, type);
17
17
  };
18
18
  return board;
19
19
  }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1yZWxhdGVkLWZyYWdtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvcGx1Z2lucy93aXRoLXJlbGF0ZWQtZnJhZ21lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVILHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ3RCLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxLQUFpQjtJQUNqRCxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBRTlCLEtBQUssQ0FBQyxXQUFXLEdBQUcsQ0FDaEIsSUFBeUIsRUFDekIsZ0JBQWlELEVBQ2pELFNBQWlDLEVBQ2pDLElBQW9CLEVBQ3RCLEVBQUU7UUFDQSxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDcEIsZ0JBQWdCLEdBQUcsc0JBQXNCLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRyxDQUFDO2FBQU0sQ0FBQztZQUNKLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDLGdCQUFnQixFQUFFO2dCQUNyRCxJQUFJLEVBQUUsRUFBRTtnQkFDUixJQUFJLEVBQUUscUJBQXFCLENBQUMsUUFBUTtnQkFDcEMsSUFBSSxFQUFFLGVBQWU7YUFDeEIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELFdBQVcsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pELENBQUMsQ0FBQztJQUVGLE9BQU8sS0FBSyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGFpdEJvYXJkLCBSZWN0YW5nbGVDbGllbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgV3JpdGFibGVDbGlwYm9hcmRDb250ZXh0LFxuICAgIGNyZWF0ZUNsaXBib2FyZENvbnRleHQsXG4gICAgV3JpdGFibGVDbGlwYm9hcmRUeXBlLFxuICAgIGFkZENsaXBib2FyZENvbnRleHRcbn0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFJlbGF0ZWRGcmFnbWVudChib2FyZDogUGxhaXRCb2FyZCkge1xuICAgIGNvbnN0IHsgc2V0RnJhZ21lbnQgfSA9IGJvYXJkO1xuXG4gICAgYm9hcmQuc2V0RnJhZ21lbnQgPSAoXG4gICAgICAgIGRhdGE6IERhdGFUcmFuc2ZlciB8IG51bGwsXG4gICAgICAgIGNsaXBib2FyZENvbnRleHQ6IFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dCB8IG51bGwsXG4gICAgICAgIHJlY3RhbmdsZTogUmVjdGFuZ2xlQ2xpZW50IHwgbnVsbCxcbiAgICAgICAgdHlwZTogJ2NvcHknIHwgJ2N1dCdcbiAgICApID0+IHtcbiAgICAgICAgY29uc3QgcmVsYXRlZEZyYWdtZW50ID0gYm9hcmQuZ2V0UmVsYXRlZEZyYWdtZW50KFtdKTtcbiAgICAgICAgaWYgKCFjbGlwYm9hcmRDb250ZXh0KSB7XG4gICAgICAgICAgICBjbGlwYm9hcmRDb250ZXh0ID0gY3JlYXRlQ2xpcGJvYXJkQ29udGV4dChXcml0YWJsZUNsaXBib2FyZFR5cGUuZWxlbWVudHMsIHJlbGF0ZWRGcmFnbWVudCwgJycpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY2xpcGJvYXJkQ29udGV4dCA9IGFkZENsaXBib2FyZENvbnRleHQoY2xpcGJvYXJkQ29udGV4dCwge1xuICAgICAgICAgICAgICAgIHRleHQ6ICcnLFxuICAgICAgICAgICAgICAgIHR5cGU6IFdyaXRhYmxlQ2xpcGJvYXJkVHlwZS5lbGVtZW50cyxcbiAgICAgICAgICAgICAgICBkYXRhOiByZWxhdGVkRnJhZ21lbnRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHNldEZyYWdtZW50KGRhdGEsIGNsaXBib2FyZENvbnRleHQsIHJlY3RhbmdsZSwgdHlwZSk7XG4gICAgfTtcblxuICAgIHJldHVybiBib2FyZDtcbn1cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1yZWxhdGVkLWZyYWdtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvcGx1Z2lucy93aXRoLXJlbGF0ZWQtZnJhZ21lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVILHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ3RCLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxLQUFpQjtJQUNqRCxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBRWhDLEtBQUssQ0FBQyxhQUFhLEdBQUcsQ0FDbEIsZ0JBQWlELEVBQ2pELFNBQWlDLEVBQ2pDLElBQW9CLEVBQ3RCLEVBQUU7UUFDQSxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDcEIsZ0JBQWdCLEdBQUcsc0JBQXNCLENBQUMscUJBQXFCLENBQUMsUUFBUSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRyxDQUFDO2FBQU0sQ0FBQztZQUNKLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDLGdCQUFnQixFQUFFO2dCQUNyRCxJQUFJLEVBQUUsRUFBRTtnQkFDUixJQUFJLEVBQUUscUJBQXFCLENBQUMsUUFBUTtnQkFDcEMsUUFBUSxFQUFFLGVBQWU7YUFDNUIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELE9BQU8sYUFBYSxDQUFDLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1RCxDQUFDLENBQUM7SUFFRixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhaXRCb2FyZCwgUmVjdGFuZ2xlQ2xpZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQge1xuICAgIFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dCxcbiAgICBjcmVhdGVDbGlwYm9hcmRDb250ZXh0LFxuICAgIFdyaXRhYmxlQ2xpcGJvYXJkVHlwZSxcbiAgICBhZGRDbGlwYm9hcmRDb250ZXh0XG59IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhSZWxhdGVkRnJhZ21lbnQoYm9hcmQ6IFBsYWl0Qm9hcmQpIHtcbiAgICBjb25zdCB7IGJ1aWxkRnJhZ21lbnQgfSA9IGJvYXJkO1xuXG4gICAgYm9hcmQuYnVpbGRGcmFnbWVudCA9IChcbiAgICAgICAgY2xpcGJvYXJkQ29udGV4dDogV3JpdGFibGVDbGlwYm9hcmRDb250ZXh0IHwgbnVsbCxcbiAgICAgICAgcmVjdGFuZ2xlOiBSZWN0YW5nbGVDbGllbnQgfCBudWxsLFxuICAgICAgICB0eXBlOiAnY29weScgfCAnY3V0J1xuICAgICkgPT4ge1xuICAgICAgICBjb25zdCByZWxhdGVkRnJhZ21lbnQgPSBib2FyZC5nZXRSZWxhdGVkRnJhZ21lbnQoW10pO1xuICAgICAgICBpZiAoIWNsaXBib2FyZENvbnRleHQpIHtcbiAgICAgICAgICAgIGNsaXBib2FyZENvbnRleHQgPSBjcmVhdGVDbGlwYm9hcmRDb250ZXh0KFdyaXRhYmxlQ2xpcGJvYXJkVHlwZS5lbGVtZW50cywgcmVsYXRlZEZyYWdtZW50LCAnJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjbGlwYm9hcmRDb250ZXh0ID0gYWRkQ2xpcGJvYXJkQ29udGV4dChjbGlwYm9hcmRDb250ZXh0LCB7XG4gICAgICAgICAgICAgICAgdGV4dDogJycsXG4gICAgICAgICAgICAgICAgdHlwZTogV3JpdGFibGVDbGlwYm9hcmRUeXBlLmVsZW1lbnRzLFxuICAgICAgICAgICAgICAgIGVsZW1lbnRzOiByZWxhdGVkRnJhZ21lbnRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBidWlsZEZyYWdtZW50KGNsaXBib2FyZENvbnRleHQsIHJlY3RhbmdsZSwgdHlwZSk7XG4gICAgfTtcblxuICAgIHJldHVybiBib2FyZDtcbn1cbiJdfQ==
@@ -4,8 +4,6 @@
4
4
  export * from './board/board.component';
5
5
  export * from './constants';
6
6
  export * from './core/element/plugin-element';
7
- export * from './core/element/element.component';
8
- export * from './core/children/children.component';
9
7
  export * from './core/element/context-change';
10
8
  export * from './core/island/island-base.component';
11
9
  export * from './interfaces';
@@ -15,6 +13,6 @@ export * from './plugins/with-selection';
15
13
  export * from './plugins/with-moving';
16
14
  export * from './plugins/with-options';
17
15
  export * from './testing';
18
- export * from './services/image-context.service';
16
+ export * from './services/context.service';
19
17
  export * from './utils/debug';
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwbGFpdFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYm9hcmQvYm9hcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9lbGVtZW50L3BsdWdpbi1lbGVtZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9lbGVtZW50L2VsZW1lbnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9jaGlsZHJlbi9jaGlsZHJlbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2VsZW1lbnQvY29udGV4dC1jaGFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2lzbGFuZC9pc2xhbmQtYmFzZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNmb3Jtcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vcGx1Z2lucy93aXRoLXNlbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3BsdWdpbnMvd2l0aC1tb3ZpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9wbHVnaW5zL3dpdGgtb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3Rlc3RpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9pbWFnZS1jb250ZXh0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy9kZWJ1Zyc7XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHBsYWl0XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9ib2FyZC9ib2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2VsZW1lbnQvcGx1Z2luLWVsZW1lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2VsZW1lbnQvY29udGV4dC1jaGFuZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3JlL2lzbGFuZC9pc2xhbmQtYmFzZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNmb3Jtcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vcGx1Z2lucy93aXRoLXNlbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3BsdWdpbnMvd2l0aC1tb3ZpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9wbHVnaW5zL3dpdGgtb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3Rlc3RpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9jb250ZXh0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy9kZWJ1Zyc7XG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class PlaitContextService {
5
+ constructor() {
6
+ this._stable = new Subject();
7
+ this.uploadingFiles = [];
8
+ }
9
+ getUploadingFile(url) {
10
+ return this.uploadingFiles.find(file => file.url === url);
11
+ }
12
+ setUploadingFile(file) {
13
+ return this.uploadingFiles.push(file);
14
+ }
15
+ removeUploadingFile(fileEntry) {
16
+ this.uploadingFiles = this.uploadingFiles.filter(file => file.url !== fileEntry.url);
17
+ }
18
+ onStable() {
19
+ return this._stable.asObservable();
20
+ }
21
+ nextStable() {
22
+ this._stable.next('');
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitContextService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitContextService }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitContextService, decorators: [{
28
+ type: Injectable
29
+ }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvc2VydmljZXMvY29udGV4dC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHL0IsTUFBTSxPQUFPLG1CQUFtQjtJQURoQztRQUVZLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRXhCLG1CQUFjLEdBQWlCLEVBQUUsQ0FBQztLQXFCN0M7SUFuQkcsZ0JBQWdCLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBZ0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsU0FBcUI7UUFDckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDMUIsQ0FBQzs4R0F2QlEsbUJBQW1CO2tIQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbWFnZUVudHJ5IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQbGFpdENvbnRleHRTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9zdGFibGUgPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgcHJpdmF0ZSB1cGxvYWRpbmdGaWxlczogSW1hZ2VFbnRyeVtdID0gW107XG5cbiAgICBnZXRVcGxvYWRpbmdGaWxlKHVybDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnVwbG9hZGluZ0ZpbGVzLmZpbmQoZmlsZSA9PiBmaWxlLnVybCA9PT0gdXJsKTtcbiAgICB9XG5cbiAgICBzZXRVcGxvYWRpbmdGaWxlKGZpbGU6IEltYWdlRW50cnkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudXBsb2FkaW5nRmlsZXMucHVzaChmaWxlKTtcbiAgICB9XG5cbiAgICByZW1vdmVVcGxvYWRpbmdGaWxlKGZpbGVFbnRyeTogSW1hZ2VFbnRyeSkge1xuICAgICAgICB0aGlzLnVwbG9hZGluZ0ZpbGVzID0gdGhpcy51cGxvYWRpbmdGaWxlcy5maWx0ZXIoZmlsZSA9PiBmaWxlLnVybCAhPT0gZmlsZUVudHJ5LnVybCk7XG4gICAgfVxuXG4gICAgb25TdGFibGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdGFibGUuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgbmV4dFN0YWJsZSgpIHtcbiAgICAgICAgdGhpcy5fc3RhYmxlLm5leHQoJycpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { PlaitBoard } from '../interfaces';
2
- import { getHighestSelectedGroups, getSelectedIsolatedElementsCanAddToGroup, createGroup, canAddGroup, hasSelectedElementsInSameGroup, canRemoveGroup, findElements } from '../utils';
2
+ import { getHighestSelectedGroups, getSelectedIsolatedElementsCanAddToGroup, createGroup, canAddGroup, hasSelectedElementsInSameGroup, canRemoveGroup, findElements, getElementsIndices, isIndicesContinuous, getSelectedElements, getHighestIndexOfElement, moveElementsToNewPathAfterAddGroup } from '../utils';
3
3
  import { NodeTransforms } from './node';
4
4
  export const addGroup = (board, elements) => {
5
5
  const selectedGroups = getHighestSelectedGroups(board, elements);
@@ -11,6 +11,13 @@ export const addGroup = (board, elements) => {
11
11
  const path = PlaitBoard.findPath(board, item);
12
12
  NodeTransforms.setNode(board, { groupId: group.id }, path);
13
13
  });
14
+ const selectedElements = getSelectedElements(board);
15
+ const highestIndexOfSelectedElement = getHighestIndexOfElement(board, selectedElements);
16
+ const indices = getElementsIndices(board, highestSelectedElements);
17
+ const isContinuous = isIndicesContinuous(indices);
18
+ if (!isContinuous) {
19
+ moveElementsToNewPathAfterAddGroup(board, selectedElements, [highestIndexOfSelectedElement - 1]);
20
+ }
14
21
  if (hasSelectedElementsInSameGroup(highestSelectedElements)) {
15
22
  const newGroupId = selectedIsolatedElements[0].groupId;
16
23
  NodeTransforms.insertNode(board, {
@@ -26,17 +33,27 @@ export const addGroup = (board, elements) => {
26
33
  export const removeGroup = (board, elements) => {
27
34
  const selectedGroups = getHighestSelectedGroups(board, elements);
28
35
  if (canRemoveGroup(board)) {
29
- selectedGroups.map(group => {
36
+ selectedGroups.forEach(group => {
30
37
  const elementsInGroup = findElements(board, {
31
38
  match: item => item.groupId === group.id,
32
39
  recursion: () => false
33
40
  });
34
- elementsInGroup.forEach(item => {
35
- const path = PlaitBoard.findPath(board, item);
41
+ elementsInGroup.forEach(element => {
42
+ const path = PlaitBoard.findPath(board, element);
36
43
  NodeTransforms.setNode(board, { groupId: group.groupId || undefined }, path);
37
44
  });
45
+ });
46
+ selectedGroups
47
+ .map(group => {
38
48
  const groupPath = PlaitBoard.findPath(board, group);
39
- NodeTransforms.removeNode(board, groupPath);
49
+ const groupRef = board.pathRef(groupPath);
50
+ return () => {
51
+ groupRef.current && NodeTransforms.removeNode(board, groupRef.current);
52
+ groupRef.unref();
53
+ };
54
+ })
55
+ .forEach(action => {
56
+ action();
40
57
  });
41
58
  }
42
59
  };
@@ -44,4 +61,4 @@ export const GroupTransforms = {
44
61
  addGroup,
45
62
  removeGroup
46
63
  };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy90cmFuc2Zvcm1zL2dyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsd0NBQXdDLEVBQ3hDLFdBQVcsRUFDWCxXQUFXLEVBQ1gsOEJBQThCLEVBQzlCLGNBQWMsRUFDZCxZQUFZLEVBQ2YsTUFBTSxVQUFVLENBQUM7QUFDbEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFpQixFQUFFLFFBQXlCLEVBQUUsRUFBRTtJQUNyRSxNQUFNLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDakUsTUFBTSx3QkFBd0IsR0FBRyx3Q0FBd0MsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRixNQUFNLHVCQUF1QixHQUFHLENBQUMsR0FBRyxjQUFjLEVBQUUsR0FBRyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ2pGLE1BQU0sS0FBSyxHQUFHLFdBQVcsRUFBRSxDQUFDO0lBQzVCLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDckIsdUJBQXVCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25DLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzlDLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksOEJBQThCLENBQUMsdUJBQXVCLENBQUMsRUFBRSxDQUFDO1lBQzFELE1BQU0sVUFBVSxHQUFHLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUN2RCxjQUFjLENBQUMsVUFBVSxDQUNyQixLQUFLLEVBQ0w7Z0JBQ0ksR0FBRyxLQUFLO2dCQUNSLE9BQU8sRUFBRSxVQUFVO2FBQ3RCLEVBQ0QsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUMxQixDQUFDO1FBQ04sQ0FBQzthQUFNLENBQUM7WUFDSixjQUFjLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDckUsQ0FBQztJQUNMLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxLQUFpQixFQUFFLFFBQXlCLEVBQUUsRUFBRTtJQUN4RSxNQUFNLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDakUsSUFBSSxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN4QixjQUFjLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxLQUFLLEVBQUU7Z0JBQ3hDLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLEVBQUU7Z0JBQ3hDLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLO2FBQ3pCLENBQUMsQ0FBQztZQUNILGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzNCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxJQUFJLFNBQVMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2pGLENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDcEQsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzNCLFFBQVE7SUFDUixXQUFXO0NBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0Qm9hcmQsIFBsYWl0RWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgICBnZXRIaWdoZXN0U2VsZWN0ZWRHcm91cHMsXG4gICAgZ2V0U2VsZWN0ZWRJc29sYXRlZEVsZW1lbnRzQ2FuQWRkVG9Hcm91cCxcbiAgICBjcmVhdGVHcm91cCxcbiAgICBjYW5BZGRHcm91cCxcbiAgICBoYXNTZWxlY3RlZEVsZW1lbnRzSW5TYW1lR3JvdXAsXG4gICAgY2FuUmVtb3ZlR3JvdXAsXG4gICAgZmluZEVsZW1lbnRzXG59IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IE5vZGVUcmFuc2Zvcm1zIH0gZnJvbSAnLi9ub2RlJztcblxuZXhwb3J0IGNvbnN0IGFkZEdyb3VwID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBlbGVtZW50cz86IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRHcm91cHMgPSBnZXRIaWdoZXN0U2VsZWN0ZWRHcm91cHMoYm9hcmQsIGVsZW1lbnRzKTtcbiAgICBjb25zdCBzZWxlY3RlZElzb2xhdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZElzb2xhdGVkRWxlbWVudHNDYW5BZGRUb0dyb3VwKGJvYXJkKTtcbiAgICBjb25zdCBoaWdoZXN0U2VsZWN0ZWRFbGVtZW50cyA9IFsuLi5zZWxlY3RlZEdyb3VwcywgLi4uc2VsZWN0ZWRJc29sYXRlZEVsZW1lbnRzXTtcbiAgICBjb25zdCBncm91cCA9IGNyZWF0ZUdyb3VwKCk7XG4gICAgaWYgKGNhbkFkZEdyb3VwKGJvYXJkKSkge1xuICAgICAgICBoaWdoZXN0U2VsZWN0ZWRFbGVtZW50cy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgoYm9hcmQsIGl0ZW0pO1xuICAgICAgICAgICAgTm9kZVRyYW5zZm9ybXMuc2V0Tm9kZShib2FyZCwgeyBncm91cElkOiBncm91cC5pZCB9LCBwYXRoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChoYXNTZWxlY3RlZEVsZW1lbnRzSW5TYW1lR3JvdXAoaGlnaGVzdFNlbGVjdGVkRWxlbWVudHMpKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdHcm91cElkID0gc2VsZWN0ZWRJc29sYXRlZEVsZW1lbnRzWzBdLmdyb3VwSWQ7XG4gICAgICAgICAgICBOb2RlVHJhbnNmb3Jtcy5pbnNlcnROb2RlKFxuICAgICAgICAgICAgICAgIGJvYXJkLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uZ3JvdXAsXG4gICAgICAgICAgICAgICAgICAgIGdyb3VwSWQ6IG5ld0dyb3VwSWRcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFtib2FyZC5jaGlsZHJlbi5sZW5ndGhdXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgTm9kZVRyYW5zZm9ybXMuaW5zZXJ0Tm9kZShib2FyZCwgZ3JvdXAsIFtib2FyZC5jaGlsZHJlbi5sZW5ndGhdKTtcbiAgICAgICAgfVxuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCByZW1vdmVHcm91cCA9IChib2FyZDogUGxhaXRCb2FyZCwgZWxlbWVudHM/OiBQbGFpdEVsZW1lbnRbXSkgPT4ge1xuICAgIGNvbnN0IHNlbGVjdGVkR3JvdXBzID0gZ2V0SGlnaGVzdFNlbGVjdGVkR3JvdXBzKGJvYXJkLCBlbGVtZW50cyk7XG4gICAgaWYgKGNhblJlbW92ZUdyb3VwKGJvYXJkKSkge1xuICAgICAgICBzZWxlY3RlZEdyb3Vwcy5tYXAoZ3JvdXAgPT4ge1xuICAgICAgICAgICAgY29uc3QgZWxlbWVudHNJbkdyb3VwID0gZmluZEVsZW1lbnRzKGJvYXJkLCB7XG4gICAgICAgICAgICAgICAgbWF0Y2g6IGl0ZW0gPT4gaXRlbS5ncm91cElkID09PSBncm91cC5pZCxcbiAgICAgICAgICAgICAgICByZWN1cnNpb246ICgpID0+IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGVsZW1lbnRzSW5Hcm91cC5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBpdGVtKTtcbiAgICAgICAgICAgICAgICBOb2RlVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IGdyb3VwSWQ6IGdyb3VwLmdyb3VwSWQgfHwgdW5kZWZpbmVkIH0sIHBhdGgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBncm91cFBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBncm91cCk7XG4gICAgICAgICAgICBOb2RlVHJhbnNmb3Jtcy5yZW1vdmVOb2RlKGJvYXJkLCBncm91cFBhdGgpO1xuICAgICAgICB9KTtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgR3JvdXBUcmFuc2Zvcm1zID0ge1xuICAgIGFkZEdyb3VwLFxuICAgIHJlbW92ZUdyb3VwXG59O1xuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy90cmFuc2Zvcm1zL2dyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsd0NBQXdDLEVBQ3hDLFdBQVcsRUFDWCxXQUFXLEVBQ1gsOEJBQThCLEVBQzlCLGNBQWMsRUFDZCxZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLGtDQUFrQyxFQUNyQyxNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQWlCLEVBQUUsUUFBeUIsRUFBRSxFQUFFO0lBQ3JFLE1BQU0sY0FBYyxHQUFHLHdCQUF3QixDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNqRSxNQUFNLHdCQUF3QixHQUFHLHdDQUF3QyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSxHQUFHLHdCQUF3QixDQUFDLENBQUM7SUFDakYsTUFBTSxLQUFLLEdBQUcsV0FBVyxFQUFFLENBQUM7SUFDNUIsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNyQix1QkFBdUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDOUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxD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LGVBQWUsR0FBRztJQUMzQixRQUFRO0lBQ1IsV0FBVztDQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGFpdEJvYXJkLCBQbGFpdEVsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gICAgZ2V0SGlnaGVzdFNlbGVjdGVkR3JvdXBzLFxuICAgIGdldFNlbGVjdGVkSXNvbGF0ZWRFbGVtZW50c0NhbkFkZFRvR3JvdXAsXG4gICAgY3JlYXRlR3JvdXAsXG4gICAgY2FuQWRkR3JvdXAsXG4gICAgaGFzU2VsZWN0ZWRFbGVtZW50c0luU2FtZUdyb3VwLFxuICAgIGNhblJlbW92ZUdyb3VwLFxuICAgIGZpbmRFbGVtZW50cyxcbiAgICBnZXRFbGVtZW50c0luZGljZXMsXG4gICAgaXNJbmRpY2VzQ29udGludW91cyxcbiAgICBnZXRTZWxlY3RlZEVsZW1lbnRzLFxuICAgIGdldEhpZ2hlc3RJbmRleE9mRWxlbWVudCxcbiAgICBtb3ZlRWxlbWVudHNUb05ld1BhdGhBZnRlckFkZEdyb3VwXG59IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IE5vZGVUcmFuc2Zvcm1zIH0gZnJvbSAnLi9ub2RlJztcblxuZXhwb3J0IGNvbnN0IGFkZEdyb3VwID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBlbGVtZW50cz86IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRHcm91cHMgPSBnZXRIaWdoZXN0U2VsZWN0ZWRHcm91cHMoYm9hcmQsIGVsZW1lbnRzKTtcbiAgICBjb25zdCBzZWxlY3RlZElzb2xhdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZElzb2xhdGVkRWxlbWVudHNDYW5BZGRUb0dyb3VwKGJvYXJkKTtcbiAgICBjb25zdCBoaWdoZXN0U2VsZWN0ZWRFbGVtZW50cyA9IFsuLi5zZWxlY3RlZEdyb3VwcywgLi4uc2VsZWN0ZWRJc29sYXRlZEVsZW1lbnRzXTtcbiAgICBjb25zdCBncm91cCA9IGNyZWF0ZUdyb3VwKCk7XG4gICAgaWYgKGNhbkFkZEdyb3VwKGJvYXJkKSkge1xuICAgICAgICBoaWdoZXN0U2VsZWN0ZWRFbGVtZW50cy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgoYm9hcmQsIGl0ZW0pO1xuICAgICAgICAgICAgTm9kZVRyYW5zZm9ybXMuc2V0Tm9kZShib2FyZCwgeyBncm91cElkOiBncm91cC5pZCB9LCBwYXRoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRWxlbWVudHMgPSBnZXRTZWxlY3RlZEVsZW1lbnRzKGJvYXJkKTtcbiAgICAgICAgY29uc3QgaGlnaGVzdEluZGV4T2ZTZWxlY3RlZEVsZW1lbnQgPSBnZXRIaWdoZXN0SW5kZXhPZkVsZW1lbnQoYm9hcmQsIHNlbGVjdGVkRWxlbWVudHMpO1xuICAgICAgICBjb25zdCBpbmRpY2VzID0gZ2V0RWxlbWVudHNJbmRpY2VzKGJvYXJkLCBoaWdoZXN0U2VsZWN0ZWRFbGVtZW50cyk7XG4gICAgICAgIGNvbnN0IGlzQ29udGludW91cyA9IGlzSW5kaWNlc0NvbnRpbnVvdXMoaW5kaWNlcyk7XG4gICAgICAgIGlmICghaXNDb250aW51b3VzKSB7XG4gICAgICAgICAgICBtb3ZlRWxlbWVudHNUb05ld1BhdGhBZnRlckFkZEdyb3VwKGJvYXJkLCBzZWxlY3RlZEVsZW1lbnRzLCBbaGlnaGVzdEluZGV4T2ZTZWxlY3RlZEVsZW1lbnQgLSAxXSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGhhc1NlbGVjdGVkRWxlbWVudHNJblNhbWVHcm91cChoaWdoZXN0U2VsZWN0ZWRFbGVtZW50cykpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0dyb3VwSWQgPSBzZWxlY3RlZElzb2xhdGVkRWxlbWVudHNbMF0uZ3JvdXBJZDtcbiAgICAgICAgICAgIE5vZGVUcmFuc2Zvcm1zLmluc2VydE5vZGUoXG4gICAgICAgICAgICAgICAgYm9hcmQsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAuLi5ncm91cCxcbiAgICAgICAgICAgICAgICAgICAgZ3JvdXBJZDogbmV3R3JvdXBJZFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW2JvYXJkLmNoaWxkcmVuLmxlbmd0aF1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBOb2RlVHJhbnNmb3Jtcy5pbnNlcnROb2RlKGJvYXJkLCBncm91cCwgW2JvYXJkLmNoaWxkcmVuLmxlbmd0aF0pO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUdyb3VwID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBlbGVtZW50cz86IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0ZWRHcm91cHMgPSBnZXRIaWdoZXN0U2VsZWN0ZWRHcm91cHMoYm9hcmQsIGVsZW1lbnRzKTtcbiAgICBpZiAoY2FuUmVtb3ZlR3JvdXAoYm9hcmQpKSB7XG4gICAgICAgIHNlbGVjdGVkR3JvdXBzLmZvckVhY2goZ3JvdXAgPT4ge1xuICAgICAgICAgICAgY29uc3QgZWxlbWVudHNJbkdyb3VwID0gZmluZEVsZW1lbnRzKGJvYXJkLCB7XG4gICAgICAgICAgICAgICAgbWF0Y2g6IGl0ZW0gPT4gaXRlbS5ncm91cElkID09PSBncm91cC5pZCxcbiAgICAgICAgICAgICAgICByZWN1cnNpb246ICgpID0+IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGVsZW1lbnRzSW5Hcm91cC5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBlbGVtZW50KTtcbiAgICAgICAgICAgICAgICBOb2RlVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IGdyb3VwSWQ6IGdyb3VwLmdyb3VwSWQgfHwgdW5kZWZpbmVkIH0sIHBhdGgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBzZWxlY3RlZEdyb3Vwc1xuICAgICAgICAgICAgLm1hcChncm91cCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZ3JvdXBQYXRoID0gUGxhaXRCb2FyZC5maW5kUGF0aChib2FyZCwgZ3JvdXApO1xuICAgICAgICAgICAgICAgIGNvbnN0IGdyb3VwUmVmID0gYm9hcmQucGF0aFJlZihncm91cFBhdGgpO1xuICAgICAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGdyb3VwUmVmLmN1cnJlbnQgJiYgTm9kZVRyYW5zZm9ybXMucmVtb3ZlTm9kZShib2FyZCwgZ3JvdXBSZWYuY3VycmVudCk7XG4gICAgICAgICAgICAgICAgICAgIGdyb3VwUmVmLnVucmVmKCk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuZm9yRWFjaChhY3Rpb24gPT4ge1xuICAgICAgICAgICAgICAgIGFjdGlvbigpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufTtcblxuZXhwb3J0IGludGVyZmFjZSBHcm91cFRyYW5zZm9ybXMge1xuICAgIGFkZEdyb3VwOiAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzPzogUGxhaXRFbGVtZW50W10pID0+IHZvaWQ7XG4gICAgcmVtb3ZlR3JvdXA6IChib2FyZDogUGxhaXRCb2FyZCwgZWxlbWVudHM/OiBQbGFpdEVsZW1lbnRbXSkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IEdyb3VwVHJhbnNmb3JtcyA9IHtcbiAgICBhZGRHcm91cCxcbiAgICByZW1vdmVHcm91cFxufTtcbiJdfQ==
@@ -1,14 +1,17 @@
1
1
  import { GeneralTransforms } from './general';
2
+ import { GroupTransforms } from './group';
2
3
  import { NodeTransforms } from './node';
3
4
  import { SelectionTransforms } from './selection';
4
5
  import { ViewportTransforms } from './viewport';
6
+ import { ZIndexTransforms } from './z-index';
5
7
  export { BoardTransforms } from './board';
6
8
  export { CoreTransforms } from './element';
7
- export { GroupTransforms } from './group';
8
9
  export const Transforms = {
9
10
  ...GeneralTransforms,
10
11
  ...ViewportTransforms,
11
12
  ...SelectionTransforms,
12
- ...NodeTransforms
13
+ ...NodeTransforms,
14
+ ...GroupTransforms,
15
+ ...ZIndexTransforms
13
16
  };
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy90cmFuc2Zvcm1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFMUMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFrRjtJQUNyRyxHQUFHLGlCQUFpQjtJQUNwQixHQUFHLGtCQUFrQjtJQUNyQixHQUFHLG1CQUFtQjtJQUN0QixHQUFHLGNBQWM7Q0FDcEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdlbmVyYWxUcmFuc2Zvcm1zIH0gZnJvbSAnLi9nZW5lcmFsJztcbmltcG9ydCB7IE5vZGVUcmFuc2Zvcm1zIH0gZnJvbSAnLi9ub2RlJztcbmltcG9ydCB7IFNlbGVjdGlvblRyYW5zZm9ybXMgfSBmcm9tICcuL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBWaWV3cG9ydFRyYW5zZm9ybXMgfSBmcm9tICcuL3ZpZXdwb3J0JztcblxuZXhwb3J0IHsgQm9hcmRUcmFuc2Zvcm1zIH0gZnJvbSAnLi9ib2FyZCc7XG5leHBvcnQgeyBDb3JlVHJhbnNmb3JtcyB9IGZyb20gJy4vZWxlbWVudCc7XG5leHBvcnQgeyBHcm91cFRyYW5zZm9ybXMgfSBmcm9tICcuL2dyb3VwJztcblxuZXhwb3J0IGNvbnN0IFRyYW5zZm9ybXM6IEdlbmVyYWxUcmFuc2Zvcm1zICYgVmlld3BvcnRUcmFuc2Zvcm1zICYgU2VsZWN0aW9uVHJhbnNmb3JtcyAmIE5vZGVUcmFuc2Zvcm1zID0ge1xuICAgIC4uLkdlbmVyYWxUcmFuc2Zvcm1zLFxuICAgIC4uLlZpZXdwb3J0VHJhbnNmb3JtcyxcbiAgICAuLi5TZWxlY3Rpb25UcmFuc2Zvcm1zLFxuICAgIC4uLk5vZGVUcmFuc2Zvcm1zXG59O1xuIl19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy90cmFuc2Zvcm1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDeEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FLQTtJQUNuQixHQUFHLGlCQUFpQjtJQUNwQixHQUFHLGtCQUFrQjtJQUNyQixHQUFHLG1CQUFtQjtJQUN0QixHQUFHLGNBQWM7SUFDakIsR0FBRyxlQUFlO0lBQ2xCLEdBQUcsZ0JBQWdCO0NBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW5lcmFsVHJhbnNmb3JtcyB9IGZyb20gJy4vZ2VuZXJhbCc7XG5pbXBvcnQgeyBHcm91cFRyYW5zZm9ybXMgfSBmcm9tICcuL2dyb3VwJztcbmltcG9ydCB7IE5vZGVUcmFuc2Zvcm1zIH0gZnJvbSAnLi9ub2RlJztcbmltcG9ydCB7IFNlbGVjdGlvblRyYW5zZm9ybXMgfSBmcm9tICcuL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBWaWV3cG9ydFRyYW5zZm9ybXMgfSBmcm9tICcuL3ZpZXdwb3J0JztcbmltcG9ydCB7IFpJbmRleFRyYW5zZm9ybXMgfSBmcm9tICcuL3otaW5kZXgnO1xuXG5leHBvcnQgeyBCb2FyZFRyYW5zZm9ybXMgfSBmcm9tICcuL2JvYXJkJztcbmV4cG9ydCB7IENvcmVUcmFuc2Zvcm1zIH0gZnJvbSAnLi9lbGVtZW50JztcblxuZXhwb3J0IGNvbnN0IFRyYW5zZm9ybXM6IEdlbmVyYWxUcmFuc2Zvcm1zICZcbiAgICBWaWV3cG9ydFRyYW5zZm9ybXMgJlxuICAgIFNlbGVjdGlvblRyYW5zZm9ybXMgJlxuICAgIE5vZGVUcmFuc2Zvcm1zICZcbiAgICBHcm91cFRyYW5zZm9ybXMgJlxuICAgIFpJbmRleFRyYW5zZm9ybXMgPSB7XG4gICAgLi4uR2VuZXJhbFRyYW5zZm9ybXMsXG4gICAgLi4uVmlld3BvcnRUcmFuc2Zvcm1zLFxuICAgIC4uLlNlbGVjdGlvblRyYW5zZm9ybXMsXG4gICAgLi4uTm9kZVRyYW5zZm9ybXMsXG4gICAgLi4uR3JvdXBUcmFuc2Zvcm1zLFxuICAgIC4uLlpJbmRleFRyYW5zZm9ybXNcbn07XG4iXX0=
@@ -0,0 +1,20 @@
1
+ import { moveElementsToNewPath } from '../utils';
2
+ import { getAllMoveOptions, getOneMoveOptions } from '../utils/z-index';
3
+ const moveToTop = (board) => {
4
+ const moveOptions = getAllMoveOptions(board, 'up');
5
+ moveElementsToNewPath(board, moveOptions);
6
+ };
7
+ const moveToBottom = (board) => {
8
+ const moveOptions = getAllMoveOptions(board, 'down');
9
+ moveElementsToNewPath(board, moveOptions);
10
+ };
11
+ const moveUp = (board) => {
12
+ const moveOptions = getOneMoveOptions(board, 'up');
13
+ moveElementsToNewPath(board, moveOptions);
14
+ };
15
+ const moveDown = (board) => {
16
+ const moveOptions = getOneMoveOptions(board, 'down');
17
+ moveElementsToNewPath(board, moveOptions);
18
+ };
19
+ export const ZIndexTransforms = { moveUp, moveDown, moveToTop, moveToBottom };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiei1pbmRleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3RyYW5zZm9ybXMvei1pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFeEUsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUU7SUFDcEMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25ELHFCQUFxQixDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztBQUM5QyxDQUFDLENBQUM7QUFFRixNQUFNLFlBQVksR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUN2QyxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckQscUJBQXFCLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQzlDLENBQUMsQ0FBQztBQUVGLE1BQU0sTUFBTSxHQUFHLENBQUMsS0FBaUIsRUFBRSxFQUFFO0lBQ2pDLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRCxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUU7SUFDbkMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELHFCQUFxQixDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztBQUM5QyxDQUFDLENBQUM7QUFTRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhaXRCb2FyZCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgbW92ZUVsZW1lbnRzVG9OZXdQYXRoIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgZ2V0QWxsTW92ZU9wdGlvbnMsIGdldE9uZU1vdmVPcHRpb25zIH0gZnJvbSAnLi4vdXRpbHMvei1pbmRleCc7XG5cbmNvbnN0IG1vdmVUb1RvcCA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIGNvbnN0IG1vdmVPcHRpb25zID0gZ2V0QWxsTW92ZU9wdGlvbnMoYm9hcmQsICd1cCcpO1xuICAgIG1vdmVFbGVtZW50c1RvTmV3UGF0aChib2FyZCwgbW92ZU9wdGlvbnMpO1xufTtcblxuY29uc3QgbW92ZVRvQm90dG9tID0gKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB7XG4gICAgY29uc3QgbW92ZU9wdGlvbnMgPSBnZXRBbGxNb3ZlT3B0aW9ucyhib2FyZCwgJ2Rvd24nKTtcbiAgICBtb3ZlRWxlbWVudHNUb05ld1BhdGgoYm9hcmQsIG1vdmVPcHRpb25zKTtcbn07XG5cbmNvbnN0IG1vdmVVcCA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIGNvbnN0IG1vdmVPcHRpb25zID0gZ2V0T25lTW92ZU9wdGlvbnMoYm9hcmQsICd1cCcpO1xuICAgIG1vdmVFbGVtZW50c1RvTmV3UGF0aChib2FyZCwgbW92ZU9wdGlvbnMpO1xufTtcblxuY29uc3QgbW92ZURvd24gPSAoYm9hcmQ6IFBsYWl0Qm9hcmQpID0+IHtcbiAgICBjb25zdCBtb3ZlT3B0aW9ucyA9IGdldE9uZU1vdmVPcHRpb25zKGJvYXJkLCAnZG93bicpO1xuICAgIG1vdmVFbGVtZW50c1RvTmV3UGF0aChib2FyZCwgbW92ZU9wdGlvbnMpO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBaSW5kZXhUcmFuc2Zvcm1zIHtcbiAgICBtb3ZlVXA6IChib2FyZDogUGxhaXRCb2FyZCkgPT4gdm9pZDtcbiAgICBtb3ZlRG93bjogKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB2b2lkO1xuICAgIG1vdmVUb1RvcDogKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB2b2lkO1xuICAgIG1vdmVUb0JvdHRvbTogKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3QgWkluZGV4VHJhbnNmb3JtcyA9IHsgbW92ZVVwLCBtb3ZlRG93biwgbW92ZVRvVG9wLCBtb3ZlVG9Cb3R0b20gfTtcbiJdfQ==
@@ -106,9 +106,23 @@ export function rotateElements(board, elements, angle) {
106
106
  const selectionCenterPoint = RectangleClient.getCenterPoint(selectionRectangle);
107
107
  elements.forEach(item => {
108
108
  const originAngle = item.angle;
109
- const points = rotatedDataPoints(item.points, selectionCenterPoint, angle);
109
+ const points = rotatedDataPoints(item.points, selectionCenterPoint, normalizeAngle(angle));
110
110
  const path = PlaitBoard.findPath(board, item);
111
- Transforms.setNode(board, { points, angle: originAngle + angle }, path);
111
+ Transforms.setNode(board, { points, angle: normalizeAngle(originAngle + angle) }, path);
112
112
  });
113
113
  }
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5nbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlscy9hbmdsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF1QixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUksTUFBUyxFQUFFLFdBQWtCLEVBQUUsS0FBYSxFQUFLLEVBQUU7SUFDL0UsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1QsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDekQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBTSxDQUFDO0lBQ3BGLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBUSxNQUFrQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuQyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDN0UsQ0FBQyxDQUFNLENB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QUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsR0FBRyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1RSxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGFpdEJvYXJkLCBQbGFpdEVsZW1lbnQsIFBvaW50LCBSZWN0YW5nbGVDbGllbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFRyYW5zZm9ybXMgfSBmcm9tICcuLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGdldFJlY3RhbmdsZUJ5RWxlbWVudHMgfSBmcm9tICcuL2VsZW1lbnQnO1xuaW1wb3J0IHsgYXBwcm94aW1hdGVseSwgcm90YXRlIH0gZnJvbSAnLi9tYXRoJztcblxuZXhwb3J0IGNvbnN0IHJvdGF0ZVBvaW50cyA9IDxUPihwb2ludHM6IFQsIGNlbnRlclBvaW50OiBQb2ludCwgYW5nbGU6IG51bWJlcik6IFQgPT4ge1xuICAgIGlmICghYW5nbGUpIHtcbiAgICAgICAgYW5nbGUgPSAwO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheShwb2ludHMpICYmIHR5cGVvZiBwb2ludHNbMF0gPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiByb3RhdGUocG9pbnRzWzBdLCBwb2ludHNbMV0sIGNlbnRlclBvaW50WzBdLCBjZW50ZXJQb2ludFsxXSwgYW5nbGUpIGFzIFQ7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIChwb2ludHMgYXMgUG9pbnRbXSkubWFwKHBvaW50ID0+IHtcbiAgICAgICAgICAgIHJldHVybiByb3RhdGUocG9pbnRbMF0sIHBvaW50WzFdLCBjZW50ZXJQb2ludFswXSwgY2VudGVyUG9pbnRbMV0sIGFuZ2xlKTtcbiAgICAgICAgfSkgYXMgVDtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U2VsZWN0aW9uQW5nbGUgPSAoZWxlbWVudHM6IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgbGV0IGFuZ2xlID0gZWxlbWVudHNbMF0/LmFuZ2xlIHx8IDA7XG4gICAgZWxlbWVudHMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgaWYgKGl0ZW0uYW5nbGUgIT09IGFuZ2xlICYmICFhcHByb3hpbWF0ZWx5KChpdGVtLmFuZ2xlICUgKE1hdGguUEkgLyAyKSkgLSAoYW5nbGUgJSAoTWF0aC5QSSAvIDIpKSwgMCkpIHtcbiAgICAgICAgICAgIGFuZ2xlID0gMDtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhbmdsZTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYXNTYW1lQW5nbGUgPSAoZWxlbWVudHM6IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgaWYgKCFlbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IGFuZ2xlID0gZWxlbWVudHNbMF0uYW5nbGU7XG4gICAgaWYgKGFuZ2xlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiAhZWxlbWVudHMuc29tZShpdGVtID0+IGl0ZW0uYW5nbGUgIT09IGFuZ2xlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSb3RhdGVkQm91bmRpbmdSZWN0YW5nbGUgPSAocmVjdGFuZ2xlc0Nvcm5lclBvaW50czogW1BvaW50LCBQb2ludCwgUG9pbnQsIFBvaW50XVtdLCBhbmdsZTogbnVtYmVyKSA9PiB7XG4gICAgbGV0IHJlY3RhbmdsZXNGcm9tT3JpZ2luOiBSZWN0YW5nbGVDbGllbnRbXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVjdGFuZ2xlc0Nvcm5lclBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjb3JuZXJQb2ludHMgPSByZWN0YW5nbGVzQ29ybmVyUG9pbnRzW2ldO1xuICAgICAgICBjb25zdCBpbnZlcnRDb3JuZXJQb2ludHNGcm9tT3JpZ2luID0gcm90YXRlUG9pbnRzKGNvcm5lclBvaW50cywgWzAsIDBdLCAtYW5nbGUpO1xuICAgICAgICByZWN0YW5nbGVzRnJvbU9yaWdpbi5wdXNoKFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhpbnZlcnRDb3JuZXJQb2ludHNGcm9tT3JpZ2luKSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0aW9uUmVjdGFuZ2xlRnJvbU9yaWdpbiA9IFJlY3RhbmdsZUNsaWVudC5nZXRCb3VuZGluZ1JlY3RhbmdsZShyZWN0YW5nbGVzRnJvbU9yaWdpbik7XG4gICAgY29uc3Qgc2VsZWN0aW9uQ29ybmVyUG9pbnRzID0gUmVjdGFuZ2xlQ2xpZW50LmdldENvcm5lclBvaW50cyhzZWxlY3Rpb25SZWN0YW5nbGVGcm9tT3JpZ2luKTtcbiAgICBjb25zdCBjb3JuZXJQb2ludHNGcm9tT3JpZ2luID0gcm90YXRlUG9pbnRzKHNlbGVjdGlvbkNvcm5lclBvaW50cywgWzAsIDBdLCBhbmdsZSk7XG4gICAgY29uc3QgY2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQoUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNvcm5lclBvaW50c0Zyb21PcmlnaW4pKTtcbiAgICByZXR1cm4gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKHJvdGF0ZVBvaW50cyhjb3JuZXJQb2ludHNGcm9tT3JpZ2luLCBjZW50ZXJQb2ludCwgLWFuZ2xlKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0T2Zmc2V0QWZ0ZXJSb3RhdGUgPSAocmVjdGFuZ2xlOiBSZWN0YW5nbGVDbGllbnQsIHJvdGF0ZUNlbnRlclBvaW50OiBQb2ludCwgYW5nbGU6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHRhcmdldENlbnRlclBvaW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KHJlY3RhbmdsZSk7XG4gICAgY29uc3QgW3JvdGF0ZWRDZW50ZXJQb2ludF0gPSByb3RhdGVQb2ludHMoW3RhcmdldENlbnRlclBvaW50XSwgcm90YXRlQ2VudGVyUG9pbnQsIGFuZ2xlKTtcbiAgICBjb25zdCBvZmZzZXRYID0gcm90YXRlZENlbnRlclBvaW50WzBdIC0gdGFyZ2V0Q2VudGVyUG9pbnRbMF07XG4gICAgY29uc3Qgb2Zmc2V0WSA9IHJvdGF0ZWRDZW50ZXJQb2ludFsxXSAtIHRhcmdldENlbnRlclBvaW50WzFdO1xuICAgIHJldHVybiB7IG9mZnNldFgsIG9mZnNldFkgfTtcbn07XG5cbmV4cG9ydCBjb25zdCByb3RhdGVkRGF0YVBvaW50cyA9IChwb2ludHM6IFBvaW50W10sIHJvdGF0ZUNlbnRlclBvaW50OiBQb2ludCwgYW5nbGU6IG51bWJlcik6IFBvaW50W10gPT4ge1xuICAgIGNvbnN0IHsgb2Zmc2V0WCwgb2Zmc2V0WSB9ID0gZ2V0T2Zmc2V0QWZ0ZXJSb3RhdGUoUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKHBvaW50cyksIHJvdGF0ZUNlbnRlclBvaW50LCBhbmdsZSk7XG4gICAgcmV0dXJuIHBvaW50cy5tYXAocCA9PiBbcFswXSArIG9mZnNldFgsIHBbMV0gKyBvZmZzZXRZXSkgYXMgUG9pbnRbXTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYXNWYWxpZEFuZ2xlID0gKG5vZGU6IFBsYWl0RWxlbWVudCkgPT4ge1xuICAgIHJldHVybiBub2RlLmFuZ2xlICYmIG5vZGUuYW5nbGUgIT09IDA7XG59O1xuXG5leHBvcnQgY29uc3Qgcm90YXRlUG9pbnRzQnlFbGVtZW50ID0gPFQ+KHBvaW50czogVCwgZWxlbWVudDogUGxhaXRFbGVtZW50KTogVCB8IG51bGwgPT4ge1xuICAgIGlmIChoYXNWYWxpZEFuZ2xlKGVsZW1lbnQpKSB7XG4gICAgICAgIGxldCByZWN0YW5nbGUgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMoZWxlbWVudC5wb2ludHMhKTtcbiAgICAgICAgY29uc3QgY2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQocmVjdGFuZ2xlKTtcbiAgICAgICAgcmV0dXJuIHJvdGF0ZVBvaW50cyhwb2ludHMsIGNlbnRlclBvaW50LCBlbGVtZW50LmFuZ2xlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3Qgcm90YXRlQW50aVBvaW50c0J5RWxlbWVudCA9IDxUPihwb2ludHM6IFQsIGVsZW1lbnQ6IFBsYWl0RWxlbWVudCk6IFQgfCBudWxsID0+IHtcbiAgICBpZiAoaGFzVmFsaWRBbmdsZShlbGVtZW50KSkge1xuICAgICAgICBsZXQgcmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzISk7XG4gICAgICAgIGNvbnN0IGNlbnRlclBvaW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KHJlY3RhbmdsZSk7XG4gICAgICAgIHJldHVybiByb3RhdGVQb2ludHMocG9pbnRzLCBjZW50ZXJQb2ludCwgLWVsZW1lbnQuYW5nbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSZWN0YW5nbGVCeUFuZ2xlID0gKHJlY3RhbmdsZTogUmVjdGFuZ2xlQ2xpZW50LCBhbmdsZTogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGFuZ2xlKSB7XG4gICAgICAgIGNvbnN0IGNvcm5lclBvaW50cyA9IFJlY3RhbmdsZUNsaWVudC5nZXRDb3JuZXJQb2ludHMocmVjdGFuZ2xlKTtcbiAgICAgICAgY29uc3QgY2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQocmVjdGFuZ2xlKTtcbiAgICAgICAgcmV0dXJuIFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhyb3RhdGVQb2ludHMoY29ybmVyUG9pbnRzLCBjZW50ZXJQb2ludCwgYW5nbGUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgaXNBeGlzQ2hhbmdlZEJ5QW5nbGUgPSAoYW5nbGU6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHVuaXRBbmdsZSA9IE1hdGguYWJzKGFuZ2xlKSAlIE1hdGguUEk7XG4gICAgcmV0dXJuIHVuaXRBbmdsZSA+PSAoMSAvIDQpICogTWF0aC5QSSAmJiB1bml0QW5nbGUgPD0gKDMgLyA0KSAqIE1hdGguUEk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZGVncmVlc1RvUmFkaWFucyhkOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiAoZCAvIDE4MCkgKiBNYXRoLlBJO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmFkaWFuc1RvRGVncmVlcyhyOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiAociAvIE1hdGguUEkpICogMTgwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcm90YXRlRWxlbWVudHMoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzOiBQbGFpdEVsZW1lbnRbXSwgYW5nbGU6IG51bWJlcikge1xuICAgIGNvbnN0IHNlbGVjdGlvblJlY3RhbmdsZSA9IGdldFJlY3RhbmdsZUJ5RWxlbWVudHMoYm9hcmQsIGVsZW1lbnRzLCBmYWxzZSk7XG4gICAgY29uc3Qgc2VsZWN0aW9uQ2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQoc2VsZWN0aW9uUmVjdGFuZ2xlKTtcbiAgICBlbGVtZW50cy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBvcmlnaW5BbmdsZSA9IGl0ZW0uYW5nbGU7XG4gICAgICAgIGNvbnN0IHBvaW50cyA9IHJvdGF0ZWREYXRhUG9pbnRzKGl0ZW0ucG9pbnRzISwgc2VsZWN0aW9uQ2VudGVyUG9pbnQsIGFuZ2xlKTtcbiAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgoYm9hcmQsIGl0ZW0pO1xuICAgICAgICBUcmFuc2Zvcm1zLnNldE5vZGUoYm9hcmQsIHsgcG9pbnRzLCBhbmdsZTogb3JpZ2luQW5nbGUgKyBhbmdsZSB9LCBwYXRoKTtcbiAgICB9KTtcbn1cbiJdfQ==
114
+ export const normalizeAngle = (angle) => {
115
+ if (angle < 0) {
116
+ return angle + 2 * Math.PI;
117
+ }
118
+ if (angle >= 2 * Math.PI) {
119
+ return angle - 2 * Math.PI;
120
+ }
121
+ return angle;
122
+ };
123
+ export const getAngleBetweenPoints = (startPoint, endPoint, centerPoint) => {
124
+ const startAngle = (5 * Math.PI) / 2 + Math.atan2(startPoint[1] - centerPoint[1], startPoint[0] - centerPoint[0]);
125
+ const endAngle = (5 * Math.PI) / 2 + Math.atan2(endPoint[1] - centerPoint[1], endPoint[0] - centerPoint[0]);
126
+ return normalizeAngle(endAngle - startAngle);
127
+ };
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5nbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlscy9hbmdsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUF1QixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUksTUFBUyxFQUFFLFdBQWtCLEVBQUUsS0FBYSxFQUFLLEVBQUU7SUFDL0UsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1QsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDekQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBTSxDQUFDO0lBQ3BGLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBUSxNQUFrQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuQyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDN0UsQ0FBQyxDQUFNLENB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USxDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVHLE9BQU8sY0FBYyxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQztBQUNqRCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGFpdEJvYXJkLCBQbGFpdEVsZW1lbnQsIFBvaW50LCBSZWN0YW5nbGVDbGllbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFRyYW5zZm9ybXMgfSBmcm9tICcuLi90cmFuc2Zvcm1zJztcbmltcG9ydCB7IGdldFJlY3RhbmdsZUJ5RWxlbWVudHMgfSBmcm9tICcuL2VsZW1lbnQnO1xuaW1wb3J0IHsgYXBwcm94aW1hdGVseSwgcm90YXRlIH0gZnJvbSAnLi9tYXRoJztcblxuZXhwb3J0IGNvbnN0IHJvdGF0ZVBvaW50cyA9IDxUPihwb2ludHM6IFQsIGNlbnRlclBvaW50OiBQb2ludCwgYW5nbGU6IG51bWJlcik6IFQgPT4ge1xuICAgIGlmICghYW5nbGUpIHtcbiAgICAgICAgYW5nbGUgPSAwO1xuICAgIH1cbiAgICBpZiAoQXJyYXkuaXNBcnJheShwb2ludHMpICYmIHR5cGVvZiBwb2ludHNbMF0gPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiByb3RhdGUocG9pbnRzWzBdLCBwb2ludHNbMV0sIGNlbnRlclBvaW50WzBdLCBjZW50ZXJQb2ludFsxXSwgYW5nbGUpIGFzIFQ7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIChwb2ludHMgYXMgUG9pbnRbXSkubWFwKHBvaW50ID0+IHtcbiAgICAgICAgICAgIHJldHVybiByb3RhdGUocG9pbnRbMF0sIHBvaW50WzFdLCBjZW50ZXJQb2ludFswXSwgY2VudGVyUG9pbnRbMV0sIGFuZ2xlKTtcbiAgICAgICAgfSkgYXMgVDtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U2VsZWN0aW9uQW5nbGUgPSAoZWxlbWVudHM6IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgbGV0IGFuZ2xlID0gZWxlbWVudHNbMF0/LmFuZ2xlIHx8IDA7XG4gICAgZWxlbWVudHMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgaWYgKGl0ZW0uYW5nbGUgIT09IGFuZ2xlICYmICFhcHByb3hpbWF0ZWx5KChpdGVtLmFuZ2xlICUgKE1hdGguUEkgLyAyKSkgLSAoYW5nbGUgJSAoTWF0aC5QSSAvIDIpKSwgMCkpIHtcbiAgICAgICAgICAgIGFuZ2xlID0gMDtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhbmdsZTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYXNTYW1lQW5nbGUgPSAoZWxlbWVudHM6IFBsYWl0RWxlbWVudFtdKSA9PiB7XG4gICAgaWYgKCFlbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IGFuZ2xlID0gZWxlbWVudHNbMF0uYW5nbGU7XG4gICAgaWYgKGFuZ2xlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiAhZWxlbWVudHMuc29tZShpdGVtID0+IGl0ZW0uYW5nbGUgIT09IGFuZ2xlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSb3RhdGVkQm91bmRpbmdSZWN0YW5nbGUgPSAocmVjdGFuZ2xlc0Nvcm5lclBvaW50czogW1BvaW50LCBQb2ludCwgUG9pbnQsIFBvaW50XVtdLCBhbmdsZTogbnVtYmVyKSA9PiB7XG4gICAgbGV0IHJlY3RhbmdsZXNGcm9tT3JpZ2luOiBSZWN0YW5nbGVDbGllbnRbXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVjdGFuZ2xlc0Nvcm5lclBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjb3JuZXJQb2ludHMgPSByZWN0YW5nbGVzQ29ybmVyUG9pbnRzW2ldO1xuICAgICAgICBjb25zdCBpbnZlcnRDb3JuZXJQb2ludHNGcm9tT3JpZ2luID0gcm90YXRlUG9pbnRzKGNvcm5lclBvaW50cywgWzAsIDBdLCAtYW5nbGUpO1xuICAgICAgICByZWN0YW5nbGVzRnJvbU9yaWdpbi5wdXNoKFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhpbnZlcnRDb3JuZXJQb2ludHNGcm9tT3JpZ2luKSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0aW9uUmVjdGFuZ2xlRnJvbU9yaWdpbiA9IFJlY3RhbmdsZUNsaWVudC5nZXRCb3VuZGluZ1JlY3RhbmdsZShyZWN0YW5nbGVzRnJvbU9yaWdpbik7XG4gICAgY29uc3Qgc2VsZWN0aW9uQ29ybmVyUG9pbnRzID0gUmVjdGFuZ2xlQ2xpZW50LmdldENvcm5lclBvaW50cyhzZWxlY3Rpb25SZWN0YW5nbGVGcm9tT3JpZ2luKTtcbiAgICBjb25zdCBjb3JuZXJQb2ludHNGcm9tT3JpZ2luID0gcm90YXRlUG9pbnRzKHNlbGVjdGlvbkNvcm5lclBvaW50cywgWzAsIDBdLCBhbmdsZSk7XG4gICAgY29uc3QgY2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQoUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGNvcm5lclBvaW50c0Zyb21PcmlnaW4pKTtcbiAgICByZXR1cm4gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKHJvdGF0ZVBvaW50cyhjb3JuZXJQb2ludHNGcm9tT3JpZ2luLCBjZW50ZXJQb2ludCwgLWFuZ2xlKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0T2Zmc2V0QWZ0ZXJSb3RhdGUgPSAocmVjdGFuZ2xlOiBSZWN0YW5nbGVDbGllbnQsIHJvdGF0ZUNlbnRlclBvaW50OiBQb2ludCwgYW5nbGU6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHRhcmdldENlbnRlclBvaW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KHJlY3RhbmdsZSk7XG4gICAgY29uc3QgW3JvdGF0ZWRDZW50ZXJQb2ludF0gPSByb3RhdGVQb2ludHMoW3RhcmdldENlbnRlclBvaW50XSwgcm90YXRlQ2VudGVyUG9pbnQsIGFuZ2xlKTtcbiAgICBjb25zdCBvZmZzZXRYID0gcm90YXRlZENlbnRlclBvaW50WzBdIC0gdGFyZ2V0Q2VudGVyUG9pbnRbMF07XG4gICAgY29uc3Qgb2Zmc2V0WSA9IHJvdGF0ZWRDZW50ZXJQb2ludFsxXSAtIHRhcmdldENlbnRlclBvaW50WzFdO1xuICAgIHJldHVybiB7IG9mZnNldFgsIG9mZnNldFkgfTtcbn07XG5cbmV4cG9ydCBjb25zdCByb3RhdGVkRGF0YVBvaW50cyA9IChwb2ludHM6IFBvaW50W10sIHJvdGF0ZUNlbnRlclBvaW50OiBQb2ludCwgYW5nbGU6IG51bWJlcik6IFBvaW50W10gPT4ge1xuICAgIGNvbnN0IHsgb2Zmc2V0WCwgb2Zmc2V0WSB9ID0gZ2V0T2Zmc2V0QWZ0ZXJSb3RhdGUoUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKHBvaW50cyksIHJvdGF0ZUNlbnRlclBvaW50LCBhbmdsZSk7XG4gICAgcmV0dXJuIHBvaW50cy5tYXAocCA9PiBbcFswXSArIG9mZnNldFgsIHBbMV0gKyBvZmZzZXRZXSkgYXMgUG9pbnRbXTtcbn07XG5cbmV4cG9ydCBjb25zdCBoYXNWYWxpZEFuZ2xlID0gKG5vZGU6IFBsYWl0RWxlbWVudCkgPT4ge1xuICAgIHJldHVybiBub2RlLmFuZ2xlICYmIG5vZGUuYW5nbGUgIT09IDA7XG59O1xuXG5leHBvcnQgY29uc3Qgcm90YXRlUG9pbnRzQnlFbGVtZW50ID0gPFQ+KHBvaW50czogVCwgZWxlbWVudDogUGxhaXRFbGVtZW50KTogVCB8IG51bGwgPT4ge1xuICAgIGlmIChoYXNWYWxpZEFuZ2xlKGVsZW1lbnQpKSB7XG4gICAgICAgIGxldCByZWN0YW5nbGUgPSBSZWN0YW5nbGVDbGllbnQuZ2V0UmVjdGFuZ2xlQnlQb2ludHMoZWxlbWVudC5wb2ludHMhKTtcbiAgICAgICAgY29uc3QgY2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQocmVjdGFuZ2xlKTtcbiAgICAgICAgcmV0dXJuIHJvdGF0ZVBvaW50cyhwb2ludHMsIGNlbnRlclBvaW50LCBlbGVtZW50LmFuZ2xlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3Qgcm90YXRlQW50aVBvaW50c0J5RWxlbWVudCA9IDxUPihwb2ludHM6IFQsIGVsZW1lbnQ6IFBsYWl0RWxlbWVudCk6IFQgfCBudWxsID0+IHtcbiAgICBpZiAoaGFzVmFsaWRBbmdsZShlbGVtZW50KSkge1xuICAgICAgICBsZXQgcmVjdGFuZ2xlID0gUmVjdGFuZ2xlQ2xpZW50LmdldFJlY3RhbmdsZUJ5UG9pbnRzKGVsZW1lbnQucG9pbnRzISk7XG4gICAgICAgIGNvbnN0IGNlbnRlclBvaW50ID0gUmVjdGFuZ2xlQ2xpZW50LmdldENlbnRlclBvaW50KHJlY3RhbmdsZSk7XG4gICAgICAgIHJldHVybiByb3RhdGVQb2ludHMocG9pbnRzLCBjZW50ZXJQb2ludCwgLWVsZW1lbnQuYW5nbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSZWN0YW5nbGVCeUFuZ2xlID0gKHJlY3RhbmdsZTogUmVjdGFuZ2xlQ2xpZW50LCBhbmdsZTogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGFuZ2xlKSB7XG4gICAgICAgIGNvbnN0IGNvcm5lclBvaW50cyA9IFJlY3RhbmdsZUNsaWVudC5nZXRDb3JuZXJQb2ludHMocmVjdGFuZ2xlKTtcbiAgICAgICAgY29uc3QgY2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQocmVjdGFuZ2xlKTtcbiAgICAgICAgcmV0dXJuIFJlY3RhbmdsZUNsaWVudC5nZXRSZWN0YW5nbGVCeVBvaW50cyhyb3RhdGVQb2ludHMoY29ybmVyUG9pbnRzLCBjZW50ZXJQb2ludCwgYW5nbGUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgaXNBeGlzQ2hhbmdlZEJ5QW5nbGUgPSAoYW5nbGU6IG51bWJlcikgPT4ge1xuICAgIGNvbnN0IHVuaXRBbmdsZSA9IE1hdGguYWJzKGFuZ2xlKSAlIE1hdGguUEk7XG4gICAgcmV0dXJuIHVuaXRBbmdsZSA+PSAoMSAvIDQpICogTWF0aC5QSSAmJiB1bml0QW5nbGUgPD0gKDMgLyA0KSAqIE1hdGguUEk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZGVncmVlc1RvUmFkaWFucyhkOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiAoZCAvIDE4MCkgKiBNYXRoLlBJO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmFkaWFuc1RvRGVncmVlcyhyOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiAociAvIE1hdGguUEkpICogMTgwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcm90YXRlRWxlbWVudHMoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzOiBQbGFpdEVsZW1lbnRbXSwgYW5nbGU6IG51bWJlcikge1xuICAgIGNvbnN0IHNlbGVjdGlvblJlY3RhbmdsZSA9IGdldFJlY3RhbmdsZUJ5RWxlbWVudHMoYm9hcmQsIGVsZW1lbnRzLCBmYWxzZSk7XG4gICAgY29uc3Qgc2VsZWN0aW9uQ2VudGVyUG9pbnQgPSBSZWN0YW5nbGVDbGllbnQuZ2V0Q2VudGVyUG9pbnQoc2VsZWN0aW9uUmVjdGFuZ2xlKTtcbiAgICBlbGVtZW50cy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBvcmlnaW5BbmdsZSA9IGl0ZW0uYW5nbGU7XG4gICAgICAgIGNvbnN0IHBvaW50cyA9IHJvdGF0ZWREYXRhUG9pbnRzKGl0ZW0ucG9pbnRzISwgc2VsZWN0aW9uQ2VudGVyUG9pbnQsIG5vcm1hbGl6ZUFuZ2xlKGFuZ2xlKSk7XG4gICAgICAgIGNvbnN0IHBhdGggPSBQbGFpdEJvYXJkLmZpbmRQYXRoKGJvYXJkLCBpdGVtKTtcbiAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHBvaW50cywgYW5nbGU6IG5vcm1hbGl6ZUFuZ2xlKG9yaWdpbkFuZ2xlICsgYW5nbGUpIH0sIHBhdGgpO1xuICAgIH0pO1xufVxuXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplQW5nbGUgPSAoYW5nbGU6IG51bWJlcik6IG51bWJlciA9PiB7XG4gICAgaWYgKGFuZ2xlIDwgMCkge1xuICAgICAgICByZXR1cm4gYW5nbGUgKyAyICogTWF0aC5QSTtcbiAgICB9XG4gICAgaWYgKGFuZ2xlID49IDIgKiBNYXRoLlBJKSB7XG4gICAgICAgIHJldHVybiBhbmdsZSAtIDIgKiBNYXRoLlBJO1xuICAgIH1cbiAgICByZXR1cm4gYW5nbGU7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QW5nbGVCZXR3ZWVuUG9pbnRzID0gKHN0YXJ0UG9pbnQ6IFBvaW50LCBlbmRQb2ludDogUG9pbnQsIGNlbnRlclBvaW50OiBQb2ludCk6IG51bWJlciA9PiB7XG4gICAgY29uc3Qgc3RhcnRBbmdsZSA9ICg1ICogTWF0aC5QSSkgLyAyICsgTWF0aC5hdGFuMihzdGFydFBvaW50WzFdIC0gY2VudGVyUG9pbnRbMV0sIHN0YXJ0UG9pbnRbMF0gLSBjZW50ZXJQb2ludFswXSk7XG4gICAgY29uc3QgZW5kQW5nbGUgPSAoNSAqIE1hdGguUEkpIC8gMiArIE1hdGguYXRhbjIoZW5kUG9pbnRbMV0gLSBjZW50ZXJQb2ludFsxXSwgZW5kUG9pbnRbMF0gLSBjZW50ZXJQb2ludFswXSk7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZUFuZ2xlKGVuZEFuZ2xlIC0gc3RhcnRBbmdsZSk7XG59O1xuIl19
@@ -22,19 +22,19 @@ export const setClipboardData = async (dataTransfer, clipboardContext) => {
22
22
  if (!clipboardContext) {
23
23
  return;
24
24
  }
25
- const { type, data, text } = clipboardContext;
25
+ const { type, elements, text } = clipboardContext;
26
26
  if (getProbablySupportsClipboardWrite()) {
27
- return await setNavigatorClipboard(type, data, text);
27
+ return await setNavigatorClipboard(type, elements, text);
28
28
  }
29
29
  if (dataTransfer) {
30
- setDataTransferClipboard(dataTransfer, type, data);
30
+ setDataTransferClipboard(dataTransfer, type, elements);
31
31
  setDataTransferClipboardText(dataTransfer, text);
32
32
  return;
33
33
  }
34
34
  // Compatible with situations where navigator.clipboard.write is not supported and dataTransfer is empty
35
35
  // Such as contextmenu copy in Firefox.
36
36
  if (getProbablySupportsClipboardWriteText()) {
37
- return await navigator.clipboard.writeText(buildPlaitHtml(type, data));
37
+ return await navigator.clipboard.writeText(buildPlaitHtml(type, elements));
38
38
  }
39
39
  };
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdXRpbHMvY2xpcGJvYXJkL2NsaXBib2FyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsY0FBYyxFQUNkLGdDQUFnQyxFQUNoQyxpQ0FBaUMsRUFDakMscUNBQXFDLEVBQ3hDLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsNEJBQTRCLEVBQzVCLHdCQUF3QixFQUN4Qiw0QkFBNEIsRUFDL0IsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdyRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsWUFBaUMsRUFBMEIsRUFBRTtJQUNoRyxJQUFJLGFBQWEsR0FBRyxFQUFFLENBQUM7SUFDdkIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNmLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM1QixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDckQsQ0FBQztRQUNELGFBQWEsR0FBRyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2RCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzFDLGFBQWEsR0FBRyw0QkFBNEIsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQ0QsT0FBTyxhQUFhLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksZ0NBQWdDLEVBQUUsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxxQkFBcUIsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFDRCxPQUFPLGFBQWEsQ0FBQztBQUN6QixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsWUFBaUMsRUFBRSxnQkFBaUQsRUFBRSxFQUFFO0lBQzNILElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3BCLE9BQU87SUFDWCxDQUFDO0lBQ0QsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsZ0JBQWdCLENBQUM7SUFFOUMsSUFBSSxpQ0FBaUMsRUFBRSxFQUFFLENBQUM7UUFDdEMsT0FBTyxNQUFNLHFCQUFxQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksWUFBWSxFQUFFLENBQUM7UUFDZix3QkFBd0IsQ0FBQyxZQUFZLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25ELDRCQUE0QixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxPQUFPO0lBQ1gsQ0FBQztJQUVELHdHQUF3RztJQUN4Ryx1Q0FBdUM7SUFDdkMsSUFBSSxxQ0FBcUMsRUFBRSxFQUFFLENBQUM7UUFDMUMsT0FBTyxNQUFNLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBidWlsZFBsYWl0SHRtbCxcbiAgICBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkUmVhZCxcbiAgICBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkV3JpdGUsXG4gICAgZ2V0UHJvYmFibHlTdXBwb3J0c0NsaXBib2FyZFdyaXRlVGV4dFxufSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIGdldERhdGFUcmFuc2ZlckNsaXBib2FyZCxcbiAgICBnZXREYXRhVHJhbnNmZXJDbGlwYm9hcmRUZXh0LFxuICAgIHNldERhdGFUcmFuc2ZlckNsaXBib2FyZCxcbiAgICBzZXREYXRhVHJhbnNmZXJDbGlwYm9hcmRUZXh0XG59IGZyb20gJy4vZGF0YS10cmFuc2Zlcic7XG5pbXBvcnQgeyBnZXROYXZpZ2F0b3JDbGlwYm9hcmQsIHNldE5hdmlnYXRvckNsaXBib2FyZCB9IGZyb20gJy4vbmF2aWdhdG9yLWNsaXBib2FyZCc7XG5pbXBvcnQgeyBDbGlwYm9hcmREYXRhLCBXcml0YWJsZUNsaXBib2FyZENvbnRleHQgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGdldENsaXBib2FyZERhdGEgPSBhc3luYyAoZGF0YVRyYW5zZmVyOiBEYXRhVHJhbnNmZXIgfCBudWxsKTogUHJvbWlzZTxDbGlwYm9hcmREYXRhPiA9PiB7XG4gICAgbGV0IGNsaXBib2FyZERhdGEgPSB7fTtcbiAgICBpZiAoZGF0YVRyYW5zZmVyKSB7XG4gICAgICAgIGlmIChkYXRhVHJhbnNmZXIuZmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4geyBmaWxlczogQXJyYXkuZnJvbShkYXRhVHJhbnNmZXIuZmlsZXMpIH07XG4gICAgICAgIH1cbiAgICAgICAgY2xpcGJvYXJkRGF0YSA9IGdldERhdGFUcmFuc2ZlckNsaXBib2FyZChkYXRhVHJhbnNmZXIpO1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMoY2xpcGJvYXJkRGF0YSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBjbGlwYm9hcmREYXRhID0gZ2V0RGF0YVRyYW5zZmVyQ2xpcGJvYXJkVGV4dChkYXRhVHJhbnNmZXIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjbGlwYm9hcmREYXRhO1xuICAgIH1cbiAgICBpZiAoZ2V0UHJvYmFibHlTdXBwb3J0c0NsaXBib2FyZFJlYWQoKSkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZ2V0TmF2aWdhdG9yQ2xpcGJvYXJkKCk7XG4gICAgfVxuICAgIHJldHVybiBjbGlwYm9hcmREYXRhO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldENsaXBib2FyZERhdGEgPSBhc3luYyAoZGF0YVRyYW5zZmVyOiBEYXRhVHJhbnNmZXIgfCBudWxsLCBjbGlwYm9hcmRDb250ZXh0OiBXcml0YWJsZUNsaXBib2FyZENvbnRleHQgfCBudWxsKSA9PiB7XG4gICAgaWYgKCFjbGlwYm9hcmRDb250ZXh0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgeyB0eXBlLCBkYXRhLCB0ZXh0IH0gPSBjbGlwYm9hcmRDb250ZXh0O1xuXG4gICAgaWYgKGdldFByb2JhYmx5U3VwcG9ydHNDbGlwYm9hcmRXcml0ZSgpKSB7XG4gICAgICAgIHJldHVybiBhd2FpdCBzZXROYXZpZ2F0b3JDbGlwYm9hcmQodHlwZSwgZGF0YSwgdGV4dCk7XG4gICAgfVxuXG4gICAgaWYgKGRhdGFUcmFuc2Zlcikge1xuICAgICAgICBzZXREYXRhVHJhbnNmZXJDbGlwYm9hcmQoZGF0YVRyYW5zZmVyLCB0eXBlLCBkYXRhKTtcbiAgICAgICAgc2V0RGF0YVRyYW5zZmVyQ2xpcGJvYXJkVGV4dChkYXRhVHJhbnNmZXIsIHRleHQpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQ29tcGF0aWJsZSB3aXRoIHNpdHVhdGlvbnMgd2hlcmUgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZSBpcyBub3Qgc3VwcG9ydGVkIGFuZCBkYXRhVHJhbnNmZXIgaXMgZW1wdHlcbiAgICAvLyBTdWNoIGFzIGNvbnRleHRtZW51IGNvcHkgaW4gRmlyZWZveC5cbiAgICBpZiAoZ2V0UHJvYmFibHlTdXBwb3J0c0NsaXBib2FyZFdyaXRlVGV4dCgpKSB7XG4gICAgICAgIHJldHVybiBhd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChidWlsZFBsYWl0SHRtbCh0eXBlLCBkYXRhKSk7XG4gICAgfVxufTtcbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdXRpbHMvY2xpcGJvYXJkL2NsaXBib2FyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsY0FBYyxFQUNkLGdDQUFnQyxFQUNoQyxpQ0FBaUMsRUFDakMscUNBQXFDLEVBQ3hDLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsNEJBQTRCLEVBQzVCLHdCQUF3QixFQUN4Qiw0QkFBNEIsRUFDL0IsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdyRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsWUFBaUMsRUFBMEIsRUFBRTtJQUNoRyxJQUFJLGFBQWEsR0FBRyxFQUFFLENBQUM7SUFDdkIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNmLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM1QixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDckQsQ0FBQztRQUNELGFBQWEsR0FBRyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2RCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzFDLGFBQWEsR0FBRyw0QkFBNEIsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQ0QsT0FBTyxhQUFhLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksZ0NBQWdDLEVBQUUsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxxQkFBcUIsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFDRCxPQUFPLGFBQWEsQ0FBQztBQUN6QixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsWUFBaUMsRUFBRSxnQkFBaUQsRUFBRSxFQUFFO0lBQzNILElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3BCLE9BQU87SUFDWCxDQUFDO0lBQ0QsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsZ0JBQWdCLENBQUM7SUFFbEQsSUFBSSxpQ0FBaUMsRUFBRSxFQUFFLENBQUM7UUFDdEMsT0FBTyxNQUFNLHFCQUFxQixDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQUksWUFBWSxFQUFFLENBQUM7UUFDZix3QkFBd0IsQ0FBQyxZQUFZLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZELDRCQUE0QixDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxPQUFPO0lBQ1gsQ0FBQztJQUVELHdHQUF3RztJQUN4Ryx1Q0FBdUM7SUFDdkMsSUFBSSxxQ0FBcUMsRUFBRSxFQUFFLENBQUM7UUFDMUMsT0FBTyxNQUFNLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBidWlsZFBsYWl0SHRtbCxcbiAgICBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkUmVhZCxcbiAgICBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkV3JpdGUsXG4gICAgZ2V0UHJvYmFibHlTdXBwb3J0c0NsaXBib2FyZFdyaXRlVGV4dFxufSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIGdldERhdGFUcmFuc2ZlckNsaXBib2FyZCxcbiAgICBnZXREYXRhVHJhbnNmZXJDbGlwYm9hcmRUZXh0LFxuICAgIHNldERhdGFUcmFuc2ZlckNsaXBib2FyZCxcbiAgICBzZXREYXRhVHJhbnNmZXJDbGlwYm9hcmRUZXh0XG59IGZyb20gJy4vZGF0YS10cmFuc2Zlcic7XG5pbXBvcnQgeyBnZXROYXZpZ2F0b3JDbGlwYm9hcmQsIHNldE5hdmlnYXRvckNsaXBib2FyZCB9IGZyb20gJy4vbmF2aWdhdG9yLWNsaXBib2FyZCc7XG5pbXBvcnQgeyBDbGlwYm9hcmREYXRhLCBXcml0YWJsZUNsaXBib2FyZENvbnRleHQgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGdldENsaXBib2FyZERhdGEgPSBhc3luYyAoZGF0YVRyYW5zZmVyOiBEYXRhVHJhbnNmZXIgfCBudWxsKTogUHJvbWlzZTxDbGlwYm9hcmREYXRhPiA9PiB7XG4gICAgbGV0IGNsaXBib2FyZERhdGEgPSB7fTtcbiAgICBpZiAoZGF0YVRyYW5zZmVyKSB7XG4gICAgICAgIGlmIChkYXRhVHJhbnNmZXIuZmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4geyBmaWxlczogQXJyYXkuZnJvbShkYXRhVHJhbnNmZXIuZmlsZXMpIH07XG4gICAgICAgIH1cbiAgICAgICAgY2xpcGJvYXJkRGF0YSA9IGdldERhdGFUcmFuc2ZlckNsaXBib2FyZChkYXRhVHJhbnNmZXIpO1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMoY2xpcGJvYXJkRGF0YSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBjbGlwYm9hcmREYXRhID0gZ2V0RGF0YVRyYW5zZmVyQ2xpcGJvYXJkVGV4dChkYXRhVHJhbnNmZXIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjbGlwYm9hcmREYXRhO1xuICAgIH1cbiAgICBpZiAoZ2V0UHJvYmFibHlTdXBwb3J0c0NsaXBib2FyZFJlYWQoKSkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZ2V0TmF2aWdhdG9yQ2xpcGJvYXJkKCk7XG4gICAgfVxuICAgIHJldHVybiBjbGlwYm9hcmREYXRhO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldENsaXBib2FyZERhdGEgPSBhc3luYyAoZGF0YVRyYW5zZmVyOiBEYXRhVHJhbnNmZXIgfCBudWxsLCBjbGlwYm9hcmRDb250ZXh0OiBXcml0YWJsZUNsaXBib2FyZENvbnRleHQgfCBudWxsKSA9PiB7XG4gICAgaWYgKCFjbGlwYm9hcmRDb250ZXh0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgeyB0eXBlLCBlbGVtZW50cywgdGV4dCB9ID0gY2xpcGJvYXJkQ29udGV4dDtcblxuICAgIGlmIChnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkV3JpdGUoKSkge1xuICAgICAgICByZXR1cm4gYXdhaXQgc2V0TmF2aWdhdG9yQ2xpcGJvYXJkKHR5cGUsIGVsZW1lbnRzLCB0ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoZGF0YVRyYW5zZmVyKSB7XG4gICAgICAgIHNldERhdGFUcmFuc2ZlckNsaXBib2FyZChkYXRhVHJhbnNmZXIsIHR5cGUsIGVsZW1lbnRzKTtcbiAgICAgICAgc2V0RGF0YVRyYW5zZmVyQ2xpcGJvYXJkVGV4dChkYXRhVHJhbnNmZXIsIHRleHQpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQ29tcGF0aWJsZSB3aXRoIHNpdHVhdGlvbnMgd2hlcmUgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZSBpcyBub3Qgc3VwcG9ydGVkIGFuZCBkYXRhVHJhbnNmZXIgaXMgZW1wdHlcbiAgICAvLyBTdWNoIGFzIGNvbnRleHRtZW51IGNvcHkgaW4gRmlyZWZveC5cbiAgICBpZiAoZ2V0UHJvYmFibHlTdXBwb3J0c0NsaXBib2FyZFdyaXRlVGV4dCgpKSB7XG4gICAgICAgIHJldHVybiBhd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChidWlsZFBsYWl0SHRtbCh0eXBlLCBlbGVtZW50cykpO1xuICAgIH1cbn07XG4iXX0=
@@ -46,22 +46,22 @@ export const getProbablySupportsClipboardWriteText = () => {
46
46
  export const getProbablySupportsClipboardRead = () => {
47
47
  return 'clipboard' in navigator && 'read' in navigator.clipboard;
48
48
  };
49
- export const createClipboardContext = (type, data, text) => {
49
+ export const createClipboardContext = (type, elements, text) => {
50
50
  return {
51
51
  type,
52
- data,
52
+ elements,
53
53
  text
54
54
  };
55
55
  };
56
56
  export const addClipboardContext = (clipboardContext, addition) => {
57
- const { type, data, text } = clipboardContext;
57
+ const { type, elements, text } = clipboardContext;
58
58
  if (type === addition.type) {
59
59
  return {
60
60
  type,
61
- data: data.concat(addition.data),
61
+ elements: elements.concat(addition.elements),
62
62
  text: text + ' ' + addition.text
63
63
  };
64
64
  }
65
65
  return clipboardContext;
66
66
  };
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdXRpbHMvY2xpcGJvYXJkL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtFLHFCQUFxQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWhILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQTJCLEVBQUUsSUFBMkIsRUFBRSxFQUFFO0lBQ3ZGLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN4QyxJQUFJO1FBQ0osSUFBSTtLQUNQLENBQUMsQ0FBQztJQUNILE9BQU8sVUFBVSxvQkFBb0IsVUFBVSxDQUFDO0FBQ3BELENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsSUFBWSxFQUF3QixFQUFFO0lBQ3ZFLE1BQU0sV0FBVyxHQUFHLElBQUksRUFBRSxLQUFLLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLElBQUksV0FBVyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUM7WUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFDLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ1osSUFBSSxTQUFTLENBQUMsSUFBSSxLQUFLLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNwRCxPQUFPO3dCQUNILFFBQVEsRUFBRSxTQUFTLENBQUMsSUFBSTtxQkFDM0IsQ0FBQztnQkFDTixDQUFDO3FCQUFNLElBQUksU0FBUyxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDekQsT0FBTzt3QkFDSCxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUk7cUJBQ3pCLENBQUM7Z0JBQ04sQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUN0Qyw2SEFBNkg7SUFDN0gsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzRCxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7QUFDNUQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsR0FBRyxFQUFFO0lBQ2xELE9BQU8sV0FBVyxJQUFJLFNBQVMsSUFBSSxPQUFPLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQztBQUN0RSxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxHQUFHLEVBQUU7SUFDdEQsT0FBTyxXQUFXLElBQUksU0FBUyxJQUFJLFdBQVcsSUFBSSxTQUFTLENBQUMsU0FBUyxDQUFDO0FBQzFFLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLEdBQUcsRUFBRTtJQUNqRCxPQUFPLFdBQVcsSUFBSSxTQUFTLElBQUksTUFBTSxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUM7QUFDckUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FDbEMsSUFBMkIsRUFDM0IsSUFBMkIsRUFDM0IsSUFBWSxFQUNZLEVBQUU7SUFDMUIsT0FBTztRQUNILElBQUk7UUFDSixJQUFJO1FBQ0osSUFBSTtLQUNQLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUMvQixnQkFBMEMsRUFDMUMsUUFBa0MsRUFDVixFQUFFO0lBQzFCLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLGdCQUFnQixDQUFDO0lBQzlDLElBQUksSUFBSSxLQUFLLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixPQUFPO1lBQ0gsSUFBSTtZQUNKLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDaEMsSUFBSSxFQUFFLElBQUksR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUk7U0FDbkMsQ0FBQztJQUNOLENBQUM7SUFDRCxPQUFPLGdCQUFnQixDQUFDO0FBQzVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaXBib2FyZERhdGEsIFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dCwgV3JpdGFibGVDbGlwYm9hcmREYXRhLCBXcml0YWJsZUNsaXBib2FyZFR5cGUgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGJ1aWxkUGxhaXRIdG1sID0gKHR5cGU6IFdyaXRhYmxlQ2xpcGJvYXJkVHlwZSwgZGF0YTogV3JpdGFibGVDbGlwYm9hcmREYXRhKSA9PiB7XG4gICAgY29uc3Qgc3RyaW5naWZpZWRDbGlwYm9hcmQgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHR5cGUsXG4gICAgICAgIGRhdGFcbiAgICB9KTtcbiAgICByZXR1cm4gYDxwbGFpdD4ke3N0cmluZ2lmaWVkQ2xpcGJvYXJkfTwvcGxhaXQ+YDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDbGlwYm9hcmRGcm9tSHRtbCA9IChodG1sOiBzdHJpbmcpOiBDbGlwYm9hcmREYXRhIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgcGxhaXRTdHJpbmcgPSBodG1sPy5tYXRjaCgvPHBsYWl0W14+XSo+KC4qKTxcXC9wbGFpdD4vKT8uWzFdO1xuICAgIGlmIChwbGFpdFN0cmluZykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGxhaXRKc29uID0gSlNPTi5wYXJzZShwbGFpdFN0cmluZyk7XG4gICAgICAgICAgICBpZiAocGxhaXRKc29uKSB7XG4gICAgICAgICAgICAgICAgaWYgKHBsYWl0SnNvbi50eXBlID09PSBXcml0YWJsZUNsaXBib2FyZFR5cGUuZWxlbWVudHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnRzOiBwbGFpdEpzb24uZGF0YVxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocGxhaXRKc29uLnR5cGUgPT09IFdyaXRhYmxlQ2xpcGJvYXJkVHlwZS5tZWRpYXMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lZGlhczogcGxhaXRKc29uLmRhdGFcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufTtcblxuZXhwb3J0IGNvbnN0IHN0cmlwSHRtbCA9IChodG1sOiBzdHJpbmcpID0+IHtcbiAgICAvLyBTZWUgPGh0dHBzOi8vZ2l0aHViLmNvbS9kZXZlbG9waXQvcHJlYWN0LW1hcmt1cC9ibG9iLzQ3ODhiOGQ2MWI0ZTI0ZjgzNjg4NzEwNzQ2ZWUzNmU3NDY0ZjdiYmMvc3JjL3BhcnNlLW1hcmt1cC5qcyNMNjAtTDY5PlxuICAgIGNvbnN0IGRvYyA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgnJyk7XG4gICAgZG9jLmRvY3VtZW50RWxlbWVudC5pbm5lckhUTUwgPSBodG1sLnRyaW0oKTtcbiAgICByZXR1cm4gZG9jLmJvZHkudGV4dENvbnRlbnQgfHwgZG9jLmJvZHkuaW5uZXJUZXh0IHx8ICcnO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFByb2JhYmx5U3VwcG9ydHNDbGlwYm9hcmRXcml0ZSA9ICgpID0+IHtcbiAgICByZXR1cm4gJ2NsaXBib2FyZCcgaW4gbmF2aWdhdG9yICYmICd3cml0ZScgaW4gbmF2aWdhdG9yLmNsaXBib2FyZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkV3JpdGVUZXh0ID0gKCkgPT4ge1xuICAgIHJldHVybiAnY2xpcGJvYXJkJyBpbiBuYXZpZ2F0b3IgJiYgJ3dyaXRlVGV4dCcgaW4gbmF2aWdhdG9yLmNsaXBib2FyZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkUmVhZCA9ICgpID0+IHtcbiAgICByZXR1cm4gJ2NsaXBib2FyZCcgaW4gbmF2aWdhdG9yICYmICdyZWFkJyBpbiBuYXZpZ2F0b3IuY2xpcGJvYXJkO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNsaXBib2FyZENvbnRleHQgPSAoXG4gICAgdHlwZTogV3JpdGFibGVDbGlwYm9hcmRUeXBlLFxuICAgIGRhdGE6IFdyaXRhYmxlQ2xpcGJvYXJkRGF0YSxcbiAgICB0ZXh0OiBzdHJpbmdcbik6IFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dCA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZSxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgdGV4dFxuICAgIH07XG59O1xuXG5leHBvcnQgY29uc3QgYWRkQ2xpcGJvYXJkQ29udGV4dCA9IChcbiAgICBjbGlwYm9hcmRDb250ZXh0OiBXcml0YWJsZUNsaXBib2FyZENvbnRleHQsXG4gICAgYWRkaXRpb246IFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dFxuKTogV3JpdGFibGVDbGlwYm9hcmRDb250ZXh0ID0+IHtcbiAgICBjb25zdCB7IHR5cGUsIGRhdGEsIHRleHQgfSA9IGNsaXBib2FyZENvbnRleHQ7XG4gICAgaWYgKHR5cGUgPT09IGFkZGl0aW9uLnR5cGUpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBkYXRhOiBkYXRhLmNvbmNhdChhZGRpdGlvbi5kYXRhKSxcbiAgICAgICAgICAgIHRleHQ6IHRleHQgKyAnICcgKyBhZGRpdGlvbi50ZXh0XG4gICAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBjbGlwYm9hcmRDb250ZXh0O1xufTtcbiJdfQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdXRpbHMvY2xpcGJvYXJkL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtFLHFCQUFxQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWhILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQTJCLEVBQUUsSUFBMkIsRUFBRSxFQUFFO0lBQ3ZGLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN4QyxJQUFJO1FBQ0osSUFBSTtLQUNQLENBQUMsQ0FBQztJQUNILE9BQU8sVUFBVSxvQkFBb0IsVUFBVSxDQUFDO0FBQ3BELENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsSUFBWSxFQUF3QixFQUFFO0lBQ3ZFLE1BQU0sV0FBVyxHQUFHLElBQUksRUFBRSxLQUFLLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLElBQUksV0FBVyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUM7WUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFDLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ1osSUFBSSxTQUFTLENBQUMsSUFBSSxLQUFLLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNwRCxPQUFPO3dCQUNILFFBQVEsRUFBRSxTQUFTLENBQUMsSUFBSTtxQkFDM0IsQ0FBQztnQkFDTixDQUFDO3FCQUFNLElBQUksU0FBUyxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDekQsT0FBTzt3QkFDSCxNQUFNLEVBQUUsU0FBUyxDQUFDLElBQUk7cUJBQ3pCLENBQUM7Z0JBQ04sQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUN0Qyw2SEFBNkg7SUFDN0gsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzRCxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7QUFDNUQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsR0FBRyxFQUFFO0lBQ2xELE9BQU8sV0FBVyxJQUFJLFNBQVMsSUFBSSxPQUFPLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQztBQUN0RSxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxHQUFHLEVBQUU7SUFDdEQsT0FBTyxXQUFXLElBQUksU0FBUyxJQUFJLFdBQVcsSUFBSSxTQUFTLENBQUMsU0FBUyxDQUFDO0FBQzFFLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLEdBQUcsRUFBRTtJQUNqRCxPQUFPLFdBQVcsSUFBSSxTQUFTLElBQUksTUFBTSxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUM7QUFDckUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FDbEMsSUFBMkIsRUFDM0IsUUFBK0IsRUFDL0IsSUFBWSxFQUNZLEVBQUU7SUFDMUIsT0FBTztRQUNILElBQUk7UUFDSixRQUFRO1FBQ1IsSUFBSTtLQUNQLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUMvQixnQkFBMEMsRUFDMUMsUUFBa0MsRUFDVixFQUFFO0lBQzFCLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLGdCQUFnQixDQUFDO0lBQ2xELElBQUksSUFBSSxLQUFLLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixPQUFPO1lBQ0gsSUFBSTtZQUNKLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7WUFDNUMsSUFBSSxFQUFFLElBQUksR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUk7U0FDbkMsQ0FBQztJQUNOLENBQUM7SUFDRCxPQUFPLGdCQUFnQixDQUFDO0FBQzVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaXBib2FyZERhdGEsIFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dCwgV3JpdGFibGVDbGlwYm9hcmREYXRhLCBXcml0YWJsZUNsaXBib2FyZFR5cGUgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IGJ1aWxkUGxhaXRIdG1sID0gKHR5cGU6IFdyaXRhYmxlQ2xpcGJvYXJkVHlwZSwgZGF0YTogV3JpdGFibGVDbGlwYm9hcmREYXRhKSA9PiB7XG4gICAgY29uc3Qgc3RyaW5naWZpZWRDbGlwYm9hcmQgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHR5cGUsXG4gICAgICAgIGRhdGFcbiAgICB9KTtcbiAgICByZXR1cm4gYDxwbGFpdD4ke3N0cmluZ2lmaWVkQ2xpcGJvYXJkfTwvcGxhaXQ+YDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDbGlwYm9hcmRGcm9tSHRtbCA9IChodG1sOiBzdHJpbmcpOiBDbGlwYm9hcmREYXRhIHwgbnVsbCA9PiB7XG4gICAgY29uc3QgcGxhaXRTdHJpbmcgPSBodG1sPy5tYXRjaCgvPHBsYWl0W14+XSo+KC4qKTxcXC9wbGFpdD4vKT8uWzFdO1xuICAgIGlmIChwbGFpdFN0cmluZykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGxhaXRKc29uID0gSlNPTi5wYXJzZShwbGFpdFN0cmluZyk7XG4gICAgICAgICAgICBpZiAocGxhaXRKc29uKSB7XG4gICAgICAgICAgICAgICAgaWYgKHBsYWl0SnNvbi50eXBlID09PSBXcml0YWJsZUNsaXBib2FyZFR5cGUuZWxlbWVudHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnRzOiBwbGFpdEpzb24uZGF0YVxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocGxhaXRKc29uLnR5cGUgPT09IFdyaXRhYmxlQ2xpcGJvYXJkVHlwZS5tZWRpYXMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lZGlhczogcGxhaXRKc29uLmRhdGFcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufTtcblxuZXhwb3J0IGNvbnN0IHN0cmlwSHRtbCA9IChodG1sOiBzdHJpbmcpID0+IHtcbiAgICAvLyBTZWUgPGh0dHBzOi8vZ2l0aHViLmNvbS9kZXZlbG9waXQvcHJlYWN0LW1hcmt1cC9ibG9iLzQ3ODhiOGQ2MWI0ZTI0ZjgzNjg4NzEwNzQ2ZWUzNmU3NDY0ZjdiYmMvc3JjL3BhcnNlLW1hcmt1cC5qcyNMNjAtTDY5PlxuICAgIGNvbnN0IGRvYyA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgnJyk7XG4gICAgZG9jLmRvY3VtZW50RWxlbWVudC5pbm5lckhUTUwgPSBodG1sLnRyaW0oKTtcbiAgICByZXR1cm4gZG9jLmJvZHkudGV4dENvbnRlbnQgfHwgZG9jLmJvZHkuaW5uZXJUZXh0IHx8ICcnO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFByb2JhYmx5U3VwcG9ydHNDbGlwYm9hcmRXcml0ZSA9ICgpID0+IHtcbiAgICByZXR1cm4gJ2NsaXBib2FyZCcgaW4gbmF2aWdhdG9yICYmICd3cml0ZScgaW4gbmF2aWdhdG9yLmNsaXBib2FyZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkV3JpdGVUZXh0ID0gKCkgPT4ge1xuICAgIHJldHVybiAnY2xpcGJvYXJkJyBpbiBuYXZpZ2F0b3IgJiYgJ3dyaXRlVGV4dCcgaW4gbmF2aWdhdG9yLmNsaXBib2FyZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRQcm9iYWJseVN1cHBvcnRzQ2xpcGJvYXJkUmVhZCA9ICgpID0+IHtcbiAgICByZXR1cm4gJ2NsaXBib2FyZCcgaW4gbmF2aWdhdG9yICYmICdyZWFkJyBpbiBuYXZpZ2F0b3IuY2xpcGJvYXJkO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNsaXBib2FyZENvbnRleHQgPSAoXG4gICAgdHlwZTogV3JpdGFibGVDbGlwYm9hcmRUeXBlLFxuICAgIGVsZW1lbnRzOiBXcml0YWJsZUNsaXBib2FyZERhdGEsXG4gICAgdGV4dDogc3RyaW5nXG4pOiBXcml0YWJsZUNsaXBib2FyZENvbnRleHQgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAgIHR5cGUsXG4gICAgICAgIGVsZW1lbnRzLFxuICAgICAgICB0ZXh0XG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBhZGRDbGlwYm9hcmRDb250ZXh0ID0gKFxuICAgIGNsaXBib2FyZENvbnRleHQ6IFdyaXRhYmxlQ2xpcGJvYXJkQ29udGV4dCxcbiAgICBhZGRpdGlvbjogV3JpdGFibGVDbGlwYm9hcmRDb250ZXh0XG4pOiBXcml0YWJsZUNsaXBib2FyZENvbnRleHQgPT4ge1xuICAgIGNvbnN0IHsgdHlwZSwgZWxlbWVudHMsIHRleHQgfSA9IGNsaXBib2FyZENvbnRleHQ7XG4gICAgaWYgKHR5cGUgPT09IGFkZGl0aW9uLnR5cGUpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBlbGVtZW50czogZWxlbWVudHMuY29uY2F0KGFkZGl0aW9uLmVsZW1lbnRzKSxcbiAgICAgICAgICAgIHRleHQ6IHRleHQgKyAnICcgKyBhZGRpdGlvbi50ZXh0XG4gICAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBjbGlwYm9hcmRDb250ZXh0O1xufTtcbiJdfQ==
@@ -3,4 +3,4 @@ export var WritableClipboardType;
3
3
  WritableClipboardType["medias"] = "medias";
4
4
  WritableClipboardType["elements"] = "elements";
5
5
  })(WritableClipboardType || (WritableClipboardType = {}));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlscy9jbGlwYm9hcmQvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVkscUJBR1g7QUFIRCxXQUFZLHFCQUFxQjtJQUM3QiwwQ0FBbUIsQ0FBQTtJQUNuQiw4Q0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcscUJBQXFCLEtBQXJCLHFCQUFxQixRQUdoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0RWxlbWVudCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgZW51bSBXcml0YWJsZUNsaXBib2FyZFR5cGUge1xuICAgICdtZWRpYXMnID0gJ21lZGlhcycsXG4gICAgJ2VsZW1lbnRzJyA9ICdlbGVtZW50cydcbn1cblxuZXhwb3J0IHR5cGUgV3JpdGFibGVDbGlwYm9hcmREYXRhID0gUGxhaXRFbGVtZW50W10gfCBhbnlbXTtcblxuZXhwb3J0IGludGVyZmFjZSBXcml0YWJsZUNsaXBib2FyZENvbnRleHQge1xuICAgIHRleHQ6IHN0cmluZztcbiAgICB0eXBlOiBXcml0YWJsZUNsaXBib2FyZFR5cGU7XG4gICAgZGF0YTogV3JpdGFibGVDbGlwYm9hcmREYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENsaXBib2FyZERhdGEge1xuICAgIGZpbGVzPzogRmlsZVtdO1xuICAgIGVsZW1lbnRzPzogUGxhaXRFbGVtZW50W107XG4gICAgbWVkaWFzPzogYW55W107XG4gICAgdGV4dD86IHN0cmluZztcbn1cbiJdfQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlscy9jbGlwYm9hcmQvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVkscUJBR1g7QUFIRCxXQUFZLHFCQUFxQjtJQUM3QiwwQ0FBbUIsQ0FBQTtJQUNuQiw4Q0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcscUJBQXFCLEtBQXJCLHFCQUFxQixRQUdoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0RWxlbWVudCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgZW51bSBXcml0YWJsZUNsaXBib2FyZFR5cGUge1xuICAgICdtZWRpYXMnID0gJ21lZGlhcycsXG4gICAgJ2VsZW1lbnRzJyA9ICdlbGVtZW50cydcbn1cblxuZXhwb3J0IHR5cGUgV3JpdGFibGVDbGlwYm9hcmREYXRhID0gUGxhaXRFbGVtZW50W10gfCBhbnlbXTtcblxuZXhwb3J0IGludGVyZmFjZSBXcml0YWJsZUNsaXBib2FyZENvbnRleHQge1xuICAgIHRleHQ6IHN0cmluZztcbiAgICB0eXBlOiBXcml0YWJsZUNsaXBib2FyZFR5cGU7XG4gICAgZWxlbWVudHM6IFdyaXRhYmxlQ2xpcGJvYXJkRGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbGlwYm9hcmREYXRhIHtcbiAgICBmaWxlcz86IEZpbGVbXTtcbiAgICBlbGVtZW50cz86IFBsYWl0RWxlbWVudFtdO1xuICAgIG1lZGlhcz86IGFueVtdO1xuICAgIHRleHQ/OiBzdHJpbmc7XG59XG4iXX0=
@@ -1,5 +1,7 @@
1
1
  import { PlaitBoard } from '../interfaces/board';
2
2
  import { timer } from 'rxjs';
3
+ import { NodeTransforms } from '../transforms/node';
4
+ import { sortElements } from './position';
3
5
  const BOARD_TO_RAF = new WeakMap();
4
6
  const getTimerId = (board, key) => {
5
7
  const state = getRAFState(board);
@@ -45,4 +47,30 @@ export const debounce = (func, wait, options) => {
45
47
  }
46
48
  };
47
49
  };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdXRpbHMvY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxNQUFNLFlBQVksR0FBRyxJQUFJLE9BQU8sRUFBZ0QsQ0FBQztBQUVqRixNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQWlCLEVBQUUsR0FBVyxFQUFFLEVBQUU7SUFDbEQsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRixNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUN0QyxPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ3pDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsR0FBVyxFQUFFLEVBQWMsRUFBRSxFQUFFO0lBQzFFLE1BQU0sWUFBWSxHQUFHLEdBQUcsRUFBRTtRQUN0QixJQUFJLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUU7WUFDckMsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDNUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztZQUNsQixZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMvQixVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUM7UUFDckIsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQyxDQUFDO0lBQ0YsSUFBSSxPQUFPLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNyQyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNuQixvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsWUFBWSxFQUFFLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBZ0IsRUFBRSxJQUFZLEVBQUUsT0FBOEIsRUFBRSxFQUFFO0lBQ3ZGLElBQUksaUJBQWlCLEdBQXdCLElBQUksQ0FBQztJQUNsRCxPQUFPLEdBQUcsRUFBRTtRQUNSLElBQUksaUJBQWlCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNqRCxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNoQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDM0MsSUFBSSxFQUFFLENBQUM7WUFDWCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUM7Z0JBQ25CLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNwQixJQUFJLEVBQUUsQ0FBQztnQkFDWCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7WUFDRCxpQkFBaUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEQsQ0FBQztJQUNMLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBsYWl0Qm9hcmQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2JvYXJkJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcblxuY29uc3QgQk9BUkRfVE9fUkFGID0gbmV3IFdlYWtNYXA8UGxhaXRCb2FyZCwgeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfCBudWxsIH0+KCk7XG5cbmNvbnN0IGdldFRpbWVySWQgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGtleTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3Qgc3RhdGUgPSBnZXRSQUZTdGF0ZShib2FyZCk7XG4gICAgcmV0dXJuIHN0YXRlW2tleV0gfHwgbnVsbDtcbn07XG5cbmNvbnN0IGdldFJBRlN0YXRlID0gKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB7XG4gICAgcmV0dXJuIEJPQVJEX1RPX1JBRi5nZXQoYm9hcmQpIHx8IHt9O1xufTtcblxuZXhwb3J0IGNvbnN0IHRocm90dGxlUkFGID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBrZXk6IHN0cmluZywgZm46ICgpID0+IHZvaWQpID0+IHtcbiAgICBjb25zdCBzY2hlZHVsZUZ1bmMgPSAoKSA9PiB7XG4gICAgICAgIGxldCB0aW1lcklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gQk9BUkRfVE9fUkFGLmdldChib2FyZCkgfHwge307XG4gICAgICAgICAgICB2YWx1ZVtrZXldID0gbnVsbDtcbiAgICAgICAgICAgIEJPQVJEX1RPX1JBRi5zZXQoYm9hcmQsIHZhbHVlKTtcbiAgICAgICAgICAgIFBsYWl0Qm9hcmQuaXNBbGl2ZShib2FyZCkgJiYgZm4oKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gZ2V0UkFGU3RhdGUoYm9hcmQpO1xuICAgICAgICBzdGF0ZVtrZXldID0gdGltZXJJZDtcbiAgICAgICAgQk9BUkRfVE9fUkFGLnNldChib2FyZCwgc3RhdGUpO1xuICAgIH07XG4gICAgbGV0IHRpbWVySWQgPSBnZXRUaW1lcklkKGJvYXJkLCBrZXkpO1xuICAgIGlmICh0aW1lcklkICE9PSBudWxsKSB7XG4gICAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRpbWVySWQpO1xuICAgIH1cbiAgICBzY2hlZHVsZUZ1bmMoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBkZWJvdW5jZSA9IChmdW5jOiAoKSA9PiB2b2lkLCB3YWl0OiBudW1iZXIsIG9wdGlvbnM/OiB7IGxlYWRpbmc6IGJvb2xlYW4gfSkgPT4ge1xuICAgIGxldCB0aW1lclN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaWYgKHRpbWVyU3Vic2NyaXB0aW9uICYmICF0aW1lclN1YnNjcmlwdGlvbi5jbG9zZWQpIHtcbiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IHRpbWVyKHdhaXQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgZnVuYygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucz8ubGVhZGluZykge1xuICAgICAgICAgICAgICAgIHRpbWVyKDApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGZ1bmMoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRpbWVyU3Vic2NyaXB0aW9uID0gdGltZXIod2FpdCkuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9O1xufTtcbiJdfQ==
50
+ export const getElementsIndices = (board, elements) => {
51
+ sortElements(board, elements);
52
+ return elements
53
+ .map(item => {
54
+ return board.children.map(item => item.id).indexOf(item.id);
55
+ })
56
+ .filter(item => item >= 0);
57
+ };
58
+ export const getHighestIndexOfElement = (board, elements) => {
59
+ const indices = getElementsIndices(board, elements);
60
+ return indices[indices.length - 1];
61
+ };
62
+ export const moveElementsToNewPath = (board, moveOptions) => {
63
+ moveOptions
64
+ .map(item => {
65
+ const path = PlaitBoard.findPath(board, item.element);
66
+ const ref = board.pathRef(path);
67
+ return () => {
68
+ ref.current && NodeTransforms.moveNode(board, ref.current, item.newPath);
69
+ ref.unref();
70
+ };
71
+ })
72
+ .forEach(action => {
73
+ action();
74
+ });
75
+ };
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvdXRpbHMvY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUxQyxNQUFNLFlBQVksR0FBRyxJQUFJLE9BQU8sRUFBZ0QsQ0FBQztBQU9qRixNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQWlCLEVBQUUsR0FBVyxFQUFFLEVBQUU7SUFDbEQsTUFBTSxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRixNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUN0QyxPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ3pDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsR0FBVyxFQUFFLEVBQWMsRUFBRSxFQUFFO0lBQzFFLE1BQU0sWUFBWSxHQUFHLEdBQUcsRUFBRTtRQUN0QixJQUFJLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUU7WUFDckMsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDNUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztZQUNsQixZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssRUFB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QUFHLEVBQUU7WUFDUixHQUFHLENBQUMsT0FBTyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUM7SUFDTixDQUFDLENBQUM7U0FDRCxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDZCxNQUFNLEVBQUUsQ0FBQztJQUNiLENBQUMsQ0FBQyxDQUFDO0FBQ1gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF0aCwgUGxhaXRFbGVtZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBQbGFpdEJvYXJkIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ib2FyZCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOb2RlVHJhbnNmb3JtcyB9IGZyb20gJy4uL3RyYW5zZm9ybXMvbm9kZSc7XG5pbXBvcnQgeyBzb3J0RWxlbWVudHMgfSBmcm9tICcuL3Bvc2l0aW9uJztcblxuY29uc3QgQk9BUkRfVE9fUkFGID0gbmV3IFdlYWtNYXA8UGxhaXRCb2FyZCwgeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfCBudWxsIH0+KCk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW92ZU5vZGVPcHRpb24ge1xuICAgIGVsZW1lbnQ6IFBsYWl0RWxlbWVudDtcbiAgICBuZXdQYXRoOiBQYXRoO1xufVxuXG5jb25zdCBnZXRUaW1lcklkID0gKGJvYXJkOiBQbGFpdEJvYXJkLCBrZXk6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHN0YXRlID0gZ2V0UkFGU3RhdGUoYm9hcmQpO1xuICAgIHJldHVybiBzdGF0ZVtrZXldIHx8IG51bGw7XG59O1xuXG5jb25zdCBnZXRSQUZTdGF0ZSA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIHJldHVybiBCT0FSRF9UT19SQUYuZ2V0KGJvYXJkKSB8fCB7fTtcbn07XG5cbmV4cG9ydCBjb25zdCB0aHJvdHRsZVJBRiA9IChib2FyZDogUGxhaXRCb2FyZCwga2V5OiBzdHJpbmcsIGZuOiAoKSA9PiB2b2lkKSA9PiB7XG4gICAgY29uc3Qgc2NoZWR1bGVGdW5jID0gKCkgPT4ge1xuICAgICAgICBsZXQgdGltZXJJZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IEJPQVJEX1RPX1JBRi5nZXQoYm9hcmQpIHx8IHt9O1xuICAgICAgICAgICAgdmFsdWVba2V5XSA9IG51bGw7XG4gICAgICAgICAgICBCT0FSRF9UT19SQUYuc2V0KGJvYXJkLCB2YWx1ZSk7XG4gICAgICAgICAgICBQbGFpdEJvYXJkLmlzQWxpdmUoYm9hcmQpICYmIGZuKCk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBzdGF0ZSA9IGdldFJBRlN0YXRlKGJvYXJkKTtcbiAgICAgICAgc3RhdGVba2V5XSA9IHRpbWVySWQ7XG4gICAgICAgIEJPQVJEX1RPX1JBRi5zZXQoYm9hcmQsIHN0YXRlKTtcbiAgICB9O1xuICAgIGxldCB0aW1lcklkID0gZ2V0VGltZXJJZChib2FyZCwga2V5KTtcbiAgICBpZiAodGltZXJJZCAhPT0gbnVsbCkge1xuICAgICAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aW1lcklkKTtcbiAgICB9XG4gICAgc2NoZWR1bGVGdW5jKCk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVib3VuY2UgPSAoZnVuYzogKCkgPT4gdm9pZCwgd2FpdDogbnVtYmVyLCBvcHRpb25zPzogeyBsZWFkaW5nOiBib29sZWFuIH0pID0+IHtcbiAgICBsZXQgdGltZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGlmICh0aW1lclN1YnNjcmlwdGlvbiAmJiAhdGltZXJTdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGltZXJTdWJzY3JpcHRpb24gPSB0aW1lcih3YWl0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGZ1bmMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKG9wdGlvbnM/LmxlYWRpbmcpIHtcbiAgICAgICAgICAgICAgICB0aW1lcigwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBmdW5jKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aW1lclN1YnNjcmlwdGlvbiA9IHRpbWVyKHdhaXQpLnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRFbGVtZW50c0luZGljZXMgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzOiBQbGFpdEVsZW1lbnRbXSk6IG51bWJlcltdID0+IHtcbiAgICBzb3J0RWxlbWVudHMoYm9hcmQsIGVsZW1lbnRzKTtcbiAgICByZXR1cm4gZWxlbWVudHNcbiAgICAgICAgLm1hcChpdGVtID0+IHtcbiAgICAgICAgICAgIHJldHVybiBib2FyZC5jaGlsZHJlbi5tYXAoaXRlbSA9PiBpdGVtLmlkKS5pbmRleE9mKGl0ZW0uaWQpO1xuICAgICAgICB9KVxuICAgICAgICAuZmlsdGVyKGl0ZW0gPT4gaXRlbSA+PSAwKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRIaWdoZXN0SW5kZXhPZkVsZW1lbnQgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzOiBQbGFpdEVsZW1lbnRbXSkgPT4ge1xuICAgIGNvbnN0IGluZGljZXMgPSBnZXRFbGVtZW50c0luZGljZXMoYm9hcmQsIGVsZW1lbnRzKTtcbiAgICByZXR1cm4gaW5kaWNlc1tpbmRpY2VzLmxlbmd0aCAtIDFdO1xufTtcblxuZXhwb3J0IGNvbnN0IG1vdmVFbGVtZW50c1RvTmV3UGF0aCA9IChib2FyZDogUGxhaXRCb2FyZCwgbW92ZU9wdGlvbnM6IE1vdmVOb2RlT3B0aW9uW10pID0+IHtcbiAgICBtb3ZlT3B0aW9uc1xuICAgICAgICAubWFwKGl0ZW0gPT4ge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IFBsYWl0Qm9hcmQuZmluZFBhdGgoYm9hcmQsIGl0ZW0uZWxlbWVudCk7XG4gICAgICAgICAgICBjb25zdCByZWYgPSBib2FyZC5wYXRoUmVmKHBhdGgpO1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgICAgICByZWYuY3VycmVudCAmJiBOb2RlVHJhbnNmb3Jtcy5tb3ZlTm9kZShib2FyZCwgcmVmLmN1cnJlbnQsIGl0ZW0ubmV3UGF0aCk7XG4gICAgICAgICAgICAgICAgcmVmLnVucmVmKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9KVxuICAgICAgICAuZm9yRWFjaChhY3Rpb24gPT4ge1xuICAgICAgICAgICAgYWN0aW9uKCk7XG4gICAgICAgIH0pO1xufTtcbiJdfQ==
@@ -1,5 +1,26 @@
1
+ import { setClipboardData } from './clipboard/clipboard';
2
+ import { getRectangleByElements } from './element';
3
+ import { getSelectedElements } from './selected-element';
1
4
  export const deleteFragment = (board) => {
2
5
  const elements = board.getDeletedFragment([]);
3
6
  board.deleteFragment(elements);
4
7
  };
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhZ21lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlscy9mcmFnbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFpQixFQUFFLEVBQUU7SUFDaEQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhaXRCb2FyZCB9IGZyb20gXCIuLi9pbnRlcmZhY2VzXCI7XG5cbmV4cG9ydCBjb25zdCBkZWxldGVGcmFnbWVudCA9IChib2FyZDogUGxhaXRCb2FyZCkgPT4ge1xuICAgIGNvbnN0IGVsZW1lbnRzID0gYm9hcmQuZ2V0RGVsZXRlZEZyYWdtZW50KFtdKTtcbiAgICBib2FyZC5kZWxldGVGcmFnbWVudChlbGVtZW50cyk7XG59Il19
8
+ export const setFragment = (board, type, clipboardData) => {
9
+ const selectedElements = getSelectedElements(board);
10
+ const rectangle = getRectangleByElements(board, selectedElements, false);
11
+ const clipboardContext = board.buildFragment(null, rectangle, type);
12
+ clipboardContext && setClipboardData(clipboardData, clipboardContext);
13
+ };
14
+ export const duplicateElements = (board, elements) => {
15
+ const selectedElements = elements || getSelectedElements(board);
16
+ const rectangle = getRectangleByElements(board, selectedElements, false);
17
+ const clipboardContext = board.buildFragment(null, rectangle, 'copy');
18
+ const stringifiedContext = clipboardContext && JSON.stringify(clipboardContext);
19
+ const clonedContext = stringifiedContext && JSON.parse(stringifiedContext);
20
+ clonedContext &&
21
+ board.insertFragment({
22
+ ...clonedContext,
23
+ text: undefined
24
+ }, [rectangle.x + rectangle.width / 2, rectangle.y + rectangle.height / 2]);
25
+ };
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhZ21lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy91dGlscy9mcmFnbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFekQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBaUIsRUFBRSxFQUFFO0lBQ2hELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ25DLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWlCLEVBQUUsSUFBb0IsRUFBRSxhQUFrQyxFQUFFLEVBQUU7SUFDdkcsTUFBTSxnQkFBZ0IsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRCxNQUFNLFNBQVMsR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekUsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEUsZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsYUFBYSxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDMUUsQ0FBQyxDQUFDO0FBR0YsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxLQUFpQixFQUFFLFFBQXlCLEVBQUUsRUFBRTtJQUM5RSxNQUFNLGdCQUFnQixHQUFHLFFBQVEsSUFBSSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRSxNQUFNLFNBQVMsR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekUsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEUsTUFBTSxrQkFBa0IsR0FBRyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDaEYsTUFBTSxhQUFhLEdBQUcsa0JBQWtCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzNFLGFBQWE7UUFDVCxLQUFLLENBQUMsY0FBYyxDQUNoQjtZQUNJLEdBQUcsYUFBYTtZQUNoQixJQUFJLEVBQUUsU0FBUztTQUNsQixFQUNELENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQzFFLENBQUM7QUFDVixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGFpdEJvYXJkLCBQbGFpdEVsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IHNldENsaXBib2FyZERhdGEgfSBmcm9tICcuL2NsaXBib2FyZC9jbGlwYm9hcmQnO1xuaW1wb3J0IHsgZ2V0UmVjdGFuZ2xlQnlFbGVtZW50cyB9IGZyb20gJy4vZWxlbWVudCc7XG5pbXBvcnQgeyBnZXRTZWxlY3RlZEVsZW1lbnRzIH0gZnJvbSAnLi9zZWxlY3RlZC1lbGVtZW50JztcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZUZyYWdtZW50ID0gKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB7XG4gICAgY29uc3QgZWxlbWVudHMgPSBib2FyZC5nZXREZWxldGVkRnJhZ21lbnQoW10pO1xuICAgIGJvYXJkLmRlbGV0ZUZyYWdtZW50KGVsZW1lbnRzKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzZXRGcmFnbWVudCA9IChib2FyZDogUGxhaXRCb2FyZCwgdHlwZTogJ2NvcHknIHwgJ2N1dCcsIGNsaXBib2FyZERhdGE6IERhdGFUcmFuc2ZlciB8IG51bGwpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzID0gZ2V0U2VsZWN0ZWRFbGVtZW50cyhib2FyZCk7XG4gICAgY29uc3QgcmVjdGFuZ2xlID0gZ2V0UmVjdGFuZ2xlQnlFbGVtZW50cyhib2FyZCwgc2VsZWN0ZWRFbGVtZW50cywgZmFsc2UpO1xuICAgIGNvbnN0IGNsaXBib2FyZENvbnRleHQgPSBib2FyZC5idWlsZEZyYWdtZW50KG51bGwsIHJlY3RhbmdsZSwgdHlwZSk7XG4gICAgY2xpcGJvYXJkQ29udGV4dCAmJiBzZXRDbGlwYm9hcmREYXRhKGNsaXBib2FyZERhdGEsIGNsaXBib2FyZENvbnRleHQpO1xufTtcblxuXG5leHBvcnQgY29uc3QgZHVwbGljYXRlRWxlbWVudHMgPSAoYm9hcmQ6IFBsYWl0Qm9hcmQsIGVsZW1lbnRzPzogUGxhaXRFbGVtZW50W10pID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzID0gZWxlbWVudHMgfHwgZ2V0U2VsZWN0ZWRFbGVtZW50cyhib2FyZCk7XG4gICAgY29uc3QgcmVjdGFuZ2xlID0gZ2V0UmVjdGFuZ2xlQnlFbGVtZW50cyhib2FyZCwgc2VsZWN0ZWRFbGVtZW50cywgZmFsc2UpO1xuICAgIGNvbnN0IGNsaXBib2FyZENvbnRleHQgPSBib2FyZC5idWlsZEZyYWdtZW50KG51bGwsIHJlY3RhbmdsZSwgJ2NvcHknKTtcbiAgICBjb25zdCBzdHJpbmdpZmllZENvbnRleHQgPSBjbGlwYm9hcmRDb250ZXh0ICYmIEpTT04uc3RyaW5naWZ5KGNsaXBib2FyZENvbnRleHQpO1xuICAgIGNvbnN0IGNsb25lZENvbnRleHQgPSBzdHJpbmdpZmllZENvbnRleHQgJiYgSlNPTi5wYXJzZShzdHJpbmdpZmllZENvbnRleHQpO1xuICAgIGNsb25lZENvbnRleHQgJiZcbiAgICAgICAgYm9hcmQuaW5zZXJ0RnJhZ21lbnQoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgLi4uY2xvbmVkQ29udGV4dCxcbiAgICAgICAgICAgICAgICB0ZXh0OiB1bmRlZmluZWRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBbcmVjdGFuZ2xlLnggKyByZWN0YW5nbGUud2lkdGggLyAyLCByZWN0YW5nbGUueSArIHJlY3RhbmdsZS5oZWlnaHQgLyAyXVxuICAgICAgICApO1xufTtcbiJdfQ==