@multiplatform.one/node-graph 7.7.6 → 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 (119) 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/NodeGraph.native.js.map +1 -1
  11. package/dist/esm/bench/frameSampler.native.js.map +1 -1
  12. package/dist/esm/bench/generateGraph.native.js.map +1 -1
  13. package/dist/esm/diagnostics/GraphDiagnostics.native.js.map +1 -1
  14. package/dist/esm/diagnostics/LiveGraphDiagnostics.native.js.map +1 -1
  15. package/dist/esm/diagnostics/fromWire.native.js.map +1 -1
  16. package/dist/esm/diagnostics/lastError.native.js.map +1 -1
  17. package/dist/esm/diagnostics/types.native.js.map +1 -1
  18. package/dist/esm/diagnostics/useGraphDiagnostics.native.js.map +1 -1
  19. package/dist/esm/dom/GraphDomLayout.native.js.map +1 -1
  20. package/dist/esm/dom/boot.native.js.map +1 -1
  21. package/dist/esm/dom/wire.native.js.map +1 -1
  22. package/dist/esm/edges/GraphEdge.native.js.map +1 -1
  23. package/dist/esm/edges/edgeKinds.native.js.map +1 -1
  24. package/dist/esm/edges/edgeStyle.native.js.map +1 -1
  25. package/dist/esm/index.native.js.map +1 -1
  26. package/dist/esm/interaction/lassoIntercept.native.js.map +1 -1
  27. package/dist/esm/interaction/legalTargets.native.js.map +1 -1
  28. package/dist/esm/interaction/snapAlignment.native.js.map +1 -1
  29. package/dist/esm/interaction/snapChanges.native.js.map +1 -1
  30. package/dist/esm/interaction/spatialHash.native.js.map +1 -1
  31. package/dist/esm/interaction/useLassoSelect.native.js.map +1 -1
  32. package/dist/esm/knobs/KnobEnvelopeProvider.native.js.map +1 -1
  33. package/dist/esm/knobs/envelope.native.js.map +1 -1
  34. package/dist/esm/knobs/graphKnobs.native.js.map +1 -1
  35. package/dist/esm/knobs/useKnobEnvelope.native.js.map +1 -1
  36. package/dist/esm/layout/dagre.native.js.map +1 -1
  37. package/dist/esm/layout/layout.native.js.map +1 -1
  38. package/dist/esm/layout/runner.native.js.map +1 -1
  39. package/dist/esm/layout/structuredCloneShim.native.js.map +1 -1
  40. package/dist/esm/layout/types.native.js.map +1 -1
  41. package/dist/esm/layout/worker.entry.native.js.map +1 -1
  42. package/dist/esm/layout/worker.generated.native.js.map +1 -1
  43. package/dist/esm/model/commands.native.js.map +1 -1
  44. package/dist/esm/model/connect.native.js.map +1 -1
  45. package/dist/esm/model/document.native.js.map +1 -1
  46. package/dist/esm/model/history.mjs +8 -4
  47. package/dist/esm/model/history.mjs.map +1 -1
  48. package/dist/esm/model/history.native.js +8 -4
  49. package/dist/esm/model/history.native.js.map +1 -1
  50. package/dist/esm/model/index.native.js.map +1 -1
  51. package/dist/esm/model/schema.native.js.map +1 -1
  52. package/dist/esm/model/select.native.js.map +1 -1
  53. package/dist/esm/model/serialize.native.js.map +1 -1
  54. package/dist/esm/native/DomOnlyStory.native.js.map +1 -1
  55. package/dist/esm/native/GraphToolbar.mjs +18 -4
  56. package/dist/esm/native/GraphToolbar.mjs.map +1 -1
  57. package/dist/esm/native/GraphToolbar.native.js +18 -4
  58. package/dist/esm/native/GraphToolbar.native.js.map +1 -1
  59. package/dist/esm/native/domEntryRegistry.native.js.map +1 -1
  60. package/dist/esm/native/graphChildren.native.js.map +1 -1
  61. package/dist/esm/nodes/GraphNode.native.js.map +1 -1
  62. package/dist/esm/nodes/GraphPort.native.js.map +1 -1
  63. package/dist/esm/nodes/handleGeometry.native.js.map +1 -1
  64. package/dist/esm/nodes/lod.native.js.map +1 -1
  65. package/dist/esm/nodes/nodeMeasure.native.js.map +1 -1
  66. package/dist/esm/nodes/overviewNode.native.js.map +1 -1
  67. package/dist/esm/react-flow/ConnectionPuck.native.js.map +1 -1
  68. package/dist/esm/react-flow/GraphActions.native.js.map +1 -1
  69. package/dist/esm/react-flow/GraphCommandBridge.native.js.map +1 -1
  70. package/dist/esm/react-flow/GraphNodeHost.native.js.map +1 -1
  71. package/dist/esm/react-flow/GraphPaintProbe.native.js.map +1 -1
  72. package/dist/esm/react-flow/GraphZoomVar.native.js.map +1 -1
  73. package/dist/esm/react-flow/LassoOverlay.native.js.map +1 -1
  74. package/dist/esm/react-flow/NodeGraphWeb.native.js.map +1 -1
  75. package/dist/esm/react-flow/SnapGuides.native.js.map +1 -1
  76. package/dist/esm/react-flow/demoControlBody.native.js.map +1 -1
  77. package/dist/esm/react-flow/demoNodeBody.native.js.map +1 -1
  78. package/dist/esm/react-flow/fixtures.native.js.map +1 -1
  79. package/dist/esm/react-flow/flowAdapter.native.js.map +1 -1
  80. package/dist/esm/react-flow/graphHandle.native.js.map +1 -1
  81. package/dist/esm/react-flow/nodeCensus.native.js.map +1 -1
  82. package/dist/esm/react-flow/useGraphController.mjs +9 -17
  83. package/dist/esm/react-flow/useGraphController.mjs.map +1 -1
  84. package/dist/esm/react-flow/useGraphController.native.js +10 -18
  85. package/dist/esm/react-flow/useGraphController.native.js.map +1 -1
  86. package/dist/esm/react-flow/xy.native.js.map +1 -1
  87. package/dist/esm/theme/GraphFaces.native.js.map +1 -1
  88. package/dist/esm/theme/GraphVarsStyle.native.js.map +1 -1
  89. package/dist/esm/theme/faces.generated.native.js.map +1 -1
  90. package/dist/esm/theme/faces.native.js.map +1 -1
  91. package/dist/esm/theme/graphVars.native.js.map +1 -1
  92. package/dist/jsx/model/history.mjs +8 -4
  93. package/dist/jsx/model/history.mjs.map +1 -1
  94. package/dist/jsx/model/history.native.js +8 -4
  95. package/dist/jsx/model/history.native.js.map +1 -1
  96. package/dist/jsx/native/GraphToolbar.mjs +18 -4
  97. package/dist/jsx/native/GraphToolbar.mjs.map +1 -1
  98. package/dist/jsx/native/GraphToolbar.native.js +21 -7
  99. package/dist/jsx/native/GraphToolbar.native.js.map +1 -1
  100. package/dist/jsx/react-flow/useGraphController.mjs +9 -17
  101. package/dist/jsx/react-flow/useGraphController.mjs.map +1 -1
  102. package/dist/jsx/react-flow/useGraphController.native.js +10 -18
  103. package/dist/jsx/react-flow/useGraphController.native.js.map +1 -1
  104. package/package.json +7 -6
  105. package/src/NodeGraph.historyBridge.spec.tsx +87 -0
  106. package/src/bench/Perf200.stories.tsx +43 -11
  107. package/src/interaction/Lasso.stories.tsx +22 -7
  108. package/src/layout/AutoLayout.stories.spec.tsx +26 -0
  109. package/src/layout/AutoLayout.stories.tsx +22 -12
  110. package/src/model/history.spec.ts +19 -0
  111. package/src/model/history.ts +17 -6
  112. package/src/native/GraphToolbar.spec.tsx +53 -0
  113. package/src/native/GraphToolbar.tsx +18 -14
  114. package/src/react-flow/useGraphController.ts +14 -12
  115. package/types/model/history.d.ts +3 -2
  116. package/types/model/history.d.ts.map +1 -1
  117. package/types/native/GraphToolbar.d.ts +4 -10
  118. package/types/native/GraphToolbar.d.ts.map +1 -1
  119. package/types/react-flow/useGraphController.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["noop","noop2","t","commands","insert","list","items","at","length","copy","splice","Math","max","applyCommand","doc","command","nodes","gone","Set","ids","filter","node","has","id","edges","edge","source","target","deltas","map","delta","position","x","y","positions","data","gone1","reduce","negate","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","value","err","return","invertCommand","node2","restores","forEach","push","edge2","before","node1","find","candidate","restores1","inverses","current","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","step","reverse"],"sources":["commands.native.js"],"sourcesContent":["var noop = function noop2() {\n return {\n t: \"batch\",\n commands: []\n };\n};\nfunction insert(list, items, at) {\n if (at === void 0 || at >= list.length) return [\n ...list,\n ...items\n ];\n var copy = [\n ...list\n ];\n copy.splice(Math.max(0, at), 0, ...items);\n return copy;\n}\nfunction applyCommand(doc, command) {\n switch (command.t) {\n case \"addNodes\":\n return {\n ...doc,\n nodes: insert(doc.nodes, command.nodes, command.at)\n };\n case \"removeNodes\": {\n var gone = new Set(command.ids);\n return {\n ...doc,\n nodes: doc.nodes.filter(function(node) {\n return !gone.has(node.id);\n }),\n // An edge whose end has been deleted is not a partial graph, it is a\n // broken one, so a node takes its edges with it. `invertCommand`\n // restores both, in their original places.\n edges: doc.edges.filter(function(edge) {\n return !gone.has(edge.source.node) && !gone.has(edge.target.node);\n })\n };\n }\n case \"moveNodes\": {\n var { deltas } = command;\n return {\n ...doc,\n nodes: doc.nodes.map(function(node) {\n var delta = deltas[node.id];\n return delta ? {\n ...node,\n position: {\n x: node.position.x + delta.x,\n y: node.position.y + delta.y\n }\n } : node;\n })\n };\n }\n case \"setPositions\": {\n var { positions } = command;\n return {\n ...doc,\n nodes: doc.nodes.map(function(node) {\n var position = positions[node.id];\n return position ? {\n ...node,\n position\n } : node;\n })\n };\n }\n case \"setNodeData\":\n return {\n ...doc,\n nodes: doc.nodes.map(function(node) {\n return node.id === command.id ? {\n ...node,\n data: command.data\n } : node;\n })\n };\n case \"addEdges\":\n return {\n ...doc,\n edges: insert(doc.edges, command.edges, command.at)\n };\n case \"removeEdges\": {\n var gone1 = new Set(command.ids);\n return {\n ...doc,\n edges: doc.edges.filter(function(edge) {\n return !gone1.has(edge.id);\n })\n };\n }\n case \"setEdgeData\":\n return {\n ...doc,\n edges: doc.edges.map(function(edge) {\n return edge.id === command.id ? {\n ...edge,\n data: command.data\n } : edge;\n })\n };\n case \"batch\":\n return command.commands.reduce(applyCommand, doc);\n }\n}\nfunction negate(deltas) {\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(deltas)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [id, delta] = _step.value;\n out[id] = {\n x: 0 - delta.x,\n y: 0 - delta.y\n };\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return out;\n}\nfunction invertCommand(doc, command) {\n switch (command.t) {\n case \"addNodes\":\n return {\n t: \"removeNodes\",\n ids: command.nodes.map(function(node2) {\n return node2.id;\n })\n };\n case \"removeNodes\": {\n var gone = new Set(command.ids);\n var restores = [];\n doc.nodes.forEach(function(node2, at) {\n if (gone.has(node2.id)) restores.push({\n t: \"addNodes\",\n nodes: [\n node2\n ],\n at\n });\n });\n doc.edges.forEach(function(edge2, at) {\n if (gone.has(edge2.source.node) || gone.has(edge2.target.node)) {\n restores.push({\n t: \"addEdges\",\n edges: [\n edge2\n ],\n at\n });\n }\n });\n return {\n t: \"batch\",\n commands: restores\n };\n }\n case \"moveNodes\":\n return {\n t: \"moveNodes\",\n deltas: negate(command.deltas)\n };\n case \"setPositions\": {\n var before = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = doc.nodes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var node = _step.value;\n if (node.id in command.positions) before[node.id] = node.position;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return {\n t: \"setPositions\",\n positions: before\n };\n }\n case \"setNodeData\": {\n var node1 = doc.nodes.find(function(candidate) {\n return candidate.id === command.id;\n });\n return node1 ? {\n t: \"setNodeData\",\n id: command.id,\n data: node1.data\n } : noop();\n }\n case \"addEdges\":\n return {\n t: \"removeEdges\",\n ids: command.edges.map(function(edge2) {\n return edge2.id;\n })\n };\n case \"removeEdges\": {\n var gone1 = new Set(command.ids);\n var restores1 = [];\n doc.edges.forEach(function(edge2, at) {\n if (gone1.has(edge2.id)) restores1.push({\n t: \"addEdges\",\n edges: [\n edge2\n ],\n at\n });\n });\n return {\n t: \"batch\",\n commands: restores1\n };\n }\n case \"setEdgeData\": {\n var edge = doc.edges.find(function(candidate) {\n return candidate.id === command.id;\n });\n return edge ? {\n t: \"setEdgeData\",\n id: command.id,\n data: edge.data\n } : noop();\n }\n case \"batch\": {\n var inverses = [];\n var current = doc;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = command.commands[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var step = _step1.value;\n inverses.push(invertCommand(current, step));\n current = applyCommand(current, step);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n return {\n t: \"batch\",\n commands: inverses.reverse()\n };\n }\n }\n}\nexport {\n applyCommand,\n invertCommand\n};\n//# sourceMappingURL=commands.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["noop","noop2","t","commands","insert","list","items","at","length","copy","splice","Math","max","applyCommand","doc","command","nodes","gone","Set","ids","filter","node","has","id","edges","edge","source","target","deltas","map","delta","position","x","y","positions","data","gone1","reduce","negate","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","value","err","return"],"sources":["../../../src/model/commands.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["portArity","resolvePorts","defineConnectionRule","check","Object","assign","tickSafe","pass","ok","refuse","code","message","lookup","ctx","ref","end","node","document","nodes","find","candidate","id","problem","JSON","stringify","port","schema","isResolved","value","refuseDirection","source","target","direction","refuseSelfLoop","refusePortArity","taken","edges","some","edge","taken1","refuseDuplicate","refuseDataTypeMismatch","compatible","arguments","length","from","to","dataType","refuseCycle","out","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","list","get","push","set","err","return","seen","Set","stack","current","pop","has","add","defaultRules","defaultDropRules","validateConnection","rules","rule","verdict","validateDrop","dropRules","cheap"],"sources":["connect.native.js"],"sourcesContent":["import { portArity, resolvePorts } from \"./schema\";\nfunction defineConnectionRule(check) {\n return Object.assign(check, {\n tickSafe: true\n });\n}\nvar pass = {\n ok: true\n};\nfunction refuse(code, message) {\n return {\n ok: false,\n code,\n message\n };\n}\nfunction lookup(ctx, ref, end) {\n var node = ctx.document.nodes.find(function(candidate) {\n return candidate.id === ref.node;\n });\n if (!node) {\n return {\n problem: refuse(\"unknown-node\", `the ${end} names node ${JSON.stringify(ref.node)}, which is not in this document`)\n };\n }\n var port = resolvePorts(ctx.schema, node).find(function(candidate) {\n return candidate.id === ref.port;\n });\n if (!port) {\n return {\n problem: refuse(\"unknown-port\", `node ${JSON.stringify(ref.node)} has no port ${JSON.stringify(ref.port)}`)\n };\n }\n return {\n port\n };\n}\nfunction isResolved(value) {\n return \"port\" in value;\n}\nvar refuseDirection = defineConnectionRule(function(ctx) {\n var source = lookup(ctx, ctx.source, \"source\");\n if (!isResolved(source)) return source.problem;\n var target = lookup(ctx, ctx.target, \"target\");\n if (!isResolved(target)) return target.problem;\n if (source.port.direction !== \"out\") {\n return refuse(\"wrong-direction\", `${ctx.source.port} is an input; a connection starts at an output`);\n }\n if (target.port.direction !== \"in\") {\n return refuse(\"wrong-direction\", `${ctx.target.port} is an output; a connection ends at an input`);\n }\n return pass;\n});\nvar refuseSelfLoop = defineConnectionRule(function(ctx) {\n return ctx.source.node === ctx.target.node ? refuse(\"self-loop\", `node ${JSON.stringify(ctx.source.node)} cannot connect to itself`) : pass;\n});\nvar refusePortArity = defineConnectionRule(function(ctx) {\n var source = lookup(ctx, ctx.source, \"source\");\n var target = lookup(ctx, ctx.target, \"target\");\n if (isResolved(source) && portArity(source.port) === \"one\") {\n var taken = ctx.document.edges.some(function(edge) {\n return edge.source.node === ctx.source.node && edge.source.port === ctx.source.port;\n });\n if (taken) {\n return refuse(\"port-arity\", `port ${JSON.stringify(ctx.source.port)} takes one connection and already has it`);\n }\n }\n if (isResolved(target) && portArity(target.port) === \"one\") {\n var taken1 = ctx.document.edges.some(function(edge) {\n return edge.target.node === ctx.target.node && edge.target.port === ctx.target.port;\n });\n if (taken1) {\n return refuse(\"port-arity\", `port ${JSON.stringify(ctx.target.port)} takes one connection and already has it`);\n }\n }\n return pass;\n});\nvar refuseDuplicate = defineConnectionRule(function(ctx) {\n return ctx.document.edges.some(function(edge) {\n return edge.source.node === ctx.source.node && edge.source.port === ctx.source.port && edge.target.node === ctx.target.node && edge.target.port === ctx.target.port;\n }) ? refuse(\"duplicate-edge\", \"these two ports are already connected\") : pass;\n});\nfunction refuseDataTypeMismatch() {\n var compatible = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : function(from, to) {\n return from === to;\n };\n return defineConnectionRule(function(ctx) {\n var source = lookup(ctx, ctx.source, \"source\");\n var target = lookup(ctx, ctx.target, \"target\");\n if (!isResolved(source) || !isResolved(target)) return pass;\n var from = source.port.dataType;\n var to = target.port.dataType;\n if (from === void 0 || to === void 0) return pass;\n return compatible(from, to) ? pass : refuse(\"data-type-mismatch\", `a ${from} output does not fit a ${to} input`);\n });\n}\nfunction refuseCycle() {\n return function(ctx) {\n if (ctx.source.node === ctx.target.node) {\n return refuse(\"cycle\", \"a node cannot feed itself\");\n }\n var out = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = ctx.document.edges[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var edge = _step.value;\n var list = out.get(edge.source.node);\n if (list) list.push(edge.target.node);\n else out.set(edge.source.node, [\n edge.target.node\n ]);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var seen = /* @__PURE__ */ new Set();\n var stack = [\n ctx.target.node\n ];\n while (stack.length > 0) {\n var current = stack.pop();\n if (current === ctx.source.node) {\n return refuse(\"cycle\", `connecting these would make ${JSON.stringify(ctx.source.node)} reachable from itself`);\n }\n if (seen.has(current)) continue;\n seen.add(current);\n var next = out.get(current);\n if (next) stack.push(...next);\n }\n return pass;\n };\n}\nvar defaultRules = [\n refuseDirection,\n refuseSelfLoop,\n refusePortArity,\n refuseDuplicate,\n refuseDataTypeMismatch()\n];\nvar defaultDropRules = [\n refuseCycle()\n];\nfunction validateConnection(ctx) {\n var rules = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ctx.schema.rules;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = rules[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var rule = _step.value;\n var verdict = rule(ctx);\n if (!verdict.ok) return verdict;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return pass;\n}\nfunction validateDrop(ctx) {\n var rules = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ctx.schema.rules, dropRules = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : ctx.schema.dropRules;\n var cheap = validateConnection(ctx, rules);\n if (!cheap.ok) return cheap;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = dropRules[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var rule = _step.value;\n var verdict = rule(ctx);\n if (!verdict.ok) return verdict;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return pass;\n}\nexport {\n defaultDropRules,\n defaultRules,\n defineConnectionRule,\n refuseCycle,\n refuseDataTypeMismatch,\n refuseDirection,\n refuseDuplicate,\n refusePortArity,\n refuseSelfLoop,\n validateConnection,\n validateDrop\n};\n//# sourceMappingURL=connect.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["portArity","resolvePorts","defineConnectionRule","check","Object","assign","tickSafe","pass","ok","refuse","code","message","lookup","ctx","ref","end","node","document","nodes","find","candidate","id","problem","JSON","stringify","port","schema","isResolved","value","refuseDirection","source","target","direction","refuseSelfLoop","refusePortArity","taken","edges","some","edge","taken1","refuseDuplicate","refuseDataTypeMismatch","compatible","arguments","length","from","to","dataType","refuseCycle","out","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","list","get","push","set","err","return","seen","Set","stack","current","pop","has","add","defaultRules"],"sources":["../../../src/model/connect.ts"],"sourcesContent":[null],"mappings":"AAqBA,SAASA,SAAA,EAAWC,YAAA,QAAoB;AAoCjC,SAASC,qBACdC,KAAA,EACsB;EACtB,OAAOC,MAAA,CAAOC,MAAA,CAAOF,KAAA,EAAO;IAC9BG,QAAA;EAEA;AAEA;AACE,IAAAC,IAAA,GAAS;EACXC,EAAA;AAQA;AAKE,SAAMC,MAAOA,CAAAC,IAAI,EAAAC,OAAS;EAC1B,OAAK;IACHH,EAAA,OAAO;IAAAE,IACL;IAASC;EACP;AACiD;AACnD,SACFC,OAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;EACF,IAAAC,IAAA,GAAAH,GAAA,CAAAI,QAAA,CAAAC,KAAA,CAAAC,IAAA,WAAAC,SAAA;IACA,OAAMA,SAAO,CAAAC,EAAA,KAAaP,GAAA,CAAIE,IAAA;EAC9B;EACE,KAAAA,IAAO;IAAA,OACL;MAASM,OACP,EAAAb,MAAA,wBAAAM,GAAA,eAAAQ,IAAA,CAAAC,SAAA,CAAAV,GAAA,CAAAE,IAAA;IAAA;EACwE;EAC1E,IACFS,IAAA,GAAAxB,YAAA,CAAAY,GAAA,CAAAa,MAAA,EAAAV,IAAA,EAAAG,IAAA,WAAAC,SAAA;IACF,OAAAA,SAAA,CAAAC,EAAA,KAAAP,GAAA,CAAAW,IAAA;EACA;EACF,KAAAA,IAAA;IAEA,OAAS;MACPH,OAAO,EAAAb,MAAU,yBAAAc,IAAA,CAAAC,SAAA,CAAAV,GAAA,CAAAE,IAAA,iBAAAO,IAAA,CAAAC,SAAA,CAAAV,GAAA,CAAAW,IAAA;IACnB;EAUO;EACL,OAAM;IACNA;EACA;AACA;AACA,SAAIE,UAAYA,CAAAC,KAAA;EACd,aAAO,IAAAA,KAAA;AAAA;AACL,IAAAC,eACO,GAAO3B,oBAAI,WAAAW,GAAA;EAAA,IACpBiB,MAAA,GAAAlB,MAAA,CAAAC,GAAA,EAAAA,GAAA,CAAAiB,MAAA;EACF,KAAAH,UAAA,CAAAG,MAAA,UAAAA,MAAA,CAAAR,OAAA;EACA,IAAIS,MAAA,GAAOnB,MAAK,CAAAC,GAAA,EAAAA,GAAA,CAAAkB,MAAc,EAAM;EAClC,KAAAJ,UAAO,CAAAI,MAAA,UAAAA,MAAA,CAAAT,OAAA;EAAA,IACLQ,MAAA,CAAAL,IAAA,CAAAO,SAAA;IAAA,OACGvB,MAAI,kBAAW,KAAAI,GAAA,CAAAiB,MAAA,CAAAL,IAAA;EAAA;EAEtB,IAAAM,MAAA,CAAAN,IAAA,CAAAO,SAAA;IACA,OAAOvB,MAAA,uBAAAI,GAAA,CAAAkB,MAAA,CAAAN,IAAA;EACR;EAEM,OAAMlB,IAAA;AAA2C,EAAqB;AAI7E,IAAA0B,cAAA,GAAA/B,oBAAA,WAAAW,GAAA;EAGO,OAAMA,GAAA,CAAAiB,MAAA,CAAAd,IAA4C,KAAAH,GAAA,CAAAkB,MAAA,CAAAf,IAAA,GAAsBP,MAAA,CAAQ,qBAAAc,IAAA,CAAAC,SAAA,CAAAX,GAAA,CAAAiB,MAAA,CAAAd,IAAA,gCAAAT,IAAA;AACrF;AACA,IAAA2B,eAAe,GAAAhC,oBAAwB,WAAQW,GAAA;EAC/C,IAAIiB,MAAA,GAAAlB,MAAW,CAAAC,GAAM,EAAAA,GAAK,CAAAiB,MAAA,EAAU,QAAO;EACzC,IAAAC,MAAM,GAAAnB,MAAQ,CAAIC,GAAA,EAAAA,GAAA,CAASkB,MAAM;EAAA,IAC/BJ,UAAU,CAAAG,MAAK,KAAO9B,SAAS,CAAA8B,MAAI,CAAAL,IAAO,WAAQ,EAAK;IACzD,IAAAU,KAAA,GAAAtB,GAAA,CAAAI,QAAA,CAAAmB,KAAA,CAAAC,IAAA,WAAAC,IAAA;MACA,OAAIA,IAAO,CAAAR,MAAA,CAAAd,IAAA,KAAAH,GAAA,CAAAiB,MAAA,CAAAd,IAAA,IAAAsB,IAAA,CAAAR,MAAA,CAAAL,IAAA,KAAAZ,GAAA,CAAAiB,MAAA,CAAAL,IAAA;IACT;IAAO,IACLU,KAAA;MAAA,OACA1B,MAAQ,aAAe,UAAWc,IAAI,CAACC,SAAA,CAAAX,GAAA,CAAAiB,MAAA,CAAAL,IAAA;IAAA;EACzC;EAEJ,IAAAE,UAAA,CAAAI,MAAA,KAAA/B,SAAA,CAAA+B,MAAA,CAAAN,IAAA;IACA,IAAIc,MAAA,GAAW1B,GAAA,CAAAI,QAAW,CAAAmB,KAAA,CAAAC,IAAU,WAAWC,IAAA,EAAM;MACnD,OAAMA,IAAA,CAAQP,MAAI,CAAAf,IAAA,KAASH,GAAM,CAAAkB,MAAA,CAAAf,IAAA,IAAAsB,IAAA,CAAAP,MAAA,CAAAN,IAAA,KAAAZ,GAAA,CAAAkB,MAAA,CAAAN,IAAA;IAAA,EAC/B;IACF,IAAAc,MAAA;MACA,OAAI9B,MAAO,uBAAAc,IAAA,CAAAC,SAAA,CAAAX,GAAA,CAAAkB,MAAA,CAAAN,IAAA;IACT;EAAO;EACL,OACAlB,IAAA;AAAuC;AACzC,IACFiC,eAAA,GAAAtC,oBAAA,WAAAW,GAAA;EACF,OAAAA,GAAA,CAAAI,QAAA,CAAAmB,KAAA,CAAAC,IAAA,WAAAC,IAAA;IACA,OAAOA,IAAA,CAAAR,MAAA,CAAAd,IAAA,KAAAH,GAAA,CAAAiB,MAAA,CAAAd,IAAA,IAAAsB,IAAA,CAAAR,MAAA,CAAAL,IAAA,KAAAZ,GAAA,CAAAiB,MAAA,CAAAL,IAAA,IAAAa,IAAA,CAAAP,MAAA,CAAAf,IAAA,KAAAH,GAAA,CAAAkB,MAAA,CAAAf,IAAA,IAAAsB,IAAA,CAAAP,MAAA,CAAAN,IAAA,KAAAZ,GAAA,CAAAkB,MAAA,CAAAN,IAAA;EACR,KAAAhB,MAAA,8DAAAF,IAAA;AAEM;AAAkD,SAAsBkC,sBAC1DA,CAAA;EAAA,IAChBC,UACC,GAAKC,SAAO,CAAAC,MAAS,IAAI,IAAAD,SAAO,EAChC,MAAK,MAAO,GAAAA,SAAS,CAAI,eAAOE,IAChC,EAAKC,EAAA;IAET,OACID,IAAO,KAAAC,EAAA;EAEb;EAMO,OAAS5C,oBAAA,WACdW,GAAA;IAEA,IAAAiB,MAAO,GAAAlB,MAAA,CAAAC,GAAA,EAAAA,GAAsB,CAAAiB,MAAQ;IACnC,IAAAC,MAAM,GAAAnB,MAAS,CAAAC,GAAO,EAAAA,GAAK,CAAAkB,MAAI,UAAQ;IACvC,KAAAJ,UAAe,CAAAG,MAAO,KAAK,CAAAH,UAAI,CAAQI,MAAA,GAAQ,OAAAxB,IAAA;IAC/C,IAAIsC,IAAC,GAAAf,MAAW,CAAAL,IAAM,CAAAsB,QAAM;IAC5B,IAAAD,EAAM,GAAAf,MAAO,CAAAN,IAAO,CAAAsB,QAAK;IACzB,IAAAF,IAAM,KAAK,KAAO,KAAKC,EAAA,oBAAAvC,IAAA;IACvB,OAAImC,UAAS,CAAAG,IAAA,EAAaC,EAAA,IAAOvC,IAAA,GAAWE,MAAA,qBAAO,OAAAoC,IAAA,0BAAAC,EAAA;EACnD;AAE8E;AAElF,SAAAE,YAAA;EAOO,OAAS,UAAAnC,GAAA,EAAsC;IACpD,IAAAA,GAAQ,CAAAiB,MAAQ,CAAAd,IAAA,KAAAH,GAAA,CAAAkB,MAAA,CAAAf,IAAA;MACd,OAAQP,MAAO,UAAS,2BAAiB;IACvC;IACF,IAAAwC,GAAA,sBAAAC,GAAA;IACA,IAAAC,yBAAY,GAAI,IAAsB;MAAAC,iBAAA;MAAAC,cAAA;IACtC;MACE,SAAMC,SAAW,GAAIzC,GAAA,CAAAI,QAAY,CAAAmB,KAAI,CAAAmB,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;QACrC,IAAIb,IAAM,GAAAmB,KAAK,CAAA7B,KAAK;QAAgB,IAC/BgC,IAAI,GAAIX,GAAA,CAAAY,GAAK,CAAAvB,IAAO,CAAAR,MAAO,CAAAd,IAAK;QACvC,IAAA4C,IAAA,EAAAA,IAAA,CAAAE,IAAA,CAAAxB,IAAA,CAAAP,MAAA,CAAAf,IAAA,OAGMiC,GAAA,CAAOc,GAAA,CAAAzB,IAAA,CAAAR,MAAA,CAAAd,IAAI,GACXsB,IAAA,CAAAP,MAAS,CAAAf,IAAI,CACnB;MACE;IACA,SAAIgD,GAAA;MACFZ,iBAAO;MAAAC,cACL,GAAAW,GAAA;IAAA,UACA;MAA8D,IAChE;QACF,KAAAb,yBAAA,IAAAG,SAAA,CAAAW,MAAA;UACIX,SAAS,CAAAW,MAAO,EAAG;QACvB;MACA,UAAM;QACN,IAAIb,iBAAiB,EAAG;UAC1B,MAAAC,cAAA;QACA;MACF;IACF;IAOO,IAAMa,IAAA,kBAAoD,IAAAC,GAAA;IAC/D,IAAAC,KAAA,IACAvD,GAAA,CAAAkB,MAAA,CAAAf,IAAA,CACA;IACA,OAAAoD,KAAA,CAAAxB,MAAA;MACA,IAAAyB,OAAA,GAAAD,KAAuB,CAAAE,GAAA;MACzB,IAAAD,OAAA,KAAAxD,GAAA,CAAAiB,MAAA,CAAAd,IAAA;QAEa,OAAAP,MAAA,QAAuD,iCAAac,IAAA,CAAAC,SAAA,CAAAX,GAAA,CAAAiB,MAAA,CAAAd,IAAA;MAM1E;MAIL,IAAAkD,IAAW,CAAAK,GAAA,CAAAF,OAAQ,GAAO;MACxBH,IAAM,CAAAM,GAAA,CAAAH,OAAU;MAChB,IAAKX,IAAA,GAAQT,GAAI,CAAAY,GAAA,CAAAQ,OAAO;MAC1B,IAAAX,IAAA,EAAAU,KAAA,CAAAN,IAAA,IAAAJ,IAAA;IACA;IACF,OAAAnD,IAAA;EAGO;AAKL;AACA,IAAAkE,YAAe,IACf5C,eAAW,EACTI,cAAM,EACNC,eAAa,EACfM,eAAA,EACAC,sBAAO,GACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["document.native.js"],"sourcesContent":["//# sourceMappingURL=document.js.map\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","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","commit","doc","merged","push","slice","entry","pop","canUndo","canRedo","depth","clear"],"sources":["history.native.js"],"sourcesContent":["import { applyCommand, invertCommand } from \"./commands\";\nfunction movedIds(deltas) {\n return Object.keys(deltas).sort();\n}\nfunction sameIds(a, b) {\n return a.length === b.length && a.every(function(id, i) {\n return id === b[i];\n });\n}\nfunction addDeltas(a, b) {\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(a)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [id, delta] = _step.value;\n out[id] = {\n ...delta\n };\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = Object.entries(b)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [id1, delta1] = _step1.value;\n var prior = out[id1];\n out[id1] = prior ? {\n x: prior.x + delta1.x,\n y: prior.y + delta1.y\n } : {\n ...delta1\n };\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n return out;\n}\nfunction createHistory() {\n var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n var _options_limit, _options_coalesceMs, _options_now;\n var limit = (_options_limit = options.limit) !== null && _options_limit !== void 0 ? _options_limit : 100;\n var coalesceMs = (_options_coalesceMs = options.coalesceMs) !== null && _options_coalesceMs !== void 0 ? _options_coalesceMs : 400;\n var now = (_options_now = options.now) !== null && _options_now !== void 0 ? _options_now : function() {\n return Date.now();\n };\n var past = [];\n var future = [];\n function coalesce(command, undo, at) {\n var top = past[past.length - 1];\n if (!top) return void 0;\n if (future.length > 0) return void 0;\n if (at - top.at > coalesceMs) return void 0;\n if (command.t !== \"moveNodes\" || top.redo.t !== \"moveNodes\" || top.undo.t !== \"moveNodes\") {\n return void 0;\n }\n if (undo.t !== \"moveNodes\") return void 0;\n if (!sameIds(movedIds(command.deltas), movedIds(top.redo.deltas))) return void 0;\n return {\n // Deltas compose by addition. That is the whole reason `moveNodes`\n // carries deltas rather than absolutes.\n redo: {\n t: \"moveNodes\",\n deltas: addDeltas(top.redo.deltas, command.deltas)\n },\n undo: {\n t: \"moveNodes\",\n deltas: addDeltas(top.undo.deltas, undo.deltas)\n },\n at\n };\n }\n return {\n commit(doc, command) {\n var at = now();\n var undo = invertCommand(doc, command);\n var next = applyCommand(doc, command);\n var merged = coalesce(command, undo, at);\n if (merged) {\n past[past.length - 1] = merged;\n return next;\n }\n past.push({\n redo: command,\n undo,\n at\n });\n future = [];\n if (past.length > limit) past = past.slice(past.length - limit);\n return next;\n },\n undo(doc) {\n var entry = past.pop();\n if (!entry) return doc;\n future.push(entry);\n return applyCommand(doc, entry.undo);\n },\n redo(doc) {\n var entry = future.pop();\n if (!entry) return doc;\n past.push(entry);\n return applyCommand(doc, entry.redo);\n },\n canUndo: function canUndo() {\n return past.length > 0;\n },\n canRedo: function canRedo() {\n return future.length > 0;\n },\n depth: function depth() {\n return past.length;\n },\n entries: function entries() {\n return past;\n },\n clear() {\n past = [];\n future = [];\n }\n };\n}\nexport {\n createHistory\n};\n//# sourceMappingURL=history.js.map\n"],"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","_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 +1 @@
1
- {"version":3,"names":["applyCommand","invertCommand","defaultDropRules","defaultRules","defineConnectionRule","refuseCycle","refuseDataTypeMismatch","refuseDirection","refuseDuplicate","refusePortArity","refuseSelfLoop","validateConnection","validateDrop","createHistory","clearGraphSchemas","createGraphSchema","getGraphSchema","nodeKindSpec","portArity","registerGraphSchema","resolvePorts","nodeRects","rectContains","rectsOverlap","selectInMarquee","unionBounds","parseDocument","serializeDocument"],"sources":["index.native.js"],"sourcesContent":["import { applyCommand, invertCommand } from \"./commands\";\nimport { defaultDropRules, defaultRules, defineConnectionRule, refuseCycle, refuseDataTypeMismatch, refuseDirection, refuseDuplicate, refusePortArity, refuseSelfLoop, validateConnection, validateDrop } from \"./connect\";\nimport { createHistory } from \"./history\";\nimport { clearGraphSchemas, createGraphSchema, getGraphSchema, nodeKindSpec, portArity, registerGraphSchema, resolvePorts } from \"./schema\";\nimport { nodeRects, rectContains, rectsOverlap, selectInMarquee, unionBounds } from \"./select\";\nimport { parseDocument, serializeDocument } from \"./serialize\";\nexport {\n applyCommand,\n clearGraphSchemas,\n createGraphSchema,\n createHistory,\n defaultDropRules,\n defaultRules,\n defineConnectionRule,\n getGraphSchema,\n invertCommand,\n nodeKindSpec,\n nodeRects,\n parseDocument,\n portArity,\n rectContains,\n rectsOverlap,\n refuseCycle,\n refuseDataTypeMismatch,\n refuseDirection,\n refuseDuplicate,\n refusePortArity,\n refuseSelfLoop,\n registerGraphSchema,\n resolvePorts,\n selectInMarquee,\n serializeDocument,\n unionBounds,\n validateConnection,\n validateDrop\n};\n//# sourceMappingURL=index.js.map\n"],"mappings":"AAAA,SAASA,YAAY,EAAEC,aAAa,QAAQ,sBAAY;AACxD,SAASC,gBAAgB,EAAEC,YAAY,EAAEC,oBAAoB,EAAEC,WAAW,EAAEC,sBAAsB,EAAEC,eAAe,EAAEC,eAAe,EAAEC,eAAe,EAAEC,cAAc,EAAEC,kBAAkB,EAAEC,YAAY,QAAQ,qBAAW;AAC1N,SAASC,aAAa,QAAQ,qBAAW;AACzC,SAASC,iBAAiB,EAAEC,iBAAiB,EAAEC,cAAc,EAAEC,YAAY,EAAEC,SAAS,EAAEC,mBAAmB,EAAEC,YAAY,QAAQ,oBAAU;AAC3I,SAASC,SAAS,EAAEC,YAAY,EAAEC,YAAY,EAAEC,eAAe,EAAEC,WAAW,QAAQ,oBAAU;AAC9F,SAASC,aAAa,EAAEC,iBAAiB,QAAQ,uBAAa;AAC9D,SACE3B,YAAY,EACZc,iBAAiB,EACjBC,iBAAiB,EACjBF,aAAa,EACbX,gBAAgB,EAChBC,YAAY,EACZC,oBAAoB,EACpBY,cAAc,EACdf,aAAa,EACbgB,YAAY,EACZI,SAAS,EACTK,aAAa,EACbR,SAAS,EACTI,YAAY,EACZC,YAAY,EACZlB,WAAW,EACXC,sBAAsB,EACtBC,eAAe,EACfC,eAAe,EACfC,eAAe,EACfC,cAAc,EACdS,mBAAmB,EACnBC,YAAY,EACZI,eAAe,EACfG,iBAAiB,EACjBF,WAAW,EACXd,kBAAkB,EAClBC,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["applyCommand","invertCommand","defaultDropRules","defaultRules","defineConnectionRule","refuseCycle","refuseDataTypeMismatch","refuseDirection","refuseDuplicate","refusePortArity","refuseSelfLoop","validateConnection","validateDrop","createHistory","clearGraphSchemas","createGraphSchema","getGraphSchema","nodeKindSpec","portArity","registerGraphSchema","resolvePorts","nodeRects","rectContains","rectsOverlap","selectInMarquee","unionBounds","parseDocument","serializeDocument"],"sources":["../../../src/model/index.ts"],"sourcesContent":[null],"mappings":"AA6BA,SAASA,YAAA,EAAcC,aAAA,QAAqB;AAQ5C,SAAAC,gBAAA,EAAAC,YAAA,EAAAC,oBAAA,EAAAC,WAAA,EAAAC,sBAAA,EAAAC,eAAA,EAAAC,eAAA,EAAAC,eAAA,EAAAC,cAAA,EAAAC,kBAAA,EAAAC,YAAA;AAAA,SACEC,aAAA;AAAA,SACAC,iBAAA,EAAAC,iBAAA,EAAAC,cAAA,EAAAC,YAAA,EAAAC,SAAA,EAAAC,mBAAA,EAAAC,YAAA;AAAA,SACAC,SAAA,EAAAC,YAAA,EAAAC,YAAA,EAAAC,eAAA,EAAAC,WAAA;AAAA,SACAC,aAAA,EAAAC,iBAAA;AAAA,SAEA3B,YAAA,EACAc,iBAAA,EACAC,iBAAA,EACAF,aAAA,EACAX,gBAAA,EACAC,YAAA,EAAAC,oBACK,EAEPY,cAAS,EAUTf,aAAA,EACEgB,YAAA,EACAI,SAAA,EACAK,aAAA,EACAR,SAAA,EACAI,YAAA,EACAC,YAAA,EACAlB,WAAA,EAAAC,sBACK,EAEPC,eAAS,EAETC,eAAS,E","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["portArity","port","_port_arity","arity","direction","createGraphSchema","spec","_spec_rules","_spec_dropRules","id","nodes","edges","rules","dropRules","registry","Map","registerGraphSchema","schema","set","getGraphSchema","get","clearGraphSchemas","clear","nodeKindSpec","kind","resolvePorts","node","ports","data"],"sources":["schema.native.js"],"sourcesContent":["function portArity(port) {\n var _port_arity;\n return (_port_arity = port.arity) !== null && _port_arity !== void 0 ? _port_arity : port.direction === \"out\" ? \"many\" : \"one\";\n}\nfunction createGraphSchema(spec) {\n var _spec_rules, _spec_dropRules;\n return {\n id: spec.id,\n nodes: spec.nodes,\n edges: spec.edges,\n rules: (_spec_rules = spec.rules) !== null && _spec_rules !== void 0 ? _spec_rules : [],\n dropRules: (_spec_dropRules = spec.dropRules) !== null && _spec_dropRules !== void 0 ? _spec_dropRules : []\n };\n}\nvar registry = /* @__PURE__ */ new Map();\nfunction registerGraphSchema(schema) {\n registry.set(schema.id, schema);\n}\nfunction getGraphSchema(id) {\n return registry.get(id);\n}\nfunction clearGraphSchemas() {\n registry.clear();\n}\nfunction nodeKindSpec(schema, kind) {\n return schema.nodes[kind];\n}\nfunction resolvePorts(schema, node) {\n var spec = nodeKindSpec(schema, node.kind);\n if (!spec) return [];\n return typeof spec.ports === \"function\" ? spec.ports(node.data) : spec.ports;\n}\nexport {\n clearGraphSchemas,\n createGraphSchema,\n getGraphSchema,\n nodeKindSpec,\n portArity,\n registerGraphSchema,\n resolvePorts\n};\n//# sourceMappingURL=schema.js.map\n"],"mappings":"AAAA,SAASA,SAASA,CAACC,IAAI,EAAE;EACvB,IAAIC,WAAW;EACf,OAAO,CAACA,WAAW,GAAGD,IAAI,CAACE,KAAK,MAAM,IAAI,IAAID,WAAW,KAAK,KAAK,CAAC,GAAGA,WAAW,GAAGD,IAAI,CAACG,SAAS,KAAK,KAAK,GAAG,MAAM,GAAG,KAAK;AAChI;AACA,SAASC,iBAAiBA,CAACC,IAAI,EAAE;EAC/B,IAAIC,WAAW,EAAEC,eAAe;EAChC,OAAO;IACLC,EAAE,EAAEH,IAAI,CAACG,EAAE;IACXC,KAAK,EAAEJ,IAAI,CAACI,KAAK;IACjBC,KAAK,EAAEL,IAAI,CAACK,KAAK;IACjBC,KAAK,EAAE,CAACL,WAAW,GAAGD,IAAI,CAACM,KAAK,MAAM,IAAI,IAAIL,WAAW,KAAK,KAAK,CAAC,GAAGA,WAAW,GAAG,EAAE;IACvFM,SAAS,EAAE,CAACL,eAAe,GAAGF,IAAI,CAACO,SAAS,MAAM,IAAI,IAAIL,eAAe,KAAK,KAAK,CAAC,GAAGA,eAAe,GAAG;EAC3G,CAAC;AACH;AACA,IAAIM,QAAQ,GAAG,eAAgB,IAAIC,GAAG,CAAC,CAAC;AACxC,SAASC,mBAAmBA,CAACC,MAAM,EAAE;EACnCH,QAAQ,CAACI,GAAG,CAACD,MAAM,CAACR,EAAE,EAAEQ,MAAM,CAAC;AACjC;AACA,SAASE,cAAcA,CAACV,EAAE,EAAE;EAC1B,OAAOK,QAAQ,CAACM,GAAG,CAACX,EAAE,CAAC;AACzB;AACA,SAASY,iBAAiBA,CAAA,EAAG;EAC3BP,QAAQ,CAACQ,KAAK,CAAC,CAAC;AAClB;AACA,SAASC,YAAYA,CAACN,MAAM,EAAEO,IAAI,EAAE;EAClC,OAAOP,MAAM,CAACP,KAAK,CAACc,IAAI,CAAC;AAC3B;AACA,SAASC,YAAYA,CAACR,MAAM,EAAES,IAAI,EAAE;EAClC,IAAIpB,IAAI,GAAGiB,YAAY,CAACN,MAAM,EAAES,IAAI,CAACF,IAAI,CAAC;EAC1C,IAAI,CAAClB,IAAI,EAAE,OAAO,EAAE;EACpB,OAAO,OAAOA,IAAI,CAACqB,KAAK,KAAK,UAAU,GAAGrB,IAAI,CAACqB,KAAK,CAACD,IAAI,CAACE,IAAI,CAAC,GAAGtB,IAAI,CAACqB,KAAK;AAC9E;AACA,SACEN,iBAAiB,EACjBhB,iBAAiB,EACjBc,cAAc,EACdI,YAAY,EACZvB,SAAS,EACTgB,mBAAmB,EACnBS,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["portArity","port","_port_arity","arity","direction","createGraphSchema","spec","_spec_rules","_spec_dropRules","id","nodes","edges","rules","dropRules","registry","Map","registerGraphSchema","schema","set","getGraphSchema","get","clearGraphSchemas","clear","nodeKindSpec","kind","resolvePorts","node"],"sources":["../../../src/model/schema.ts"],"sourcesContent":[null],"mappings":"AAqCO,SAASA,UAAUC,IAAA,EAAgC;EACxD,IAAAC,WAAY;EACd,QAAAA,WAAA,GAAAD,IAAA,CAAAE,KAAA,cAAAD,WAAA,cAAAA,WAAA,GAAAD,IAAA,CAAAG,SAAA;AAsFO;AAGL,SAAOC,kBAAAC,IAAA;EAAA,IACLC,WAAS,EAAAC,eAAA;EAAA,OACT;IACAC,EAAA,EAAAH,IAAO,CAAAG,EAAA;IACPC,KAAA,EAAOJ,IAAA,CAAKI,KAAA;IACZC,KAAA,EAAAL,IAAW,CAAAK,KAAK;IAClBC,KAAA,GAAAL,WAAA,GAAAD,IAAA,CAAAM,KAAA,cAAAL,WAAA,cAAAA,WAAA;IACFM,SAAA,GAAAL,eAAA,GAAAF,IAAA,CAAAO,SAAA,cAAAL,eAAA,cAAAA,eAAA;EAEA;AASO;AAGL,IAAAM,QAAS,GAAI,eAAW,IAA8CC,GAAA;AACxE,SAAAC,oBAAAC,MAAA;EAEOH,QAAS,CAAAI,GAAA,CAAAD,MAAA,CAAAR,EAAe,EAAAQ,MAAmD;AAChF;AACF,SAAAE,eAAAV,EAAA;EAGO,OAASK,QAAA,CAAAM,GAAA,CAAAX,EAAA;AACd;AACF,SAAAY,kBAAA;EAEOP,QAAS,CAAAQ,KAAA;AAId;AACF,SAAAC,aAAAN,MAAA,EAAAO,IAAA;EAGO,OAASP,MAAA,CAAAP,KAAA,CACdc,IAAA;AAGA;AACA,SAAKC,YAAcA,CAAAR,MAAA,EAAAS,IAAA;EACnB,IAAApB,IAAO,GAAAiB,YAAY,CAAAN,MAAU,EAAAS,IAAA,CAAAF,IAAA,CAAa;EAC5C,KAAAlB,IAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["rectsOverlap","a","b","x","width","y","height","rectContains","outer","inner","selectInMarquee","nodes","marquee","mode","hit","filter","param","rect","map","id","unionBounds","rects","length","minX","Number","POSITIVE_INFINITY","minY","maxX","NEGATIVE_INFINITY","maxY","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","value","err","return","nodeRects","doc","measure","node","_node_size","size","kind","position"],"sources":["select.native.js"],"sourcesContent":["function rectsOverlap(a, b) {\n return a.x < b.x + b.width && b.x < a.x + a.width && a.y < b.y + b.height && b.y < a.y + a.height;\n}\nfunction rectContains(outer, inner) {\n return inner.x >= outer.x && inner.y >= outer.y && inner.x + inner.width <= outer.x + outer.width && inner.y + inner.height <= outer.y + outer.height;\n}\nfunction selectInMarquee(nodes, marquee, mode) {\n var hit = mode === \"full\" ? rectContains : rectsOverlap;\n return nodes.filter(function(param) {\n var { rect } = param;\n return hit(marquee, rect);\n }).map(function(param) {\n var { id } = param;\n return id;\n });\n}\nfunction unionBounds(rects) {\n if (rects.length === 0) return void 0;\n var minX = Number.POSITIVE_INFINITY;\n var minY = Number.POSITIVE_INFINITY;\n var maxX = Number.NEGATIVE_INFINITY;\n var maxY = Number.NEGATIVE_INFINITY;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = rects[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var rect = _step.value;\n if (rect.x < minX) minX = rect.x;\n if (rect.y < minY) minY = rect.y;\n if (rect.x + rect.width > maxX) maxX = rect.x + rect.width;\n if (rect.y + rect.height > maxY) maxY = rect.y + rect.height;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction nodeRects(doc, measure) {\n return doc.nodes.map(function(node) {\n var _node_size;\n var size = (_node_size = node.size) !== null && _node_size !== void 0 ? _node_size : measure(node.kind);\n return {\n id: node.id,\n rect: {\n x: node.position.x,\n y: node.position.y,\n width: size.width,\n height: size.height\n }\n };\n });\n}\nexport {\n nodeRects,\n rectContains,\n rectsOverlap,\n selectInMarquee,\n unionBounds\n};\n//# sourceMappingURL=select.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["rectsOverlap","a","b","x","width","y","height","rectContains","outer","inner","selectInMarquee","nodes","marquee","mode","hit","filter","param","rect","map","id","unionBounds","rects","length","minX","Number","POSITIVE_INFINITY","minY","maxX","NEGATIVE_INFINITY","maxY","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","value","err"],"sources":["../../../src/model/select.ts"],"sourcesContent":[null],"mappings":"AA2BO,SAASA,aAAaC,CAAA,EAASC,CAAA,EAAkB;EACtD,OAAOD,CAAA,CAAEE,CAAA,GAAID,CAAA,CAAEC,CAAA,GAAID,CAAA,CAAEE,KAAA,IAASF,CAAA,CAAEC,CAAA,GAAIF,CAAA,CAAEE,CAAA,GAAIF,CAAA,CAAEG,KAAA,IAASH,CAAA,CAAEI,CAAA,GAAIH,CAAA,CAAEG,CAAA,GAAIH,CAAA,CAAEI,MAAA,IAAUJ,CAAA,CAAEG,CAAA,GAAIJ,CAAA,CAAEI,CAAA,GAAIJ,CAAA,CAAEK,MAAA;AAC7F;AAGO,SAASC,aAAaC,KAAA,EAAaC,KAAA,EAAsB;EAC9D,OACEA,KAAA,CAAMN,CAAA,IAAKK,KAAA,CAAML,CAAA,IACjBM,KAAA,CAAMJ,CAAA,IAAKG,KAAA,CAAMH,CAAA,IACjBI,KAAA,CAAMN,CAAA,GAAIM,KAAA,CAAML,KAAA,IAASI,KAAA,CAAML,CAAA,GAAIK,KAAA,CAAMJ,KAAA,IACzCK,KAAA,CAAMJ,CAAA,GAAII,KAAA,CAAMH,MAAA,IAAUE,KAAA,CAAMH,CAAA,GAAIG,KAAA,CAAMF,MAAA;AAE9C;AAGO,SAASI,gBACdC,KAAA,EACAC,OAAA,EACAC,IAAA,EACmB;EACnB,IAAAC,GAAM,GAAAD,IAAM,WAAS,GAAAN,YAAS,GAAAP,YAAe;EAC7C,OAAOW,KAAA,CAAMI,MAAA,CAAO,UAAQC,KAAM;IACpC;MAAAC;IAAA,IAAAD,KAAA;IAOO,OAASF,GAAA,CAAAF,OAAY,EAAAK,IAA0C;EACpE,GAAAC,GAAI,WAAMF,KAAW,EAAG;IACxB,IAAI;MAAAG;IAAO,IAAAH,KAAO;IAClB,OAAIG,EAAO;EACX;AACA;AACA,SAAAC,WAAWA,CAAQC,KAAA,EAAO;EACxB,IAAAA,KAAI,CAAAC,MAAS,KAAM,UAAO,KAAK;EAC/B,IAAAC,IAAI,GAAKC,MAAI,CAAAC,iBAAkB;EAC/B,IAAAC,IAAI,GAAKF,MAAI,CAAAC,iBAAmB;EAChC,IAAAE,IAAI,GAAKH,MAAI,CAAAI,iBAAoB;EACnC,IAAAC,IAAA,GAAAL,MAAA,CAAAI,iBAAA;EACA,IAAAE,yBAA2B,OAAO;IAAAC,iBAAqB,QAAO;IAAAC,cAAK;EACrE;IAOO,KAAS,IAAAC,SACd,GACAZ,KAAA,CAAAa,MACqB,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MACrB,IAAOb,IAAI,GAAAmB,KAAM,CAAIG,KAAC;MACpB,IAAMtB,IAAA,CAAAd,CAAA,GAAOoB,IAAK,EAAAA,IAAA,GAAQN,IAAA,CAAAd,CAAQ;MAClC,IAAAc,IAAO,CAAAZ,CAAA,GAAAqB,IAAA,EAAAA,IAAA,GAAAT,IAAA,CAAAZ,CAAA;MACL,IAAIY,IAAA,CAAKd,CAAA,GAAAc,IAAA,CAAAb,KAAA,GAAAuB,IAAA,EAAAA,IAAA,GAAAV,IAAA,CAAAd,CAAA,GAAAc,IAAA,CAAAb,KAAA;MACT,IAAAa,IAAQ,CAAAZ,CAAA,GAAGY,IAAK,CAAAX,MAAA,GAASuB,IAAM,EAAAA,IAAK,GAAAZ,IAAA,CAASZ,CAAA,GAAGY,IAAA,CAAAX,MAAY;IAC9D;EACF,CAAC,QAAAkC,GAAA;IACHT,iBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_instanceof","left","right","Symbol","hasInstance","_type_of","obj","constructor","documentVersion","round2","value","rounded","Number","toFixed","Object","is","roundXY","x","y","canonical","Array","isArray","map","source","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","keys","sort","iterator","_step","next","done","key","err","return","serializeDocument","doc","version","nodes","node","shaped","id","kind","position","data","size","width","height","parent","locked","edges","edge","port","target","label","viewport","zoom","meta","JSON","stringify","fail","collector","path","code","message","problems","push","isPlainObject","readXY","ok","_i","_iter","length","axis","isFinite","readSize","readViewport","xy","readString","readPortRef","parseDocument","raw","schema","options","arguments","parseUnsafe","error","Error","String","parse","nodeKinds","Set","edgeKinds","drop","dropUnknownKinds","nodeIds","forEach","entry","index","has","add","edgeIds","end","ref"],"sources":["serialize.native.js"],"sourcesContent":["function _instanceof(left, right) {\n \"@swc/helpers - instanceof\";\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar documentVersion = 1;\nfunction round2(value) {\n var rounded = Number(value.toFixed(2));\n return Object.is(rounded, -0) ? 0 : rounded;\n}\nfunction roundXY(value) {\n return {\n x: round2(value.x),\n y: round2(value.y)\n };\n}\nfunction canonical(value) {\n if (Array.isArray(value)) return value.map(canonical);\n if (value === null || (typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) !== \"object\") return value;\n var source = value;\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.keys(source).sort()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n out[key] = canonical(source[key]);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return out;\n}\nfunction serializeDocument(doc) {\n var out = {\n version: doc.version\n };\n out.nodes = doc.nodes.map(function(node) {\n var shaped = {\n id: node.id,\n kind: node.kind,\n position: roundXY(node.position),\n data: canonical(node.data)\n };\n if (node.size) {\n shaped.size = {\n width: round2(node.size.width),\n height: round2(node.size.height)\n };\n }\n if (node.parent !== void 0) shaped.parent = node.parent;\n if (node.locked !== void 0) shaped.locked = node.locked;\n return shaped;\n });\n out.edges = doc.edges.map(function(edge) {\n var shaped = {\n id: edge.id,\n kind: edge.kind,\n source: {\n node: edge.source.node,\n port: edge.source.port\n },\n target: {\n node: edge.target.node,\n port: edge.target.port\n },\n data: canonical(edge.data)\n };\n if (edge.label !== void 0) shaped.label = edge.label;\n return shaped;\n });\n if (doc.viewport) {\n out.viewport = {\n x: round2(doc.viewport.x),\n y: round2(doc.viewport.y),\n zoom: round2(doc.viewport.zoom)\n };\n }\n if (doc.meta) out.meta = canonical(doc.meta);\n return JSON.stringify(out, null, 2);\n}\nfunction fail(collector, path, code, message) {\n collector.problems.push({\n path,\n code,\n message\n });\n}\nfunction isPlainObject(value) {\n return (typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) === \"object\" && value !== null && !Array.isArray(value);\n}\nfunction readXY(value, path, collector) {\n if (!isPlainObject(value)) {\n fail(collector, path, \"not-an-object\", \"expected an object with numeric x and y\");\n return void 0;\n }\n var ok = true;\n for (var _i = 0, _iter = [\n \"x\",\n \"y\"\n ]; _i < _iter.length; _i++) {\n var axis = _iter[_i];\n if (typeof value[axis] !== \"number\" || !Number.isFinite(value[axis])) {\n fail(collector, `${path}.${axis}`, \"not-a-finite-number\", `expected a finite number`);\n ok = false;\n }\n }\n return ok ? {\n x: round2(value.x),\n y: round2(value.y)\n } : void 0;\n}\nfunction readSize(value, path, collector) {\n if (!isPlainObject(value)) {\n fail(collector, path, \"not-an-object\", \"expected an object with numeric width and height\");\n return void 0;\n }\n var ok = true;\n for (var _i = 0, _iter = [\n \"width\",\n \"height\"\n ]; _i < _iter.length; _i++) {\n var axis = _iter[_i];\n if (typeof value[axis] !== \"number\" || !Number.isFinite(value[axis])) {\n fail(collector, `${path}.${axis}`, \"not-a-finite-number\", `expected a finite number`);\n ok = false;\n }\n }\n return ok ? {\n width: round2(value.width),\n height: round2(value.height)\n } : void 0;\n}\nfunction readViewport(value, collector) {\n var xy = readXY(value, \"viewport\", collector);\n var zoom = isPlainObject(value) ? value.zoom : void 0;\n if (typeof zoom !== \"number\" || !Number.isFinite(zoom)) {\n fail(collector, \"viewport.zoom\", \"not-a-finite-number\", \"expected a finite number\");\n return void 0;\n }\n return xy ? {\n ...xy,\n zoom: round2(zoom)\n } : void 0;\n}\nfunction readString(source, key, path, collector) {\n var value = source[key];\n if (typeof value !== \"string\" || value.length === 0) {\n fail(collector, `${path}.${key}`, \"not-a-non-empty-string\", \"expected a non-empty string\");\n return void 0;\n }\n return value;\n}\nfunction readPortRef(value, path, collector) {\n if (!isPlainObject(value)) {\n fail(collector, path, \"not-an-object\", \"expected { node, port }\");\n return void 0;\n }\n var node = readString(value, \"node\", path, collector);\n var port = readString(value, \"port\", path, collector);\n return node !== void 0 && port !== void 0 ? {\n node,\n port\n } : void 0;\n}\nfunction parseDocument(raw, schema) {\n var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n try {\n return parseUnsafe(raw, schema, options);\n } catch (error) {\n return {\n ok: false,\n error: [\n {\n path: \"\",\n code: \"internal-error\",\n message: _instanceof(error, Error) ? error.message : String(error)\n }\n ]\n };\n }\n}\nfunction parseUnsafe(raw, schema, options) {\n var collector = {\n problems: []\n };\n var value = raw;\n if (typeof raw === \"string\") {\n try {\n value = JSON.parse(raw);\n } catch (error) {\n return {\n ok: false,\n error: [\n {\n path: \"\",\n code: \"invalid-json\",\n message: _instanceof(error, Error) ? error.message : \"could not be parsed as JSON\"\n }\n ]\n };\n }\n }\n if (!isPlainObject(value)) {\n return {\n ok: false,\n error: [\n {\n path: \"\",\n code: \"not-an-object\",\n message: \"a document is a JSON object\"\n }\n ]\n };\n }\n if (value.version !== documentVersion) {\n fail(collector, \"version\", \"unsupported-version\", `expected version ${documentVersion}, got ${JSON.stringify(value.version)}`);\n }\n var nodeKinds = new Set(Object.keys(schema.nodes));\n var edgeKinds = new Set(Object.keys(schema.edges));\n var drop = options.dropUnknownKinds === true;\n var nodes = [];\n var nodeIds = /* @__PURE__ */ new Set();\n if (!Array.isArray(value.nodes)) {\n fail(collector, \"nodes\", \"not-an-array\", \"expected an array of nodes\");\n } else {\n value.nodes.forEach(function(entry, index) {\n var path = `nodes[${index}]`;\n if (!isPlainObject(entry)) {\n fail(collector, path, \"not-an-object\", \"expected a node object\");\n return;\n }\n var id = readString(entry, \"id\", path, collector);\n var kind = readString(entry, \"kind\", path, collector);\n var position = readXY(entry.position, `${path}.position`, collector);\n if (kind !== void 0 && !nodeKinds.has(kind)) {\n if (drop) return;\n fail(collector, `${path}.kind`, \"unknown-node-kind\", `the schema has no node kind ${JSON.stringify(kind)}`);\n return;\n }\n if (!(\"data\" in entry)) {\n fail(collector, `${path}.data`, \"missing-field\", \"a node carries its kind's data\");\n }\n if (id !== void 0 && nodeIds.has(id)) {\n fail(collector, `${path}.id`, \"duplicate-id\", `node id ${JSON.stringify(id)} is used twice`);\n }\n var size = \"size\" in entry ? readSize(entry.size, `${path}.size`, collector) : void 0;\n if (id === void 0 || kind === void 0 || position === void 0) return;\n nodeIds.add(id);\n var node = {\n id,\n kind,\n position,\n data: entry.data\n };\n if (size) node.size = size;\n if (typeof entry.parent === \"string\") node.parent = entry.parent;\n if (typeof entry.locked === \"boolean\") node.locked = entry.locked;\n nodes.push(node);\n });\n }\n var edges = [];\n var edgeIds = /* @__PURE__ */ new Set();\n if (!Array.isArray(value.edges)) {\n fail(collector, \"edges\", \"not-an-array\", \"expected an array of edges\");\n } else {\n value.edges.forEach(function(entry, index) {\n var path = `edges[${index}]`;\n if (!isPlainObject(entry)) {\n fail(collector, path, \"not-an-object\", \"expected an edge object\");\n return;\n }\n var id = readString(entry, \"id\", path, collector);\n var kind = readString(entry, \"kind\", path, collector);\n var source = readPortRef(entry.source, `${path}.source`, collector);\n var target = readPortRef(entry.target, `${path}.target`, collector);\n if (kind !== void 0 && !edgeKinds.has(kind)) {\n if (drop) return;\n fail(collector, `${path}.kind`, \"unknown-edge-kind\", `the schema has no edge kind ${JSON.stringify(kind)}`);\n return;\n }\n if (!(\"data\" in entry)) {\n fail(collector, `${path}.data`, \"missing-field\", \"an edge carries its kind's data\");\n }\n if (id !== void 0 && edgeIds.has(id)) {\n fail(collector, `${path}.id`, \"duplicate-id\", `edge id ${JSON.stringify(id)} is used twice`);\n }\n for (var _i = 0, _iter = [\n [\n \"source\",\n source\n ],\n [\n \"target\",\n target\n ]\n ]; _i < _iter.length; _i++) {\n var [end, ref] = _iter[_i];\n if (ref && !nodeIds.has(ref.node)) {\n if (drop) return;\n fail(collector, `${path}.${end}.node`, \"dangling-edge-endpoint\", `no node ${JSON.stringify(ref.node)} in this document`);\n }\n }\n if (id === void 0 || kind === void 0 || source === void 0 || target === void 0) {\n return;\n }\n edgeIds.add(id);\n var edge = {\n id,\n kind,\n source,\n target,\n data: entry.data\n };\n if (typeof entry.label === \"string\") edge.label = entry.label;\n edges.push(edge);\n });\n }\n var viewport = value.viewport === void 0 ? void 0 : readViewport(value.viewport, collector);\n var meta;\n if (value.meta !== void 0) {\n if (!isPlainObject(value.meta)) {\n fail(collector, \"meta\", \"not-an-object\", \"meta is a JSON object\");\n } else {\n meta = value.meta;\n }\n }\n if (collector.problems.length > 0) return {\n ok: false,\n error: collector.problems\n };\n var doc = {\n version: documentVersion,\n nodes,\n edges\n };\n if (viewport) doc.viewport = viewport;\n if (meta) doc.meta = meta;\n return {\n ok: true,\n value: doc\n };\n}\nexport {\n parseDocument,\n serializeDocument\n};\n//# sourceMappingURL=serialize.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_instanceof","left","right","Symbol","hasInstance","_type_of","obj","constructor","documentVersion","round2","value","rounded","Number","toFixed","Object","is","roundXY","x","y","canonical","Array","isArray","map","source","out","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","keys","sort","iterator","_step","next","done","key","err","return","serializeDocument","doc","version","nodes","node","shaped","id","kind","position","data","size","width","height","parent","locked","edges","edge","port","target","label","viewport","zoom","meta","JSON","stringify","fail","collector","path","code","message","problems","push","isPlainObject","readXY","ok","_i","_iter","length","axis","isFinite","readSize","readViewport","xy","readString","readPortRef","parseDocument","raw","schema","options","arguments","parseUnsafe","error","Error","String","parse","nodeKinds","Set","edgeKinds","drop","dropUnknownKinds","nodeIds","forEach","entry","index","has","add","edgeIds"],"sources":["../../../src/model/serialize.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","SizableText","YStack","useResolvedKnobs","hasDomRealm","globalThis","document","DomOnlyStory","param","needs","readInstead","knobProps","gap","panelPadding","children","body","label","opacity","domOnlyStoryDecorator","props","Story"],"sources":["DomOnlyStory.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SizableText, YStack } from \"tamagui\";\nimport { useResolvedKnobs } from \"@multiplatform.one/theme\";\nvar hasDomRealm = typeof globalThis.document !== \"undefined\";\nfunction DomOnlyStory(param) {\n var { needs, readInstead } = param;\n var { knobProps } = useResolvedKnobs();\n return /* @__PURE__ */ _jsxs(YStack, {\n ...knobProps.gap,\n ...knobProps.panelPadding,\n children: [\n /* @__PURE__ */ _jsx(SizableText, {\n ...knobProps.body,\n ...knobProps.label,\n children: `Web only \\u2014 this story ${needs}, and there is no DOM on this side of the bridge.`\n }),\n readInstead ? /* @__PURE__ */ _jsx(SizableText, {\n ...knobProps.body,\n ...knobProps.label,\n opacity: 0.75,\n children: `On device, read ${readInstead} instead.`\n }) : null\n ]\n });\n}\nfunction domOnlyStoryDecorator(props) {\n return function(Story) {\n return hasDomRealm ? /* @__PURE__ */ _jsx(Story, {}) : /* @__PURE__ */ _jsx(DomOnlyStory, {\n ...props\n });\n };\n}\nexport {\n DomOnlyStory,\n domOnlyStoryDecorator,\n hasDomRealm\n};\n//# sourceMappingURL=DomOnlyStory.js.map\n"],"mappings":"AAAA,SAASA,GAAG,IAAIC,IAAI,EAAEC,IAAI,IAAIC,KAAK,QAAQ,mBAAmB;AAC9D,SAASC,WAAW,EAAEC,MAAM,QAAQ,SAAS;AAC7C,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,IAAIC,WAAW,GAAG,OAAOC,UAAU,CAACC,QAAQ,KAAK,WAAW;AAC5D,SAASC,YAAYA,CAACC,KAAK,EAAE;EAC3B,IAAI;IAAEC,KAAK;IAAEC;EAAY,CAAC,GAAGF,KAAK;EAClC,IAAI;IAAEG;EAAU,CAAC,GAAGR,gBAAgB,CAAC,CAAC;EACtC,OAAO,eAAgBH,KAAK,CAACE,MAAM,EAAE;IACnC,GAAGS,SAAS,CAACC,GAAG;IAChB,GAAGD,SAAS,CAACE,YAAY;IACzBC,QAAQ,EAAE,CACR,eAAgBhB,IAAI,CAACG,WAAW,EAAE;MAChC,GAAGU,SAAS,CAACI,IAAI;MACjB,GAAGJ,SAAS,CAACK,KAAK;MAClBF,QAAQ,EAAE,8BAA8BL,KAAK;IAC/C,CAAC,CAAC,EACFC,WAAW,GAAG,eAAgBZ,IAAI,CAACG,WAAW,EAAE;MAC9C,GAAGU,SAAS,CAACI,IAAI;MACjB,GAAGJ,SAAS,CAACK,KAAK;MAClBC,OAAO,EAAE,IAAI;MACbH,QAAQ,EAAE,mBAAmBJ,WAAW;IAC1C,CAAC,CAAC,GAAG,IAAI;EAEb,CAAC,CAAC;AACJ;AACA,SAASQ,qBAAqBA,CAACC,KAAK,EAAE;EACpC,OAAO,UAASC,KAAK,EAAE;IACrB,OAAOhB,WAAW,GAAG,eAAgBN,IAAI,CAACsB,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,eAAgBtB,IAAI,CAACS,YAAY,EAAE;MACxF,GAAGY;IACL,CAAC,CAAC;EACJ,CAAC;AACH;AACA,SACEZ,YAAY,EACZW,qBAAqB,EACrBd,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","SizableText","YStack","useResolvedKnobs","hasDomRealm","globalThis","document","DomOnlyStory","param","needs","readInstead","knobProps","gap","panelPadding","children","body","label"],"sources":["../../../src/native/DomOnlyStory.tsx"],"sourcesContent":[null],"mappings":"AA0BA,SAASA,GAAA,IAAAC,IAAA,EAAaC,IAAA,IAAAC,KAAA,QAAc;AACpC,SAASC,WAAA,EAAAC,MAAA,QAAwB;AAqB7B,SACEC,gBADF;AAlBG,IAAAC,WAAM,UAAcC,UAAO,CAAAC,QAAW,gBAAa;AAenD,SAASC,aAAaC,KAAE;EAC7B;IAAMC,KAAE;IAAAC;EAAc,IAAAF,KAAA;EACtB;IAAAG;EACE,IAAAR,gBAAC,EAAQ;EACP,sBAACH,KAAA,CAAAE,MAAA,EAAa;IAGb,GAAAS,SAAA,CAAAC,GACC;IAGE,GACND,SAAA,CAAAE,YAAA;IAEJC,QAAA,GASO,eAAShB,IAAA,CAAAG,WAAgD;MAC9D,GAAQU,SACN,CAAAI,IAAA;MACJ,GAAAJ,SAAA,CAAAK,KAAA","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":[]}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useResolvedKnobs } from "@multiplatform.one/theme";
3
- import { Button, XStack } from "tamagui";
2
+ import { pressTargetStyle, useResolvedKnobs } from "@multiplatform.one/theme";
3
+ import { Button } from "@multiplatform.one/forms";
4
+ import { XStack, isWeb } from "tamagui";
4
5
  var modeLabels = {
5
6
  pan: "Pan",
6
7
  select: "Select"
@@ -30,18 +31,27 @@ function GraphToolbar(param) {
30
31
  ...knobProps.gap,
31
32
  ...knobProps.panelPadding,
32
33
  ...knobProps.elevatedSurface,
34
+ flexWrap: "wrap",
35
+ maxWidth: "100%",
36
+ minWidth: 0,
37
+ flexShrink: 1,
33
38
  children: [modes.map(function (candidate) {
34
39
  var active = candidate === mode;
35
40
  return /* @__PURE__ */_jsx(Button, {
36
41
  "aria-label": `${modeLabels[candidate]} mode`,
37
- "aria-pressed": active,
42
+ ...(isWeb ? {
43
+ "aria-pressed": active
44
+ } : {
45
+ "aria-selected": active
46
+ }),
47
+ selected: active,
38
48
  chromeless: !active,
39
49
  disabled,
40
50
  onPress: function onPress() {
41
51
  return onModeChange(candidate);
42
52
  },
43
53
  size: knobProps.sizeToken,
44
- ...(active ? knobProps.textWeight : {}),
54
+ ...pressTargetStyle(),
45
55
  children: modeLabels[candidate]
46
56
  }, candidate);
47
57
  }), onFitView ? /* @__PURE__ */_jsx(Button, {
@@ -50,6 +60,7 @@ function GraphToolbar(param) {
50
60
  disabled,
51
61
  onPress: onFitView,
52
62
  size: knobProps.sizeToken,
63
+ ...pressTargetStyle(),
53
64
  children: "Fit"
54
65
  }) : null, onTidy ? /* @__PURE__ */_jsx(Button, {
55
66
  "aria-label": "Tidy the graph",
@@ -57,6 +68,7 @@ function GraphToolbar(param) {
57
68
  disabled: disabled || busy,
58
69
  onPress: onTidy,
59
70
  size: knobProps.sizeToken,
71
+ ...pressTargetStyle(),
60
72
  children: busy ? "Tidying\u2026" : "Tidy"
61
73
  }) : null, onUndo ? /* @__PURE__ */_jsx(Button, {
62
74
  "aria-label": "Undo",
@@ -64,6 +76,7 @@ function GraphToolbar(param) {
64
76
  disabled: disabled || !canUndo,
65
77
  onPress: onUndo,
66
78
  size: knobProps.sizeToken,
79
+ ...pressTargetStyle(),
67
80
  children: "Undo"
68
81
  }) : null, onRedo ? /* @__PURE__ */_jsx(Button, {
69
82
  "aria-label": "Redo",
@@ -71,6 +84,7 @@ function GraphToolbar(param) {
71
84
  disabled: disabled || !canRedo,
72
85
  onPress: onRedo,
73
86
  size: knobProps.sizeToken,
87
+ ...pressTargetStyle(),
74
88
  children: "Redo"
75
89
  }) : null]
76
90
  });