circuit-json 0.0.283 → 0.0.284
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/README.md +19 -0
- package/dist/index.d.mts +83 -2
- package/dist/index.mjs +407 -393
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1808,6 +1808,7 @@ import { z as z81 } from "zod";
|
|
|
1808
1808
|
var pcb_board = z81.object({
|
|
1809
1809
|
type: z81.literal("pcb_board"),
|
|
1810
1810
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1811
|
+
pcb_panel_id: z81.string().optional(),
|
|
1811
1812
|
is_subcircuit: z81.boolean().optional(),
|
|
1812
1813
|
subcircuit_id: z81.string().optional(),
|
|
1813
1814
|
width: length,
|
|
@@ -1820,37 +1821,48 @@ var pcb_board = z81.object({
|
|
|
1820
1821
|
}).describe("Defines the board outline of the PCB");
|
|
1821
1822
|
expectTypesMatch(true);
|
|
1822
1823
|
|
|
1823
|
-
// src/pcb/
|
|
1824
|
+
// src/pcb/pcb_panel.ts
|
|
1824
1825
|
import { z as z82 } from "zod";
|
|
1825
|
-
var
|
|
1826
|
-
type: z82.literal("
|
|
1826
|
+
var pcb_panel = z82.object({
|
|
1827
|
+
type: z82.literal("pcb_panel"),
|
|
1828
|
+
pcb_panel_id: getZodPrefixedIdWithDefault("pcb_panel"),
|
|
1829
|
+
width: length,
|
|
1830
|
+
height: length,
|
|
1831
|
+
covered_with_solder_mask: z82.boolean().optional().default(true)
|
|
1832
|
+
}).describe("Defines a PCB panel that can contain multiple boards");
|
|
1833
|
+
expectTypesMatch(true);
|
|
1834
|
+
|
|
1835
|
+
// src/pcb/pcb_placement_error.ts
|
|
1836
|
+
import { z as z83 } from "zod";
|
|
1837
|
+
var pcb_placement_error = z83.object({
|
|
1838
|
+
type: z83.literal("pcb_placement_error"),
|
|
1827
1839
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1828
|
-
error_type:
|
|
1829
|
-
message:
|
|
1830
|
-
subcircuit_id:
|
|
1840
|
+
error_type: z83.literal("pcb_placement_error").default("pcb_placement_error"),
|
|
1841
|
+
message: z83.string(),
|
|
1842
|
+
subcircuit_id: z83.string().optional()
|
|
1831
1843
|
}).describe("Defines a placement error on the PCB");
|
|
1832
1844
|
expectTypesMatch(true);
|
|
1833
1845
|
|
|
1834
1846
|
// src/pcb/pcb_trace_hint.ts
|
|
1835
|
-
import { z as
|
|
1836
|
-
var pcb_trace_hint =
|
|
1837
|
-
type:
|
|
1847
|
+
import { z as z84 } from "zod";
|
|
1848
|
+
var pcb_trace_hint = z84.object({
|
|
1849
|
+
type: z84.literal("pcb_trace_hint"),
|
|
1838
1850
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1839
|
-
pcb_port_id:
|
|
1840
|
-
pcb_component_id:
|
|
1841
|
-
route:
|
|
1842
|
-
subcircuit_id:
|
|
1851
|
+
pcb_port_id: z84.string(),
|
|
1852
|
+
pcb_component_id: z84.string(),
|
|
1853
|
+
route: z84.array(route_hint_point),
|
|
1854
|
+
subcircuit_id: z84.string().optional()
|
|
1843
1855
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1844
1856
|
expectTypesMatch(true);
|
|
1845
1857
|
|
|
1846
1858
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1847
|
-
import { z as
|
|
1848
|
-
var pcb_silkscreen_line =
|
|
1849
|
-
type:
|
|
1859
|
+
import { z as z85 } from "zod";
|
|
1860
|
+
var pcb_silkscreen_line = z85.object({
|
|
1861
|
+
type: z85.literal("pcb_silkscreen_line"),
|
|
1850
1862
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1851
|
-
pcb_component_id:
|
|
1852
|
-
pcb_group_id:
|
|
1853
|
-
subcircuit_id:
|
|
1863
|
+
pcb_component_id: z85.string(),
|
|
1864
|
+
pcb_group_id: z85.string().optional(),
|
|
1865
|
+
subcircuit_id: z85.string().optional(),
|
|
1854
1866
|
stroke_width: distance.default("0.1mm"),
|
|
1855
1867
|
x1: distance,
|
|
1856
1868
|
y1: distance,
|
|
@@ -1861,32 +1873,32 @@ var pcb_silkscreen_line = z84.object({
|
|
|
1861
1873
|
expectTypesMatch(true);
|
|
1862
1874
|
|
|
1863
1875
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1864
|
-
import { z as
|
|
1865
|
-
var pcb_silkscreen_path =
|
|
1866
|
-
type:
|
|
1876
|
+
import { z as z86 } from "zod";
|
|
1877
|
+
var pcb_silkscreen_path = z86.object({
|
|
1878
|
+
type: z86.literal("pcb_silkscreen_path"),
|
|
1867
1879
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1868
|
-
pcb_component_id:
|
|
1869
|
-
pcb_group_id:
|
|
1870
|
-
subcircuit_id:
|
|
1880
|
+
pcb_component_id: z86.string(),
|
|
1881
|
+
pcb_group_id: z86.string().optional(),
|
|
1882
|
+
subcircuit_id: z86.string().optional(),
|
|
1871
1883
|
layer: visible_layer,
|
|
1872
|
-
route:
|
|
1884
|
+
route: z86.array(point),
|
|
1873
1885
|
stroke_width: length
|
|
1874
1886
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1875
1887
|
expectTypesMatch(true);
|
|
1876
1888
|
|
|
1877
1889
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1878
|
-
import { z as
|
|
1879
|
-
var pcb_silkscreen_text =
|
|
1880
|
-
type:
|
|
1890
|
+
import { z as z87 } from "zod";
|
|
1891
|
+
var pcb_silkscreen_text = z87.object({
|
|
1892
|
+
type: z87.literal("pcb_silkscreen_text"),
|
|
1881
1893
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1882
|
-
pcb_group_id:
|
|
1883
|
-
subcircuit_id:
|
|
1884
|
-
font:
|
|
1894
|
+
pcb_group_id: z87.string().optional(),
|
|
1895
|
+
subcircuit_id: z87.string().optional(),
|
|
1896
|
+
font: z87.literal("tscircuit2024").default("tscircuit2024"),
|
|
1885
1897
|
font_size: distance.default("0.2mm"),
|
|
1886
|
-
pcb_component_id:
|
|
1887
|
-
text:
|
|
1888
|
-
is_knockout:
|
|
1889
|
-
knockout_padding:
|
|
1898
|
+
pcb_component_id: z87.string(),
|
|
1899
|
+
text: z87.string(),
|
|
1900
|
+
is_knockout: z87.boolean().default(false).optional(),
|
|
1901
|
+
knockout_padding: z87.object({
|
|
1890
1902
|
left: length,
|
|
1891
1903
|
top: length,
|
|
1892
1904
|
bottom: length,
|
|
@@ -1897,43 +1909,43 @@ var pcb_silkscreen_text = z86.object({
|
|
|
1897
1909
|
bottom: "0.2mm",
|
|
1898
1910
|
right: "0.2mm"
|
|
1899
1911
|
}).optional(),
|
|
1900
|
-
ccw_rotation:
|
|
1912
|
+
ccw_rotation: z87.number().optional(),
|
|
1901
1913
|
layer: layer_ref,
|
|
1902
|
-
is_mirrored:
|
|
1914
|
+
is_mirrored: z87.boolean().default(false).optional(),
|
|
1903
1915
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1904
1916
|
anchor_alignment: ninePointAnchor.default("center")
|
|
1905
1917
|
}).describe("Defines silkscreen text on the PCB");
|
|
1906
1918
|
expectTypesMatch(true);
|
|
1907
1919
|
|
|
1908
1920
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1909
|
-
import { z as
|
|
1910
|
-
var pcb_silkscreen_rect =
|
|
1911
|
-
type:
|
|
1921
|
+
import { z as z88 } from "zod";
|
|
1922
|
+
var pcb_silkscreen_rect = z88.object({
|
|
1923
|
+
type: z88.literal("pcb_silkscreen_rect"),
|
|
1912
1924
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1913
|
-
pcb_component_id:
|
|
1914
|
-
pcb_group_id:
|
|
1915
|
-
subcircuit_id:
|
|
1925
|
+
pcb_component_id: z88.string(),
|
|
1926
|
+
pcb_group_id: z88.string().optional(),
|
|
1927
|
+
subcircuit_id: z88.string().optional(),
|
|
1916
1928
|
center: point,
|
|
1917
1929
|
width: length,
|
|
1918
1930
|
height: length,
|
|
1919
1931
|
layer: layer_ref,
|
|
1920
1932
|
stroke_width: length.default("1mm"),
|
|
1921
|
-
is_filled:
|
|
1922
|
-
has_stroke:
|
|
1923
|
-
is_stroke_dashed:
|
|
1933
|
+
is_filled: z88.boolean().default(true).optional(),
|
|
1934
|
+
has_stroke: z88.boolean().optional(),
|
|
1935
|
+
is_stroke_dashed: z88.boolean().optional()
|
|
1924
1936
|
}).describe("Defines a silkscreen rect on the PCB");
|
|
1925
1937
|
expectTypesMatch(true);
|
|
1926
1938
|
|
|
1927
1939
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1928
|
-
import { z as
|
|
1929
|
-
var pcb_silkscreen_circle =
|
|
1930
|
-
type:
|
|
1940
|
+
import { z as z89 } from "zod";
|
|
1941
|
+
var pcb_silkscreen_circle = z89.object({
|
|
1942
|
+
type: z89.literal("pcb_silkscreen_circle"),
|
|
1931
1943
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1932
1944
|
"pcb_silkscreen_circle"
|
|
1933
1945
|
),
|
|
1934
|
-
pcb_component_id:
|
|
1935
|
-
pcb_group_id:
|
|
1936
|
-
subcircuit_id:
|
|
1946
|
+
pcb_component_id: z89.string(),
|
|
1947
|
+
pcb_group_id: z89.string().optional(),
|
|
1948
|
+
subcircuit_id: z89.string().optional(),
|
|
1937
1949
|
center: point,
|
|
1938
1950
|
radius: length,
|
|
1939
1951
|
layer: visible_layer,
|
|
@@ -1942,13 +1954,13 @@ var pcb_silkscreen_circle = z88.object({
|
|
|
1942
1954
|
expectTypesMatch(true);
|
|
1943
1955
|
|
|
1944
1956
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1945
|
-
import { z as
|
|
1946
|
-
var pcb_silkscreen_oval =
|
|
1947
|
-
type:
|
|
1957
|
+
import { z as z90 } from "zod";
|
|
1958
|
+
var pcb_silkscreen_oval = z90.object({
|
|
1959
|
+
type: z90.literal("pcb_silkscreen_oval"),
|
|
1948
1960
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1949
|
-
pcb_component_id:
|
|
1950
|
-
pcb_group_id:
|
|
1951
|
-
subcircuit_id:
|
|
1961
|
+
pcb_component_id: z90.string(),
|
|
1962
|
+
pcb_group_id: z90.string().optional(),
|
|
1963
|
+
subcircuit_id: z90.string().optional(),
|
|
1952
1964
|
center: point,
|
|
1953
1965
|
radius_x: distance,
|
|
1954
1966
|
radius_y: distance,
|
|
@@ -1957,233 +1969,233 @@ var pcb_silkscreen_oval = z89.object({
|
|
|
1957
1969
|
expectTypesMatch(true);
|
|
1958
1970
|
|
|
1959
1971
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1960
|
-
import { z as
|
|
1961
|
-
var pcb_fabrication_note_text =
|
|
1962
|
-
type:
|
|
1972
|
+
import { z as z91 } from "zod";
|
|
1973
|
+
var pcb_fabrication_note_text = z91.object({
|
|
1974
|
+
type: z91.literal("pcb_fabrication_note_text"),
|
|
1963
1975
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1964
1976
|
"pcb_fabrication_note_text"
|
|
1965
1977
|
),
|
|
1966
|
-
subcircuit_id:
|
|
1967
|
-
pcb_group_id:
|
|
1968
|
-
font:
|
|
1978
|
+
subcircuit_id: z91.string().optional(),
|
|
1979
|
+
pcb_group_id: z91.string().optional(),
|
|
1980
|
+
font: z91.literal("tscircuit2024").default("tscircuit2024"),
|
|
1969
1981
|
font_size: distance.default("1mm"),
|
|
1970
|
-
pcb_component_id:
|
|
1971
|
-
text:
|
|
1982
|
+
pcb_component_id: z91.string(),
|
|
1983
|
+
text: z91.string(),
|
|
1972
1984
|
layer: visible_layer,
|
|
1973
1985
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1974
|
-
anchor_alignment:
|
|
1975
|
-
color:
|
|
1986
|
+
anchor_alignment: z91.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1987
|
+
color: z91.string().optional()
|
|
1976
1988
|
}).describe(
|
|
1977
1989
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1978
1990
|
);
|
|
1979
1991
|
expectTypesMatch(true);
|
|
1980
1992
|
|
|
1981
1993
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1982
|
-
import { z as
|
|
1983
|
-
var pcb_fabrication_note_path =
|
|
1984
|
-
type:
|
|
1994
|
+
import { z as z92 } from "zod";
|
|
1995
|
+
var pcb_fabrication_note_path = z92.object({
|
|
1996
|
+
type: z92.literal("pcb_fabrication_note_path"),
|
|
1985
1997
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1986
1998
|
"pcb_fabrication_note_path"
|
|
1987
1999
|
),
|
|
1988
|
-
pcb_component_id:
|
|
1989
|
-
subcircuit_id:
|
|
2000
|
+
pcb_component_id: z92.string(),
|
|
2001
|
+
subcircuit_id: z92.string().optional(),
|
|
1990
2002
|
layer: layer_ref,
|
|
1991
|
-
route:
|
|
2003
|
+
route: z92.array(point),
|
|
1992
2004
|
stroke_width: length,
|
|
1993
|
-
color:
|
|
2005
|
+
color: z92.string().optional()
|
|
1994
2006
|
}).describe(
|
|
1995
2007
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1996
2008
|
);
|
|
1997
2009
|
expectTypesMatch(true);
|
|
1998
2010
|
|
|
1999
2011
|
// src/pcb/pcb_fabrication_note_rect.ts
|
|
2000
|
-
import { z as
|
|
2001
|
-
var pcb_fabrication_note_rect =
|
|
2002
|
-
type:
|
|
2012
|
+
import { z as z93 } from "zod";
|
|
2013
|
+
var pcb_fabrication_note_rect = z93.object({
|
|
2014
|
+
type: z93.literal("pcb_fabrication_note_rect"),
|
|
2003
2015
|
pcb_fabrication_note_rect_id: getZodPrefixedIdWithDefault(
|
|
2004
2016
|
"pcb_fabrication_note_rect"
|
|
2005
2017
|
),
|
|
2006
|
-
pcb_component_id:
|
|
2007
|
-
pcb_group_id:
|
|
2008
|
-
subcircuit_id:
|
|
2018
|
+
pcb_component_id: z93.string(),
|
|
2019
|
+
pcb_group_id: z93.string().optional(),
|
|
2020
|
+
subcircuit_id: z93.string().optional(),
|
|
2009
2021
|
center: point,
|
|
2010
2022
|
width: length,
|
|
2011
2023
|
height: length,
|
|
2012
2024
|
layer: visible_layer,
|
|
2013
2025
|
stroke_width: length.default("0.1mm"),
|
|
2014
|
-
is_filled:
|
|
2015
|
-
has_stroke:
|
|
2016
|
-
is_stroke_dashed:
|
|
2017
|
-
color:
|
|
2026
|
+
is_filled: z93.boolean().optional(),
|
|
2027
|
+
has_stroke: z93.boolean().optional(),
|
|
2028
|
+
is_stroke_dashed: z93.boolean().optional(),
|
|
2029
|
+
color: z93.string().optional()
|
|
2018
2030
|
}).describe("Defines a fabrication note rectangle on the PCB");
|
|
2019
2031
|
expectTypesMatch(true);
|
|
2020
2032
|
|
|
2021
2033
|
// src/pcb/pcb_fabrication_note_dimension.ts
|
|
2022
|
-
import { z as
|
|
2023
|
-
var pcb_fabrication_note_dimension =
|
|
2024
|
-
type:
|
|
2034
|
+
import { z as z94 } from "zod";
|
|
2035
|
+
var pcb_fabrication_note_dimension = z94.object({
|
|
2036
|
+
type: z94.literal("pcb_fabrication_note_dimension"),
|
|
2025
2037
|
pcb_fabrication_note_dimension_id: getZodPrefixedIdWithDefault(
|
|
2026
2038
|
"pcb_fabrication_note_dimension"
|
|
2027
2039
|
),
|
|
2028
|
-
pcb_component_id:
|
|
2029
|
-
pcb_group_id:
|
|
2030
|
-
subcircuit_id:
|
|
2040
|
+
pcb_component_id: z94.string(),
|
|
2041
|
+
pcb_group_id: z94.string().optional(),
|
|
2042
|
+
subcircuit_id: z94.string().optional(),
|
|
2031
2043
|
layer: visible_layer,
|
|
2032
2044
|
from: point,
|
|
2033
2045
|
to: point,
|
|
2034
|
-
text:
|
|
2046
|
+
text: z94.string().optional(),
|
|
2035
2047
|
offset: length.optional(),
|
|
2036
|
-
font:
|
|
2048
|
+
font: z94.literal("tscircuit2024").default("tscircuit2024"),
|
|
2037
2049
|
font_size: length.default("1mm"),
|
|
2038
|
-
color:
|
|
2050
|
+
color: z94.string().optional(),
|
|
2039
2051
|
arrow_size: length.default("1mm")
|
|
2040
2052
|
}).describe("Defines a measurement annotation within PCB fabrication notes");
|
|
2041
2053
|
expectTypesMatch(true);
|
|
2042
2054
|
|
|
2043
2055
|
// src/pcb/pcb_note_text.ts
|
|
2044
|
-
import { z as
|
|
2045
|
-
var pcb_note_text =
|
|
2046
|
-
type:
|
|
2056
|
+
import { z as z95 } from "zod";
|
|
2057
|
+
var pcb_note_text = z95.object({
|
|
2058
|
+
type: z95.literal("pcb_note_text"),
|
|
2047
2059
|
pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
|
|
2048
|
-
pcb_component_id:
|
|
2049
|
-
pcb_group_id:
|
|
2050
|
-
subcircuit_id:
|
|
2051
|
-
font:
|
|
2060
|
+
pcb_component_id: z95.string().optional(),
|
|
2061
|
+
pcb_group_id: z95.string().optional(),
|
|
2062
|
+
subcircuit_id: z95.string().optional(),
|
|
2063
|
+
font: z95.literal("tscircuit2024").default("tscircuit2024"),
|
|
2052
2064
|
font_size: distance.default("1mm"),
|
|
2053
|
-
text:
|
|
2065
|
+
text: z95.string(),
|
|
2054
2066
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2055
|
-
anchor_alignment:
|
|
2056
|
-
color:
|
|
2067
|
+
anchor_alignment: z95.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2068
|
+
color: z95.string().optional()
|
|
2057
2069
|
}).describe("Defines a documentation note in text on the PCB");
|
|
2058
2070
|
expectTypesMatch(true);
|
|
2059
2071
|
|
|
2060
2072
|
// src/pcb/pcb_note_rect.ts
|
|
2061
|
-
import { z as
|
|
2062
|
-
var pcb_note_rect =
|
|
2063
|
-
type:
|
|
2073
|
+
import { z as z96 } from "zod";
|
|
2074
|
+
var pcb_note_rect = z96.object({
|
|
2075
|
+
type: z96.literal("pcb_note_rect"),
|
|
2064
2076
|
pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
|
|
2065
|
-
pcb_component_id:
|
|
2066
|
-
pcb_group_id:
|
|
2067
|
-
subcircuit_id:
|
|
2077
|
+
pcb_component_id: z96.string().optional(),
|
|
2078
|
+
pcb_group_id: z96.string().optional(),
|
|
2079
|
+
subcircuit_id: z96.string().optional(),
|
|
2068
2080
|
center: point,
|
|
2069
2081
|
width: length,
|
|
2070
2082
|
height: length,
|
|
2071
2083
|
stroke_width: length.default("0.1mm"),
|
|
2072
|
-
is_filled:
|
|
2073
|
-
has_stroke:
|
|
2074
|
-
is_stroke_dashed:
|
|
2075
|
-
color:
|
|
2084
|
+
is_filled: z96.boolean().optional(),
|
|
2085
|
+
has_stroke: z96.boolean().optional(),
|
|
2086
|
+
is_stroke_dashed: z96.boolean().optional(),
|
|
2087
|
+
color: z96.string().optional()
|
|
2076
2088
|
}).describe("Defines a rectangular documentation note on the PCB");
|
|
2077
2089
|
expectTypesMatch(true);
|
|
2078
2090
|
|
|
2079
2091
|
// src/pcb/pcb_note_path.ts
|
|
2080
|
-
import { z as
|
|
2081
|
-
var pcb_note_path =
|
|
2082
|
-
type:
|
|
2092
|
+
import { z as z97 } from "zod";
|
|
2093
|
+
var pcb_note_path = z97.object({
|
|
2094
|
+
type: z97.literal("pcb_note_path"),
|
|
2083
2095
|
pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
|
|
2084
|
-
pcb_component_id:
|
|
2085
|
-
pcb_group_id:
|
|
2086
|
-
subcircuit_id:
|
|
2087
|
-
route:
|
|
2096
|
+
pcb_component_id: z97.string().optional(),
|
|
2097
|
+
pcb_group_id: z97.string().optional(),
|
|
2098
|
+
subcircuit_id: z97.string().optional(),
|
|
2099
|
+
route: z97.array(point),
|
|
2088
2100
|
stroke_width: length.default("0.1mm"),
|
|
2089
|
-
color:
|
|
2101
|
+
color: z97.string().optional()
|
|
2090
2102
|
}).describe("Defines a polyline documentation note on the PCB");
|
|
2091
2103
|
expectTypesMatch(true);
|
|
2092
2104
|
|
|
2093
2105
|
// src/pcb/pcb_note_line.ts
|
|
2094
|
-
import { z as
|
|
2095
|
-
var pcb_note_line =
|
|
2096
|
-
type:
|
|
2106
|
+
import { z as z98 } from "zod";
|
|
2107
|
+
var pcb_note_line = z98.object({
|
|
2108
|
+
type: z98.literal("pcb_note_line"),
|
|
2097
2109
|
pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
|
|
2098
|
-
pcb_component_id:
|
|
2099
|
-
pcb_group_id:
|
|
2100
|
-
subcircuit_id:
|
|
2110
|
+
pcb_component_id: z98.string().optional(),
|
|
2111
|
+
pcb_group_id: z98.string().optional(),
|
|
2112
|
+
subcircuit_id: z98.string().optional(),
|
|
2101
2113
|
x1: distance,
|
|
2102
2114
|
y1: distance,
|
|
2103
2115
|
x2: distance,
|
|
2104
2116
|
y2: distance,
|
|
2105
2117
|
stroke_width: distance.default("0.1mm"),
|
|
2106
|
-
color:
|
|
2107
|
-
is_dashed:
|
|
2118
|
+
color: z98.string().optional(),
|
|
2119
|
+
is_dashed: z98.boolean().optional()
|
|
2108
2120
|
}).describe("Defines a straight documentation note line on the PCB");
|
|
2109
2121
|
expectTypesMatch(true);
|
|
2110
2122
|
|
|
2111
2123
|
// src/pcb/pcb_note_dimension.ts
|
|
2112
|
-
import { z as
|
|
2113
|
-
var pcb_note_dimension =
|
|
2114
|
-
type:
|
|
2124
|
+
import { z as z99 } from "zod";
|
|
2125
|
+
var pcb_note_dimension = z99.object({
|
|
2126
|
+
type: z99.literal("pcb_note_dimension"),
|
|
2115
2127
|
pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
|
|
2116
|
-
pcb_component_id:
|
|
2117
|
-
pcb_group_id:
|
|
2118
|
-
subcircuit_id:
|
|
2128
|
+
pcb_component_id: z99.string().optional(),
|
|
2129
|
+
pcb_group_id: z99.string().optional(),
|
|
2130
|
+
subcircuit_id: z99.string().optional(),
|
|
2119
2131
|
from: point,
|
|
2120
2132
|
to: point,
|
|
2121
|
-
text:
|
|
2122
|
-
font:
|
|
2133
|
+
text: z99.string().optional(),
|
|
2134
|
+
font: z99.literal("tscircuit2024").default("tscircuit2024"),
|
|
2123
2135
|
font_size: length.default("1mm"),
|
|
2124
|
-
color:
|
|
2136
|
+
color: z99.string().optional(),
|
|
2125
2137
|
arrow_size: length.default("1mm")
|
|
2126
2138
|
}).describe("Defines a measurement annotation within PCB documentation notes");
|
|
2127
2139
|
expectTypesMatch(true);
|
|
2128
2140
|
|
|
2129
2141
|
// src/pcb/pcb_footprint_overlap_error.ts
|
|
2130
|
-
import { z as
|
|
2131
|
-
var pcb_footprint_overlap_error =
|
|
2132
|
-
type:
|
|
2142
|
+
import { z as z100 } from "zod";
|
|
2143
|
+
var pcb_footprint_overlap_error = z100.object({
|
|
2144
|
+
type: z100.literal("pcb_footprint_overlap_error"),
|
|
2133
2145
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
2134
|
-
error_type:
|
|
2135
|
-
message:
|
|
2136
|
-
pcb_smtpad_ids:
|
|
2137
|
-
pcb_plated_hole_ids:
|
|
2138
|
-
pcb_hole_ids:
|
|
2139
|
-
pcb_keepout_ids:
|
|
2146
|
+
error_type: z100.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
|
|
2147
|
+
message: z100.string(),
|
|
2148
|
+
pcb_smtpad_ids: z100.array(z100.string()).optional(),
|
|
2149
|
+
pcb_plated_hole_ids: z100.array(z100.string()).optional(),
|
|
2150
|
+
pcb_hole_ids: z100.array(z100.string()).optional(),
|
|
2151
|
+
pcb_keepout_ids: z100.array(z100.string()).optional()
|
|
2140
2152
|
}).describe("Error emitted when a pcb footprint overlaps with another element");
|
|
2141
2153
|
expectTypesMatch(
|
|
2142
2154
|
true
|
|
2143
2155
|
);
|
|
2144
2156
|
|
|
2145
2157
|
// src/pcb/pcb_keepout.ts
|
|
2146
|
-
import { z as
|
|
2147
|
-
var pcb_keepout =
|
|
2148
|
-
type:
|
|
2149
|
-
shape:
|
|
2150
|
-
pcb_group_id:
|
|
2151
|
-
subcircuit_id:
|
|
2158
|
+
import { z as z101 } from "zod";
|
|
2159
|
+
var pcb_keepout = z101.object({
|
|
2160
|
+
type: z101.literal("pcb_keepout"),
|
|
2161
|
+
shape: z101.literal("rect"),
|
|
2162
|
+
pcb_group_id: z101.string().optional(),
|
|
2163
|
+
subcircuit_id: z101.string().optional(),
|
|
2152
2164
|
center: point,
|
|
2153
2165
|
width: distance,
|
|
2154
2166
|
height: distance,
|
|
2155
|
-
pcb_keepout_id:
|
|
2156
|
-
layers:
|
|
2167
|
+
pcb_keepout_id: z101.string(),
|
|
2168
|
+
layers: z101.array(z101.string()),
|
|
2157
2169
|
// Specify layers where the keepout applies
|
|
2158
|
-
description:
|
|
2170
|
+
description: z101.string().optional()
|
|
2159
2171
|
// Optional description of the keepout
|
|
2160
2172
|
}).or(
|
|
2161
|
-
|
|
2162
|
-
type:
|
|
2163
|
-
shape:
|
|
2164
|
-
pcb_group_id:
|
|
2165
|
-
subcircuit_id:
|
|
2173
|
+
z101.object({
|
|
2174
|
+
type: z101.literal("pcb_keepout"),
|
|
2175
|
+
shape: z101.literal("circle"),
|
|
2176
|
+
pcb_group_id: z101.string().optional(),
|
|
2177
|
+
subcircuit_id: z101.string().optional(),
|
|
2166
2178
|
center: point,
|
|
2167
2179
|
radius: distance,
|
|
2168
|
-
pcb_keepout_id:
|
|
2169
|
-
layers:
|
|
2180
|
+
pcb_keepout_id: z101.string(),
|
|
2181
|
+
layers: z101.array(z101.string()),
|
|
2170
2182
|
// Specify layers where the keepout applies
|
|
2171
|
-
description:
|
|
2183
|
+
description: z101.string().optional()
|
|
2172
2184
|
// Optional description of the keepout
|
|
2173
2185
|
})
|
|
2174
2186
|
);
|
|
2175
2187
|
expectTypesMatch(true);
|
|
2176
2188
|
|
|
2177
2189
|
// src/pcb/pcb_cutout.ts
|
|
2178
|
-
import { z as
|
|
2179
|
-
var pcb_cutout_base =
|
|
2180
|
-
type:
|
|
2190
|
+
import { z as z102 } from "zod";
|
|
2191
|
+
var pcb_cutout_base = z102.object({
|
|
2192
|
+
type: z102.literal("pcb_cutout"),
|
|
2181
2193
|
pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
|
|
2182
|
-
pcb_group_id:
|
|
2183
|
-
subcircuit_id:
|
|
2194
|
+
pcb_group_id: z102.string().optional(),
|
|
2195
|
+
subcircuit_id: z102.string().optional()
|
|
2184
2196
|
});
|
|
2185
2197
|
var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
2186
|
-
shape:
|
|
2198
|
+
shape: z102.literal("rect"),
|
|
2187
2199
|
center: point,
|
|
2188
2200
|
width: length,
|
|
2189
2201
|
height: length,
|
|
@@ -2191,17 +2203,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
|
2191
2203
|
});
|
|
2192
2204
|
expectTypesMatch(true);
|
|
2193
2205
|
var pcb_cutout_circle = pcb_cutout_base.extend({
|
|
2194
|
-
shape:
|
|
2206
|
+
shape: z102.literal("circle"),
|
|
2195
2207
|
center: point,
|
|
2196
2208
|
radius: length
|
|
2197
2209
|
});
|
|
2198
2210
|
expectTypesMatch(true);
|
|
2199
2211
|
var pcb_cutout_polygon = pcb_cutout_base.extend({
|
|
2200
|
-
shape:
|
|
2201
|
-
points:
|
|
2212
|
+
shape: z102.literal("polygon"),
|
|
2213
|
+
points: z102.array(point)
|
|
2202
2214
|
});
|
|
2203
2215
|
expectTypesMatch(true);
|
|
2204
|
-
var pcb_cutout =
|
|
2216
|
+
var pcb_cutout = z102.discriminatedUnion("shape", [
|
|
2205
2217
|
pcb_cutout_rect,
|
|
2206
2218
|
pcb_cutout_circle,
|
|
2207
2219
|
pcb_cutout_polygon
|
|
@@ -2209,119 +2221,119 @@ var pcb_cutout = z101.discriminatedUnion("shape", [
|
|
|
2209
2221
|
expectTypesMatch(true);
|
|
2210
2222
|
|
|
2211
2223
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
2212
|
-
import { z as
|
|
2213
|
-
var pcb_missing_footprint_error =
|
|
2214
|
-
type:
|
|
2224
|
+
import { z as z103 } from "zod";
|
|
2225
|
+
var pcb_missing_footprint_error = z103.object({
|
|
2226
|
+
type: z103.literal("pcb_missing_footprint_error"),
|
|
2215
2227
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
2216
2228
|
"pcb_missing_footprint_error"
|
|
2217
2229
|
),
|
|
2218
|
-
pcb_group_id:
|
|
2219
|
-
subcircuit_id:
|
|
2220
|
-
error_type:
|
|
2221
|
-
source_component_id:
|
|
2222
|
-
message:
|
|
2230
|
+
pcb_group_id: z103.string().optional(),
|
|
2231
|
+
subcircuit_id: z103.string().optional(),
|
|
2232
|
+
error_type: z103.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
|
|
2233
|
+
source_component_id: z103.string(),
|
|
2234
|
+
message: z103.string()
|
|
2223
2235
|
}).describe("Defines a missing footprint error on the PCB");
|
|
2224
2236
|
expectTypesMatch(
|
|
2225
2237
|
true
|
|
2226
2238
|
);
|
|
2227
2239
|
|
|
2228
2240
|
// src/pcb/external_footprint_load_error.ts
|
|
2229
|
-
import { z as
|
|
2230
|
-
var external_footprint_load_error =
|
|
2231
|
-
type:
|
|
2241
|
+
import { z as z104 } from "zod";
|
|
2242
|
+
var external_footprint_load_error = z104.object({
|
|
2243
|
+
type: z104.literal("external_footprint_load_error"),
|
|
2232
2244
|
external_footprint_load_error_id: getZodPrefixedIdWithDefault(
|
|
2233
2245
|
"external_footprint_load_error"
|
|
2234
2246
|
),
|
|
2235
|
-
pcb_component_id:
|
|
2236
|
-
source_component_id:
|
|
2237
|
-
pcb_group_id:
|
|
2238
|
-
subcircuit_id:
|
|
2239
|
-
footprinter_string:
|
|
2240
|
-
error_type:
|
|
2241
|
-
message:
|
|
2247
|
+
pcb_component_id: z104.string(),
|
|
2248
|
+
source_component_id: z104.string(),
|
|
2249
|
+
pcb_group_id: z104.string().optional(),
|
|
2250
|
+
subcircuit_id: z104.string().optional(),
|
|
2251
|
+
footprinter_string: z104.string().optional(),
|
|
2252
|
+
error_type: z104.literal("external_footprint_load_error").default("external_footprint_load_error"),
|
|
2253
|
+
message: z104.string()
|
|
2242
2254
|
}).describe("Defines an error when an external footprint fails to load");
|
|
2243
2255
|
expectTypesMatch(true);
|
|
2244
2256
|
|
|
2245
2257
|
// src/pcb/circuit_json_footprint_load_error.ts
|
|
2246
|
-
import { z as
|
|
2247
|
-
var circuit_json_footprint_load_error =
|
|
2248
|
-
type:
|
|
2258
|
+
import { z as z105 } from "zod";
|
|
2259
|
+
var circuit_json_footprint_load_error = z105.object({
|
|
2260
|
+
type: z105.literal("circuit_json_footprint_load_error"),
|
|
2249
2261
|
circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
|
|
2250
2262
|
"circuit_json_footprint_load_error"
|
|
2251
2263
|
),
|
|
2252
|
-
pcb_component_id:
|
|
2253
|
-
source_component_id:
|
|
2254
|
-
pcb_group_id:
|
|
2255
|
-
subcircuit_id:
|
|
2256
|
-
error_type:
|
|
2257
|
-
message:
|
|
2258
|
-
circuit_json:
|
|
2264
|
+
pcb_component_id: z105.string(),
|
|
2265
|
+
source_component_id: z105.string(),
|
|
2266
|
+
pcb_group_id: z105.string().optional(),
|
|
2267
|
+
subcircuit_id: z105.string().optional(),
|
|
2268
|
+
error_type: z105.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
|
|
2269
|
+
message: z105.string(),
|
|
2270
|
+
circuit_json: z105.array(z105.any()).optional()
|
|
2259
2271
|
}).describe("Defines an error when a circuit JSON footprint fails to load");
|
|
2260
2272
|
expectTypesMatch(true);
|
|
2261
2273
|
|
|
2262
2274
|
// src/pcb/pcb_group.ts
|
|
2263
|
-
import { z as
|
|
2264
|
-
var pcb_group =
|
|
2265
|
-
type:
|
|
2275
|
+
import { z as z106 } from "zod";
|
|
2276
|
+
var pcb_group = z106.object({
|
|
2277
|
+
type: z106.literal("pcb_group"),
|
|
2266
2278
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
2267
|
-
source_group_id:
|
|
2268
|
-
is_subcircuit:
|
|
2269
|
-
subcircuit_id:
|
|
2279
|
+
source_group_id: z106.string(),
|
|
2280
|
+
is_subcircuit: z106.boolean().optional(),
|
|
2281
|
+
subcircuit_id: z106.string().optional(),
|
|
2270
2282
|
width: length,
|
|
2271
2283
|
height: length,
|
|
2272
2284
|
center: point,
|
|
2273
2285
|
anchor_position: point.optional(),
|
|
2274
|
-
anchor_alignment:
|
|
2275
|
-
pcb_component_ids:
|
|
2276
|
-
name:
|
|
2277
|
-
description:
|
|
2278
|
-
layout_mode:
|
|
2279
|
-
autorouter_configuration:
|
|
2286
|
+
anchor_alignment: z106.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).optional(),
|
|
2287
|
+
pcb_component_ids: z106.array(z106.string()),
|
|
2288
|
+
name: z106.string().optional(),
|
|
2289
|
+
description: z106.string().optional(),
|
|
2290
|
+
layout_mode: z106.string().optional(),
|
|
2291
|
+
autorouter_configuration: z106.object({
|
|
2280
2292
|
trace_clearance: length
|
|
2281
2293
|
}).optional(),
|
|
2282
|
-
autorouter_used_string:
|
|
2294
|
+
autorouter_used_string: z106.string().optional()
|
|
2283
2295
|
}).describe("Defines a group of components on the PCB");
|
|
2284
2296
|
expectTypesMatch(true);
|
|
2285
2297
|
|
|
2286
2298
|
// src/pcb/pcb_autorouting_error.ts
|
|
2287
|
-
import { z as
|
|
2288
|
-
var pcb_autorouting_error =
|
|
2289
|
-
type:
|
|
2299
|
+
import { z as z107 } from "zod";
|
|
2300
|
+
var pcb_autorouting_error = z107.object({
|
|
2301
|
+
type: z107.literal("pcb_autorouting_error"),
|
|
2290
2302
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
2291
|
-
error_type:
|
|
2292
|
-
message:
|
|
2293
|
-
subcircuit_id:
|
|
2303
|
+
error_type: z107.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
|
|
2304
|
+
message: z107.string(),
|
|
2305
|
+
subcircuit_id: z107.string().optional()
|
|
2294
2306
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
2295
2307
|
expectTypesMatch(true);
|
|
2296
2308
|
|
|
2297
2309
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
2298
|
-
import { z as
|
|
2299
|
-
var pcb_manual_edit_conflict_warning =
|
|
2300
|
-
type:
|
|
2310
|
+
import { z as z108 } from "zod";
|
|
2311
|
+
var pcb_manual_edit_conflict_warning = z108.object({
|
|
2312
|
+
type: z108.literal("pcb_manual_edit_conflict_warning"),
|
|
2301
2313
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
2302
2314
|
"pcb_manual_edit_conflict_warning"
|
|
2303
2315
|
),
|
|
2304
|
-
warning_type:
|
|
2305
|
-
message:
|
|
2306
|
-
pcb_component_id:
|
|
2307
|
-
pcb_group_id:
|
|
2308
|
-
subcircuit_id:
|
|
2309
|
-
source_component_id:
|
|
2316
|
+
warning_type: z108.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
|
|
2317
|
+
message: z108.string(),
|
|
2318
|
+
pcb_component_id: z108.string(),
|
|
2319
|
+
pcb_group_id: z108.string().optional(),
|
|
2320
|
+
subcircuit_id: z108.string().optional(),
|
|
2321
|
+
source_component_id: z108.string()
|
|
2310
2322
|
}).describe(
|
|
2311
2323
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
2312
2324
|
);
|
|
2313
2325
|
expectTypesMatch(true);
|
|
2314
2326
|
|
|
2315
2327
|
// src/pcb/pcb_breakout_point.ts
|
|
2316
|
-
import { z as
|
|
2317
|
-
var pcb_breakout_point =
|
|
2318
|
-
type:
|
|
2328
|
+
import { z as z109 } from "zod";
|
|
2329
|
+
var pcb_breakout_point = z109.object({
|
|
2330
|
+
type: z109.literal("pcb_breakout_point"),
|
|
2319
2331
|
pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
|
|
2320
|
-
pcb_group_id:
|
|
2321
|
-
subcircuit_id:
|
|
2322
|
-
source_trace_id:
|
|
2323
|
-
source_port_id:
|
|
2324
|
-
source_net_id:
|
|
2332
|
+
pcb_group_id: z109.string(),
|
|
2333
|
+
subcircuit_id: z109.string().optional(),
|
|
2334
|
+
source_trace_id: z109.string().optional(),
|
|
2335
|
+
source_port_id: z109.string().optional(),
|
|
2336
|
+
source_net_id: z109.string().optional(),
|
|
2325
2337
|
x: distance,
|
|
2326
2338
|
y: distance
|
|
2327
2339
|
}).describe(
|
|
@@ -2330,60 +2342,60 @@ var pcb_breakout_point = z108.object({
|
|
|
2330
2342
|
expectTypesMatch(true);
|
|
2331
2343
|
|
|
2332
2344
|
// src/pcb/pcb_ground_plane.ts
|
|
2333
|
-
import { z as
|
|
2334
|
-
var pcb_ground_plane =
|
|
2335
|
-
type:
|
|
2345
|
+
import { z as z110 } from "zod";
|
|
2346
|
+
var pcb_ground_plane = z110.object({
|
|
2347
|
+
type: z110.literal("pcb_ground_plane"),
|
|
2336
2348
|
pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
|
|
2337
|
-
source_pcb_ground_plane_id:
|
|
2338
|
-
source_net_id:
|
|
2339
|
-
pcb_group_id:
|
|
2340
|
-
subcircuit_id:
|
|
2349
|
+
source_pcb_ground_plane_id: z110.string(),
|
|
2350
|
+
source_net_id: z110.string(),
|
|
2351
|
+
pcb_group_id: z110.string().optional(),
|
|
2352
|
+
subcircuit_id: z110.string().optional()
|
|
2341
2353
|
}).describe("Defines a ground plane on the PCB");
|
|
2342
2354
|
expectTypesMatch(true);
|
|
2343
2355
|
|
|
2344
2356
|
// src/pcb/pcb_ground_plane_region.ts
|
|
2345
|
-
import { z as
|
|
2346
|
-
var pcb_ground_plane_region =
|
|
2347
|
-
type:
|
|
2357
|
+
import { z as z111 } from "zod";
|
|
2358
|
+
var pcb_ground_plane_region = z111.object({
|
|
2359
|
+
type: z111.literal("pcb_ground_plane_region"),
|
|
2348
2360
|
pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
|
|
2349
2361
|
"pcb_ground_plane_region"
|
|
2350
2362
|
),
|
|
2351
|
-
pcb_ground_plane_id:
|
|
2352
|
-
pcb_group_id:
|
|
2353
|
-
subcircuit_id:
|
|
2363
|
+
pcb_ground_plane_id: z111.string(),
|
|
2364
|
+
pcb_group_id: z111.string().optional(),
|
|
2365
|
+
subcircuit_id: z111.string().optional(),
|
|
2354
2366
|
layer: layer_ref,
|
|
2355
|
-
points:
|
|
2367
|
+
points: z111.array(point)
|
|
2356
2368
|
}).describe("Defines a polygon region of a ground plane");
|
|
2357
2369
|
expectTypesMatch(true);
|
|
2358
2370
|
|
|
2359
2371
|
// src/pcb/pcb_thermal_spoke.ts
|
|
2360
|
-
import { z as
|
|
2361
|
-
var pcb_thermal_spoke =
|
|
2362
|
-
type:
|
|
2372
|
+
import { z as z112 } from "zod";
|
|
2373
|
+
var pcb_thermal_spoke = z112.object({
|
|
2374
|
+
type: z112.literal("pcb_thermal_spoke"),
|
|
2363
2375
|
pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
|
|
2364
|
-
pcb_ground_plane_id:
|
|
2365
|
-
shape:
|
|
2366
|
-
spoke_count:
|
|
2376
|
+
pcb_ground_plane_id: z112.string(),
|
|
2377
|
+
shape: z112.string(),
|
|
2378
|
+
spoke_count: z112.number(),
|
|
2367
2379
|
spoke_thickness: distance,
|
|
2368
2380
|
spoke_inner_diameter: distance,
|
|
2369
2381
|
spoke_outer_diameter: distance,
|
|
2370
|
-
pcb_plated_hole_id:
|
|
2371
|
-
subcircuit_id:
|
|
2382
|
+
pcb_plated_hole_id: z112.string().optional(),
|
|
2383
|
+
subcircuit_id: z112.string().optional()
|
|
2372
2384
|
}).describe("Pattern for connecting a ground plane to a plated hole");
|
|
2373
2385
|
expectTypesMatch(true);
|
|
2374
2386
|
|
|
2375
2387
|
// src/pcb/pcb_copper_pour.ts
|
|
2376
|
-
import { z as
|
|
2377
|
-
var pcb_copper_pour_base =
|
|
2378
|
-
type:
|
|
2388
|
+
import { z as z113 } from "zod";
|
|
2389
|
+
var pcb_copper_pour_base = z113.object({
|
|
2390
|
+
type: z113.literal("pcb_copper_pour"),
|
|
2379
2391
|
pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
|
|
2380
|
-
pcb_group_id:
|
|
2381
|
-
subcircuit_id:
|
|
2392
|
+
pcb_group_id: z113.string().optional(),
|
|
2393
|
+
subcircuit_id: z113.string().optional(),
|
|
2382
2394
|
layer: layer_ref,
|
|
2383
|
-
source_net_id:
|
|
2395
|
+
source_net_id: z113.string().optional()
|
|
2384
2396
|
});
|
|
2385
2397
|
var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
2386
|
-
shape:
|
|
2398
|
+
shape: z113.literal("rect"),
|
|
2387
2399
|
center: point,
|
|
2388
2400
|
width: length,
|
|
2389
2401
|
height: length,
|
|
@@ -2391,16 +2403,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
|
2391
2403
|
});
|
|
2392
2404
|
expectTypesMatch(true);
|
|
2393
2405
|
var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
|
|
2394
|
-
shape:
|
|
2406
|
+
shape: z113.literal("brep"),
|
|
2395
2407
|
brep_shape
|
|
2396
2408
|
});
|
|
2397
2409
|
expectTypesMatch(true);
|
|
2398
2410
|
var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
|
|
2399
|
-
shape:
|
|
2400
|
-
points:
|
|
2411
|
+
shape: z113.literal("polygon"),
|
|
2412
|
+
points: z113.array(point)
|
|
2401
2413
|
});
|
|
2402
2414
|
expectTypesMatch(true);
|
|
2403
|
-
var pcb_copper_pour =
|
|
2415
|
+
var pcb_copper_pour = z113.discriminatedUnion("shape", [
|
|
2404
2416
|
pcb_copper_pour_rect,
|
|
2405
2417
|
pcb_copper_pour_brep,
|
|
2406
2418
|
pcb_copper_pour_polygon
|
|
@@ -2408,135 +2420,135 @@ var pcb_copper_pour = z112.discriminatedUnion("shape", [
|
|
|
2408
2420
|
expectTypesMatch(true);
|
|
2409
2421
|
|
|
2410
2422
|
// src/pcb/pcb_component_outside_board_error.ts
|
|
2411
|
-
import { z as
|
|
2412
|
-
var pcb_component_outside_board_error =
|
|
2413
|
-
type:
|
|
2423
|
+
import { z as z114 } from "zod";
|
|
2424
|
+
var pcb_component_outside_board_error = z114.object({
|
|
2425
|
+
type: z114.literal("pcb_component_outside_board_error"),
|
|
2414
2426
|
pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
|
|
2415
2427
|
"pcb_component_outside_board_error"
|
|
2416
2428
|
),
|
|
2417
|
-
error_type:
|
|
2418
|
-
message:
|
|
2419
|
-
pcb_component_id:
|
|
2420
|
-
pcb_board_id:
|
|
2429
|
+
error_type: z114.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
|
|
2430
|
+
message: z114.string(),
|
|
2431
|
+
pcb_component_id: z114.string(),
|
|
2432
|
+
pcb_board_id: z114.string(),
|
|
2421
2433
|
component_center: point,
|
|
2422
|
-
component_bounds:
|
|
2423
|
-
min_x:
|
|
2424
|
-
max_x:
|
|
2425
|
-
min_y:
|
|
2426
|
-
max_y:
|
|
2434
|
+
component_bounds: z114.object({
|
|
2435
|
+
min_x: z114.number(),
|
|
2436
|
+
max_x: z114.number(),
|
|
2437
|
+
min_y: z114.number(),
|
|
2438
|
+
max_y: z114.number()
|
|
2427
2439
|
}),
|
|
2428
|
-
subcircuit_id:
|
|
2429
|
-
source_component_id:
|
|
2440
|
+
subcircuit_id: z114.string().optional(),
|
|
2441
|
+
source_component_id: z114.string().optional()
|
|
2430
2442
|
}).describe(
|
|
2431
2443
|
"Error emitted when a PCB component is placed outside the board boundaries"
|
|
2432
2444
|
);
|
|
2433
2445
|
expectTypesMatch(true);
|
|
2434
2446
|
|
|
2435
2447
|
// src/pcb/pcb_component_invalid_layer_error.ts
|
|
2436
|
-
import { z as
|
|
2437
|
-
var pcb_component_invalid_layer_error =
|
|
2438
|
-
type:
|
|
2448
|
+
import { z as z115 } from "zod";
|
|
2449
|
+
var pcb_component_invalid_layer_error = z115.object({
|
|
2450
|
+
type: z115.literal("pcb_component_invalid_layer_error"),
|
|
2439
2451
|
pcb_component_invalid_layer_error_id: getZodPrefixedIdWithDefault(
|
|
2440
2452
|
"pcb_component_invalid_layer_error"
|
|
2441
2453
|
),
|
|
2442
|
-
error_type:
|
|
2443
|
-
message:
|
|
2444
|
-
pcb_component_id:
|
|
2445
|
-
source_component_id:
|
|
2454
|
+
error_type: z115.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
|
|
2455
|
+
message: z115.string(),
|
|
2456
|
+
pcb_component_id: z115.string().optional(),
|
|
2457
|
+
source_component_id: z115.string(),
|
|
2446
2458
|
layer: layer_ref,
|
|
2447
|
-
subcircuit_id:
|
|
2459
|
+
subcircuit_id: z115.string().optional()
|
|
2448
2460
|
}).describe(
|
|
2449
2461
|
"Error emitted when a component is placed on an invalid layer (components can only be on 'top' or 'bottom' layers)"
|
|
2450
2462
|
);
|
|
2451
2463
|
expectTypesMatch(true);
|
|
2452
2464
|
|
|
2453
2465
|
// src/pcb/pcb_via_clearance_error.ts
|
|
2454
|
-
import { z as
|
|
2455
|
-
var pcb_via_clearance_error =
|
|
2456
|
-
type:
|
|
2466
|
+
import { z as z116 } from "zod";
|
|
2467
|
+
var pcb_via_clearance_error = z116.object({
|
|
2468
|
+
type: z116.literal("pcb_via_clearance_error"),
|
|
2457
2469
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
2458
|
-
error_type:
|
|
2459
|
-
message:
|
|
2460
|
-
pcb_via_ids:
|
|
2470
|
+
error_type: z116.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
|
|
2471
|
+
message: z116.string(),
|
|
2472
|
+
pcb_via_ids: z116.array(z116.string()).min(2),
|
|
2461
2473
|
minimum_clearance: distance.optional(),
|
|
2462
2474
|
actual_clearance: distance.optional(),
|
|
2463
|
-
pcb_center:
|
|
2464
|
-
x:
|
|
2465
|
-
y:
|
|
2475
|
+
pcb_center: z116.object({
|
|
2476
|
+
x: z116.number().optional(),
|
|
2477
|
+
y: z116.number().optional()
|
|
2466
2478
|
}).optional(),
|
|
2467
|
-
subcircuit_id:
|
|
2479
|
+
subcircuit_id: z116.string().optional()
|
|
2468
2480
|
}).describe("Error emitted when vias are closer than the allowed clearance");
|
|
2469
2481
|
expectTypesMatch(true);
|
|
2470
2482
|
|
|
2471
2483
|
// src/pcb/pcb_courtyard_rect.ts
|
|
2472
|
-
import { z as
|
|
2473
|
-
var pcb_courtyard_rect =
|
|
2474
|
-
type:
|
|
2484
|
+
import { z as z117 } from "zod";
|
|
2485
|
+
var pcb_courtyard_rect = z117.object({
|
|
2486
|
+
type: z117.literal("pcb_courtyard_rect"),
|
|
2475
2487
|
pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
|
|
2476
|
-
pcb_component_id:
|
|
2477
|
-
pcb_group_id:
|
|
2478
|
-
subcircuit_id:
|
|
2488
|
+
pcb_component_id: z117.string(),
|
|
2489
|
+
pcb_group_id: z117.string().optional(),
|
|
2490
|
+
subcircuit_id: z117.string().optional(),
|
|
2479
2491
|
center: point,
|
|
2480
2492
|
width: length,
|
|
2481
2493
|
height: length,
|
|
2482
2494
|
layer: visible_layer,
|
|
2483
2495
|
stroke_width: length.default("0.1mm"),
|
|
2484
|
-
is_filled:
|
|
2485
|
-
has_stroke:
|
|
2486
|
-
is_stroke_dashed:
|
|
2487
|
-
color:
|
|
2496
|
+
is_filled: z117.boolean().optional(),
|
|
2497
|
+
has_stroke: z117.boolean().optional(),
|
|
2498
|
+
is_stroke_dashed: z117.boolean().optional(),
|
|
2499
|
+
color: z117.string().optional()
|
|
2488
2500
|
}).describe("Defines a courtyard rectangle on the PCB");
|
|
2489
2501
|
expectTypesMatch(true);
|
|
2490
2502
|
|
|
2491
2503
|
// src/pcb/pcb_courtyard_outline.ts
|
|
2492
|
-
import { z as
|
|
2493
|
-
var pcb_courtyard_outline =
|
|
2494
|
-
type:
|
|
2504
|
+
import { z as z118 } from "zod";
|
|
2505
|
+
var pcb_courtyard_outline = z118.object({
|
|
2506
|
+
type: z118.literal("pcb_courtyard_outline"),
|
|
2495
2507
|
pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
|
|
2496
2508
|
"pcb_courtyard_outline"
|
|
2497
2509
|
),
|
|
2498
|
-
pcb_component_id:
|
|
2499
|
-
pcb_group_id:
|
|
2500
|
-
subcircuit_id:
|
|
2510
|
+
pcb_component_id: z118.string(),
|
|
2511
|
+
pcb_group_id: z118.string().optional(),
|
|
2512
|
+
subcircuit_id: z118.string().optional(),
|
|
2501
2513
|
layer: visible_layer,
|
|
2502
|
-
outline:
|
|
2514
|
+
outline: z118.array(point).min(2),
|
|
2503
2515
|
stroke_width: length.default("0.1mm"),
|
|
2504
|
-
is_closed:
|
|
2505
|
-
is_stroke_dashed:
|
|
2506
|
-
color:
|
|
2516
|
+
is_closed: z118.boolean().optional(),
|
|
2517
|
+
is_stroke_dashed: z118.boolean().optional(),
|
|
2518
|
+
color: z118.string().optional()
|
|
2507
2519
|
}).describe("Defines a courtyard outline on the PCB");
|
|
2508
2520
|
expectTypesMatch(true);
|
|
2509
2521
|
|
|
2510
2522
|
// src/cad/cad_component.ts
|
|
2511
|
-
import { z as
|
|
2512
|
-
var cad_component =
|
|
2513
|
-
type:
|
|
2514
|
-
cad_component_id:
|
|
2515
|
-
pcb_component_id:
|
|
2516
|
-
source_component_id:
|
|
2523
|
+
import { z as z119 } from "zod";
|
|
2524
|
+
var cad_component = z119.object({
|
|
2525
|
+
type: z119.literal("cad_component"),
|
|
2526
|
+
cad_component_id: z119.string(),
|
|
2527
|
+
pcb_component_id: z119.string(),
|
|
2528
|
+
source_component_id: z119.string(),
|
|
2517
2529
|
position: point3,
|
|
2518
2530
|
rotation: point3.optional(),
|
|
2519
2531
|
size: point3.optional(),
|
|
2520
2532
|
layer: layer_ref.optional(),
|
|
2521
|
-
subcircuit_id:
|
|
2533
|
+
subcircuit_id: z119.string().optional(),
|
|
2522
2534
|
// These are all ways to generate/load the 3d model
|
|
2523
|
-
footprinter_string:
|
|
2524
|
-
model_obj_url:
|
|
2525
|
-
model_stl_url:
|
|
2526
|
-
model_3mf_url:
|
|
2527
|
-
model_gltf_url:
|
|
2528
|
-
model_glb_url:
|
|
2529
|
-
model_step_url:
|
|
2530
|
-
model_wrl_url:
|
|
2531
|
-
model_unit_to_mm_scale_factor:
|
|
2532
|
-
model_jscad:
|
|
2535
|
+
footprinter_string: z119.string().optional(),
|
|
2536
|
+
model_obj_url: z119.string().optional(),
|
|
2537
|
+
model_stl_url: z119.string().optional(),
|
|
2538
|
+
model_3mf_url: z119.string().optional(),
|
|
2539
|
+
model_gltf_url: z119.string().optional(),
|
|
2540
|
+
model_glb_url: z119.string().optional(),
|
|
2541
|
+
model_step_url: z119.string().optional(),
|
|
2542
|
+
model_wrl_url: z119.string().optional(),
|
|
2543
|
+
model_unit_to_mm_scale_factor: z119.number().optional(),
|
|
2544
|
+
model_jscad: z119.any().optional()
|
|
2533
2545
|
}).describe("Defines a component on the PCB");
|
|
2534
2546
|
expectTypesMatch(true);
|
|
2535
2547
|
|
|
2536
2548
|
// src/simulation/simulation_voltage_source.ts
|
|
2537
|
-
import { z as
|
|
2538
|
-
var wave_shape =
|
|
2539
|
-
var percentage =
|
|
2549
|
+
import { z as z120 } from "zod";
|
|
2550
|
+
var wave_shape = z120.enum(["sinewave", "square", "triangle", "sawtooth"]);
|
|
2551
|
+
var percentage = z120.union([z120.string(), z120.number()]).transform((val) => {
|
|
2540
2552
|
if (typeof val === "string") {
|
|
2541
2553
|
if (val.endsWith("%")) {
|
|
2542
2554
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -2545,30 +2557,30 @@ var percentage = z119.union([z119.string(), z119.number()]).transform((val) => {
|
|
|
2545
2557
|
}
|
|
2546
2558
|
return val;
|
|
2547
2559
|
}).pipe(
|
|
2548
|
-
|
|
2560
|
+
z120.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
2549
2561
|
);
|
|
2550
|
-
var simulation_dc_voltage_source =
|
|
2551
|
-
type:
|
|
2562
|
+
var simulation_dc_voltage_source = z120.object({
|
|
2563
|
+
type: z120.literal("simulation_voltage_source"),
|
|
2552
2564
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2553
2565
|
"simulation_voltage_source"
|
|
2554
2566
|
),
|
|
2555
|
-
is_dc_source:
|
|
2556
|
-
positive_source_port_id:
|
|
2557
|
-
negative_source_port_id:
|
|
2558
|
-
positive_source_net_id:
|
|
2559
|
-
negative_source_net_id:
|
|
2567
|
+
is_dc_source: z120.literal(true).optional().default(true),
|
|
2568
|
+
positive_source_port_id: z120.string().optional(),
|
|
2569
|
+
negative_source_port_id: z120.string().optional(),
|
|
2570
|
+
positive_source_net_id: z120.string().optional(),
|
|
2571
|
+
negative_source_net_id: z120.string().optional(),
|
|
2560
2572
|
voltage
|
|
2561
2573
|
}).describe("Defines a DC voltage source for simulation");
|
|
2562
|
-
var simulation_ac_voltage_source =
|
|
2563
|
-
type:
|
|
2574
|
+
var simulation_ac_voltage_source = z120.object({
|
|
2575
|
+
type: z120.literal("simulation_voltage_source"),
|
|
2564
2576
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2565
2577
|
"simulation_voltage_source"
|
|
2566
2578
|
),
|
|
2567
|
-
is_dc_source:
|
|
2568
|
-
terminal1_source_port_id:
|
|
2569
|
-
terminal2_source_port_id:
|
|
2570
|
-
terminal1_source_net_id:
|
|
2571
|
-
terminal2_source_net_id:
|
|
2579
|
+
is_dc_source: z120.literal(false),
|
|
2580
|
+
terminal1_source_port_id: z120.string().optional(),
|
|
2581
|
+
terminal2_source_port_id: z120.string().optional(),
|
|
2582
|
+
terminal1_source_net_id: z120.string().optional(),
|
|
2583
|
+
terminal2_source_net_id: z120.string().optional(),
|
|
2572
2584
|
voltage: voltage.optional(),
|
|
2573
2585
|
frequency: frequency.optional(),
|
|
2574
2586
|
peak_to_peak_voltage: voltage.optional(),
|
|
@@ -2576,25 +2588,25 @@ var simulation_ac_voltage_source = z119.object({
|
|
|
2576
2588
|
phase: rotation.optional(),
|
|
2577
2589
|
duty_cycle: percentage.optional()
|
|
2578
2590
|
}).describe("Defines an AC voltage source for simulation");
|
|
2579
|
-
var simulation_voltage_source =
|
|
2591
|
+
var simulation_voltage_source = z120.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
|
|
2580
2592
|
expectTypesMatch(true);
|
|
2581
2593
|
expectTypesMatch(true);
|
|
2582
2594
|
expectTypesMatch(true);
|
|
2583
2595
|
|
|
2584
2596
|
// src/simulation/simulation_experiment.ts
|
|
2585
|
-
import { z as
|
|
2586
|
-
var experiment_type =
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
|
|
2590
|
-
|
|
2597
|
+
import { z as z121 } from "zod";
|
|
2598
|
+
var experiment_type = z121.union([
|
|
2599
|
+
z121.literal("spice_dc_sweep"),
|
|
2600
|
+
z121.literal("spice_dc_operating_point"),
|
|
2601
|
+
z121.literal("spice_transient_analysis"),
|
|
2602
|
+
z121.literal("spice_ac_analysis")
|
|
2591
2603
|
]);
|
|
2592
|
-
var simulation_experiment =
|
|
2593
|
-
type:
|
|
2604
|
+
var simulation_experiment = z121.object({
|
|
2605
|
+
type: z121.literal("simulation_experiment"),
|
|
2594
2606
|
simulation_experiment_id: getZodPrefixedIdWithDefault(
|
|
2595
2607
|
"simulation_experiment"
|
|
2596
2608
|
),
|
|
2597
|
-
name:
|
|
2609
|
+
name: z121.string(),
|
|
2598
2610
|
experiment_type,
|
|
2599
2611
|
time_per_step: duration_ms.optional(),
|
|
2600
2612
|
start_time_ms: ms.optional(),
|
|
@@ -2603,48 +2615,48 @@ var simulation_experiment = z120.object({
|
|
|
2603
2615
|
expectTypesMatch(true);
|
|
2604
2616
|
|
|
2605
2617
|
// src/simulation/simulation_transient_voltage_graph.ts
|
|
2606
|
-
import { z as
|
|
2607
|
-
var simulation_transient_voltage_graph =
|
|
2608
|
-
type:
|
|
2618
|
+
import { z as z122 } from "zod";
|
|
2619
|
+
var simulation_transient_voltage_graph = z122.object({
|
|
2620
|
+
type: z122.literal("simulation_transient_voltage_graph"),
|
|
2609
2621
|
simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
2610
2622
|
"simulation_transient_voltage_graph"
|
|
2611
2623
|
),
|
|
2612
|
-
simulation_experiment_id:
|
|
2613
|
-
timestamps_ms:
|
|
2614
|
-
voltage_levels:
|
|
2615
|
-
schematic_voltage_probe_id:
|
|
2616
|
-
simulation_voltage_probe_id:
|
|
2617
|
-
subcircuit_connectivity_map_key:
|
|
2624
|
+
simulation_experiment_id: z122.string(),
|
|
2625
|
+
timestamps_ms: z122.array(z122.number()).optional(),
|
|
2626
|
+
voltage_levels: z122.array(z122.number()),
|
|
2627
|
+
schematic_voltage_probe_id: z122.string().optional(),
|
|
2628
|
+
simulation_voltage_probe_id: z122.string().optional(),
|
|
2629
|
+
subcircuit_connectivity_map_key: z122.string().optional(),
|
|
2618
2630
|
time_per_step: duration_ms,
|
|
2619
2631
|
start_time_ms: ms,
|
|
2620
2632
|
end_time_ms: ms,
|
|
2621
|
-
name:
|
|
2633
|
+
name: z122.string().optional()
|
|
2622
2634
|
}).describe("Stores voltage measurements over time for a simulation");
|
|
2623
2635
|
expectTypesMatch(true);
|
|
2624
2636
|
|
|
2625
2637
|
// src/simulation/simulation_switch.ts
|
|
2626
|
-
import { z as
|
|
2627
|
-
var simulation_switch =
|
|
2628
|
-
type:
|
|
2638
|
+
import { z as z123 } from "zod";
|
|
2639
|
+
var simulation_switch = z123.object({
|
|
2640
|
+
type: z123.literal("simulation_switch"),
|
|
2629
2641
|
simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
|
|
2630
2642
|
closes_at: ms.optional(),
|
|
2631
2643
|
opens_at: ms.optional(),
|
|
2632
|
-
starts_closed:
|
|
2644
|
+
starts_closed: z123.boolean().optional(),
|
|
2633
2645
|
switching_frequency: frequency.optional()
|
|
2634
2646
|
}).describe("Defines a switch for simulation timing control");
|
|
2635
2647
|
expectTypesMatch(true);
|
|
2636
2648
|
|
|
2637
2649
|
// src/simulation/simulation_voltage_probe.ts
|
|
2638
|
-
import { z as
|
|
2639
|
-
var simulation_voltage_probe =
|
|
2640
|
-
type:
|
|
2650
|
+
import { z as z124 } from "zod";
|
|
2651
|
+
var simulation_voltage_probe = z124.object({
|
|
2652
|
+
type: z124.literal("simulation_voltage_probe"),
|
|
2641
2653
|
simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
|
|
2642
2654
|
"simulation_voltage_probe"
|
|
2643
2655
|
),
|
|
2644
|
-
source_port_id:
|
|
2645
|
-
source_net_id:
|
|
2646
|
-
name:
|
|
2647
|
-
subcircuit_id:
|
|
2656
|
+
source_port_id: z124.string().optional(),
|
|
2657
|
+
source_net_id: z124.string().optional(),
|
|
2658
|
+
name: z124.string().optional(),
|
|
2659
|
+
subcircuit_id: z124.string().optional()
|
|
2648
2660
|
}).describe(
|
|
2649
2661
|
"Defines a voltage probe for simulation, connected to a port or a net"
|
|
2650
2662
|
).refine(
|
|
@@ -2656,8 +2668,8 @@ var simulation_voltage_probe = z123.object({
|
|
|
2656
2668
|
expectTypesMatch(true);
|
|
2657
2669
|
|
|
2658
2670
|
// src/any_circuit_element.ts
|
|
2659
|
-
import { z as
|
|
2660
|
-
var any_circuit_element =
|
|
2671
|
+
import { z as z125 } from "zod";
|
|
2672
|
+
var any_circuit_element = z125.union([
|
|
2661
2673
|
source_trace,
|
|
2662
2674
|
source_port,
|
|
2663
2675
|
any_source_component,
|
|
@@ -2702,6 +2714,7 @@ var any_circuit_element = z124.union([
|
|
|
2702
2714
|
pcb_smtpad,
|
|
2703
2715
|
pcb_solder_paste,
|
|
2704
2716
|
pcb_board,
|
|
2717
|
+
pcb_panel,
|
|
2705
2718
|
pcb_group,
|
|
2706
2719
|
pcb_trace_hint,
|
|
2707
2720
|
pcb_silkscreen_line,
|
|
@@ -2827,6 +2840,7 @@ export {
|
|
|
2827
2840
|
pcb_note_path,
|
|
2828
2841
|
pcb_note_rect,
|
|
2829
2842
|
pcb_note_text,
|
|
2843
|
+
pcb_panel,
|
|
2830
2844
|
pcb_placement_error,
|
|
2831
2845
|
pcb_plated_hole,
|
|
2832
2846
|
pcb_port,
|