@oh-just-another/react-ui 0.58.0 → 0.60.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/CHANGELOG.md +177 -0
- package/README.md +7 -4
- package/dist/.tsbuildinfo +1 -1
- package/dist/color-swatch-picker.d.ts +8 -1
- package/dist/color-swatch-picker.d.ts.map +1 -1
- package/dist/color-swatch-picker.js +7 -3
- package/dist/color-swatch-picker.js.map +1 -1
- package/dist/constants.d.ts +43 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +43 -0
- package/dist/constants.js.map +1 -1
- package/dist/context-menu.d.ts.map +1 -1
- package/dist/context-menu.js +8 -4
- package/dist/context-menu.js.map +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/context.js +1 -1
- package/dist/diagram-canvas.d.ts +4 -2
- package/dist/diagram-canvas.d.ts.map +1 -1
- package/dist/diagram-canvas.js +1 -1
- package/dist/diagram-canvas.js.map +1 -1
- package/dist/diagram-root.d.ts +8 -2
- package/dist/diagram-root.d.ts.map +1 -1
- package/dist/diagram-root.js +11 -2
- package/dist/diagram-root.js.map +1 -1
- package/dist/drawing-panel.d.ts +14 -0
- package/dist/drawing-panel.d.ts.map +1 -0
- package/dist/drawing-panel.js +54 -0
- package/dist/drawing-panel.js.map +1 -0
- package/dist/help-dialog.d.ts.map +1 -1
- package/dist/help-dialog.js +11 -4
- package/dist/help-dialog.js.map +1 -1
- package/dist/hooks.d.ts +19 -3
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +21 -3
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/link-caption-editor.d.ts +3 -3
- package/dist/link-caption-editor.d.ts.map +1 -1
- package/dist/link-caption-editor.js +8 -5
- package/dist/link-caption-editor.js.map +1 -1
- package/dist/minimap.d.ts +25 -0
- package/dist/minimap.d.ts.map +1 -0
- package/dist/minimap.js +196 -0
- package/dist/minimap.js.map +1 -0
- package/dist/property-panel.d.ts.map +1 -1
- package/dist/property-panel.js +166 -26
- package/dist/property-panel.js.map +1 -1
- package/dist/search-overlay.d.ts +18 -0
- package/dist/search-overlay.d.ts.map +1 -0
- package/dist/search-overlay.js +162 -0
- package/dist/search-overlay.js.map +1 -0
- package/dist/selection-floating-panel.d.ts.map +1 -1
- package/dist/selection-floating-panel.js +5 -2
- package/dist/selection-floating-panel.js.map +1 -1
- package/dist/stats-panel.d.ts +14 -0
- package/dist/stats-panel.d.ts.map +1 -0
- package/dist/stats-panel.js +104 -0
- package/dist/stats-panel.js.map +1 -0
- package/dist/toolbar.d.ts +2 -2
- package/dist/toolbar.d.ts.map +1 -1
- package/dist/toolbar.js +26 -12
- package/dist/toolbar.js.map +1 -1
- package/dist/zen-mode.d.ts +30 -0
- package/dist/zen-mode.d.ts.map +1 -0
- package/dist/zen-mode.js +62 -0
- package/dist/zen-mode.js.map +1 -0
- package/package.json +8 -8
- package/src/styles.css +4 -1
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState } from "react";
|
|
3
|
-
import { Plus, X } from "lucide-react";
|
|
3
|
+
import { Pipette, Plus, X } from "lucide-react";
|
|
4
4
|
import { ELEMENT_PALETTE_LIGHT, ELEMENT_PALETTE_DARK, resolvePaletteTheme, } from "./color-palette.js";
|
|
5
|
-
export const ColorSwatchPicker = ({ value, onChange, palette, allowCustom = true, allowClear = true, }) => {
|
|
5
|
+
export const ColorSwatchPicker = ({ value, onChange, palette, allowCustom = true, allowClear = true, onEyedrop, }) => {
|
|
6
6
|
const resolved = palette ?? defaultPaletteForCurrentTheme();
|
|
7
7
|
const [customOpen, setCustomOpen] = useState(false);
|
|
8
8
|
return (_jsxs("div", { className: "du-swatch-grid", role: "radiogroup", "aria-label": "Colour", children: [resolved.map((c) => (_jsx(Swatch, { color: c, selected: normalise(c) === normalise(value), onClick: () => {
|
|
9
9
|
onChange(c === "transparent" ? null : c);
|
|
10
|
-
} }, c))), allowCustom ? (_jsx(CustomSwatch, { value: value, onChange: onChange, open: customOpen, onOpenChange: setCustomOpen })) : null,
|
|
10
|
+
} }, c))), allowCustom ? (_jsx(CustomSwatch, { value: value, onChange: onChange, open: customOpen, onOpenChange: setCustomOpen })) : null, onEyedrop ? (_jsx("button", { type: "button", "aria-label": "Pick colour from canvas", title: "Pick colour from canvas", onClick: () => {
|
|
11
|
+
onEyedrop((c) => {
|
|
12
|
+
onChange(c);
|
|
13
|
+
});
|
|
14
|
+
}, className: "du-swatch du-swatch-eyedrop", children: _jsx("span", { className: "du-swatch-fill du-swatch-fill-blank", children: _jsx(Pipette, { size: 12, strokeWidth: 2 }) }) })) : null, allowClear ? (_jsx("button", { type: "button", "aria-label": "Clear colour", title: "Clear colour", onClick: () => {
|
|
11
15
|
onChange(null);
|
|
12
16
|
}, className: "du-swatch du-swatch-clear", children: _jsx("span", { className: "du-swatch-fill du-swatch-fill-blank", children: _jsx(X, { size: 12, strokeWidth: 2 }) }) })) : null] }));
|
|
13
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color-swatch-picker.js","sourceRoot":"","sources":["../src/color-swatch-picker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"color-swatch-picker.js","sourceRoot":"","sources":["../src/color-swatch-picker.tsx"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -105,8 +105,51 @@ export declare const TEXT_FONT_SIZE_PRESETS: readonly {
|
|
|
105
105
|
}[];
|
|
106
106
|
export declare const TEXT_FONT_SIZE_MIN = 8;
|
|
107
107
|
export declare const TEXT_FONT_SIZE_MAX = 256;
|
|
108
|
+
/**
|
|
109
|
+
* Screen-pixel padding left around a search match when the overlay frames
|
|
110
|
+
* it with `zoomToSelection`. Larger than the selection default so a small
|
|
111
|
+
* matched shape isn't zoomed in uncomfortably tight. Range: 40–320.
|
|
112
|
+
*/
|
|
113
|
+
export declare const SEARCH_ZOOM_PADDING_PX = 160;
|
|
114
|
+
/**
|
|
115
|
+
* Minimap overview panel defaults. The `<Minimap>` renders the whole scene
|
|
116
|
+
* scaled into a small canvas plus a frame for the current viewport; hosts
|
|
117
|
+
* override the size via `width` / `height` props.
|
|
118
|
+
*
|
|
119
|
+
* - `MINIMAP_WIDTH_PX` / `MINIMAP_HEIGHT_PX` — default canvas size in CSS px.
|
|
120
|
+
* - `MINIMAP_PADDING_PX` — inner margin kept clear around the fitted scene so
|
|
121
|
+
* shapes at the edge aren't clipped. Range: 0–32.
|
|
122
|
+
* - `MINIMAP_THROTTLE_MS` — minimum interval between overview repaints while
|
|
123
|
+
* the scene / viewport changes rapidly (pan, drag). Lower = smoother but
|
|
124
|
+
* more work per frame. Range: 60–500.
|
|
125
|
+
* - `MINIMAP_FRAME_COLOR` / `MINIMAP_FRAME_LINE_WIDTH` — stroke of the current
|
|
126
|
+
* viewport rectangle drawn over the overview.
|
|
127
|
+
* - `MINIMAP_FRAME_FILL` — translucent wash inside the viewport rectangle.
|
|
128
|
+
* - `MINIMAP_WHEEL_ZOOM_SPEED` / `MINIMAP_WHEEL_ZOOM_MAX_STEP` — wheel-zoom
|
|
129
|
+
* response over the minimap, same formula as the main canvas
|
|
130
|
+
* (`factor = 1 − clamp(|deltaY|, MAX_STEP)·SPEED / 100`). MAX_STEP keeps a
|
|
131
|
+
* mouse notch a calm step while trackpad deltas stay granular.
|
|
132
|
+
*/
|
|
133
|
+
export declare const MINIMAP_WIDTH_PX = 200;
|
|
134
|
+
export declare const MINIMAP_HEIGHT_PX = 150;
|
|
135
|
+
export declare const MINIMAP_PADDING_PX = 8;
|
|
136
|
+
export declare const MINIMAP_THROTTLE_MS = 150;
|
|
137
|
+
export declare const MINIMAP_FRAME_COLOR = "#2563eb";
|
|
138
|
+
export declare const MINIMAP_FRAME_LINE_WIDTH = 1.5;
|
|
139
|
+
export declare const MINIMAP_FRAME_FILL = "rgba(37, 99, 235, 0.12)";
|
|
140
|
+
export declare const MINIMAP_WHEEL_ZOOM_SPEED = 1;
|
|
141
|
+
export declare const MINIMAP_WHEEL_ZOOM_MAX_STEP = 10;
|
|
108
142
|
export declare const TEXT_FONT_STACKS: readonly {
|
|
109
143
|
readonly label: string;
|
|
110
144
|
readonly value: string;
|
|
111
145
|
}[];
|
|
146
|
+
/**
|
|
147
|
+
* Drawing / eraser tool-options panel. `DRAWING_PANEL_WIDTH` is the floating
|
|
148
|
+
* panel width in CSS px; `BRUSH_WIDTH_MIN` / `BRUSH_WIDTH_MAX` bound the width
|
|
149
|
+
* slider (also the eraser radius). The stored brush width is a half-width in
|
|
150
|
+
* world px, so the max stays modest.
|
|
151
|
+
*/
|
|
152
|
+
export declare const DRAWING_PANEL_WIDTH = 176;
|
|
153
|
+
export declare const BRUSH_WIDTH_MIN = 1;
|
|
154
|
+
export declare const BRUSH_WIDTH_MAX = 40;
|
|
112
155
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,sDAAsD;AACtD,eAAO,MAAM,aAAa,MAAM,CAAC;AAEjC,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,mEAAmE;AACnE,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,+CAA+C;AAC/C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,kEAAkE;AAClE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,oDAAoD;AACpD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,sDAAsD;AACtD,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,yBAAyB,OAAQ,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,wDAAwD;AACxD,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,kFAAkF;AAClF,eAAO,MAAM,mCAAmC,KAAK,CAAC;AACtD,wEAAwE;AACxE,eAAO,MAAM,oCAAoC,KAAK,CAAC;AACvD,kFAAkF;AAClF,eAAO,MAAM,kCAAkC,KAAK,CAAC;AACrD,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAM7F,CAAC;AACJ,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,kBAAkB,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,sDAAsD;AACtD,eAAO,MAAM,aAAa,MAAM,CAAC;AAEjC,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,mEAAmE;AACnE,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,+CAA+C;AAC/C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,kEAAkE;AAClE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,oDAAoD;AACpD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,sDAAsD;AACtD,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,yBAAyB,OAAQ,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,wDAAwD;AACxD,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,kFAAkF;AAClF,eAAO,MAAM,mCAAmC,KAAK,CAAC;AACtD,wEAAwE;AACxE,eAAO,MAAM,oCAAoC,KAAK,CAAC;AACvD,kFAAkF;AAClF,eAAO,MAAM,kCAAkC,KAAK,CAAC;AACrD,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAM7F,CAAC;AACJ,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAC7C,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,kBAAkB,4BAA4B,CAAC;AAC5D,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,eAAO,MAAM,gBAAgB,EAAE,SAAS;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAQzF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,eAAe,KAAK,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -107,6 +107,40 @@ export const TEXT_FONT_SIZE_PRESETS = [
|
|
|
107
107
|
];
|
|
108
108
|
export const TEXT_FONT_SIZE_MIN = 8;
|
|
109
109
|
export const TEXT_FONT_SIZE_MAX = 256;
|
|
110
|
+
/**
|
|
111
|
+
* Screen-pixel padding left around a search match when the overlay frames
|
|
112
|
+
* it with `zoomToSelection`. Larger than the selection default so a small
|
|
113
|
+
* matched shape isn't zoomed in uncomfortably tight. Range: 40–320.
|
|
114
|
+
*/
|
|
115
|
+
export const SEARCH_ZOOM_PADDING_PX = 160;
|
|
116
|
+
/**
|
|
117
|
+
* Minimap overview panel defaults. The `<Minimap>` renders the whole scene
|
|
118
|
+
* scaled into a small canvas plus a frame for the current viewport; hosts
|
|
119
|
+
* override the size via `width` / `height` props.
|
|
120
|
+
*
|
|
121
|
+
* - `MINIMAP_WIDTH_PX` / `MINIMAP_HEIGHT_PX` — default canvas size in CSS px.
|
|
122
|
+
* - `MINIMAP_PADDING_PX` — inner margin kept clear around the fitted scene so
|
|
123
|
+
* shapes at the edge aren't clipped. Range: 0–32.
|
|
124
|
+
* - `MINIMAP_THROTTLE_MS` — minimum interval between overview repaints while
|
|
125
|
+
* the scene / viewport changes rapidly (pan, drag). Lower = smoother but
|
|
126
|
+
* more work per frame. Range: 60–500.
|
|
127
|
+
* - `MINIMAP_FRAME_COLOR` / `MINIMAP_FRAME_LINE_WIDTH` — stroke of the current
|
|
128
|
+
* viewport rectangle drawn over the overview.
|
|
129
|
+
* - `MINIMAP_FRAME_FILL` — translucent wash inside the viewport rectangle.
|
|
130
|
+
* - `MINIMAP_WHEEL_ZOOM_SPEED` / `MINIMAP_WHEEL_ZOOM_MAX_STEP` — wheel-zoom
|
|
131
|
+
* response over the minimap, same formula as the main canvas
|
|
132
|
+
* (`factor = 1 − clamp(|deltaY|, MAX_STEP)·SPEED / 100`). MAX_STEP keeps a
|
|
133
|
+
* mouse notch a calm step while trackpad deltas stay granular.
|
|
134
|
+
*/
|
|
135
|
+
export const MINIMAP_WIDTH_PX = 200;
|
|
136
|
+
export const MINIMAP_HEIGHT_PX = 150;
|
|
137
|
+
export const MINIMAP_PADDING_PX = 8;
|
|
138
|
+
export const MINIMAP_THROTTLE_MS = 150;
|
|
139
|
+
export const MINIMAP_FRAME_COLOR = "#2563eb";
|
|
140
|
+
export const MINIMAP_FRAME_LINE_WIDTH = 1.5;
|
|
141
|
+
export const MINIMAP_FRAME_FILL = "rgba(37, 99, 235, 0.12)";
|
|
142
|
+
export const MINIMAP_WHEEL_ZOOM_SPEED = 1;
|
|
143
|
+
export const MINIMAP_WHEEL_ZOOM_MAX_STEP = 10;
|
|
110
144
|
export const TEXT_FONT_STACKS = [
|
|
111
145
|
// Labels map to the three fonts embedded in the WASM MSDF shaper
|
|
112
146
|
// (sans / serif / mono). Canvas2D resolves the same stacks against
|
|
@@ -116,4 +150,13 @@ export const TEXT_FONT_STACKS = [
|
|
|
116
150
|
{ label: "Serif", value: "Georgia, 'Times New Roman', serif" },
|
|
117
151
|
{ label: "Mono", value: "ui-monospace, 'SF Mono', Menlo, monospace" },
|
|
118
152
|
];
|
|
153
|
+
/**
|
|
154
|
+
* Drawing / eraser tool-options panel. `DRAWING_PANEL_WIDTH` is the floating
|
|
155
|
+
* panel width in CSS px; `BRUSH_WIDTH_MIN` / `BRUSH_WIDTH_MAX` bound the width
|
|
156
|
+
* slider (also the eraser radius). The stored brush width is a half-width in
|
|
157
|
+
* world px, so the max stays modest.
|
|
158
|
+
*/
|
|
159
|
+
export const DRAWING_PANEL_WIDTH = 176;
|
|
160
|
+
export const BRUSH_WIDTH_MIN = 1;
|
|
161
|
+
export const BRUSH_WIDTH_MAX = 40;
|
|
119
162
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEvC,sDAAsD;AACtD,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAC;AAEjC,uEAAuE;AACvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEpC,wDAAwD;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAExC,mEAAmE;AACnE,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEvC,+CAA+C;AAC/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,iEAAiE;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAEzC,kEAAkE;AAClE,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEpC,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAExC,sDAAsD;AACtD,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAE5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAEzC;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAExC;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAEnC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAC5C,wDAAwD;AACxD,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,CAAC;AACpD,kFAAkF;AAClF,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,CAAC;AACtD,wEAAwE;AACxE,MAAM,CAAC,MAAM,oCAAoC,GAAG,EAAE,CAAC;AACvD,kFAAkF;AAClF,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AACrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,sBAAsB,GACjC;IACE,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;IACzB,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;IACzB,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;IACzB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;CAC3B,CAAC;AACJ,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-menu.d.ts","sourceRoot":"","sources":["../src/context-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAElB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAMrD;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC;IACzE,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACrE,CAAC;AAEN,yEAAyE;AACzE,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAC1B,kDAAkD;IAClD,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;CAC5B;AAOD;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,WAAW,GAAI,6BAA6B,gBAAgB,uCA6HxE,CAAC;AAwEF;;;;;;;;;;;GAWG;AACH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,KAAG,IAIvD,CAAC;
|
|
1
|
+
{"version":3,"file":"context-menu.d.ts","sourceRoot":"","sources":["../src/context-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAElB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAMrD;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC;IACzE,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACrE,CAAC;AAEN,yEAAyE;AACzE,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAC1B,kDAAkD;IAClD,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;CAC5B;AAOD;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,WAAW,GAAI,6BAA6B,gBAAgB,uCA6HxE,CAAC;AAwEF;;;;;;;;;;;GAWG;AACH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,KAAG,IAIvD,CAAC;AAmCF,eAAO,MAAM,oBAAoB,EAAE,SAAS,eAAe,EAiK1D,CAAC"}
|
package/dist/context-menu.js
CHANGED
|
@@ -180,13 +180,17 @@ const actionMenuItem = (actionId, opts) => {
|
|
|
180
180
|
? action.hotkey
|
|
181
181
|
: [action.hotkey];
|
|
182
182
|
const first = matchers[0];
|
|
183
|
-
const
|
|
183
|
+
const baseVisible = opts?.visible ?? (pred ? (editor) => pred({ editor }) : undefined);
|
|
184
|
+
// In read-only / view mode only `viewMode`-flagged actions (zoom / select /
|
|
185
|
+
// copy) stay in the menu — every mutating entry is hidden, mirroring the
|
|
186
|
+
// hotkey gate (`isReadOnlyBlocked`) so panel and keyboard agree.
|
|
187
|
+
const visible = (editor, ctx) => (!editor.readOnly || action?.viewMode === true) && (baseVisible?.(editor, ctx) ?? true);
|
|
184
188
|
return {
|
|
185
189
|
kind: "action",
|
|
186
190
|
id: actionId,
|
|
187
191
|
label: opts?.label ?? action?.label ?? actionId,
|
|
188
192
|
...(first ? { shortcut: formatHotkey(first) } : {}),
|
|
189
|
-
|
|
193
|
+
visible,
|
|
190
194
|
onClick: (editor) => {
|
|
191
195
|
defaultActionRegistry.dispatch(actionId, { editor });
|
|
192
196
|
},
|
|
@@ -267,7 +271,7 @@ export const DEFAULT_CONTEXT_MENU = [
|
|
|
267
271
|
kind: "action",
|
|
268
272
|
id: "move-to-layer",
|
|
269
273
|
label: "Move to layer…",
|
|
270
|
-
visible: (e) => e.selection.size > 0 && e.scene.layers.size > 1,
|
|
274
|
+
visible: (e) => !e.readOnly && e.selection.size > 0 && e.scene.layers.size > 1,
|
|
271
275
|
onClick: (e) => {
|
|
272
276
|
if (typeof window === "undefined")
|
|
273
277
|
return;
|
|
@@ -355,7 +359,7 @@ export const DEFAULT_CONTEXT_MENU = [
|
|
|
355
359
|
kind: "action",
|
|
356
360
|
id: "clear-canvas",
|
|
357
361
|
label: "Clear canvas",
|
|
358
|
-
visible: (e) => e.scene.elements.size > 0 || e.scene.links.size > 0,
|
|
362
|
+
visible: (e) => !e.readOnly && (e.scene.elements.size > 0 || e.scene.links.size > 0),
|
|
359
363
|
onClick: (e) => {
|
|
360
364
|
clearCanvasWithConfirm(e);
|
|
361
365
|
},
|
package/dist/context-menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-menu.js","sourceRoot":"","sources":["../src/context-menu.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-menu.js","sourceRoot":"","sources":["../src/context-menu.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,WAAW,EACX,SAAS,EACT,MAAM,EACN,QAAQ,GAIT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAsB,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AA+C3D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAoB,EAAE,EAAE;IAC3E,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAC;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAmB,IAAI,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,mEAAmE;IACnE,iEAAiE;IACjE,0BAA0B;IAC1B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAClC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE;YACzD,OAAO,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,wEAAwE;IACxE,qEAAqE;IACrE,0EAA0E;IAC1E,0EAA0E;IAC1E,wEAAwE;IACxE,wEAAwE;IACxE,wEAAwE;IACxE,4BAA4B;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE;YACxD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC;YACxD,OAAO,CAAC;gBACN,WAAW,EAAE,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE;gBAC1E,UAAU;aACX,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,qCAAqC;IACrC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAC5B,MAAM,SAAS,GAAG,CAAC,EAAgB,EAAQ,EAAE;YAC3C,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAc,CAAC;gBAAE,OAAO;YACzD,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,CAAC,EAAiB,EAAQ,EAAE;YACxC,IAAI,EAAE,CAAC,GAAG,KAAK,QAAQ;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAC3D,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAElC,MAAM,GAAG,GAAuB;QAC9B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC;IAEF,yEAAyE;IACzE,8CAA8C;IAC9C,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAC/B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,KAAK,CAC3E,CAAC;IACF,0DAA0D;IAC1D,MAAM,YAAY,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3C,6EAA6E;IAC7E,6EAA6E;IAC7E,gFAAgF;IAChF,sEAAsE;IACtE,OAAO,YAAY,CACjB,cACE,GAAG,EAAE,OAAO,EACZ,IAAI,EAAC,MAAM,EACX,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,IAAI;YACZ,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACvB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,UAAU,EAAE,6CAA6C;YACzD,KAAK,EAAE,2CAA2C;YAClD,MAAM,EAAE,qEAAqE;YAC7E,YAAY,EAAE,CAAC;YACf,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,GAAG;YACb,SAAS,EAAE,kDAAkD;YAC7D,IAAI,EAAE,6DAA6D;YACnE,GAAG,KAAK;SACT,EACD,SAAS,EAAE,SAAS,YAEnB,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAC5B,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACxB,aAEE,KAAK,EAAE;gBACL,MAAM,EAAE,CAAC;gBACT,SAAS,EAAE,sEAAsE;gBACjF,MAAM,EAAE,OAAO;aAChB,IALI,KAAK,CAAC,EAAE,CAMb,CACH,CAAC,CAAC,CAAC,CACF,KAAC,cAAc,IAEb,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,GAAG,EAAE;gBACf,KAAK,EAAE,CAAC;gBACR,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC,IAPI,IAAI,CAAC,EAAE,CAQZ,CACH,CACF,GACG,EACN,eAAe,CAChB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,EACtB,IAAI,EACJ,MAAM,EACN,GAAG,EACH,UAAU,GAMX,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC;IACvD,MAAM,MAAM,GAAG,CAAC,EAAmB,EAAQ,EAAE;QAC3C,IAAI,QAAQ,EAAE,CAAC;YACb,EAAE,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,EAAE,CAAC,eAAe,EAAE,CAAC;QACrB,UAAU,EAAE,CAAC;IACf,CAAC,CAAC;IACF,OAAO,CACL,kBACE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE;YACL,GAAG,EAAE,OAAO;YACZ,OAAO,EAAE,MAAM;YACf,cAAc,EAAE,eAAe;YAC/B,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;YAC5C,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC3B,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,YAAY;SACxB,EACD,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE;YACnB,IAAI,CAAC,QAAQ;gBACX,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,2CAA2C,CAAC;QACpF,CAAC,EACD,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE;YACnB,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,GAAG,aAAa,CAAC;QACpD,CAAC,aAED,yBAAO,IAAI,CAAC,KAAK,GAAQ,EACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CACf,eAAM,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAG,IAAI,CAAC,QAAQ,GAAQ,CACpF,CAAC,CAAC,CAAC,IAAI,IACD,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAiC,EAA8B,EAAE;IACzF,MAAM,GAAG,GAAsB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjC,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS;gBAAE,SAAS;QACzC,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjC,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS;YAAE,MAAM;QACpC,GAAG,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAQ,EAAE;IAC7D,IAAI,MAAM,CAAC,OAAO,CAAC,oEAAoE,CAAC,EAAE,CAAC;QACzF,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,QAAgB,EAChB,IAGC,EACgB,EAAE;IACnB,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,MAAM,EAAE,SAAS,CAAC;IAC/B,MAAM,QAAQ,GAA6B,CAAC,MAAM,EAAE,MAAM;QACxD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YAC5B,CAAC,CAAC,MAAM,CAAC,MAAM;YACf,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,MAAM,WAAW,GAAG,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC/F,4EAA4E;IAC5E,yEAAyE;IACzE,iEAAiE;IACjE,MAAM,OAAO,GAAG,CAAC,MAAc,EAAE,GAAuB,EAAW,EAAE,CACnE,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,EAAE,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;IAC1F,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,MAAM,EAAE,KAAK,IAAI,QAAQ;QAC/C,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,OAAO;QACP,OAAO,EAAE,CAAC,MAAc,EAAE,EAAE;YAC1B,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACvD,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAA+B;IAC9D,yEAAyE;IACzE;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,EAAE;gBAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,4BAA4B;QAChC,KAAK,EAAE,iBAAiB;QACxB,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,EAAE;gBAAE,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,mBAAmB;QAC1B,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,EAAE;gBAAE,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;KACF;IACD;QACE,IAAI,EAAE,SAAS;KAChB;IACD,0CAA0C;IAC1C,cAAc,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACvD,cAAc,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAC7D,cAAc,CAAC,MAAM,CAAC;IACtB,cAAc,CAAC,KAAK,CAAC;IACrB,cAAc,CAAC,OAAO,CAAC;IACvB,cAAc,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IACrD,cAAc,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvD,cAAc,CAAC,YAAY,CAAC;IAC5B,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,+CAA+C;IAC/C,cAAc,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IACrD,cAAc,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACzD,cAAc,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC/D,cAAc,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAC3D,cAAc,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IACrD,cAAc,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;IACvE,cAAc,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvD,cAAc,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IACnD,cAAc,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC;IACrE,cAAc,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IACzD,cAAc,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC;IAC7E,cAAc,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACzE,cAAc,CAAC,cAAc,CAAC;IAC9B,cAAc,CAAC,iBAAiB,CAAC;IACjC,cAAc,CAAC,iBAAiB,CAAC;IACjC,cAAc,CAAC,cAAc,CAAC;IAC9B,cAAc,CAAC,iBAAiB,CAAC;IACjC,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,mEAAmE;IACnE,0CAA0C;IAC1C,cAAc,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;IAC5E,cAAc,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;IAC1E;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,gBAAgB;QACvB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;QAC9E,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,IAAI,OAAO,MAAM,KAAK,WAAW;gBAAE,OAAO;YAC1C,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,8BAA8B,MAAM,CAAC,MAAM,OAAO,KAAK,EAAE,CAAC,CAAC;YACxF,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,MAAM;gBAAE,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC;KACF;IACD,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,2DAA2D;IAC3D;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI,GAAG;gBAAE,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QACxC,CAAC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,oBAAoB;QACxB,KAAK,EAAE,iBAAiB;QACxB,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI,GAAG;gBAAE,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,mBAAmB;QAC1B,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI,GAAG;gBAAE,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI;QAC7D,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvE,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC;gBACvB,MAAM,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpE,MAAM,CAAC,GAAG,QAAQ,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvE,OAAO,CACL,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;oBACzB,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;oBACzB,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC;oBAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAC9B,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY;gBAC3B,CAAC,CAAC;oBACE,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAC7C,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;iBAC9C;gBACH,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;YACnB,CAAC,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;KACF;IACD,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,qCAAqC;IACrC,cAAc,CAAC,SAAS,CAAC;IACzB,cAAc,CAAC,UAAU,CAAC;IAC1B,cAAc,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC5D,cAAc,CAAC,aAAa,EAAE;QAC5B,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC;KAC1C,CAAC;IACF,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB;QACE,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,cAAc;QACrB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QACpF,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACb,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;KACF;CACF,CAAC"}
|
package/dist/context.d.ts
CHANGED
|
@@ -36,7 +36,7 @@ export declare const useEditorSelector: <T>(select: (editor: Editor) => T, defau
|
|
|
36
36
|
/**
|
|
37
37
|
* Optional typed event to subscribe to instead of the umbrella
|
|
38
38
|
* `change`. When omitted, falls back to `editor.subscribe(fn)`, which
|
|
39
|
-
* fires on every notify. Passing e.g. `"
|
|
39
|
+
* fires on every notify. Passing e.g. `"tool"` makes the hook re-run
|
|
40
40
|
* the selector only when the mode flipped, skipping selection /
|
|
41
41
|
* viewport / scene notifies entirely.
|
|
42
42
|
*/
|
package/dist/context.js
CHANGED
|
@@ -58,7 +58,7 @@ export const useEditorSelector = (select, defaultValue,
|
|
|
58
58
|
/**
|
|
59
59
|
* Optional typed event to subscribe to instead of the umbrella
|
|
60
60
|
* `change`. When omitted, falls back to `editor.subscribe(fn)`, which
|
|
61
|
-
* fires on every notify. Passing e.g. `"
|
|
61
|
+
* fires on every notify. Passing e.g. `"tool"` makes the hook re-run
|
|
62
62
|
* the selector only when the mode flipped, skipping selection /
|
|
63
63
|
* viewport / scene notifies entirely.
|
|
64
64
|
*/
|
package/dist/diagram-canvas.d.ts
CHANGED
|
@@ -18,11 +18,13 @@ import type { Scene } from "@oh-just-another/scene";
|
|
|
18
18
|
*/
|
|
19
19
|
export interface DiagramCanvasProps {
|
|
20
20
|
readonly initialScene: Scene;
|
|
21
|
-
readonly
|
|
21
|
+
readonly initialTool?: Mode;
|
|
22
22
|
readonly onReady?: (editor: Editor) => void;
|
|
23
23
|
readonly style?: CSSProperties;
|
|
24
24
|
readonly className?: string;
|
|
25
25
|
readonly skipInstallRenderers?: boolean;
|
|
26
|
+
/** Start in read-only / view mode (see {@link DiagramRootProps.readOnly}). */
|
|
27
|
+
readonly readOnly?: boolean;
|
|
26
28
|
/**
|
|
27
29
|
* Optional React subtree rendered **as a sibling** of the canvas surface
|
|
28
30
|
* inside a shared `<DiagramRoot>`. Useful when the host wants e.g. a
|
|
@@ -35,5 +37,5 @@ export interface DiagramCanvasProps {
|
|
|
35
37
|
*/
|
|
36
38
|
readonly children?: ReactNode;
|
|
37
39
|
}
|
|
38
|
-
export declare const DiagramCanvas: ({ initialScene,
|
|
40
|
+
export declare const DiagramCanvas: ({ initialScene, initialTool, onReady, style, className, skipInstallRenderers, readOnly, children, }: DiagramCanvasProps) => import("react/jsx-runtime").JSX.Element;
|
|
39
41
|
//# sourceMappingURL=diagram-canvas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-canvas.d.ts","sourceRoot":"","sources":["../src/diagram-canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAGpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,eAAO,MAAM,aAAa,GAAI,
|
|
1
|
+
{"version":3,"file":"diagram-canvas.d.ts","sourceRoot":"","sources":["../src/diagram-canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAGpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;;;OASG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,eAAO,MAAM,aAAa,GAAI,qGAS3B,kBAAkB,4CAqBpB,CAAC"}
|
package/dist/diagram-canvas.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { DiagramRoot, DiagramSurface } from "./diagram-root.js";
|
|
3
|
-
export const DiagramCanvas = ({ initialScene,
|
|
3
|
+
export const DiagramCanvas = ({ initialScene, initialTool, onReady, style, className, skipInstallRenderers, readOnly, children, }) => (_jsx(DiagramRoot, { initialScene: initialScene, ...(initialTool !== undefined ? { initialTool } : {}), ...(onReady !== undefined ? { onReady } : {}), ...(skipInstallRenderers !== undefined ? { skipInstallRenderers } : {}), ...(readOnly !== undefined ? { readOnly } : {}), children: _jsxs("div", { className: className, style: {
|
|
4
4
|
position: "relative",
|
|
5
5
|
width: "100%",
|
|
6
6
|
height: "100%",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-canvas.js","sourceRoot":"","sources":["../src/diagram-canvas.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"diagram-canvas.js","sourceRoot":"","sources":["../src/diagram-canvas.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAuChE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,YAAY,EACZ,WAAW,EACX,OAAO,EACP,KAAK,EACL,SAAS,EACT,oBAAoB,EACpB,QAAQ,EACR,QAAQ,GACW,EAAE,EAAE,CAAC,CACxB,KAAC,WAAW,IACV,YAAY,EAAE,YAAY,KACtB,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAClD,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAC1C,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACpE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,YAEhD,eACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;YACd,GAAG,KAAK;SACT,aAED,KAAC,cAAc,KAAG,EACjB,QAAQ,IACL,GACM,CACf,CAAC"}
|
package/dist/diagram-root.d.ts
CHANGED
|
@@ -5,8 +5,14 @@ import type { Rasterizer, TextShaper } from "@oh-just-another/renderer-core";
|
|
|
5
5
|
import type { Scene } from "@oh-just-another/scene";
|
|
6
6
|
export interface DiagramRootProps {
|
|
7
7
|
readonly initialScene: Scene;
|
|
8
|
-
readonly
|
|
8
|
+
readonly initialTool?: Mode;
|
|
9
9
|
readonly children: ReactNode;
|
|
10
|
+
/**
|
|
11
|
+
* Start (and keep) the editor in read-only / view mode. Pointer edits
|
|
12
|
+
* are gated and creation chrome disables itself; pan / zoom / select
|
|
13
|
+
* stay live. Changing this prop after mount flips the live editor.
|
|
14
|
+
*/
|
|
15
|
+
readonly readOnly?: boolean;
|
|
10
16
|
/** Called once the editor is ready (after a `<DiagramSurface>` mounts). */
|
|
11
17
|
readonly onReady?: (editor: Editor) => void;
|
|
12
18
|
/** Skip the implicit `installBuiltinRenderers()` call. */
|
|
@@ -44,7 +50,7 @@ export interface DiagramRootProps {
|
|
|
44
50
|
*/
|
|
45
51
|
readonly rasterizer?: Rasterizer;
|
|
46
52
|
}
|
|
47
|
-
export declare const DiagramRoot: ({ initialScene,
|
|
53
|
+
export declare const DiagramRoot: ({ initialScene, initialTool, children, onReady, skipInstallRenderers, renderer, workerFactory, textShaper, rasterizer, readOnly, }: DiagramRootProps) => import("react/jsx-runtime").JSX.Element;
|
|
48
54
|
export interface DiagramSurfaceProps {
|
|
49
55
|
readonly style?: CSSProperties;
|
|
50
56
|
readonly className?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-root.d.ts","sourceRoot":"","sources":["../src/diagram-root.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAsB,KAAK,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAuBpD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,0DAA0D;IAC1D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IACtC;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED,eAAO,MAAM,WAAW,GAAI,
|
|
1
|
+
{"version":3,"file":"diagram-root.d.ts","sourceRoot":"","sources":["../src/diagram-root.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAsB,KAAK,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAuBpD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,0DAA0D;IAC1D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IACpC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IACtC;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED,eAAO,MAAM,WAAW,GAAI,oIAWzB,gBAAgB,4CA6LlB,CAAC;AAmCF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,GAAI,iCAAiC,mBAAmB,4CAkClF,CAAC"}
|
package/dist/diagram-root.js
CHANGED
|
@@ -5,7 +5,7 @@ import { Editor } from "@oh-just-another/state";
|
|
|
5
5
|
import { DiagramEditorBridge } from "./context.js";
|
|
6
6
|
import { ContextMenuControllerProvider } from "./context-menu-controller.js";
|
|
7
7
|
const RegisterSurfaceContext = createContext(null);
|
|
8
|
-
export const DiagramRoot = ({ initialScene,
|
|
8
|
+
export const DiagramRoot = ({ initialScene, initialTool, children, onReady, skipInstallRenderers, renderer = "canvas2d", workerFactory, textShaper, rasterizer, readOnly = false, }) => {
|
|
9
9
|
const [editor, setEditor] = useState(null);
|
|
10
10
|
const editorRef = useRef(null);
|
|
11
11
|
const surfaceRef = useRef(null);
|
|
@@ -24,10 +24,12 @@ export const DiagramRoot = ({ initialScene, initialMode, children, onReady, skip
|
|
|
24
24
|
const workerFactoryRef = useRef(workerFactory);
|
|
25
25
|
const textShaperRef = useRef(textShaper);
|
|
26
26
|
const rasterizerRef = useRef(rasterizer);
|
|
27
|
+
const readOnlyRef = useRef(readOnly);
|
|
27
28
|
rendererRef.current = renderer;
|
|
28
29
|
workerFactoryRef.current = workerFactory;
|
|
29
30
|
textShaperRef.current = textShaper;
|
|
30
31
|
rasterizerRef.current = rasterizer;
|
|
32
|
+
readOnlyRef.current = readOnly;
|
|
31
33
|
const mountSurface = useCallback((host) => {
|
|
32
34
|
if (!skipInstallRenderers)
|
|
33
35
|
installBuiltinRenderers();
|
|
@@ -57,12 +59,13 @@ export const DiagramRoot = ({ initialScene, initialMode, children, onReady, skip
|
|
|
57
59
|
// behind.
|
|
58
60
|
onAfterRender: () => surfaceRef.current?.present(),
|
|
59
61
|
initialScene,
|
|
60
|
-
...(
|
|
62
|
+
...(initialTool !== undefined ? { initialTool } : {}),
|
|
61
63
|
...(textShaperRef.current ? { textShaper: textShaperRef.current } : {}),
|
|
62
64
|
...(rasterizerRef.current ? { rasterizer: rasterizerRef.current } : {}),
|
|
63
65
|
};
|
|
64
66
|
const e = new Editor(opts);
|
|
65
67
|
e.setViewportSize(width, height);
|
|
68
|
+
e.setReadOnly(readOnlyRef.current);
|
|
66
69
|
surfaceRef.current = surface;
|
|
67
70
|
editorRef.current = e;
|
|
68
71
|
setEditor(e);
|
|
@@ -145,6 +148,12 @@ export const DiagramRoot = ({ initialScene, initialMode, children, onReady, skip
|
|
|
145
148
|
teardownSurface();
|
|
146
149
|
mountSurface(host);
|
|
147
150
|
}, [renderer, mountSurface, teardownSurface]);
|
|
151
|
+
// Flip the live editor when the `readOnly` prop changes after mount.
|
|
152
|
+
// The initial value is applied in `mountSurface`; this only handles
|
|
153
|
+
// runtime toggles from the host.
|
|
154
|
+
useEffect(() => {
|
|
155
|
+
editor?.setReadOnly(readOnly);
|
|
156
|
+
}, [editor, readOnly]);
|
|
148
157
|
// Make sure the editor is disposed if `<DiagramRoot>` unmounts even if
|
|
149
158
|
// no surface registered an unmount first (defensive).
|
|
150
159
|
useLayoutEffect(() => {
|
package/dist/diagram-root.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-root.js","sourceRoot":"","sources":["../src/diagram-root.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,eAAe,EACf,MAAM,EACN,QAAQ,GAGT,MAAM,OAAO,CAAC;AACf,OAAO,EACL,gCAAgC,EAChC,uBAAuB,GAGxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAiC,MAAM,wBAAwB,CAAC;AAG/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAmB7E,MAAM,sBAAsB,GAAG,aAAa,CAAyB,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"diagram-root.js","sourceRoot":"","sources":["../src/diagram-root.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,eAAe,EACf,MAAM,EACN,QAAQ,GAGT,MAAM,OAAO,CAAC;AACf,OAAO,EACL,gCAAgC,EAChC,uBAAuB,GAGxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAiC,MAAM,wBAAwB,CAAC;AAG/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAmB7E,MAAM,sBAAsB,GAAG,aAAa,CAAyB,IAAI,CAAC,CAAC;AAkD3E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAC1B,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,OAAO,EACP,oBAAoB,EACpB,QAAQ,GAAG,UAAU,EACrB,aAAa,EACb,UAAU,EACV,UAAU,EACV,QAAQ,GAAG,KAAK,GACC,EAAE,EAAE;IACrB,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IACjD,MAAM,cAAc,GAAG,MAAM,CAAsB,IAAI,CAAC,CAAC;IACzD,uEAAuE;IACvE,2EAA2E;IAC3E,6DAA6D;IAC7D,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,gBAAgB,GAAG,MAAM,CAA2B,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC3E,8DAA8D;IAC9D,iEAAiE;IACjE,wCAAwC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAkB,QAAQ,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,MAAM,CAA6B,aAAa,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,MAAM,CAAyB,UAAU,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,MAAM,CAAyB,UAAU,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,MAAM,CAAU,QAAQ,CAAC,CAAC;IAC9C,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,gBAAgB,CAAC,OAAO,GAAG,aAAa,CAAC;IACzC,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC;IACnC,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC;IACnC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAE/B,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,IAAiB,EAAE,EAAE;QACrD,IAAI,CAAC,oBAAoB;YAAE,uBAAuB,EAAE,CAAC;QAErD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvD,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,gCAAgC,CACpE,IAAI,EACJ,KAAK,EACL,MAAM,EACN;YACE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO;YAC/D,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;SACF,EACD,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE;YACjB,6DAA6D;YAC7D,uDAAuD;YACvD,2DAA2D;YAC3D,gEAAgE;YAChE,OAAO,CAAC,IAAI,CACV,iBAAiB,SAAS,kDAAkD,EAC5E,GAAG,CACJ,CAAC;QACJ,CAAC,CACF,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACjD,MAAM,IAAI,GAAkB;YAC1B,IAAI;YACJ,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;YAC/B,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YACrC,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YAC3C,sEAAsE;YACtE,sEAAsE;YACtE,uEAAuE;YACvE,UAAU;YACV,aAAa,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE;YAClD,YAAY;YACZ,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE,CAAC;QACF,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;QAC7B,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;QACtB,SAAS,CAAC,CAAC,CAAC,CAAC;QACb,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAEb,sEAAsE;QACtE,uEAAuE;QACvE,gEAAgE;QAChE,OAAO,CAAC,OAAO,EAAE,CAAC;QAElB,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC1C,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3C,wEAAwE;YACxE,uEAAuE;YACvE,0EAA0E;YAC1E,qEAAqE;YACrE,qEAAqE;YACrE,CAAC,CAAC,WAAW,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjB,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;IAC3B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;QAClC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3B,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QAC7B,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QAC9B,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,0EAA0E;IAC1E,2EAA2E;IAC3E,0EAA0E;IAC1E,uEAAuE;IACvE,gBAAgB,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;QACnC,IAAI,WAAW,CAAC,OAAO;YAAE,OAAO;QAChC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,OAAO,CAAC,IAAI,CACV,iFAAiF,EACjF,KAAK,CACN,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,eAAe,EAAE,CAAC;QAClB,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,IAAI,EAAE,EAAE;QACP,eAAe,EAAE,CAAC;QAClB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO;QACT,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EACD,CAAC,YAAY,EAAE,eAAe,CAAC,CAChC,CAAC;IAEF,qEAAqE;IACrE,yEAAyE;IACzE,sEAAsE;IACtE,qEAAqE;IACrE,oEAAoE;IACpE,qEAAqE;IACrE,qDAAqD;IACrD,MAAM,kBAAkB,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IAChE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,kBAAkB,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACxC,6EAA6E;YAC7E,kBAAkB,CAAC,OAAO,GAAG,QAAQ,CAAC;YACtC,OAAO;QACT,CAAC;QACD,IAAI,kBAAkB,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO;QACpD,kBAAkB,CAAC,OAAO,GAAG,QAAQ,CAAC;QACtC,sEAAsE;QACtE,0DAA0D;QAC1D,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,eAAe,EAAE,CAAC;QAClB,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;IAE9C,qEAAqE;IACrE,oEAAoE;IACpE,iCAAiC;IACjC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvB,uEAAuE;IACvE,sDAAsD;IACtD,eAAe,CAAC,GAAG,EAAE;QACnB,OAAO,GAAG,EAAE;YACV,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YACzC,KAAC,sBAAsB,CAAC,QAAQ,IAAC,KAAK,EAAE,eAAe,YACrD,MAAC,6BAA6B,eAC3B,QAAQ,EACT,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,GAAI,IACA,GACA,GACL,CAChC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,EAAE,MAAM,EAAsC,EAAE,EAAE;IACpE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,OAAO,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,OAAO,CACL,cACE,IAAI,EAAC,QAAQ,eACH,QAAQ,iBACN,MAAM,EAClB,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,CAAC,CAAC;YACV,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,eAAe;YACrB,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,CAAC;SACV,YAEA,OAAO,GACJ,CACP,CAAC;AACJ,CAAC,CAAC;AAcF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAuB,EAAE,EAAE;IACrF,MAAM,QAAQ,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEzC,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IAED,OAAO,CACL,cACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAC,CAAC,mBAAmB,EAC7E,IAAI,EAAC,aAAa,EAClB,QAAQ,EAAE,CAAC,gBACC,SAAS,IAAI,gBAAgB,EACzC,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,MAAM;YAClB,GAAG,KAAK;SACT,GACD,CACH,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type CSSProperties } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Drawing / eraser tool options — a floating panel that appears while the brush
|
|
4
|
+
* or eraser tool is active. Edits {@link Editor.setBrushSettings}: line colour,
|
|
5
|
+
* enclosed-fill colour, opacity and width for the brush; only the width (which
|
|
6
|
+
* doubles as the eraser radius) for the eraser.
|
|
7
|
+
*
|
|
8
|
+
* Self-gating: renders `null` outside brush / eraser mode, so hosts can mount it
|
|
9
|
+
* unconditionally. This is a functional scaffold — restyle / relabel as needed.
|
|
10
|
+
*/
|
|
11
|
+
export declare const DrawingPanel: ({ style }: {
|
|
12
|
+
readonly style?: CSSProperties;
|
|
13
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
14
|
+
//# sourceMappingURL=drawing-panel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawing-panel.d.ts","sourceRoot":"","sources":["../src/drawing-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAkB,MAAM,OAAO,CAAC;AAK3D;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GAAI,WAAW;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,mDAqEzE,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import {} from "react";
|
|
3
|
+
import { ColorSwatchPicker } from "./color-swatch-picker.js";
|
|
4
|
+
import { useActiveTool, useBrushSettings, useDiagramOptional } from "./hooks.js";
|
|
5
|
+
import { BRUSH_WIDTH_MAX, BRUSH_WIDTH_MIN, DRAWING_PANEL_WIDTH } from "./constants.js";
|
|
6
|
+
/**
|
|
7
|
+
* Drawing / eraser tool options — a floating panel that appears while the brush
|
|
8
|
+
* or eraser tool is active. Edits {@link Editor.setBrushSettings}: line colour,
|
|
9
|
+
* enclosed-fill colour, opacity and width for the brush; only the width (which
|
|
10
|
+
* doubles as the eraser radius) for the eraser.
|
|
11
|
+
*
|
|
12
|
+
* Self-gating: renders `null` outside brush / eraser mode, so hosts can mount it
|
|
13
|
+
* unconditionally. This is a functional scaffold — restyle / relabel as needed.
|
|
14
|
+
*/
|
|
15
|
+
export const DrawingPanel = ({ style }) => {
|
|
16
|
+
const editor = useDiagramOptional();
|
|
17
|
+
const mode = useActiveTool().type;
|
|
18
|
+
const settings = useBrushSettings();
|
|
19
|
+
if (!editor || (mode !== "brush" && mode !== "erase"))
|
|
20
|
+
return null;
|
|
21
|
+
const isEraser = mode === "erase";
|
|
22
|
+
return (_jsxs("div", { className: "du-drawing-panel", style: { ...PANEL_STYLE, ...style }, children: [_jsx("div", { style: TITLE_STYLE, children: isEraser ? "Eraser" : "Drawing" }), !isEraser && (_jsxs(_Fragment, { children: [_jsx(Row, { label: "Stroke", children: _jsx(ColorSwatchPicker, { value: settings.stroke, onChange: (c) => {
|
|
23
|
+
editor.setBrushSettings({ stroke: c ?? settings.stroke });
|
|
24
|
+
}, onEyedrop: (cb) => {
|
|
25
|
+
editor.beginEyedropperPick(cb);
|
|
26
|
+
}, allowClear: false }) }), _jsx(Row, { label: "Fill", children: _jsx(ColorSwatchPicker, { value: settings.fill, onChange: (c) => {
|
|
27
|
+
editor.setBrushSettings({ fill: c });
|
|
28
|
+
}, onEyedrop: (cb) => {
|
|
29
|
+
editor.beginEyedropperPick(cb);
|
|
30
|
+
} }) }), _jsx(Row, { label: `Opacity ${Math.round(settings.opacity * 100)}%`, children: _jsx("input", { type: "range", min: 0, max: 1, step: 0.05, value: settings.opacity, onChange: (e) => {
|
|
31
|
+
editor.setBrushSettings({ opacity: e.currentTarget.valueAsNumber });
|
|
32
|
+
}, style: SLIDER_STYLE, "aria-label": "Brush opacity" }) })] })), _jsx(Row, { label: `${isEraser ? "Radius" : "Width"} ${settings.width}`, children: _jsx("input", { type: "range", min: BRUSH_WIDTH_MIN, max: BRUSH_WIDTH_MAX, step: 1, value: settings.width, onChange: (e) => {
|
|
33
|
+
editor.setBrushSettings({ width: e.currentTarget.valueAsNumber });
|
|
34
|
+
}, style: SLIDER_STYLE, "aria-label": isEraser ? "Eraser radius" : "Brush width" }) })] }));
|
|
35
|
+
};
|
|
36
|
+
const Row = ({ label, children }) => (_jsxs("label", { style: ROW_STYLE, children: [_jsx("span", { style: LABEL_STYLE, children: label }), children] }));
|
|
37
|
+
const PANEL_STYLE = {
|
|
38
|
+
width: DRAWING_PANEL_WIDTH,
|
|
39
|
+
display: "flex",
|
|
40
|
+
flexDirection: "column",
|
|
41
|
+
gap: 8,
|
|
42
|
+
padding: 10,
|
|
43
|
+
border: "1px solid var(--du-border, #d0d0d0)",
|
|
44
|
+
borderRadius: 8,
|
|
45
|
+
background: "var(--du-surface, #fff)",
|
|
46
|
+
boxShadow: "0 2px 8px rgba(0, 0, 0, 0.15)",
|
|
47
|
+
font: "12px/1.4 system-ui, sans-serif",
|
|
48
|
+
color: "var(--du-text, #222)",
|
|
49
|
+
};
|
|
50
|
+
const TITLE_STYLE = { fontWeight: 600, opacity: 0.7 };
|
|
51
|
+
const ROW_STYLE = { display: "flex", flexDirection: "column", gap: 4 };
|
|
52
|
+
const LABEL_STYLE = { opacity: 0.7 };
|
|
53
|
+
const SLIDER_STYLE = { width: "100%" };
|
|
54
|
+
//# sourceMappingURL=drawing-panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawing-panel.js","sourceRoot":"","sources":["../src/drawing-panel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-dialog.d.ts","sourceRoot":"","sources":["../src/help-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoD,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAE5F,OAAO,EAML,KAAK,cAAc,EAEpB,MAAM,wBAAwB,CAAC;AAIhC;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,eAAe;IAC9B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;CACnC;AAED;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;CAC/C;
|
|
1
|
+
{"version":3,"file":"help-dialog.d.ts","sourceRoot":"","sources":["../src/help-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoD,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAE5F,OAAO,EAML,KAAK,cAAc,EAEpB,MAAM,wBAAwB,CAAC;AAIhC;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,eAAe;IAC9B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACjD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAC;CACnC;AAED;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;CAC/C;AAiCD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,IAAI,KAAG,IAetD,CAAC;AA0BF,eAAO,MAAM,UAAU,GAAI,oDAMxB,eAAe,KAAG,YAAY,GAAG,IAqFnC,CAAC"}
|
package/dist/help-dialog.js
CHANGED
|
@@ -11,20 +11,24 @@ const CATEGORY_TITLES = {
|
|
|
11
11
|
"z-order": "Z-order",
|
|
12
12
|
grouping: "Grouping",
|
|
13
13
|
zoom: "Zoom",
|
|
14
|
-
|
|
14
|
+
tool: "Tools",
|
|
15
15
|
layout: "Layout",
|
|
16
16
|
arrange: "Arrange",
|
|
17
17
|
edit: "Editing",
|
|
18
18
|
other: "Other",
|
|
19
19
|
};
|
|
20
|
+
// Every ActionCategory must appear here or its actions are dropped from the
|
|
21
|
+
// dialog entirely (a category absent from this list is never rendered). Keep in
|
|
22
|
+
// sync with the `ActionCategory` union.
|
|
20
23
|
const CATEGORY_ORDER = [
|
|
21
|
-
"
|
|
24
|
+
"tool",
|
|
22
25
|
"edit",
|
|
23
26
|
"selection",
|
|
24
27
|
"clipboard",
|
|
25
28
|
"history",
|
|
26
29
|
"z-order",
|
|
27
30
|
"grouping",
|
|
31
|
+
"arrange",
|
|
28
32
|
"layout",
|
|
29
33
|
"zoom",
|
|
30
34
|
"other",
|
|
@@ -68,8 +72,11 @@ export const useHelpDialogHotkey = (open) => {
|
|
|
68
72
|
*/
|
|
69
73
|
const actionKeys = (action) => {
|
|
70
74
|
const combos = [];
|
|
71
|
-
|
|
72
|
-
|
|
75
|
+
// Dispatchable `hotkey` plus display-only `displayHotkey` (the latter surfaces
|
|
76
|
+
// chips for keyTest-driven bindings the declarative matcher can't express).
|
|
77
|
+
const declared = action.hotkey ?? action.displayHotkey;
|
|
78
|
+
if (declared) {
|
|
79
|
+
const raw = Array.isArray(declared) ? declared : [declared];
|
|
73
80
|
for (const h of raw)
|
|
74
81
|
combos.push(formatHotkeyParts(h));
|
|
75
82
|
}
|