@bimetal/whiteboard-vue-components 0.34.0 → 0.36.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.
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, onMounted, onUnmounted, ref, shallowRef, getCurrentInstance, h } from 'vue';
2
2
  import { useWhiteboardController } from '@bimetal/vue';
3
- import { screenToBoard, boardToScreen, WHITEBOARD_TOOLS, WHITEBOARD_ALIGN, WHITEBOARD_DISTRIBUTE, whiteboardConnectorPath, whiteboardDrawPath, whiteboardDashArray, whiteboardCommentAnchor } from '@bimetal/whiteboard-headless';
3
+ import { screenToBoard, boardToScreen, WHITEBOARD_TOOLS, WHITEBOARD_ALIGN, WHITEBOARD_DISTRIBUTE, whiteboardConnectorPath, whiteboardDrawPath, whiteboardDashArray, whiteboardCommentAnchor, whiteboardShapeDomId as shapeDomId, reportUnroutedWhiteboardError } from '@bimetal/whiteboard-headless';
4
4
  import { WhiteboardShape } from './WhiteboardShape.js';
5
5
  import { TransformHandles } from './TransformHandles.js';
6
6
  import { StylePanel } from './StylePanel.js';
@@ -25,6 +25,7 @@ export const Whiteboard = defineComponent({
25
25
  config: { type: Object, default: undefined },
26
26
  darkMode: { type: Boolean, default: false },
27
27
  dir: { type: String, default: undefined },
28
+ showUndoRedo: { type: Boolean, default: true },
28
29
  onError: { type: Function, default: undefined },
29
30
  onSelectionChange: { type: Function, default: undefined },
30
31
  },
@@ -43,14 +44,20 @@ export const Whiteboard = defineComponent({
43
44
  }
44
45
  else {
45
46
  // STANDALONE: create + own a controller (config pushed reactively).
46
- const b = useWhiteboardController({ store: props.store, canvasId: props.canvasId, config: props.config, onError: (err) => props.onError?.(err), onSelectionChange: props.onSelectionChange }, { config: () => props.config });
47
+ // bimetal-181: der GETTER ist die Aussage — er liest `props` bei jedem
48
+ // Callback-Aufruf erneut, statt den Stand des Aufbaus festzunageln.
49
+ const b = useWhiteboardController(() => ({ store: props.store, canvasId: props.canvasId, config: props.config, onError: (err) => (props.onError ?? reportUnroutedWhiteboardError)(err), onSelectionChange: props.onSelectionChange }), { config: () => props.config });
47
50
  snapshot = b.snapshot;
48
51
  ctrl = b.ctrl;
49
52
  }
50
53
  const viewportRef = ref(null);
51
54
  // Per-instance arrow marker id — document-global ids would collide across two
52
55
  // mounted boards and `url(#…)` resolve to the wrong marker.
53
- const arrowId = `bm-wb-arrow-${getCurrentInstance()?.uid ?? 0}`;
56
+ // One instance token worn by every id this board mints: the arrow marker
57
+ // (existing shape, unchanged) and the shapes (mcp-78).
58
+ const instance = getCurrentInstance()?.uid ?? 0;
59
+ const arrowId = `bm-wb-arrow-${instance}`;
60
+ const uid = `bm-wb-${instance}`;
54
61
  /** clientX/Y → board point via the live viewport rect + camera. */
55
62
  const boardOf = (clientX, clientY) => {
56
63
  const rect = viewportRef.value?.getBoundingClientRect();
@@ -156,7 +163,9 @@ export const Whiteboard = defineComponent({
156
163
  };
157
164
  const onKeyDown = (e) => {
158
165
  const norm = {
159
- key: e.key, ctrlKey: e.ctrlKey, metaKey: e.metaKey, shiftKey: e.shiftKey,
166
+ key: e.key, ctrlKey: e.ctrlKey, metaKey: e.metaKey, shiftKey: e.shiftKey, altKey: e.altKey,
167
+ // isSelfTarget (mcp-78 review R1): the toolbar lives inside this root, so its buttons' keystrokes bubble here. Without this the scene keys swallowed Tab/Enter/Space for every button in the component.
168
+ isSelfTarget: e.target === e.currentTarget,
160
169
  isEditable: isEditableTarget(e.target), preventDefault: () => e.preventDefault(),
161
170
  };
162
171
  ctrl.handleKeydown(norm);
@@ -181,7 +190,9 @@ export const Whiteboard = defineComponent({
181
190
  '--bmw-grid-y': `${mod(viewport.offsetY, gridPx)}px`,
182
191
  };
183
192
  // ── Toolbar ──
184
- const toolButtons = WHITEBOARD_TOOLS.map((t) => h('button', {
193
+ // mcp-64: im View-Only bleiben nur select/laser; Mutations-Buttons fallen.
194
+ const ro = snap.config.readOnly;
195
+ const toolButtons = WHITEBOARD_TOOLS.filter(t => !ro || t.id === 'select' || t.id === 'laser').map((t) => h('button', {
185
196
  key: t.id,
186
197
  type: 'button',
187
198
  class: `bm-wb__tool${activeTool === t.id ? ' bm-wb__tool--active' : ''}`,
@@ -198,20 +209,31 @@ export const Whiteboard = defineComponent({
198
209
  key: d.axis, type: 'button', class: 'bm-wb__btn', title: locale.distributeLabels[d.axis], 'data-distribute': d.axis,
199
210
  disabled: !canDistribute, onClick: () => ctrl.voidDistributeSelection(d.axis),
200
211
  }, d.glyph));
212
+ // Persistent icon-only undo/redo buttons (ticket-15), gated by showUndoRedo.
213
+ const undoRedoButtons = props.showUndoRedo && !ro
214
+ ? [
215
+ h('button', { type: 'button', class: 'bm-wb__btn bm-wb__btn--undo', 'aria-label': locale.undo, title: locale.undo, disabled: !snap.canUndo, onClick: () => ctrl.voidUndo() }, '↶'),
216
+ h('button', { type: 'button', class: 'bm-wb__btn bm-wb__btn--redo', 'aria-label': locale.redo, title: locale.redo, disabled: !snap.canRedo, onClick: () => ctrl.voidRedo() }, '↷'),
217
+ h('span', { class: 'bm-wb__toolbar-sep' }),
218
+ ]
219
+ : [];
201
220
  const toolbar = h('div', { class: 'bm-wb__toolbar' }, [
221
+ ...undoRedoButtons,
202
222
  ...toolButtons,
203
223
  h('span', { class: 'bm-wb__toolbar-sep' }),
204
- h('button', { type: 'button', class: 'bm-wb__btn', title: locale.bringToFront, disabled: !hasSel, onClick: () => ctrl.voidBringToFront() }, '⬆'),
205
- h('button', { type: 'button', class: 'bm-wb__btn', title: locale.sendToBack, disabled: !hasSel, onClick: () => ctrl.voidSendToBack() }, '⬇'),
206
- h('button', { type: 'button', class: 'bm-wb__btn bm-wb__lock-btn', title: locale.lock, disabled: !hasSel, onClick: () => ctrl.voidToggleLock() }, '🔒'),
207
- h('button', { type: 'button', class: 'bm-wb__btn', title: locale.group, 'data-action': 'group', disabled: !canGroup, onClick: () => ctrl.voidGroup() }, '⧉'),
208
- h('button', { type: 'button', class: 'bm-wb__btn', title: locale.ungroup, 'data-action': 'ungroup', disabled: !canUngroup, onClick: () => ctrl.voidUngroup() }, '⊟'),
209
- h('button', { type: 'button', class: 'bm-wb__btn', title: locale.duplicate, 'data-action': 'duplicate', disabled: !hasSel, onClick: () => ctrl.voidDuplicate() }, '⧉⁺'),
210
- h('button', { type: 'button', class: 'bm-wb__btn', title: locale.delete, disabled: !hasSel, onClick: () => ctrl.voidDeleteSelection() }, '🗑'),
211
- h('span', { class: 'bm-wb__toolbar-sep' }),
212
- ...alignButtons,
213
- ...distributeButtons,
214
- h('span', { class: 'bm-wb__toolbar-sep' }),
224
+ ...(ro ? [] : [
225
+ h('button', { type: 'button', class: 'bm-wb__btn', title: locale.bringToFront, disabled: !hasSel, onClick: () => ctrl.voidBringToFront() }, '⬆'),
226
+ h('button', { type: 'button', class: 'bm-wb__btn', title: locale.sendToBack, disabled: !hasSel, onClick: () => ctrl.voidSendToBack() }, '⬇'),
227
+ h('button', { type: 'button', class: 'bm-wb__btn bm-wb__lock-btn', title: locale.lock, disabled: !hasSel, onClick: () => ctrl.voidToggleLock() }, '🔒'),
228
+ h('button', { type: 'button', class: 'bm-wb__btn', title: locale.group, 'data-action': 'group', disabled: !canGroup, onClick: () => ctrl.voidGroup() }, '⧉'),
229
+ h('button', { type: 'button', class: 'bm-wb__btn', title: locale.ungroup, 'data-action': 'ungroup', disabled: !canUngroup, onClick: () => ctrl.voidUngroup() }, '⊟'),
230
+ h('button', { type: 'button', class: 'bm-wb__btn', title: locale.duplicate, 'data-action': 'duplicate', disabled: !hasSel, onClick: () => ctrl.voidDuplicate() }, '⧉⁺'),
231
+ h('button', { type: 'button', class: 'bm-wb__btn', title: locale.delete, disabled: !hasSel, onClick: () => ctrl.voidDeleteSelection() }, '🗑'),
232
+ h('span', { class: 'bm-wb__toolbar-sep' }),
233
+ ...alignButtons,
234
+ ...distributeButtons,
235
+ h('span', { class: 'bm-wb__toolbar-sep' }),
236
+ ]),
215
237
  h('button', { type: 'button', class: 'bm-wb__btn', title: locale.resetZoom, onClick: () => ctrl.resetViewport() }, '⌖'),
216
238
  h('span', { class: 'bm-wb__toolbar-zoom' }, `${Math.round(viewport.scale * 100)}%`),
217
239
  ]);
@@ -263,10 +285,13 @@ export const Whiteboard = defineComponent({
263
285
  // parent callbacks (bound by id inside the leaf) so Vue skips unchanged shapes.
264
286
  shape: v.shape,
265
287
  selected: v.selected,
288
+ focused: v.focused,
266
289
  dropTarget: snap.dropTargetId === v.shape.id,
267
290
  onShapePointerDown,
268
291
  onShapeDoubleClick,
269
292
  lockedLabel: locale.locked,
293
+ domId: shapeDomId(uid, v.shape.id),
294
+ ariaLabel: v.ariaLabel,
270
295
  }));
271
296
  // ── Comment pins (board coords, derived anchor) ──
272
297
  const commentPins = snap.comments.map((c) => {
@@ -353,19 +378,25 @@ export const Whiteboard = defineComponent({
353
378
  role: 'application',
354
379
  'aria-label': snap.ariaLabel,
355
380
  tabindex: 0,
381
+ // mcp-78 — points at the shape the keyboard cursor is on. Published by the
382
+ // controller only while that shape is rendered (shapes are culled), so it
383
+ // can never dangle.
384
+ 'aria-activedescendant': snap.activeDescendantId ? shapeDomId(uid, snap.activeDescendantId) : undefined,
356
385
  onKeydown: onKeyDown,
357
386
  }, [
358
387
  toolbar,
359
388
  viewportEl,
360
389
  // Guard on the resolved VIEWS, not the raw selection length: a delete/ungroup
361
390
  // transiently leaves `selection` pointing at an already-removed shape.
362
- selectedViews.length > 0
391
+ // mcp-64 R1 (Review F7): das Stil-Panel ist eine reine Mutations-Fläche — im View-Only fällt es ganz.
392
+ selectedViews.length > 0 && !snap.config.readOnly
363
393
  ? h(StylePanel, { style: selectedViews[0].shape.style, locale, onInput: (raw) => ctrl.voidSetSelectionStyleFromInput(raw) })
364
394
  : null,
395
+ // Feedback-only now (ticket-15): the undo/redo affordance moved to the persistent
396
+ // toolbar buttons; the toast just narrates the last outcome.
365
397
  undo
366
- ? h('div', { class: 'bm-wb__toast', role: 'status' }, [
398
+ ? h('div', { class: 'bm-wb__toast' + (undo.kind === 'error' ? ' bm-wb__toast--error' : ''), role: undo.kind === 'error' ? 'alert' : 'status' }, [
367
399
  h('span', undo.description),
368
- h('button', { type: 'button', class: 'bm-wb__toast-btn', onClick: () => ctrl.voidUndo() }, locale.undo),
369
400
  ])
370
401
  : null,
371
402
  snap.dialog
@@ -1 +1 @@
1
- {"version":3,"file":"Whiteboard.js","sourceRoot":"","sources":["../../src/components/Whiteboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Whiteboard.js","sourceRoot":"","sources":["../../src/components/Whiteboard.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,11 @@ export declare const WhiteboardShape: import("vue").DefineComponent<import("vue"
22
22
  type: BooleanConstructor;
23
23
  default: boolean;
24
24
  };
25
+ /** mcp-78 — the visible keyboard cursor. The board is the only tab stop, so the browser draws no ring on the shape the user is actually on; this class is that ring. */
26
+ focused: {
27
+ type: BooleanConstructor;
28
+ default: boolean;
29
+ };
25
30
  dropTarget: {
26
31
  type: BooleanConstructor;
27
32
  default: boolean;
@@ -39,6 +44,16 @@ export declare const WhiteboardShape: import("vue").DefineComponent<import("vue"
39
44
  type: StringConstructor;
40
45
  required: true;
41
46
  };
47
+ /** Board-scoped DOM id (mcp-78) — what the board's aria-activedescendant points at. */
48
+ domId: {
49
+ type: StringConstructor;
50
+ required: true;
51
+ };
52
+ /** The shape's accessible name, ASSEMBLED BY THE CONTROLLER (kind + text + state). */
53
+ ariaLabel: {
54
+ type: StringConstructor;
55
+ required: true;
56
+ };
42
57
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
43
58
  [key: string]: any;
44
59
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -50,6 +65,11 @@ export declare const WhiteboardShape: import("vue").DefineComponent<import("vue"
50
65
  type: BooleanConstructor;
51
66
  default: boolean;
52
67
  };
68
+ /** mcp-78 — the visible keyboard cursor. The board is the only tab stop, so the browser draws no ring on the shape the user is actually on; this class is that ring. */
69
+ focused: {
70
+ type: BooleanConstructor;
71
+ default: boolean;
72
+ };
53
73
  dropTarget: {
54
74
  type: BooleanConstructor;
55
75
  default: boolean;
@@ -67,8 +87,19 @@ export declare const WhiteboardShape: import("vue").DefineComponent<import("vue"
67
87
  type: StringConstructor;
68
88
  required: true;
69
89
  };
90
+ /** Board-scoped DOM id (mcp-78) — what the board's aria-activedescendant points at. */
91
+ domId: {
92
+ type: StringConstructor;
93
+ required: true;
94
+ };
95
+ /** The shape's accessible name, ASSEMBLED BY THE CONTROLLER (kind + text + state). */
96
+ ariaLabel: {
97
+ type: StringConstructor;
98
+ required: true;
99
+ };
70
100
  }>> & Readonly<{}>, {
71
101
  selected: boolean;
102
+ focused: boolean;
72
103
  dropTarget: boolean;
73
104
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
74
105
  //# sourceMappingURL=WhiteboardShape.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WhiteboardShape.d.ts","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,QAAQ,EAAyB,MAAM,KAAK,CAAC;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe;;cAGC,QAAQ,CAAC,KAAK,CAAC;;;;;;;;;;;;cAGA,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;;;;cACpD,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;;;IAC1F,qFAAqF;;;;;;;;;cAL5D,QAAQ,CAAC,KAAK,CAAC;;;;;;;;;;;;cAGA,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;;;;cACpD,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;;;IAC1F,qFAAqF;;;;;;;;4EA0DvF,CAAC"}
1
+ {"version":3,"file":"WhiteboardShape.d.ts","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,QAAQ,EAAyB,MAAM,KAAK,CAAC;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe;;cAGC,QAAQ,CAAC,KAAK,CAAC;;;;;;;IAExC,wKAAwK;;;;;;;;;;cAGhI,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;;;;cACpD,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;;;IAC1F,qFAAqF;;;;;IAErF,uFAAuF;;;;;IAEvF,sFAAsF;;;;;;;;;cAX7D,QAAQ,CAAC,KAAK,CAAC;;;;;;;IAExC,wKAAwK;;;;;;;;;;cAGhI,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;;;;cACpD,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;;;IAC1F,qFAAqF;;;;;IAErF,uFAAuF;;;;;IAEvF,sFAAsF;;;;;;;;;4EAkExF,CAAC"}
@@ -19,11 +19,17 @@ export const WhiteboardShape = defineComponent({
19
19
  props: {
20
20
  shape: { type: Object, required: true },
21
21
  selected: { type: Boolean, default: false },
22
+ /** mcp-78 — the visible keyboard cursor. The board is the only tab stop, so the browser draws no ring on the shape the user is actually on; this class is that ring. */
23
+ focused: { type: Boolean, default: false },
22
24
  dropTarget: { type: Boolean, default: false },
23
25
  onShapePointerDown: { type: Function, required: true },
24
26
  onShapeDoubleClick: { type: Function, required: true },
25
27
  /** Accessible name for the lock badge (locale.locked — threaded from the parent). */
26
28
  lockedLabel: { type: String, required: true },
29
+ /** Board-scoped DOM id (mcp-78) — what the board's aria-activedescendant points at. */
30
+ domId: { type: String, required: true },
31
+ /** The shape's accessible name, ASSEMBLED BY THE CONTROLLER (kind + text + state). */
32
+ ariaLabel: { type: String, required: true },
27
33
  },
28
34
  setup(props) {
29
35
  const onPointerDown = (e) => props.onShapePointerDown(props.shape.id, e);
@@ -53,13 +59,21 @@ export const WhiteboardShape = defineComponent({
53
59
  };
54
60
  const cls = `bm-wb__shape bm-wb__shape--${s.kind}`
55
61
  + (props.selected ? ' bm-wb__shape--selected' : '')
62
+ + (props.focused ? ' bm-wb__shape--cursor' : '')
56
63
  + (s.locked ? ' bm-wb__shape--locked' : '')
57
64
  + (props.dropTarget ? ' bm-wb__shape--drop-target' : '');
58
65
  return h('div', {
59
66
  class: cls,
60
67
  style,
68
+ id: props.domId,
61
69
  'data-shape-id': s.id,
62
70
  'data-kind': s.kind,
71
+ // mcp-78 — a named graphic, deliberately NOT tabbable and NOT aria-selected:
72
+ // the board is the single tab stop and reaches its shapes through
73
+ // aria-activedescendant; selection rides in the NAME, because aria-selected
74
+ // is invalid on role="img".
75
+ role: 'img',
76
+ 'aria-label': props.ariaLabel,
63
77
  onPointerdown: onPointerDown,
64
78
  onDblclick: onDblClick,
65
79
  }, [
@@ -1 +1 @@
1
- {"version":3,"file":"WhiteboardShape.js","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WhiteboardShape.js","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -14,5 +14,4 @@ export { TransformHandles } from './components/TransformHandles.js';
14
14
  export { StylePanel } from './components/StylePanel.js';
15
15
  export { CommentThread } from './components/CommentThread.js';
16
16
  export { TextDialog } from './components/TextDialog.js';
17
- export * from '@bimetal/vue';
18
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC"}
package/dist/index.js CHANGED
@@ -14,5 +14,4 @@ export { StylePanel } from './components/StylePanel.js';
14
14
  export { CommentThread } from './components/CommentThread.js';
15
15
  export { TextDialog } from './components/TextDialog.js';
16
16
  // Re-export the generic Vue whiteboard binding for convenience.
17
- export * from '@bimetal/vue';
18
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,gEAAgE;AAChE,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,gEAAgE"}
@@ -0,0 +1,3 @@
1
+ // Generated by scripts/generate-css-stubs.mjs — DO NOT EDIT.
2
+ // Type-stub for side-effect CSS import (TS moduleResolution: nodenext/bundler).
3
+ export {};
package/dist/types.d.ts CHANGED
@@ -9,6 +9,9 @@ export interface WhiteboardProps {
9
9
  config?: WhiteboardConfigInput;
10
10
  /** Apply the dark token set (`data-theme="dark"`). */
11
11
  darkMode?: boolean;
12
+ /** Show the undo/redo button pair in the toolbar (default true). UI-only — the
13
+ * controller's undo()/redo() and keyboard shortcuts stay active when hidden. */
14
+ showUndoRedo?: boolean;
12
15
  /** Surfaces infrastructure errors (a domain rejection is an undo toast). */
13
16
  onError?: (err: unknown) => void;
14
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,KAAK,EAAE,eAAe,CAAC;IACvB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,KAAK,EAAE,eAAe,CAAC;IACvB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;qFACiF;IACjF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bimetal/whiteboard-vue-components",
3
- "version": "0.34.0",
3
+ "version": "0.36.0",
4
4
  "description": "Default Vue 3 whiteboard — infinite-canvas pan/zoom, shapes, drag/resize/rotate, connectors, freehand, smart guides, group, frames, comments, laser, style panel, theming.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -10,7 +10,10 @@
10
10
  "types": "./dist/index.d.ts",
11
11
  "import": "./dist/index.js"
12
12
  },
13
- "./styles": "./dist/styles/index.css"
13
+ "./styles": {
14
+ "types": "./dist/styles/index.css.d.ts",
15
+ "default": "./dist/styles/index.css"
16
+ }
14
17
  },
15
18
  "files": [
16
19
  "dist",
@@ -18,18 +21,18 @@
18
21
  "LICENSE"
19
22
  ],
20
23
  "scripts": {
21
- "build": "tsc -b && node scripts/copy-css.mjs",
24
+ "build": "tsc -b && node scripts/copy-css.mjs && node ../../../scripts/generate-css-stubs.mjs",
22
25
  "dev": "tsc -b --watch",
23
- "typecheck": "tsc --noEmit",
26
+ "typecheck": "tsc --noEmit -p tsconfig.test.json",
24
27
  "test": "vitest run",
25
28
  "prepublishOnly": "npm run build"
26
29
  },
27
30
  "dependencies": {
28
- "@bimetal/vue": "^0.34.0",
29
- "@bimetal/whiteboard-data": "^0.34.0",
30
- "@bimetal/whiteboard-headless": "^0.34.0",
31
- "@bimetal/whiteboard-themes": "^0.34.0",
32
- "@bimetal/a11y-dom": "^0.34.0"
31
+ "@bimetal/vue": "^0.36.0",
32
+ "@bimetal/whiteboard-data": "^0.36.0",
33
+ "@bimetal/whiteboard-headless": "^0.36.0",
34
+ "@bimetal/whiteboard-themes": "^0.36.0",
35
+ "@bimetal/a11y-dom": "^0.36.0"
33
36
  },
34
37
  "peerDependencies": {
35
38
  "vue": "^3.3.0"
@@ -43,7 +46,7 @@
43
46
  "sideEffects": [
44
47
  "**/*.css"
45
48
  ],
46
- "license": "PolyForm-Noncommercial-1.0.0",
49
+ "license": "Apache-2.0",
47
50
  "author": "Andreas Biederbeck",
48
51
  "repository": {
49
52
  "type": "git",