@bimetal/whiteboard-vue-components 0.39.0 → 0.40.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.
@@ -0,0 +1,38 @@
1
+ import { type PropType } from 'vue';
2
+ import type { ConnectorStyle, ConnectorStyleInput, WhiteboardLocale } from '@bimetal/whiteboard-headless';
3
+ /**
4
+ * The style editor for the selected CONNECTORS (mcp-120) — the twin of
5
+ * `StylePanel` over the connector allowlist (stroke/width/dash/opacity + the two
6
+ * arrowheads). Forwards RAW values; the controller parses/clamps. 1:1 with the
7
+ * React reference.
8
+ */
9
+ export declare const ConnectorStylePanel: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10
+ style: {
11
+ type: PropType<ConnectorStyle>;
12
+ required: true;
13
+ };
14
+ locale: {
15
+ type: PropType<WhiteboardLocale>;
16
+ required: true;
17
+ };
18
+ onInput: {
19
+ type: PropType<(raw: ConnectorStyleInput) => void>;
20
+ required: true;
21
+ };
22
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
23
+ [key: string]: any;
24
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
25
+ style: {
26
+ type: PropType<ConnectorStyle>;
27
+ required: true;
28
+ };
29
+ locale: {
30
+ type: PropType<WhiteboardLocale>;
31
+ required: true;
32
+ };
33
+ onInput: {
34
+ type: PropType<(raw: ConnectorStyleInput) => void>;
35
+ required: true;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
38
+ //# sourceMappingURL=ConnectorStylePanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectorStylePanel.d.ts","sourceRoot":"","sources":["../../src/components/ConnectorStylePanel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,QAAQ,EAAK,MAAM,KAAK,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAE1G;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;cAGH,QAAQ,CAAC,cAAc,CAAC;;;;cACvB,QAAQ,CAAC,gBAAgB,CAAC;;;;cACvB,QAAQ,CAAC,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAC;;;;;;;cAFhD,QAAQ,CAAC,cAAc,CAAC;;;;cACvB,QAAQ,CAAC,gBAAgB,CAAC;;;;cACvB,QAAQ,CAAC,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAC;;;iGAuC3E,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { defineComponent, h } from 'vue';
2
+ /**
3
+ * The style editor for the selected CONNECTORS (mcp-120) — the twin of
4
+ * `StylePanel` over the connector allowlist (stroke/width/dash/opacity + the two
5
+ * arrowheads). Forwards RAW values; the controller parses/clamps. 1:1 with the
6
+ * React reference.
7
+ */
8
+ export const ConnectorStylePanel = defineComponent({
9
+ name: 'ConnectorStylePanel',
10
+ props: {
11
+ style: { type: Object, required: true },
12
+ locale: { type: Object, required: true },
13
+ onInput: { type: Function, required: true },
14
+ },
15
+ setup(props) {
16
+ const val = (e) => e.target.value;
17
+ const checked = (e) => e.target.checked;
18
+ return () => {
19
+ const { style, locale, onInput } = props;
20
+ return h('div', { class: 'bm-wb__panel', 'data-testid': 'wb-connector-style-panel' }, [
21
+ h('div', { class: 'bm-wb__field' }, [
22
+ h('label', { for: 'bmwc-stroke' }, locale.styleStroke),
23
+ h('input', { id: 'bmwc-stroke', type: 'color', 'data-connector-style': 'stroke', value: style.stroke, onChange: (e) => onInput({ stroke: val(e) }) }),
24
+ ]),
25
+ h('div', { class: 'bm-wb__field' }, [
26
+ h('label', { for: 'bmwc-strokeWidth' }, locale.styleWidth),
27
+ h('input', { id: 'bmwc-strokeWidth', type: 'range', min: 1, max: 12, 'data-connector-style': 'strokeWidth', value: style.strokeWidth, onChange: (e) => onInput({ strokeWidth: val(e) }) }),
28
+ ]),
29
+ h('div', { class: 'bm-wb__field' }, [
30
+ h('label', { for: 'bmwc-dash' }, locale.styleDash),
31
+ h('select', { id: 'bmwc-dash', 'data-connector-style': 'dash', value: style.dash, onChange: (e) => onInput({ dash: val(e) }) }, [
32
+ h('option', { value: 'solid' }, locale.dashSolid),
33
+ h('option', { value: 'dashed' }, locale.dashDashed),
34
+ h('option', { value: 'dotted' }, locale.dashDotted),
35
+ ]),
36
+ ]),
37
+ h('div', { class: 'bm-wb__field' }, [
38
+ h('label', { for: 'bmwc-opacity' }, locale.styleOpacity),
39
+ h('input', { id: 'bmwc-opacity', type: 'range', min: 0.1, max: 1, step: 0.1, 'data-connector-style': 'opacity', value: style.opacity, onChange: (e) => onInput({ opacity: val(e) }) }),
40
+ ]),
41
+ h('div', { class: 'bm-wb__field' }, [
42
+ h('label', { for: 'bmwc-arrowStart' }, locale.styleArrowStart),
43
+ h('input', { id: 'bmwc-arrowStart', type: 'checkbox', 'data-connector-style': 'arrowStart', checked: style.arrowStart, onChange: (e) => onInput({ arrowStart: checked(e) }) }),
44
+ ]),
45
+ h('div', { class: 'bm-wb__field' }, [
46
+ h('label', { for: 'bmwc-arrowEnd' }, locale.styleArrowEnd),
47
+ h('input', { id: 'bmwc-arrowEnd', type: 'checkbox', 'data-connector-style': 'arrowEnd', checked: style.arrowEnd, onChange: (e) => onInput({ arrowEnd: checked(e) }) }),
48
+ ]),
49
+ ]);
50
+ };
51
+ },
52
+ });
53
+ //# sourceMappingURL=ConnectorStylePanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectorStylePanel.js","sourceRoot":"","sources":["../../src/components/ConnectorStylePanel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type PropType, type VNode } from 'vue';
2
2
  import type { WhiteboardStore } from '@bimetal/whiteboard-data';
3
3
  import type { WhiteboardConfigInput, WhiteboardController } from '@bimetal/whiteboard-headless';
4
+ import { type WhiteboardShapeRenderer } from './WhiteboardShape.js';
4
5
  /** Props for {@link Whiteboard} in standalone mode (no `controller` prop passed). */
5
6
  export interface WhiteboardProps {
6
7
  /** The canvas store. Immutable after mount (the controller is created once). */
@@ -18,6 +19,9 @@ export interface WhiteboardProps {
18
19
  showUndoRedo?: boolean;
19
20
  /** Surfaces infrastructure errors (a domain rejection is an undo toast). */
20
21
  onError?: (err: unknown) => void;
22
+ /** Replace a shape's content (default: its text). Shape structure, ARIA, selection
23
+ * and interaction stay component-owned. */
24
+ renderShape?: WhiteboardShapeRenderer;
21
25
  }
22
26
  /**
23
27
  * The Vue whiteboard — a thin binding over `@bimetal/whiteboard-headless`. Owns
@@ -64,6 +68,10 @@ export declare const Whiteboard: import("vue").DefineComponent<import("vue").Ext
64
68
  type: PropType<(selectedIds: readonly string[]) => void>;
65
69
  default: undefined;
66
70
  };
71
+ renderShape: {
72
+ type: PropType<WhiteboardShapeRenderer>;
73
+ default: undefined;
74
+ };
67
75
  }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
68
76
  [key: string]: any;
69
77
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -103,7 +111,12 @@ export declare const Whiteboard: import("vue").DefineComponent<import("vue").Ext
103
111
  type: PropType<(selectedIds: readonly string[]) => void>;
104
112
  default: undefined;
105
113
  };
114
+ renderShape: {
115
+ type: PropType<WhiteboardShapeRenderer>;
116
+ default: undefined;
117
+ };
106
118
  }>> & Readonly<{}>, {
119
+ renderShape: WhiteboardShapeRenderer;
107
120
  onError: (err: unknown) => void;
108
121
  controller: WhiteboardController;
109
122
  store: WhiteboardStore;
@@ -1 +1 @@
1
- {"version":3,"file":"Whiteboard.d.ts","sourceRoot":"","sources":["../../src/components/Whiteboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgF,KAAK,QAAQ,EAAgC,KAAK,KAAK,EAAK,MAAM,KAAK,CAAC;AAI/J,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAgC,MAAM,8BAA8B,CAAC;AAQ9H,qFAAqF;AACrF,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,qEAAqE;IACrE,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB;qFACiF;IACjF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAClC;AAKD;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU;;cAGW,QAAQ,CAAC,oBAAoB,CAAC;;;;cACnC,QAAQ,CAAC,eAAe,CAAC;;;;;;;;cAExB,QAAQ,CAAC,qBAAqB,CAAC;;;;;;;;cAElC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;;;;;;;;cAEjB,QAAQ,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;;;;cACtB,QAAQ,CAAC,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;;;;;;;cAR3D,QAAQ,CAAC,oBAAoB,CAAC;;;;cACnC,QAAQ,CAAC,eAAe,CAAC;;;;;;;;cAExB,QAAQ,CAAC,qBAAqB,CAAC;;;;;;;;cAElC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;;;;;;;;cAEjB,QAAQ,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;;;;cACtB,QAAQ,CAAC,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;;;;mBAD7C,OAAO,KAAK,IAAI;;;;;;;;qCACE,SAAS,MAAM,EAAE,KAAK,IAAI;4EAsY1F,CAAC"}
1
+ {"version":3,"file":"Whiteboard.d.ts","sourceRoot":"","sources":["../../src/components/Whiteboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgF,KAAK,QAAQ,EAAgC,KAAK,KAAK,EAAK,MAAM,KAAK,CAAC;AAI/J,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAgC,MAAM,8BAA8B,CAAC;AAC9H,OAAO,EAAmB,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAQrF,qFAAqF;AACrF,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,qEAAqE;IACrE,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB;qFACiF;IACjF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC;gDAC4C;IAC5C,WAAW,CAAC,EAAE,uBAAuB,CAAC;CACvC;AAKD;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU;;cAGW,QAAQ,CAAC,oBAAoB,CAAC;;;;cACnC,QAAQ,CAAC,eAAe,CAAC;;;;;;;;cAExB,QAAQ,CAAC,qBAAqB,CAAC;;;;;;;;cAElC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;;;;;;;;cAEjB,QAAQ,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;;;;cACtB,QAAQ,CAAC,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;;;;cACxD,QAAQ,CAAC,uBAAuB,CAAC;;;;;;;cATpC,QAAQ,CAAC,oBAAoB,CAAC;;;;cACnC,QAAQ,CAAC,eAAe,CAAC;;;;;;;;cAExB,QAAQ,CAAC,qBAAqB,CAAC;;;;;;;;cAElC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;;;;;;;;cAEjB,QAAQ,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;;;;cACtB,QAAQ,CAAC,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;;;;cACxD,QAAQ,CAAC,uBAAuB,CAAC;;;;;mBAFtB,OAAO,KAAK,IAAI;;;;;;;;qCACE,SAAS,MAAM,EAAE,KAAK,IAAI;4EA6Z1F,CAAC"}
@@ -1,9 +1,10 @@
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, whiteboardShapeDomId as shapeDomId, reportUnroutedWhiteboardError } from '@bimetal/whiteboard-headless';
3
+ import { screenToBoard, boardToScreen, WHITEBOARD_TOOLS, WHITEBOARD_ALIGN, WHITEBOARD_DISTRIBUTE, whiteboardConnectorPath, whiteboardConnectorEnds, 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';
7
+ import { ConnectorStylePanel } from './ConnectorStylePanel.js';
7
8
  import { CommentThread } from './CommentThread.js';
8
9
  import { TextDialog } from './TextDialog.js';
9
10
  import { isEditableTarget } from '@bimetal/a11y-dom';
@@ -28,6 +29,7 @@ export const Whiteboard = defineComponent({
28
29
  showUndoRedo: { type: Boolean, default: true },
29
30
  onError: { type: Function, default: undefined },
30
31
  onSelectionChange: { type: Function, default: undefined },
32
+ renderShape: { type: Function, default: undefined },
31
33
  },
32
34
  setup(props) {
33
35
  let snapshot;
@@ -242,19 +244,37 @@ export const Whiteboard = defineComponent({
242
244
  const d = whiteboardConnectorPath(snap, c);
243
245
  if (!d)
244
246
  return null;
245
- return h('path', {
246
- key: c.id,
247
- class: 'bm-wb__connector',
248
- 'data-connector-id': c.id,
249
- d,
250
- stroke: c.style.stroke,
251
- 'stroke-width': c.style.strokeWidth,
252
- 'stroke-dasharray': whiteboardDashArray(c.style.dash),
253
- opacity: c.style.opacity,
254
- 'marker-end': c.style.arrowEnd ? `url(#${arrowId})` : undefined,
255
- 'marker-start': c.style.arrowStart ? `url(#${arrowId})` : undefined,
256
- });
247
+ const selected = snap.selectedConnectorIds.includes(c.id);
248
+ return h('g', { key: c.id }, [h('path', {
249
+ class: 'bm-wb__connector' + (selected ? ' bm-wb__connector--selected' : ''),
250
+ 'data-connector-id': c.id,
251
+ d,
252
+ stroke: c.style.stroke,
253
+ 'stroke-width': c.style.strokeWidth,
254
+ 'stroke-dasharray': whiteboardDashArray(c.style.dash),
255
+ opacity: c.style.opacity,
256
+ 'marker-end': c.style.arrowEnd ? `url(#${arrowId})` : undefined,
257
+ 'marker-start': c.style.arrowStart ? `url(#${arrowId})` : undefined,
258
+ }),
259
+ // mcp-120: the wide invisible hit stroke — picks the connector (select tool only).
260
+ snap.activeTool === 'select'
261
+ ? h('path', { class: 'bm-wb__connector-hit', 'data-connector-hit': c.id, d,
262
+ onPointerdown: (e) => { if (e.button !== 0)
263
+ return; e.stopPropagation(); ctrl.selectConnector(c.id, e.shiftKey); } })
264
+ : null,
265
+ ]);
257
266
  });
267
+ // mcp-120: endpoint-drag handles on the lone selected connector (`connectorHandleId`).
268
+ const handleConn = snap.connectorHandleId ? snap.connectors.find(x => x.id === snap.connectorHandleId) : undefined;
269
+ const handleEnds = handleConn ? whiteboardConnectorEnds(snap, handleConn) : null;
270
+ const endHandles = handleConn && handleEnds
271
+ ? ['from', 'to'].map(end => h('circle', {
272
+ key: 'end-' + end, class: 'bm-wb__connector-end', 'data-connector-end': end, cx: handleEnds[end].x, cy: handleEnds[end].y, r: 6,
273
+ 'aria-label': end === 'from' ? snap.config.locale.connectorEndFrom : snap.config.locale.connectorEndTo,
274
+ onPointerdown: (e) => { if (e.button !== 0)
275
+ return; e.stopPropagation(); ctrl.beginConnectorEndpointDrag(handleConn.id, end, boardOf(e.clientX, e.clientY), e.pointerId); },
276
+ }))
277
+ : [];
258
278
  const connectorsSvg = h('svg', { class: 'bm-wb__connectors', 'data-testid': 'wb-connectors' }, [
259
279
  h('defs', [
260
280
  h('marker', { id: arrowId, markerWidth: '8', markerHeight: '8', refX: '7', refY: '4', orient: 'auto' }, [
@@ -262,6 +282,7 @@ export const Whiteboard = defineComponent({
262
282
  ]),
263
283
  ]),
264
284
  ...connectorPaths,
285
+ ...endHandles,
265
286
  snap.connectorPreview
266
287
  ? h('path', { class: 'bm-wb__connector-preview', d: `M ${snap.connectorPreview.from.x} ${snap.connectorPreview.from.y} L ${snap.connectorPreview.to.x} ${snap.connectorPreview.to.y}` })
267
288
  : null,
@@ -292,6 +313,7 @@ export const Whiteboard = defineComponent({
292
313
  lockedLabel: locale.locked,
293
314
  domId: shapeDomId(uid, v.shape.id),
294
315
  ariaLabel: v.ariaLabel,
316
+ renderShape: props.renderShape,
295
317
  }));
296
318
  // ── Comment pins (board coords, derived anchor) ──
297
319
  const commentPins = snap.comments.map((c) => {
@@ -392,6 +414,10 @@ export const Whiteboard = defineComponent({
392
414
  selectedViews.length > 0 && !snap.config.readOnly
393
415
  ? h(StylePanel, { style: selectedViews[0].shape.style, locale, onInput: (raw) => ctrl.voidSetSelectionStyleFromInput(raw) })
394
416
  : null,
417
+ // mcp-120: the connector style panel — shown while connectors are selected.
418
+ snap.connectorStyle && !snap.config.readOnly
419
+ ? h(ConnectorStylePanel, { style: snap.connectorStyle, locale, onInput: (raw) => ctrl.voidSetConnectorStyleFromInput(raw) })
420
+ : null,
395
421
  // Feedback-only now (ticket-15): the undo/redo affordance moved to the persistent
396
422
  // toolbar buttons; the toast just narrates the last outcome.
397
423
  undo
@@ -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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"}
@@ -1,5 +1,13 @@
1
- import { type PropType } from 'vue';
1
+ import { type PropType, type VNodeChild } from 'vue';
2
2
  import type { Shape } from '@bimetal/whiteboard-data';
3
+ /** Read-side render slot for a SHAPE's content (default: the shape's text). The shape
4
+ * element, its geometry/fill/stroke, `role="img"` + accessible name, selection/cursor
5
+ * classes, lock badge and pointer wiring stay component-owned; only the inner content
6
+ * of `.bm-wb__shape-text` is replaced (that cell is `pointer-events: none`, so custom
7
+ * content never steals the shape's drag/select). Freehand `draw` shapes carry no
8
+ * content cell and are not passed. The argument is the ref-stable shape object.
9
+ * Mirrors tree's `renderNode`. */
10
+ export type WhiteboardShapeRenderer = (shape: Shape) => VNodeChild;
3
11
  /**
4
12
  * One shape, positioned in BOARD coordinates inside the pan/zoom scene (the
5
13
  * scene's transform supplies the camera, so this reads `shape.x/y/w/h` raw).
@@ -54,6 +62,11 @@ export declare const WhiteboardShape: import("vue").DefineComponent<import("vue"
54
62
  type: StringConstructor;
55
63
  required: true;
56
64
  };
65
+ /** Optional content slot (ticket #109); absent = the shape's text. */
66
+ renderShape: {
67
+ type: PropType<WhiteboardShapeRenderer>;
68
+ default: undefined;
69
+ };
57
70
  }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
58
71
  [key: string]: any;
59
72
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -97,9 +110,15 @@ export declare const WhiteboardShape: import("vue").DefineComponent<import("vue"
97
110
  type: StringConstructor;
98
111
  required: true;
99
112
  };
113
+ /** Optional content slot (ticket #109); absent = the shape's text. */
114
+ renderShape: {
115
+ type: PropType<WhiteboardShapeRenderer>;
116
+ default: undefined;
117
+ };
100
118
  }>> & Readonly<{}>, {
101
119
  selected: boolean;
102
120
  focused: boolean;
103
121
  dropTarget: boolean;
122
+ renderShape: WhiteboardShapeRenderer;
104
123
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
105
124
  //# 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;;;;;;;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"}
1
+ {"version":3,"file":"WhiteboardShape.d.ts","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,QAAQ,EAAsB,KAAK,UAAU,EAAK,MAAM,KAAK,CAAC;AAE7F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD;;;;;;mCAMmC;AACnC,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,UAAU,CAAC;AAEnE;;;;;;;;;;;;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;;;;;IAEtF,sEAAsE;;cACrC,QAAQ,CAAC,uBAAuB,CAAC;;;;;;;cAdzC,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;;;;;IAEtF,sEAAsE;;cACrC,QAAQ,CAAC,uBAAuB,CAAC;;;;;;;;4EAkEpE,CAAC"}
@@ -30,6 +30,8 @@ export const WhiteboardShape = defineComponent({
30
30
  domId: { type: String, required: true },
31
31
  /** The shape's accessible name, ASSEMBLED BY THE CONTROLLER (kind + text + state). */
32
32
  ariaLabel: { type: String, required: true },
33
+ /** Optional content slot (ticket #109); absent = the shape's text. */
34
+ renderShape: { type: Function, default: undefined },
33
35
  },
34
36
  setup(props) {
35
37
  const onPointerDown = (e) => props.onShapePointerDown(props.shape.id, e);
@@ -86,7 +88,8 @@ export const WhiteboardShape = defineComponent({
86
88
  }),
87
89
  ])
88
90
  : null,
89
- !isDraw && (isText || isFrame || s.text) ? h('span', { class: 'bm-wb__shape-text' }, s.text) : null,
91
+ // #109: with a renderShape slot every non-draw shape gets its content cell.
92
+ !isDraw && (props.renderShape || isText || isFrame || s.text) ? h('span', { class: 'bm-wb__shape-text' }, props.renderShape ? [props.renderShape(s)] : s.text) : null,
90
93
  s.locked ? h('span', { class: 'bm-wb__lock-badge', 'aria-label': props.lockedLabel }, '🔒') : null,
91
94
  ]);
92
95
  };
@@ -1 +1 @@
1
- {"version":3,"file":"WhiteboardShape.js","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAqC,CAAC,EAAE,MAAM,KAAK,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEvF,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;IAC7C,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE;QACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAyB,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC1D,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3C,wKAAwK;QACxK,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC7C,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAgE,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9G,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAA8D,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5G,qFAAqF;QACrF,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,uFAAuF;QACvF,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;QACvC,sFAAsF;QACtF,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5C;IACD,KAAK,CAAC,KAAK;QACT,MAAM,aAAa,GAAG,CAAC,CAAe,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACvF,MAAM,UAAU,GAAG,CAAC,CAAa,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAClF,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;YACtB,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClB,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;YACjC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;YACnC,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;YACjC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;YACnC,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC;YAE5D,MAAM,KAAK,GAAkB;gBAC3B,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;gBAChB,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;gBACf,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI;gBACrB,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI;gBACvB,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,SAAS;gBAC9D,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;gBAClE,6EAA6E;gBAC7E,uDAAuD;gBACvD,MAAM,EAAE,MAAM,IAAI,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE;gBAC9G,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS;gBACxB,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI;gBACjC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO;gBACxB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS;aAC7B,CAAC;YAEF,MAAM,GAAG,GAAG,8BAA8B,CAAC,CAAC,IAAI,EAAE;kBAC9C,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC;kBACjD,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC;kBAC9C,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC;kBACzC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAE3D,OAAO,CAAC,CAAC,KAAK,EAAE;gBACd,KAAK,EAAE,GAAG;gBACV,KAAK;gBACL,EAAE,EAAE,KAAK,CAAC,KAAK;gBACf,eAAe,EAAE,CAAC,CAAC,EAAE;gBACrB,WAAW,EAAE,CAAC,CAAC,IAAI;gBACnB,6EAA6E;gBAC7E,kEAAkE;gBAClE,4EAA4E;gBAC5E,4BAA4B;gBAC5B,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE,KAAK,CAAC,SAAS;gBAC7B,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,UAAU;aACvB,EAAE;gBACD,MAAM,IAAI,CAAC,CAAC,MAAM;oBAChB,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE;wBAC1G,CAAC,CAAC,MAAM,EAAE;4BACR,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;4BACrE,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;4BAC1F,gBAAgB,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO;yBACtD,CAAC;qBACH,CAAC;oBACJ,CAAC,CAAC,IAAI;gBACR,CAAC,MAAM,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;gBACnG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;aACnG,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"WhiteboardShape.js","sourceRoot":"","sources":["../../src/components/WhiteboardShape.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10,8 +10,10 @@
10
10
  export { Whiteboard } from './components/Whiteboard.js';
11
11
  export type { WhiteboardProps } from './components/Whiteboard.js';
12
12
  export { WhiteboardShape } from './components/WhiteboardShape.js';
13
+ export type { WhiteboardShapeRenderer } from './components/WhiteboardShape.js';
13
14
  export { TransformHandles } from './components/TransformHandles.js';
14
15
  export { StylePanel } from './components/StylePanel.js';
16
+ export { ConnectorStylePanel } from './components/ConnectorStylePanel.js';
15
17
  export { CommentThread } from './components/CommentThread.js';
16
18
  export { TextDialog } from './components/TextDialog.js';
17
19
  //# 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"}
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,YAAY,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC"}
package/dist/index.js CHANGED
@@ -11,6 +11,7 @@ export { Whiteboard } from './components/Whiteboard.js';
11
11
  export { WhiteboardShape } from './components/WhiteboardShape.js';
12
12
  export { TransformHandles } from './components/TransformHandles.js';
13
13
  export { StylePanel } from './components/StylePanel.js';
14
+ export { ConnectorStylePanel } from './components/ConnectorStylePanel.js';
14
15
  export { CommentThread } from './components/CommentThread.js';
15
16
  export { TextDialog } from './components/TextDialog.js';
16
17
  // Re-export the generic Vue whiteboard binding for convenience.
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"}
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;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,gEAAgE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bimetal/whiteboard-vue-components",
3
- "version": "0.39.0",
3
+ "version": "0.40.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",
@@ -29,11 +29,11 @@
29
29
  "prepublishOnly": "npm run build"
30
30
  },
31
31
  "dependencies": {
32
- "@bimetal/vue": "^0.39.0",
33
- "@bimetal/whiteboard-data": "^0.39.0",
34
- "@bimetal/whiteboard-headless": "^0.39.0",
35
- "@bimetal/whiteboard-themes": "^0.39.0",
36
- "@bimetal/a11y-dom": "^0.39.0"
32
+ "@bimetal/vue": "^0.40.0",
33
+ "@bimetal/whiteboard-data": "^0.40.0",
34
+ "@bimetal/whiteboard-headless": "^0.40.0",
35
+ "@bimetal/whiteboard-themes": "^0.40.0",
36
+ "@bimetal/a11y-dom": "^0.40.0"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "vue": "^3.3.0"