rete-angular-plugin 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/12/bundles/rete-angular-plugin-ng12.umd.js +55 -23
- package/12/bundles/rete-angular-plugin-ng12.umd.js.map +1 -1
- package/12/core.d.ts +21 -1
- package/12/esm2015/core.js +17 -1
- package/12/esm2015/index.js +2 -1
- package/12/esm2015/module.js +3 -2
- package/12/esm2015/presets/classic/components/control/control.component.js +1 -1
- package/12/esm2015/presets/classic/components/node/node.component.js +4 -24
- package/12/esm2015/presets/classic/index.js +4 -1
- package/12/esm2015/presets/context-menu/index.js +4 -1
- package/12/esm2015/presets/index.js +5 -1
- package/12/esm2015/presets/minimap/index.js +4 -1
- package/12/esm2015/presets/reroute/index.js +4 -1
- package/12/esm2015/ref.js +27 -0
- package/12/fesm2015/rete-angular-plugin-ng12.js +57 -20
- package/12/fesm2015/rete-angular-plugin-ng12.js.map +1 -1
- package/12/index.d.ts +1 -0
- package/12/module.d.ts +8 -7
- package/12/presets/classic/components/node/node.component.d.ts +1 -10
- package/12/presets/classic/index.d.ts +3 -0
- package/12/presets/context-menu/index.d.ts +3 -0
- package/12/presets/index.d.ts +4 -0
- package/12/presets/minimap/index.d.ts +3 -0
- package/12/presets/reroute/index.d.ts +3 -0
- package/12/ref.d.ts +12 -0
- package/13/core.d.ts +21 -1
- package/13/esm2020/core.mjs +17 -1
- package/13/esm2020/index.mjs +2 -1
- package/13/esm2020/module.mjs +3 -2
- package/13/esm2020/presets/classic/components/control/control.component.mjs +1 -1
- package/13/esm2020/presets/classic/components/node/node.component.mjs +4 -24
- package/13/esm2020/presets/classic/index.mjs +4 -1
- package/13/esm2020/presets/context-menu/index.mjs +4 -1
- package/13/esm2020/presets/index.mjs +5 -1
- package/13/esm2020/presets/minimap/index.mjs +4 -1
- package/13/esm2020/presets/reroute/index.mjs +4 -1
- package/13/esm2020/ref.mjs +27 -0
- package/13/fesm2015/rete-angular-plugin-ng13.mjs +59 -22
- package/13/fesm2015/rete-angular-plugin-ng13.mjs.map +1 -1
- package/13/fesm2020/rete-angular-plugin-ng13.mjs +57 -20
- package/13/fesm2020/rete-angular-plugin-ng13.mjs.map +1 -1
- package/13/index.d.ts +1 -0
- package/13/module.d.ts +8 -7
- package/13/presets/classic/components/node/node.component.d.ts +1 -10
- package/13/presets/classic/index.d.ts +3 -0
- package/13/presets/context-menu/index.d.ts +3 -0
- package/13/presets/index.d.ts +4 -0
- package/13/presets/minimap/index.d.ts +3 -0
- package/13/presets/reroute/index.d.ts +3 -0
- package/13/ref.d.ts +12 -0
- package/14/core.d.ts +21 -1
- package/14/esm2020/core.mjs +17 -1
- package/14/esm2020/index.mjs +2 -1
- package/14/esm2020/module.mjs +3 -2
- package/14/esm2020/presets/classic/components/control/control.component.mjs +1 -1
- package/14/esm2020/presets/classic/components/node/node.component.mjs +4 -24
- package/14/esm2020/presets/classic/index.mjs +4 -1
- package/14/esm2020/presets/context-menu/index.mjs +4 -1
- package/14/esm2020/presets/index.mjs +5 -1
- package/14/esm2020/presets/minimap/index.mjs +4 -1
- package/14/esm2020/presets/reroute/index.mjs +4 -1
- package/14/esm2020/ref.mjs +27 -0
- package/14/fesm2015/rete-angular-plugin-ng14.mjs +59 -22
- package/14/fesm2015/rete-angular-plugin-ng14.mjs.map +1 -1
- package/14/fesm2020/rete-angular-plugin-ng14.mjs +57 -20
- package/14/fesm2020/rete-angular-plugin-ng14.mjs.map +1 -1
- package/14/index.d.ts +1 -0
- package/14/module.d.ts +8 -7
- package/14/presets/classic/components/node/node.component.d.ts +1 -10
- package/14/presets/classic/index.d.ts +3 -0
- package/14/presets/context-menu/index.d.ts +3 -0
- package/14/presets/index.d.ts +4 -0
- package/14/presets/minimap/index.d.ts +3 -0
- package/14/presets/reroute/index.d.ts +3 -0
- package/14/ref.d.ts +12 -0
- package/15/core.d.ts +21 -1
- package/15/esm2020/core.mjs +17 -1
- package/15/esm2020/index.mjs +2 -1
- package/15/esm2020/module.mjs +3 -2
- package/15/esm2020/presets/classic/components/control/control.component.mjs +1 -1
- package/15/esm2020/presets/classic/components/node/node.component.mjs +4 -24
- package/15/esm2020/presets/classic/index.mjs +4 -1
- package/15/esm2020/presets/context-menu/index.mjs +4 -1
- package/15/esm2020/presets/index.mjs +5 -1
- package/15/esm2020/presets/minimap/index.mjs +4 -1
- package/15/esm2020/presets/reroute/index.mjs +4 -1
- package/15/esm2020/ref.mjs +27 -0
- package/15/fesm2015/rete-angular-plugin-ng15.mjs +59 -22
- package/15/fesm2015/rete-angular-plugin-ng15.mjs.map +1 -1
- package/15/fesm2020/rete-angular-plugin-ng15.mjs +57 -20
- package/15/fesm2020/rete-angular-plugin-ng15.mjs.map +1 -1
- package/15/index.d.ts +1 -0
- package/15/module.d.ts +8 -7
- package/15/presets/classic/components/node/node.component.d.ts +1 -10
- package/15/presets/classic/index.d.ts +3 -0
- package/15/presets/context-menu/index.d.ts +3 -0
- package/15/presets/index.d.ts +4 -0
- package/15/presets/minimap/index.d.ts +3 -0
- package/15/presets/reroute/index.d.ts +3 -0
- package/15/ref.d.ts +12 -0
- package/16/core.d.ts +21 -1
- package/16/esm2022/core.mjs +17 -1
- package/16/esm2022/index.mjs +2 -1
- package/16/esm2022/module.mjs +3 -2
- package/16/esm2022/presets/classic/components/control/control.component.mjs +1 -1
- package/16/esm2022/presets/classic/components/node/node.component.mjs +4 -27
- package/16/esm2022/presets/classic/index.mjs +4 -1
- package/16/esm2022/presets/context-menu/index.mjs +4 -1
- package/16/esm2022/presets/index.mjs +5 -1
- package/16/esm2022/presets/minimap/index.mjs +4 -1
- package/16/esm2022/presets/reroute/index.mjs +4 -1
- package/16/esm2022/ref.mjs +30 -0
- package/16/fesm2022/rete-angular-plugin-ng16.mjs +60 -23
- package/16/fesm2022/rete-angular-plugin-ng16.mjs.map +1 -1
- package/16/index.d.ts +1 -0
- package/16/module.d.ts +8 -7
- package/16/presets/classic/components/node/node.component.d.ts +1 -10
- package/16/presets/classic/index.d.ts +3 -0
- package/16/presets/context-menu/index.d.ts +3 -0
- package/16/presets/index.d.ts +4 -0
- package/16/presets/minimap/index.d.ts +3 -0
- package/16/presets/reroute/index.d.ts +3 -0
- package/16/ref.d.ts +12 -0
- package/17/core.d.ts +68 -0
- package/17/esm2022/core.mjs +127 -0
- package/17/esm2022/index.mjs +12 -0
- package/17/esm2022/module.mjs +50 -0
- package/17/esm2022/presets/classic/components/connection/connection-wrapper.component.mjs +91 -0
- package/17/esm2022/presets/classic/components/connection/connection.component.mjs +33 -0
- package/17/esm2022/presets/classic/components/control/control.component.mjs +55 -0
- package/17/esm2022/presets/classic/components/index.mjs +6 -0
- package/17/esm2022/presets/classic/components/node/node.component.mjs +122 -0
- package/17/esm2022/presets/classic/components/socket/socket.component.mjs +35 -0
- package/17/esm2022/presets/classic/index.mjs +114 -0
- package/17/esm2022/presets/classic/types.mjs +2 -0
- package/17/esm2022/presets/context-menu/components/index.mjs +4 -0
- package/17/esm2022/presets/context-menu/components/item/item.component.mjs +115 -0
- package/17/esm2022/presets/context-menu/components/menu/menu.component.mjs +111 -0
- package/17/esm2022/presets/context-menu/components/search/search.component.mjs +24 -0
- package/17/esm2022/presets/context-menu/debounce.mjs +17 -0
- package/17/esm2022/presets/context-menu/index.mjs +41 -0
- package/17/esm2022/presets/context-menu/module.mjs +35 -0
- package/17/esm2022/presets/context-menu/types.mjs +2 -0
- package/17/esm2022/presets/index.mjs +9 -0
- package/17/esm2022/presets/minimap/components/index.mjs +4 -0
- package/17/esm2022/presets/minimap/components/mini-node/mini-node.component.mjs +55 -0
- package/17/esm2022/presets/minimap/components/mini-viewport/mini-viewport.component.mjs +81 -0
- package/17/esm2022/presets/minimap/components/minimap/minimap.component.mjs +110 -0
- package/17/esm2022/presets/minimap/index.mjs +45 -0
- package/17/esm2022/presets/minimap/module.mjs +35 -0
- package/17/esm2022/presets/minimap/types.mjs +2 -0
- package/17/esm2022/presets/reroute/components/index.mjs +3 -0
- package/17/esm2022/presets/reroute/components/pin/pin.component.mjs +86 -0
- package/17/esm2022/presets/reroute/components/pins/pins.component.mjs +58 -0
- package/17/esm2022/presets/reroute/index.mjs +43 -0
- package/17/esm2022/presets/reroute/module.mjs +30 -0
- package/17/esm2022/presets/reroute/types.mjs +2 -0
- package/17/esm2022/presets/types.mjs +2 -0
- package/17/esm2022/ref.mjs +30 -0
- package/17/esm2022/rete-angular-plugin-ng17.mjs +5 -0
- package/17/esm2022/shared/drag.mjs +23 -0
- package/17/esm2022/types.mjs +2 -0
- package/17/fesm2022/rete-angular-plugin-ng17.mjs +1527 -0
- package/17/fesm2022/rete-angular-plugin-ng17.mjs.map +1 -0
- package/17/index.d.ts +13 -0
- package/17/module.d.ts +13 -0
- package/17/package.json +24 -0
- package/17/presets/classic/components/connection/connection-wrapper.component.d.ts +30 -0
- package/17/presets/classic/components/connection/connection.component.d.ts +11 -0
- package/17/presets/classic/components/control/control.component.d.ts +14 -0
- package/17/presets/classic/components/index.d.ts +5 -0
- package/17/presets/classic/components/node/node.component.d.ts +19 -0
- package/17/presets/classic/components/socket/socket.component.d.ts +12 -0
- package/17/presets/classic/index.d.ts +21 -0
- package/17/presets/classic/types.d.ts +49 -0
- package/17/presets/context-menu/components/index.d.ts +3 -0
- package/17/presets/context-menu/components/item/item.component.d.ts +26 -0
- package/17/presets/context-menu/components/menu/menu.component.d.ts +27 -0
- package/17/presets/context-menu/components/search/search.component.d.ts +8 -0
- package/17/presets/context-menu/debounce.d.ts +5 -0
- package/17/presets/context-menu/index.d.ts +9 -0
- package/17/presets/context-menu/module.d.ts +10 -0
- package/17/presets/context-menu/types.d.ts +12 -0
- package/17/presets/index.d.ts +8 -0
- package/17/presets/minimap/components/index.d.ts +3 -0
- package/17/presets/minimap/components/mini-node/mini-node.component.d.ts +14 -0
- package/17/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +27 -0
- package/17/presets/minimap/components/minimap/minimap.component.d.ts +25 -0
- package/17/presets/minimap/index.d.ts +9 -0
- package/17/presets/minimap/module.d.ts +10 -0
- package/17/presets/minimap/types.d.ts +22 -0
- package/17/presets/reroute/components/index.d.ts +2 -0
- package/17/presets/reroute/components/pin/pin.component.d.ts +30 -0
- package/17/presets/reroute/components/pins/pins.component.d.ts +17 -0
- package/17/presets/reroute/index.d.ts +13 -0
- package/17/presets/reroute/module.d.ts +9 -0
- package/17/presets/reroute/types.d.ts +18 -0
- package/17/presets/types.d.ts +15 -0
- package/17/ref.d.ts +12 -0
- package/17/shared/drag.d.ts +10 -0
- package/17/types.d.ts +29 -0
- package/CHANGELOG.md +50 -0
- package/bundles/rete-angular-plugin.umd.js +66 -35
- package/bundles/rete-angular-plugin.umd.js.map +1 -1
- package/core.d.ts +21 -1
- package/esm2015/core.js +17 -1
- package/esm2015/index.js +2 -1
- package/esm2015/module.js +3 -2
- package/esm2015/presets/classic/components/control/control.component.js +1 -1
- package/esm2015/presets/classic/components/node/node.component.js +2 -23
- package/esm2015/presets/classic/index.js +4 -1
- package/esm2015/presets/context-menu/index.js +4 -1
- package/esm2015/presets/index.js +1 -1
- package/esm2015/presets/minimap/index.js +4 -1
- package/esm2015/presets/reroute/index.js +4 -1
- package/esm2015/ref.js +26 -0
- package/esm2015/rete-angular-plugin.js +14 -14
- package/fesm2015/rete-angular-plugin.js +54 -22
- package/fesm2015/rete-angular-plugin.js.map +1 -1
- package/index.d.ts +1 -0
- package/package.json +8 -8
- package/presets/classic/components/node/node.component.d.ts +1 -8
- package/presets/classic/index.d.ts +3 -0
- package/presets/context-menu/index.d.ts +3 -0
- package/presets/index.d.ts +4 -0
- package/presets/minimap/index.d.ts +3 -0
- package/presets/reroute/index.d.ts +3 -0
- package/ref.d.ts +9 -0
- package/rete-angular-plugin.d.ts +13 -13
- package/rete-angular-plugin.metadata.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function debounce(cb) {
|
|
2
|
+
return {
|
|
3
|
+
timeout: null,
|
|
4
|
+
cancel() {
|
|
5
|
+
if (this.timeout) {
|
|
6
|
+
window.clearTimeout(this.timeout);
|
|
7
|
+
this.timeout = null;
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
call(delay) {
|
|
11
|
+
this.timeout = window.setTimeout(() => {
|
|
12
|
+
cb();
|
|
13
|
+
}, delay);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVib3VuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9jb250ZXh0LW1lbnUvZGVib3VuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFFBQVEsQ0FBQyxFQUFjO0lBQ3JDLE9BQU87UUFDTCxPQUFPLEVBQUUsSUFBcUI7UUFDOUIsTUFBTTtZQUNKLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7Z0JBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO2FBQ3BCO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxLQUFhO1lBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BDLEVBQUUsRUFBRSxDQUFBO1lBQ04sQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ1gsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGRlYm91bmNlKGNiOiAoKSA9PiB2b2lkKSB7XG4gIHJldHVybiB7XG4gICAgdGltZW91dDogbnVsbCBhcyBudWxsIHwgbnVtYmVyLFxuICAgIGNhbmNlbCgpIHtcbiAgICAgIGlmICh0aGlzLnRpbWVvdXQpIHtcbiAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXQpXG4gICAgICAgIHRoaXMudGltZW91dCA9IG51bGxcbiAgICAgIH1cbiAgICB9LFxuICAgIGNhbGwoZGVsYXk6IG51bWJlcikge1xuICAgICAgdGhpcy50aW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBjYigpXG4gICAgICB9LCBkZWxheSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ContextMenuComponent } from './components/menu/menu.component';
|
|
2
|
+
/**
|
|
3
|
+
* Preset for rendering context menu.
|
|
4
|
+
*/
|
|
5
|
+
export function setup(props) {
|
|
6
|
+
const delay = typeof props?.delay === 'undefined' ? 1000 : props.delay;
|
|
7
|
+
return {
|
|
8
|
+
update(context) {
|
|
9
|
+
if (context.data.type === 'contextmenu') {
|
|
10
|
+
return {
|
|
11
|
+
items: context.data.items,
|
|
12
|
+
delay,
|
|
13
|
+
searchBar: context.data.searchBar,
|
|
14
|
+
onHide: context.data.onHide
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
mount(context, plugin) {
|
|
19
|
+
const parent = plugin.parentScope();
|
|
20
|
+
const emit = parent.emit.bind(parent);
|
|
21
|
+
const rendered = () => {
|
|
22
|
+
emit({ type: 'rendered', data: context.data });
|
|
23
|
+
};
|
|
24
|
+
if (context.data.type === 'contextmenu') {
|
|
25
|
+
return {
|
|
26
|
+
key: 'context-menu',
|
|
27
|
+
component: ContextMenuComponent,
|
|
28
|
+
props: {
|
|
29
|
+
items: context.data.items,
|
|
30
|
+
delay,
|
|
31
|
+
searchBar: context.data.searchBar,
|
|
32
|
+
onHide: context.data.onHide,
|
|
33
|
+
rendered
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9jb250ZXh0LW1lbnUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHeEU7O0dBRUc7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUEyRCxLQUEwQjtJQUN4RyxNQUFNLEtBQUssR0FBRyxPQUFPLEtBQUssRUFBRSxLQUFLLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUE7SUFFdEUsT0FBTztRQUNMLE1BQU0sQ0FBQyxPQUFPO1lBQ1osSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxhQUFhLEVBQUU7Z0JBQ3ZDLE9BQU87b0JBQ0wsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSztvQkFDekIsS0FBSztvQkFDTCxTQUFTLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTO29CQUNqQyxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNO2lCQUM1QixDQUFBO2FBQ0Y7UUFDSCxDQUFDO1FBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNO1lBQ25CLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQTtZQUNuQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUNyQyxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQVMsQ0FBQyxDQUFBO1lBQ3ZELENBQUMsQ0FBQTtZQUVELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssYUFBYSxFQUFFO2dCQUN2QyxPQUFPO29CQUNMLEdBQUcsRUFBRSxjQUFjO29CQUNuQixTQUFTLEVBQUUsb0JBQW9CO29CQUMvQixLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSzt3QkFDekIsS0FBSzt3QkFDTCxTQUFTLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTO3dCQUNqQyxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNO3dCQUMzQixRQUFRO3FCQUNUO2lCQUNGLENBQUE7YUFDRjtZQUNELE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVNjaGVtZXMgfSBmcm9tICdyZXRlJztcblxuaW1wb3J0IHsgQ29udGV4dE1lbnVSZW5kZXIgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IENvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVuZGVyUHJlc2V0IH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vKipcbiAqIFByZXNldCBmb3IgcmVuZGVyaW5nIGNvbnRleHQgbWVudS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldHVwPFNjaGVtZXMgZXh0ZW5kcyBCYXNlU2NoZW1lcywgSyBleHRlbmRzIENvbnRleHRNZW51UmVuZGVyPihwcm9wcz86IHsgZGVsYXk/OiBudW1iZXIgfSk6IFJlbmRlclByZXNldDxTY2hlbWVzLCBLPiB7XG4gIGNvbnN0IGRlbGF5ID0gdHlwZW9mIHByb3BzPy5kZWxheSA9PT0gJ3VuZGVmaW5lZCcgPyAxMDAwIDogcHJvcHMuZGVsYXlcblxuICByZXR1cm4ge1xuICAgIHVwZGF0ZShjb250ZXh0KSB7XG4gICAgICBpZiAoY29udGV4dC5kYXRhLnR5cGUgPT09ICdjb250ZXh0bWVudScpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBpdGVtczogY29udGV4dC5kYXRhLml0ZW1zLFxuICAgICAgICAgIGRlbGF5LFxuICAgICAgICAgIHNlYXJjaEJhcjogY29udGV4dC5kYXRhLnNlYXJjaEJhcixcbiAgICAgICAgICBvbkhpZGU6IGNvbnRleHQuZGF0YS5vbkhpZGVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgbW91bnQoY29udGV4dCwgcGx1Z2luKSB7XG4gICAgICBjb25zdCBwYXJlbnQgPSBwbHVnaW4ucGFyZW50U2NvcGUoKVxuICAgICAgY29uc3QgZW1pdCA9IHBhcmVudC5lbWl0LmJpbmQocGFyZW50KVxuICAgICAgY29uc3QgcmVuZGVyZWQgPSAoKSA9PiB7XG4gICAgICAgIGVtaXQoeyB0eXBlOiAncmVuZGVyZWQnLCBkYXRhOiBjb250ZXh0LmRhdGEgfSBhcyBhbnkpXG4gICAgICB9XG5cbiAgICAgIGlmIChjb250ZXh0LmRhdGEudHlwZSA9PT0gJ2NvbnRleHRtZW51Jykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGtleTogJ2NvbnRleHQtbWVudScsXG4gICAgICAgICAgY29tcG9uZW50OiBDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgaXRlbXM6IGNvbnRleHQuZGF0YS5pdGVtcyxcbiAgICAgICAgICAgIGRlbGF5LFxuICAgICAgICAgICAgc2VhcmNoQmFyOiBjb250ZXh0LmRhdGEuc2VhcmNoQmFyLFxuICAgICAgICAgICAgb25IaWRlOiBjb250ZXh0LmRhdGEub25IaWRlLFxuICAgICAgICAgICAgcmVuZGVyZWRcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ContextMenuComponent } from './components/menu/menu.component';
|
|
4
|
+
import { ContextMenuSearchComponent } from './components/search/search.component';
|
|
5
|
+
import { ContextMenuItemComponent } from './components/item/item.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class ReteContextMenuModule {
|
|
8
|
+
static ɵfac = function ReteContextMenuModule_Factory(t) { return new (t || ReteContextMenuModule)(); };
|
|
9
|
+
static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ReteContextMenuModule });
|
|
10
|
+
static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule] });
|
|
11
|
+
}
|
|
12
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReteContextMenuModule, [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
declarations: [
|
|
16
|
+
ContextMenuComponent,
|
|
17
|
+
ContextMenuSearchComponent,
|
|
18
|
+
ContextMenuItemComponent
|
|
19
|
+
],
|
|
20
|
+
imports: [
|
|
21
|
+
CommonModule
|
|
22
|
+
],
|
|
23
|
+
exports: [
|
|
24
|
+
ContextMenuComponent,
|
|
25
|
+
ContextMenuSearchComponent,
|
|
26
|
+
ContextMenuItemComponent,
|
|
27
|
+
]
|
|
28
|
+
}]
|
|
29
|
+
}], null, null); })();
|
|
30
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(ReteContextMenuModule, { declarations: [ContextMenuComponent,
|
|
31
|
+
ContextMenuSearchComponent,
|
|
32
|
+
ContextMenuItemComponent], imports: [CommonModule], exports: [ContextMenuComponent,
|
|
33
|
+
ContextMenuSearchComponent,
|
|
34
|
+
ContextMenuItemComponent] }); })();
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbmcxNy8uc3JjL3ByZXNldHMvY29udGV4dC1tZW51L21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUNqRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTs7QUFpQjNFLE1BQU0sT0FBTyxxQkFBcUI7K0VBQXJCLHFCQUFxQjs0REFBckIscUJBQXFCO2dFQVI5QixZQUFZOztpRkFRSCxxQkFBcUI7Y0FmakMsUUFBUTtlQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixvQkFBb0I7b0JBQ3BCLDBCQUEwQjtvQkFDMUIsd0JBQXdCO2lCQUN6QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtpQkFDYjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1Asb0JBQW9CO29CQUNwQiwwQkFBMEI7b0JBQzFCLHdCQUF3QjtpQkFDekI7YUFDRjs7d0ZBQ1kscUJBQXFCLG1CQWI5QixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLHdCQUF3QixhQUd4QixZQUFZLGFBR1osb0JBQW9CO1FBQ3BCLDBCQUEwQjtRQUMxQix3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudCdcbmltcG9ydCB7IENvbnRleHRNZW51U2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guY29tcG9uZW50J1xuaW1wb3J0IHsgQ29udGV4dE1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2l0ZW0vaXRlbS5jb21wb25lbnQnXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENvbnRleHRNZW51Q29tcG9uZW50LFxuICAgIENvbnRleHRNZW51U2VhcmNoQ29tcG9uZW50LFxuICAgIENvbnRleHRNZW51SXRlbUNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgICBDb250ZXh0TWVudVNlYXJjaENvbXBvbmVudCxcbiAgICBDb250ZXh0TWVudUl0ZW1Db21wb25lbnQsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUmV0ZUNvbnRleHRNZW51TW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9jb250ZXh0LW1lbnUvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbmRlclNpZ25hbCB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuXG5leHBvcnQgdHlwZSBJdGVtID0ge1xuICBsYWJlbDogc3RyaW5nXG4gIGtleTogc3RyaW5nXG4gIGhhbmRsZXIoKTogdm9pZFxuICBzdWJpdGVtcz86IEl0ZW1bXVxufVxuXG5leHBvcnQgdHlwZSBDb250ZXh0TWVudVJlbmRlciA9XG4gIHwgUmVuZGVyU2lnbmFsPCdjb250ZXh0bWVudScsIHsgaXRlbXM6IEl0ZW1bXSwgb25IaWRlKCk6IHZvaWQsIHNlYXJjaEJhcj86IGJvb2xlYW4gfT5cbiJdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Built-in presets, responsible for rendering different parts of the editor.
|
|
3
|
+
* @module
|
|
4
|
+
*/
|
|
5
|
+
export * as classic from './classic';
|
|
6
|
+
export * as contextMenu from './context-menu';
|
|
7
|
+
export * as minimap from './minimap';
|
|
8
|
+
export * as reroute from './reroute';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxPQUFPLEtBQUssT0FBTyxNQUFNLFdBQVcsQ0FBQTtBQUNwQyxPQUFPLEtBQUssV0FBVyxNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sS0FBSyxPQUFPLE1BQU0sV0FBVyxDQUFBO0FBQ3BDLE9BQU8sS0FBSyxPQUFPLE1BQU0sV0FBVyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBCdWlsdC1pbiBwcmVzZXRzLCByZXNwb25zaWJsZSBmb3IgcmVuZGVyaW5nIGRpZmZlcmVudCBwYXJ0cyBvZiB0aGUgZWRpdG9yLlxuICogQG1vZHVsZVxuICovXG5leHBvcnQgKiBhcyBjbGFzc2ljIGZyb20gJy4vY2xhc3NpYydcbmV4cG9ydCAqIGFzIGNvbnRleHRNZW51IGZyb20gJy4vY29udGV4dC1tZW51J1xuZXhwb3J0ICogYXMgbWluaW1hcCBmcm9tICcuL21pbmltYXAnXG5leHBvcnQgKiBhcyByZXJvdXRlIGZyb20gJy4vcmVyb3V0ZSdcbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { MinimapComponent } from './minimap/minimap.component';
|
|
2
|
+
export { MiniViewportComponent } from './mini-viewport/mini-viewport.component';
|
|
3
|
+
export { MiniNodeComponent } from './mini-node/mini-node.component';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9taW5pbWFwL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBNaW5pbWFwQ29tcG9uZW50IH0gZnJvbSAnLi9taW5pbWFwL21pbmltYXAuY29tcG9uZW50JztcbmV4cG9ydCB7IE1pbmlWaWV3cG9ydENvbXBvbmVudCB9IGZyb20gJy4vbWluaS12aWV3cG9ydC9taW5pLXZpZXdwb3J0LmNvbXBvbmVudCc7XG5leHBvcnQgeyBNaW5pTm9kZUNvbXBvbmVudCB9IGZyb20gJy4vbWluaS1ub2RlL21pbmktbm9kZS5jb21wb25lbnQnO1xuIl19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Component, Input, HostBinding } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class MiniNodeComponent {
|
|
4
|
+
left;
|
|
5
|
+
top;
|
|
6
|
+
width;
|
|
7
|
+
height;
|
|
8
|
+
get styleLeft() {
|
|
9
|
+
return this.px(this.left);
|
|
10
|
+
}
|
|
11
|
+
get styleTop() {
|
|
12
|
+
return this.px(this.top);
|
|
13
|
+
}
|
|
14
|
+
get styleWidth() {
|
|
15
|
+
return this.px(this.width);
|
|
16
|
+
}
|
|
17
|
+
get styleHeight() {
|
|
18
|
+
return this.px(this.height);
|
|
19
|
+
}
|
|
20
|
+
px(value) {
|
|
21
|
+
return `${value}px`;
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = function MiniNodeComponent_Factory(t) { return new (t || MiniNodeComponent)(); };
|
|
24
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MiniNodeComponent, selectors: [["minimap-mini-node"]], hostAttrs: ["data-testid", "minimap-node"], hostVars: 8, hostBindings: function MiniNodeComponent_HostBindings(rf, ctx) { if (rf & 2) {
|
|
25
|
+
i0.ɵɵstyleProp("left", ctx.styleLeft)("top", ctx.styleTop)("width", ctx.styleWidth)("height", ctx.styleHeight);
|
|
26
|
+
} }, inputs: { left: "left", top: "top", width: "width", height: "height" }, decls: 0, vars: 0, template: function MiniNodeComponent_Template(rf, ctx) { }, styles: ["[_nghost-%COMP%]{display:block;position:absolute;background:rgba(110,136,255,.8);border:1px solid rgba(192,206,212,.6)}"] });
|
|
27
|
+
}
|
|
28
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MiniNodeComponent, [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'minimap-mini-node', host: {
|
|
31
|
+
'data-testid': 'minimap-node'
|
|
32
|
+
}, template: "", styles: [":host{display:block;position:absolute;background:rgba(110,136,255,.8);border:1px solid rgba(192,206,212,.6)}\n"] }]
|
|
33
|
+
}], null, { left: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], top: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], width: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], height: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], styleLeft: [{
|
|
42
|
+
type: HostBinding,
|
|
43
|
+
args: ['style.left']
|
|
44
|
+
}], styleTop: [{
|
|
45
|
+
type: HostBinding,
|
|
46
|
+
args: ['style.top']
|
|
47
|
+
}], styleWidth: [{
|
|
48
|
+
type: HostBinding,
|
|
49
|
+
args: ['style.width']
|
|
50
|
+
}], styleHeight: [{
|
|
51
|
+
type: HostBinding,
|
|
52
|
+
args: ['style.height']
|
|
53
|
+
}] }); })();
|
|
54
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MiniNodeComponent, { className: "MiniNodeComponent", filePath: "presets/minimap/components/mini-node/mini-node.component.ts", lineNumber: 11 }); })();
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25nMTcvLnNyYy9wcmVzZXRzL21pbmltYXAvY29tcG9uZW50cy9taW5pLW5vZGUvbWluaS1ub2RlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTlELE1BQU0sT0FBTyxpQkFBaUI7SUFDbkIsSUFBSSxDQUFTO0lBQ2IsR0FBRyxDQUFTO0lBQ1osS0FBSyxDQUFTO0lBQ2QsTUFBTSxDQUFTO0lBRXhCLElBQStCLFNBQVM7UUFDdEMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMzQixDQUFDO0lBQ0QsSUFBOEIsUUFBUTtRQUNwQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzFCLENBQUM7SUFDRCxJQUFnQyxVQUFVO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDNUIsQ0FBQztJQUNELElBQWlDLFdBQVc7UUFDMUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUM3QixDQUFDO0lBRUQsRUFBRSxDQUFDLEtBQWE7UUFDZCxPQUFPLEdBQUcsS0FBSyxJQUFJLENBQUE7SUFDckIsQ0FBQzsyRUFyQlUsaUJBQWlCOzZEQUFqQixpQkFBaUI7Ozs7aUZBQWpCLGlCQUFpQjtjQVI3QixTQUFTOzJCQUNFLG1CQUFtQixRQUd2QjtvQkFDSixhQUFhLEVBQUUsY0FBYztpQkFDOUI7Z0JBR1EsSUFBSTtrQkFBWixLQUFLO1lBQ0csR0FBRztrQkFBWCxLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBRXlCLFNBQVM7a0JBQXZDLFdBQVc7bUJBQUMsWUFBWTtZQUdLLFFBQVE7a0JBQXJDLFdBQVc7bUJBQUMsV0FBVztZQUdRLFVBQVU7a0JBQXpDLFdBQVc7bUJBQUMsYUFBYTtZQUdPLFdBQVc7a0JBQTNDLFdBQVc7bUJBQUMsY0FBYzs7a0ZBZmhCLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21pbmltYXAtbWluaS1ub2RlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21pbmktbm9kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21pbmktbm9kZS5jb21wb25lbnQuc2FzcyddLFxuICBob3N0OiB7XG4gICAgJ2RhdGEtdGVzdGlkJzogJ21pbmltYXAtbm9kZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBNaW5pTm9kZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGxlZnQhOiBudW1iZXJcbiAgQElucHV0KCkgdG9wITogbnVtYmVyXG4gIEBJbnB1dCgpIHdpZHRoITogbnVtYmVyXG4gIEBJbnB1dCgpIGhlaWdodCE6IG51bWJlclxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubGVmdCcpIGdldCBzdHlsZUxlZnQoKSB7XG4gICAgcmV0dXJuIHRoaXMucHgodGhpcy5sZWZ0KVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUudG9wJykgZ2V0IHN0eWxlVG9wKCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMudG9wKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgnKSBnZXQgc3R5bGVXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5weCh0aGlzLndpZHRoKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0JykgZ2V0IHN0eWxlSGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuaGVpZ2h0KVxuICB9XG5cbiAgcHgodmFsdWU6IG51bWJlcikge1xuICAgIHJldHVybiBgJHt2YWx1ZX1weGBcbiAgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Component, Input, HostBinding, HostListener } from '@angular/core';
|
|
2
|
+
import { useDrag } from '../../../../shared/drag';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class MiniViewportComponent {
|
|
5
|
+
left;
|
|
6
|
+
top;
|
|
7
|
+
width;
|
|
8
|
+
height;
|
|
9
|
+
containerWidth;
|
|
10
|
+
translate;
|
|
11
|
+
drag = useDrag((dx, dy) => this.onDrag(dx, dy), e => ({ x: e.pageX, y: e.pageY }));
|
|
12
|
+
get styleLeft() {
|
|
13
|
+
return this.px(this.scale(this.left));
|
|
14
|
+
}
|
|
15
|
+
get styleTop() {
|
|
16
|
+
return this.px(this.scale(this.top));
|
|
17
|
+
}
|
|
18
|
+
get styleWidth() {
|
|
19
|
+
return this.px(this.scale(this.width));
|
|
20
|
+
}
|
|
21
|
+
get styleHeight() {
|
|
22
|
+
return this.px(this.scale(this.height));
|
|
23
|
+
}
|
|
24
|
+
pointerdown(event) {
|
|
25
|
+
event.stopPropagation();
|
|
26
|
+
this.drag.start(event);
|
|
27
|
+
}
|
|
28
|
+
px(value) {
|
|
29
|
+
return `${value}px`;
|
|
30
|
+
}
|
|
31
|
+
scale(v) {
|
|
32
|
+
return v * this.containerWidth;
|
|
33
|
+
}
|
|
34
|
+
invert(v) {
|
|
35
|
+
return v / this.containerWidth;
|
|
36
|
+
}
|
|
37
|
+
onDrag(dx, dy) {
|
|
38
|
+
this.translate(this.invert(-dx), this.invert(-dy));
|
|
39
|
+
}
|
|
40
|
+
static ɵfac = function MiniViewportComponent_Factory(t) { return new (t || MiniViewportComponent)(); };
|
|
41
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MiniViewportComponent, selectors: [["minimap-mini-viewport"]], hostAttrs: ["data-testid", "minimap-viewport"], hostVars: 8, hostBindings: function MiniViewportComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
42
|
+
i0.ɵɵlistener("pointerdown", function MiniViewportComponent_pointerdown_HostBindingHandler($event) { return ctx.pointerdown($event); });
|
|
43
|
+
} if (rf & 2) {
|
|
44
|
+
i0.ɵɵstyleProp("left", ctx.styleLeft)("top", ctx.styleTop)("width", ctx.styleWidth)("height", ctx.styleHeight);
|
|
45
|
+
} }, inputs: { left: "left", top: "top", width: "width", height: "height", containerWidth: "containerWidth", translate: "translate" }, decls: 0, vars: 0, template: function MiniViewportComponent_Template(rf, ctx) { }, styles: ["[_nghost-%COMP%]{display:block;position:absolute;background:rgba(255,251,128,.32);border:1px solid #ffe52b}"] });
|
|
46
|
+
}
|
|
47
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MiniViewportComponent, [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'minimap-mini-viewport', host: {
|
|
50
|
+
'data-testid': 'minimap-viewport'
|
|
51
|
+
}, template: "", styles: [":host{display:block;position:absolute;background:rgba(255,251,128,.32);border:1px solid #ffe52b}\n"] }]
|
|
52
|
+
}], null, { left: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], top: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], width: [{
|
|
57
|
+
type: Input
|
|
58
|
+
}], height: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], containerWidth: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}], translate: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], styleLeft: [{
|
|
65
|
+
type: HostBinding,
|
|
66
|
+
args: ['style.left']
|
|
67
|
+
}], styleTop: [{
|
|
68
|
+
type: HostBinding,
|
|
69
|
+
args: ['style.top']
|
|
70
|
+
}], styleWidth: [{
|
|
71
|
+
type: HostBinding,
|
|
72
|
+
args: ['style.width']
|
|
73
|
+
}], styleHeight: [{
|
|
74
|
+
type: HostBinding,
|
|
75
|
+
args: ['style.height']
|
|
76
|
+
}], pointerdown: [{
|
|
77
|
+
type: HostListener,
|
|
78
|
+
args: ['pointerdown', ['$event']]
|
|
79
|
+
}] }); })();
|
|
80
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MiniViewportComponent, { className: "MiniViewportComponent", filePath: "presets/minimap/components/mini-viewport/mini-viewport.component.ts", lineNumber: 13 }); })();
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS12aWV3cG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9taW5pbWFwL2NvbXBvbmVudHMvbWluaS12aWV3cG9ydC9taW5pLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFXbEQsTUFBTSxPQUFPLHFCQUFxQjtJQUN2QixJQUFJLENBQVM7SUFDYixHQUFHLENBQVM7SUFDWixLQUFLLENBQVM7SUFDZCxNQUFNLENBQVM7SUFDZixjQUFjLENBQVM7SUFDdkIsU0FBUyxDQUEyQjtJQUU3QyxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFFbEYsSUFBK0IsU0FBUztRQUN0QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0lBQ0QsSUFBOEIsUUFBUTtRQUNwQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0lBQ0QsSUFBZ0MsVUFBVTtRQUN4QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUN4QyxDQUFDO0lBQ0QsSUFBaUMsV0FBVztRQUMxQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRXdDLFdBQVcsQ0FBQyxLQUFtQjtRQUN0RSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDeEIsQ0FBQztJQUVELEVBQUUsQ0FBQyxLQUFhO1FBQ2QsT0FBTyxHQUFHLEtBQUssSUFBSSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxLQUFLLENBQUMsQ0FBUztRQUNiLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUE7SUFDaEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxDQUFTO1FBQ2QsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQVUsRUFBRSxFQUFVO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3BELENBQUM7K0VBMUNVLHFCQUFxQjs2REFBckIscUJBQXFCO3dIQUFyQix1QkFBbUI7Ozs7O2lGQUFuQixxQkFBcUI7Y0FSakMsU0FBUzsyQkFDRSx1QkFBdUIsUUFHM0I7b0JBQ0osYUFBYSxFQUFFLGtCQUFrQjtpQkFDbEM7Z0JBR1EsSUFBSTtrQkFBWixLQUFLO1lBQ0csR0FBRztrQkFBWCxLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUs7WUFJeUIsU0FBUztrQkFBdkMsV0FBVzttQkFBQyxZQUFZO1lBR0ssUUFBUTtrQkFBckMsV0FBVzttQkFBQyxXQUFXO1lBR1EsVUFBVTtrQkFBekMsV0FBVzttQkFBQyxhQUFhO1lBR08sV0FBVztrQkFBM0MsV0FBVzttQkFBQyxjQUFjO1lBSWMsV0FBVztrQkFBbkQsWUFBWTttQkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQXZCNUIscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdXNlRHJhZyB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9kcmFnJztcbmltcG9ydCB7IE1pbmltYXBEYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtaW5pbWFwLW1pbmktdmlld3BvcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWluaS12aWV3cG9ydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21pbmktdmlld3BvcnQuY29tcG9uZW50LnNhc3MnXSxcbiAgaG9zdDoge1xuICAgICdkYXRhLXRlc3RpZCc6ICdtaW5pbWFwLXZpZXdwb3J0J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1pbmlWaWV3cG9ydENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGxlZnQhOiBudW1iZXJcbiAgQElucHV0KCkgdG9wITogbnVtYmVyXG4gIEBJbnB1dCgpIHdpZHRoITogbnVtYmVyXG4gIEBJbnB1dCgpIGhlaWdodCE6IG51bWJlclxuICBASW5wdXQoKSBjb250YWluZXJXaWR0aCE6IG51bWJlclxuICBASW5wdXQoKSB0cmFuc2xhdGUhOiBNaW5pbWFwRGF0YVsndHJhbnNsYXRlJ11cblxuICBkcmFnID0gdXNlRHJhZygoZHgsIGR5KSA9PiB0aGlzLm9uRHJhZyhkeCwgZHkpLCBlID0+ICh7IHg6IGUucGFnZVgsIHk6IGUucGFnZVkgfSkpXG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5sZWZ0JykgZ2V0IHN0eWxlTGVmdCgpIHtcbiAgICByZXR1cm4gdGhpcy5weCh0aGlzLnNjYWxlKHRoaXMubGVmdCkpXG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS50b3AnKSBnZXQgc3R5bGVUb3AoKSB7XG4gICAgcmV0dXJuIHRoaXMucHgodGhpcy5zY2FsZSh0aGlzLnRvcCkpXG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aCcpIGdldCBzdHlsZVdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuc2NhbGUodGhpcy53aWR0aCkpXG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQnKSBnZXQgc3R5bGVIZWlnaHQoKSB7XG4gICAgcmV0dXJuIHRoaXMucHgodGhpcy5zY2FsZSh0aGlzLmhlaWdodCkpXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdwb2ludGVyZG93bicsIFsnJGV2ZW50J10pIHBvaW50ZXJkb3duKGV2ZW50OiBQb2ludGVyRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIHRoaXMuZHJhZy5zdGFydChldmVudClcbiAgfVxuXG4gIHB4KHZhbHVlOiBudW1iZXIpIHtcbiAgICByZXR1cm4gYCR7dmFsdWV9cHhgXG4gIH1cblxuICBzY2FsZSh2OiBudW1iZXIpIHtcbiAgICByZXR1cm4gdiAqIHRoaXMuY29udGFpbmVyV2lkdGhcbiAgfVxuXG4gIGludmVydCh2OiBudW1iZXIpIHtcbiAgICByZXR1cm4gdiAvIHRoaXMuY29udGFpbmVyV2lkdGhcbiAgfVxuXG4gIG9uRHJhZyhkeDogbnVtYmVyLCBkeTogbnVtYmVyKSB7XG4gICAgdGhpcy50cmFuc2xhdGUodGhpcy5pbnZlcnQoLWR4KSwgdGhpcy5pbnZlcnQoLWR5KSlcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { Component, Input, ChangeDetectorRef, HostListener, ElementRef, HostBinding } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../mini-viewport/mini-viewport.component";
|
|
5
|
+
import * as i3 from "../mini-node/mini-node.component";
|
|
6
|
+
function MinimapComponent_minimap_mini_node_0_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
+
i0.ɵɵelement(0, "minimap-mini-node", 2);
|
|
8
|
+
} if (rf & 2) {
|
|
9
|
+
const node_r1 = ctx.$implicit;
|
|
10
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
11
|
+
i0.ɵɵproperty("left", ctx_r0.scale(node_r1.left))("top", ctx_r0.scale(node_r1.top))("width", ctx_r0.scale(node_r1.width))("height", ctx_r0.scale(node_r1.height));
|
|
12
|
+
} }
|
|
13
|
+
export class MinimapComponent {
|
|
14
|
+
el;
|
|
15
|
+
cdr;
|
|
16
|
+
rendered;
|
|
17
|
+
size;
|
|
18
|
+
ratio;
|
|
19
|
+
nodes;
|
|
20
|
+
viewport;
|
|
21
|
+
translate;
|
|
22
|
+
point;
|
|
23
|
+
get width() {
|
|
24
|
+
return this.px(this.size * this.ratio);
|
|
25
|
+
}
|
|
26
|
+
get height() {
|
|
27
|
+
return this.px(this.size);
|
|
28
|
+
}
|
|
29
|
+
pointerdown(event) {
|
|
30
|
+
event.stopPropagation();
|
|
31
|
+
event.preventDefault();
|
|
32
|
+
}
|
|
33
|
+
dblclick(event) {
|
|
34
|
+
event.stopPropagation();
|
|
35
|
+
event.preventDefault();
|
|
36
|
+
if (!this.el.nativeElement)
|
|
37
|
+
return;
|
|
38
|
+
const box = this.el.nativeElement.getBoundingClientRect();
|
|
39
|
+
const x = (event.clientX - box.left) / (this.size * this.ratio);
|
|
40
|
+
const y = (event.clientY - box.top) / (this.size * this.ratio);
|
|
41
|
+
this.point(x, y);
|
|
42
|
+
}
|
|
43
|
+
constructor(el, cdr) {
|
|
44
|
+
this.el = el;
|
|
45
|
+
this.cdr = cdr;
|
|
46
|
+
this.cdr.detach();
|
|
47
|
+
}
|
|
48
|
+
ngOnChanges() {
|
|
49
|
+
this.cdr.detectChanges();
|
|
50
|
+
requestAnimationFrame(() => this.rendered());
|
|
51
|
+
}
|
|
52
|
+
px(value) {
|
|
53
|
+
return `${value}px`;
|
|
54
|
+
}
|
|
55
|
+
scale(value) {
|
|
56
|
+
if (!this.el.nativeElement)
|
|
57
|
+
return 0;
|
|
58
|
+
return value * this.el.nativeElement.clientWidth;
|
|
59
|
+
}
|
|
60
|
+
identifyMiniNode(_, item) {
|
|
61
|
+
return [item.top, item.left].join('_');
|
|
62
|
+
}
|
|
63
|
+
static ɵfac = function MinimapComponent_Factory(t) { return new (t || MinimapComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
64
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MinimapComponent, selectors: [["ng-component"]], hostAttrs: ["data-testid", "minimap"], hostVars: 4, hostBindings: function MinimapComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
65
|
+
i0.ɵɵlistener("pointerdown", function MinimapComponent_pointerdown_HostBindingHandler($event) { return ctx.pointerdown($event); })("dblclick", function MinimapComponent_dblclick_HostBindingHandler($event) { return ctx.dblclick($event); });
|
|
66
|
+
} if (rf & 2) {
|
|
67
|
+
i0.ɵɵstyleProp("width", ctx.width)("height", ctx.height);
|
|
68
|
+
} }, inputs: { rendered: "rendered", size: "size", ratio: "ratio", nodes: "nodes", viewport: "viewport", translate: "translate", point: "point" }, features: [i0.ɵɵNgOnChangesFeature], decls: 2, vars: 8, consts: [[3, "left", "top", "width", "height", 4, "ngFor", "ngForOf", "ngForTrackBy"], [3, "left", "top", "width", "height", "containerWidth", "translate"], [3, "left", "top", "width", "height"]], template: function MinimapComponent_Template(rf, ctx) { if (rf & 1) {
|
|
69
|
+
i0.ɵɵtemplate(0, MinimapComponent_minimap_mini_node_0_Template, 1, 4, "minimap-mini-node", 0);
|
|
70
|
+
i0.ɵɵelement(1, "minimap-mini-viewport", 1);
|
|
71
|
+
} if (rf & 2) {
|
|
72
|
+
i0.ɵɵproperty("ngForOf", ctx.nodes)("ngForTrackBy", ctx.identifyMiniNode);
|
|
73
|
+
i0.ɵɵadvance(1);
|
|
74
|
+
i0.ɵɵproperty("left", ctx.viewport.left)("top", ctx.viewport.top)("width", ctx.viewport.width)("height", ctx.viewport.height)("containerWidth", ctx.el.nativeElement == null ? null : ctx.el.nativeElement.clientWidth)("translate", ctx.translate);
|
|
75
|
+
} }, dependencies: [i1.NgForOf, i2.MiniViewportComponent, i3.MiniNodeComponent], styles: ["[_nghost-%COMP%]{position:absolute;right:24px;bottom:24px;background:rgba(229,234,239,.65);padding:20px;overflow:hidden;border:1px solid #b1b7ff;border-radius:8px;box-sizing:border-box}"] });
|
|
76
|
+
}
|
|
77
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MinimapComponent, [{
|
|
78
|
+
type: Component,
|
|
79
|
+
args: [{ host: {
|
|
80
|
+
'data-testid': 'minimap'
|
|
81
|
+
}, template: "<minimap-mini-node *ngFor=\"let node of nodes; trackBy: identifyMiniNode\" [left]=\"scale(node.left)\"\n [top]=\"scale(node.top)\" [width]=\"scale(node.width)\" [height]=\"scale(node.height)\">\n\n</minimap-mini-node>\n<minimap-mini-viewport [left]=\"viewport.left\" [top]=\"viewport.top\" [width]=\"viewport.width\" [height]=\"viewport.height\"\n [containerWidth]=\"el.nativeElement?.clientWidth\" [translate]=\"translate\"></minimap-mini-viewport>\n", styles: [":host{position:absolute;right:24px;bottom:24px;background:rgba(229,234,239,.65);padding:20px;overflow:hidden;border:1px solid #b1b7ff;border-radius:8px;box-sizing:border-box}\n"] }]
|
|
82
|
+
}], () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], { rendered: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], size: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}], ratio: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], nodes: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], viewport: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}], translate: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], point: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], width: [{
|
|
97
|
+
type: HostBinding,
|
|
98
|
+
args: ['style.width']
|
|
99
|
+
}], height: [{
|
|
100
|
+
type: HostBinding,
|
|
101
|
+
args: ['style.height']
|
|
102
|
+
}], pointerdown: [{
|
|
103
|
+
type: HostListener,
|
|
104
|
+
args: ['pointerdown', ['$event']]
|
|
105
|
+
}], dblclick: [{
|
|
106
|
+
type: HostListener,
|
|
107
|
+
args: ['dblclick', ['$event']]
|
|
108
|
+
}] }); })();
|
|
109
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MinimapComponent, { className: "MinimapComponent", filePath: "presets/minimap/components/minimap/minimap.component.ts", lineNumber: 11 }); })();
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaW1hcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9taW5pbWFwL2NvbXBvbmVudHMvbWluaW1hcC9taW5pbWFwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25nMTcvLnNyYy9wcmVzZXRzL21pbmltYXAvY29tcG9uZW50cy9taW5pbWFwL21pbmltYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQWEsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ0F0SCx1Q0FHb0I7Ozs7SUFIcUQsaURBQXlCLGtDQUFBLHNDQUFBLHdDQUFBOztBRFVsRyxNQUFNLE9BQU8sZ0JBQWdCO0lBaUNSO0lBQXdCO0lBaENsQyxRQUFRLENBQWE7SUFDckIsSUFBSSxDQUFTO0lBQ2IsS0FBSyxDQUF1QjtJQUM1QixLQUFLLENBQXVCO0lBQzVCLFFBQVEsQ0FBMEI7SUFDbEMsU0FBUyxDQUEyQjtJQUNwQyxLQUFLLENBQXVCO0lBRXJDLElBQWdDLEtBQUs7UUFDbkMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3hDLENBQUM7SUFDRCxJQUFpQyxNQUFNO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUV3QyxXQUFXLENBQUMsS0FBbUI7UUFDdEUsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQ3ZCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUN4QixDQUFDO0lBRXFDLFFBQVEsQ0FBQyxLQUFpQjtRQUM5RCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdkIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBRXRCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWE7WUFBRSxPQUFNO1FBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUE7UUFDekQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQy9ELE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUU5RCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUNsQixDQUFDO0lBRUQsWUFBbUIsRUFBYyxFQUFVLEdBQXNCO1FBQTlDLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUMvRCxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFBO0lBQ25CLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN4QixxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRUQsRUFBRSxDQUFDLEtBQWE7UUFDZCxPQUFPLEdBQUcsS0FBSyxJQUFJLENBQUE7SUFDckIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFhO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWE7WUFBRSxPQUFPLENBQUMsQ0FBQTtRQUVwQyxPQUFPLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUE7SUFDbEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLENBQVMsRUFBRSxJQUFrQztRQUM1RCxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3hDLENBQUM7MEVBdERVLGdCQUFnQjs2REFBaEIsZ0JBQWdCO21IQUFoQix1QkFBbUIsd0ZBQW5CLG9CQUFnQjs7OztZQ1Y3Qiw2RkFHb0I7WUFDcEIsMkNBQ21HOztZQUwvRCxtQ0FBVSxzQ0FBQTtZQUl2QixlQUFzQjtZQUF0Qix3Q0FBc0IseUJBQUEsNkJBQUEsK0JBQUEsMEZBQUEsNEJBQUE7OztpRkRNaEMsZ0JBQWdCO2NBUDVCLFNBQVM7dUJBR0Y7b0JBQ0osYUFBYSxFQUFFLFNBQVM7aUJBQ3pCOzJFQUdRLFFBQVE7a0JBQWhCLEtBQUs7WUFDRyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxRQUFRO2tCQUFoQixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUUwQixLQUFLO2tCQUFwQyxXQUFXO21CQUFDLGFBQWE7WUFHTyxNQUFNO2tCQUF0QyxXQUFXO21CQUFDLGNBQWM7WUFJYyxXQUFXO2tCQUFuRCxZQUFZO21CQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQUtELFFBQVE7a0JBQTdDLFlBQVk7bUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDOztrRkFyQnpCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdG9yUmVmLCBPbkNoYW5nZXMsIEhvc3RMaXN0ZW5lciwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1pbmltYXBEYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL21pbmltYXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9taW5pbWFwLmNvbXBvbmVudC5zYXNzJ10sXG4gIGhvc3Q6IHtcbiAgICAnZGF0YS10ZXN0aWQnOiAnbWluaW1hcCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBNaW5pbWFwQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgcmVuZGVyZWQhOiAoKSA9PiB2b2lkXG4gIEBJbnB1dCgpIHNpemUhOiBudW1iZXJcbiAgQElucHV0KCkgcmF0aW8hOiBNaW5pbWFwRGF0YVsncmF0aW8nXVxuICBASW5wdXQoKSBub2RlcyE6IE1pbmltYXBEYXRhWydub2RlcyddXG4gIEBJbnB1dCgpIHZpZXdwb3J0ITogTWluaW1hcERhdGFbJ3ZpZXdwb3J0J11cbiAgQElucHV0KCkgdHJhbnNsYXRlITogTWluaW1hcERhdGFbJ3RyYW5zbGF0ZSddXG4gIEBJbnB1dCgpIHBvaW50ITogTWluaW1hcERhdGFbJ3BvaW50J11cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLndpZHRoJykgZ2V0IHdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuc2l6ZSAqIHRoaXMucmF0aW8pXG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQnKSBnZXQgaGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuc2l6ZSlcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgWyckZXZlbnQnXSkgcG9pbnRlcmRvd24oZXZlbnQ6IFBvaW50ZXJFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZGJsY2xpY2snLCBbJyRldmVudCddKSBkYmxjbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuXG4gICAgaWYgKCF0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpIHJldHVyblxuICAgIGNvbnN0IGJveCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgIGNvbnN0IHggPSAoZXZlbnQuY2xpZW50WCAtIGJveC5sZWZ0KSAvICh0aGlzLnNpemUgKiB0aGlzLnJhdGlvKVxuICAgIGNvbnN0IHkgPSAoZXZlbnQuY2xpZW50WSAtIGJveC50b3ApIC8gKHRoaXMuc2l6ZSAqIHRoaXMucmF0aW8pXG5cbiAgICB0aGlzLnBvaW50KHgsIHkpXG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikgIHtcbiAgICB0aGlzLmNkci5kZXRhY2goKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHRoaXMucmVuZGVyZWQoKSlcbiAgfVxuXG4gIHB4KHZhbHVlOiBudW1iZXIpIHtcbiAgICByZXR1cm4gYCR7dmFsdWV9cHhgXG4gIH1cblxuICBzY2FsZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKCF0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpIHJldHVybiAwXG5cbiAgICByZXR1cm4gdmFsdWUgKiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGhcbiAgfVxuXG4gIGlkZW50aWZ5TWluaU5vZGUoXzogbnVtYmVyLCBpdGVtOiBNaW5pbWFwRGF0YVsnbm9kZXMnXVtudW1iZXJdKSB7XG4gICAgcmV0dXJuIFtpdGVtLnRvcCwgaXRlbS5sZWZ0XS5qb2luKCdfJylcbiAgfVxufVxuIiwiPG1pbmltYXAtbWluaS1ub2RlICpuZ0Zvcj1cImxldCBub2RlIG9mIG5vZGVzOyB0cmFja0J5OiBpZGVudGlmeU1pbmlOb2RlXCIgW2xlZnRdPVwic2NhbGUobm9kZS5sZWZ0KVwiXG4gIFt0b3BdPVwic2NhbGUobm9kZS50b3ApXCIgW3dpZHRoXT1cInNjYWxlKG5vZGUud2lkdGgpXCIgW2hlaWdodF09XCJzY2FsZShub2RlLmhlaWdodClcIj5cblxuPC9taW5pbWFwLW1pbmktbm9kZT5cbjxtaW5pbWFwLW1pbmktdmlld3BvcnQgW2xlZnRdPVwidmlld3BvcnQubGVmdFwiIFt0b3BdPVwidmlld3BvcnQudG9wXCIgW3dpZHRoXT1cInZpZXdwb3J0LndpZHRoXCIgW2hlaWdodF09XCJ2aWV3cG9ydC5oZWlnaHRcIlxuICBbY29udGFpbmVyV2lkdGhdPVwiZWwubmF0aXZlRWxlbWVudD8uY2xpZW50V2lkdGhcIiBbdHJhbnNsYXRlXT1cInRyYW5zbGF0ZVwiPjwvbWluaW1hcC1taW5pLXZpZXdwb3J0PlxuIl19
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { MinimapComponent } from './components/minimap/minimap.component';
|
|
2
|
+
/**
|
|
3
|
+
* Preset for rendering minimap.
|
|
4
|
+
*/
|
|
5
|
+
export function setup(props) {
|
|
6
|
+
return {
|
|
7
|
+
update(context) {
|
|
8
|
+
if (context.data.type === 'minimap') {
|
|
9
|
+
return {
|
|
10
|
+
nodes: context.data.nodes,
|
|
11
|
+
size: props?.size || 200,
|
|
12
|
+
ratio: context.data.ratio,
|
|
13
|
+
viewport: context.data.viewport,
|
|
14
|
+
translate: context.data.translate,
|
|
15
|
+
point: context.data.point
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
return null;
|
|
19
|
+
},
|
|
20
|
+
mount(context, plugin) {
|
|
21
|
+
const parent = plugin.parentScope();
|
|
22
|
+
const emit = parent.emit.bind(parent);
|
|
23
|
+
const rendered = () => {
|
|
24
|
+
emit({ type: 'rendered', data: context.data });
|
|
25
|
+
};
|
|
26
|
+
if (context.data.type === 'minimap') {
|
|
27
|
+
return {
|
|
28
|
+
key: 'rete-minimap',
|
|
29
|
+
component: MinimapComponent,
|
|
30
|
+
props: {
|
|
31
|
+
nodes: context.data.nodes,
|
|
32
|
+
size: props?.size || 200,
|
|
33
|
+
ratio: context.data.ratio,
|
|
34
|
+
viewport: context.data.viewport,
|
|
35
|
+
translate: context.data.translate,
|
|
36
|
+
point: context.data.point,
|
|
37
|
+
rendered
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9taW5pbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRTFFOztHQUVHO0FBQ0gsTUFBTSxVQUFVLEtBQUssQ0FBdUQsS0FBeUI7SUFDbkcsT0FBTztRQUNMLE1BQU0sQ0FBQyxPQUFPO1lBQ1osSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7Z0JBQ25DLE9BQU87b0JBQ0wsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSztvQkFDekIsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksR0FBRztvQkFDeEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSztvQkFDekIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUTtvQkFDL0IsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUztvQkFDakMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSztpQkFDMUIsQ0FBQTthQUNGO1lBQ0QsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO1FBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNO1lBQ25CLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQTtZQUNuQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUNyQyxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQVMsQ0FBQyxDQUFBO1lBQ3ZELENBQUMsQ0FBQTtZQUVELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO2dCQUNuQyxPQUFPO29CQUNMLEdBQUcsRUFBRSxjQUFjO29CQUNuQixTQUFTLEVBQUUsZ0JBQWdCO29CQUMzQixLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSzt3QkFDekIsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksR0FBRzt3QkFDeEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSzt3QkFDekIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUTt3QkFDL0IsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUzt3QkFDakMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSzt3QkFDekIsUUFBUTtxQkFDVDtpQkFDRixDQUFBO2FBQ0Y7WUFDRCxPQUFPLElBQUksQ0FBQTtRQUNiLENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VTY2hlbWVzIH0gZnJvbSAncmV0ZSc7XG5cbmltcG9ydCB7IFJlbmRlclByZXNldCB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IE1pbmltYXBSZW5kZXIgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IE1pbmltYXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWluaW1hcC9taW5pbWFwLmNvbXBvbmVudCc7XG5cbi8qKlxuICogUHJlc2V0IGZvciByZW5kZXJpbmcgbWluaW1hcC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldHVwPFNjaGVtZXMgZXh0ZW5kcyBCYXNlU2NoZW1lcywgSyBleHRlbmRzIE1pbmltYXBSZW5kZXI+KHByb3BzPzogeyBzaXplPzogbnVtYmVyIH0pOiBSZW5kZXJQcmVzZXQ8U2NoZW1lcywgSz4ge1xuICByZXR1cm4ge1xuICAgIHVwZGF0ZShjb250ZXh0KSB7XG4gICAgICBpZiAoY29udGV4dC5kYXRhLnR5cGUgPT09ICdtaW5pbWFwJykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5vZGVzOiBjb250ZXh0LmRhdGEubm9kZXMsXG4gICAgICAgICAgc2l6ZTogcHJvcHM/LnNpemUgfHwgMjAwLFxuICAgICAgICAgIHJhdGlvOiBjb250ZXh0LmRhdGEucmF0aW8sXG4gICAgICAgICAgdmlld3BvcnQ6IGNvbnRleHQuZGF0YS52aWV3cG9ydCxcbiAgICAgICAgICB0cmFuc2xhdGU6IGNvbnRleHQuZGF0YS50cmFuc2xhdGUsXG4gICAgICAgICAgcG9pbnQ6IGNvbnRleHQuZGF0YS5wb2ludFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH0sXG4gICAgbW91bnQoY29udGV4dCwgcGx1Z2luKSB7XG4gICAgICBjb25zdCBwYXJlbnQgPSBwbHVnaW4ucGFyZW50U2NvcGUoKVxuICAgICAgY29uc3QgZW1pdCA9IHBhcmVudC5lbWl0LmJpbmQocGFyZW50KVxuICAgICAgY29uc3QgcmVuZGVyZWQgPSAoKSA9PiB7XG4gICAgICAgIGVtaXQoeyB0eXBlOiAncmVuZGVyZWQnLCBkYXRhOiBjb250ZXh0LmRhdGEgfSBhcyBhbnkpXG4gICAgICB9XG5cbiAgICAgIGlmIChjb250ZXh0LmRhdGEudHlwZSA9PT0gJ21pbmltYXAnKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAga2V5OiAncmV0ZS1taW5pbWFwJyxcbiAgICAgICAgICBjb21wb25lbnQ6IE1pbmltYXBDb21wb25lbnQsXG4gICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgIG5vZGVzOiBjb250ZXh0LmRhdGEubm9kZXMsXG4gICAgICAgICAgICBzaXplOiBwcm9wcz8uc2l6ZSB8fCAyMDAsXG4gICAgICAgICAgICByYXRpbzogY29udGV4dC5kYXRhLnJhdGlvLFxuICAgICAgICAgICAgdmlld3BvcnQ6IGNvbnRleHQuZGF0YS52aWV3cG9ydCxcbiAgICAgICAgICAgIHRyYW5zbGF0ZTogY29udGV4dC5kYXRhLnRyYW5zbGF0ZSxcbiAgICAgICAgICAgIHBvaW50OiBjb250ZXh0LmRhdGEucG9pbnQsXG4gICAgICAgICAgICByZW5kZXJlZFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { MinimapComponent } from './components/minimap/minimap.component';
|
|
4
|
+
import { MiniViewportComponent } from './components/mini-viewport/mini-viewport.component';
|
|
5
|
+
import { MiniNodeComponent } from './components/mini-node/mini-node.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class ReteMinimapModule {
|
|
8
|
+
static ɵfac = function ReteMinimapModule_Factory(t) { return new (t || ReteMinimapModule)(); };
|
|
9
|
+
static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ReteMinimapModule });
|
|
10
|
+
static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule] });
|
|
11
|
+
}
|
|
12
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReteMinimapModule, [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
declarations: [
|
|
16
|
+
MinimapComponent,
|
|
17
|
+
MiniViewportComponent,
|
|
18
|
+
MiniNodeComponent
|
|
19
|
+
],
|
|
20
|
+
imports: [
|
|
21
|
+
CommonModule
|
|
22
|
+
],
|
|
23
|
+
exports: [
|
|
24
|
+
MinimapComponent,
|
|
25
|
+
MiniViewportComponent,
|
|
26
|
+
MiniNodeComponent
|
|
27
|
+
]
|
|
28
|
+
}]
|
|
29
|
+
}], null, null); })();
|
|
30
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(ReteMinimapModule, { declarations: [MinimapComponent,
|
|
31
|
+
MiniViewportComponent,
|
|
32
|
+
MiniNodeComponent], imports: [CommonModule], exports: [MinimapComponent,
|
|
33
|
+
MiniViewportComponent,
|
|
34
|
+
MiniNodeComponent] }); })();
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbmcxNy8uc3JjL3ByZXNldHMvbWluaW1hcC9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNENBQTRDLENBQUM7O0FBaUIvRSxNQUFNLE9BQU8saUJBQWlCOzJFQUFqQixpQkFBaUI7NERBQWpCLGlCQUFpQjtnRUFSMUIsWUFBWTs7aUZBUUgsaUJBQWlCO2NBZjdCLFFBQVE7ZUFBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osZ0JBQWdCO29CQUNoQixxQkFBcUI7b0JBQ3JCLGlCQUFpQjtpQkFDbEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLGdCQUFnQjtvQkFDaEIscUJBQXFCO29CQUNyQixpQkFBaUI7aUJBQ2xCO2FBQ0Y7O3dGQUNZLGlCQUFpQixtQkFiMUIsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixpQkFBaUIsYUFHakIsWUFBWSxhQUdaLGdCQUFnQjtRQUNoQixxQkFBcUI7UUFDckIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IE1pbmltYXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWluaW1hcC9taW5pbWFwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaW5pVmlld3BvcnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWluaS12aWV3cG9ydC9taW5pLXZpZXdwb3J0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaW5pTm9kZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9taW5pLW5vZGUvbWluaS1ub2RlLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1pbmltYXBDb21wb25lbnQsXG4gICAgTWluaVZpZXdwb3J0Q29tcG9uZW50LFxuICAgIE1pbmlOb2RlQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE1pbmltYXBDb21wb25lbnQsXG4gICAgTWluaVZpZXdwb3J0Q29tcG9uZW50LFxuICAgIE1pbmlOb2RlQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUmV0ZU1pbmltYXBNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9taW5pbWFwL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZW5kZXJTaWduYWwgfSBmcm9tICcuLi8uLi90eXBlcydcblxuZXhwb3J0IHR5cGUgUmVjdCA9IHtcbiAgd2lkdGg6IG51bWJlclxuICBoZWlnaHQ6IG51bWJlclxuICBsZWZ0OiBudW1iZXIsXG4gIHRvcDogbnVtYmVyXG59XG5leHBvcnQgdHlwZSBUcmFuc2Zvcm0gPSB7XG4gIHg6IG51bWJlclxuICB5OiBudW1iZXJcbiAgazogbnVtYmVyXG59XG5leHBvcnQgdHlwZSBUcmFuc2xhdGUgPSAoZHg6IG51bWJlciwgZHk6IG51bWJlcikgPT4gdm9pZFxuXG5leHBvcnQgdHlwZSBNaW5pbWFwRGF0YSA9IHtcbiAgICByYXRpbzogbnVtYmVyXG4gICAgbm9kZXM6IFJlY3RbXVxuICAgIHZpZXdwb3J0OiBSZWN0XG4gICAgc3RhcnQoKTogVHJhbnNmb3JtXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVcbiAgICBwb2ludCh4OiBudW1iZXIsIHk6IG51bWJlcik6IHZvaWRcbiAgfVxuXG5leHBvcnQgdHlwZSBNaW5pbWFwUmVuZGVyID1cbiAgfCBSZW5kZXJTaWduYWw8J21pbmltYXAnLCBNaW5pbWFwRGF0YT5cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { PinsComponent } from './pins/pins.component';
|
|
2
|
+
export { PinComponent } from './pin/pin.component';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9uZzE3Ly5zcmMvcHJlc2V0cy9yZXJvdXRlL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IFBpbnNDb21wb25lbnQgfSBmcm9tICcuL3BpbnMvcGlucy5jb21wb25lbnQnO1xuZXhwb3J0IHsgUGluQ29tcG9uZW50IH0gZnJvbSAnLi9waW4vcGluLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Component, Input, ChangeDetectorRef, HostListener, HostBinding, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { useDrag } from '../../../../shared/drag';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
const pinSize = 20;
|
|
5
|
+
export class PinComponent {
|
|
6
|
+
cdr;
|
|
7
|
+
position;
|
|
8
|
+
selected;
|
|
9
|
+
getPointer;
|
|
10
|
+
menu = new EventEmitter();
|
|
11
|
+
translate = new EventEmitter();
|
|
12
|
+
down = new EventEmitter();
|
|
13
|
+
drag = useDrag((dx, dy) => {
|
|
14
|
+
this.translate.emit({ dx, dy });
|
|
15
|
+
}, () => this.getPointer());
|
|
16
|
+
get _selected() {
|
|
17
|
+
return this.selected;
|
|
18
|
+
}
|
|
19
|
+
get top() {
|
|
20
|
+
return `${this.position.y - pinSize / 2}px`;
|
|
21
|
+
}
|
|
22
|
+
get left() {
|
|
23
|
+
return `${this.position.x - pinSize / 2}px`;
|
|
24
|
+
}
|
|
25
|
+
pointerdown(event) {
|
|
26
|
+
event.stopPropagation();
|
|
27
|
+
event.preventDefault();
|
|
28
|
+
this.drag.start(event);
|
|
29
|
+
this.down.emit();
|
|
30
|
+
}
|
|
31
|
+
contextmenu(event) {
|
|
32
|
+
event.stopPropagation();
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
this.menu.emit();
|
|
35
|
+
}
|
|
36
|
+
constructor(cdr) {
|
|
37
|
+
this.cdr = cdr;
|
|
38
|
+
// this.cdr.detach()
|
|
39
|
+
}
|
|
40
|
+
ngOnChanges() {
|
|
41
|
+
// this.cdr.detectChanges()
|
|
42
|
+
// requestAnimationFrame(() => this.rendered())
|
|
43
|
+
}
|
|
44
|
+
static ɵfac = function PinComponent_Factory(t) { return new (t || PinComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
|
|
45
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PinComponent, selectors: [["reroute-pin"]], hostAttrs: ["data-testid", "pin"], hostVars: 6, hostBindings: function PinComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
46
|
+
i0.ɵɵlistener("pointerdown", function PinComponent_pointerdown_HostBindingHandler($event) { return ctx.pointerdown($event); })("contextmenu", function PinComponent_contextmenu_HostBindingHandler($event) { return ctx.contextmenu($event); });
|
|
47
|
+
} if (rf & 2) {
|
|
48
|
+
i0.ɵɵstyleProp("top", ctx.top)("left", ctx.left);
|
|
49
|
+
i0.ɵɵclassProp("selected", ctx._selected);
|
|
50
|
+
} }, inputs: { position: "position", selected: "selected", getPointer: "getPointer" }, outputs: { menu: "menu", translate: "translate", down: "down" }, features: [i0.ɵɵNgOnChangesFeature], decls: 0, vars: 0, template: function PinComponent_Template(rf, ctx) { }, styles: ["[_nghost-%COMP%]{display:block;width:20px;height:20px;box-sizing:border-box;background:steelblue;border:2px solid white;border-radius:20px;position:absolute}.selected[_nghost-%COMP%]{background:#ffd92c}"] });
|
|
51
|
+
}
|
|
52
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PinComponent, [{
|
|
53
|
+
type: Component,
|
|
54
|
+
args: [{ selector: 'reroute-pin', template: '', host: {
|
|
55
|
+
'data-testid': 'pin'
|
|
56
|
+
}, styles: [":host{display:block;width:20px;height:20px;box-sizing:border-box;background:steelblue;border:2px solid white;border-radius:20px;position:absolute}:host.selected{background:#ffd92c}\n"] }]
|
|
57
|
+
}], () => [{ type: i0.ChangeDetectorRef }], { position: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], selected: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], getPointer: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], menu: [{
|
|
64
|
+
type: Output
|
|
65
|
+
}], translate: [{
|
|
66
|
+
type: Output
|
|
67
|
+
}], down: [{
|
|
68
|
+
type: Output
|
|
69
|
+
}], _selected: [{
|
|
70
|
+
type: HostBinding,
|
|
71
|
+
args: ['class.selected']
|
|
72
|
+
}], top: [{
|
|
73
|
+
type: HostBinding,
|
|
74
|
+
args: ['style.top']
|
|
75
|
+
}], left: [{
|
|
76
|
+
type: HostBinding,
|
|
77
|
+
args: ['style.left']
|
|
78
|
+
}], pointerdown: [{
|
|
79
|
+
type: HostListener,
|
|
80
|
+
args: ['pointerdown', ['$event']]
|
|
81
|
+
}], contextmenu: [{
|
|
82
|
+
type: HostListener,
|
|
83
|
+
args: ['contextmenu', ['$event']]
|
|
84
|
+
}] }); })();
|
|
85
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PinComponent, { className: "PinComponent", filePath: "presets/reroute/components/pin/pin.component.ts", lineNumber: 15 }); })();
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25nMTcvLnNyYy9wcmVzZXRzL3Jlcm91dGUvY29tcG9uZW50cy9waW4vcGluLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBYSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEksT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFBOztBQUVqRCxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUE7QUFVbEIsTUFBTSxPQUFPLFlBQVk7SUFtQ0g7SUFsQ1gsUUFBUSxDQUFXO0lBQ25CLFFBQVEsQ0FBVTtJQUNsQixVQUFVLENBQWlCO0lBQzFCLElBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFBO0lBQy9CLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBOEIsQ0FBQTtJQUMxRCxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQTtJQUV6QyxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDakMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFBO0lBRTNCLElBQW1DLFNBQVM7UUFDMUMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBO0lBQ3RCLENBQUM7SUFDRCxJQUE4QixHQUFHO1FBQy9CLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUE7SUFDN0MsQ0FBQztJQUNELElBQStCLElBQUk7UUFDakMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQTtJQUM3QyxDQUFDO0lBQ3dDLFdBQVcsQ0FBQyxLQUFtQjtRQUN0RSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdkIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBRXRCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDbEIsQ0FBQztJQUN3QyxXQUFXLENBQUMsS0FBaUI7UUFDcEUsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQ3ZCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQTtRQUV0QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ2xCLENBQUM7SUFFRCxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN4QyxvQkFBb0I7SUFDdEIsQ0FBQztJQUVELFdBQVc7UUFDVCwyQkFBMkI7UUFDM0IsK0NBQStDO0lBQ2pELENBQUM7c0VBMUNVLFlBQVk7NkRBQVosWUFBWTsrR0FBWix1QkFBbUIsMEZBQW5CLHVCQUFtQjs7Ozs7O2lGQUFuQixZQUFZO2NBUnhCLFNBQVM7MkJBQ0UsYUFBYSxZQUNiLEVBQUUsUUFFTjtvQkFDSixhQUFhLEVBQUUsS0FBSztpQkFDckI7a0RBR1EsUUFBUTtrQkFBaEIsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBQ0ksSUFBSTtrQkFBYixNQUFNO1lBQ0csU0FBUztrQkFBbEIsTUFBTTtZQUNHLElBQUk7a0JBQWIsTUFBTTtZQU00QixTQUFTO2tCQUEzQyxXQUFXO21CQUFDLGdCQUFnQjtZQUdDLEdBQUc7a0JBQWhDLFdBQVc7bUJBQUMsV0FBVztZQUdPLElBQUk7a0JBQWxDLFdBQVc7bUJBQUMsWUFBWTtZQUdnQixXQUFXO2tCQUFuRCxZQUFZO21CQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQU9FLFdBQVc7a0JBQW5ELFlBQVk7bUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDOztrRkE1QjVCLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBDaGFuZ2VEZXRlY3RvclJlZiwgT25DaGFuZ2VzLCBIb3N0TGlzdGVuZXIsIEhvc3RCaW5kaW5nLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyB1c2VEcmFnIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2RyYWcnXG5cbmNvbnN0IHBpblNpemUgPSAyMFxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyZXJvdXRlLXBpbicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGluLmNvbXBvbmVudC5zYXNzJ10sXG4gIGhvc3Q6IHtcbiAgICAnZGF0YS10ZXN0aWQnOiAncGluJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIFBpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHBvc2l0aW9uITogUG9zaXRpb25cbiAgQElucHV0KCkgc2VsZWN0ZWQ/OiBib29sZWFuXG4gIEBJbnB1dCgpIGdldFBvaW50ZXIhOiAoKSA9PiBQb3NpdGlvblxuICBAT3V0cHV0KCkgbWVudSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuICBAT3V0cHV0KCkgdHJhbnNsYXRlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGR4OiBudW1iZXIsIGR5OiBudW1iZXIgfT4oKVxuICBAT3V0cHV0KCkgZG93biA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKVxuXG4gIGRyYWcgPSB1c2VEcmFnKChkeCwgZHkpID0+IHtcbiAgICB0aGlzLnRyYW5zbGF0ZS5lbWl0KHsgZHgsIGR5IH0pXG4gIH0sICgpID0+IHRoaXMuZ2V0UG9pbnRlcigpKVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2VsZWN0ZWQnKSBnZXQgX3NlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkXG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS50b3AnKSBnZXQgdG9wKCkge1xuICAgIHJldHVybiBgJHt0aGlzLnBvc2l0aW9uLnkgLSBwaW5TaXplIC8gMn1weGBcbiAgfVxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLmxlZnQnKSBnZXQgbGVmdCgpIHtcbiAgICByZXR1cm4gYCR7dGhpcy5wb3NpdGlvbi54IC0gcGluU2l6ZSAvIDJ9cHhgXG4gIH1cbiAgQEhvc3RMaXN0ZW5lcigncG9pbnRlcmRvd24nLCBbJyRldmVudCddKSBwb2ludGVyZG93bihldmVudDogUG9pbnRlckV2ZW50KSB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG5cbiAgICB0aGlzLmRyYWcuc3RhcnQoZXZlbnQpXG4gICAgdGhpcy5kb3duLmVtaXQoKVxuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2NvbnRleHRtZW51JywgWyckZXZlbnQnXSkgY29udGV4dG1lbnUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcblxuICAgIHRoaXMubWVudS5lbWl0KClcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIC8vIHRoaXMuY2RyLmRldGFjaCgpXG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICAvLyByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4gdGhpcy5yZW5kZXJlZCgpKVxuICB9XG5cbn1cbiJdfQ==
|