edododraw 0.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.
Files changed (93) hide show
  1. package/LICENSE +27 -0
  2. package/README.md +71 -0
  3. package/dist-lib/chunks/EdodoDraw-CUf224RG.js +5432 -0
  4. package/dist-lib/chunks/EdodoDraw-CUf224RG.js.map +1 -0
  5. package/dist-lib/engine/annotate/interact.d.ts +69 -0
  6. package/dist-lib/engine/annotate/interact.d.ts.map +1 -0
  7. package/dist-lib/engine/annotate/layer.d.ts +34 -0
  8. package/dist-lib/engine/annotate/layer.d.ts.map +1 -0
  9. package/dist-lib/engine/camera/controller.d.ts +42 -0
  10. package/dist-lib/engine/camera/controller.d.ts.map +1 -0
  11. package/dist-lib/engine/camera/easing.d.ts +9 -0
  12. package/dist-lib/engine/camera/easing.d.ts.map +1 -0
  13. package/dist-lib/engine/camera/fit.d.ts +21 -0
  14. package/dist-lib/engine/camera/fit.d.ts.map +1 -0
  15. package/dist-lib/engine/dsl/ast.d.ts +266 -0
  16. package/dist-lib/engine/dsl/ast.d.ts.map +1 -0
  17. package/dist-lib/engine/dsl/compile.d.ts +18 -0
  18. package/dist-lib/engine/dsl/compile.d.ts.map +1 -0
  19. package/dist-lib/engine/dsl/diagnostics.d.ts +42 -0
  20. package/dist-lib/engine/dsl/diagnostics.d.ts.map +1 -0
  21. package/dist-lib/engine/dsl/index.d.ts +19 -0
  22. package/dist-lib/engine/dsl/index.d.ts.map +1 -0
  23. package/dist-lib/engine/dsl/lexer.d.ts +8 -0
  24. package/dist-lib/engine/dsl/lexer.d.ts.map +1 -0
  25. package/dist-lib/engine/dsl/lower.d.ts +35 -0
  26. package/dist-lib/engine/dsl/lower.d.ts.map +1 -0
  27. package/dist-lib/engine/dsl/parser.d.ts +19 -0
  28. package/dist-lib/engine/dsl/parser.d.ts.map +1 -0
  29. package/dist-lib/engine/dsl/tokens.d.ts +66 -0
  30. package/dist-lib/engine/dsl/tokens.d.ts.map +1 -0
  31. package/dist-lib/engine/export.d.ts +22 -0
  32. package/dist-lib/engine/export.d.ts.map +1 -0
  33. package/dist-lib/engine/geometry.d.ts +55 -0
  34. package/dist-lib/engine/geometry.d.ts.map +1 -0
  35. package/dist-lib/engine/import/mermaid.d.ts +25 -0
  36. package/dist-lib/engine/import/mermaid.d.ts.map +1 -0
  37. package/dist-lib/engine/index.d.ts +32 -0
  38. package/dist-lib/engine/index.d.ts.map +1 -0
  39. package/dist-lib/engine/layout/dag.d.ts +29 -0
  40. package/dist-lib/engine/layout/dag.d.ts.map +1 -0
  41. package/dist-lib/engine/layout/grid.d.ts +12 -0
  42. package/dist-lib/engine/layout/grid.d.ts.map +1 -0
  43. package/dist-lib/engine/layout/index.d.ts +30 -0
  44. package/dist-lib/engine/layout/index.d.ts.map +1 -0
  45. package/dist-lib/engine/layout/radial.d.ts +18 -0
  46. package/dist-lib/engine/layout/radial.d.ts.map +1 -0
  47. package/dist-lib/engine/plugins/builtins.d.ts +10 -0
  48. package/dist-lib/engine/plugins/builtins.d.ts.map +1 -0
  49. package/dist-lib/engine/plugins/registry.d.ts +19 -0
  50. package/dist-lib/engine/plugins/registry.d.ts.map +1 -0
  51. package/dist-lib/engine/render/edges.d.ts +42 -0
  52. package/dist-lib/engine/render/edges.d.ts.map +1 -0
  53. package/dist-lib/engine/render/fontData.d.ts +8 -0
  54. package/dist-lib/engine/render/fontData.d.ts.map +1 -0
  55. package/dist-lib/engine/render/shapes.d.ts +26 -0
  56. package/dist-lib/engine/render/shapes.d.ts.map +1 -0
  57. package/dist-lib/engine/render/svgRenderer.d.ts +56 -0
  58. package/dist-lib/engine/render/svgRenderer.d.ts.map +1 -0
  59. package/dist-lib/engine/render/theme.css.d.ts +16 -0
  60. package/dist-lib/engine/render/theme.css.d.ts.map +1 -0
  61. package/dist-lib/engine/scene/anchors.d.ts +20 -0
  62. package/dist-lib/engine/scene/anchors.d.ts.map +1 -0
  63. package/dist-lib/engine/scene/defaults.d.ts +47 -0
  64. package/dist-lib/engine/scene/defaults.d.ts.map +1 -0
  65. package/dist-lib/engine/scene/palette.d.ts +71 -0
  66. package/dist-lib/engine/scene/palette.d.ts.map +1 -0
  67. package/dist-lib/engine/scene/query.d.ts +25 -0
  68. package/dist-lib/engine/scene/query.d.ts.map +1 -0
  69. package/dist-lib/engine/scene/types.d.ts +203 -0
  70. package/dist-lib/engine/scene/types.d.ts.map +1 -0
  71. package/dist-lib/engine/timeline/player.d.ts +44 -0
  72. package/dist-lib/engine/timeline/player.d.ts.map +1 -0
  73. package/dist-lib/fonts/CascadiaCode-Regular.woff2 +0 -0
  74. package/dist-lib/fonts/Excalifont-Regular-349fac6ca4700ffec595a7150a0d1e1d.woff2 +0 -0
  75. package/dist-lib/fonts/Excalifont-Regular-3f2c5db56cc93c5a6873b1361d730c16.woff2 +0 -0
  76. package/dist-lib/fonts/Excalifont-Regular-41b173a47b57366892116a575a43e2b6.woff2 +0 -0
  77. package/dist-lib/fonts/Excalifont-Regular-623ccf21b21ef6b3a0d87738f77eb071.woff2 +0 -0
  78. package/dist-lib/fonts/Excalifont-Regular-a88b72a24fb54c9f94e3b5fdaa7481c9.woff2 +0 -0
  79. package/dist-lib/fonts/Excalifont-Regular-b9dcf9d2e50a1eaf42fc664b50a3fd0d.woff2 +0 -0
  80. package/dist-lib/fonts/Excalifont-Regular-be310b9bcd4f1a43f571c46df7809174.woff2 +0 -0
  81. package/dist-lib/fonts/Nunito-Regular.woff2 +0 -0
  82. package/dist-lib/fonts/Virgil-Regular.woff2 +0 -0
  83. package/dist-lib/index.js +76 -0
  84. package/dist-lib/index.js.map +1 -0
  85. package/dist-lib/lib/EdodoDraw.d.ts +96 -0
  86. package/dist-lib/lib/EdodoDraw.d.ts.map +1 -0
  87. package/dist-lib/lib/index.d.ts +17 -0
  88. package/dist-lib/lib/index.d.ts.map +1 -0
  89. package/dist-lib/lib/react.d.ts +25 -0
  90. package/dist-lib/lib/react.d.ts.map +1 -0
  91. package/dist-lib/react.js +29 -0
  92. package/dist-lib/react.js.map +1 -0
  93. package/package.json +99 -0
@@ -0,0 +1,8 @@
1
+ /**
2
+ * The hand-drawn Virgil font (OFL) embedded as a base64 data URI so the
3
+ * engine is fully self-contained — text renders correctly in the app, in
4
+ * exported SVGs, and in any host app that consumes the npm package, with no
5
+ * external /fonts dependency. Source: public/fonts/Virgil-Regular.woff2.
6
+ */
7
+ export declare const HAND_FONT_WOFF2_DATA_URI = "data:font/woff2;base64,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";
8
+ //# sourceMappingURL=fontData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fontData.d.ts","sourceRoot":"","sources":["../../../src/engine/render/fontData.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,wpyEACknyE,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Shape body generation. Each ShapeKind is turned into one or more rough.js
3
+ * drawables and returned as a single <g>. Text is NOT drawn here (the renderer
4
+ * overlays it). Composite shapes (cylinder, cloud, document, note, actor) are
5
+ * built from hand-authored SVG path strings so rough.js can "sketch" them.
6
+ */
7
+ import type rough from "roughjs";
8
+ import type { Options } from "roughjs/bin/core";
9
+ import type { NodeStyle, ShapeKind } from "../scene/types.js";
10
+ type RoughSVG = ReturnType<(typeof rough)["svg"]>;
11
+ /** Map a NodeStyle to rough.js Options. */
12
+ export declare function nodeRoughOptions(style: NodeStyle, filled: boolean): Options;
13
+ export interface ShapeRect {
14
+ x: number;
15
+ y: number;
16
+ w: number;
17
+ h: number;
18
+ }
19
+ /**
20
+ * Draw a node body and return a <g> ready to append. Never returns text.
21
+ */
22
+ export declare function renderShapeBody(rc: RoughSVG, shape: ShapeKind, rect: ShapeRect, style: NodeStyle): SVGGElement;
23
+ /** Shapes whose label should render above (not centered inside) the body. */
24
+ export declare function labelBelow(shape: ShapeKind): boolean;
25
+ export {};
26
+ //# sourceMappingURL=shapes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shapes.d.ts","sourceRoot":"","sources":["../../../src/engine/render/shapes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9D,KAAK,QAAQ,GAAG,UAAU,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAIlD,2CAA2C;AAC3C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAmB3E;AAyED,MAAM,WAAW,SAAS;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,EACZ,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GACf,WAAW,CA6Kb;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAEpD"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * SvgRenderer — imperative renderer that owns an <svg> and paints a Scene into
3
+ * it. React only provides the mount container; this class manages the SVG DOM
4
+ * directly (like Excalidraw manages its canvas outside React) for full control
5
+ * over the camera transform, animated overlays, and annotation layers.
6
+ *
7
+ * Layer stack (bottom -> top), all inside the camera-transformed world group
8
+ * except the screen background/overlay:
9
+ * bg (screen) < grid < groups < edges < nodes < annotations < screen-overlay
10
+ */
11
+ import type { Point } from "../geometry.js";
12
+ import type { Scene } from "../scene/types.js";
13
+ export interface CameraTransform {
14
+ cx: number;
15
+ cy: number;
16
+ zoom: number;
17
+ }
18
+ export declare class SvgRenderer {
19
+ readonly container: HTMLElement;
20
+ svg: SVGSVGElement;
21
+ private defs;
22
+ private bg;
23
+ world: SVGGElement;
24
+ private layers;
25
+ screenLayer: SVGGElement;
26
+ private rc;
27
+ private camera;
28
+ private viewport;
29
+ private scene;
30
+ constructor(container: HTMLElement);
31
+ mount(): void;
32
+ destroy(): void;
33
+ private defsMarkup;
34
+ /** Read the container size; call on mount + resize. */
35
+ measure(): {
36
+ w: number;
37
+ h: number;
38
+ };
39
+ getViewportSize(): {
40
+ w: number;
41
+ h: number;
42
+ };
43
+ getCamera(): CameraTransform;
44
+ applyCamera(cam: CameraTransform): void;
45
+ worldToScreen(p: Point): Point;
46
+ screenToWorld(p: Point): Point;
47
+ getLayer(name: "grid" | "groups" | "edges" | "nodes" | "annotations" | "live"): SVGGElement;
48
+ /** Show/hide nodes+edges for timeline reveal. `hidden` = ids to fade out. */
49
+ applyVisibility(hidden: Set<string>): void;
50
+ render(scene: Scene): void;
51
+ private renderNode;
52
+ private textBlock;
53
+ private edgeLabel;
54
+ private renderGroupFrame;
55
+ }
56
+ //# sourceMappingURL=svgRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svgRenderer.d.ts","sourceRoot":"","sources":["../../../src/engine/render/svgRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,mBAAmB,CAAC;AAQ1D,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,WAAW;IACtB,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,GAAG,EAAG,aAAa,CAAC;IACpB,OAAO,CAAC,IAAI,CAAkB;IAC9B,OAAO,CAAC,EAAE,CAAkB;IAC5B,KAAK,EAAG,WAAW,CAAC;IACpB,OAAO,CAAC,MAAM,CAA+B;IAC7C,WAAW,EAAG,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAqC;IAE/C,OAAO,CAAC,MAAM,CAA8C;IAC5D,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,KAAK,CAAsB;gBAEvB,SAAS,EAAE,WAAW;IAIlC,KAAK,IAAI,IAAI;IAkDb,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,UAAU;IAelB,uDAAuD;IACvD,OAAO,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAMnC,eAAe,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAI3C,SAAS,IAAI,eAAe;IAI5B,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAOvC,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK;IAQ9B,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK;IAQ9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,aAAa,GAAG,MAAM,GAAG,WAAW;IAI3F,6EAA6E;IAC7E,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI;IAS1C,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAsC1B,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,SAAS;IA+BjB,OAAO,CAAC,SAAS;IAuBjB,OAAO,CAAC,gBAAgB;CA6BzB"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Engine-owned CSS: @font-face for the hand-drawn fonts and the keyframes that
3
+ * power animated arrows and annotation reveals. Injected once per document by
4
+ * ensureEngineStyles(). Kept as a TS string so the engine is self-contained and
5
+ * has no build-time CSS dependency.
6
+ *
7
+ * Fonts are the OFL-licensed Excalifont + Virgil copied from the Excalidraw
8
+ * project into /public/fonts.
9
+ */
10
+ export declare const FONT_FAMILY: {
11
+ readonly hand: "\"Excalifont\", \"Virgil\", \"Segoe Print\", \"Comic Sans MS\", cursive";
12
+ readonly normal: "\"Nunito\", \"Assistant\", system-ui, -apple-system, sans-serif";
13
+ readonly code: "\"Cascadia Code\", \"Cascadia\", ui-monospace, \"SF Mono\", Menlo, monospace";
14
+ };
15
+ export declare function ensureEngineStyles(doc?: Document): void;
16
+ //# sourceMappingURL=theme.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.css.d.ts","sourceRoot":"","sources":["../../../src/engine/render/theme.css.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,eAAO,MAAM,WAAW;;;;CAId,CAAC;AA4GX,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,QAAmB,GAAG,IAAI,CAOjE"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Anchor resolution — maps an anchor spec on a node to a concrete world point.
3
+ *
4
+ * EDodoDraw exposes far more connection points than Excalidraw's 4:
5
+ * - 8 compass points + center: n s e w ne nw se sw c
6
+ * - aliases: top bottom left right center
7
+ * - fractional side positions: "top:0.3" (30% along the top edge, l->r)
8
+ * also right:0.75, bottom:0.5, left:0.2
9
+ * - polar angle from center: "angle:45" (degrees, 0 = east, CW)
10
+ * - auto (undefined): border point aimed at the other endpoint
11
+ */
12
+ import type { Point, Rect } from "../geometry.js";
13
+ import type { SceneNode } from "./types.js";
14
+ export declare function nodeRect(n: SceneNode): Rect;
15
+ /**
16
+ * Resolve a named/parametric anchor to a world point.
17
+ * `toward` is the opposite endpoint (used for "auto"/border computation).
18
+ */
19
+ export declare function resolveAnchor(node: SceneNode, anchor: string | undefined, toward?: Point): Point;
20
+ //# sourceMappingURL=anchors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchors.d.ts","sourceRoot":"","sources":["../../../src/engine/scene/anchors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAE3C;AAmBD;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,CAAC,EAAE,KAAK,GACb,KAAK,CAuDP"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Default styles, theme, and factory helpers for building Scene elements.
3
+ * Factories assign deterministic rough seeds (hash of id) so re-rendering an
4
+ * unchanged element never re-jitters its hand-drawn strokes.
5
+ */
6
+ import type { EdgeStyle, NodeStyle, Scene, SceneEdge, SceneNode, ShapeKind, Theme } from "./types.js";
7
+ export declare const LIGHT_THEME: Theme;
8
+ export declare const DARK_THEME: Theme;
9
+ export declare function defaultNodeStyle(seed: number, mode?: "light" | "dark"): NodeStyle;
10
+ export declare function defaultEdgeStyle(seed: number, mode?: "light" | "dark"): EdgeStyle;
11
+ /** Default box size for a node given its label (rough auto-size fallback). */
12
+ export declare function defaultNodeSize(shape: ShapeKind, label: string): {
13
+ w: number;
14
+ h: number;
15
+ };
16
+ export interface MakeNodeInput {
17
+ id: string;
18
+ shape?: ShapeKind;
19
+ label?: string;
20
+ x?: number;
21
+ y?: number;
22
+ w?: number;
23
+ h?: number;
24
+ style?: Partial<NodeStyle>;
25
+ group?: string;
26
+ z?: number;
27
+ pinned?: boolean;
28
+ data?: Record<string, unknown>;
29
+ mode?: "light" | "dark";
30
+ }
31
+ export declare function makeNode(input: MakeNodeInput): SceneNode;
32
+ export interface MakeEdgeInput {
33
+ id: string;
34
+ from: string;
35
+ to: string;
36
+ fromAnchor?: string;
37
+ toAnchor?: string;
38
+ label?: string;
39
+ style?: Partial<EdgeStyle>;
40
+ routing?: SceneEdge["routing"];
41
+ z?: number;
42
+ data?: Record<string, unknown>;
43
+ mode?: "light" | "dark";
44
+ }
45
+ export declare function makeEdge(input: MakeEdgeInput): SceneEdge;
46
+ export declare function emptyScene(mode?: "light" | "dark"): Scene;
47
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/engine/scene/defaults.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,KAAK,EACL,SAAS,EACT,SAAS,EACT,SAAS,EACT,KAAK,EACN,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,WAAW,EAAE,KAOzB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAOxB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,OAAO,GAAG,MAAgB,GAAG,SAAS,CAiB1F;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,OAAO,GAAG,MAAgB,GAAG,SAAS,CAiB1F;AAED,8EAA8E;AAC9E,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAuBzF;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACzB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CAsBxD;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3B,OAAO,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACzB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CAYxD;AAED,wBAAgB,UAAU,CAAC,IAAI,GAAE,OAAO,GAAG,MAAgB,GAAG,KAAK,CAWlE"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Color palette matched to Excalidraw's Open-Colors selection, plus named
3
+ * "semantic" colors the DSL exposes (e.g. `fill: green`). Each semantic name
4
+ * maps to a stroke + a soft background so `fill: green` yields the pleasant
5
+ * Excalidraw green box with a matching darker green outline.
6
+ */
7
+ export declare const STROKE_PALETTE: {
8
+ readonly black: "#1e1e1e";
9
+ readonly gray: "#495057";
10
+ readonly red: "#e03131";
11
+ readonly pink: "#c2255c";
12
+ readonly grape: "#9c36b5";
13
+ readonly violet: "#6741d9";
14
+ readonly blue: "#1971c2";
15
+ readonly cyan: "#0c8599";
16
+ readonly teal: "#099268";
17
+ readonly green: "#2f9e44";
18
+ readonly lime: "#66a80f";
19
+ readonly yellow: "#f08c00";
20
+ readonly orange: "#e8590c";
21
+ readonly brown: "#846358";
22
+ readonly white: "#ffffff";
23
+ };
24
+ /** Soft fill backgrounds (Excalidraw's lighter shade for each hue). */
25
+ export declare const FILL_PALETTE: {
26
+ readonly transparent: string | null;
27
+ readonly none: string | null;
28
+ readonly black: "#e9ecef";
29
+ readonly gray: "#e9ecef";
30
+ readonly red: "#ffc9c9";
31
+ readonly pink: "#fcc2d7";
32
+ readonly grape: "#eebefa";
33
+ readonly violet: "#d0bfff";
34
+ readonly blue: "#a5d8ff";
35
+ readonly cyan: "#99e9f2";
36
+ readonly teal: "#96f2d7";
37
+ readonly green: "#b2f2bb";
38
+ readonly lime: "#d8f5a2";
39
+ readonly yellow: "#ffec99";
40
+ readonly orange: "#ffd8a8";
41
+ readonly brown: "#e5dbd4";
42
+ readonly white: "#ffffff";
43
+ };
44
+ export type ColorName = keyof typeof STROKE_PALETTE;
45
+ /**
46
+ * Resolve a color token to a hex string.
47
+ * - Named strokes: "green" -> #2f9e44
48
+ * - Hex passthrough: "#ff0000" -> "#ff0000"
49
+ * - "transparent"/"none" -> null-safe handled by caller
50
+ */
51
+ export declare function resolveStroke(token: string | undefined, fallback: string): string;
52
+ /** Resolve a fill token: named -> soft bg, hex passthrough, transparent -> null. */
53
+ export declare function resolveFill(token: string | undefined): string | null;
54
+ /**
55
+ * When a user writes `fill: green` we also nudge the stroke to the matching
56
+ * darker green (if the stroke is still the default black). This returns the
57
+ * "paired" stroke for a fill color name, or null if there's no pairing.
58
+ */
59
+ export declare function pairedStrokeForFill(fillToken: string | undefined): string | null;
60
+ /** Highlighter/marker colors (semi-transparent) for annotations. */
61
+ export declare const MARKER_PALETTE: {
62
+ readonly yellow: "#ffe066";
63
+ readonly green: "#8ce99a";
64
+ readonly blue: "#74c0fc";
65
+ readonly pink: "#faa2c1";
66
+ readonly orange: "#ffc078";
67
+ readonly violet: "#b197fc";
68
+ readonly red: "#ff8787";
69
+ };
70
+ export declare function resolveMarker(token: string | undefined, fallback?: "#ffe066"): string;
71
+ //# sourceMappingURL=palette.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palette.d.ts","sourceRoot":"","sources":["../../../src/engine/scene/palette.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;CAgBjB,CAAC;AAEX,uEAAuE;AACvE,eAAO,MAAM,YAAY;0BACF,MAAM,GAAG,IAAI;mBACpB,MAAM,GAAG,IAAI;;;;;;;;;;;;;;;;CAgBnB,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,cAAc,CAAC;AAEpD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQjF;AAED,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAOpE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAKhF;AAED,oEAAoE;AACpE,eAAO,MAAM,cAAc;;;;;;;;CAQjB,CAAC;AAEX,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,YAAwB,GAAG,MAAM,CAMjG"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Read-only queries over a Scene: element lookup and bounding boxes in world
3
+ * space. Used by the camera (fit/focus), layout, and annotation anchoring.
4
+ */
5
+ import type { BBox, Rect } from "../geometry.js";
6
+ import type { Scene, SceneEdge, SceneGroup, SceneNode } from "./types.js";
7
+ export declare function getNode(scene: Scene, id: string): SceneNode | undefined;
8
+ export declare function getEdge(scene: Scene, id: string): SceneEdge | undefined;
9
+ export declare function getGroup(scene: Scene, id: string): SceneGroup | undefined;
10
+ export declare function nodeBBox(n: SceneNode): BBox;
11
+ export declare function edgeBBox(e: SceneEdge): BBox;
12
+ export declare function groupBBox(scene: Scene, g: SceneGroup): BBox;
13
+ /** Resolve any element id (node/group; edges included if routed) to a bbox. */
14
+ export declare function elementBBox(scene: Scene, id: string): BBox | undefined;
15
+ /** Union bbox of several element ids. */
16
+ export declare function elementsBBox(scene: Scene, ids: string[]): BBox;
17
+ /** BBox covering every node (and routed edge) in the scene. */
18
+ export declare function sceneBBox(scene: Scene): BBox;
19
+ export declare function nodeRectOf(n: SceneNode): Rect;
20
+ /** Topmost node whose bounding box contains the given world point, or null. */
21
+ export declare function hitTestNode(scene: Scene, p: {
22
+ x: number;
23
+ y: number;
24
+ }): SceneNode | null;
25
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/engine/scene/query.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE1E,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAEvE;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAEvE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAEzE;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAE3C;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAG3C;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,GAAG,IAAI,CAO3D;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAWtE;AAED,yCAAyC;AACzC,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAO9D;AAED,+DAA+D;AAC/D,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAQ5C;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAE7C;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GAAG,IAAI,CAQvF"}