circuit-json 0.0.276 → 0.0.278

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