circuit-json 0.0.275 → 0.0.277

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.mjs CHANGED
@@ -1279,7 +1279,38 @@ var pcb_hole_oval_shape = pcb_hole_oval.describe(
1279
1279
  "Defines an oval hole on the PCB"
1280
1280
  );
1281
1281
  expectTypesMatch(true);
1282
- var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
1282
+ var pcb_hole_pill = z68.object({
1283
+ type: z68.literal("pcb_hole"),
1284
+ pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1285
+ pcb_group_id: z68.string().optional(),
1286
+ subcircuit_id: z68.string().optional(),
1287
+ hole_shape: z68.literal("pill"),
1288
+ hole_width: z68.number(),
1289
+ hole_height: z68.number(),
1290
+ x: distance,
1291
+ y: distance
1292
+ });
1293
+ var pcb_hole_pill_shape = pcb_hole_pill.describe(
1294
+ "Defines a pill-shaped hole on the PCB"
1295
+ );
1296
+ expectTypesMatch(true);
1297
+ var pcb_hole_rotated_pill = z68.object({
1298
+ type: z68.literal("pcb_hole"),
1299
+ pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1300
+ pcb_group_id: z68.string().optional(),
1301
+ subcircuit_id: z68.string().optional(),
1302
+ hole_shape: z68.literal("rotated_pill"),
1303
+ hole_width: z68.number(),
1304
+ hole_height: z68.number(),
1305
+ x: distance,
1306
+ y: distance,
1307
+ ccw_rotation: rotation
1308
+ });
1309
+ var pcb_hole_rotated_pill_shape = pcb_hole_rotated_pill.describe(
1310
+ "Defines a rotated pill-shaped hole on the PCB"
1311
+ );
1312
+ expectTypesMatch(true);
1313
+ var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill);
1283
1314
 
1284
1315
  // src/pcb/pcb_plated_hole.ts
1285
1316
  import { z as z69 } from "zod";
@@ -1985,64 +2016,150 @@ var pcb_fabrication_note_rect = z92.object({
1985
2016
  }).describe("Defines a fabrication note rectangle on the PCB");
1986
2017
  expectTypesMatch(true);
1987
2018
 
1988
- // src/pcb/pcb_footprint_overlap_error.ts
2019
+ // src/pcb/pcb_note_text.ts
1989
2020
  import { z as z93 } from "zod";
1990
- var pcb_footprint_overlap_error = z93.object({
1991
- type: z93.literal("pcb_footprint_overlap_error"),
2021
+ var pcb_note_text = z93.object({
2022
+ type: z93.literal("pcb_note_text"),
2023
+ pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2024
+ pcb_component_id: z93.string().optional(),
2025
+ pcb_group_id: z93.string().optional(),
2026
+ subcircuit_id: z93.string().optional(),
2027
+ font: z93.literal("tscircuit2024").default("tscircuit2024"),
2028
+ font_size: distance.default("1mm"),
2029
+ text: z93.string(),
2030
+ anchor_position: point.default({ x: 0, y: 0 }),
2031
+ anchor_alignment: z93.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2032
+ color: z93.string().optional()
2033
+ }).describe("Defines a documentation note in text on the PCB");
2034
+ expectTypesMatch(true);
2035
+
2036
+ // src/pcb/pcb_note_rect.ts
2037
+ import { z as z94 } from "zod";
2038
+ var pcb_note_rect = z94.object({
2039
+ type: z94.literal("pcb_note_rect"),
2040
+ pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2041
+ pcb_component_id: z94.string().optional(),
2042
+ pcb_group_id: z94.string().optional(),
2043
+ subcircuit_id: z94.string().optional(),
2044
+ center: point,
2045
+ width: length,
2046
+ height: length,
2047
+ stroke_width: length.default("0.1mm"),
2048
+ is_filled: z94.boolean().optional(),
2049
+ has_stroke: z94.boolean().optional(),
2050
+ is_stroke_dashed: z94.boolean().optional(),
2051
+ color: z94.string().optional()
2052
+ }).describe("Defines a rectangular documentation note on the PCB");
2053
+ expectTypesMatch(true);
2054
+
2055
+ // src/pcb/pcb_note_path.ts
2056
+ import { z as z95 } from "zod";
2057
+ var pcb_note_path = z95.object({
2058
+ type: z95.literal("pcb_note_path"),
2059
+ pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2060
+ pcb_component_id: z95.string().optional(),
2061
+ pcb_group_id: z95.string().optional(),
2062
+ subcircuit_id: z95.string().optional(),
2063
+ route: z95.array(point),
2064
+ stroke_width: length.default("0.1mm"),
2065
+ color: z95.string().optional()
2066
+ }).describe("Defines a polyline documentation note on the PCB");
2067
+ expectTypesMatch(true);
2068
+
2069
+ // src/pcb/pcb_note_line.ts
2070
+ import { z as z96 } from "zod";
2071
+ var pcb_note_line = z96.object({
2072
+ type: z96.literal("pcb_note_line"),
2073
+ pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2074
+ pcb_component_id: z96.string().optional(),
2075
+ pcb_group_id: z96.string().optional(),
2076
+ subcircuit_id: z96.string().optional(),
2077
+ x1: distance,
2078
+ y1: distance,
2079
+ x2: distance,
2080
+ y2: distance,
2081
+ stroke_width: distance.default("0.1mm"),
2082
+ color: z96.string().optional(),
2083
+ is_dashed: z96.boolean().optional()
2084
+ }).describe("Defines a straight documentation note line on the PCB");
2085
+ expectTypesMatch(true);
2086
+
2087
+ // src/pcb/pcb_note_dimension.ts
2088
+ import { z as z97 } from "zod";
2089
+ var pcb_note_dimension = z97.object({
2090
+ type: z97.literal("pcb_note_dimension"),
2091
+ pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
2092
+ pcb_component_id: z97.string().optional(),
2093
+ pcb_group_id: z97.string().optional(),
2094
+ subcircuit_id: z97.string().optional(),
2095
+ from: point,
2096
+ to: point,
2097
+ text: z97.string().optional(),
2098
+ font: z97.literal("tscircuit2024").default("tscircuit2024"),
2099
+ font_size: length.default("1mm"),
2100
+ color: z97.string().optional(),
2101
+ arrow_size: length.default("1mm")
2102
+ }).describe("Defines a measurement annotation within PCB documentation notes");
2103
+ expectTypesMatch(true);
2104
+
2105
+ // src/pcb/pcb_footprint_overlap_error.ts
2106
+ import { z as z98 } from "zod";
2107
+ var pcb_footprint_overlap_error = z98.object({
2108
+ type: z98.literal("pcb_footprint_overlap_error"),
1992
2109
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1993
- error_type: z93.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
1994
- message: z93.string(),
1995
- pcb_smtpad_ids: z93.array(z93.string()).optional(),
1996
- pcb_plated_hole_ids: z93.array(z93.string()).optional(),
1997
- pcb_hole_ids: z93.array(z93.string()).optional(),
1998
- pcb_keepout_ids: z93.array(z93.string()).optional()
2110
+ error_type: z98.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2111
+ message: z98.string(),
2112
+ pcb_smtpad_ids: z98.array(z98.string()).optional(),
2113
+ pcb_plated_hole_ids: z98.array(z98.string()).optional(),
2114
+ pcb_hole_ids: z98.array(z98.string()).optional(),
2115
+ pcb_keepout_ids: z98.array(z98.string()).optional()
1999
2116
  }).describe("Error emitted when a pcb footprint overlaps with another element");
2000
2117
  expectTypesMatch(
2001
2118
  true
2002
2119
  );
2003
2120
 
2004
2121
  // src/pcb/pcb_keepout.ts
2005
- import { z as z94 } from "zod";
2006
- var pcb_keepout = z94.object({
2007
- type: z94.literal("pcb_keepout"),
2008
- shape: z94.literal("rect"),
2009
- pcb_group_id: z94.string().optional(),
2010
- subcircuit_id: z94.string().optional(),
2122
+ import { z as z99 } from "zod";
2123
+ var pcb_keepout = z99.object({
2124
+ type: z99.literal("pcb_keepout"),
2125
+ shape: z99.literal("rect"),
2126
+ pcb_group_id: z99.string().optional(),
2127
+ subcircuit_id: z99.string().optional(),
2011
2128
  center: point,
2012
2129
  width: distance,
2013
2130
  height: distance,
2014
- pcb_keepout_id: z94.string(),
2015
- layers: z94.array(z94.string()),
2131
+ pcb_keepout_id: z99.string(),
2132
+ layers: z99.array(z99.string()),
2016
2133
  // Specify layers where the keepout applies
2017
- description: z94.string().optional()
2134
+ description: z99.string().optional()
2018
2135
  // Optional description of the keepout
2019
2136
  }).or(
2020
- z94.object({
2021
- type: z94.literal("pcb_keepout"),
2022
- shape: z94.literal("circle"),
2023
- pcb_group_id: z94.string().optional(),
2024
- subcircuit_id: z94.string().optional(),
2137
+ z99.object({
2138
+ type: z99.literal("pcb_keepout"),
2139
+ shape: z99.literal("circle"),
2140
+ pcb_group_id: z99.string().optional(),
2141
+ subcircuit_id: z99.string().optional(),
2025
2142
  center: point,
2026
2143
  radius: distance,
2027
- pcb_keepout_id: z94.string(),
2028
- layers: z94.array(z94.string()),
2144
+ pcb_keepout_id: z99.string(),
2145
+ layers: z99.array(z99.string()),
2029
2146
  // Specify layers where the keepout applies
2030
- description: z94.string().optional()
2147
+ description: z99.string().optional()
2031
2148
  // Optional description of the keepout
2032
2149
  })
2033
2150
  );
2034
2151
  expectTypesMatch(true);
2035
2152
 
2036
2153
  // src/pcb/pcb_cutout.ts
2037
- import { z as z95 } from "zod";
2038
- var pcb_cutout_base = z95.object({
2039
- type: z95.literal("pcb_cutout"),
2154
+ import { z as z100 } from "zod";
2155
+ var pcb_cutout_base = z100.object({
2156
+ type: z100.literal("pcb_cutout"),
2040
2157
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
2041
- pcb_group_id: z95.string().optional(),
2042
- subcircuit_id: z95.string().optional()
2158
+ pcb_group_id: z100.string().optional(),
2159
+ subcircuit_id: z100.string().optional()
2043
2160
  });
2044
2161
  var pcb_cutout_rect = pcb_cutout_base.extend({
2045
- shape: z95.literal("rect"),
2162
+ shape: z100.literal("rect"),
2046
2163
  center: point,
2047
2164
  width: length,
2048
2165
  height: length,
@@ -2050,17 +2167,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
2050
2167
  });
2051
2168
  expectTypesMatch(true);
2052
2169
  var pcb_cutout_circle = pcb_cutout_base.extend({
2053
- shape: z95.literal("circle"),
2170
+ shape: z100.literal("circle"),
2054
2171
  center: point,
2055
2172
  radius: length
2056
2173
  });
2057
2174
  expectTypesMatch(true);
2058
2175
  var pcb_cutout_polygon = pcb_cutout_base.extend({
2059
- shape: z95.literal("polygon"),
2060
- points: z95.array(point)
2176
+ shape: z100.literal("polygon"),
2177
+ points: z100.array(point)
2061
2178
  });
2062
2179
  expectTypesMatch(true);
2063
- var pcb_cutout = z95.discriminatedUnion("shape", [
2180
+ var pcb_cutout = z100.discriminatedUnion("shape", [
2064
2181
  pcb_cutout_rect,
2065
2182
  pcb_cutout_circle,
2066
2183
  pcb_cutout_polygon
@@ -2068,117 +2185,117 @@ var pcb_cutout = z95.discriminatedUnion("shape", [
2068
2185
  expectTypesMatch(true);
2069
2186
 
2070
2187
  // src/pcb/pcb_missing_footprint_error.ts
2071
- import { z as z96 } from "zod";
2072
- var pcb_missing_footprint_error = z96.object({
2073
- type: z96.literal("pcb_missing_footprint_error"),
2188
+ import { z as z101 } from "zod";
2189
+ var pcb_missing_footprint_error = z101.object({
2190
+ type: z101.literal("pcb_missing_footprint_error"),
2074
2191
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
2075
2192
  "pcb_missing_footprint_error"
2076
2193
  ),
2077
- pcb_group_id: z96.string().optional(),
2078
- subcircuit_id: z96.string().optional(),
2079
- error_type: z96.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2080
- source_component_id: z96.string(),
2081
- message: z96.string()
2194
+ pcb_group_id: z101.string().optional(),
2195
+ subcircuit_id: z101.string().optional(),
2196
+ error_type: z101.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2197
+ source_component_id: z101.string(),
2198
+ message: z101.string()
2082
2199
  }).describe("Defines a missing footprint error on the PCB");
2083
2200
  expectTypesMatch(
2084
2201
  true
2085
2202
  );
2086
2203
 
2087
2204
  // src/pcb/external_footprint_load_error.ts
2088
- import { z as z97 } from "zod";
2089
- var external_footprint_load_error = z97.object({
2090
- type: z97.literal("external_footprint_load_error"),
2205
+ import { z as z102 } from "zod";
2206
+ var external_footprint_load_error = z102.object({
2207
+ type: z102.literal("external_footprint_load_error"),
2091
2208
  external_footprint_load_error_id: getZodPrefixedIdWithDefault(
2092
2209
  "external_footprint_load_error"
2093
2210
  ),
2094
- pcb_component_id: z97.string(),
2095
- source_component_id: z97.string(),
2096
- pcb_group_id: z97.string().optional(),
2097
- subcircuit_id: z97.string().optional(),
2098
- footprinter_string: z97.string().optional(),
2099
- error_type: z97.literal("external_footprint_load_error").default("external_footprint_load_error"),
2100
- message: z97.string()
2211
+ pcb_component_id: z102.string(),
2212
+ source_component_id: z102.string(),
2213
+ pcb_group_id: z102.string().optional(),
2214
+ subcircuit_id: z102.string().optional(),
2215
+ footprinter_string: z102.string().optional(),
2216
+ error_type: z102.literal("external_footprint_load_error").default("external_footprint_load_error"),
2217
+ message: z102.string()
2101
2218
  }).describe("Defines an error when an external footprint fails to load");
2102
2219
  expectTypesMatch(true);
2103
2220
 
2104
2221
  // src/pcb/circuit_json_footprint_load_error.ts
2105
- import { z as z98 } from "zod";
2106
- var circuit_json_footprint_load_error = z98.object({
2107
- type: z98.literal("circuit_json_footprint_load_error"),
2222
+ import { z as z103 } from "zod";
2223
+ var circuit_json_footprint_load_error = z103.object({
2224
+ type: z103.literal("circuit_json_footprint_load_error"),
2108
2225
  circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
2109
2226
  "circuit_json_footprint_load_error"
2110
2227
  ),
2111
- pcb_component_id: z98.string(),
2112
- source_component_id: z98.string(),
2113
- pcb_group_id: z98.string().optional(),
2114
- subcircuit_id: z98.string().optional(),
2115
- error_type: z98.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2116
- message: z98.string(),
2117
- circuit_json: z98.array(z98.any()).optional()
2228
+ pcb_component_id: z103.string(),
2229
+ source_component_id: z103.string(),
2230
+ pcb_group_id: z103.string().optional(),
2231
+ subcircuit_id: z103.string().optional(),
2232
+ error_type: z103.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2233
+ message: z103.string(),
2234
+ circuit_json: z103.array(z103.any()).optional()
2118
2235
  }).describe("Defines an error when a circuit JSON footprint fails to load");
2119
2236
  expectTypesMatch(true);
2120
2237
 
2121
2238
  // src/pcb/pcb_group.ts
2122
- import { z as z99 } from "zod";
2123
- var pcb_group = z99.object({
2124
- type: z99.literal("pcb_group"),
2239
+ import { z as z104 } from "zod";
2240
+ var pcb_group = z104.object({
2241
+ type: z104.literal("pcb_group"),
2125
2242
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
2126
- source_group_id: z99.string(),
2127
- is_subcircuit: z99.boolean().optional(),
2128
- subcircuit_id: z99.string().optional(),
2243
+ source_group_id: z104.string(),
2244
+ is_subcircuit: z104.boolean().optional(),
2245
+ subcircuit_id: z104.string().optional(),
2129
2246
  width: length,
2130
2247
  height: length,
2131
2248
  center: point,
2132
- pcb_component_ids: z99.array(z99.string()),
2133
- name: z99.string().optional(),
2134
- description: z99.string().optional(),
2135
- layout_mode: z99.string().optional(),
2136
- autorouter_configuration: z99.object({
2249
+ pcb_component_ids: z104.array(z104.string()),
2250
+ name: z104.string().optional(),
2251
+ description: z104.string().optional(),
2252
+ layout_mode: z104.string().optional(),
2253
+ autorouter_configuration: z104.object({
2137
2254
  trace_clearance: length
2138
2255
  }).optional(),
2139
- autorouter_used_string: z99.string().optional()
2256
+ autorouter_used_string: z104.string().optional()
2140
2257
  }).describe("Defines a group of components on the PCB");
2141
2258
  expectTypesMatch(true);
2142
2259
 
2143
2260
  // src/pcb/pcb_autorouting_error.ts
2144
- import { z as z100 } from "zod";
2145
- var pcb_autorouting_error = z100.object({
2146
- type: z100.literal("pcb_autorouting_error"),
2261
+ import { z as z105 } from "zod";
2262
+ var pcb_autorouting_error = z105.object({
2263
+ type: z105.literal("pcb_autorouting_error"),
2147
2264
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
2148
- error_type: z100.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2149
- message: z100.string(),
2150
- subcircuit_id: z100.string().optional()
2265
+ error_type: z105.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2266
+ message: z105.string(),
2267
+ subcircuit_id: z105.string().optional()
2151
2268
  }).describe("The autorouting has failed to route a portion of the board");
2152
2269
  expectTypesMatch(true);
2153
2270
 
2154
2271
  // src/pcb/pcb_manual_edit_conflict_warning.ts
2155
- import { z as z101 } from "zod";
2156
- var pcb_manual_edit_conflict_warning = z101.object({
2157
- type: z101.literal("pcb_manual_edit_conflict_warning"),
2272
+ import { z as z106 } from "zod";
2273
+ var pcb_manual_edit_conflict_warning = z106.object({
2274
+ type: z106.literal("pcb_manual_edit_conflict_warning"),
2158
2275
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
2159
2276
  "pcb_manual_edit_conflict_warning"
2160
2277
  ),
2161
- warning_type: z101.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
2162
- message: z101.string(),
2163
- pcb_component_id: z101.string(),
2164
- pcb_group_id: z101.string().optional(),
2165
- subcircuit_id: z101.string().optional(),
2166
- source_component_id: z101.string()
2278
+ warning_type: z106.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
2279
+ message: z106.string(),
2280
+ pcb_component_id: z106.string(),
2281
+ pcb_group_id: z106.string().optional(),
2282
+ subcircuit_id: z106.string().optional(),
2283
+ source_component_id: z106.string()
2167
2284
  }).describe(
2168
2285
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
2169
2286
  );
2170
2287
  expectTypesMatch(true);
2171
2288
 
2172
2289
  // src/pcb/pcb_breakout_point.ts
2173
- import { z as z102 } from "zod";
2174
- var pcb_breakout_point = z102.object({
2175
- type: z102.literal("pcb_breakout_point"),
2290
+ import { z as z107 } from "zod";
2291
+ var pcb_breakout_point = z107.object({
2292
+ type: z107.literal("pcb_breakout_point"),
2176
2293
  pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
2177
- pcb_group_id: z102.string(),
2178
- subcircuit_id: z102.string().optional(),
2179
- source_trace_id: z102.string().optional(),
2180
- source_port_id: z102.string().optional(),
2181
- source_net_id: z102.string().optional(),
2294
+ pcb_group_id: z107.string(),
2295
+ subcircuit_id: z107.string().optional(),
2296
+ source_trace_id: z107.string().optional(),
2297
+ source_port_id: z107.string().optional(),
2298
+ source_net_id: z107.string().optional(),
2182
2299
  x: distance,
2183
2300
  y: distance
2184
2301
  }).describe(
@@ -2187,60 +2304,60 @@ var pcb_breakout_point = z102.object({
2187
2304
  expectTypesMatch(true);
2188
2305
 
2189
2306
  // src/pcb/pcb_ground_plane.ts
2190
- import { z as z103 } from "zod";
2191
- var pcb_ground_plane = z103.object({
2192
- type: z103.literal("pcb_ground_plane"),
2307
+ import { z as z108 } from "zod";
2308
+ var pcb_ground_plane = z108.object({
2309
+ type: z108.literal("pcb_ground_plane"),
2193
2310
  pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
2194
- source_pcb_ground_plane_id: z103.string(),
2195
- source_net_id: z103.string(),
2196
- pcb_group_id: z103.string().optional(),
2197
- subcircuit_id: z103.string().optional()
2311
+ source_pcb_ground_plane_id: z108.string(),
2312
+ source_net_id: z108.string(),
2313
+ pcb_group_id: z108.string().optional(),
2314
+ subcircuit_id: z108.string().optional()
2198
2315
  }).describe("Defines a ground plane on the PCB");
2199
2316
  expectTypesMatch(true);
2200
2317
 
2201
2318
  // src/pcb/pcb_ground_plane_region.ts
2202
- import { z as z104 } from "zod";
2203
- var pcb_ground_plane_region = z104.object({
2204
- type: z104.literal("pcb_ground_plane_region"),
2319
+ import { z as z109 } from "zod";
2320
+ var pcb_ground_plane_region = z109.object({
2321
+ type: z109.literal("pcb_ground_plane_region"),
2205
2322
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
2206
2323
  "pcb_ground_plane_region"
2207
2324
  ),
2208
- pcb_ground_plane_id: z104.string(),
2209
- pcb_group_id: z104.string().optional(),
2210
- subcircuit_id: z104.string().optional(),
2325
+ pcb_ground_plane_id: z109.string(),
2326
+ pcb_group_id: z109.string().optional(),
2327
+ subcircuit_id: z109.string().optional(),
2211
2328
  layer: layer_ref,
2212
- points: z104.array(point)
2329
+ points: z109.array(point)
2213
2330
  }).describe("Defines a polygon region of a ground plane");
2214
2331
  expectTypesMatch(true);
2215
2332
 
2216
2333
  // src/pcb/pcb_thermal_spoke.ts
2217
- import { z as z105 } from "zod";
2218
- var pcb_thermal_spoke = z105.object({
2219
- type: z105.literal("pcb_thermal_spoke"),
2334
+ import { z as z110 } from "zod";
2335
+ var pcb_thermal_spoke = z110.object({
2336
+ type: z110.literal("pcb_thermal_spoke"),
2220
2337
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
2221
- pcb_ground_plane_id: z105.string(),
2222
- shape: z105.string(),
2223
- spoke_count: z105.number(),
2338
+ pcb_ground_plane_id: z110.string(),
2339
+ shape: z110.string(),
2340
+ spoke_count: z110.number(),
2224
2341
  spoke_thickness: distance,
2225
2342
  spoke_inner_diameter: distance,
2226
2343
  spoke_outer_diameter: distance,
2227
- pcb_plated_hole_id: z105.string().optional(),
2228
- subcircuit_id: z105.string().optional()
2344
+ pcb_plated_hole_id: z110.string().optional(),
2345
+ subcircuit_id: z110.string().optional()
2229
2346
  }).describe("Pattern for connecting a ground plane to a plated hole");
2230
2347
  expectTypesMatch(true);
2231
2348
 
2232
2349
  // src/pcb/pcb_copper_pour.ts
2233
- import { z as z106 } from "zod";
2234
- var pcb_copper_pour_base = z106.object({
2235
- type: z106.literal("pcb_copper_pour"),
2350
+ import { z as z111 } from "zod";
2351
+ var pcb_copper_pour_base = z111.object({
2352
+ type: z111.literal("pcb_copper_pour"),
2236
2353
  pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
2237
- pcb_group_id: z106.string().optional(),
2238
- subcircuit_id: z106.string().optional(),
2354
+ pcb_group_id: z111.string().optional(),
2355
+ subcircuit_id: z111.string().optional(),
2239
2356
  layer: layer_ref,
2240
- source_net_id: z106.string().optional()
2357
+ source_net_id: z111.string().optional()
2241
2358
  });
2242
2359
  var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2243
- shape: z106.literal("rect"),
2360
+ shape: z111.literal("rect"),
2244
2361
  center: point,
2245
2362
  width: length,
2246
2363
  height: length,
@@ -2248,16 +2365,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2248
2365
  });
2249
2366
  expectTypesMatch(true);
2250
2367
  var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
2251
- shape: z106.literal("brep"),
2368
+ shape: z111.literal("brep"),
2252
2369
  brep_shape
2253
2370
  });
2254
2371
  expectTypesMatch(true);
2255
2372
  var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
2256
- shape: z106.literal("polygon"),
2257
- points: z106.array(point)
2373
+ shape: z111.literal("polygon"),
2374
+ points: z111.array(point)
2258
2375
  });
2259
2376
  expectTypesMatch(true);
2260
- var pcb_copper_pour = z106.discriminatedUnion("shape", [
2377
+ var pcb_copper_pour = z111.discriminatedUnion("shape", [
2261
2378
  pcb_copper_pour_rect,
2262
2379
  pcb_copper_pour_brep,
2263
2380
  pcb_copper_pour_polygon
@@ -2265,117 +2382,117 @@ var pcb_copper_pour = z106.discriminatedUnion("shape", [
2265
2382
  expectTypesMatch(true);
2266
2383
 
2267
2384
  // src/pcb/pcb_component_outside_board_error.ts
2268
- import { z as z107 } from "zod";
2269
- var pcb_component_outside_board_error = z107.object({
2270
- type: z107.literal("pcb_component_outside_board_error"),
2385
+ import { z as z112 } from "zod";
2386
+ var pcb_component_outside_board_error = z112.object({
2387
+ type: z112.literal("pcb_component_outside_board_error"),
2271
2388
  pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
2272
2389
  "pcb_component_outside_board_error"
2273
2390
  ),
2274
- error_type: z107.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
2275
- message: z107.string(),
2276
- pcb_component_id: z107.string(),
2277
- pcb_board_id: z107.string(),
2391
+ error_type: z112.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
2392
+ message: z112.string(),
2393
+ pcb_component_id: z112.string(),
2394
+ pcb_board_id: z112.string(),
2278
2395
  component_center: point,
2279
- component_bounds: z107.object({
2280
- min_x: z107.number(),
2281
- max_x: z107.number(),
2282
- min_y: z107.number(),
2283
- max_y: z107.number()
2396
+ component_bounds: z112.object({
2397
+ min_x: z112.number(),
2398
+ max_x: z112.number(),
2399
+ min_y: z112.number(),
2400
+ max_y: z112.number()
2284
2401
  }),
2285
- subcircuit_id: z107.string().optional(),
2286
- source_component_id: z107.string().optional()
2402
+ subcircuit_id: z112.string().optional(),
2403
+ source_component_id: z112.string().optional()
2287
2404
  }).describe(
2288
2405
  "Error emitted when a PCB component is placed outside the board boundaries"
2289
2406
  );
2290
2407
  expectTypesMatch(true);
2291
2408
 
2292
2409
  // src/pcb/pcb_via_clearance_error.ts
2293
- import { z as z108 } from "zod";
2294
- var pcb_via_clearance_error = z108.object({
2295
- type: z108.literal("pcb_via_clearance_error"),
2410
+ import { z as z113 } from "zod";
2411
+ var pcb_via_clearance_error = z113.object({
2412
+ type: z113.literal("pcb_via_clearance_error"),
2296
2413
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2297
- error_type: z108.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
2298
- message: z108.string(),
2299
- pcb_via_ids: z108.array(z108.string()).min(2),
2414
+ error_type: z113.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
2415
+ message: z113.string(),
2416
+ pcb_via_ids: z113.array(z113.string()).min(2),
2300
2417
  minimum_clearance: distance.optional(),
2301
2418
  actual_clearance: distance.optional(),
2302
- pcb_center: z108.object({
2303
- x: z108.number().optional(),
2304
- y: z108.number().optional()
2419
+ pcb_center: z113.object({
2420
+ x: z113.number().optional(),
2421
+ y: z113.number().optional()
2305
2422
  }).optional(),
2306
- subcircuit_id: z108.string().optional()
2423
+ subcircuit_id: z113.string().optional()
2307
2424
  }).describe("Error emitted when vias are closer than the allowed clearance");
2308
2425
  expectTypesMatch(true);
2309
2426
 
2310
2427
  // src/pcb/pcb_courtyard_rect.ts
2311
- import { z as z109 } from "zod";
2312
- var pcb_courtyard_rect = z109.object({
2313
- type: z109.literal("pcb_courtyard_rect"),
2428
+ import { z as z114 } from "zod";
2429
+ var pcb_courtyard_rect = z114.object({
2430
+ type: z114.literal("pcb_courtyard_rect"),
2314
2431
  pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
2315
- pcb_component_id: z109.string(),
2316
- pcb_group_id: z109.string().optional(),
2317
- subcircuit_id: z109.string().optional(),
2432
+ pcb_component_id: z114.string(),
2433
+ pcb_group_id: z114.string().optional(),
2434
+ subcircuit_id: z114.string().optional(),
2318
2435
  center: point,
2319
2436
  width: length,
2320
2437
  height: length,
2321
2438
  layer: visible_layer,
2322
2439
  stroke_width: length.default("0.1mm"),
2323
- is_filled: z109.boolean().optional(),
2324
- has_stroke: z109.boolean().optional(),
2325
- is_stroke_dashed: z109.boolean().optional(),
2326
- color: z109.string().optional()
2440
+ is_filled: z114.boolean().optional(),
2441
+ has_stroke: z114.boolean().optional(),
2442
+ is_stroke_dashed: z114.boolean().optional(),
2443
+ color: z114.string().optional()
2327
2444
  }).describe("Defines a courtyard rectangle on the PCB");
2328
2445
  expectTypesMatch(true);
2329
2446
 
2330
2447
  // src/pcb/pcb_courtyard_outline.ts
2331
- import { z as z110 } from "zod";
2332
- var pcb_courtyard_outline = z110.object({
2333
- type: z110.literal("pcb_courtyard_outline"),
2448
+ import { z as z115 } from "zod";
2449
+ var pcb_courtyard_outline = z115.object({
2450
+ type: z115.literal("pcb_courtyard_outline"),
2334
2451
  pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
2335
2452
  "pcb_courtyard_outline"
2336
2453
  ),
2337
- pcb_component_id: z110.string(),
2338
- pcb_group_id: z110.string().optional(),
2339
- subcircuit_id: z110.string().optional(),
2454
+ pcb_component_id: z115.string(),
2455
+ pcb_group_id: z115.string().optional(),
2456
+ subcircuit_id: z115.string().optional(),
2340
2457
  layer: visible_layer,
2341
- outline: z110.array(point).min(2),
2458
+ outline: z115.array(point).min(2),
2342
2459
  stroke_width: length.default("0.1mm"),
2343
- is_closed: z110.boolean().optional(),
2344
- is_stroke_dashed: z110.boolean().optional(),
2345
- color: z110.string().optional()
2460
+ is_closed: z115.boolean().optional(),
2461
+ is_stroke_dashed: z115.boolean().optional(),
2462
+ color: z115.string().optional()
2346
2463
  }).describe("Defines a courtyard outline on the PCB");
2347
2464
  expectTypesMatch(true);
2348
2465
 
2349
2466
  // src/cad/cad_component.ts
2350
- import { z as z111 } from "zod";
2351
- var cad_component = z111.object({
2352
- type: z111.literal("cad_component"),
2353
- cad_component_id: z111.string(),
2354
- pcb_component_id: z111.string(),
2355
- source_component_id: z111.string(),
2467
+ import { z as z116 } from "zod";
2468
+ var cad_component = z116.object({
2469
+ type: z116.literal("cad_component"),
2470
+ cad_component_id: z116.string(),
2471
+ pcb_component_id: z116.string(),
2472
+ source_component_id: z116.string(),
2356
2473
  position: point3,
2357
2474
  rotation: point3.optional(),
2358
2475
  size: point3.optional(),
2359
2476
  layer: layer_ref.optional(),
2360
- subcircuit_id: z111.string().optional(),
2477
+ subcircuit_id: z116.string().optional(),
2361
2478
  // These are all ways to generate/load the 3d model
2362
- footprinter_string: z111.string().optional(),
2363
- model_obj_url: z111.string().optional(),
2364
- model_stl_url: z111.string().optional(),
2365
- model_3mf_url: z111.string().optional(),
2366
- model_gltf_url: z111.string().optional(),
2367
- model_glb_url: z111.string().optional(),
2368
- model_step_url: z111.string().optional(),
2369
- model_wrl_url: z111.string().optional(),
2370
- model_unit_to_mm_scale_factor: z111.number().optional(),
2371
- model_jscad: z111.any().optional()
2479
+ footprinter_string: z116.string().optional(),
2480
+ model_obj_url: z116.string().optional(),
2481
+ model_stl_url: z116.string().optional(),
2482
+ model_3mf_url: z116.string().optional(),
2483
+ model_gltf_url: z116.string().optional(),
2484
+ model_glb_url: z116.string().optional(),
2485
+ model_step_url: z116.string().optional(),
2486
+ model_wrl_url: z116.string().optional(),
2487
+ model_unit_to_mm_scale_factor: z116.number().optional(),
2488
+ model_jscad: z116.any().optional()
2372
2489
  }).describe("Defines a component on the PCB");
2373
2490
  expectTypesMatch(true);
2374
2491
 
2375
2492
  // src/simulation/simulation_voltage_source.ts
2376
- import { z as z112 } from "zod";
2377
- var wave_shape = z112.enum(["sinewave", "square", "triangle", "sawtooth"]);
2378
- var percentage = z112.union([z112.string(), z112.number()]).transform((val) => {
2493
+ import { z as z117 } from "zod";
2494
+ var wave_shape = z117.enum(["sinewave", "square", "triangle", "sawtooth"]);
2495
+ var percentage = z117.union([z117.string(), z117.number()]).transform((val) => {
2379
2496
  if (typeof val === "string") {
2380
2497
  if (val.endsWith("%")) {
2381
2498
  return parseFloat(val.slice(0, -1)) / 100;
@@ -2384,30 +2501,30 @@ var percentage = z112.union([z112.string(), z112.number()]).transform((val) => {
2384
2501
  }
2385
2502
  return val;
2386
2503
  }).pipe(
2387
- z112.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2504
+ z117.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2388
2505
  );
2389
- var simulation_dc_voltage_source = z112.object({
2390
- type: z112.literal("simulation_voltage_source"),
2506
+ var simulation_dc_voltage_source = z117.object({
2507
+ type: z117.literal("simulation_voltage_source"),
2391
2508
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2392
2509
  "simulation_voltage_source"
2393
2510
  ),
2394
- is_dc_source: z112.literal(true).optional().default(true),
2395
- positive_source_port_id: z112.string().optional(),
2396
- negative_source_port_id: z112.string().optional(),
2397
- positive_source_net_id: z112.string().optional(),
2398
- negative_source_net_id: z112.string().optional(),
2511
+ is_dc_source: z117.literal(true).optional().default(true),
2512
+ positive_source_port_id: z117.string().optional(),
2513
+ negative_source_port_id: z117.string().optional(),
2514
+ positive_source_net_id: z117.string().optional(),
2515
+ negative_source_net_id: z117.string().optional(),
2399
2516
  voltage
2400
2517
  }).describe("Defines a DC voltage source for simulation");
2401
- var simulation_ac_voltage_source = z112.object({
2402
- type: z112.literal("simulation_voltage_source"),
2518
+ var simulation_ac_voltage_source = z117.object({
2519
+ type: z117.literal("simulation_voltage_source"),
2403
2520
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2404
2521
  "simulation_voltage_source"
2405
2522
  ),
2406
- is_dc_source: z112.literal(false),
2407
- terminal1_source_port_id: z112.string().optional(),
2408
- terminal2_source_port_id: z112.string().optional(),
2409
- terminal1_source_net_id: z112.string().optional(),
2410
- terminal2_source_net_id: z112.string().optional(),
2523
+ is_dc_source: z117.literal(false),
2524
+ terminal1_source_port_id: z117.string().optional(),
2525
+ terminal2_source_port_id: z117.string().optional(),
2526
+ terminal1_source_net_id: z117.string().optional(),
2527
+ terminal2_source_net_id: z117.string().optional(),
2411
2528
  voltage: voltage.optional(),
2412
2529
  frequency: frequency.optional(),
2413
2530
  peak_to_peak_voltage: voltage.optional(),
@@ -2415,25 +2532,25 @@ var simulation_ac_voltage_source = z112.object({
2415
2532
  phase: rotation.optional(),
2416
2533
  duty_cycle: percentage.optional()
2417
2534
  }).describe("Defines an AC voltage source for simulation");
2418
- var simulation_voltage_source = z112.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2535
+ var simulation_voltage_source = z117.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2419
2536
  expectTypesMatch(true);
2420
2537
  expectTypesMatch(true);
2421
2538
  expectTypesMatch(true);
2422
2539
 
2423
2540
  // src/simulation/simulation_experiment.ts
2424
- import { z as z113 } from "zod";
2425
- var experiment_type = z113.union([
2426
- z113.literal("spice_dc_sweep"),
2427
- z113.literal("spice_dc_operating_point"),
2428
- z113.literal("spice_transient_analysis"),
2429
- z113.literal("spice_ac_analysis")
2541
+ import { z as z118 } from "zod";
2542
+ var experiment_type = z118.union([
2543
+ z118.literal("spice_dc_sweep"),
2544
+ z118.literal("spice_dc_operating_point"),
2545
+ z118.literal("spice_transient_analysis"),
2546
+ z118.literal("spice_ac_analysis")
2430
2547
  ]);
2431
- var simulation_experiment = z113.object({
2432
- type: z113.literal("simulation_experiment"),
2548
+ var simulation_experiment = z118.object({
2549
+ type: z118.literal("simulation_experiment"),
2433
2550
  simulation_experiment_id: getZodPrefixedIdWithDefault(
2434
2551
  "simulation_experiment"
2435
2552
  ),
2436
- name: z113.string(),
2553
+ name: z118.string(),
2437
2554
  experiment_type,
2438
2555
  time_per_step: duration_ms.optional(),
2439
2556
  start_time_ms: ms.optional(),
@@ -2442,47 +2559,47 @@ var simulation_experiment = z113.object({
2442
2559
  expectTypesMatch(true);
2443
2560
 
2444
2561
  // src/simulation/simulation_transient_voltage_graph.ts
2445
- import { z as z114 } from "zod";
2446
- var simulation_transient_voltage_graph = z114.object({
2447
- type: z114.literal("simulation_transient_voltage_graph"),
2562
+ import { z as z119 } from "zod";
2563
+ var simulation_transient_voltage_graph = z119.object({
2564
+ type: z119.literal("simulation_transient_voltage_graph"),
2448
2565
  simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
2449
2566
  "simulation_transient_voltage_graph"
2450
2567
  ),
2451
- simulation_experiment_id: z114.string(),
2452
- timestamps_ms: z114.array(z114.number()).optional(),
2453
- voltage_levels: z114.array(z114.number()),
2454
- schematic_voltage_probe_id: z114.string().optional(),
2455
- subcircuit_connectivity_map_key: z114.string().optional(),
2568
+ simulation_experiment_id: z119.string(),
2569
+ timestamps_ms: z119.array(z119.number()).optional(),
2570
+ voltage_levels: z119.array(z119.number()),
2571
+ schematic_voltage_probe_id: z119.string().optional(),
2572
+ subcircuit_connectivity_map_key: z119.string().optional(),
2456
2573
  time_per_step: duration_ms,
2457
2574
  start_time_ms: ms,
2458
2575
  end_time_ms: ms,
2459
- name: z114.string().optional()
2576
+ name: z119.string().optional()
2460
2577
  }).describe("Stores voltage measurements over time for a simulation");
2461
2578
  expectTypesMatch(true);
2462
2579
 
2463
2580
  // src/simulation/simulation_switch.ts
2464
- import { z as z115 } from "zod";
2465
- var simulation_switch = z115.object({
2466
- type: z115.literal("simulation_switch"),
2581
+ import { z as z120 } from "zod";
2582
+ var simulation_switch = z120.object({
2583
+ type: z120.literal("simulation_switch"),
2467
2584
  simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
2468
2585
  closes_at: ms.optional(),
2469
2586
  opens_at: ms.optional(),
2470
- starts_closed: z115.boolean().optional(),
2587
+ starts_closed: z120.boolean().optional(),
2471
2588
  switching_frequency: frequency.optional()
2472
2589
  }).describe("Defines a switch for simulation timing control");
2473
2590
  expectTypesMatch(true);
2474
2591
 
2475
2592
  // src/simulation/simulation_voltage_probe.ts
2476
- import { z as z116 } from "zod";
2477
- var simulation_voltage_probe = z116.object({
2478
- type: z116.literal("simulation_voltage_probe"),
2593
+ import { z as z121 } from "zod";
2594
+ var simulation_voltage_probe = z121.object({
2595
+ type: z121.literal("simulation_voltage_probe"),
2479
2596
  simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
2480
2597
  "simulation_voltage_probe"
2481
2598
  ),
2482
- source_port_id: z116.string().optional(),
2483
- source_net_id: z116.string().optional(),
2484
- name: z116.string().optional(),
2485
- subcircuit_id: z116.string().optional()
2599
+ source_port_id: z121.string().optional(),
2600
+ source_net_id: z121.string().optional(),
2601
+ name: z121.string().optional(),
2602
+ subcircuit_id: z121.string().optional()
2486
2603
  }).describe(
2487
2604
  "Defines a voltage probe for simulation, connected to a port or a net"
2488
2605
  ).refine(
@@ -2494,8 +2611,8 @@ var simulation_voltage_probe = z116.object({
2494
2611
  expectTypesMatch(true);
2495
2612
 
2496
2613
  // src/any_circuit_element.ts
2497
- import { z as z117 } from "zod";
2498
- var any_circuit_element = z117.union([
2614
+ import { z as z122 } from "zod";
2615
+ var any_circuit_element = z122.union([
2499
2616
  source_trace,
2500
2617
  source_port,
2501
2618
  any_source_component,
@@ -2557,6 +2674,11 @@ var any_circuit_element = z117.union([
2557
2674
  pcb_fabrication_note_path,
2558
2675
  pcb_fabrication_note_text,
2559
2676
  pcb_fabrication_note_rect,
2677
+ pcb_note_text,
2678
+ pcb_note_rect,
2679
+ pcb_note_path,
2680
+ pcb_note_line,
2681
+ pcb_note_dimension,
2560
2682
  pcb_autorouting_error,
2561
2683
  pcb_footprint_overlap_error,
2562
2684
  pcb_breakout_point,
@@ -2645,10 +2767,17 @@ export {
2645
2767
  pcb_hole,
2646
2768
  pcb_hole_circle_or_square_shape,
2647
2769
  pcb_hole_oval_shape,
2770
+ pcb_hole_pill_shape,
2771
+ pcb_hole_rotated_pill_shape,
2648
2772
  pcb_keepout,
2649
2773
  pcb_manual_edit_conflict_warning,
2650
2774
  pcb_missing_footprint_error,
2651
2775
  pcb_net,
2776
+ pcb_note_dimension,
2777
+ pcb_note_line,
2778
+ pcb_note_path,
2779
+ pcb_note_rect,
2780
+ pcb_note_text,
2652
2781
  pcb_placement_error,
2653
2782
  pcb_plated_hole,
2654
2783
  pcb_port,