Skip to content

Commit 725059d

Browse files
authored
Add is_preferred column and filter. (#99)
* Initial support for JLC "Preferred" component everywhere, mirroring "Basic" component support * Manually add is_preferred instances to kysely.ts * lib/db/derivedtables all needed manual updates for new type * fix lib/db/derivedtables * and 1 reference in search.tsx * fix and run bun run format , rm extra file * Update .gitignore for quality of life
1 parent 1a4ccef commit 725059d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+195
-2
lines changed

.gitignore

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,4 +181,8 @@ db.sqlite3
181181
.winterspec
182182
db.backup.sqlite3
183183
.bin
184-
.fly.toml.swp
184+
.fly.toml.swp
185+
186+
187+
#MANUAL folder gets created on build, ignore it
188+
/MANUAL

biome.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
"dist",
1414
"package.json",
1515
"*.md",
16-
"lib/db/generated/kysely.ts"
16+
"lib/db/generated/kysely.ts",
17+
"MANUAL"
1718
]
1819
},
1920
"javascript": {

lib/db/derivedtables/accelerometer.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ export const accelerometerTableSpec: DerivedTableSpec<Accelerometer> = {
2727
{ name: "has_spi", type: "boolean" },
2828
{ name: "has_uart", type: "boolean" },
2929
{ name: "is_basic", type: "boolean" },
30+
{ name: "is_preferred", type: "boolean" },
3031
],
3132
listCandidateComponents: (db) =>
3233
db
@@ -100,6 +101,7 @@ export const accelerometerTableSpec: DerivedTableSpec<Accelerometer> = {
100101
price1: extractMinQPrice(c.price),
101102
in_stock: c.stock > 0,
102103
is_basic: Boolean(c.basic),
104+
is_preferred: Boolean(c.preferred),
103105
package: c.package || "",
104106
supply_voltage_min: voltageMin,
105107
supply_voltage_max: voltageMax,

lib/db/derivedtables/adc.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ export const adcTableSpec: DerivedTableSpec<Adc> = {
3939
{ name: "operating_temp_min", type: "real" },
4040
{ name: "operating_temp_max", type: "real" },
4141
{ name: "is_basic", type: "boolean" },
42+
{ name: "is_preferred", type: "boolean" },
4243
],
4344
listCandidateComponents: (db) =>
4445
db
@@ -113,6 +114,7 @@ export const adcTableSpec: DerivedTableSpec<Adc> = {
113114
price1: extractMinQPrice(c.price),
114115
in_stock: c.stock > 0,
115116
is_basic: Boolean(c.basic),
117+
is_preferred: Boolean(c.preferred),
116118
package: c.package || "",
117119
resolution_bits: resolution,
118120
sampling_rate_hz: samplingRate,

lib/db/derivedtables/analog_multiplexer.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ export const analogMultiplexerTableSpec: DerivedTableSpec<AnalogMultiplexer> = {
3939
{ name: "operating_temp_max", type: "real" },
4040
{ name: "channel_type", type: "text" },
4141
{ name: "is_basic", type: "boolean" },
42+
{ name: "is_preferred", type: "boolean" },
4243
],
4344
listCandidateComponents: (db) =>
4445
db
@@ -142,6 +143,7 @@ export const analogMultiplexerTableSpec: DerivedTableSpec<AnalogMultiplexer> = {
142143
price1: extractMinQPrice(c.price),
143144
in_stock: c.stock > 0,
144145
is_basic: Boolean(c.basic),
146+
is_preferred: Boolean(c.preferred),
145147
package: c.package || "",
146148
num_channels: numChannels,
147149
num_bits: numBits,

lib/db/derivedtables/bjt_transistor.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ export const bjtTransistorTableSpec: DerivedTableSpec<BJTTransistor> = {
2525
{ name: "power_dissipation", type: "integer" },
2626
{ name: "temperature_range", type: "text" },
2727
{ name: "is_basic", type: "boolean" },
28+
{ name: "is_preferred", type: "boolean" },
2829
],
2930
listCandidateComponents(db: KyselyDatabaseInstance) {
3031
return db
@@ -72,6 +73,7 @@ export const bjtTransistorTableSpec: DerivedTableSpec<BJTTransistor> = {
7273
price1: extractMinQPrice(c.price),
7374
in_stock: Boolean((c.stock || 0) > 0),
7475
is_basic: Boolean(c.basic),
76+
is_preferred: Boolean(c.preferred),
7577
package: c.package || "",
7678
current_gain: current_gain,
7779
collector_current: collector_current,

lib/db/derivedtables/boost_converter.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ export const boostConverterTableSpec: DerivedTableSpec<BoostConverter> = {
3030
{ name: "topology", type: "text" },
3131
{ name: "number_of_outputs", type: "integer" },
3232
{ name: "is_basic", type: "boolean" },
33+
{ name: "is_preferred", type: "boolean" },
3334
],
3435
listCandidateComponents: (db) =>
3536
db
@@ -115,6 +116,7 @@ export const boostConverterTableSpec: DerivedTableSpec<BoostConverter> = {
115116
price1: extractMinQPrice(c.price),
116117
in_stock: c.stock > 0,
117118
is_basic: Boolean(c.basic),
119+
is_preferred: Boolean(c.preferred),
118120
package: c.package || "",
119121
input_voltage_min: inputMin,
120122
input_voltage_max: inputMax,

lib/db/derivedtables/buck_boost_converter.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export const buckBoostConverterTableSpec: DerivedTableSpec<BuckBoostConverter> =
3131
{ name: "topology", type: "text" },
3232
{ name: "number_of_outputs", type: "integer" },
3333
{ name: "is_basic", type: "boolean" },
34+
{ name: "is_preferred", type: "boolean" },
3435
],
3536
listCandidateComponents: (db) =>
3637
db
@@ -119,6 +120,7 @@ export const buckBoostConverterTableSpec: DerivedTableSpec<BuckBoostConverter> =
119120
price1: extractMinQPrice(c.price),
120121
in_stock: c.stock > 0,
121122
is_basic: Boolean(c.basic),
123+
is_preferred: Boolean(c.preferred),
122124
package: c.package || "",
123125
input_voltage_min: inputMin,
124126
input_voltage_max: inputMax,

lib/db/derivedtables/capacitor.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ export const capacitorTableSpec: DerivedTableSpec<Capacitor> = {
3333
{ name: "is_surface_mount", type: "boolean" },
3434
{ name: "capacitor_type", type: "text" },
3535
{ name: "is_basic", type: "boolean" },
36+
{ name: "is_preferred", type: "boolean" },
3637
],
3738
listCandidateComponents: (db) =>
3839
db
@@ -113,6 +114,7 @@ export const capacitorTableSpec: DerivedTableSpec<Capacitor> = {
113114
price1: extractMinQPrice(c.price),
114115
in_stock: c.stock > 0,
115116
is_basic: Boolean(c.basic),
117+
is_preferred: Boolean(c.preferred),
116118
capacitance_farads: capacitance,
117119
tolerance_fraction: tolerance,
118120
voltage_rating: voltage,

lib/db/derivedtables/component-base.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,6 @@ export interface BaseComponent {
66
price1: number | null
77
in_stock: boolean
88
is_basic: boolean
9+
is_preferred: boolean
910
attributes: Record<string, string>
1011
}

0 commit comments

Comments
 (0)