@tscircuit/props 0.0.608 → 0.0.609
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.d.ts +339 -2
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -1
- package/lib/components/smtpad.ts +33 -0
- package/package.json +1 -1
package/lib/components/smtpad.ts
CHANGED
|
@@ -66,6 +66,20 @@ export interface PillSmtPadProps extends Omit<PcbLayoutProps, "pcbRotation"> {
|
|
|
66
66
|
solderPasteMargin?: Distance
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
+
export interface RotatedPillSmtPadProps
|
|
70
|
+
extends Omit<PcbLayoutProps, "pcbRotation"> {
|
|
71
|
+
name?: string
|
|
72
|
+
shape: "rotated_pill"
|
|
73
|
+
width: Distance
|
|
74
|
+
height: Distance
|
|
75
|
+
radius: Distance
|
|
76
|
+
ccwRotation: number
|
|
77
|
+
portHints?: PortHints
|
|
78
|
+
coveredWithSolderMask?: boolean
|
|
79
|
+
solderMaskMargin?: Distance
|
|
80
|
+
solderPasteMargin?: Distance
|
|
81
|
+
}
|
|
82
|
+
|
|
69
83
|
export interface PolygonSmtPadProps
|
|
70
84
|
extends Omit<PcbLayoutProps, "pcbRotation"> {
|
|
71
85
|
name?: string
|
|
@@ -82,6 +96,7 @@ export type SmtPadProps =
|
|
|
82
96
|
| CircleSmtPadProps
|
|
83
97
|
| RotatedRectSmtPadProps
|
|
84
98
|
| PillSmtPadProps
|
|
99
|
+
| RotatedPillSmtPadProps
|
|
85
100
|
| PolygonSmtPadProps
|
|
86
101
|
|
|
87
102
|
// ----------------------------------------------------------------------------
|
|
@@ -160,6 +175,23 @@ export const pillSmtPadProps = pcbLayoutProps
|
|
|
160
175
|
type InferredPillSmtPadProps = z.input<typeof pillSmtPadProps>
|
|
161
176
|
expectTypesMatch<InferredPillSmtPadProps, PillSmtPadProps>(true)
|
|
162
177
|
|
|
178
|
+
export const rotatedPillSmtPadProps = pcbLayoutProps
|
|
179
|
+
.omit({ pcbRotation: true })
|
|
180
|
+
.extend({
|
|
181
|
+
name: z.string().optional(),
|
|
182
|
+
shape: z.literal("rotated_pill"),
|
|
183
|
+
width: distance,
|
|
184
|
+
height: distance,
|
|
185
|
+
radius: distance,
|
|
186
|
+
ccwRotation: z.number(),
|
|
187
|
+
portHints: portHints.optional(),
|
|
188
|
+
coveredWithSolderMask: z.boolean().optional(),
|
|
189
|
+
solderMaskMargin: distance.optional(),
|
|
190
|
+
solderPasteMargin: distance.optional(),
|
|
191
|
+
})
|
|
192
|
+
type InferredRotatedPillSmtPadProps = z.input<typeof rotatedPillSmtPadProps>
|
|
193
|
+
expectTypesMatch<InferredRotatedPillSmtPadProps, RotatedPillSmtPadProps>(true)
|
|
194
|
+
|
|
163
195
|
export const polygonSmtPadProps = pcbLayoutProps
|
|
164
196
|
.omit({ pcbRotation: true })
|
|
165
197
|
.extend({
|
|
@@ -179,6 +211,7 @@ export const smtPadProps = z.discriminatedUnion("shape", [
|
|
|
179
211
|
rectSmtPadProps,
|
|
180
212
|
rotatedRectSmtPadProps,
|
|
181
213
|
pillSmtPadProps,
|
|
214
|
+
rotatedPillSmtPadProps,
|
|
182
215
|
polygonSmtPadProps,
|
|
183
216
|
])
|
|
184
217
|
|