circuit-json 0.0.276 → 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
@@ -2016,64 +2016,150 @@ 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_note_text.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_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"),
2023
2109
  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()
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()
2030
2116
  }).describe("Error emitted when a pcb footprint overlaps with another element");
2031
2117
  expectTypesMatch(
2032
2118
  true
2033
2119
  );
2034
2120
 
2035
2121
  // 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(),
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(),
2042
2128
  center: point,
2043
2129
  width: distance,
2044
2130
  height: distance,
2045
- pcb_keepout_id: z94.string(),
2046
- layers: z94.array(z94.string()),
2131
+ pcb_keepout_id: z99.string(),
2132
+ layers: z99.array(z99.string()),
2047
2133
  // Specify layers where the keepout applies
2048
- description: z94.string().optional()
2134
+ description: z99.string().optional()
2049
2135
  // Optional description of the keepout
2050
2136
  }).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(),
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(),
2056
2142
  center: point,
2057
2143
  radius: distance,
2058
- pcb_keepout_id: z94.string(),
2059
- layers: z94.array(z94.string()),
2144
+ pcb_keepout_id: z99.string(),
2145
+ layers: z99.array(z99.string()),
2060
2146
  // Specify layers where the keepout applies
2061
- description: z94.string().optional()
2147
+ description: z99.string().optional()
2062
2148
  // Optional description of the keepout
2063
2149
  })
2064
2150
  );
2065
2151
  expectTypesMatch(true);
2066
2152
 
2067
2153
  // 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"),
2154
+ import { z as z100 } from "zod";
2155
+ var pcb_cutout_base = z100.object({
2156
+ type: z100.literal("pcb_cutout"),
2071
2157
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
2072
- pcb_group_id: z95.string().optional(),
2073
- subcircuit_id: z95.string().optional()
2158
+ pcb_group_id: z100.string().optional(),
2159
+ subcircuit_id: z100.string().optional()
2074
2160
  });
2075
2161
  var pcb_cutout_rect = pcb_cutout_base.extend({
2076
- shape: z95.literal("rect"),
2162
+ shape: z100.literal("rect"),
2077
2163
  center: point,
2078
2164
  width: length,
2079
2165
  height: length,
@@ -2081,17 +2167,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
2081
2167
  });
2082
2168
  expectTypesMatch(true);
2083
2169
  var pcb_cutout_circle = pcb_cutout_base.extend({
2084
- shape: z95.literal("circle"),
2170
+ shape: z100.literal("circle"),
2085
2171
  center: point,
2086
2172
  radius: length
2087
2173
  });
2088
2174
  expectTypesMatch(true);
2089
2175
  var pcb_cutout_polygon = pcb_cutout_base.extend({
2090
- shape: z95.literal("polygon"),
2091
- points: z95.array(point)
2176
+ shape: z100.literal("polygon"),
2177
+ points: z100.array(point)
2092
2178
  });
2093
2179
  expectTypesMatch(true);
2094
- var pcb_cutout = z95.discriminatedUnion("shape", [
2180
+ var pcb_cutout = z100.discriminatedUnion("shape", [
2095
2181
  pcb_cutout_rect,
2096
2182
  pcb_cutout_circle,
2097
2183
  pcb_cutout_polygon
@@ -2099,117 +2185,117 @@ var pcb_cutout = z95.discriminatedUnion("shape", [
2099
2185
  expectTypesMatch(true);
2100
2186
 
2101
2187
  // 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"),
2188
+ import { z as z101 } from "zod";
2189
+ var pcb_missing_footprint_error = z101.object({
2190
+ type: z101.literal("pcb_missing_footprint_error"),
2105
2191
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
2106
2192
  "pcb_missing_footprint_error"
2107
2193
  ),
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()
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()
2113
2199
  }).describe("Defines a missing footprint error on the PCB");
2114
2200
  expectTypesMatch(
2115
2201
  true
2116
2202
  );
2117
2203
 
2118
2204
  // 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"),
2205
+ import { z as z102 } from "zod";
2206
+ var external_footprint_load_error = z102.object({
2207
+ type: z102.literal("external_footprint_load_error"),
2122
2208
  external_footprint_load_error_id: getZodPrefixedIdWithDefault(
2123
2209
  "external_footprint_load_error"
2124
2210
  ),
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()
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()
2132
2218
  }).describe("Defines an error when an external footprint fails to load");
2133
2219
  expectTypesMatch(true);
2134
2220
 
2135
2221
  // 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"),
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"),
2139
2225
  circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
2140
2226
  "circuit_json_footprint_load_error"
2141
2227
  ),
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()
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()
2149
2235
  }).describe("Defines an error when a circuit JSON footprint fails to load");
2150
2236
  expectTypesMatch(true);
2151
2237
 
2152
2238
  // src/pcb/pcb_group.ts
2153
- import { z as z99 } from "zod";
2154
- var pcb_group = z99.object({
2155
- type: z99.literal("pcb_group"),
2239
+ import { z as z104 } from "zod";
2240
+ var pcb_group = z104.object({
2241
+ type: z104.literal("pcb_group"),
2156
2242
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
2157
- source_group_id: z99.string(),
2158
- is_subcircuit: z99.boolean().optional(),
2159
- subcircuit_id: z99.string().optional(),
2243
+ source_group_id: z104.string(),
2244
+ is_subcircuit: z104.boolean().optional(),
2245
+ subcircuit_id: z104.string().optional(),
2160
2246
  width: length,
2161
2247
  height: length,
2162
2248
  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({
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({
2168
2254
  trace_clearance: length
2169
2255
  }).optional(),
2170
- autorouter_used_string: z99.string().optional()
2256
+ autorouter_used_string: z104.string().optional()
2171
2257
  }).describe("Defines a group of components on the PCB");
2172
2258
  expectTypesMatch(true);
2173
2259
 
2174
2260
  // 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"),
2261
+ import { z as z105 } from "zod";
2262
+ var pcb_autorouting_error = z105.object({
2263
+ type: z105.literal("pcb_autorouting_error"),
2178
2264
  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()
2265
+ error_type: z105.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2266
+ message: z105.string(),
2267
+ subcircuit_id: z105.string().optional()
2182
2268
  }).describe("The autorouting has failed to route a portion of the board");
2183
2269
  expectTypesMatch(true);
2184
2270
 
2185
2271
  // 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"),
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"),
2189
2275
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
2190
2276
  "pcb_manual_edit_conflict_warning"
2191
2277
  ),
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()
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()
2198
2284
  }).describe(
2199
2285
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
2200
2286
  );
2201
2287
  expectTypesMatch(true);
2202
2288
 
2203
2289
  // 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"),
2290
+ import { z as z107 } from "zod";
2291
+ var pcb_breakout_point = z107.object({
2292
+ type: z107.literal("pcb_breakout_point"),
2207
2293
  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(),
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(),
2213
2299
  x: distance,
2214
2300
  y: distance
2215
2301
  }).describe(
@@ -2218,60 +2304,60 @@ var pcb_breakout_point = z102.object({
2218
2304
  expectTypesMatch(true);
2219
2305
 
2220
2306
  // 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"),
2307
+ import { z as z108 } from "zod";
2308
+ var pcb_ground_plane = z108.object({
2309
+ type: z108.literal("pcb_ground_plane"),
2224
2310
  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()
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()
2229
2315
  }).describe("Defines a ground plane on the PCB");
2230
2316
  expectTypesMatch(true);
2231
2317
 
2232
2318
  // 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"),
2319
+ import { z as z109 } from "zod";
2320
+ var pcb_ground_plane_region = z109.object({
2321
+ type: z109.literal("pcb_ground_plane_region"),
2236
2322
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
2237
2323
  "pcb_ground_plane_region"
2238
2324
  ),
2239
- pcb_ground_plane_id: z104.string(),
2240
- pcb_group_id: z104.string().optional(),
2241
- 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(),
2242
2328
  layer: layer_ref,
2243
- points: z104.array(point)
2329
+ points: z109.array(point)
2244
2330
  }).describe("Defines a polygon region of a ground plane");
2245
2331
  expectTypesMatch(true);
2246
2332
 
2247
2333
  // 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"),
2334
+ import { z as z110 } from "zod";
2335
+ var pcb_thermal_spoke = z110.object({
2336
+ type: z110.literal("pcb_thermal_spoke"),
2251
2337
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
2252
- pcb_ground_plane_id: z105.string(),
2253
- shape: z105.string(),
2254
- spoke_count: z105.number(),
2338
+ pcb_ground_plane_id: z110.string(),
2339
+ shape: z110.string(),
2340
+ spoke_count: z110.number(),
2255
2341
  spoke_thickness: distance,
2256
2342
  spoke_inner_diameter: distance,
2257
2343
  spoke_outer_diameter: distance,
2258
- pcb_plated_hole_id: z105.string().optional(),
2259
- subcircuit_id: z105.string().optional()
2344
+ pcb_plated_hole_id: z110.string().optional(),
2345
+ subcircuit_id: z110.string().optional()
2260
2346
  }).describe("Pattern for connecting a ground plane to a plated hole");
2261
2347
  expectTypesMatch(true);
2262
2348
 
2263
2349
  // 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"),
2350
+ import { z as z111 } from "zod";
2351
+ var pcb_copper_pour_base = z111.object({
2352
+ type: z111.literal("pcb_copper_pour"),
2267
2353
  pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
2268
- pcb_group_id: z106.string().optional(),
2269
- subcircuit_id: z106.string().optional(),
2354
+ pcb_group_id: z111.string().optional(),
2355
+ subcircuit_id: z111.string().optional(),
2270
2356
  layer: layer_ref,
2271
- source_net_id: z106.string().optional()
2357
+ source_net_id: z111.string().optional()
2272
2358
  });
2273
2359
  var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2274
- shape: z106.literal("rect"),
2360
+ shape: z111.literal("rect"),
2275
2361
  center: point,
2276
2362
  width: length,
2277
2363
  height: length,
@@ -2279,16 +2365,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2279
2365
  });
2280
2366
  expectTypesMatch(true);
2281
2367
  var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
2282
- shape: z106.literal("brep"),
2368
+ shape: z111.literal("brep"),
2283
2369
  brep_shape
2284
2370
  });
2285
2371
  expectTypesMatch(true);
2286
2372
  var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
2287
- shape: z106.literal("polygon"),
2288
- points: z106.array(point)
2373
+ shape: z111.literal("polygon"),
2374
+ points: z111.array(point)
2289
2375
  });
2290
2376
  expectTypesMatch(true);
2291
- var pcb_copper_pour = z106.discriminatedUnion("shape", [
2377
+ var pcb_copper_pour = z111.discriminatedUnion("shape", [
2292
2378
  pcb_copper_pour_rect,
2293
2379
  pcb_copper_pour_brep,
2294
2380
  pcb_copper_pour_polygon
@@ -2296,117 +2382,117 @@ var pcb_copper_pour = z106.discriminatedUnion("shape", [
2296
2382
  expectTypesMatch(true);
2297
2383
 
2298
2384
  // 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"),
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"),
2302
2388
  pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
2303
2389
  "pcb_component_outside_board_error"
2304
2390
  ),
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(),
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(),
2309
2395
  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()
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()
2315
2401
  }),
2316
- subcircuit_id: z107.string().optional(),
2317
- source_component_id: z107.string().optional()
2402
+ subcircuit_id: z112.string().optional(),
2403
+ source_component_id: z112.string().optional()
2318
2404
  }).describe(
2319
2405
  "Error emitted when a PCB component is placed outside the board boundaries"
2320
2406
  );
2321
2407
  expectTypesMatch(true);
2322
2408
 
2323
2409
  // 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"),
2410
+ import { z as z113 } from "zod";
2411
+ var pcb_via_clearance_error = z113.object({
2412
+ type: z113.literal("pcb_via_clearance_error"),
2327
2413
  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),
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),
2331
2417
  minimum_clearance: distance.optional(),
2332
2418
  actual_clearance: distance.optional(),
2333
- pcb_center: z108.object({
2334
- x: z108.number().optional(),
2335
- y: z108.number().optional()
2419
+ pcb_center: z113.object({
2420
+ x: z113.number().optional(),
2421
+ y: z113.number().optional()
2336
2422
  }).optional(),
2337
- subcircuit_id: z108.string().optional()
2423
+ subcircuit_id: z113.string().optional()
2338
2424
  }).describe("Error emitted when vias are closer than the allowed clearance");
2339
2425
  expectTypesMatch(true);
2340
2426
 
2341
2427
  // 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"),
2428
+ import { z as z114 } from "zod";
2429
+ var pcb_courtyard_rect = z114.object({
2430
+ type: z114.literal("pcb_courtyard_rect"),
2345
2431
  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(),
2432
+ pcb_component_id: z114.string(),
2433
+ pcb_group_id: z114.string().optional(),
2434
+ subcircuit_id: z114.string().optional(),
2349
2435
  center: point,
2350
2436
  width: length,
2351
2437
  height: length,
2352
2438
  layer: visible_layer,
2353
2439
  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()
2440
+ is_filled: z114.boolean().optional(),
2441
+ has_stroke: z114.boolean().optional(),
2442
+ is_stroke_dashed: z114.boolean().optional(),
2443
+ color: z114.string().optional()
2358
2444
  }).describe("Defines a courtyard rectangle on the PCB");
2359
2445
  expectTypesMatch(true);
2360
2446
 
2361
2447
  // 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"),
2448
+ import { z as z115 } from "zod";
2449
+ var pcb_courtyard_outline = z115.object({
2450
+ type: z115.literal("pcb_courtyard_outline"),
2365
2451
  pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
2366
2452
  "pcb_courtyard_outline"
2367
2453
  ),
2368
- pcb_component_id: z110.string(),
2369
- pcb_group_id: z110.string().optional(),
2370
- subcircuit_id: z110.string().optional(),
2454
+ pcb_component_id: z115.string(),
2455
+ pcb_group_id: z115.string().optional(),
2456
+ subcircuit_id: z115.string().optional(),
2371
2457
  layer: visible_layer,
2372
- outline: z110.array(point).min(2),
2458
+ outline: z115.array(point).min(2),
2373
2459
  stroke_width: length.default("0.1mm"),
2374
- is_closed: z110.boolean().optional(),
2375
- is_stroke_dashed: z110.boolean().optional(),
2376
- color: z110.string().optional()
2460
+ is_closed: z115.boolean().optional(),
2461
+ is_stroke_dashed: z115.boolean().optional(),
2462
+ color: z115.string().optional()
2377
2463
  }).describe("Defines a courtyard outline on the PCB");
2378
2464
  expectTypesMatch(true);
2379
2465
 
2380
2466
  // 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(),
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(),
2387
2473
  position: point3,
2388
2474
  rotation: point3.optional(),
2389
2475
  size: point3.optional(),
2390
2476
  layer: layer_ref.optional(),
2391
- subcircuit_id: z111.string().optional(),
2477
+ subcircuit_id: z116.string().optional(),
2392
2478
  // 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()
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()
2403
2489
  }).describe("Defines a component on the PCB");
2404
2490
  expectTypesMatch(true);
2405
2491
 
2406
2492
  // 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) => {
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) => {
2410
2496
  if (typeof val === "string") {
2411
2497
  if (val.endsWith("%")) {
2412
2498
  return parseFloat(val.slice(0, -1)) / 100;
@@ -2415,30 +2501,30 @@ var percentage = z112.union([z112.string(), z112.number()]).transform((val) => {
2415
2501
  }
2416
2502
  return val;
2417
2503
  }).pipe(
2418
- 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%")
2419
2505
  );
2420
- var simulation_dc_voltage_source = z112.object({
2421
- type: z112.literal("simulation_voltage_source"),
2506
+ var simulation_dc_voltage_source = z117.object({
2507
+ type: z117.literal("simulation_voltage_source"),
2422
2508
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2423
2509
  "simulation_voltage_source"
2424
2510
  ),
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(),
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(),
2430
2516
  voltage
2431
2517
  }).describe("Defines a DC voltage source for simulation");
2432
- var simulation_ac_voltage_source = z112.object({
2433
- type: z112.literal("simulation_voltage_source"),
2518
+ var simulation_ac_voltage_source = z117.object({
2519
+ type: z117.literal("simulation_voltage_source"),
2434
2520
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2435
2521
  "simulation_voltage_source"
2436
2522
  ),
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(),
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(),
2442
2528
  voltage: voltage.optional(),
2443
2529
  frequency: frequency.optional(),
2444
2530
  peak_to_peak_voltage: voltage.optional(),
@@ -2446,25 +2532,25 @@ var simulation_ac_voltage_source = z112.object({
2446
2532
  phase: rotation.optional(),
2447
2533
  duty_cycle: percentage.optional()
2448
2534
  }).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");
2535
+ var simulation_voltage_source = z117.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2450
2536
  expectTypesMatch(true);
2451
2537
  expectTypesMatch(true);
2452
2538
  expectTypesMatch(true);
2453
2539
 
2454
2540
  // 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")
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")
2461
2547
  ]);
2462
- var simulation_experiment = z113.object({
2463
- type: z113.literal("simulation_experiment"),
2548
+ var simulation_experiment = z118.object({
2549
+ type: z118.literal("simulation_experiment"),
2464
2550
  simulation_experiment_id: getZodPrefixedIdWithDefault(
2465
2551
  "simulation_experiment"
2466
2552
  ),
2467
- name: z113.string(),
2553
+ name: z118.string(),
2468
2554
  experiment_type,
2469
2555
  time_per_step: duration_ms.optional(),
2470
2556
  start_time_ms: ms.optional(),
@@ -2473,47 +2559,47 @@ var simulation_experiment = z113.object({
2473
2559
  expectTypesMatch(true);
2474
2560
 
2475
2561
  // 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"),
2562
+ import { z as z119 } from "zod";
2563
+ var simulation_transient_voltage_graph = z119.object({
2564
+ type: z119.literal("simulation_transient_voltage_graph"),
2479
2565
  simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
2480
2566
  "simulation_transient_voltage_graph"
2481
2567
  ),
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(),
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(),
2487
2573
  time_per_step: duration_ms,
2488
2574
  start_time_ms: ms,
2489
2575
  end_time_ms: ms,
2490
- name: z114.string().optional()
2576
+ name: z119.string().optional()
2491
2577
  }).describe("Stores voltage measurements over time for a simulation");
2492
2578
  expectTypesMatch(true);
2493
2579
 
2494
2580
  // src/simulation/simulation_switch.ts
2495
- import { z as z115 } from "zod";
2496
- var simulation_switch = z115.object({
2497
- type: z115.literal("simulation_switch"),
2581
+ import { z as z120 } from "zod";
2582
+ var simulation_switch = z120.object({
2583
+ type: z120.literal("simulation_switch"),
2498
2584
  simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
2499
2585
  closes_at: ms.optional(),
2500
2586
  opens_at: ms.optional(),
2501
- starts_closed: z115.boolean().optional(),
2587
+ starts_closed: z120.boolean().optional(),
2502
2588
  switching_frequency: frequency.optional()
2503
2589
  }).describe("Defines a switch for simulation timing control");
2504
2590
  expectTypesMatch(true);
2505
2591
 
2506
2592
  // 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"),
2593
+ import { z as z121 } from "zod";
2594
+ var simulation_voltage_probe = z121.object({
2595
+ type: z121.literal("simulation_voltage_probe"),
2510
2596
  simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
2511
2597
  "simulation_voltage_probe"
2512
2598
  ),
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()
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()
2517
2603
  }).describe(
2518
2604
  "Defines a voltage probe for simulation, connected to a port or a net"
2519
2605
  ).refine(
@@ -2525,8 +2611,8 @@ var simulation_voltage_probe = z116.object({
2525
2611
  expectTypesMatch(true);
2526
2612
 
2527
2613
  // src/any_circuit_element.ts
2528
- import { z as z117 } from "zod";
2529
- var any_circuit_element = z117.union([
2614
+ import { z as z122 } from "zod";
2615
+ var any_circuit_element = z122.union([
2530
2616
  source_trace,
2531
2617
  source_port,
2532
2618
  any_source_component,
@@ -2588,6 +2674,11 @@ var any_circuit_element = z117.union([
2588
2674
  pcb_fabrication_note_path,
2589
2675
  pcb_fabrication_note_text,
2590
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,
2591
2682
  pcb_autorouting_error,
2592
2683
  pcb_footprint_overlap_error,
2593
2684
  pcb_breakout_point,
@@ -2682,6 +2773,11 @@ export {
2682
2773
  pcb_manual_edit_conflict_warning,
2683
2774
  pcb_missing_footprint_error,
2684
2775
  pcb_net,
2776
+ pcb_note_dimension,
2777
+ pcb_note_line,
2778
+ pcb_note_path,
2779
+ pcb_note_rect,
2780
+ pcb_note_text,
2685
2781
  pcb_placement_error,
2686
2782
  pcb_plated_hole,
2687
2783
  pcb_port,