@vessel-dsp/core 0.6.3 → 0.6.5

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 (182) hide show
  1. package/README.md +11 -3
  2. package/dist/editor/commands.d.ts +13 -13
  3. package/dist/editor/commands.d.ts.map +1 -1
  4. package/dist/editor/commands.js +44 -29
  5. package/dist/editor/commands.js.map +1 -1
  6. package/dist/editor/factory.d.ts +1 -1
  7. package/dist/editor/factory.d.ts.map +1 -1
  8. package/dist/editor/factory.js +51 -51
  9. package/dist/editor/factory.js.map +1 -1
  10. package/dist/editor/history.d.ts +7 -7
  11. package/dist/editor/history.d.ts.map +1 -1
  12. package/dist/editor/history.js +20 -12
  13. package/dist/editor/history.js.map +1 -1
  14. package/dist/editor/index.d.ts +8 -8
  15. package/dist/editor/index.d.ts.map +1 -1
  16. package/dist/editor/index.js +4 -4
  17. package/dist/editor/index.js.map +1 -1
  18. package/dist/editor/layout.d.ts +1 -1
  19. package/dist/editor/layout.d.ts.map +1 -1
  20. package/dist/editor/layout.js +11 -6
  21. package/dist/editor/layout.js.map +1 -1
  22. package/dist/formats/circuit-json/serializer.d.ts +15 -15
  23. package/dist/formats/circuit-json/serializer.d.ts.map +1 -1
  24. package/dist/formats/circuit-json/serializer.js +486 -394
  25. package/dist/formats/circuit-json/serializer.js.map +1 -1
  26. package/dist/formats/document.d.ts +6 -6
  27. package/dist/formats/document.d.ts.map +1 -1
  28. package/dist/formats/document.js +112 -92
  29. package/dist/formats/document.js.map +1 -1
  30. package/dist/formats/interchange/parser.d.ts +1 -1
  31. package/dist/formats/interchange/parser.d.ts.map +1 -1
  32. package/dist/formats/interchange/parser.js +483 -286
  33. package/dist/formats/interchange/parser.js.map +1 -1
  34. package/dist/formats/interchange/serializer.d.ts +1 -1
  35. package/dist/formats/interchange/serializer.d.ts.map +1 -1
  36. package/dist/formats/interchange/serializer.js +59 -28
  37. package/dist/formats/interchange/serializer.js.map +1 -1
  38. package/dist/formats/ltspice/catalog.d.ts +1 -1
  39. package/dist/formats/ltspice/catalog.d.ts.map +1 -1
  40. package/dist/formats/ltspice/catalog.js +150 -48
  41. package/dist/formats/ltspice/catalog.js.map +1 -1
  42. package/dist/formats/ltspice/encoding.js +12 -40
  43. package/dist/formats/ltspice/encoding.js.map +1 -1
  44. package/dist/formats/ltspice/parser.d.ts +1 -1
  45. package/dist/formats/ltspice/parser.d.ts.map +1 -1
  46. package/dist/formats/ltspice/parser.js +122 -75
  47. package/dist/formats/ltspice/parser.js.map +1 -1
  48. package/dist/formats/ltspice/serializer.d.ts +1 -1
  49. package/dist/formats/ltspice/serializer.d.ts.map +1 -1
  50. package/dist/formats/ltspice/serializer.js +69 -47
  51. package/dist/formats/ltspice/serializer.js.map +1 -1
  52. package/dist/formats/schx/catalog.d.ts +1 -1
  53. package/dist/formats/schx/catalog.d.ts.map +1 -1
  54. package/dist/formats/schx/catalog.js +499 -254
  55. package/dist/formats/schx/catalog.js.map +1 -1
  56. package/dist/formats/schx/parser.d.ts +1 -1
  57. package/dist/formats/schx/parser.d.ts.map +1 -1
  58. package/dist/formats/schx/parser.js +40 -38
  59. package/dist/formats/schx/parser.js.map +1 -1
  60. package/dist/formats/schx/runtime-descriptors.d.ts +1 -1
  61. package/dist/formats/schx/runtime-descriptors.d.ts.map +1 -1
  62. package/dist/formats/schx/runtime-descriptors.js +239 -201
  63. package/dist/formats/schx/runtime-descriptors.js.map +1 -1
  64. package/dist/formats/schx/serializer.d.ts +2 -2
  65. package/dist/formats/schx/serializer.d.ts.map +1 -1
  66. package/dist/formats/schx/serializer.js +106 -106
  67. package/dist/formats/schx/serializer.js.map +1 -1
  68. package/dist/formats/schx/transforms.d.ts +1 -1
  69. package/dist/formats/schx/transforms.d.ts.map +1 -1
  70. package/dist/formats/schx/transforms.js +16 -8
  71. package/dist/formats/schx/transforms.js.map +1 -1
  72. package/dist/formats/spice/parser.d.ts +1 -1
  73. package/dist/formats/spice/parser.d.ts.map +1 -1
  74. package/dist/formats/spice/parser.js +105 -56
  75. package/dist/formats/spice/parser.js.map +1 -1
  76. package/dist/formats/spice/serializer.d.ts +1 -1
  77. package/dist/formats/spice/serializer.js +14 -12
  78. package/dist/formats/spice/serializer.js.map +1 -1
  79. package/dist/index.d.ts +47 -46
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +32 -31
  82. package/dist/index.js.map +1 -1
  83. package/dist/model/connectivity.d.ts +1 -1
  84. package/dist/model/connectivity.d.ts.map +1 -1
  85. package/dist/model/connectivity.js +22 -7
  86. package/dist/model/connectivity.js.map +1 -1
  87. package/dist/model/netlist.d.ts +3 -3
  88. package/dist/model/netlist.d.ts.map +1 -1
  89. package/dist/model/netlist.js +117 -100
  90. package/dist/model/netlist.js.map +1 -1
  91. package/dist/model/properties.d.ts +1 -1
  92. package/dist/model/properties.d.ts.map +1 -1
  93. package/dist/model/properties.js +16 -16
  94. package/dist/model/properties.js.map +1 -1
  95. package/dist/model/quantity.d.ts +1 -1
  96. package/dist/model/quantity.d.ts.map +1 -1
  97. package/dist/model/quantity.js +35 -35
  98. package/dist/model/quantity.js.map +1 -1
  99. package/dist/model/types.d.ts +72 -37
  100. package/dist/model/types.d.ts.map +1 -1
  101. package/dist/model/types.js +1 -1
  102. package/dist/model/types.js.map +1 -1
  103. package/dist/model/validation.d.ts +5 -5
  104. package/dist/model/validation.d.ts.map +1 -1
  105. package/dist/model/validation.js +763 -315
  106. package/dist/model/validation.js.map +1 -1
  107. package/dist/model/wires.d.ts +1 -1
  108. package/dist/model/wires.d.ts.map +1 -1
  109. package/dist/model/wires.js +4 -1
  110. package/dist/model/wires.js.map +1 -1
  111. package/dist/panel/extract.d.ts +2 -2
  112. package/dist/panel/extract.d.ts.map +1 -1
  113. package/dist/panel/extract.js +376 -216
  114. package/dist/panel/extract.js.map +1 -1
  115. package/dist/panel/index.d.ts +7 -5
  116. package/dist/panel/index.d.ts.map +1 -1
  117. package/dist/panel/index.js +5 -4
  118. package/dist/panel/index.js.map +1 -1
  119. package/dist/panel/knobs.d.ts +4 -4
  120. package/dist/panel/knobs.d.ts.map +1 -1
  121. package/dist/panel/knobs.js +1 -1
  122. package/dist/panel/knobs.js.map +1 -1
  123. package/dist/panel/placement.d.ts +27 -0
  124. package/dist/panel/placement.d.ts.map +1 -0
  125. package/dist/panel/placement.js +91 -0
  126. package/dist/panel/placement.js.map +1 -0
  127. package/dist/panel/protocol.d.ts +1 -1
  128. package/dist/panel/protocol.d.ts.map +1 -1
  129. package/dist/panel/protocol.js +32 -23
  130. package/dist/panel/protocol.js.map +1 -1
  131. package/dist/panel/types.d.ts +26 -18
  132. package/dist/panel/types.d.ts.map +1 -1
  133. package/dist/panel/types.js.map +1 -1
  134. package/dist/preview/bounds.d.ts +1 -1
  135. package/dist/preview/bounds.d.ts.map +1 -1
  136. package/dist/preview/bounds.js +3 -3
  137. package/dist/preview/bounds.js.map +1 -1
  138. package/dist/preview/box-layout.d.ts +2 -2
  139. package/dist/preview/box-layout.js.map +1 -1
  140. package/dist/preview/colors.d.ts +1 -1
  141. package/dist/preview/colors.js +35 -35
  142. package/dist/preview/colors.js.map +1 -1
  143. package/dist/preview/hanging.d.ts +1 -1
  144. package/dist/preview/hanging.d.ts.map +1 -1
  145. package/dist/preview/hanging.js +4 -1
  146. package/dist/preview/hanging.js.map +1 -1
  147. package/dist/preview/junctions.d.ts +1 -1
  148. package/dist/preview/junctions.d.ts.map +1 -1
  149. package/dist/preview/junctions.js.map +1 -1
  150. package/dist/preview/label-layout.d.ts.map +1 -1
  151. package/dist/preview/label-layout.js +4 -4
  152. package/dist/preview/label-layout.js.map +1 -1
  153. package/dist/preview/ports.d.ts +1 -1
  154. package/dist/preview/ports.d.ts.map +1 -1
  155. package/dist/preview/ports.js +2 -1
  156. package/dist/preview/ports.js.map +1 -1
  157. package/dist/preview/renderable-wires.d.ts +1 -1
  158. package/dist/preview/renderable-wires.d.ts.map +1 -1
  159. package/dist/preview/renderable-wires.js +3 -1
  160. package/dist/preview/renderable-wires.js.map +1 -1
  161. package/dist/preview/routing.d.ts +1 -1
  162. package/dist/preview/routing.js +1 -1
  163. package/dist/preview/routing.js.map +1 -1
  164. package/dist/preview/snap.d.ts +1 -1
  165. package/dist/preview/snap.d.ts.map +1 -1
  166. package/dist/preview/snap.js +11 -3
  167. package/dist/preview/snap.js.map +1 -1
  168. package/dist/preview/symbols/svg-content.d.ts.map +1 -1
  169. package/dist/preview/symbols/svg-content.js +200 -50
  170. package/dist/preview/symbols/svg-content.js.map +1 -1
  171. package/dist/preview/symbols.d.ts +2 -2
  172. package/dist/preview/symbols.d.ts.map +1 -1
  173. package/dist/preview/symbols.js +100 -97
  174. package/dist/preview/symbols.js.map +1 -1
  175. package/dist/preview/wire-chains.d.ts +1 -1
  176. package/dist/preview/wire-chains.d.ts.map +1 -1
  177. package/dist/preview/wire-chains.js.map +1 -1
  178. package/dist/profiles.d.ts +600 -0
  179. package/dist/profiles.d.ts.map +1 -0
  180. package/dist/profiles.js +118 -0
  181. package/dist/profiles.js.map +1 -0
  182. package/package.json +54 -54
package/dist/index.js CHANGED
@@ -1,32 +1,33 @@
1
- export const VERSION = '0.6.3';
2
- export { EMPTY_DOCUMENT } from './model/types.js';
3
- export { isParsedQuantity, isPropertyObject, propertyBooleanValue, propertyNumericValue, propertyQuantityValue, propertyStringValue, propertyValueForSourceAttribute, } from './model/properties.js';
4
- export { parseQuantity } from './model/quantity.js';
5
- export { getPinNode, pinKey, resolveConnectivity } from './model/connectivity.js';
6
- export { getSpiceLetter, getSpiceNodeOrder, kindForSpiceLetter, toNetlistView } from './model/netlist.js';
7
- export { getRulesForKind, hasErrors, validateComponent, validateDocument } from './model/validation.js';
8
- export { parseSchx } from './formats/schx/parser.js';
9
- export { serializeSchx } from './formats/schx/serializer.js';
10
- export { parseSpiceNetlist } from './formats/spice/parser.js';
11
- export { serializeSpiceNetlist } from './formats/spice/serializer.js';
12
- export { parseInterchangeYaml } from './formats/interchange/parser.js';
13
- export { serializeInterchangeYaml } from './formats/interchange/serializer.js';
14
- export { detectCircuitFormat, parseCircuitDocument, vdspFileExtension, isVdspFilename, detectCircuitDocumentFileFormat, vdspFilenameFromName, parseVdspCircuitDocument, validateVdspCircuitDocumentSchema, parseCircuitDocumentFile, serializeCircuitDocumentFile, convertCircuitDocumentFile, convertCircuitDocumentFileWithReport, serializeVdspCircuitDocument, } from './formats/document.js';
15
- export { parseLtspiceAsc } from './formats/ltspice/parser.js';
16
- export { serializeLtspiceAsc } from './formats/ltspice/serializer.js';
17
- export { parseCircuitJsonDocument, serializeCircuitJsonDocument, validateCircuitJsonDocument, } from './formats/circuit-json/serializer.js';
18
- export { applyDocumentCommand, applyEditorCommand, buildComponent, canRedo, canUndo, createEditorState, resetEditorState, tidyDocumentLayout, } from './editor/index.js';
19
- export { computeComponentBox } from './preview/box-layout.js';
20
- export { computeDocumentBounds, viewBoxString } from './preview/bounds.js';
21
- export { colorForKind } from './preview/colors.js';
22
- export { symbolFor, COMPONENT_KINDS } from './preview/symbols.js';
23
- export { findHangingEndpoints } from './preview/hanging.js';
24
- export { findJunctions } from './preview/junctions.js';
25
- export { computeLabelTextBoxLayout, shouldRenderLabelTextBox } from './preview/label-layout.js';
26
- export { collectPorts, findNearestPort, findNearestWireBodyHit } from './preview/ports.js';
27
- export { buildRenderableWires } from './preview/renderable-wires.js';
28
- export { orthogonalPath, pointsToSvg } from './preview/routing.js';
29
- export { findSnap } from './preview/snap.js';
30
- export { findChainCorners, findWireChain } from './preview/wire-chains.js';
31
- export { applyControlMessage, defaultControlState, extractDeviceInterface, extractPanel, isKnobPositionOnStep, isKnob, isLed, isSlider, isSwitch, knobStepSize, nearestKnobStep, PANEL_PROTOCOL_VERSION, snapKnobPosition, validateMessage, } from './panel/index.js';
1
+ export const VERSION = "0.6.5";
2
+ export { applyDocumentCommand, applyEditorCommand, buildComponent, canRedo, canUndo, createEditorState, resetEditorState, tidyDocumentLayout, } from "./editor/index.js";
3
+ export { parseCircuitJsonDocument, serializeCircuitJsonDocument, validateCircuitJsonDocument, } from "./formats/circuit-json/serializer.js";
4
+ export { convertCircuitDocumentFile, convertCircuitDocumentFileWithReport, detectCircuitDocumentFileFormat, detectCircuitFormat, isVdspFilename, parseCircuitDocument, parseCircuitDocumentFile, parseVdspCircuitDocument, serializeCircuitDocumentFile, serializeVdspCircuitDocument, validateVdspCircuitDocumentSchema, vdspFileExtension, vdspFilenameFromName, } from "./formats/document.js";
5
+ export { parseInterchangeYaml } from "./formats/interchange/parser.js";
6
+ export { serializeInterchangeYaml } from "./formats/interchange/serializer.js";
7
+ export { parseLtspiceAsc } from "./formats/ltspice/parser.js";
8
+ export { serializeLtspiceAsc } from "./formats/ltspice/serializer.js";
9
+ export { parseSchx } from "./formats/schx/parser.js";
10
+ export { serializeSchx } from "./formats/schx/serializer.js";
11
+ export { parseSpiceNetlist } from "./formats/spice/parser.js";
12
+ export { serializeSpiceNetlist } from "./formats/spice/serializer.js";
13
+ export { getPinNode, pinKey, resolveConnectivity } from "./model/connectivity.js";
14
+ export { getSpiceLetter, getSpiceNodeOrder, kindForSpiceLetter, toNetlistView, } from "./model/netlist.js";
15
+ export { isParsedQuantity, isPropertyObject, propertyBooleanValue, propertyNumericValue, propertyQuantityValue, propertyStringValue, propertyValueForSourceAttribute, } from "./model/properties.js";
16
+ export { parseQuantity } from "./model/quantity.js";
17
+ export { EMPTY_DOCUMENT } from "./model/types.js";
18
+ export { getRulesForKind, hasErrors, validateComponent, validateDocument, } from "./model/validation.js";
19
+ export { ampAppearanceProfileSchema, ampControlKindSchema, ampControlPanelProfileSchema, ampControlProfileSchema, ampProfileSchema, cabinetAppearanceProfileSchema, cabinetProfileSchema, profileDimensionsSchema, validateAmpProfile, validateCabinetProfile, } from "./profiles.js";
20
+ export { applyControlMessage, defaultControlState, extractDeviceInterface, extractPanel, isKnob, isKnobPositionOnStep, isLed, isSlider, isSwitch, knobStepSize, movePanelElement, nearestKnobStep, PANEL_PROTOCOL_VERSION, snapKnobPosition, validateMessage, } from "./panel/index.js";
21
+ export { computeDocumentBounds, viewBoxString } from "./preview/bounds.js";
22
+ export { computeComponentBox } from "./preview/box-layout.js";
23
+ export { colorForKind } from "./preview/colors.js";
24
+ export { findHangingEndpoints } from "./preview/hanging.js";
25
+ export { findJunctions } from "./preview/junctions.js";
26
+ export { computeLabelTextBoxLayout, shouldRenderLabelTextBox, } from "./preview/label-layout.js";
27
+ export { collectPorts, findNearestPort, findNearestWireBodyHit, } from "./preview/ports.js";
28
+ export { buildRenderableWires } from "./preview/renderable-wires.js";
29
+ export { orthogonalPath, pointsToSvg } from "./preview/routing.js";
30
+ export { findSnap } from "./preview/snap.js";
31
+ export { COMPONENT_KINDS, symbolFor } from "./preview/symbols.js";
32
+ export { findChainCorners, findWireChain } from "./preview/wire-chains.js";
32
33
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CircuitDocument } from './types';
1
+ import type { CircuitDocument } from "./types";
2
2
  export type NodeId = number;
3
3
  export type PinRef = Readonly<{
4
4
  componentId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"connectivity.d.ts","sourceRoot":"","sources":["../../src/model/connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAS,MAAM,SAAS,CAAC;AAEtD,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC;AAE5B,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAChC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACpD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC,CAAC;AAEH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED,wBAAgB,UAAU,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEtF;AA0ID,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,eAAe,GAAG,YAAY,CA8EtE"}
1
+ {"version":3,"file":"connectivity.d.ts","sourceRoot":"","sources":["../../src/model/connectivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAS,MAAM,SAAS,CAAC;AAEtD,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC;AAE5B,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IACnC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACpD,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CAClB,CAAC,CAAC;AAEH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED,wBAAgB,UAAU,CACzB,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,MAAM,GACT,MAAM,GAAG,SAAS,CAEpB;AA+JD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,eAAe,GAAG,YAAY,CAiFtE"}
@@ -52,7 +52,8 @@ function unionTJunctions(uf, doc) {
52
52
  for (const wire of doc.wires) {
53
53
  const a = wire.endpoints[0];
54
54
  const b = wire.endpoints[1];
55
- if ((point.x === a.x && point.y === a.y) || (point.x === b.x && point.y === b.y)) {
55
+ if ((point.x === a.x && point.y === a.y) ||
56
+ (point.x === b.x && point.y === b.y)) {
56
57
  continue;
57
58
  }
58
59
  if (pointOnSegment(point, a, b)) {
@@ -68,12 +69,22 @@ function computeLeadAxis(terminal, origin) {
68
69
  return null;
69
70
  }
70
71
  if (Math.abs(dy) >= Math.abs(dx)) {
71
- return { x: terminal.x, y: terminal.y, orientation: 'vertical', reach: origin.y };
72
+ return {
73
+ x: terminal.x,
74
+ y: terminal.y,
75
+ orientation: "vertical",
76
+ reach: origin.y,
77
+ };
72
78
  }
73
- return { x: terminal.x, y: terminal.y, orientation: 'horizontal', reach: origin.x };
79
+ return {
80
+ x: terminal.x,
81
+ y: terminal.y,
82
+ orientation: "horizontal",
83
+ reach: origin.x,
84
+ };
74
85
  }
75
86
  function pointOnLeadAxis(p, lead) {
76
- if (lead.orientation === 'vertical') {
87
+ if (lead.orientation === "vertical") {
77
88
  if (p.x !== lead.x)
78
89
  return false;
79
90
  const lo = Math.min(lead.y, lead.reach);
@@ -96,7 +107,8 @@ function unionLeadTaps(uf, doc) {
96
107
  const terminalKey = pointKey(terminal.position);
97
108
  for (const wire of doc.wires) {
98
109
  for (const endpoint of wire.endpoints) {
99
- if (endpoint.x === terminal.position.x && endpoint.y === terminal.position.y) {
110
+ if (endpoint.x === terminal.position.x &&
111
+ endpoint.y === terminal.position.y) {
100
112
  continue;
101
113
  }
102
114
  if (pointOnLeadAxis(endpoint, lead)) {
@@ -134,11 +146,14 @@ export function resolveConnectivity(doc) {
134
146
  const pinsByPoint = new Map();
135
147
  const groundPoints = [];
136
148
  for (const component of doc.components) {
137
- const isGround = component.kind === 'ground';
149
+ const isGround = component.kind === "ground";
138
150
  for (const terminal of component.terminals) {
139
151
  const pk = pointKey(terminal.position);
140
152
  uf.add(pk);
141
- const pin = { componentId: component.id, terminalName: terminal.name };
153
+ const pin = {
154
+ componentId: component.id,
155
+ terminalName: terminal.name,
156
+ };
142
157
  const existing = pinsByPoint.get(pk);
143
158
  if (existing) {
144
159
  existing.push(pin);
@@ -1 +1 @@
1
- {"version":3,"file":"connectivity.js","sourceRoot":"","sources":["../../src/model/connectivity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connectivity.js","sourceRoot":"","sources":["../../src/model/connectivity.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { type Connectivity, type NodeId } from './connectivity';
2
- import type { CircuitDocument, ComponentKind, ParsedQuantity } from './types';
3
- export type SpiceLetter = 'R' | 'C' | 'L' | 'D' | 'Q' | 'J' | 'M' | 'V' | 'I';
1
+ import { type Connectivity, type NodeId } from "./connectivity";
2
+ import type { CircuitDocument, ComponentKind, ParsedQuantity } from "./types";
3
+ export type SpiceLetter = "R" | "C" | "L" | "D" | "Q" | "J" | "M" | "V" | "I";
4
4
  export type NetlistComponent = Readonly<{
5
5
  id: string;
6
6
  kind: ComponentKind;
@@ -1 +1 @@
1
- {"version":3,"file":"netlist.d.ts","sourceRoot":"","sources":["../../src/model/netlist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,KAAK,YAAY,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAGjG,OAAO,KAAK,EAAE,eAAe,EAAa,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzF,MAAM,MAAM,WAAW,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC5C,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IAC/B,UAAU,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/B,CAAC,CAAC;AAwGH,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,GAAG,WAAW,GAAG,IAAI,CAEtE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,CAE/E;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,aAAa,CAYrE;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,WAAW,CAiE3F"}
1
+ {"version":3,"file":"netlist.d.ts","sourceRoot":"","sources":["../../src/model/netlist.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EACX,eAAe,EAEf,aAAa,EACb,cAAc,EACd,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACzC,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IAClC,UAAU,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5B,CAAC,CAAC;AA0GH,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,GAAG,WAAW,GAAG,IAAI,CAEtE;AAED,wBAAgB,iBAAiB,CAChC,IAAI,EAAE,aAAa,GACjB,SAAS,MAAM,EAAE,GAAG,IAAI,CAE1B;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,aAAa,CAqBrE;AAED,wBAAgB,aAAa,CAC5B,GAAG,EAAE,eAAe,EACpB,WAAW,CAAC,EAAE,YAAY,GACxB,WAAW,CA0Eb"}
@@ -1,99 +1,99 @@
1
- import { getPinNode, resolveConnectivity } from './connectivity.js';
2
- import { parseQuantity } from './quantity.js';
3
- import { propertyQuantityValue, propertyStringValue } from './properties.js';
1
+ import { getPinNode, resolveConnectivity, } from "./connectivity.js";
2
+ import { parseQuantity } from "./quantity.js";
3
+ import { propertyQuantityValue, propertyStringValue } from "./properties.js";
4
4
  const SPICE_LETTER = {
5
- resistor: 'R',
6
- 'variable-resistor': 'R',
7
- capacitor: 'C',
8
- inductor: 'L',
9
- diode: 'D',
10
- led: 'D',
11
- bjt: 'Q',
12
- jfet: 'J',
13
- mosfet: 'M',
14
- 'voltage-source': 'V',
15
- 'current-source': 'I',
16
- battery: 'V',
17
- rail: 'V',
5
+ resistor: "R",
6
+ "variable-resistor": "R",
7
+ capacitor: "C",
8
+ inductor: "L",
9
+ diode: "D",
10
+ led: "D",
11
+ bjt: "Q",
12
+ jfet: "J",
13
+ mosfet: "M",
14
+ "voltage-source": "V",
15
+ "current-source": "I",
16
+ battery: "V",
17
+ rail: "V",
18
18
  };
19
19
  const NODE_ORDER = {
20
- resistor: ['a', 'b'],
21
- 'variable-resistor': ['a', 'b'],
22
- capacitor: ['a', 'b'],
23
- inductor: ['a', 'b'],
24
- diode: ['anode', 'cathode'],
25
- led: ['anode', 'cathode'],
26
- 'tube-diode': ['anode', 'cathode'],
27
- bjt: ['collector', 'base', 'emitter'],
28
- jfet: ['drain', 'gate', 'source'],
29
- mosfet: ['drain', 'gate', 'source', 'body'],
30
- 'voltage-source': ['+', '-'],
31
- 'current-source': ['+', '-'],
32
- battery: ['+', '-'],
20
+ resistor: ["a", "b"],
21
+ "variable-resistor": ["a", "b"],
22
+ capacitor: ["a", "b"],
23
+ inductor: ["a", "b"],
24
+ diode: ["anode", "cathode"],
25
+ led: ["anode", "cathode"],
26
+ "tube-diode": ["anode", "cathode"],
27
+ bjt: ["collector", "base", "emitter"],
28
+ jfet: ["drain", "gate", "source"],
29
+ mosfet: ["drain", "gate", "source", "body"],
30
+ "voltage-source": ["+", "-"],
31
+ "current-source": ["+", "-"],
32
+ battery: ["+", "-"],
33
33
  // Rails have a single terminal "t" that's hot; the other side is implicit ground.
34
34
  // toNetlistView appends groundNodeId after node resolution to produce a SPICE-shaped 2-node row.
35
- rail: ['t'],
36
- opamp: ['vin+', 'vin-', 'vout', 'vcc', 'vee'],
37
- triode: ['plate', 'grid', 'cathode'],
38
- pentode: ['plate', 'screen', 'grid', 'cathode', 'suppressor'],
35
+ rail: ["t"],
36
+ opamp: ["vin+", "vin-", "vout", "vcc", "vee"],
37
+ triode: ["plate", "grid", "cathode"],
38
+ pentode: ["plate", "screen", "grid", "cathode", "suppressor"],
39
39
  };
40
40
  const VALUE_PROPERTY = {
41
- resistor: 'R',
42
- 'variable-resistor': 'R',
43
- capacitor: 'C',
44
- inductor: 'L',
45
- 'voltage-source': 'V',
46
- 'current-source': 'I',
47
- battery: 'V',
48
- rail: 'V',
41
+ resistor: "R",
42
+ "variable-resistor": "R",
43
+ capacitor: "C",
44
+ inductor: "L",
45
+ "voltage-source": "V",
46
+ "current-source": "I",
47
+ battery: "V",
48
+ rail: "V",
49
49
  };
50
50
  // Source-format aliases for the value property (e.g. LiveSPICE stores R as "Resistance").
51
51
  // Keep in sync with the alias lists in src/model/validation.ts until both fold into the catalog.
52
52
  const VALUE_PROPERTY_ALIASES = {
53
- resistor: ['Resistance', 'resistance'],
54
- 'variable-resistor': ['Resistance', 'resistance'],
55
- capacitor: ['Capacitance', 'capacitance'],
56
- inductor: ['Inductance', 'inductance'],
57
- 'voltage-source': ['Voltage', 'voltage'],
58
- 'current-source': ['Current', 'current'],
59
- battery: ['Voltage', 'voltage'],
60
- rail: ['Voltage', 'voltage'],
53
+ resistor: ["Resistance", "resistance"],
54
+ "variable-resistor": ["Resistance", "resistance"],
55
+ capacitor: ["Capacitance", "capacitance"],
56
+ inductor: ["Inductance", "inductance"],
57
+ "voltage-source": ["Voltage", "voltage"],
58
+ "current-source": ["Current", "current"],
59
+ battery: ["Voltage", "voltage"],
60
+ rail: ["Voltage", "voltage"],
61
61
  };
62
62
  const REQUIRES_VALUE = new Set([
63
- 'resistor',
64
- 'capacitor',
65
- 'inductor',
66
- 'voltage-source',
67
- 'current-source',
68
- 'battery',
69
- 'rail',
63
+ "resistor",
64
+ "capacitor",
65
+ "inductor",
66
+ "voltage-source",
67
+ "current-source",
68
+ "battery",
69
+ "rail",
70
70
  ]);
71
71
  const HAS_MODEL = new Set([
72
- 'diode',
73
- 'led',
74
- 'bjt',
75
- 'jfet',
76
- 'mosfet',
77
- 'opamp',
78
- 'triode',
79
- 'pentode',
80
- 'tube-diode',
72
+ "diode",
73
+ "led",
74
+ "bjt",
75
+ "jfet",
76
+ "mosfet",
77
+ "opamp",
78
+ "triode",
79
+ "pentode",
80
+ "tube-diode",
81
81
  ]);
82
82
  const SKIP_KINDS = new Set([
83
- 'ground',
84
- 'label',
85
- 'named-wire',
86
- 'port',
87
- 'jack',
83
+ "ground",
84
+ "label",
85
+ "named-wire",
86
+ "port",
87
+ "jack",
88
88
  ]);
89
89
  const MODEL_PROPERTY_NAMES = [
90
- 'model',
91
- 'Model',
92
- 'modelName',
93
- 'ModelName',
94
- 'partNumber',
95
- 'PartNumber',
96
- 'Type',
90
+ "model",
91
+ "Model",
92
+ "modelName",
93
+ "ModelName",
94
+ "partNumber",
95
+ "PartNumber",
96
+ "Type",
97
97
  ];
98
98
  export function getSpiceLetter(kind) {
99
99
  return SPICE_LETTER[kind] ?? null;
@@ -103,15 +103,24 @@ export function getSpiceNodeOrder(kind) {
103
103
  }
104
104
  export function kindForSpiceLetter(letter) {
105
105
  switch (letter) {
106
- case 'R': return 'resistor';
107
- case 'C': return 'capacitor';
108
- case 'L': return 'inductor';
109
- case 'D': return 'diode';
110
- case 'Q': return 'bjt';
111
- case 'J': return 'jfet';
112
- case 'M': return 'mosfet';
113
- case 'V': return 'voltage-source';
114
- case 'I': return 'current-source';
106
+ case "R":
107
+ return "resistor";
108
+ case "C":
109
+ return "capacitor";
110
+ case "L":
111
+ return "inductor";
112
+ case "D":
113
+ return "diode";
114
+ case "Q":
115
+ return "bjt";
116
+ case "J":
117
+ return "jfet";
118
+ case "M":
119
+ return "mosfet";
120
+ case "V":
121
+ return "voltage-source";
122
+ case "I":
123
+ return "current-source";
115
124
  }
116
125
  }
117
126
  export function toNetlistView(doc, precomputed) {
@@ -122,8 +131,8 @@ export function toNetlistView(doc, precomputed) {
122
131
  if (SKIP_KINDS.has(component.kind)) {
123
132
  continue;
124
133
  }
125
- if (component.kind === 'unsupported') {
126
- warnings.push(`${component.id}: unsupported source type ${component.sourceTypeName ?? 'unknown'} — skipped from netlist`);
134
+ if (component.kind === "unsupported") {
135
+ warnings.push(`${component.id}: unsupported source type ${component.sourceTypeName ?? "unknown"} — skipped from netlist`);
127
136
  continue;
128
137
  }
129
138
  // Components that need a SPICE subcircuit (opamps, pots, tubes, etc.) are signaled
@@ -131,11 +140,11 @@ export function toNetlistView(doc, precomputed) {
131
140
  const spiceLetter = SPICE_LETTER[component.kind] ?? null;
132
141
  const expectedOrder = spiceLetter === null && component.terminals.length === 0
133
142
  ? null
134
- : NODE_ORDER[component.kind] ?? null;
143
+ : (NODE_ORDER[component.kind] ?? null);
135
144
  const ordered = orderedNodes(component, connectivity, expectedOrder);
136
145
  warnings.push(...ordered.warnings);
137
146
  let nodes = ordered.nodes;
138
- if (component.kind === 'rail') {
147
+ if (component.kind === "rail") {
139
148
  // Append implicit ground as the negative terminal so the SPICE row is well-shaped.
140
149
  if (connectivity.groundNodeId === null) {
141
150
  warnings.push(`${component.id} (rail): no ground node in document — cannot anchor implicit return`);
@@ -146,7 +155,9 @@ export function toNetlistView(doc, precomputed) {
146
155
  }
147
156
  const valueResult = extractValue(component);
148
157
  const value = valueResult.value;
149
- if (value === null && REQUIRES_VALUE.has(component.kind) && !valueResult.present) {
158
+ if (value === null &&
159
+ REQUIRES_VALUE.has(component.kind) &&
160
+ !valueResult.present) {
150
161
  warnings.push(`${component.id} (${component.kind}): missing required value property`);
151
162
  }
152
163
  const model = extractModel(component);
@@ -185,7 +196,10 @@ function orderedNodes(component, connectivity, expected) {
185
196
  missing.push(name);
186
197
  continue;
187
198
  }
188
- const node = getPinNode(connectivity, { componentId: component.id, terminalName: name });
199
+ const node = getPinNode(connectivity, {
200
+ componentId: component.id,
201
+ terminalName: name,
202
+ });
189
203
  if (node === undefined) {
190
204
  warnings.push(`${component.id}: terminal "${name}" has no resolved node`);
191
205
  }
@@ -194,7 +208,7 @@ function orderedNodes(component, connectivity, expected) {
194
208
  }
195
209
  }
196
210
  if (missing.length > 0) {
197
- warnings.push(`${component.id} (${component.kind}): expected terminals [${expected.join(', ')}], missing [${missing.join(', ')}] — falling back to declaration order`);
211
+ warnings.push(`${component.id} (${component.kind}): expected terminals [${expected.join(", ")}], missing [${missing.join(", ")}] — falling back to declaration order`);
198
212
  const fallback = collectDeclarationOrder(component, connectivity, warnings);
199
213
  return { nodes: fallback, warnings };
200
214
  }
@@ -203,7 +217,10 @@ function orderedNodes(component, connectivity, expected) {
203
217
  function collectDeclarationOrder(component, connectivity, warnings) {
204
218
  const nodes = [];
205
219
  for (const terminal of component.terminals) {
206
- const node = getPinNode(connectivity, { componentId: component.id, terminalName: terminal.name });
220
+ const node = getPinNode(connectivity, {
221
+ componentId: component.id,
222
+ terminalName: terminal.name,
223
+ });
207
224
  if (node === undefined) {
208
225
  warnings.push(`${component.id}: terminal "${terminal.name}" has no resolved node`);
209
226
  }
@@ -225,15 +242,15 @@ function extractValue(component) {
225
242
  baseName.toUpperCase(),
226
243
  capitalize(baseName),
227
244
  ...aliases,
228
- 'value',
229
- 'Value',
245
+ "value",
246
+ "Value",
230
247
  ]);
231
248
  for (const name of variants) {
232
249
  const raw = component.properties[name];
233
250
  if (raw === undefined) {
234
251
  continue;
235
252
  }
236
- if (typeof raw === 'string') {
253
+ if (typeof raw === "string") {
237
254
  return { value: parseQuantity(raw), present: raw.trim().length > 0 };
238
255
  }
239
256
  return { value: propertyQuantityValue(raw), present: true };
@@ -246,7 +263,7 @@ function extractModel(component) {
246
263
  }
247
264
  for (const name of MODEL_PROPERTY_NAMES) {
248
265
  const raw = component.properties[name];
249
- if (typeof raw === 'string' && raw.length > 0) {
266
+ if (typeof raw === "string" && raw.length > 0) {
250
267
  return raw;
251
268
  }
252
269
  }
@@ -263,8 +280,8 @@ function consumedPropertyKeys(kind) {
263
280
  for (const alias of VALUE_PROPERTY_ALIASES[kind] ?? []) {
264
281
  consumed.add(alias);
265
282
  }
266
- consumed.add('value');
267
- consumed.add('Value');
283
+ consumed.add("value");
284
+ consumed.add("Value");
268
285
  }
269
286
  if (HAS_MODEL.has(kind)) {
270
287
  for (const name of MODEL_PROPERTY_NAMES) {
@@ -1 +1 @@
1
- {"version":3,"file":"netlist.js","sourceRoot":"","sources":["../../src/model/netlist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"netlist.js","sourceRoot":"","sources":["../../src/model/netlist.ts"],"names":[],"mappings":"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"}