kritzel-stencil 0.0.160 → 0.0.162
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/dist/cjs/{default-text-tool.config-D10FksvZ.js → default-line-tool.config-D1Ns0NmM.js} +3156 -929
- package/dist/cjs/default-line-tool.config-D1Ns0NmM.js.map +1 -0
- package/dist/cjs/index.cjs.js +131 -126
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/kritzel-brush-style.cjs.entry.js +1 -1
- package/dist/cjs/kritzel-brush-style.entry.cjs.js.map +1 -1
- package/dist/cjs/kritzel-color_22.cjs.entry.js +538 -198
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/stencil.cjs.js +1 -1
- package/dist/collection/classes/core/core.class.js +140 -3
- package/dist/collection/classes/core/core.class.js.map +1 -1
- package/dist/collection/classes/core/reviver.class.js +8 -0
- package/dist/collection/classes/core/reviver.class.js.map +1 -1
- package/dist/collection/classes/core/store.class.js +8 -0
- package/dist/collection/classes/core/store.class.js.map +1 -1
- package/dist/collection/classes/handlers/line-handle.handler.js +383 -0
- package/dist/collection/classes/handlers/line-handle.handler.js.map +1 -0
- package/dist/collection/classes/handlers/move.handler.js +2 -2
- package/dist/collection/classes/handlers/move.handler.js.map +1 -1
- package/dist/collection/classes/handlers/resize.handler.js +42 -34
- package/dist/collection/classes/handlers/resize.handler.js.map +1 -1
- package/dist/collection/classes/handlers/rotation.handler.js +12 -8
- package/dist/collection/classes/handlers/rotation.handler.js.map +1 -1
- package/dist/collection/classes/managers/anchor.manager.js +874 -0
- package/dist/collection/classes/managers/anchor.manager.js.map +1 -0
- package/dist/collection/classes/managers/cursor.manager.js +117 -0
- package/dist/collection/classes/managers/cursor.manager.js.map +1 -0
- package/dist/collection/classes/objects/base-object.class.js +4 -2
- package/dist/collection/classes/objects/base-object.class.js.map +1 -1
- package/dist/collection/classes/objects/line.class.js +564 -0
- package/dist/collection/classes/objects/line.class.js.map +1 -0
- package/dist/collection/classes/objects/selection-group.class.js +4 -0
- package/dist/collection/classes/objects/selection-group.class.js.map +1 -1
- package/dist/collection/classes/registries/icon-registry.class.js +7 -1
- package/dist/collection/classes/registries/icon-registry.class.js.map +1 -1
- package/dist/collection/classes/tools/line-tool.class.js +172 -0
- package/dist/collection/classes/tools/line-tool.class.js.map +1 -0
- package/dist/collection/classes/tools/selection-tool.class.js +41 -8
- package/dist/collection/classes/tools/selection-tool.class.js.map +1 -1
- package/dist/collection/components/core/kritzel-cursor-trail/kritzel-cursor-trail.js +1 -1
- package/dist/collection/components/core/kritzel-editor/kritzel-editor.js +11 -2
- package/dist/collection/components/core/kritzel-editor/kritzel-editor.js.map +1 -1
- package/dist/collection/components/core/kritzel-engine/kritzel-engine.css +0 -14
- package/dist/collection/components/core/kritzel-engine/kritzel-engine.js +163 -21
- package/dist/collection/components/core/kritzel-engine/kritzel-engine.js.map +1 -1
- package/dist/collection/components/shared/kritzel-brush-style/kritzel-brush-style.css +0 -1
- package/dist/collection/components/shared/kritzel-color/kritzel-color.js +2 -2
- package/dist/collection/components/shared/kritzel-color-palette/kritzel-color-palette.css +1 -1
- package/dist/collection/components/shared/kritzel-color-palette/kritzel-color-palette.js +1 -1
- package/dist/collection/components/shared/kritzel-dropdown/kritzel-dropdown.css +1 -1
- package/dist/collection/components/shared/kritzel-font/kritzel-font.js +1 -1
- package/dist/collection/components/shared/kritzel-font-family/kritzel-font-family.css +1 -1
- package/dist/collection/components/shared/kritzel-font-family/kritzel-font-family.js +1 -1
- package/dist/collection/components/shared/kritzel-font-size/kritzel-font-size.css +1 -1
- package/dist/collection/components/shared/kritzel-font-size/kritzel-font-size.js +1 -1
- package/dist/collection/components/shared/kritzel-menu/kritzel-menu.js +1 -1
- package/dist/collection/components/shared/kritzel-menu-item/kritzel-menu-item.css +1 -2
- package/dist/collection/components/shared/kritzel-menu-item/kritzel-menu-item.js +2 -2
- package/dist/collection/components/shared/kritzel-portal/kritzel-portal.js +1 -1
- package/dist/collection/components/shared/kritzel-split-button/kritzel-split-button.css +1 -1
- package/dist/collection/components/shared/kritzel-split-button/kritzel-split-button.js +1 -1
- package/dist/collection/components/shared/kritzel-stroke-size/kritzel-stroke-size.css +1 -1
- package/dist/collection/components/shared/kritzel-stroke-size/kritzel-stroke-size.js +1 -1
- package/dist/collection/components/shared/kritzel-tooltip/kritzel-tooltip.js +4 -4
- package/dist/collection/components/ui/kritzel-context-menu/kritzel-context-menu.css +1 -2
- package/dist/collection/components/ui/kritzel-context-menu/kritzel-context-menu.js +1 -1
- package/dist/collection/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.css +1 -1
- package/dist/collection/components/ui/kritzel-control-brush-config/kritzel-control-brush-config.js +2 -2
- package/dist/collection/components/ui/kritzel-control-text-config/kritzel-control-text-config.css +1 -1
- package/dist/collection/components/ui/kritzel-control-text-config/kritzel-control-text-config.js +2 -2
- package/dist/collection/components/ui/kritzel-controls/kritzel-controls.css +4 -4
- package/dist/collection/components/ui/kritzel-controls/kritzel-controls.js +3 -3
- package/dist/collection/components/ui/kritzel-utility-panel/kritzel-utility-panel.css +1 -1
- package/dist/collection/components/ui/kritzel-utility-panel/kritzel-utility-panel.js +1 -1
- package/dist/collection/configs/default-engine-config.js +10 -0
- package/dist/collection/configs/default-engine-config.js.map +1 -1
- package/dist/collection/configs/default-line-tool.config.js +34 -0
- package/dist/collection/configs/default-line-tool.config.js.map +1 -0
- package/dist/collection/helpers/cursor.helper.js +58 -0
- package/dist/collection/helpers/cursor.helper.js.map +1 -0
- package/dist/collection/helpers/geometry.helper.js +42 -0
- package/dist/collection/helpers/geometry.helper.js.map +1 -1
- package/dist/collection/index.js +6 -0
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/interfaces/anchor.interface.js +2 -0
- package/dist/collection/interfaces/anchor.interface.js.map +1 -0
- package/dist/collection/interfaces/arrow-head.interface.js +2 -0
- package/dist/collection/interfaces/arrow-head.interface.js.map +1 -0
- package/dist/collection/interfaces/engine-state.interface.js.map +1 -1
- package/dist/collection/interfaces/line-options.interface.js +2 -0
- package/dist/collection/interfaces/line-options.interface.js.map +1 -0
- package/dist/collection/interfaces/toolbar-control.interface.js.map +1 -1
- package/dist/components/index.js +4 -4
- package/dist/components/kritzel-brush-style.js +3 -3
- package/dist/components/kritzel-brush-style.js.map +1 -1
- package/dist/components/kritzel-color-palette.js +1 -1
- package/dist/components/kritzel-color.js +1 -1
- package/dist/components/kritzel-context-menu.js +1 -1
- package/dist/components/kritzel-control-brush-config.js +1 -1
- package/dist/components/kritzel-control-text-config.js +1 -1
- package/dist/components/kritzel-controls.js +1 -1
- package/dist/components/kritzel-cursor-trail.js +1 -1
- package/dist/components/kritzel-dropdown.js +1 -1
- package/dist/components/kritzel-editor.js +64 -23
- package/dist/components/kritzel-editor.js.map +1 -1
- package/dist/components/kritzel-engine.js +1 -1
- package/dist/components/kritzel-font-family.js +1 -1
- package/dist/components/kritzel-font-size.js +1 -1
- package/dist/components/kritzel-font.js +1 -1
- package/dist/components/kritzel-icon.js +1 -1
- package/dist/components/kritzel-menu-item.js +1 -1
- package/dist/components/kritzel-menu.js +1 -1
- package/dist/components/kritzel-portal.js +1 -1
- package/dist/components/kritzel-split-button.js +1 -1
- package/dist/components/kritzel-stroke-size.js +1 -1
- package/dist/components/kritzel-tooltip.js +1 -1
- package/dist/components/kritzel-utility-panel.js +1 -1
- package/dist/components/kritzel-workspace-manager.js +1 -1
- package/dist/components/{p-TdCTkEu0.js → p-7_lwv0zQ.js} +7 -7
- package/dist/components/p-7_lwv0zQ.js.map +1 -0
- package/dist/components/{p-CTP479Lf.js → p-9Fzdviju.js} +6 -6
- package/dist/components/{p-CTP479Lf.js.map → p-9Fzdviju.js.map} +1 -1
- package/dist/components/{p-DDmSxM5f.js → p-B6r22FSC.js} +5 -5
- package/dist/components/p-B6r22FSC.js.map +1 -0
- package/dist/components/{p-CLt3HMl6.js → p-B_3OZeom.js} +3 -3
- package/dist/components/{p-CLt3HMl6.js.map → p-B_3OZeom.js.map} +1 -1
- package/dist/components/{p-CIXPLjCu.js → p-BdwB-S9G.js} +3 -3
- package/dist/components/p-BdwB-S9G.js.map +1 -0
- package/dist/components/p-BixlbUD7.js +104 -0
- package/dist/components/p-BixlbUD7.js.map +1 -0
- package/dist/components/{p-D1uj4A4F.js → p-Brd9SxWS.js} +5 -5
- package/dist/components/p-Brd9SxWS.js.map +1 -0
- package/dist/components/{p-Ddh40W3x.js → p-CDteBYm9.js} +9 -9
- package/dist/components/p-CDteBYm9.js.map +1 -0
- package/dist/components/{p-BgznZoBH.js → p-CFH6XRL5.js} +5 -5
- package/dist/components/p-CFH6XRL5.js.map +1 -0
- package/dist/components/{p-B4kxkVe-.js → p-CRGwaUcp.js} +5 -5
- package/dist/components/p-CRGwaUcp.js.map +1 -0
- package/dist/components/{p-uuRJU2R1.js → p-Ck4lGnmt.js} +3 -3
- package/dist/components/{p-uuRJU2R1.js.map → p-Ck4lGnmt.js.map} +1 -1
- package/dist/components/{p-CK6no3mi.js → p-CkD1PQQX.js} +6 -6
- package/dist/components/{p-CK6no3mi.js.map → p-CkD1PQQX.js.map} +1 -1
- package/dist/components/{p-BQg4YML7.js → p-Cqr0Bah5.js} +12 -12
- package/dist/components/p-Cqr0Bah5.js.map +1 -0
- package/dist/components/{p-DTHqEUDc.js → p-CuhOrcET.js} +2861 -390
- package/dist/components/p-CuhOrcET.js.map +1 -0
- package/dist/components/{p-DAfkuR8U.js → p-CvLFRlQU.js} +5 -5
- package/dist/components/p-CvLFRlQU.js.map +1 -0
- package/dist/components/{p-1lIHoOlH.js → p-DKwJJuFb.js} +19 -19
- package/dist/components/p-DKwJJuFb.js.map +1 -0
- package/dist/components/{p-CsA9M6me.js → p-DZ7kxJUx.js} +8 -8
- package/dist/components/p-DZ7kxJUx.js.map +1 -0
- package/dist/components/{p-D4yvhd1d.js → p-LAsVgL2e.js} +4 -4
- package/dist/components/{p-D4yvhd1d.js.map → p-LAsVgL2e.js.map} +1 -1
- package/dist/components/{p-D5Wq4x4r.js → p-OFrACpZf.js} +3 -3
- package/dist/components/{p-D5Wq4x4r.js.map → p-OFrACpZf.js.map} +1 -1
- package/dist/components/{p-C2sWlNsJ.js → p-dMCB4tJA.js} +5 -5
- package/dist/components/p-dMCB4tJA.js.map +1 -0
- package/dist/components/{p-CBYBurdY.js → p-sokRZ7Vn.js} +49 -5
- package/dist/components/p-sokRZ7Vn.js.map +1 -0
- package/dist/esm/{default-text-tool.config-DzqpOikl.js → default-line-tool.config-C35m-d1Y.js} +3150 -930
- package/dist/esm/default-line-tool.config-C35m-d1Y.js.map +1 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/kritzel-brush-style.entry.js +1 -1
- package/dist/esm/kritzel-brush-style.entry.js.map +1 -1
- package/dist/esm/kritzel-color_22.entry.js +457 -117
- package/dist/esm/loader.js +1 -1
- package/dist/esm/stencil.js +1 -1
- package/dist/stencil/index.esm.js +1 -1
- package/dist/stencil/kritzel-brush-style.entry.esm.js.map +1 -1
- package/dist/stencil/p-385bab97.entry.js +2 -0
- package/dist/stencil/{p-d702c5af.entry.js.map → p-385bab97.entry.js.map} +1 -1
- package/dist/stencil/p-C35m-d1Y.js +2 -0
- package/dist/stencil/p-C35m-d1Y.js.map +1 -0
- package/dist/stencil/p-d142ef46.entry.js +10 -0
- package/dist/stencil/p-d142ef46.entry.js.map +1 -0
- package/dist/stencil/stencil.esm.js +1 -1
- package/dist/types/classes/core/core.class.d.ts +18 -0
- package/dist/types/classes/core/store.class.d.ts +3 -0
- package/dist/types/classes/handlers/line-handle.handler.d.ts +34 -0
- package/dist/types/classes/managers/anchor.manager.d.ts +160 -0
- package/dist/types/classes/managers/cursor.manager.d.ts +43 -0
- package/dist/types/classes/objects/line.class.d.ts +98 -0
- package/dist/types/classes/tools/line-tool.class.d.ts +17 -0
- package/dist/types/classes/tools/selection-tool.class.d.ts +4 -0
- package/dist/types/components/core/kritzel-engine/kritzel-engine.d.ts +4 -2
- package/dist/types/components.d.ts +7 -5
- package/dist/types/configs/default-line-tool.config.d.ts +2 -0
- package/dist/types/helpers/cursor.helper.d.ts +22 -0
- package/dist/types/helpers/geometry.helper.d.ts +10 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/interfaces/anchor.interface.d.ts +137 -0
- package/dist/types/interfaces/arrow-head.interface.d.ts +26 -0
- package/dist/types/interfaces/engine-state.interface.d.ts +15 -0
- package/dist/types/interfaces/line-options.interface.d.ts +21 -0
- package/dist/types/interfaces/toolbar-control.interface.d.ts +17 -1
- package/package.json +1 -1
- package/dist/cjs/default-text-tool.config-D10FksvZ.js.map +0 -1
- package/dist/components/p-1lIHoOlH.js.map +0 -1
- package/dist/components/p-B4kxkVe-.js.map +0 -1
- package/dist/components/p-BQg4YML7.js.map +0 -1
- package/dist/components/p-BgznZoBH.js.map +0 -1
- package/dist/components/p-Bhtn9qay.js +0 -98
- package/dist/components/p-Bhtn9qay.js.map +0 -1
- package/dist/components/p-C2sWlNsJ.js.map +0 -1
- package/dist/components/p-CBYBurdY.js.map +0 -1
- package/dist/components/p-CIXPLjCu.js.map +0 -1
- package/dist/components/p-CsA9M6me.js.map +0 -1
- package/dist/components/p-D1uj4A4F.js.map +0 -1
- package/dist/components/p-DAfkuR8U.js.map +0 -1
- package/dist/components/p-DDmSxM5f.js.map +0 -1
- package/dist/components/p-DTHqEUDc.js.map +0 -1
- package/dist/components/p-Ddh40W3x.js.map +0 -1
- package/dist/components/p-TdCTkEu0.js.map +0 -1
- package/dist/esm/default-text-tool.config-DzqpOikl.js.map +0 -1
- package/dist/stencil/p-5475442e.entry.js +0 -10
- package/dist/stencil/p-5475442e.entry.js.map +0 -1
- package/dist/stencil/p-DzqpOikl.js +0 -2
- package/dist/stencil/p-DzqpOikl.js.map +0 -1
- package/dist/stencil/p-d702c5af.entry.js +0 -2
|
@@ -46,20 +46,6 @@ p, h1, h2, h3, h4, h5, h6, blockquote, pre {
|
|
|
46
46
|
overflow: visible;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
.resize-handle-overlay.top-left,
|
|
50
|
-
.resize-handle-overlay.bottom-right {
|
|
51
|
-
cursor: nwse-resize;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.resize-handle-overlay.top-right,
|
|
55
|
-
.resize-handle-overlay.bottom-left {
|
|
56
|
-
cursor: nesw-resize;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.rotation-handle-overlay {
|
|
60
|
-
cursor: grab;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
49
|
.PlaygroundEditorTheme__quote {
|
|
64
50
|
margin: 0;
|
|
65
51
|
margin-left: 20px;
|
|
@@ -51,6 +51,10 @@ export class KritzelEngine {
|
|
|
51
51
|
this.core.store.state.scaleMin = newValue;
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
+
cursorTarget;
|
|
55
|
+
onCursorTargetChange(newValue) {
|
|
56
|
+
this.core.cursorManager.setTargetElement(newValue || document.body);
|
|
57
|
+
}
|
|
54
58
|
isEngineReady;
|
|
55
59
|
activeToolChange;
|
|
56
60
|
workspacesChange;
|
|
@@ -91,10 +95,14 @@ export class KritzelEngine {
|
|
|
91
95
|
if (this.core.store.isDisabled) {
|
|
92
96
|
return;
|
|
93
97
|
}
|
|
94
|
-
this.core.store.state.pointers.
|
|
98
|
+
if (this.core.store.state.pointers.has(ev.pointerId)) {
|
|
99
|
+
this.core.store.state.pointers.set(ev.pointerId, ev);
|
|
100
|
+
}
|
|
95
101
|
if (this.core.store.state.pointers.size > 1) {
|
|
96
102
|
this.throttledPointerMoveMulti(ev);
|
|
97
103
|
}
|
|
104
|
+
// Update cursor for handle hover states using elementsFromPoint
|
|
105
|
+
this.core.cursorManager.updateHoverState(ev);
|
|
98
106
|
this.viewport.handlePointerMove(ev);
|
|
99
107
|
this.core.store.state?.activeTool?.handlePointerMove(ev);
|
|
100
108
|
}
|
|
@@ -104,6 +112,10 @@ export class KritzelEngine {
|
|
|
104
112
|
}
|
|
105
113
|
this.core.store.state.pointers.delete(ev.pointerId);
|
|
106
114
|
this.host.releasePointerCapture(ev.pointerId);
|
|
115
|
+
// Reset cursor to default when all pointers are released
|
|
116
|
+
if (this.core.store.state.pointers.size === 0) {
|
|
117
|
+
this.core.cursorManager.resetToDefault();
|
|
118
|
+
}
|
|
107
119
|
this.viewport.handlePointerUp(ev);
|
|
108
120
|
this.core.store.state?.activeTool?.handlePointerUp(ev);
|
|
109
121
|
}
|
|
@@ -113,6 +125,10 @@ export class KritzelEngine {
|
|
|
113
125
|
}
|
|
114
126
|
this.host.releasePointerCapture(ev.pointerId);
|
|
115
127
|
this.core.store.state.pointers.delete(ev.pointerId);
|
|
128
|
+
// Reset cursor to default when all pointers are released
|
|
129
|
+
if (this.core.store.state.pointers.size === 0) {
|
|
130
|
+
this.core.cursorManager.resetToDefault();
|
|
131
|
+
}
|
|
116
132
|
this.viewport.handlePointerUp(ev);
|
|
117
133
|
this.core.store.state?.activeTool?.handlePointerUp(ev);
|
|
118
134
|
}
|
|
@@ -299,6 +315,7 @@ export class KritzelEngine {
|
|
|
299
315
|
disconnectedCallback() {
|
|
300
316
|
this.throttledWheel.cancel();
|
|
301
317
|
this.throttledPointerMoveMulti.cancel();
|
|
318
|
+
this.core.cursorManager.cleanup();
|
|
302
319
|
}
|
|
303
320
|
componentWillLoad() {
|
|
304
321
|
this.validateScaleMax(this.scaleMax);
|
|
@@ -308,6 +325,9 @@ export class KritzelEngine {
|
|
|
308
325
|
this.contextMenuHandler = new KritzelContextMenuHandler(this.core, this.globalContextMenuItems, this.objectContextMenuItems);
|
|
309
326
|
this.keyHandler = new KritzelKeyHandler(this.core);
|
|
310
327
|
this.viewport = new KritzelViewport(this.core, this.host);
|
|
328
|
+
// Initialize cursor manager with target element and shadow root
|
|
329
|
+
this.core.cursorManager.setTargetElement(this.cursorTarget || document.body);
|
|
330
|
+
this.core.cursorManager.setShadowRoot(this.host.shadowRoot);
|
|
311
331
|
// Set sync configuration if provided
|
|
312
332
|
if (this.syncConfig) {
|
|
313
333
|
this.core.setSyncConfig(this.syncConfig);
|
|
@@ -365,16 +385,17 @@ export class KritzelEngine {
|
|
|
365
385
|
depth: 100,
|
|
366
386
|
};
|
|
367
387
|
const visibleObjects = this.core.store.state.objects.query(viewportBounds);
|
|
368
|
-
|
|
388
|
+
this.core.cursorManager.applyCursor();
|
|
389
|
+
return (h(Host, { key: '4a7e8c72ad1f80c3c31aa37eff33e78634cb37d1' }, this.core.store.state.debugInfo.showViewportInfo && (h("div", { key: '3c8981ce6cafbc49f4f04189d27809c511bf45c4', class: "debug-panel" }, h("div", { key: '428d483a87b98cde24446a0a26ba790ec2a6358b' }, "ActiveWorkspaceId: ", this.core.store.state?.activeWorkspace?.id), h("div", { key: '3ec597c219109c026f78e5018a885e88e51aa5c4' }, "ActiveWorkspaceName: ", this.core.store.state?.activeWorkspace?.name), h("div", { key: '803c0d009b19fdc7c465ef14f3b5f278a954a912' }, "TranslateX: ", this.core.store.state?.translateX), h("div", { key: '8b1aef0ae845cdf4b93afe59d8c78c84dd181a2d' }, "TranslateY: ", this.core.store.state?.translateY), h("div", { key: '137ead0c39a2fba55b4c4dde53fb09d0832439e1' }, "ViewportWidth: ", this.core.store.state?.viewportWidth), h("div", { key: 'b19f710385e4306620176551853eb2645b96ca7a' }, "ViewportHeight: ", this.core.store.state?.viewportHeight), h("div", { key: '943b55daada95aa37b759e45a15ffcfca76fba72' }, "PointerCount: ", this.core.store.state.pointers.size), h("div", { key: 'd001782dd4bc48c84c08477b26e5f3fce8df0b47' }, "Scale: ", this.core.store.state?.scale), h("div", { key: 'ed640d3905b39a995ba40a1cbf38f10a4aa1b400' }, "ActiveTool: ", this.core.store.state?.activeTool?.name), h("div", { key: '154888aabbb56365aaf4584b0b991be848629e3e' }, "HasViewportChanged: ", this.core.store.state?.hasViewportChanged ? 'true' : 'false'), h("div", { key: 'c0c39e988940baf20137de8a0eeda2c085da2810' }, "IsEnabled: ", this.core.store.state?.isEnabled ? 'true' : 'false'), h("div", { key: 'abd5a79b27bc75e898877d33097597c057dc3f2b' }, "IsScaling: ", this.core.store.state?.isScaling ? 'true' : 'false'), h("div", { key: '9c49bf3246525c9a755bb293bec8a143ade97158' }, "IsPanning: ", this.core.store.state?.isPanning ? 'true' : 'false'), h("div", { key: '88ff8ab48af31bf036719f72a5a3726780ab9720' }, "IsSelecting: ", this.isSelecting ? 'true' : 'false'), h("div", { key: '9650075f855fcf91b7303d3ace14242075fc523d' }, "IsSelectionActive: ", this.isSelectionActive ? 'true' : 'false'), h("div", { key: '911acb1f90f9812d30dc0aebceb207aecf9b4248' }, "IsResizeHandleSelected: ", this.core.store.state.isResizeHandleSelected ? 'true' : 'false'), h("div", { key: 'b65db638d3cefbd74e2d03b639ee5fe86a2a858b' }, "IsRotationHandleSelected: ", this.core.store.state.isRotationHandleSelected ? 'true' : 'false'), h("div", { key: 'c53ca259dadc656762733119b4086c1f82235a7e' }, "IsRotationHandleHovered: ", this.core.store.state.isRotationHandleHovered ? 'true' : 'false'), h("div", { key: 'ae2d7a8917af450eb3bfd8e171a87530f337c0c2' }, "IsDrawing: ", this.core.store.state.isDrawing ? 'true' : 'false'), h("div", { key: '5633cd9901ec028e4f5433c84b07321932beea66' }, "IsWriting: ", this.core.store.state.isWriting ? 'true' : 'false'), h("div", { key: '82232a8eec470562e5658dee9713c855e78ca6a3' }, "IsPointerDown: ", this.core.store.isPointerDown ? 'true' : 'false'), h("div", { key: '5b6b04b323a21ef37ddb144721ea01dccc7aec8b' }, "PointerX: ", this.core.store.state?.pointerX), h("div", { key: '3287f804515cfa31eaa755332e2043fce4feb7a9' }, "PointerY: ", this.core.store.state?.pointerY), h("div", { key: '3a59fd4db60f6f05d419de39149ea10e482875d4' }, "SelectedObjects: ", this.core.store.selectionGroup?.objects.length || 0), h("div", { key: 'f91a8ea9dfc50e5f1ae89d66c7609a103e3263a4' }, "ViewportCenter: (", viewportCenterX.toFixed(2), ", ", viewportCenterY.toFixed(2), ")"))), h("div", { key: '40ba8fb5530243c18e0b0c3ad68dadb2cbc615a1', id: "origin", class: "origin", style: {
|
|
369
390
|
transform: `matrix(${this.core.store.state?.scale}, 0, 0, ${this.core.store.state?.scale}, ${this.core.store.state?.translateX}, ${this.core.store.state?.translateY})`,
|
|
370
391
|
} }, visibleObjects?.map(object => {
|
|
371
392
|
return (h("div", { key: object.id, style: {
|
|
372
393
|
transform: object?.transformationMatrix,
|
|
373
394
|
transformOrigin: 'top left',
|
|
374
|
-
zIndex: object.zIndex.toString(),
|
|
375
395
|
position: 'absolute',
|
|
376
396
|
pointerEvents: this.core.store.state.isScaling ? 'none' : 'auto',
|
|
377
397
|
} }, h("svg", { xmlns: "http://www.w3.org/2000/svg", id: object.id, class: "object", style: {
|
|
398
|
+
zIndex: object.zIndex.toString(),
|
|
378
399
|
height: object?.totalHeight.toString(),
|
|
379
400
|
width: object?.totalWidth.toString(),
|
|
380
401
|
left: '0',
|
|
@@ -384,7 +405,7 @@ export class KritzelEngine {
|
|
|
384
405
|
transformOrigin: `${object.totalWidth / 2}px ${object.totalHeight / 2}px`,
|
|
385
406
|
opacity: object.markedForRemoval ? '0.5' : object.opacity.toString(),
|
|
386
407
|
pointerEvents: object.markedForRemoval ? 'none' : 'auto',
|
|
387
|
-
} }, h("foreignObject", { x: "0", y: "0", width: object.totalWidth.toString(), height: object.totalHeight.toString(), style: {
|
|
408
|
+
} }, KritzelClassHelper.isInstanceOf(object, 'KritzelPath') && (h("svg", { ref: el => object.mount(el), xmlns: "http://www.w3.org/2000/svg", style: { overflow: 'visible' }, viewBox: object?.viewBox }, h("path", { d: object?.d, fill: object.fill, stroke: object?.stroke, "shape-rendering": object.isLowRes() ? 'optimizeSpeed' : 'auto' }))), KritzelClassHelper.isInstanceOf(object, 'KritzelLine') && (h("svg", { ref: el => object.mount(el), xmlns: "http://www.w3.org/2000/svg", style: { overflow: 'visible' }, viewBox: object?.viewBox }, h("defs", null, object.hasStartArrow && (h("marker", { id: object.startMarkerId, markerWidth: object.getArrowSize('start'), markerHeight: object.getArrowSize('start'), refX: 0, refY: object.getArrowSize('start') / 2, orient: "auto-start-reverse", markerUnits: "userSpaceOnUse" }, h("path", { d: object.getArrowPath(object.arrows?.start?.style), fill: object.getArrowFill('start'), transform: `scale(${object.getArrowSize('start') / 10})` }))), object.hasEndArrow && (h("marker", { id: object.endMarkerId, markerWidth: object.getArrowSize('end'), markerHeight: object.getArrowSize('end'), refX: 0, refY: object.getArrowSize('end') / 2, orient: "auto", markerUnits: "userSpaceOnUse" }, h("path", { d: object.getArrowPath(object.arrows?.end?.style), fill: object.getArrowFill('end'), transform: `scale(${object.getArrowSize('end') / 10})` })))), h("path", { d: this.core.anchorManager.computeClippedLinePath(object), fill: "none", stroke: object?.stroke, "stroke-width": object?.strokeWidth, "stroke-linecap": "round", "marker-start": object.hasStartArrow ? `url(#${object.startMarkerId})` : undefined, "marker-end": object.hasEndArrow ? `url(#${object.endMarkerId})` : undefined }))), h("foreignObject", { x: "0", y: "0", width: object.totalWidth.toString(), height: object.totalHeight.toString(), style: {
|
|
388
409
|
minHeight: '0',
|
|
389
410
|
minWidth: '0',
|
|
390
411
|
backgroundColor: object.backgroundColor,
|
|
@@ -393,18 +414,14 @@ export class KritzelEngine {
|
|
|
393
414
|
borderStyle: 'solid',
|
|
394
415
|
padding: object.padding + 'px',
|
|
395
416
|
overflow: 'visible',
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
width: object?.width.toString(),
|
|
399
|
-
position: 'absolute',
|
|
400
|
-
overflow: 'visible',
|
|
401
|
-
}, viewBox: object?.viewBox }, h("path", { d: object?.d, fill: object.fill, stroke: object?.stroke, "shape-rendering": object.isLowRes() ? 'optimizeSpeed' : 'auto' }))), KritzelClassHelper.isInstanceOf(object, 'KritzelImage') && (h("img", { ref: el => object.mount(el), src: object.src, style: {
|
|
417
|
+
display: KritzelClassHelper.isInstanceOf(object, 'KritzelLine') || KritzelClassHelper.isInstanceOf(object, 'KritzelPath') ? 'none' : 'block'
|
|
418
|
+
} }, KritzelClassHelper.isInstanceOf(object, 'KritzelImage') && (h("img", { ref: el => object.mount(el), src: object.src, style: {
|
|
402
419
|
width: '100%',
|
|
403
420
|
height: '100%',
|
|
404
421
|
userSelect: 'none',
|
|
405
422
|
pointerEvents: 'none',
|
|
406
423
|
imageRendering: this.core.store.state.isScaling || this.core.store.state.isPanning ? 'pixelated' : 'auto',
|
|
407
|
-
}, draggable: false, onDragStart: e => e.preventDefault() })), KritzelClassHelper.isInstanceOf(object, 'KritzelText') && (h("div", { ref: el => object.mount(el), onPointerDown: e => object.handlePointerDown(e), onPointerMove: e => object.handlePointerMove(e), onPointerUp: e => object.handlePointerUp(e), style: {
|
|
424
|
+
}, draggable: false, onDragStart: e => e.preventDefault() })), KritzelClassHelper.isInstanceOf(object, 'KritzelText') && (h("div", { id: "text-object", ref: el => object.mount(el), onPointerDown: e => object.handlePointerDown(e), onPointerMove: e => object.handlePointerMove(e), onPointerUp: e => object.handlePointerUp(e), style: {
|
|
408
425
|
minWidth: object.initialWidth + 'px',
|
|
409
426
|
minHeight: object.initialHeight + 'px',
|
|
410
427
|
maxWidth: '500px',
|
|
@@ -421,7 +438,7 @@ export class KritzelEngine {
|
|
|
421
438
|
pointerEvents: 'auto',
|
|
422
439
|
overflow: 'hidden',
|
|
423
440
|
display: 'block',
|
|
424
|
-
} })), KritzelClassHelper.isInstanceOf(object, 'KritzelSelectionGroup') && (h("div", { ref: el => object.mount(el), style: {
|
|
441
|
+
} })), KritzelClassHelper.isInstanceOf(object, 'KritzelSelectionGroup') && !this.core.displaySelectionLineUI(object) && (h("div", { ref: el => object.mount(el), style: {
|
|
425
442
|
width: '100%',
|
|
426
443
|
height: '100%',
|
|
427
444
|
} })), KritzelClassHelper.isInstanceOf(object, 'KritzelSelectionBox') && (h("div", { ref: el => object.mount(el), style: {
|
|
@@ -431,7 +448,8 @@ export class KritzelEngine {
|
|
|
431
448
|
borderWidth: KritzelDevicesHelper.isFirefox() ? object.borderWidth + 'px' : '0',
|
|
432
449
|
borderStyle: KritzelDevicesHelper.isFirefox() ? 'solid' : 'none',
|
|
433
450
|
borderColor: KritzelDevicesHelper.isFirefox() ? object.borderColor : 'transparent',
|
|
434
|
-
} }))), this.core.store.state.debugInfo.showObjectInfo && object.isDebugInfoVisible && (h("g", { style: { pointerEvents: 'none' } }, h("foreignObject", { x: object.totalWidth.toString(), y: "0", width: "400px", height: "160px", style: { minHeight: '0', minWidth: '0' } }, h("div", { style: { width: '100%', height: '100%' } }, h("div", { style: { whiteSpace: 'nowrap' } }, "Id: ", object.id), h("div", { style: { whiteSpace: 'nowrap' } }, "width: ", object.width), h("div", { style: { whiteSpace: 'nowrap' } }, "height: ", object.height), h("div", { style: { whiteSpace: 'nowrap' } }, "translateX: ", object.translateX), h("div", { style: { whiteSpace: 'nowrap' } }, "translateY: ", object.translateY)))))), h("svg", { xmlns: "http://www.w3.org/2000/svg", style: {
|
|
451
|
+
} }))), this.core.store.state.debugInfo.showObjectInfo && object.isDebugInfoVisible && (h("g", { style: { pointerEvents: 'none' } }, h("foreignObject", { x: object.totalWidth.toString(), y: "0", width: "400px", height: "160px", style: { minHeight: '0', minWidth: '0' } }, h("div", { style: { width: '100%', height: '100%' } }, h("div", { style: { whiteSpace: 'nowrap' } }, "Id: ", object.id), h("div", { style: { whiteSpace: 'nowrap' } }, "width: ", object.width), h("div", { style: { whiteSpace: 'nowrap' } }, "height: ", object.height), h("div", { style: { whiteSpace: 'nowrap' } }, "translateX: ", object.translateX), h("div", { style: { whiteSpace: 'nowrap' } }, "translateY: ", object.translateY), h("div", { style: { whiteSpace: 'nowrap' } }, "rotationDegrees: ", object.rotationDegrees)))))), h("svg", { xmlns: "http://www.w3.org/2000/svg", style: {
|
|
452
|
+
zIndex: (object.zIndex + 1).toString(),
|
|
435
453
|
height: object?.totalHeight.toString(),
|
|
436
454
|
width: object?.totalWidth.toString(),
|
|
437
455
|
left: '0',
|
|
@@ -441,7 +459,7 @@ export class KritzelEngine {
|
|
|
441
459
|
transformOrigin: `${object.totalWidth / 2}px ${object.totalHeight / 2}px`,
|
|
442
460
|
overflow: 'visible',
|
|
443
461
|
pointerEvents: 'none',
|
|
444
|
-
} }, object
|
|
462
|
+
} }, this.core.displaySelectionGroupUI(object) && (h("g", { class: "selection-group-ui", style: { pointerEvents: 'none' } }, h("g", { class: "selection-group-borders" }, h("line", { x1: "0", y1: "0", x2: object.totalWidth, y2: "0", style: {
|
|
445
463
|
stroke: 'var(--kritzel-selection-border-color, #007AFF)',
|
|
446
464
|
strokeWidth: `calc(var(--kritzel-selection-border-width, 2px) * ${object.scale} / ${this.core.store.state?.scale})`,
|
|
447
465
|
strokeLinecap: 'square',
|
|
@@ -457,7 +475,7 @@ export class KritzelEngine {
|
|
|
457
475
|
stroke: 'var(--kritzel-selection-border-color, #007AFF)',
|
|
458
476
|
strokeWidth: `calc(var(--kritzel-selection-border-width, 2px) * ${object.scale} / ${this.core.store.state?.scale})`,
|
|
459
477
|
strokeLinecap: 'square',
|
|
460
|
-
} }))
|
|
478
|
+
} })), !this.isSelecting && (h("g", { class: "selection-group-handles", style: { pointerEvents: 'auto' } }, h("circle", { class: "resize-handle top-left", cx: "0", cy: "0", r: `${(baseHandleSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
461
479
|
fill: 'var(--kritzel-selection-handle-color, #000000)',
|
|
462
480
|
paintOrder: 'fill',
|
|
463
481
|
} }), h("circle", { class: "resize-handle-overlay top-left", cx: "0", cy: "0", r: `${(baseHandleTouchSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
@@ -489,10 +507,104 @@ export class KritzelEngine {
|
|
|
489
507
|
paintOrder: 'fill',
|
|
490
508
|
} }), h("circle", { class: "rotation-handle-overlay", cx: object.totalWidth / 2, cy: -((15 * object.scale) / this.core.store.state?.scale), r: `${(baseHandleTouchSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
491
509
|
fill: 'transparent',
|
|
492
|
-
cursor: 'grab',
|
|
493
510
|
paintOrder: 'fill',
|
|
494
|
-
} }))))))
|
|
495
|
-
|
|
511
|
+
} }))))), this.core.displaySelectionLineUI(object) && KritzelClassHelper.isInstanceOf(object, 'KritzelLine') && (h("g", { class: "selection-line-ui", style: { pointerEvents: 'none' } }, h("g", { class: "selection-line-borders" }, h("path", { class: "selection-line-border", d: this.core.anchorManager.computeClippedLinePath(object, true), style: {
|
|
512
|
+
stroke: 'var(--kritzel-selection-border-color, #007AFF)',
|
|
513
|
+
strokeWidth: `calc(var(--kritzel-selection-border-width, 2px) * ${object.scale} / ${this.core.store.state?.scale})`,
|
|
514
|
+
strokeLinecap: 'round',
|
|
515
|
+
fill: 'none',
|
|
516
|
+
} })), !this.isSelecting && (h("g", { class: "selection-line-handles", style: { pointerEvents: 'auto' } }, h("circle", { class: "selection-line-handle start", cx: object.startX - object.x, cy: object.startY - object.y, r: `${(baseHandleSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
517
|
+
fill: 'var(--kritzel-selection-handle-color, #000000)',
|
|
518
|
+
paintOrder: 'fill',
|
|
519
|
+
} }), h("circle", { class: "selection-line-handle-overlay start", cx: object.startX - object.x, cy: object.startY - object.y, r: `${(baseHandleTouchSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
520
|
+
fill: 'transparent',
|
|
521
|
+
paintOrder: 'fill',
|
|
522
|
+
} }), h("circle", { class: "selection-line-handle center", cx: object.controlX !== undefined ? (object.startX + 2 * object.controlX + object.endX) / 4 - object.x : (object.startX - object.x + object.endX - object.x) / 2, cy: object.controlY !== undefined ? (object.startY + 2 * object.controlY + object.endY) / 4 - object.y : (object.startY - object.y + object.endY - object.y) / 2, r: `${(baseHandleSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
523
|
+
fill: 'var(--kritzel-selection-handle-color, #000000)',
|
|
524
|
+
paintOrder: 'fill',
|
|
525
|
+
} }), h("circle", { class: "selection-line-handle-overlay center", cx: object.controlX !== undefined ? (object.startX + 2 * object.controlX + object.endX) / 4 - object.x : (object.startX - object.x + object.endX - object.x) / 2, cy: object.controlY !== undefined ? (object.startY + 2 * object.controlY + object.endY) / 4 - object.y : (object.startY - object.y + object.endY - object.y) / 2, r: `${(baseHandleTouchSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
526
|
+
fill: 'transparent',
|
|
527
|
+
paintOrder: 'fill',
|
|
528
|
+
} }), h("circle", { class: "selection-line-handle end", cx: object.endX - object.x, cy: object.endY - object.y, r: `${(baseHandleSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
529
|
+
fill: 'var(--kritzel-selection-handle-color, #000000)',
|
|
530
|
+
paintOrder: 'fill',
|
|
531
|
+
} }), h("circle", { class: "selection-line-handle-overlay end", cx: object.endX - object.x, cy: object.endY - object.y, r: `${(baseHandleTouchSize * object.scale) / this.core.store.state?.scale}`, style: {
|
|
532
|
+
fill: 'transparent',
|
|
533
|
+
paintOrder: 'fill',
|
|
534
|
+
} }))))))));
|
|
535
|
+
}), (() => {
|
|
536
|
+
const data = this.core.anchorManager.getAnchorLinesRenderData();
|
|
537
|
+
if (!data)
|
|
538
|
+
return null;
|
|
539
|
+
return (h("svg", { xmlns: "http://www.w3.org/2000/svg", class: "anchor-lines", style: {
|
|
540
|
+
position: 'absolute',
|
|
541
|
+
left: '0',
|
|
542
|
+
top: '0',
|
|
543
|
+
width: '1px',
|
|
544
|
+
height: '1px',
|
|
545
|
+
pointerEvents: 'none',
|
|
546
|
+
zIndex: '9998',
|
|
547
|
+
overflow: 'visible',
|
|
548
|
+
} }, data.startAnchorViz && (h("g", { class: "anchor-line-start" }, data.startAnchorViz.pathD ? (h("path", { d: data.startAnchorViz.pathD, style: {
|
|
549
|
+
stroke: 'var(--kritzel-snap-line-stroke, rgba(0, 0, 0, 0.3))',
|
|
550
|
+
strokeWidth: `${data.lineStrokeWidth}`,
|
|
551
|
+
strokeDasharray: data.dashArray,
|
|
552
|
+
strokeLinecap: 'round',
|
|
553
|
+
fill: 'none',
|
|
554
|
+
} })) : (h("line", { x1: data.startAnchorViz.edgeX, y1: data.startAnchorViz.edgeY, x2: data.startAnchorViz.centerX, y2: data.startAnchorViz.centerY, style: {
|
|
555
|
+
stroke: 'var(--kritzel-snap-line-stroke, rgba(0, 0, 0, 0.3))',
|
|
556
|
+
strokeWidth: `${data.lineStrokeWidth}`,
|
|
557
|
+
strokeDasharray: data.dashArray,
|
|
558
|
+
strokeLinecap: 'round',
|
|
559
|
+
} })), h("circle", { cx: data.startAnchorViz.centerX, cy: data.startAnchorViz.centerY, r: data.indicatorRadius, style: {
|
|
560
|
+
fill: 'var(--kritzel-snap-indicator-fill, rgba(0, 0, 0))',
|
|
561
|
+
stroke: 'var(--kritzel-snap-indicator-stroke, #3b82f6)',
|
|
562
|
+
strokeWidth: data.indicatorStrokeWidth,
|
|
563
|
+
} }))), data.endAnchorViz && (h("g", { class: "anchor-line-end" }, data.endAnchorViz.pathD ? (h("path", { d: data.endAnchorViz.pathD, style: {
|
|
564
|
+
stroke: 'var(--kritzel-snap-line-stroke, rgba(0, 0, 0, 0.2))',
|
|
565
|
+
strokeWidth: `${data.lineStrokeWidth}`,
|
|
566
|
+
strokeDasharray: data.dashArray,
|
|
567
|
+
strokeLinecap: 'round',
|
|
568
|
+
fill: 'none',
|
|
569
|
+
} })) : (h("line", { x1: data.endAnchorViz.edgeX, y1: data.endAnchorViz.edgeY, x2: data.endAnchorViz.centerX, y2: data.endAnchorViz.centerY, style: {
|
|
570
|
+
stroke: 'var(--kritzel-snap-line-stroke, rgba(0, 0, 0, 0.2))',
|
|
571
|
+
strokeWidth: `${data.lineStrokeWidth}`,
|
|
572
|
+
strokeDasharray: data.dashArray,
|
|
573
|
+
strokeLinecap: 'round',
|
|
574
|
+
} })), h("circle", { cx: data.endAnchorViz.centerX, cy: data.endAnchorViz.centerY, r: data.indicatorRadius, style: {
|
|
575
|
+
fill: 'var(--kritzel-snap-indicator-fill, rgba(59, 130, 246, 0.3))',
|
|
576
|
+
stroke: 'var(--kritzel-snap-indicator-stroke, #3b82f6)',
|
|
577
|
+
strokeWidth: data.indicatorStrokeWidth,
|
|
578
|
+
} })))));
|
|
579
|
+
})(), (() => {
|
|
580
|
+
const data = this.core.anchorManager.getSnapIndicatorRenderData();
|
|
581
|
+
if (!data)
|
|
582
|
+
return null;
|
|
583
|
+
return (h("svg", { xmlns: "http://www.w3.org/2000/svg", class: "snap-indicator", style: {
|
|
584
|
+
position: 'absolute',
|
|
585
|
+
left: '0',
|
|
586
|
+
top: '0',
|
|
587
|
+
width: '1px',
|
|
588
|
+
height: '1px',
|
|
589
|
+
pointerEvents: 'none',
|
|
590
|
+
zIndex: '9999',
|
|
591
|
+
overflow: 'visible',
|
|
592
|
+
} }, h("g", null, data.snapLinePath ? (h("path", { d: data.snapLinePath, fill: "none", style: {
|
|
593
|
+
stroke: 'var(--kritzel-snap-line-stroke, rgba(0, 0, 0, 0.2))',
|
|
594
|
+
strokeWidth: data.lineStrokeWidth,
|
|
595
|
+
strokeDasharray: data.dashArray,
|
|
596
|
+
strokeLinecap: 'round',
|
|
597
|
+
} })) : (data.edgeX !== undefined && data.edgeY !== undefined && (h("line", { x1: data.edgeX, y1: data.edgeY, x2: data.centerX, y2: data.centerY, style: {
|
|
598
|
+
stroke: 'var(--kritzel-snap-line-stroke, rgba(0, 0, 0, 0.2))',
|
|
599
|
+
strokeWidth: data.lineStrokeWidth,
|
|
600
|
+
strokeDasharray: data.dashArray,
|
|
601
|
+
strokeLinecap: 'round',
|
|
602
|
+
} }))), h("circle", { cx: data.centerX, cy: data.centerY, r: data.indicatorRadius, style: {
|
|
603
|
+
fill: 'var(--kritzel-snap-indicator-fill, rgba(59, 130, 246, 0.3))',
|
|
604
|
+
stroke: 'var(--kritzel-snap-indicator-stroke, #3b82f6)',
|
|
605
|
+
strokeWidth: data.indicatorStrokeWidth,
|
|
606
|
+
} }))));
|
|
607
|
+
})()), this.core.store.state.isContextMenuVisible && (h("kritzel-context-menu", { key: '7e350c48da76c54a223f23ead9dea8018b0bc36c', class: "context-menu", ref: el => (this.contextMenuElement = el), items: this.core.store.state.contextMenuItems, objects: this.core.store.selectionGroup?.objects || [], style: {
|
|
496
608
|
position: 'fixed',
|
|
497
609
|
left: `${this.core.store.state.contextMenuX}px`,
|
|
498
610
|
top: `${this.core.store.state.contextMenuY}px`,
|
|
@@ -503,7 +615,7 @@ export class KritzelEngine {
|
|
|
503
615
|
y: (-this.core.store.state.translateY + this.core.store.state.contextMenuY) / this.core.store.state.scale,
|
|
504
616
|
}, this.core.store.selectionGroup?.objects);
|
|
505
617
|
this.hideContextMenu();
|
|
506
|
-
}, onClose: () => this.hideContextMenu() })), this.core.store.state?.activeTool instanceof KritzelEraserTool && !this.core.store.state.isScaling && h("kritzel-cursor-trail", { key: '
|
|
618
|
+
}, onClose: () => this.hideContextMenu() })), this.core.store.state?.activeTool instanceof KritzelEraserTool && !this.core.store.state.isScaling && h("kritzel-cursor-trail", { key: '7923a3f6a92fa71911c971166171317b5bc421bf', core: this.core })));
|
|
507
619
|
}
|
|
508
620
|
static get is() { return "kritzel-engine"; }
|
|
509
621
|
static get encapsulation() { return "shadow"; }
|
|
@@ -673,6 +785,28 @@ export class KritzelEngine {
|
|
|
673
785
|
"reflect": false,
|
|
674
786
|
"attribute": "scale-min",
|
|
675
787
|
"defaultValue": "ABSOLUTE_SCALE_MIN"
|
|
788
|
+
},
|
|
789
|
+
"cursorTarget": {
|
|
790
|
+
"type": "unknown",
|
|
791
|
+
"mutable": false,
|
|
792
|
+
"complexType": {
|
|
793
|
+
"original": "HTMLElement",
|
|
794
|
+
"resolved": "HTMLElement",
|
|
795
|
+
"references": {
|
|
796
|
+
"HTMLElement": {
|
|
797
|
+
"location": "global",
|
|
798
|
+
"id": "global::HTMLElement"
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
},
|
|
802
|
+
"required": false,
|
|
803
|
+
"optional": true,
|
|
804
|
+
"docs": {
|
|
805
|
+
"tags": [],
|
|
806
|
+
"text": ""
|
|
807
|
+
},
|
|
808
|
+
"getter": false,
|
|
809
|
+
"setter": false
|
|
676
810
|
}
|
|
677
811
|
};
|
|
678
812
|
}
|
|
@@ -813,7 +947,7 @@ export class KritzelEngine {
|
|
|
813
947
|
return {
|
|
814
948
|
"registerTool": {
|
|
815
949
|
"complexType": {
|
|
816
|
-
"signature": "(toolName: string, toolClass: any, toolConfig?: KritzelTextToolConfig | KritzelBrushToolConfig) => Promise<KritzelBaseTool>",
|
|
950
|
+
"signature": "(toolName: string, toolClass: any, toolConfig?: KritzelTextToolConfig | KritzelBrushToolConfig | KritzelLineToolConfig) => Promise<KritzelBaseTool>",
|
|
817
951
|
"parameters": [{
|
|
818
952
|
"name": "toolName",
|
|
819
953
|
"type": "string",
|
|
@@ -824,7 +958,7 @@ export class KritzelEngine {
|
|
|
824
958
|
"docs": ""
|
|
825
959
|
}, {
|
|
826
960
|
"name": "toolConfig",
|
|
827
|
-
"type": "KritzelTextToolConfig | KritzelBrushToolConfig",
|
|
961
|
+
"type": "KritzelTextToolConfig | KritzelBrushToolConfig | KritzelLineToolConfig",
|
|
828
962
|
"docs": ""
|
|
829
963
|
}],
|
|
830
964
|
"references": {
|
|
@@ -846,6 +980,11 @@ export class KritzelEngine {
|
|
|
846
980
|
"location": "import",
|
|
847
981
|
"path": "../../../interfaces/toolbar-control.interface",
|
|
848
982
|
"id": "src/interfaces/toolbar-control.interface.ts::KritzelBrushToolConfig"
|
|
983
|
+
},
|
|
984
|
+
"KritzelLineToolConfig": {
|
|
985
|
+
"location": "import",
|
|
986
|
+
"path": "../../../interfaces/toolbar-control.interface",
|
|
987
|
+
"id": "src/interfaces/toolbar-control.interface.ts::KritzelLineToolConfig"
|
|
849
988
|
}
|
|
850
989
|
},
|
|
851
990
|
"return": "Promise<KritzelBaseTool>"
|
|
@@ -1538,6 +1677,9 @@ export class KritzelEngine {
|
|
|
1538
1677
|
}, {
|
|
1539
1678
|
"propName": "scaleMin",
|
|
1540
1679
|
"methodName": "validateScaleMin"
|
|
1680
|
+
}, {
|
|
1681
|
+
"propName": "cursorTarget",
|
|
1682
|
+
"methodName": "onCursorTargetChange"
|
|
1541
1683
|
}];
|
|
1542
1684
|
}
|
|
1543
1685
|
static get listeners() {
|