@tscircuit/core 0.0.1145 → 0.0.1147

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.
package/dist/index.d.ts CHANGED
@@ -82167,14 +82167,30 @@ declare const pcbTraceProps: z.ZodObject<{
82167
82167
  is_inside_copper_pour: z.ZodOptional<z.ZodBoolean>;
82168
82168
  hole_diameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
82169
82169
  outer_diameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
82170
- from_layer: z.ZodString;
82171
- to_layer: z.ZodString;
82170
+ from_layer: z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
82171
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
82172
+ }, "strip", z.ZodTypeAny, {
82173
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82174
+ }, {
82175
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82176
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82177
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82178
+ }>;
82179
+ to_layer: z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
82180
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
82181
+ }, "strip", z.ZodTypeAny, {
82182
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82183
+ }, {
82184
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82185
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82186
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82187
+ }>;
82172
82188
  }, "strip", z.ZodTypeAny, {
82173
82189
  x: number;
82174
82190
  y: number;
82175
- to_layer: string;
82191
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82176
82192
  route_type: "via";
82177
- from_layer: string;
82193
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82178
82194
  hole_diameter?: number | undefined;
82179
82195
  outer_diameter?: number | undefined;
82180
82196
  copper_pour_id?: string | undefined;
@@ -82182,9 +82198,13 @@ declare const pcbTraceProps: z.ZodObject<{
82182
82198
  }, {
82183
82199
  x: string | number;
82184
82200
  y: string | number;
82185
- to_layer: string;
82201
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82202
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82203
+ };
82186
82204
  route_type: "via";
82187
- from_layer: string;
82205
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82206
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82207
+ };
82188
82208
  hole_diameter?: string | number | undefined;
82189
82209
  outer_diameter?: string | number | undefined;
82190
82210
  copper_pour_id?: string | undefined;
@@ -82205,9 +82225,9 @@ declare const pcbTraceProps: z.ZodObject<{
82205
82225
  } | {
82206
82226
  x: number;
82207
82227
  y: number;
82208
- to_layer: string;
82228
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82209
82229
  route_type: "via";
82210
- from_layer: string;
82230
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82211
82231
  hole_diameter?: number | undefined;
82212
82232
  outer_diameter?: number | undefined;
82213
82233
  copper_pour_id?: string | undefined;
@@ -82230,9 +82250,13 @@ declare const pcbTraceProps: z.ZodObject<{
82230
82250
  } | {
82231
82251
  x: string | number;
82232
82252
  y: string | number;
82233
- to_layer: string;
82253
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82254
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82255
+ };
82234
82256
  route_type: "via";
82235
- from_layer: string;
82257
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82258
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82259
+ };
82236
82260
  hole_diameter?: string | number | undefined;
82237
82261
  outer_diameter?: string | number | undefined;
82238
82262
  copper_pour_id?: string | undefined;
@@ -82294,14 +82318,30 @@ declare class PcbTrace extends PrimitiveComponent<typeof pcbTraceProps> {
82294
82318
  is_inside_copper_pour: z.ZodOptional<z.ZodBoolean>;
82295
82319
  hole_diameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
82296
82320
  outer_diameter: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodNumber]>, number, string | number>>;
82297
- from_layer: z.ZodString;
82298
- to_layer: z.ZodString;
82321
+ from_layer: z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
82322
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
82323
+ }, "strip", z.ZodTypeAny, {
82324
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82325
+ }, {
82326
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82327
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82328
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82329
+ }>;
82330
+ to_layer: z.ZodEffects<z.ZodUnion<[z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>, z.ZodObject<{
82331
+ name: z.ZodEnum<["top", "bottom", "inner1", "inner2", "inner3", "inner4", "inner5", "inner6"]>;
82332
+ }, "strip", z.ZodTypeAny, {
82333
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82334
+ }, {
82335
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82336
+ }>]>, "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6", "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82337
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82338
+ }>;
82299
82339
  }, "strip", z.ZodTypeAny, {
82300
82340
  x: number;
82301
82341
  y: number;
82302
- to_layer: string;
82342
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82303
82343
  route_type: "via";
82304
- from_layer: string;
82344
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82305
82345
  hole_diameter?: number | undefined;
82306
82346
  outer_diameter?: number | undefined;
82307
82347
  copper_pour_id?: string | undefined;
@@ -82309,9 +82349,13 @@ declare class PcbTrace extends PrimitiveComponent<typeof pcbTraceProps> {
82309
82349
  }, {
82310
82350
  x: string | number;
82311
82351
  y: string | number;
82312
- to_layer: string;
82352
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82353
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82354
+ };
82313
82355
  route_type: "via";
82314
- from_layer: string;
82356
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82357
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82358
+ };
82315
82359
  hole_diameter?: string | number | undefined;
82316
82360
  outer_diameter?: string | number | undefined;
82317
82361
  copper_pour_id?: string | undefined;
@@ -82332,9 +82376,9 @@ declare class PcbTrace extends PrimitiveComponent<typeof pcbTraceProps> {
82332
82376
  } | {
82333
82377
  x: number;
82334
82378
  y: number;
82335
- to_layer: string;
82379
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82336
82380
  route_type: "via";
82337
- from_layer: string;
82381
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82338
82382
  hole_diameter?: number | undefined;
82339
82383
  outer_diameter?: number | undefined;
82340
82384
  copper_pour_id?: string | undefined;
@@ -82357,9 +82401,13 @@ declare class PcbTrace extends PrimitiveComponent<typeof pcbTraceProps> {
82357
82401
  } | {
82358
82402
  x: string | number;
82359
82403
  y: string | number;
82360
- to_layer: string;
82404
+ to_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82405
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82406
+ };
82361
82407
  route_type: "via";
82362
- from_layer: string;
82408
+ from_layer: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6" | {
82409
+ name: "top" | "bottom" | "inner1" | "inner2" | "inner3" | "inner4" | "inner5" | "inner6";
82410
+ };
82363
82411
  hole_diameter?: string | number | undefined;
82364
82412
  outer_diameter?: string | number | undefined;
82365
82413
  copper_pour_id?: string | undefined;
package/dist/index.js CHANGED
@@ -6422,6 +6422,7 @@ var PcbNoteLine = class extends PrimitiveComponent2 {
6422
6422
  y1: start.y,
6423
6423
  x2: end.x,
6424
6424
  y2: end.y,
6425
+ layer: props.layer === "bottom" ? "bottom" : "top",
6425
6426
  stroke_width: props.strokeWidth ?? 0.1,
6426
6427
  color: props.color,
6427
6428
  is_dashed: props.isDashed
@@ -6486,6 +6487,7 @@ var PcbNotePath = class extends PrimitiveComponent2 {
6486
6487
  subcircuit_id: subcircuit?.subcircuit_id ?? void 0,
6487
6488
  pcb_group_id: group?.pcb_group_id ?? void 0,
6488
6489
  route: transformedRoute,
6490
+ layer: props.layer === "bottom" ? "bottom" : "top",
6489
6491
  stroke_width: props.strokeWidth ?? 0.1,
6490
6492
  color: props.color
6491
6493
  });
@@ -6554,6 +6556,7 @@ var PcbNoteRect = class extends PrimitiveComponent2 {
6554
6556
  center,
6555
6557
  width: props.width,
6556
6558
  height: props.height,
6559
+ layer: props.layer === "bottom" ? "bottom" : "top",
6557
6560
  stroke_width: props.strokeWidth ?? 0.1,
6558
6561
  is_filled: props.isFilled ?? false,
6559
6562
  has_stroke: props.hasStroke ?? true,
@@ -6618,6 +6621,7 @@ var PcbNoteText = class extends PrimitiveComponent2 {
6618
6621
  text: normalizeTextForCircuitJson(props.text),
6619
6622
  anchor_position: anchorPosition,
6620
6623
  anchor_alignment: props.anchorAlignment ?? "center",
6624
+ layer: props.layer === "bottom" ? "bottom" : "top",
6621
6625
  color: props.color
6622
6626
  });
6623
6627
  this.pcb_note_text_id = pcb_note_text.pcb_note_text_id;
@@ -8500,6 +8504,73 @@ var getCenterOfPcbPrimitives = (pcbPrimitives) => {
8500
8504
  };
8501
8505
  };
8502
8506
 
8507
+ // lib/components/primitive-components/Port/apply-pin-attributes-to-source-port.ts
8508
+ var applyPinAttributesToSourcePort = (sourcePortProps, attributes) => {
8509
+ if (attributes.mustBeConnected !== void 0) {
8510
+ sourcePortProps.must_be_connected = attributes.mustBeConnected;
8511
+ }
8512
+ if (attributes.providesPower !== void 0) {
8513
+ sourcePortProps.provides_power = attributes.providesPower;
8514
+ }
8515
+ if (attributes.requiresPower !== void 0) {
8516
+ sourcePortProps.requires_power = attributes.requiresPower;
8517
+ }
8518
+ if (attributes.providesGround !== void 0) {
8519
+ sourcePortProps.provides_ground = attributes.providesGround;
8520
+ }
8521
+ if (attributes.requiresGround !== void 0) {
8522
+ sourcePortProps.requires_ground = attributes.requiresGround;
8523
+ }
8524
+ if (attributes.providesVoltage !== void 0) {
8525
+ sourcePortProps.provides_voltage = attributes.providesVoltage;
8526
+ }
8527
+ if (attributes.requiresVoltage !== void 0) {
8528
+ sourcePortProps.requires_voltage = attributes.requiresVoltage;
8529
+ }
8530
+ if (attributes.doNotConnect !== void 0) {
8531
+ sourcePortProps.do_not_connect = attributes.doNotConnect;
8532
+ }
8533
+ if (attributes.includeInBoardPinout !== void 0) {
8534
+ sourcePortProps.include_in_board_pinout = attributes.includeInBoardPinout;
8535
+ }
8536
+ if (attributes.canUseInternalPullup !== void 0) {
8537
+ sourcePortProps.can_use_internal_pullup = attributes.canUseInternalPullup;
8538
+ }
8539
+ if (attributes.isUsingInternalPullup !== void 0) {
8540
+ sourcePortProps.is_using_internal_pullup = attributes.isUsingInternalPullup;
8541
+ }
8542
+ if (attributes.needsExternalPullup !== void 0) {
8543
+ sourcePortProps.needs_external_pullup = attributes.needsExternalPullup;
8544
+ }
8545
+ if (attributes.canUseInternalPulldown !== void 0) {
8546
+ sourcePortProps.can_use_internal_pulldown = attributes.canUseInternalPulldown;
8547
+ }
8548
+ if (attributes.isUsingInternalPulldown !== void 0) {
8549
+ sourcePortProps.is_using_internal_pulldown = attributes.isUsingInternalPulldown;
8550
+ }
8551
+ if (attributes.needsExternalPulldown !== void 0) {
8552
+ sourcePortProps.needs_external_pulldown = attributes.needsExternalPulldown;
8553
+ }
8554
+ if (attributes.canUseOpenDrain !== void 0) {
8555
+ sourcePortProps.can_use_open_drain = attributes.canUseOpenDrain;
8556
+ }
8557
+ if (attributes.isUsingOpenDrain !== void 0) {
8558
+ sourcePortProps.is_using_open_drain = attributes.isUsingOpenDrain;
8559
+ }
8560
+ if (attributes.canUsePushPull !== void 0) {
8561
+ sourcePortProps.can_use_push_pull = attributes.canUsePushPull;
8562
+ }
8563
+ if (attributes.isUsingPushPull !== void 0) {
8564
+ sourcePortProps.is_using_push_pull = attributes.isUsingPushPull;
8565
+ }
8566
+ if (attributes.shouldHaveDecouplingCapacitor !== void 0) {
8567
+ sourcePortProps.should_have_decoupling_capacitor = attributes.shouldHaveDecouplingCapacitor;
8568
+ }
8569
+ if (attributes.recommendedDecouplingCapacitorCapacitance !== void 0) {
8570
+ sourcePortProps.recommended_decoupling_capacitor_capacitance = attributes.recommendedDecouplingCapacitorCapacitance;
8571
+ }
8572
+ };
8573
+
8503
8574
  // lib/components/primitive-components/Port/Port.ts
8504
8575
  var portProps = z7.object({
8505
8576
  name: z7.string().optional(),
@@ -8780,9 +8851,7 @@ var Port = class extends PrimitiveComponent2 {
8780
8851
  const pinAttributes = this._getMatchingPinAttributes();
8781
8852
  const portAttributesFromParent = {};
8782
8853
  for (const attributes of pinAttributes) {
8783
- if (attributes.mustBeConnected !== void 0) {
8784
- portAttributesFromParent.must_be_connected = attributes.mustBeConnected;
8785
- }
8854
+ applyPinAttributesToSourcePort(portAttributesFromParent, attributes);
8786
8855
  }
8787
8856
  const source_port = db.source_port.insert({
8788
8857
  name: props.name,
@@ -19080,7 +19149,7 @@ import { identity as identity5 } from "transformation-matrix";
19080
19149
  var package_default = {
19081
19150
  name: "@tscircuit/core",
19082
19151
  type: "module",
19083
- version: "0.0.1144",
19152
+ version: "0.0.1146",
19084
19153
  types: "dist/index.d.ts",
19085
19154
  main: "dist/index.js",
19086
19155
  module: "dist/index.js",
@@ -19139,7 +19208,7 @@ var package_default = {
19139
19208
  "bun-match-svg": "0.0.12",
19140
19209
  "calculate-elbow": "^0.0.12",
19141
19210
  "chokidar-cli": "^3.0.0",
19142
- "circuit-json": "^0.0.403",
19211
+ "circuit-json": "^0.0.407",
19143
19212
  "circuit-json-to-bpc": "^0.0.13",
19144
19213
  "circuit-json-to-connectivity-map": "^0.0.23",
19145
19214
  "circuit-json-to-gltf": "^0.0.91",
@@ -20959,6 +21028,7 @@ var Panel = class extends Subpanel {
20959
21028
  const inserted = db.pcb_panel.insert({
20960
21029
  width: props.width !== void 0 ? distance12.parse(props.width) : 0,
20961
21030
  height: props.height !== void 0 ? distance12.parse(props.height) : 0,
21031
+ thickness: 1.6,
20962
21032
  center: this._getGlobalPcbPositionBeforeLayout(),
20963
21033
  covered_with_solder_mask: !(props.noSolderMask ?? false)
20964
21034
  });
@@ -21949,6 +22019,7 @@ var PcbNoteDimension = class extends PrimitiveComponent2 {
21949
22019
  text,
21950
22020
  font: props.font ?? "tscircuit2024",
21951
22021
  font_size: props.fontSize ?? 1,
22022
+ layer: props.layer === "bottom" ? "bottom" : "top",
21952
22023
  color: props.color,
21953
22024
  arrow_size: props.arrowSize ?? 1
21954
22025
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/core",
3
3
  "type": "module",
4
- "version": "0.0.1145",
4
+ "version": "0.0.1147",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -60,7 +60,7 @@
60
60
  "bun-match-svg": "0.0.12",
61
61
  "calculate-elbow": "^0.0.12",
62
62
  "chokidar-cli": "^3.0.0",
63
- "circuit-json": "^0.0.403",
63
+ "circuit-json": "^0.0.407",
64
64
  "circuit-json-to-bpc": "^0.0.13",
65
65
  "circuit-json-to-connectivity-map": "^0.0.23",
66
66
  "circuit-json-to-gltf": "^0.0.91",