Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions lib/db/derivedtables/accelerometer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Accelerometer extends BaseComponent {
is_extended_promotional: boolean
package: string
supply_voltage_min: number | null
supply_voltage_max: number | null
Expand All @@ -28,6 +29,7 @@ export const accelerometerTableSpec: DerivedTableSpec<Accelerometer> = {
{ name: "has_uart", type: "boolean" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -102,6 +104,9 @@ export const accelerometerTableSpec: DerivedTableSpec<Accelerometer> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
supply_voltage_min: voltageMin,
supply_voltage_max: voltageMax,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/adc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Adc extends BaseComponent {
is_extended_promotional: boolean
// Extra columns
package: string
resolution_bits: number | null
Expand Down Expand Up @@ -40,6 +41,7 @@ export const adcTableSpec: DerivedTableSpec<Adc> = {
{ name: "operating_temp_max", type: "real" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -115,6 +117,9 @@ export const adcTableSpec: DerivedTableSpec<Adc> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
resolution_bits: resolution,
sampling_rate_hz: samplingRate,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/analog_multiplexer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface AnalogMultiplexer extends BaseComponent {
is_extended_promotional: boolean
// Extra columns
package: string
num_channels: number | null
Expand Down Expand Up @@ -40,6 +41,7 @@ export const analogMultiplexerTableSpec: DerivedTableSpec<AnalogMultiplexer> = {
{ name: "channel_type", type: "text" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -144,6 +146,9 @@ export const analogMultiplexerTableSpec: DerivedTableSpec<AnalogMultiplexer> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
num_channels: numChannels,
num_bits: numBits,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/battery_holder.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { BaseComponent } from "./component-base"
import type { KyselyDatabaseInstance } from "../kysely-types"

export interface BatteryHolder extends BaseComponent {
is_extended_promotional: boolean
package: string
connector_type: string | null
battery_type: string | null
Expand Down Expand Up @@ -32,6 +33,7 @@ export const batteryHolderTableSpec: DerivedTableSpec<BatteryHolder> = {
{ name: "operating_temp_max", type: "real" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents(db: KyselyDatabaseInstance) {
return db
Expand Down Expand Up @@ -74,6 +76,9 @@ export const batteryHolderTableSpec: DerivedTableSpec<BatteryHolder> = {
in_stock: Boolean((c.stock || 0) > 0),
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: String(c.package || ""),
connector_type: attrs["Connector Type"] || null,
battery_type: attrs["Battery Type"] || null,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/bjt_transistor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { parseAndConvertSiUnit } from "lib/util/parse-and-convert-si-unit"

export interface BJTTransistor extends BaseComponent {
is_extended_promotional: boolean
package?: string
current_gain?: number
collector_current?: number
Expand All @@ -26,6 +27,7 @@ export const bjtTransistorTableSpec: DerivedTableSpec<BJTTransistor> = {
{ name: "temperature_range", type: "text" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents(db: KyselyDatabaseInstance) {
return db
Expand Down Expand Up @@ -74,6 +76,9 @@ export const bjtTransistorTableSpec: DerivedTableSpec<BJTTransistor> = {
in_stock: Boolean((c.stock || 0) > 0),
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
current_gain: current_gain,
collector_current: collector_current,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/boost_converter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { BaseComponent } from "./component-base"
import type { DerivedTableSpec } from "./types"

export interface BoostConverter extends BaseComponent {
is_extended_promotional: boolean
package: string
input_voltage_min: number | null
input_voltage_max: number | null
Expand Down Expand Up @@ -31,6 +32,7 @@ export const boostConverterTableSpec: DerivedTableSpec<BoostConverter> = {
{ name: "number_of_outputs", type: "integer" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -117,6 +119,9 @@ export const boostConverterTableSpec: DerivedTableSpec<BoostConverter> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
input_voltage_min: inputMin,
input_voltage_max: inputMax,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/buck_boost_converter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { BaseComponent } from "./component-base"
import type { DerivedTableSpec } from "./types"

export interface BuckBoostConverter extends BaseComponent {
is_extended_promotional: boolean
package: string
input_voltage_min: number | null
input_voltage_max: number | null
Expand Down Expand Up @@ -32,6 +33,7 @@ export const buckBoostConverterTableSpec: DerivedTableSpec<BuckBoostConverter> =
{ name: "number_of_outputs", type: "integer" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -121,6 +123,9 @@ export const buckBoostConverterTableSpec: DerivedTableSpec<BuckBoostConverter> =
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
input_voltage_min: inputMin,
input_voltage_max: inputMax,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/capacitor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Capacitor extends BaseComponent {
is_extended_promotional: boolean
// Extra columns
capacitance_farads: number
tolerance_fraction: number
Expand Down Expand Up @@ -34,6 +35,7 @@ export const capacitorTableSpec: DerivedTableSpec<Capacitor> = {
{ name: "capacitor_type", type: "text" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -115,6 +117,9 @@ export const capacitorTableSpec: DerivedTableSpec<Capacitor> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
capacitance_farads: capacitance,
tolerance_fraction: tolerance,
voltage_rating: voltage,
Expand Down
1 change: 1 addition & 0 deletions lib/db/derivedtables/component-base.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@ export interface BaseComponent {
in_stock: boolean
is_basic: boolean
is_preferred: boolean
is_extended_promotional: boolean
attributes: Record<string, string>
}
5 changes: 5 additions & 0 deletions lib/db/derivedtables/dac.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Dac extends BaseComponent {
is_extended_promotional: boolean
// Extra columns
package: string
resolution_bits: number | null
Expand Down Expand Up @@ -38,6 +39,7 @@ export const dacTableSpec: DerivedTableSpec<Dac> = {
{ name: "nonlinearity_lsb", type: "real" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -129,6 +131,9 @@ export const dacTableSpec: DerivedTableSpec<Dac> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
resolution_bits: resolution,
num_channels: numChannels,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/diode.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Diode extends BaseComponent {
is_extended_promotional: boolean
// Extra columns
package: string
forward_voltage: number | null
Expand Down Expand Up @@ -40,6 +41,7 @@ export const diodeTableSpec: DerivedTableSpec<Diode> = {
{ name: "configuration", type: "text" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -159,6 +161,9 @@ export const diodeTableSpec: DerivedTableSpec<Diode> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
forward_voltage: forwardVoltage,
reverse_voltage: reverseVoltage,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/fpc_connector.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { BaseComponent } from "./component-base"
import type { KyselyDatabaseInstance } from "../kysely-types"

export interface FpcConnector extends BaseComponent {
is_extended_promotional: boolean
pitch_mm: number | null
number_of_contacts: number | null
contact_type: string | null
Expand All @@ -20,6 +21,7 @@ export const fpcConnectorTableSpec: DerivedTableSpec<FpcConnector> = {
{ name: "locking_feature", type: "text" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents(db: KyselyDatabaseInstance) {
return db
Expand Down Expand Up @@ -55,6 +57,9 @@ export const fpcConnectorTableSpec: DerivedTableSpec<FpcConnector> = {
in_stock: Boolean((c.stock || 0) > 0),
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
pitch_mm: parseNum(attrs["Pitch"]),
number_of_contacts: isNaN(contacts) ? null : contacts,
contact_type: attrs["Contact Type"] || null,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/fpga.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import type { DerivedTableSpec } from "./types"
import { BaseComponent } from "./component-base"

export interface FPGA extends BaseComponent {
is_extended_promotional: boolean
package: string
type: string | null
logic_array_blocks: number | null
Expand Down Expand Up @@ -68,6 +69,7 @@ export const fpgaTableSpec: DerivedTableSpec<FPGA> = {
{ name: "logic_gates", type: "real" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -99,6 +101,9 @@ export const fpgaTableSpec: DerivedTableSpec<FPGA> = {
in_stock: Boolean((c.stock ?? 0) > 0),
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: extra?.package ?? c.package ?? "",
type: attrs["Type"] ?? null,
logic_array_blocks: parseNumericValue(attrs["Logic Array Blocks"]),
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/fuse.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Fuse extends BaseComponent {
is_extended_promotional: boolean
current_rating: number // in Amperes
voltage_rating: number // in Volts
response_time: string // "fast", "medium", "slow"
Expand All @@ -25,6 +26,7 @@ export const fuseTableSpec: DerivedTableSpec<Fuse> = {
{ name: "is_resettable", type: "boolean" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents(db: KyselyDatabaseInstance) {
return db
Expand Down Expand Up @@ -90,6 +92,9 @@ export const fuseTableSpec: DerivedTableSpec<Fuse> = {
in_stock: Boolean((c.stock || 0) > 0),
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
current_rating: current_rating as number,
voltage_rating: voltage_rating as number,
response_time,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/gas_sensor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface GasSensor extends BaseComponent {
is_extended_promotional: boolean
package: string
sensor_type: string | null
measures_air_quality: boolean
Expand Down Expand Up @@ -36,6 +37,7 @@ export const gasSensorTableSpec: DerivedTableSpec<GasSensor> = {
{ name: "measures_explosive_gases", type: "boolean" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents(db) {
return db
Expand Down Expand Up @@ -82,6 +84,9 @@ export const gasSensorTableSpec: DerivedTableSpec<GasSensor> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
sensor_type: sensorType,
measures_air_quality: measuresAirQuality,
Expand Down
5 changes: 5 additions & 0 deletions lib/db/derivedtables/gyroscope.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { extractMinQPrice } from "lib/util/extract-min-quantity-price"
import { BaseComponent } from "./component-base"

export interface Gyroscope extends BaseComponent {
is_extended_promotional: boolean
package: string
supply_voltage_min: number | null
supply_voltage_max: number | null
Expand All @@ -28,6 +29,7 @@ export const gyroscopeTableSpec: DerivedTableSpec<Gyroscope> = {
{ name: "has_uart", type: "boolean" },
{ name: "is_basic", type: "boolean" },
{ name: "is_preferred", type: "boolean" },
{ name: "is_extended_promotional", type: "boolean" },
],
listCandidateComponents: (db) =>
db
Expand Down Expand Up @@ -106,6 +108,9 @@ export const gyroscopeTableSpec: DerivedTableSpec<Gyroscope> = {
in_stock: c.stock > 0,
is_basic: Boolean(c.basic),
is_preferred: Boolean(c.preferred),
is_extended_promotional: Boolean(
c.extra && JSON.parse(c.extra).promotional,
),
package: c.package || "",
supply_voltage_min: voltageMin,
supply_voltage_max: voltageMax,
Expand Down
Loading