@vessel-dsp/compiler 0.17.0 → 0.18.1

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 (74) hide show
  1. package/dist/compile.d.ts.map +1 -1
  2. package/dist/compile.js +26 -13
  3. package/dist/compile.js.map +1 -1
  4. package/dist/dangling-active-terminal.d.ts.map +1 -1
  5. package/dist/dangling-active-terminal.js +6 -0
  6. package/dist/dangling-active-terminal.js.map +1 -1
  7. package/dist/device-laws.d.ts.map +1 -1
  8. package/dist/device-laws.js +99 -4
  9. package/dist/device-laws.js.map +1 -1
  10. package/dist/fixtures/circuits.d.ts +44 -10
  11. package/dist/fixtures/circuits.d.ts.map +1 -1
  12. package/dist/fixtures/circuits.js +525 -13
  13. package/dist/fixtures/circuits.js.map +1 -1
  14. package/dist/latch-seed.d.ts +7 -6
  15. package/dist/latch-seed.d.ts.map +1 -1
  16. package/dist/latch-seed.js +199 -31
  17. package/dist/latch-seed.js.map +1 -1
  18. package/dist/lower.d.ts.map +1 -1
  19. package/dist/lower.js +205 -0
  20. package/dist/lower.js.map +1 -1
  21. package/dist/netlist.d.ts.map +1 -1
  22. package/dist/netlist.js +16 -0
  23. package/dist/netlist.js.map +1 -1
  24. package/dist/part-catalog.d.ts +21 -0
  25. package/dist/part-catalog.d.ts.map +1 -1
  26. package/dist/part-catalog.js +1210 -38
  27. package/dist/part-catalog.js.map +1 -1
  28. package/dist/partition.d.ts.map +1 -1
  29. package/dist/partition.js +9 -0
  30. package/dist/partition.js.map +1 -1
  31. package/dist/registry-data/bjt.d.ts.map +1 -1
  32. package/dist/registry-data/bjt.js +173 -0
  33. package/dist/registry-data/bjt.js.map +1 -1
  34. package/dist/registry-data/diode.d.ts.map +1 -1
  35. package/dist/registry-data/diode.js +113 -3
  36. package/dist/registry-data/diode.js.map +1 -1
  37. package/dist/registry-data/index.d.ts +1 -0
  38. package/dist/registry-data/index.d.ts.map +1 -1
  39. package/dist/registry-data/index.js +3 -0
  40. package/dist/registry-data/index.js.map +1 -1
  41. package/dist/registry-data/led.d.ts.map +1 -1
  42. package/dist/registry-data/led.js +15 -4
  43. package/dist/registry-data/led.js.map +1 -1
  44. package/dist/registry-data/opamp.d.ts.map +1 -1
  45. package/dist/registry-data/opamp.js +75 -1
  46. package/dist/registry-data/opamp.js.map +1 -1
  47. package/dist/registry-data/poweramp.d.ts +10 -0
  48. package/dist/registry-data/poweramp.d.ts.map +1 -0
  49. package/dist/registry-data/poweramp.js +191 -0
  50. package/dist/registry-data/poweramp.js.map +1 -0
  51. package/dist/registry-data/schema.d.ts +2 -0
  52. package/dist/registry-data/schema.d.ts.map +1 -1
  53. package/dist/registry-data/schema.js +22 -0
  54. package/dist/registry-data/schema.js.map +1 -1
  55. package/dist/registry.d.ts +89 -1
  56. package/dist/registry.d.ts.map +1 -1
  57. package/dist/registry.js +148 -0
  58. package/dist/registry.js.map +1 -1
  59. package/dist/sparse-schedule.d.ts.map +1 -1
  60. package/dist/sparse-schedule.js +16 -0
  61. package/dist/sparse-schedule.js.map +1 -1
  62. package/dist/stamp-partition.d.ts +8 -1
  63. package/dist/stamp-partition.d.ts.map +1 -1
  64. package/dist/stamp-partition.js +22 -0
  65. package/dist/stamp-partition.js.map +1 -1
  66. package/dist/types.d.ts +110 -1
  67. package/dist/types.d.ts.map +1 -1
  68. package/dist/unexecuted-region.d.ts.map +1 -1
  69. package/dist/unexecuted-region.js +1 -0
  70. package/dist/unexecuted-region.js.map +1 -1
  71. package/dist/unverified-pinout.d.ts.map +1 -1
  72. package/dist/unverified-pinout.js +8 -1
  73. package/dist/unverified-pinout.js.map +1 -1
  74. package/package.json +2 -2
package/dist/netlist.js CHANGED
@@ -570,6 +570,7 @@ function voltagePortRails(components, devices, nodeOf) {
570
570
  : null,
571
571
  terminalRoles: [terminalRoleToken(String(terminal.name))],
572
572
  declaredTerminalRoles: [declaredRole(terminal)],
573
+ terminalPinNumbers: [terminalPinNumber(String(terminal.name))],
573
574
  declaredWindings: null,
574
575
  },
575
576
  });
@@ -871,6 +872,7 @@ export function readNetlist(source, options) {
871
872
  : null,
872
873
  terminalRoles: terminals.map((terminal) => terminalRoleToken(String(terminal.name))),
873
874
  declaredTerminalRoles: roles,
875
+ terminalPinNumbers: terminals.map((terminal) => terminalPinNumber(String(terminal.name))),
874
876
  declaredWindings: declaredWindings(component, terminals),
875
877
  });
876
878
  // **A package that states its own devices is split here, from the source.** A dual op-amp
@@ -4392,6 +4394,18 @@ function terminalRoleToken(name) {
4392
4394
  }
4393
4395
  return folded.replace(/^pin\d+/u, "");
4394
4396
  }
4397
+ /**
4398
+ * A terminal's package pin number, or null where its name is not one.
4399
+ *
4400
+ * Whole digit strings only, compared whole downstream: `"1"` is pin 1 and `"pin1"`,
4401
+ * `"1OUT"`, `""` are not pins (null). The one reading of a digit string is its number --
4402
+ * no fold, no role inference -- which is what keeps this on the right side of the rule
4403
+ * against reading authored prose.
4404
+ */
4405
+ function terminalPinNumber(name) {
4406
+ const trimmed = name.trim();
4407
+ return /^\d+$/u.test(trimmed) ? trimmed : null;
4408
+ }
4395
4409
  /**
4396
4410
  * The taper a control declares for itself, or null when it declares none.
4397
4411
  *
@@ -5112,6 +5126,7 @@ function outputJackLoads(document, devices) {
5112
5126
  declaredType: null,
5113
5127
  terminalRoles: [null, null],
5114
5128
  declaredTerminalRoles: [null, null],
5129
+ terminalPinNumbers: [null, null],
5115
5130
  declaredWindings: null,
5116
5131
  },
5117
5132
  });
@@ -5301,6 +5316,7 @@ function controllerPinDevice(pin, controls) {
5301
5316
  declaredType: null,
5302
5317
  terminalRoles: ["common", ...throws.map(() => "throw")],
5303
5318
  declaredTerminalRoles: ["common", ...throws.map(() => "throw")],
5319
+ terminalPinNumbers: [null, ...throws.map(() => null)],
5304
5320
  declaredWindings: null,
5305
5321
  },
5306
5322
  };