@multiplatform.one/node-graph 7.7.4 → 7.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/cjs/model/history.cjs +8 -4
  2. package/dist/cjs/model/history.native.js +8 -4
  3. package/dist/cjs/model/history.native.js.map +1 -1
  4. package/dist/cjs/native/GraphToolbar.cjs +21 -7
  5. package/dist/cjs/native/GraphToolbar.native.js +21 -7
  6. package/dist/cjs/native/GraphToolbar.native.js.map +1 -1
  7. package/dist/cjs/react-flow/useGraphController.cjs +9 -17
  8. package/dist/cjs/react-flow/useGraphController.native.js +10 -18
  9. package/dist/cjs/react-flow/useGraphController.native.js.map +1 -1
  10. package/dist/esm/model/history.mjs +8 -4
  11. package/dist/esm/model/history.mjs.map +1 -1
  12. package/dist/esm/model/history.native.js +8 -4
  13. package/dist/esm/model/history.native.js.map +1 -1
  14. package/dist/esm/native/GraphToolbar.mjs +18 -4
  15. package/dist/esm/native/GraphToolbar.mjs.map +1 -1
  16. package/dist/esm/native/GraphToolbar.native.js +18 -4
  17. package/dist/esm/native/GraphToolbar.native.js.map +1 -1
  18. package/dist/esm/react-flow/useGraphController.mjs +9 -17
  19. package/dist/esm/react-flow/useGraphController.mjs.map +1 -1
  20. package/dist/esm/react-flow/useGraphController.native.js +10 -18
  21. package/dist/esm/react-flow/useGraphController.native.js.map +1 -1
  22. package/dist/jsx/model/history.mjs +8 -4
  23. package/dist/jsx/model/history.mjs.map +1 -1
  24. package/dist/jsx/model/history.native.js +8 -4
  25. package/dist/jsx/model/history.native.js.map +1 -1
  26. package/dist/jsx/native/GraphToolbar.mjs +18 -4
  27. package/dist/jsx/native/GraphToolbar.mjs.map +1 -1
  28. package/dist/jsx/native/GraphToolbar.native.js +21 -7
  29. package/dist/jsx/native/GraphToolbar.native.js.map +1 -1
  30. package/dist/jsx/react-flow/useGraphController.mjs +9 -17
  31. package/dist/jsx/react-flow/useGraphController.mjs.map +1 -1
  32. package/dist/jsx/react-flow/useGraphController.native.js +10 -18
  33. package/dist/jsx/react-flow/useGraphController.native.js.map +1 -1
  34. package/package.json +7 -6
  35. package/src/NodeGraph.historyBridge.spec.tsx +87 -0
  36. package/src/bench/Perf200.stories.tsx +43 -11
  37. package/src/interaction/Lasso.stories.tsx +22 -7
  38. package/src/layout/AutoLayout.stories.spec.tsx +26 -0
  39. package/src/layout/AutoLayout.stories.tsx +22 -12
  40. package/src/model/history.spec.ts +19 -0
  41. package/src/model/history.ts +17 -6
  42. package/src/native/GraphToolbar.spec.tsx +53 -0
  43. package/src/native/GraphToolbar.tsx +18 -14
  44. package/src/react-flow/useGraphController.ts +14 -12
  45. package/types/model/history.d.ts +3 -2
  46. package/types/model/history.d.ts.map +1 -1
  47. package/types/native/GraphToolbar.d.ts +4 -10
  48. package/types/native/GraphToolbar.d.ts.map +1 -1
  49. package/types/react-flow/useGraphController.d.ts.map +1 -1
@@ -97,17 +97,21 @@ function createHistory(options = {}) {
97
97
  if (past.length > limit) past = past.slice(past.length - limit);
98
98
  return next;
99
99
  },
100
- undo(doc) {
100
+ undo(doc, onApplied) {
101
101
  const entry = past.pop();
102
102
  if (!entry) return doc;
103
103
  future.push(entry);
104
- return (0, import_commands.applyCommand)(doc, entry.undo);
104
+ const next = (0, import_commands.applyCommand)(doc, entry.undo);
105
+ onApplied?.(next, entry.undo);
106
+ return next;
105
107
  },
106
- redo(doc) {
108
+ redo(doc, onApplied) {
107
109
  const entry = future.pop();
108
110
  if (!entry) return doc;
109
111
  past.push(entry);
110
- return (0, import_commands.applyCommand)(doc, entry.redo);
112
+ const next = (0, import_commands.applyCommand)(doc, entry.redo);
113
+ onApplied?.(next, entry.redo);
114
+ return next;
111
115
  },
112
116
  canUndo: () => past.length > 0,
113
117
  canRedo: () => future.length > 0,
@@ -145,17 +145,21 @@ function createHistory() {
145
145
  if (past.length > limit) past = past.slice(past.length - limit);
146
146
  return next;
147
147
  },
148
- undo(doc) {
148
+ undo(doc, onApplied) {
149
149
  var entry = past.pop();
150
150
  if (!entry) return doc;
151
151
  future.push(entry);
152
- return (0, import_commands.applyCommand)(doc, entry.undo);
152
+ var next = (0, import_commands.applyCommand)(doc, entry.undo);
153
+ onApplied === null || onApplied === void 0 ? void 0 : onApplied(next, entry.undo);
154
+ return next;
153
155
  },
154
- redo(doc) {
156
+ redo(doc, onApplied) {
155
157
  var entry = future.pop();
156
158
  if (!entry) return doc;
157
159
  past.push(entry);
158
- return (0, import_commands.applyCommand)(doc, entry.redo);
160
+ var next = (0, import_commands.applyCommand)(doc, entry.redo);
161
+ onApplied === null || onApplied === void 0 ? void 0 : onApplied(next, entry.redo);
162
+ return next;
159
163
  },
160
164
  canUndo: function canUndo() {
161
165
  return past.length > 0;
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","history_exports","__export","createHistory","module","exports","import_commands","require","movedIds","deltas","Object","keys","sort","sameIds","a","b","length","every","id","i","addDeltas","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","delta","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","id1","delta1","prior","x","y","options","arguments","_options_limit","_options_coalesceMs","_options_now","limit","coalesceMs","now","Date","past","future","coalesce","command","undo","at","top"],"sources":["../../../src/model/history.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","history_exports","__export","createHistory","module","exports","import_commands","require","movedIds","deltas","Object","keys","sort","sameIds","a","b","length","every","id","i","addDeltas","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","delta","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","id1","delta1","prior","x","y","options","arguments","_options_limit","_options_coalesceMs","_options_now","limit","coalesceMs","now","Date","past","future","coalesce","command","undo","at","top","t","redo"],"sources":["../../../src/model/history.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -26,6 +26,7 @@ __export(GraphToolbar_exports, {
26
26
  });
27
27
  module.exports = __toCommonJS(GraphToolbar_exports);
28
28
  var import_theme = require("@multiplatform.one/theme");
29
+ var import_forms = require("@multiplatform.one/forms");
29
30
  var import_tamagui = require("tamagui");
30
31
  var import_jsx_runtime = require("react/jsx-runtime");
31
32
  const modeLabels = {
@@ -56,45 +57,58 @@ function GraphToolbar({
56
57
  ...knobProps.gap,
57
58
  ...knobProps.panelPadding,
58
59
  ...knobProps.elevatedSurface,
60
+ flexWrap: "wrap",
61
+ maxWidth: "100%",
62
+ minWidth: 0,
63
+ flexShrink: 1,
59
64
  children: [modes.map(candidate => {
60
65
  const active = candidate === mode;
61
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
66
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
62
67
  "aria-label": `${modeLabels[candidate]} mode`,
63
- "aria-pressed": active,
68
+ ...(import_tamagui.isWeb ? {
69
+ "aria-pressed": active
70
+ } : {
71
+ "aria-selected": active
72
+ }),
73
+ selected: active,
64
74
  chromeless: !active,
65
75
  disabled,
66
76
  onPress: () => onModeChange(candidate),
67
77
  size: knobProps.sizeToken,
68
- ...(active ? knobProps.textWeight : {}),
78
+ ...(0, import_theme.pressTargetStyle)(),
69
79
  children: modeLabels[candidate]
70
80
  }, candidate);
71
- }), onFitView ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
81
+ }), onFitView ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
72
82
  "aria-label": "Fit the graph to the view",
73
83
  chromeless: true,
74
84
  disabled,
75
85
  onPress: onFitView,
76
86
  size: knobProps.sizeToken,
87
+ ...(0, import_theme.pressTargetStyle)(),
77
88
  children: "Fit"
78
- }) : null, onTidy ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
89
+ }) : null, onTidy ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
79
90
  "aria-label": "Tidy the graph",
80
91
  chromeless: true,
81
92
  disabled: disabled || busy,
82
93
  onPress: onTidy,
83
94
  size: knobProps.sizeToken,
95
+ ...(0, import_theme.pressTargetStyle)(),
84
96
  children: busy ? "Tidying\u2026" : "Tidy"
85
- }) : null, onUndo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
97
+ }) : null, onUndo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
86
98
  "aria-label": "Undo",
87
99
  chromeless: true,
88
100
  disabled: disabled || !canUndo,
89
101
  onPress: onUndo,
90
102
  size: knobProps.sizeToken,
103
+ ...(0, import_theme.pressTargetStyle)(),
91
104
  children: "Undo"
92
- }) : null, onRedo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
105
+ }) : null, onRedo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
93
106
  "aria-label": "Redo",
94
107
  chromeless: true,
95
108
  disabled: disabled || !canRedo,
96
109
  onPress: onRedo,
97
110
  size: knobProps.sizeToken,
111
+ ...(0, import_theme.pressTargetStyle)(),
98
112
  children: "Redo"
99
113
  }) : null]
100
114
  });
@@ -29,6 +29,7 @@ __export(GraphToolbar_exports, {
29
29
  module.exports = __toCommonJS(GraphToolbar_exports);
30
30
  var import_jsx_runtime = require("react/jsx-runtime");
31
31
  var import_theme = require("@multiplatform.one/theme");
32
+ var import_forms = require("@multiplatform.one/forms");
32
33
  var import_tamagui = require("tamagui");
33
34
  var modeLabels = {
34
35
  pan: "Pan",
@@ -59,47 +60,60 @@ function GraphToolbar(param) {
59
60
  ...knobProps.gap,
60
61
  ...knobProps.panelPadding,
61
62
  ...knobProps.elevatedSurface,
63
+ flexWrap: "wrap",
64
+ maxWidth: "100%",
65
+ minWidth: 0,
66
+ flexShrink: 1,
62
67
  children: [modes.map(function (candidate) {
63
68
  var active = candidate === mode;
64
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
69
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
65
70
  "aria-label": `${modeLabels[candidate]} mode`,
66
- "aria-pressed": active,
71
+ ...(import_tamagui.isWeb ? {
72
+ "aria-pressed": active
73
+ } : {
74
+ "aria-selected": active
75
+ }),
76
+ selected: active,
67
77
  chromeless: !active,
68
78
  disabled,
69
79
  onPress: function onPress() {
70
80
  return onModeChange(candidate);
71
81
  },
72
82
  size: knobProps.sizeToken,
73
- ...(active ? knobProps.textWeight : {}),
83
+ ...(0, import_theme.pressTargetStyle)(),
74
84
  children: modeLabels[candidate]
75
85
  }, candidate);
76
- }), onFitView ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
86
+ }), onFitView ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
77
87
  "aria-label": "Fit the graph to the view",
78
88
  chromeless: true,
79
89
  disabled,
80
90
  onPress: onFitView,
81
91
  size: knobProps.sizeToken,
92
+ ...(0, import_theme.pressTargetStyle)(),
82
93
  children: "Fit"
83
- }) : null, onTidy ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
94
+ }) : null, onTidy ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
84
95
  "aria-label": "Tidy the graph",
85
96
  chromeless: true,
86
97
  disabled: disabled || busy,
87
98
  onPress: onTidy,
88
99
  size: knobProps.sizeToken,
100
+ ...(0, import_theme.pressTargetStyle)(),
89
101
  children: busy ? "Tidying\u2026" : "Tidy"
90
- }) : null, onUndo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
102
+ }) : null, onUndo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
91
103
  "aria-label": "Undo",
92
104
  chromeless: true,
93
105
  disabled: disabled || !canUndo,
94
106
  onPress: onUndo,
95
107
  size: knobProps.sizeToken,
108
+ ...(0, import_theme.pressTargetStyle)(),
96
109
  children: "Undo"
97
- }) : null, onRedo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
110
+ }) : null, onRedo ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
98
111
  "aria-label": "Redo",
99
112
  chromeless: true,
100
113
  disabled: disabled || !canRedo,
101
114
  onPress: onRedo,
102
115
  size: knobProps.sizeToken,
116
+ ...(0, import_theme.pressTargetStyle)(),
103
117
  children: "Redo"
104
118
  }) : null]
105
119
  });
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","GraphToolbar_exports","__export","GraphToolbar","module","exports","import_jsx_runtime","require","import_theme","import_tamagui","modeLabels","pan","select","modes","param","busy","canRedo","canUndo","disabled","mode","onFitView","onModeChange","onRedo","onTidy","onUndo","knobProps","useResolvedKnobs","component","jsxs","XStack","role","alignItems","gap","panelPadding","elevatedSurface","children","map","candidate","active","jsx","Button","chromeless","onPress","size","sizeToken","textWeight"],"sources":["../../../src/native/GraphToolbar.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","GraphToolbar_exports","__export","GraphToolbar","module","exports","import_jsx_runtime","require","import_theme","import_forms","import_tamagui","modeLabels","pan","select","modes","param","busy","canRedo","canUndo","disabled","mode","onFitView","onModeChange","onRedo","onTidy","onUndo","knobProps","useResolvedKnobs","component","jsxs","XStack","role","alignItems","gap","panelPadding","elevatedSurface","flexWrap","maxWidth","minWidth","flexShrink","children","map","candidate","active","jsx","Button","isWeb","selected","chromeless","onPress","size","sizeToken","pressTargetStyle"],"sources":["../../../src/native/GraphToolbar.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -245,28 +245,20 @@ function useGraphController(options) {
245
245
  });
246
246
  return result;
247
247
  }, [coarsePointer, commit, readOnly, size]);
248
- const undo = (0, import_react.useCallback)(() => {
249
- const next = history.undo(documentRef.current);
250
- setHistoryVersion(version => version + 1);
248
+ const publishHistoryChange = (0, import_react.useCallback)((next, command) => {
251
249
  if (next === documentRef.current) return;
252
250
  if (!controlled) setOwnDocument(next);
253
251
  documentRef.current = next;
254
- onDocumentChange?.(next, {
255
- t: "batch",
256
- commands: []
257
- });
258
- }, [controlled, history, onDocumentChange]);
252
+ onDocumentChange?.(next, command);
253
+ }, [controlled, onDocumentChange]);
254
+ const undo = (0, import_react.useCallback)(() => {
255
+ history.undo(documentRef.current, publishHistoryChange);
256
+ setHistoryVersion(version => version + 1);
257
+ }, [history, publishHistoryChange]);
259
258
  const redo = (0, import_react.useCallback)(() => {
260
- const next = history.redo(documentRef.current);
259
+ history.redo(documentRef.current, publishHistoryChange);
261
260
  setHistoryVersion(version => version + 1);
262
- if (next === documentRef.current) return;
263
- if (!controlled) setOwnDocument(next);
264
- documentRef.current = next;
265
- onDocumentChange?.(next, {
266
- t: "batch",
267
- commands: []
268
- });
269
- }, [controlled, history, onDocumentChange]);
261
+ }, [history, publishHistoryChange]);
270
262
  return {
271
263
  document,
272
264
  nodes,
@@ -332,32 +332,24 @@ function useGraphController(options) {
332
332
  });
333
333
  return result;
334
334
  }, [coarsePointer, commit, readOnly, size]);
335
- var undo = (0, import_react.useCallback)(function () {
336
- var next = history.undo(documentRef.current);
337
- setHistoryVersion(function (version) {
338
- return version + 1;
339
- });
335
+ var publishHistoryChange = (0, import_react.useCallback)(function (next, command) {
340
336
  if (next === documentRef.current) return;
341
337
  if (!controlled) setOwnDocument(next);
342
338
  documentRef.current = next;
343
- onDocumentChange === null || onDocumentChange === void 0 ? void 0 : onDocumentChange(next, {
344
- t: "batch",
345
- commands: []
339
+ onDocumentChange === null || onDocumentChange === void 0 ? void 0 : onDocumentChange(next, command);
340
+ }, [controlled, onDocumentChange]);
341
+ var undo = (0, import_react.useCallback)(function () {
342
+ history.undo(documentRef.current, publishHistoryChange);
343
+ setHistoryVersion(function (version) {
344
+ return version + 1;
346
345
  });
347
- }, [controlled, history, onDocumentChange]);
346
+ }, [history, publishHistoryChange]);
348
347
  var redo = (0, import_react.useCallback)(function () {
349
- var next = history.redo(documentRef.current);
348
+ history.redo(documentRef.current, publishHistoryChange);
350
349
  setHistoryVersion(function (version) {
351
350
  return version + 1;
352
351
  });
353
- if (next === documentRef.current) return;
354
- if (!controlled) setOwnDocument(next);
355
- documentRef.current = next;
356
- onDocumentChange === null || onDocumentChange === void 0 ? void 0 : onDocumentChange(next, {
357
- t: "batch",
358
- commands: []
359
- });
360
- }, [controlled, history, onDocumentChange]);
352
+ }, [history, publishHistoryChange]);
361
353
  return {
362
354
  document,
363
355
  nodes,
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useGraphController_exports","__export","applyGraphCommand","defaultGraphNodeType","resetControllerWarnings","useGraphController","module","exports","import_react","require","import_model","import_layout","import_nodeMeasure","import_flowAdapter","import_xy","warned","Set","warnOnce","message","process","env","NODE_ENV","has","add","console","warn","clear","emptyDocument","version","nodes","edges","positionsOf","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","node","id","position","err","return","dragDeltas","document","live","deltas","to","dx","x","dy","y","options","schema","controlledDocument","defaultDocument","onDocumentChange","onConnectionRefused","readOnly","size","coarsePointer","nodeType","readMeasuredSizes","controlled","ownDocument","setOwnDocument","useState","_ref","history","useMemo","createHistory","historyVersion","setHistoryVersion","portSpacingPx","portSpacing","FINE_PORT_PITCH","mapping","setNodes","toFlowNodes","setEdges","toFlowEdges","nodesRef","useRef","current","documentRef","schemaRef","useEffect","previous","preserveFlowState","commit","useCallback","command","onNodesChange","changes","applyNodeChanges","layoutTouchedRef","change","type","dragEnded","some","change2","dragging","Object","keys","length","t","onEdgesChange","applyEdgeChanges","removed","filter","map","ids","connectionContext","connection","source","target","sourceHandle","targetHandle","port","isValidConnection","ctx","validateConnection","ok","onConnect","verdict","validateDrop","kind","defaultEdgeKind","spec","edge","data","defaultData"],"sources":["../../../src/react-flow/useGraphController.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useGraphController_exports","__export","applyGraphCommand","defaultGraphNodeType","resetControllerWarnings","useGraphController","module","exports","import_react","require","import_model","import_layout","import_nodeMeasure","import_flowAdapter","import_xy","warned","Set","warnOnce","message","process","env","NODE_ENV","has","add","console","warn","clear","emptyDocument","version","nodes","edges","positionsOf","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","node","id","position","err","return","dragDeltas","document","live","deltas","to","dx","x","dy","y","options","schema","controlledDocument","defaultDocument","onDocumentChange","onConnectionRefused","readOnly","size","coarsePointer","nodeType","readMeasuredSizes","controlled","ownDocument","setOwnDocument","useState","_ref","history","useMemo","createHistory","historyVersion","setHistoryVersion","portSpacingPx","portSpacing","FINE_PORT_PITCH","mapping","setNodes","toFlowNodes","setEdges","toFlowEdges","nodesRef","useRef","current","documentRef","schemaRef","useEffect","previous","preserveFlowState","commit","useCallback","command","onNodesChange","changes","applyNodeChanges","layoutTouchedRef","change","type","dragEnded","some","change2","dragging","Object","keys","length","t","onEdgesChange","applyEdgeChanges","removed","filter","map","ids","connectionContext","connection","source","target","sourceHandle","targetHandle","port","isValidConnection","ctx","validateConnection","ok","onConnect","verdict","validateDrop","kind","defaultEdgeKind","spec","edge","data","defaultData"],"sources":["../../../src/react-flow/useGraphController.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -70,17 +70,21 @@ function createHistory(options = {}) {
70
70
  if (past.length > limit) past = past.slice(past.length - limit);
71
71
  return next;
72
72
  },
73
- undo(doc) {
73
+ undo(doc, onApplied) {
74
74
  const entry = past.pop();
75
75
  if (!entry) return doc;
76
76
  future.push(entry);
77
- return applyCommand(doc, entry.undo);
77
+ const next = applyCommand(doc, entry.undo);
78
+ onApplied?.(next, entry.undo);
79
+ return next;
78
80
  },
79
- redo(doc) {
81
+ redo(doc, onApplied) {
80
82
  const entry = future.pop();
81
83
  if (!entry) return doc;
82
84
  past.push(entry);
83
- return applyCommand(doc, entry.redo);
85
+ const next = applyCommand(doc, entry.redo);
86
+ onApplied?.(next, entry.redo);
87
+ return next;
84
88
  },
85
89
  canUndo: () => past.length > 0,
86
90
  canRedo: () => future.length > 0,
@@ -1 +1 @@
1
- {"version":3,"names":["applyCommand","invertCommand","movedIds","deltas","Object","keys","sort","sameIds","a","b","length","every","id","i","addDeltas","out","delta","entries","prior","x","y","createHistory","options","limit","coalesceMs","now","Date","past","future","coalesce","command","undo","at","top","t","redo","commit","doc","next","merged","push","slice","entry","pop","canUndo","canRedo","depth","clear"],"sources":["../../../src/model/history.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["applyCommand","invertCommand","movedIds","deltas","Object","keys","sort","sameIds","a","b","length","every","id","i","addDeltas","out","delta","entries","prior","x","y","createHistory","options","limit","coalesceMs","now","Date","past","future","coalesce","command","undo","at","top","t","redo","commit","doc","next","merged","push","slice","onApplied","entry","pop","canUndo","canRedo","depth","clear"],"sources":["../../../src/model/history.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -116,17 +116,21 @@ function createHistory() {
116
116
  if (past.length > limit) past = past.slice(past.length - limit);
117
117
  return next;
118
118
  },
119
- undo(doc) {
119
+ undo(doc, onApplied) {
120
120
  var entry = past.pop();
121
121
  if (!entry) return doc;
122
122
  future.push(entry);
123
- return applyCommand(doc, entry.undo);
123
+ var next = applyCommand(doc, entry.undo);
124
+ onApplied === null || onApplied === void 0 ? void 0 : onApplied(next, entry.undo);
125
+ return next;
124
126
  },
125
- redo(doc) {
127
+ redo(doc, onApplied) {
126
128
  var entry = future.pop();
127
129
  if (!entry) return doc;
128
130
  past.push(entry);
129
- return applyCommand(doc, entry.redo);
131
+ var next = applyCommand(doc, entry.redo);
132
+ onApplied === null || onApplied === void 0 ? void 0 : onApplied(next, entry.redo);
133
+ return next;
130
134
  },
131
135
  canUndo: function canUndo() {
132
136
  return past.length > 0;
@@ -1 +1 @@
1
- {"version":3,"names":["applyCommand","invertCommand","movedIds","deltas","Object","keys","sort","sameIds","a","b","length","every","id","i","addDeltas","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","delta","value","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","id1","delta1","prior","x","y","createHistory","options","arguments","_options_limit","_options_coalesceMs","_options_now","limit","coalesceMs","now","Date","past","future","coalesce","command","undo","at","top","t","redo"],"sources":["../../../src/model/history.ts"],"sourcesContent":[null],"mappings":"AAcA,SAASA,YAAA,EAAcC,aAAA,QAAqB;AA8B5C,SAASC,SAASC,MAAA,EAAqD;EACrE,OAAOC,MAAA,CAAOC,IAAA,CAAKF,MAAM,EAAEG,IAAA,CAAK;AAClC;AAEA,SAASC,QAAQC,CAAA,EAAsBC,CAAA,EAA+B;EACpE,OAAOD,CAAA,CAAEE,MAAA,KAAWD,CAAA,CAAEC,MAAA,IAAUF,CAAA,CAAEG,KAAA,CAAM,UAAKC,EAAM,EAAAC,CAAA;IACrD,OAAAD,EAAA,KAAAH,CAAA,CAAAI,CAAA;EAEA;AAIE;AACA,SAAAC,SAAgBA,CAAAN,CAAA,EAAAC,CAAK;EACrB,IAAAM,GAAA,IAAW,CAAC;EACV,IAAAC,yBAAoB;IAAAC,iBAAA;IAAAC,cAAA;EACpB;IACF,SAAAC,SAAA,GAAAf,MAAA,CAAAgB,OAAA,CAAAZ,CAAA,EAAAa,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAP,yBAAA,IAAAO,KAAA,GAAAJ,SAAA,CAAAK,IAAA,IAAAC,IAAA,GAAAT,yBAAA;MACA,IAAO,CAAAJ,EAAA,EAAAc,KAAA,IAAAH,KAAA,CAAAI,KAAA;MACTZ,GAAA,CAAAH,EAAA;QAEO,GAASc;MAGd;IACA;EACA,SAAME,GAAM;IAEZX,iBAAkC;IAClCC,cAAoC,GAAAU,GAAA;EAUpC,UAAS;IAKP;MACA,IAAK,CAAAZ,yBAAY,IAAAG,SAAA,CAAAU,MAAA;QAIbV,SAAO,CAAAU,MAAS,EAAG;MAGvB;IAGA,UAAI;MACF,IAAAZ,iBAAO;QACT,MAAAC,cAAA;MACA;IACA;EACA;EAAO,IAAAY,0BAAA;IAAAC,kBAAA;IAAAC,eAAA;EAAA;IAAA,KAGL,IAAMC,UAAK,GAAA7B,MAAa,CAAAgB,OAAQ,CAAAX,CAAA,EAAAY,MAAU,CAAAC,QAAS,KAAAY,MAAQ,IAAQJ,0BAAQ,IAAAI,MAAA,GAAAD,UAAA,CAAAT,IAAA,IAAAC,IAAA,GAAAK,0BAAA;MAC3E,KAAAK,GAAQ,EAAAC,MAAG,IAAAF,MAAa,CAAAP,KAAQ;MAChC,IAAAU,KAAA,GAAAtB,GAAA,CAAAoB,GAAA;MACFpB,GAAA,CAAAoB,GAAA,IAAAE,KAAA;QACFC,CAAA,EAAAD,KAAA,CAAAC,CAAA,GAAAF,MAAA,CAAAE,CAAA;QAEAC,CAAO,EAAAF,KAAA,CAAAE,CAAA,GAAAH,MAAA,CAAAG;MACL;QACE,GAAAH;MACA;IACA;EACA,SAAAR,GAAM;IACNG,kBAAY;IACVC,eAAU,GAAAJ,GAAA;EACV;IAAO,IACT;MACA,KAAKE,0BAAsB,IAAMG,UAAI,CAAAJ,MAAA;QACrCI,UAAU,CAAAJ,MAAA;MACV;IACA,UAAO;MACT,IAAAE,kBAAA;QAEA,MAAUC,eAAA;MACR;IACA;EACA;EACA,OAAAjB,GAAA;AAAmC;AACrC,SAEKyB,aAAKA,CAAA;EACR,IAAAC,OAAM,GAAAC,SAAQ,CAAAhC,MAAW,QAAAgC,SAAA,iBAAAA,SAAA;EACzB,IAAAC,cAAY,EAAAC,mBAAO,EAAAC,YAAA;EACnB,IAAAC,KAAK,IAAAH,cAAU,GAAAF,OAAA,CAAAK,KAAA,cAAAH,cAAA,cAAAA,cAAA;EACf,IAAAI,UAAO,IAAAH,mBAAwB,GAAIH,OAAA,CAAAM,UAAA,cAAAH,mBAAA,cAAAA,mBAAA;EAAA,IACrCI,GAAA,IAAAH,YAAA,GAAAJ,OAAA,CAAAO,GAAA,cAAAH,YAAA,cAAAA,YAAA;IAEA,OAAAI,IAAS,CAAAD,GAAM;EAAc;EACE,IAC/BE,IAAA,GAAO;EAAW,IAClBC,MAAA,GAAS;EAAM,SACfC,QAAQA,CAAAC,OAAA,EAAAC,IAAA,EAAAC,EAAA;IACN,IAAAC,GAAA,GAAQN,IAAA,CAAAA,IAAA,CAAAxC,MAAA;IACR,KAAA8C,GAAA,SAAU;IACZ,IAAAL,MAAA,CAAAzC,MAAA;IACF,IAAA6C,EAAA,GAAAC,GAAA,CAAAD,EAAA,GAAAR,UAAA;IACF,IAAAM,OAAA,CAAAI,CAAA,oBAAAD,GAAA,CAAAE,IAAA,CAAAD,CAAA,oBAAAD,GAAA,CAAAF,IAAA,CAAAG,CAAA","ignoreList":[]}
1
+ {"version":3,"names":["applyCommand","invertCommand","movedIds","deltas","Object","keys","sort","sameIds","a","b","length","every","id","i","addDeltas","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","Symbol","iterator","_step","next","done","delta","value","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","id1","delta1","prior","x","y","createHistory","options","arguments","_options_limit","_options_coalesceMs","_options_now","limit","coalesceMs","now","Date","past","future","coalesce","command","undo","at","top","t","redo"],"sources":["../../../src/model/history.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
- import { useResolvedKnobs } from "@multiplatform.one/theme";
2
- import { Button, XStack } from "tamagui";
1
+ import { pressTargetStyle, useResolvedKnobs } from "@multiplatform.one/theme";
2
+ import { Button } from "@multiplatform.one/forms";
3
+ import { XStack, isWeb } from "tamagui";
3
4
  import { jsx, jsxs } from "react/jsx-runtime";
4
5
  const modeLabels = {
5
6
  pan: "Pan",
@@ -29,16 +30,25 @@ function GraphToolbar({
29
30
  ...knobProps.gap,
30
31
  ...knobProps.panelPadding,
31
32
  ...knobProps.elevatedSurface,
33
+ flexWrap: "wrap",
34
+ maxWidth: "100%",
35
+ minWidth: 0,
36
+ flexShrink: 1,
32
37
  children: [modes.map(candidate => {
33
38
  const active = candidate === mode;
34
39
  return /* @__PURE__ */jsx(Button, {
35
40
  "aria-label": `${modeLabels[candidate]} mode`,
36
- "aria-pressed": active,
41
+ ...(isWeb ? {
42
+ "aria-pressed": active
43
+ } : {
44
+ "aria-selected": active
45
+ }),
46
+ selected: active,
37
47
  chromeless: !active,
38
48
  disabled,
39
49
  onPress: () => onModeChange(candidate),
40
50
  size: knobProps.sizeToken,
41
- ...(active ? knobProps.textWeight : {}),
51
+ ...pressTargetStyle(),
42
52
  children: modeLabels[candidate]
43
53
  }, candidate);
44
54
  }), onFitView ? /* @__PURE__ */jsx(Button, {
@@ -47,6 +57,7 @@ function GraphToolbar({
47
57
  disabled,
48
58
  onPress: onFitView,
49
59
  size: knobProps.sizeToken,
60
+ ...pressTargetStyle(),
50
61
  children: "Fit"
51
62
  }) : null, onTidy ? /* @__PURE__ */jsx(Button, {
52
63
  "aria-label": "Tidy the graph",
@@ -54,6 +65,7 @@ function GraphToolbar({
54
65
  disabled: disabled || busy,
55
66
  onPress: onTidy,
56
67
  size: knobProps.sizeToken,
68
+ ...pressTargetStyle(),
57
69
  children: busy ? "Tidying\u2026" : "Tidy"
58
70
  }) : null, onUndo ? /* @__PURE__ */jsx(Button, {
59
71
  "aria-label": "Undo",
@@ -61,6 +73,7 @@ function GraphToolbar({
61
73
  disabled: disabled || !canUndo,
62
74
  onPress: onUndo,
63
75
  size: knobProps.sizeToken,
76
+ ...pressTargetStyle(),
64
77
  children: "Undo"
65
78
  }) : null, onRedo ? /* @__PURE__ */jsx(Button, {
66
79
  "aria-label": "Redo",
@@ -68,6 +81,7 @@ function GraphToolbar({
68
81
  disabled: disabled || !canRedo,
69
82
  onPress: onRedo,
70
83
  size: knobProps.sizeToken,
84
+ ...pressTargetStyle(),
71
85
  children: "Redo"
72
86
  }) : null]
73
87
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useResolvedKnobs","Button","XStack","jsx","jsxs","modeLabels","pan","select","modes","GraphToolbar","busy","canRedo","canUndo","disabled","mode","onFitView","onModeChange","onRedo","onTidy","onUndo","knobProps","component","role","alignItems","gap","panelPadding","elevatedSurface","children","map","candidate","active","chromeless","onPress","size","sizeToken","textWeight"],"sources":["../../../src/native/GraphToolbar.tsx"],"sourcesContent":[null],"mappings":"AA+CA,SAASA,gBAAA,QAAwB;AACjC,SAASC,MAAA,EAAQC,MAAA,QAAc;AAoD3B,SAUMC,GAAA,EAVNC,IAAA;AAtBJ,MAAMC,UAAA,GAAmD;EACvDC,GAAA,EAAK;EACLC,MAAA,EAAQ;AACV;AAEA,MAAMC,KAAA,GAAyC,CAAC,OAAO,QAAQ;AAExD,SAASC,aAAa;EAC3BC,IAAA,GAAO;EACPC,OAAA,GAAU;EACVC,OAAA,GAAU;EACVC,QAAA;EACAC,IAAA;EACAC,SAAA;EACAC,YAAA;EACAC,MAAA;EACAC,MAAA;EACAC;AACF,GAAsB;EACpB,MAAM;IAAEC;EAAU,IAAIpB,gBAAA,CAAiB;IAAEqB,SAAA,EAAW;EAAe,CAAC;EAEpE,OACE,eAAAjB,IAAA,CAACF,MAAA;IACCoB,IAAA,EAAK;IACLC,UAAA,EAAW;IACV,GAAGH,SAAA,CAAUI,GAAA;IACb,GAAGJ,SAAA,CAAUK,YAAA;IACb,GAAGL,SAAA,CAAUM,eAAA;IAEbC,QAAA,GAAAnB,KAAA,CAAMoB,GAAA,CAAKC,SAAA,IAAc;MACxB,MAAMC,MAAA,GAASD,SAAA,KAAcf,IAAA;MAC7B,OACE,eAAAX,GAAA,CAACF,MAAA;QAEC,cAAY,GAAGI,UAAA,CAAWwB,SAAS,CAAC;QACpC,gBAAcC,MAAA;QACdC,UAAA,EAAY,CAACD,MAAA;QACbjB,QAAA;QACAmB,OAAA,EAASA,CAAA,KAAMhB,YAAA,CAAaa,SAAS;QACrCI,IAAA,EAAMb,SAAA,CAAUc,SAAA;QACf,IAAIJ,MAAA,GAASV,SAAA,CAAUe,UAAA,GAAa,CAAC;QAErCR,QAAA,EAAAtB,UAAA,CAAWwB,SAAS;MAAA,GAThBA,SAUP;IAEJ,CAAC,GACAd,SAAA,GACC,eAAAZ,GAAA,CAACF,MAAA;MACC,cAAW;MACX8B,UAAA,EAAU;MACVlB,QAAA;MACAmB,OAAA,EAASjB,SAAA;MACTkB,IAAA,EAAMb,SAAA,CAAUc,SAAA;MACjBP,QAAA;IAAA,CAED,IACE,MACHT,MAAA,GACC,eAAAf,GAAA,CAACF,MAAA;MACC,cAAW;MACX8B,UAAA,EAAU;MACVlB,QAAA,EAAUA,QAAA,IAAYH,IAAA;MACtBsB,OAAA,EAASd,MAAA;MACTe,IAAA,EAAMb,SAAA,CAAUc,SAAA;MAEfP,QAAA,EAAAjB,IAAA,GAAO,kBAAa;IAAA,CACvB,IACE,MACHS,MAAA,GACC,eAAAhB,GAAA,CAACF,MAAA;MACC,cAAW;MACX8B,UAAA,EAAU;MACVlB,QAAA,EAAUA,QAAA,IAAY,CAACD,OAAA;MACvBoB,OAAA,EAASb,MAAA;MACTc,IAAA,EAAMb,SAAA,CAAUc,SAAA;MACjBP,QAAA;IAAA,CAED,IACE,MACHV,MAAA,GACC,eAAAd,GAAA,CAACF,MAAA;MACC,cAAW;MACX8B,UAAA,EAAU;MACVlB,QAAA,EAAUA,QAAA,IAAY,CAACF,OAAA;MACvBqB,OAAA,EAASf,MAAA;MACTgB,IAAA,EAAMb,SAAA,CAAUc,SAAA;MACjBP,QAAA;IAAA,CAED,IACE;EAAA,CACN;AAEJ","ignoreList":[]}
1
+ {"version":3,"names":["pressTargetStyle","useResolvedKnobs","Button","XStack","isWeb","jsx","jsxs","modeLabels","pan","select","modes","GraphToolbar","busy","canRedo","canUndo","disabled","mode","onFitView","onModeChange","onRedo","onTidy","onUndo","knobProps","component","role","alignItems","gap","panelPadding","elevatedSurface","flexWrap","maxWidth","minWidth","flexShrink","children","map","candidate","active","selected","chromeless","onPress","size","sizeToken"],"sources":["../../../src/native/GraphToolbar.tsx"],"sourcesContent":[null],"mappings":"AAyCA,SAASA,gBAAA,EAAkBC,gBAAA,QAAwB;AACnD,SAASC,MAAA,QAAc;AACvB,SAASC,MAAA,EAAQC,KAAA,QAAa;AAoD1B,SAcMC,GAAA,EAdNC,IAAA;AAtBJ,MAAMC,UAAA,GAAmD;EACvDC,GAAA,EAAK;EACLC,MAAA,EAAQ;AACV;AAEA,MAAMC,KAAA,GAAyC,CAAC,OAAO,QAAQ;AAExD,SAASC,aAAa;EAC3BC,IAAA,GAAO;EACPC,OAAA,GAAU;EACVC,OAAA,GAAU;EACVC,QAAA;EACAC,IAAA;EACAC,SAAA;EACAC,YAAA;EACAC,MAAA;EACAC,MAAA;EACAC;AACF,GAAsB;EACpB,MAAM;IAAEC;EAAU,IAAIrB,gBAAA,CAAiB;IAAEsB,SAAA,EAAW;EAAe,CAAC;EAEpE,OACE,eAAAjB,IAAA,CAACH,MAAA;IACCqB,IAAA,EAAK;IACLC,UAAA,EAAW;IACV,GAAGH,SAAA,CAAUI,GAAA;IACb,GAAGJ,SAAA,CAAUK,YAAA;IACb,GAAGL,SAAA,CAAUM,eAAA;IACdC,QAAA,EAAS;IACTC,QAAA,EAAS;IACTC,QAAA,EAAU;IACVC,UAAA,EAAY;IAEXC,QAAA,GAAAvB,KAAA,CAAMwB,GAAA,CAAKC,SAAA,IAAc;MACxB,MAAMC,MAAA,GAASD,SAAA,KAAcnB,IAAA;MAC7B,OACE,eAAAX,GAAA,CAACH,MAAA;QAEC,cAAY,GAAGK,UAAA,CAAW4B,SAAS,CAAC;QACnC,IAAI/B,KAAA,GAAQ;UAAE,gBAAgBgC;QAAO,IAAI;UAAE,iBAAiBA;QAAO;QACpEC,QAAA,EAAUD,MAAA;QACVE,UAAA,EAAY,CAACF,MAAA;QACbrB,QAAA;QACAwB,OAAA,EAASA,CAAA,KAAMrB,YAAA,CAAaiB,SAAS;QACrCK,IAAA,EAAMlB,SAAA,CAAUmB,SAAA;QACf,GAAGzC,gBAAA,CAAiB;QAEpBiC,QAAA,EAAA1B,UAAA,CAAW4B,SAAS;MAAA,GAVhBA,SAWP;IAEJ,CAAC,GACAlB,SAAA,GACC,eAAAZ,GAAA,CAACH,MAAA;MACC,cAAW;MACXoC,UAAA,EAAU;MACVvB,QAAA;MACAwB,OAAA,EAAStB,SAAA;MACTuB,IAAA,EAAMlB,SAAA,CAAUmB,SAAA;MACf,GAAGzC,gBAAA,CAAiB;MACtBiC,QAAA;IAAA,CAED,IACE,MACHb,MAAA,GACC,eAAAf,GAAA,CAACH,MAAA;MACC,cAAW;MACXoC,UAAA,EAAU;MACVvB,QAAA,EAAUA,QAAA,IAAYH,IAAA;MACtB2B,OAAA,EAASnB,MAAA;MACToB,IAAA,EAAMlB,SAAA,CAAUmB,SAAA;MACf,GAAGzC,gBAAA,CAAiB;MAEpBiC,QAAA,EAAArB,IAAA,GAAO,kBAAa;IAAA,CACvB,IACE,MACHS,MAAA,GACC,eAAAhB,GAAA,CAACH,MAAA;MACC,cAAW;MACXoC,UAAA,EAAU;MACVvB,QAAA,EAAUA,QAAA,IAAY,CAACD,OAAA;MACvByB,OAAA,EAASlB,MAAA;MACTmB,IAAA,EAAMlB,SAAA,CAAUmB,SAAA;MACf,GAAGzC,gBAAA,CAAiB;MACtBiC,QAAA;IAAA,CAED,IACE,MACHd,MAAA,GACC,eAAAd,GAAA,CAACH,MAAA;MACC,cAAW;MACXoC,UAAA,EAAU;MACVvB,QAAA,EAAUA,QAAA,IAAY,CAACF,OAAA;MACvB0B,OAAA,EAASpB,MAAA;MACTqB,IAAA,EAAMlB,SAAA,CAAUmB,SAAA;MACf,GAAGzC,gBAAA,CAAiB;MACtBiC,QAAA;IAAA,CAED,IACE;EAAA,CACN;AAEJ","ignoreList":[]}