@tscircuit/props 0.0.478 → 0.0.480
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 +4 -1
- package/dist/index.d.ts +3000 -4
- package/dist/index.js +25 -9
- package/dist/index.js.map +1 -1
- package/lib/common/layout.ts +40 -4
- package/lib/components/platedhole.ts +4 -4
- package/package.json +1 -1
package/lib/common/layout.ts
CHANGED
|
@@ -6,9 +6,9 @@ import {
|
|
|
6
6
|
supplier_name,
|
|
7
7
|
} from "circuit-json"
|
|
8
8
|
import { expectTypesMatch } from "lib/typecheck"
|
|
9
|
-
import { pcbCoordinate } from "./distance"
|
|
10
9
|
import { z } from "zod"
|
|
11
10
|
import { type CadModelProp, cadModelProp } from "./cadModel"
|
|
11
|
+
import { pcbCoordinate } from "./distance"
|
|
12
12
|
import { type FootprintProp, footprintProp } from "./footprintProp"
|
|
13
13
|
import {
|
|
14
14
|
type KicadFootprintMetadata,
|
|
@@ -18,9 +18,9 @@ import {
|
|
|
18
18
|
type KicadSymbolMetadata,
|
|
19
19
|
kicadSymbolMetadata,
|
|
20
20
|
} from "./kicadSymbolMetadata"
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
21
|
+
import { type PcbStyle, pcbStyle } from "./pcbStyle"
|
|
22
|
+
import { type PcbSx, pcbSx } from "./pcbSx"
|
|
23
|
+
import { type SchStyle, schStyle } from "./schStyle"
|
|
24
24
|
import { type SymbolProp, symbolProp } from "./symbolProp"
|
|
25
25
|
import { url } from "./url"
|
|
26
26
|
|
|
@@ -236,6 +236,24 @@ export interface PinAttributeMap {
|
|
|
236
236
|
includeInBoardPinout?: boolean
|
|
237
237
|
highlightColor?: string
|
|
238
238
|
mustBeConnected?: boolean
|
|
239
|
+
isI2cSda?: boolean
|
|
240
|
+
isI2cScl?: boolean
|
|
241
|
+
isSpiMosi?: boolean
|
|
242
|
+
isSpiMiso?: boolean
|
|
243
|
+
isSpiSck?: boolean
|
|
244
|
+
isSpiCs?: boolean
|
|
245
|
+
isUartTx?: boolean
|
|
246
|
+
isUartRx?: boolean
|
|
247
|
+
canUseInternalPullup?: boolean
|
|
248
|
+
isUsingInternalPullup?: boolean
|
|
249
|
+
needsExternalPullup?: boolean
|
|
250
|
+
canUseInternalPulldown?: boolean
|
|
251
|
+
isUsingInternalPulldown?: boolean
|
|
252
|
+
needsExternalPulldown?: boolean
|
|
253
|
+
canUseOpenDrain?: boolean
|
|
254
|
+
isUsingOpenDrain?: boolean
|
|
255
|
+
canUsePushPull?: boolean
|
|
256
|
+
isUsingPushPull?: boolean
|
|
239
257
|
}
|
|
240
258
|
|
|
241
259
|
export const pinAttributeMap = z.object({
|
|
@@ -249,6 +267,24 @@ export const pinAttributeMap = z.object({
|
|
|
249
267
|
includeInBoardPinout: z.boolean().optional(),
|
|
250
268
|
highlightColor: z.string().optional(),
|
|
251
269
|
mustBeConnected: z.boolean().optional(),
|
|
270
|
+
isI2cSda: z.boolean().optional(),
|
|
271
|
+
isI2cScl: z.boolean().optional(),
|
|
272
|
+
isSpiMosi: z.boolean().optional(),
|
|
273
|
+
isSpiMiso: z.boolean().optional(),
|
|
274
|
+
isSpiSck: z.boolean().optional(),
|
|
275
|
+
isSpiCs: z.boolean().optional(),
|
|
276
|
+
isUartTx: z.boolean().optional(),
|
|
277
|
+
isUartRx: z.boolean().optional(),
|
|
278
|
+
canUseInternalPullup: z.boolean().optional(),
|
|
279
|
+
isUsingInternalPullup: z.boolean().optional(),
|
|
280
|
+
needsExternalPullup: z.boolean().optional(),
|
|
281
|
+
canUseInternalPulldown: z.boolean().optional(),
|
|
282
|
+
isUsingInternalPulldown: z.boolean().optional(),
|
|
283
|
+
needsExternalPulldown: z.boolean().optional(),
|
|
284
|
+
canUseOpenDrain: z.boolean().optional(),
|
|
285
|
+
isUsingOpenDrain: z.boolean().optional(),
|
|
286
|
+
canUsePushPull: z.boolean().optional(),
|
|
287
|
+
isUsingPushPull: z.boolean().optional(),
|
|
252
288
|
})
|
|
253
289
|
|
|
254
290
|
expectTypesMatch<PinAttributeMap, z.input<typeof pinAttributeMap>>(true)
|
|
@@ -61,7 +61,7 @@ export interface PillPlatedHoleProps extends Omit<PcbLayoutProps, "layer"> {
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
export interface CircularHoleWithRectPlatedProps
|
|
64
|
-
extends Omit<PcbLayoutProps, "
|
|
64
|
+
extends Omit<PcbLayoutProps, "layer"> {
|
|
65
65
|
name?: string
|
|
66
66
|
connectsTo?: string | string[]
|
|
67
67
|
shape: "circular_hole_with_rect_pad"
|
|
@@ -79,7 +79,7 @@ export interface CircularHoleWithRectPlatedProps
|
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
export interface PillWithRectPadPlatedHoleProps
|
|
82
|
-
extends Omit<PcbLayoutProps, "
|
|
82
|
+
extends Omit<PcbLayoutProps, "layer"> {
|
|
83
83
|
name?: string
|
|
84
84
|
connectsTo?: string | string[]
|
|
85
85
|
shape: "pill_hole_with_rect_pad"
|
|
@@ -172,7 +172,7 @@ export const platedHoleProps = z
|
|
|
172
172
|
solderMaskMargin: distance.optional(),
|
|
173
173
|
coveredWithSolderMask: z.boolean().optional(),
|
|
174
174
|
}),
|
|
175
|
-
pcbLayoutProps.omit({
|
|
175
|
+
pcbLayoutProps.omit({ layer: true }).extend({
|
|
176
176
|
name: z.string().optional(),
|
|
177
177
|
connectsTo: z.string().or(z.array(z.string())).optional(),
|
|
178
178
|
shape: z.literal("circular_hole_with_rect_pad"),
|
|
@@ -188,7 +188,7 @@ export const platedHoleProps = z
|
|
|
188
188
|
solderMaskMargin: distance.optional(),
|
|
189
189
|
coveredWithSolderMask: z.boolean().optional(),
|
|
190
190
|
}),
|
|
191
|
-
pcbLayoutProps.omit({
|
|
191
|
+
pcbLayoutProps.omit({ layer: true }).extend({
|
|
192
192
|
name: z.string().optional(),
|
|
193
193
|
connectsTo: z.string().or(z.array(z.string())).optional(),
|
|
194
194
|
shape: z.literal("pill_hole_with_rect_pad"),
|