@tscircuit/footprinter 0.0.119 → 0.0.120

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 CHANGED
@@ -1004,6 +1004,7 @@ type Footprinter = {
1004
1004
  to92: () => FootprinterParamsBuilder<"w" | "h" | "p" | "id" | "od">;
1005
1005
  minimelf: () => FootprinterParamsBuilder<"w" | "h" | "p" | "pw" | "pl">;
1006
1006
  lqfp: (num_pins?: number) => FootprinterParamsBuilder<"w" | "h" | "pl" | "pw">;
1007
+ sod923: () => FootprinterParamsBuilder<"w" | "h" | "p" | "pl" | "pw">;
1007
1008
  pushbutton: () => FootprinterParamsBuilder<"tllabel" | "trlabel" | "bllabel" | "brlabel">;
1008
1009
  stampboard: () => FootprinterParamsBuilder<"w" | "h" | "left" | "right" | "top" | "bottom" | "p" | "pw" | "pl" | "innerhole" | "innerholeedgedistance">;
1009
1010
  stampreceiver: () => FootprinterParamsBuilder<"w" | "h" | "left" | "right" | "top" | "bottom" | "p" | "pw" | "pl" | "innerhole" | "innerholeedgedistance">;
package/dist/index.js CHANGED
@@ -38,6 +38,7 @@ __export(fn_exports, {
38
38
  sod723: () => sod723,
39
39
  sod882: () => sod882,
40
40
  sod882d: () => sod882d,
41
+ sod923: () => sod923,
41
42
  soic: () => soic,
42
43
  sop8: () => sop8,
43
44
  sot23: () => sot23,
@@ -2755,23 +2756,23 @@ var sodWithoutParsing2 = (parameters) => {
2755
2756
  return pads;
2756
2757
  };
2757
2758
 
2758
- // src/fn/sod882.ts
2759
+ // src/fn/sod923.ts
2759
2760
  import { z as z24 } from "zod";
2760
2761
  import { length as length18 } from "circuit-json";
2761
2762
  var sod_def3 = z24.object({
2762
2763
  fn: z24.string(),
2763
2764
  num_pins: z24.literal(2).default(2),
2764
- w: z24.string().default("1.3mm"),
2765
+ w: z24.string().default("1.4mm"),
2765
2766
  h: z24.string().default("0.9mm"),
2766
- pl: z24.string().default("0.4mm"),
2767
- pw: z24.string().default("0.7mm"),
2768
- pad_spacing: z24.string().default("0.7mm")
2767
+ pl: z24.string().default("0.35mm"),
2768
+ pw: z24.string().default("0.25mm"),
2769
+ p: z24.string().default("1.2mm")
2769
2770
  });
2770
- var sod882 = (raw_params) => {
2771
+ var sod923 = (raw_params) => {
2771
2772
  const parameters = sod_def3.parse(raw_params);
2772
2773
  const silkscreenRefText = silkscreenRef(
2773
2774
  0,
2774
- length18.parse(parameters.h) + 0.1,
2775
+ length18.parse(parameters.h),
2775
2776
  0.3
2776
2777
  );
2777
2778
  const silkscreenLine = {
@@ -2780,20 +2781,20 @@ var sod882 = (raw_params) => {
2780
2781
  pcb_component_id: "",
2781
2782
  route: [
2782
2783
  {
2783
- x: length18.parse(parameters.pad_spacing) / 2 + 0.2,
2784
- y: length18.parse(parameters.h) / 2 + 0.2
2784
+ x: length18.parse(parameters.p) / 2 + 0.15,
2785
+ y: length18.parse(parameters.h) / 2
2785
2786
  },
2786
2787
  {
2787
- x: -length18.parse(parameters.w) / 2 - 0.2,
2788
- y: length18.parse(parameters.h) / 2 + 0.2
2788
+ x: -length18.parse(parameters.w) / 2 - 0.4,
2789
+ y: length18.parse(parameters.h) / 2
2789
2790
  },
2790
2791
  {
2791
- x: -length18.parse(parameters.w) / 2 - 0.2,
2792
- y: -length18.parse(parameters.h) / 2 - 0.2
2792
+ x: -length18.parse(parameters.w) / 2 - 0.4,
2793
+ y: -length18.parse(parameters.h) / 2
2793
2794
  },
2794
2795
  {
2795
- x: length18.parse(parameters.pad_spacing) / 2 + 0.2,
2796
- y: -length18.parse(parameters.h) / 2 - 0.2
2796
+ x: length18.parse(parameters.p) / 2 + 0.15,
2797
+ y: -length18.parse(parameters.h) / 2
2797
2798
  }
2798
2799
  ],
2799
2800
  stroke_width: 0.1,
@@ -2808,11 +2809,11 @@ var sod882 = (raw_params) => {
2808
2809
  };
2809
2810
  };
2810
2811
  var getSodCoords3 = (parameters) => {
2811
- const { pn, pad_spacing } = parameters;
2812
+ const { pn, p } = parameters;
2812
2813
  if (pn === 1) {
2813
- return { x: -pad_spacing / 2, y: 0 };
2814
+ return { x: -p / 2, y: 0 };
2814
2815
  } else {
2815
- return { x: pad_spacing / 2, y: 0 };
2816
+ return { x: p / 2, y: 0 };
2816
2817
  }
2817
2818
  };
2818
2819
  var sodWithoutParsing3 = (parameters) => {
@@ -2820,7 +2821,7 @@ var sodWithoutParsing3 = (parameters) => {
2820
2821
  for (let i = 1; i <= parameters.num_pins; i++) {
2821
2822
  const { x, y } = getSodCoords3({
2822
2823
  pn: i,
2823
- pad_spacing: Number.parseFloat(parameters.pad_spacing)
2824
+ p: Number.parseFloat(parameters.p)
2824
2825
  });
2825
2826
  pads.push(
2826
2827
  rectpad(
@@ -2835,23 +2836,23 @@ var sodWithoutParsing3 = (parameters) => {
2835
2836
  return pads;
2836
2837
  };
2837
2838
 
2838
- // src/fn/sod323f.ts
2839
+ // src/fn/sod882.ts
2839
2840
  import { z as z25 } from "zod";
2840
2841
  import { length as length19 } from "circuit-json";
2841
2842
  var sod_def4 = z25.object({
2842
2843
  fn: z25.string(),
2843
2844
  num_pins: z25.literal(2).default(2),
2844
- w: z25.string().default("3,05mm"),
2845
- h: z25.string().default("1.65mm"),
2846
- pl: z25.string().default("0.6mm"),
2847
- pw: z25.string().default("0.6mm"),
2848
- pad_spacing: z25.string().default("2.2mm")
2845
+ w: z25.string().default("1.3mm"),
2846
+ h: z25.string().default("0.9mm"),
2847
+ pl: z25.string().default("0.4mm"),
2848
+ pw: z25.string().default("0.7mm"),
2849
+ pad_spacing: z25.string().default("0.7mm")
2849
2850
  });
2850
- var sod323f = (raw_params) => {
2851
+ var sod882 = (raw_params) => {
2851
2852
  const parameters = sod_def4.parse(raw_params);
2852
2853
  const silkscreenRefText = silkscreenRef(
2853
2854
  0,
2854
- length19.parse(parameters.h),
2855
+ length19.parse(parameters.h) + 0.1,
2855
2856
  0.3
2856
2857
  );
2857
2858
  const silkscreenLine = {
@@ -2860,20 +2861,20 @@ var sod323f = (raw_params) => {
2860
2861
  pcb_component_id: "",
2861
2862
  route: [
2862
2863
  {
2863
- x: length19.parse(parameters.pad_spacing) / 2,
2864
- y: length19.parse(parameters.h) / 2
2864
+ x: length19.parse(parameters.pad_spacing) / 2 + 0.2,
2865
+ y: length19.parse(parameters.h) / 2 + 0.2
2865
2866
  },
2866
2867
  {
2867
2868
  x: -length19.parse(parameters.w) / 2 - 0.2,
2868
- y: length19.parse(parameters.h) / 2
2869
+ y: length19.parse(parameters.h) / 2 + 0.2
2869
2870
  },
2870
2871
  {
2871
2872
  x: -length19.parse(parameters.w) / 2 - 0.2,
2872
- y: -length19.parse(parameters.h) / 2
2873
+ y: -length19.parse(parameters.h) / 2 - 0.2
2873
2874
  },
2874
2875
  {
2875
- x: length19.parse(parameters.pad_spacing) / 2,
2876
- y: -length19.parse(parameters.h) / 2
2876
+ x: length19.parse(parameters.pad_spacing) / 2 + 0.2,
2877
+ y: -length19.parse(parameters.h) / 2 - 0.2
2877
2878
  }
2878
2879
  ],
2879
2880
  stroke_width: 0.1,
@@ -2915,19 +2916,19 @@ var sodWithoutParsing4 = (parameters) => {
2915
2916
  return pads;
2916
2917
  };
2917
2918
 
2918
- // src/fn/sod123f.ts
2919
+ // src/fn/sod323f.ts
2919
2920
  import { z as z26 } from "zod";
2920
2921
  import { length as length20 } from "circuit-json";
2921
2922
  var sod_def5 = z26.object({
2922
2923
  fn: z26.string(),
2923
2924
  num_pins: z26.literal(2).default(2),
2924
- w: z26.string().default("4.4mm"),
2925
- h: z26.string().default("2.1mm"),
2926
- pl: z26.string().default("1.2mm"),
2927
- pw: z26.string().default("1.2mm"),
2928
- pad_spacing: z26.string().default("2.9mm")
2925
+ w: z26.string().default("3,05mm"),
2926
+ h: z26.string().default("1.65mm"),
2927
+ pl: z26.string().default("0.6mm"),
2928
+ pw: z26.string().default("0.6mm"),
2929
+ pad_spacing: z26.string().default("2.2mm")
2929
2930
  });
2930
- var sod123f = (raw_params) => {
2931
+ var sod323f = (raw_params) => {
2931
2932
  const parameters = sod_def5.parse(raw_params);
2932
2933
  const silkscreenRefText = silkscreenRef(
2933
2934
  0,
@@ -2995,19 +2996,19 @@ var sodWithoutParsing5 = (parameters) => {
2995
2996
  return pads;
2996
2997
  };
2997
2998
 
2998
- // src/fn/sod723.ts
2999
+ // src/fn/sod123f.ts
2999
3000
  import { z as z27 } from "zod";
3000
3001
  import { length as length21 } from "circuit-json";
3001
3002
  var sod_def6 = z27.object({
3002
3003
  fn: z27.string(),
3003
3004
  num_pins: z27.literal(2).default(2),
3004
- w: z27.string().default("1.80mm"),
3005
- h: z27.string().default("1.00mm"),
3006
- pl: z27.string().default("0.66mm"),
3007
- pw: z27.string().default("0.5mm"),
3008
- pad_spacing: z27.string().default("0.8mm")
3005
+ w: z27.string().default("4.4mm"),
3006
+ h: z27.string().default("2.1mm"),
3007
+ pl: z27.string().default("1.2mm"),
3008
+ pw: z27.string().default("1.2mm"),
3009
+ pad_spacing: z27.string().default("2.9mm")
3009
3010
  });
3010
- var sod723 = (raw_params) => {
3011
+ var sod123f = (raw_params) => {
3011
3012
  const parameters = sod_def6.parse(raw_params);
3012
3013
  const silkscreenRefText = silkscreenRef(
3013
3014
  0,
@@ -3024,11 +3025,11 @@ var sod723 = (raw_params) => {
3024
3025
  y: length21.parse(parameters.h) / 2
3025
3026
  },
3026
3027
  {
3027
- x: -length21.parse(parameters.w) / 2 - 0.1,
3028
+ x: -length21.parse(parameters.w) / 2 - 0.2,
3028
3029
  y: length21.parse(parameters.h) / 2
3029
3030
  },
3030
3031
  {
3031
- x: -length21.parse(parameters.w) / 2 - 0.1,
3032
+ x: -length21.parse(parameters.w) / 2 - 0.2,
3032
3033
  y: -length21.parse(parameters.h) / 2
3033
3034
  },
3034
3035
  {
@@ -3075,23 +3076,23 @@ var sodWithoutParsing6 = (parameters) => {
3075
3076
  return pads;
3076
3077
  };
3077
3078
 
3078
- // src/fn/sod128.ts
3079
+ // src/fn/sod723.ts
3079
3080
  import { z as z28 } from "zod";
3080
3081
  import { length as length22 } from "circuit-json";
3081
3082
  var sod_def7 = z28.object({
3082
3083
  fn: z28.string(),
3083
3084
  num_pins: z28.literal(2).default(2),
3084
- w: z28.string().default("6.2mm"),
3085
- h: z28.string().default("3.4mm"),
3086
- pl: z28.string().default("1.4mm"),
3087
- pw: z28.string().default("2.1mm"),
3088
- pad_spacing: z28.string().default("4.4mm")
3085
+ w: z28.string().default("1.80mm"),
3086
+ h: z28.string().default("1.00mm"),
3087
+ pl: z28.string().default("0.66mm"),
3088
+ pw: z28.string().default("0.5mm"),
3089
+ pad_spacing: z28.string().default("0.8mm")
3089
3090
  });
3090
- var sod128 = (raw_params) => {
3091
+ var sod723 = (raw_params) => {
3091
3092
  const parameters = sod_def7.parse(raw_params);
3092
3093
  const silkscreenRefText = silkscreenRef(
3093
3094
  0,
3094
- length22.parse(parameters.h) / 2 + 0.4,
3095
+ length22.parse(parameters.h),
3095
3096
  0.3
3096
3097
  );
3097
3098
  const silkscreenLine = {
@@ -3104,11 +3105,11 @@ var sod128 = (raw_params) => {
3104
3105
  y: length22.parse(parameters.h) / 2
3105
3106
  },
3106
3107
  {
3107
- x: -length22.parse(parameters.w) / 2 - 0.2,
3108
+ x: -length22.parse(parameters.w) / 2 - 0.1,
3108
3109
  y: length22.parse(parameters.h) / 2
3109
3110
  },
3110
3111
  {
3111
- x: -length22.parse(parameters.w) / 2 - 0.2,
3112
+ x: -length22.parse(parameters.w) / 2 - 0.1,
3112
3113
  y: -length22.parse(parameters.h) / 2
3113
3114
  },
3114
3115
  {
@@ -3155,20 +3156,100 @@ var sodWithoutParsing7 = (parameters) => {
3155
3156
  return pads;
3156
3157
  };
3157
3158
 
3159
+ // src/fn/sod128.ts
3160
+ import { z as z29 } from "zod";
3161
+ import { length as length23 } from "circuit-json";
3162
+ var sod_def8 = z29.object({
3163
+ fn: z29.string(),
3164
+ num_pins: z29.literal(2).default(2),
3165
+ w: z29.string().default("6.2mm"),
3166
+ h: z29.string().default("3.4mm"),
3167
+ pl: z29.string().default("1.4mm"),
3168
+ pw: z29.string().default("2.1mm"),
3169
+ pad_spacing: z29.string().default("4.4mm")
3170
+ });
3171
+ var sod128 = (raw_params) => {
3172
+ const parameters = sod_def8.parse(raw_params);
3173
+ const silkscreenRefText = silkscreenRef(
3174
+ 0,
3175
+ length23.parse(parameters.h) / 2 + 0.4,
3176
+ 0.3
3177
+ );
3178
+ const silkscreenLine = {
3179
+ type: "pcb_silkscreen_path",
3180
+ layer: "top",
3181
+ pcb_component_id: "",
3182
+ route: [
3183
+ {
3184
+ x: length23.parse(parameters.pad_spacing) / 2,
3185
+ y: length23.parse(parameters.h) / 2
3186
+ },
3187
+ {
3188
+ x: -length23.parse(parameters.w) / 2 - 0.2,
3189
+ y: length23.parse(parameters.h) / 2
3190
+ },
3191
+ {
3192
+ x: -length23.parse(parameters.w) / 2 - 0.2,
3193
+ y: -length23.parse(parameters.h) / 2
3194
+ },
3195
+ {
3196
+ x: length23.parse(parameters.pad_spacing) / 2,
3197
+ y: -length23.parse(parameters.h) / 2
3198
+ }
3199
+ ],
3200
+ stroke_width: 0.1,
3201
+ pcb_silkscreen_path_id: ""
3202
+ };
3203
+ return {
3204
+ circuitJson: sodWithoutParsing8(parameters).concat(
3205
+ silkscreenLine,
3206
+ silkscreenRefText
3207
+ ),
3208
+ parameters
3209
+ };
3210
+ };
3211
+ var getSodCoords8 = (parameters) => {
3212
+ const { pn, pad_spacing } = parameters;
3213
+ if (pn === 1) {
3214
+ return { x: -pad_spacing / 2, y: 0 };
3215
+ } else {
3216
+ return { x: pad_spacing / 2, y: 0 };
3217
+ }
3218
+ };
3219
+ var sodWithoutParsing8 = (parameters) => {
3220
+ const pads = [];
3221
+ for (let i = 1; i <= parameters.num_pins; i++) {
3222
+ const { x, y } = getSodCoords8({
3223
+ pn: i,
3224
+ pad_spacing: Number.parseFloat(parameters.pad_spacing)
3225
+ });
3226
+ pads.push(
3227
+ rectpad(
3228
+ i,
3229
+ x,
3230
+ y,
3231
+ Number.parseFloat(parameters.pl),
3232
+ Number.parseFloat(parameters.pw)
3233
+ )
3234
+ );
3235
+ }
3236
+ return pads;
3237
+ };
3238
+
3158
3239
  // src/fn/to220.ts
3159
3240
  import {
3160
- length as length23
3241
+ length as length24
3161
3242
  } from "circuit-json";
3162
- import { z as z29 } from "zod";
3163
- var to220_def = z29.object({
3164
- fn: z29.string().default("to220_3").refine((val) => /^to220_\d+$/.test(val), {
3243
+ import { z as z30 } from "zod";
3244
+ var to220_def = z30.object({
3245
+ fn: z30.string().default("to220_3").refine((val) => /^to220_\d+$/.test(val), {
3165
3246
  message: "Invalid format. Expected 'to220_N' where N is the number of pins."
3166
3247
  }),
3167
- p: length23.optional().default("5.0mm"),
3168
- id: length23.optional().default("1.0mm"),
3169
- od: length23.optional().default("1.9mm"),
3170
- w: length23.optional().default("13mm"),
3171
- h: length23.optional().default("7mm")
3248
+ p: length24.optional().default("5.0mm"),
3249
+ id: length24.optional().default("1.0mm"),
3250
+ od: length24.optional().default("1.9mm"),
3251
+ w: length24.optional().default("13mm"),
3252
+ h: length24.optional().default("7mm")
3172
3253
  }).transform((a) => {
3173
3254
  const match = a.fn.match(/^to220_(\d+)$/);
3174
3255
  const numPins = match ? parseInt(match[1], 10) : 3;
@@ -3255,22 +3336,22 @@ var to220 = (raw_params) => {
3255
3336
  };
3256
3337
 
3257
3338
  // src/fn/minimelf.ts
3258
- import { z as z30 } from "zod";
3259
- import { length as length24 } from "circuit-json";
3260
- var minimelf_def = z30.object({
3261
- fn: z30.string(),
3262
- num_pins: z30.literal(2).default(2),
3263
- w: z30.string().default("5.40mm"),
3264
- h: z30.string().default("2.30mm"),
3265
- pl: z30.string().default("1.30mm"),
3266
- pw: z30.string().default("1.70mm"),
3267
- p: z30.string().default("3.5mm")
3339
+ import { z as z31 } from "zod";
3340
+ import { length as length25 } from "circuit-json";
3341
+ var minimelf_def = z31.object({
3342
+ fn: z31.string(),
3343
+ num_pins: z31.literal(2).default(2),
3344
+ w: z31.string().default("5.40mm"),
3345
+ h: z31.string().default("2.30mm"),
3346
+ pl: z31.string().default("1.30mm"),
3347
+ pw: z31.string().default("1.70mm"),
3348
+ p: z31.string().default("3.5mm")
3268
3349
  });
3269
3350
  var minimelf = (raw_params) => {
3270
3351
  const parameters = minimelf_def.parse(raw_params);
3271
3352
  const silkscreenRefText = silkscreenRef(
3272
3353
  0,
3273
- length24.parse(parameters.h) / 2 + 0.4,
3354
+ length25.parse(parameters.h) / 2 + 0.4,
3274
3355
  0.3
3275
3356
  );
3276
3357
  const silkscreenLine = {
@@ -3279,20 +3360,20 @@ var minimelf = (raw_params) => {
3279
3360
  pcb_component_id: "",
3280
3361
  route: [
3281
3362
  {
3282
- x: length24.parse(parameters.p) / 2,
3283
- y: length24.parse(parameters.h) / 2
3363
+ x: length25.parse(parameters.p) / 2,
3364
+ y: length25.parse(parameters.h) / 2
3284
3365
  },
3285
3366
  {
3286
- x: -length24.parse(parameters.w) / 2,
3287
- y: length24.parse(parameters.h) / 2
3367
+ x: -length25.parse(parameters.w) / 2,
3368
+ y: length25.parse(parameters.h) / 2
3288
3369
  },
3289
3370
  {
3290
- x: -length24.parse(parameters.w) / 2,
3291
- y: -length24.parse(parameters.h) / 2
3371
+ x: -length25.parse(parameters.w) / 2,
3372
+ y: -length25.parse(parameters.h) / 2
3292
3373
  },
3293
3374
  {
3294
- x: length24.parse(parameters.p) / 2,
3295
- y: -length24.parse(parameters.h) / 2
3375
+ x: length25.parse(parameters.p) / 2,
3376
+ y: -length25.parse(parameters.h) / 2
3296
3377
  }
3297
3378
  ],
3298
3379
  stroke_width: 0.1,
@@ -3331,22 +3412,22 @@ var miniMelfWithoutParsing = (parameters) => {
3331
3412
  };
3332
3413
 
3333
3414
  // src/fn/sod882d.ts
3334
- import { z as z31 } from "zod";
3335
- import { length as length25 } from "circuit-json";
3336
- var sod_def8 = z31.object({
3337
- fn: z31.string(),
3338
- num_pins: z31.literal(2).default(2),
3339
- w: z31.string().default("1.90mm"),
3340
- h: z31.string().default("1.33mm"),
3341
- pl: z31.string().default("0.5mm"),
3342
- pw: z31.string().default("0.7mm"),
3343
- pad_spacing: z31.string().default("0.8mm")
3415
+ import { z as z32 } from "zod";
3416
+ import { length as length26 } from "circuit-json";
3417
+ var sod_def9 = z32.object({
3418
+ fn: z32.string(),
3419
+ num_pins: z32.literal(2).default(2),
3420
+ w: z32.string().default("1.90mm"),
3421
+ h: z32.string().default("1.33mm"),
3422
+ pl: z32.string().default("0.5mm"),
3423
+ pw: z32.string().default("0.7mm"),
3424
+ pad_spacing: z32.string().default("0.8mm")
3344
3425
  });
3345
3426
  var sod882d = (raw_params) => {
3346
- const parameters = sod_def8.parse(raw_params);
3427
+ const parameters = sod_def9.parse(raw_params);
3347
3428
  const silkscreenRefText = silkscreenRef(
3348
3429
  0,
3349
- length25.parse(parameters.h) + 0.1,
3430
+ length26.parse(parameters.h) + 0.1,
3350
3431
  0.3
3351
3432
  );
3352
3433
  const silkscreenLine = {
@@ -3355,34 +3436,34 @@ var sod882d = (raw_params) => {
3355
3436
  pcb_component_id: "",
3356
3437
  route: [
3357
3438
  {
3358
- x: length25.parse(parameters.pad_spacing) / 2 + 0.1,
3359
- y: length25.parse(parameters.h) / 2
3439
+ x: length26.parse(parameters.pad_spacing) / 2 + 0.1,
3440
+ y: length26.parse(parameters.h) / 2
3360
3441
  },
3361
3442
  {
3362
- x: -length25.parse(parameters.w) / 2,
3363
- y: length25.parse(parameters.h) / 2
3443
+ x: -length26.parse(parameters.w) / 2,
3444
+ y: length26.parse(parameters.h) / 2
3364
3445
  },
3365
3446
  {
3366
- x: -length25.parse(parameters.w) / 2,
3367
- y: -length25.parse(parameters.h) / 2
3447
+ x: -length26.parse(parameters.w) / 2,
3448
+ y: -length26.parse(parameters.h) / 2
3368
3449
  },
3369
3450
  {
3370
- x: length25.parse(parameters.pad_spacing) / 2 + 0.1,
3371
- y: -length25.parse(parameters.h) / 2
3451
+ x: length26.parse(parameters.pad_spacing) / 2 + 0.1,
3452
+ y: -length26.parse(parameters.h) / 2
3372
3453
  }
3373
3454
  ],
3374
3455
  stroke_width: 0.1,
3375
3456
  pcb_silkscreen_path_id: ""
3376
3457
  };
3377
3458
  return {
3378
- circuitJson: sodWithoutParsing8(parameters).concat(
3459
+ circuitJson: sodWithoutParsing9(parameters).concat(
3379
3460
  silkscreenLine,
3380
3461
  silkscreenRefText
3381
3462
  ),
3382
3463
  parameters
3383
3464
  };
3384
3465
  };
3385
- var getSodCoords8 = (parameters) => {
3466
+ var getSodCoords9 = (parameters) => {
3386
3467
  const { pn, pad_spacing } = parameters;
3387
3468
  if (pn === 1) {
3388
3469
  return { x: -pad_spacing / 2, y: 0 };
@@ -3390,10 +3471,10 @@ var getSodCoords8 = (parameters) => {
3390
3471
  return { x: pad_spacing / 2, y: 0 };
3391
3472
  }
3392
3473
  };
3393
- var sodWithoutParsing8 = (parameters) => {
3474
+ var sodWithoutParsing9 = (parameters) => {
3394
3475
  const pads = [];
3395
3476
  for (let i = 1; i <= parameters.num_pins; i++) {
3396
- const { x, y } = getSodCoords8({
3477
+ const { x, y } = getSodCoords9({
3397
3478
  pn: i,
3398
3479
  pad_spacing: Number.parseFloat(parameters.pad_spacing)
3399
3480
  });
@@ -3411,22 +3492,22 @@ var sodWithoutParsing8 = (parameters) => {
3411
3492
  };
3412
3493
 
3413
3494
  // src/fn/melf.ts
3414
- import { z as z32 } from "zod";
3415
- import { length as length26 } from "circuit-json";
3416
- var melf_def = z32.object({
3417
- fn: z32.string(),
3418
- num_pins: z32.literal(2).default(2),
3419
- w: z32.string().default("7.0mm"),
3420
- h: z32.string().default("3.35mm"),
3421
- pl: z32.string().default("1.50mm"),
3422
- pw: z32.string().default("2.70mm"),
3423
- pad_spacing: z32.string().default("4.8mm")
3495
+ import { z as z33 } from "zod";
3496
+ import { length as length27 } from "circuit-json";
3497
+ var melf_def = z33.object({
3498
+ fn: z33.string(),
3499
+ num_pins: z33.literal(2).default(2),
3500
+ w: z33.string().default("7.0mm"),
3501
+ h: z33.string().default("3.35mm"),
3502
+ pl: z33.string().default("1.50mm"),
3503
+ pw: z33.string().default("2.70mm"),
3504
+ pad_spacing: z33.string().default("4.8mm")
3424
3505
  });
3425
3506
  var melf = (raw_params) => {
3426
3507
  const parameters = melf_def.parse(raw_params);
3427
3508
  const silkscreenRefText = silkscreenRef(
3428
3509
  0,
3429
- length26.parse(parameters.h),
3510
+ length27.parse(parameters.h),
3430
3511
  0.3
3431
3512
  );
3432
3513
  const silkscreenLine = {
@@ -3435,20 +3516,20 @@ var melf = (raw_params) => {
3435
3516
  pcb_component_id: "",
3436
3517
  route: [
3437
3518
  {
3438
- x: length26.parse(parameters.pad_spacing) / 2,
3439
- y: length26.parse(parameters.h) / 2
3519
+ x: length27.parse(parameters.pad_spacing) / 2,
3520
+ y: length27.parse(parameters.h) / 2
3440
3521
  },
3441
3522
  {
3442
- x: -length26.parse(parameters.w) / 2,
3443
- y: length26.parse(parameters.h) / 2
3523
+ x: -length27.parse(parameters.w) / 2,
3524
+ y: length27.parse(parameters.h) / 2
3444
3525
  },
3445
3526
  {
3446
- x: -length26.parse(parameters.w) / 2,
3447
- y: -length26.parse(parameters.h) / 2
3527
+ x: -length27.parse(parameters.w) / 2,
3528
+ y: -length27.parse(parameters.h) / 2
3448
3529
  },
3449
3530
  {
3450
- x: length26.parse(parameters.pad_spacing) / 2,
3451
- y: -length26.parse(parameters.h) / 2
3531
+ x: length27.parse(parameters.pad_spacing) / 2,
3532
+ y: -length27.parse(parameters.h) / 2
3452
3533
  }
3453
3534
  ],
3454
3535
  stroke_width: 0.1,
@@ -3491,22 +3572,22 @@ var melfWithoutParsing = (parameters) => {
3491
3572
  };
3492
3573
 
3493
3574
  // src/fn/micromelf.ts
3494
- import { z as z33 } from "zod";
3495
- import { length as length27 } from "circuit-json";
3496
- var micromelf_def = z33.object({
3497
- fn: z33.string(),
3498
- num_pins: z33.literal(2).default(2),
3499
- w: z33.string().default("3.0mm"),
3500
- h: z33.string().default("1.80mm"),
3501
- pl: z33.string().default("0.80mm"),
3502
- pw: z33.string().default("1.20mm"),
3503
- pad_spacing: z33.string().default("1.6mm")
3575
+ import { z as z34 } from "zod";
3576
+ import { length as length28 } from "circuit-json";
3577
+ var micromelf_def = z34.object({
3578
+ fn: z34.string(),
3579
+ num_pins: z34.literal(2).default(2),
3580
+ w: z34.string().default("3.0mm"),
3581
+ h: z34.string().default("1.80mm"),
3582
+ pl: z34.string().default("0.80mm"),
3583
+ pw: z34.string().default("1.20mm"),
3584
+ pad_spacing: z34.string().default("1.6mm")
3504
3585
  });
3505
3586
  var micromelf = (raw_params) => {
3506
3587
  const parameters = micromelf_def.parse(raw_params);
3507
3588
  const silkscreenRefText = silkscreenRef(
3508
3589
  0,
3509
- length27.parse(parameters.h),
3590
+ length28.parse(parameters.h),
3510
3591
  0.3
3511
3592
  );
3512
3593
  const silkscreenLine = {
@@ -3515,20 +3596,20 @@ var micromelf = (raw_params) => {
3515
3596
  pcb_component_id: "",
3516
3597
  route: [
3517
3598
  {
3518
- x: length27.parse(parameters.pad_spacing) / 2,
3519
- y: length27.parse(parameters.h) / 2
3599
+ x: length28.parse(parameters.pad_spacing) / 2,
3600
+ y: length28.parse(parameters.h) / 2
3520
3601
  },
3521
3602
  {
3522
- x: -length27.parse(parameters.w) / 2 - 0.1,
3523
- y: length27.parse(parameters.h) / 2
3603
+ x: -length28.parse(parameters.w) / 2 - 0.1,
3604
+ y: length28.parse(parameters.h) / 2
3524
3605
  },
3525
3606
  {
3526
- x: -length27.parse(parameters.w) / 2 - 0.1,
3527
- y: -length27.parse(parameters.h) / 2
3607
+ x: -length28.parse(parameters.w) / 2 - 0.1,
3608
+ y: -length28.parse(parameters.h) / 2
3528
3609
  },
3529
3610
  {
3530
- x: length27.parse(parameters.pad_spacing) / 2,
3531
- y: -length27.parse(parameters.h) / 2
3611
+ x: length28.parse(parameters.pad_spacing) / 2,
3612
+ y: -length28.parse(parameters.h) / 2
3532
3613
  }
3533
3614
  ],
3534
3615
  stroke_width: 0.1,