[bugfix] fixing schema messed up by something adding tabs

This commit is contained in:
2026-03-16 13:54:50 -04:00
parent c4ebbfb060
commit a86dc08b50

View File

@@ -5,111 +5,110 @@ export const pokeSchema = pgSchema("pokemon");
export const tcgcards = pokeSchema.table('tcg_cards', { export const tcgcards = pokeSchema.table('tcg_cards', {
productId: integer().primaryKey(), productId: integer().primaryKey(),
productName: varchar({ length: 255 }).notNull(), productName: varchar({ length: 255 }).notNull(),
productLineName: varchar({ length: 255 }).default("").notNull(), productLineName: varchar({ length: 255 }).default("").notNull(),
productLineUrlName: varchar({ length: 255 }).default("").notNull(), productLineUrlName: varchar({ length: 255 }).default("").notNull(),
productStatusId: integer().default(0).notNull(), productStatusId: integer().default(0).notNull(),
productTypeId: integer().default(0).notNull(), productTypeId: integer().default(0).notNull(),
productUrlName: varchar({ length: 255 }).default("").notNull(), productUrlName: varchar({ length: 255 }).default("").notNull(),
rarityName: varchar({ length: 100 }).default("").notNull(), rarityName: varchar({ length: 100 }).default("").notNull(),
sealed: boolean().default(false).notNull(), sealed: boolean().default(false).notNull(),
sellerListable: boolean().default(false).notNull(), sellerListable: boolean().default(false).notNull(),
setId: integer(), setId: integer(),
shippingCategoryId: integer(), shippingCategoryId: integer(),
duplicate: boolean().default(false).notNull(), duplicate: boolean().default(false).notNull(),
foilOnly: boolean().default(false).notNull(), foilOnly: boolean().default(false).notNull(),
maxFulfillableQuantity: integer(), maxFulfillableQuantity: integer(),
totalListings: integer(), totalListings: integer(),
score: decimal({ precision: 10, scale: 2, mode: 'number' }), score: decimal({ precision: 10, scale: 2, mode: 'number' }),
lowestPrice: decimal({ precision: 10, scale: 2, mode: 'number' }), lowestPrice: decimal({ precision: 10, scale: 2, mode: 'number' }),
lowestPriceWithShipping: decimal({ precision: 10, scale: 2, mode: 'number' }), lowestPriceWithShipping: decimal({ precision: 10, scale: 2, mode: 'number' }),
marketPrice: decimal({ precision: 10, scale: 2, mode: 'number' }), marketPrice: decimal({ precision: 10, scale: 2, mode: 'number' }),
medianPrice: decimal({ precision: 10, scale: 2, mode: 'number' }), medianPrice: decimal({ precision: 10, scale: 2, mode: 'number' }),
attack1: varchar({ length: 1024 }), attack1: varchar({ length: 1024 }),
attack2: varchar({ length: 1024 }), attack2: varchar({ length: 1024 }),
attack3: varchar({ length: 1024 }), attack3: varchar({ length: 1024 }),
attack4: varchar({ length: 1024 }), attack4: varchar({ length: 1024 }),
cardType: varchar({ length: 100 }), cardType: varchar({ length: 100 }),
cardTypeB: varchar({ length: 100 }), cardTypeB: varchar({ length: 100 }),
energyType: varchar({ length: 100 }), energyType: varchar({ length: 100 }),
flavorText: varchar({ length: 1000 }), flavorText: varchar({ length: 1000 }),
hp: integer(), hp: integer(),
number: varchar({ length: 50 }).default("").notNull(), number: varchar({ length: 50 }).default("").notNull(),
releaseDate: timestamp(), releaseDate: timestamp(),
resistance: varchar({ length: 100 }), resistance: varchar({ length: 100 }),
retreatCost: varchar({ length: 100 }), retreatCost: varchar({ length: 100 }),
stage: varchar({ length: 100 }), stage: varchar({ length: 100 }),
weakness: varchar({ length: 100 }), weakness: varchar({ length: 100 }),
artist: varchar({ length: 255 }), artist: varchar({ length: 255 }),
}); });
export const cards = pokeSchema.table('cards', { export const cards = pokeSchema.table('cards', {
cardId: integer().notNull().primaryKey().generatedAlwaysAsIdentity(), cardId: integer().notNull().primaryKey().generatedAlwaysAsIdentity(),
productId: integer().notNull(), productId: integer().notNull(),
variant: varchar({ length: 100 }).notNull(), variant: varchar({ length: 100 }).notNull(),
productName: varchar({ length: 255 }), productName: varchar({ length: 255 }),
productLineName: varchar({ length: 255 }), productLineName: varchar({ length: 255 }),
productUrlName: varchar({ length: 255 }).default("").notNull(), productUrlName: varchar({ length: 255 }).default("").notNull(),
rarityName: varchar({ length: 100 }), rarityName: varchar({ length: 100 }),
sealed: boolean().default(false).notNull(), sealed: boolean().default(false).notNull(),
setId: integer(), setId: integer(),
cardType: varchar({ length: 100 }), cardType: varchar({ length: 100 }),
energyType: varchar({ length: 100 }), energyType: varchar({ length: 100 }),
number: varchar({ length: 50 }), number: varchar({ length: 50 }),
artist: varchar({ length: 255 }), artist: varchar({ length: 255 }),
}, },
(table) => [ (table) => [
index('idx_card_product_id').on(table.productId, table.variant), index('idx_card_product_id').on(table.productId, table.variant),
]); ]);
export const tcg_overrides = pokeSchema.table('tcg_overrides', { export const tcg_overrides = pokeSchema.table('tcg_overrides', {
productId: integer().primaryKey(), productId: integer().primaryKey(),
productName: varchar({ length: 255 }), productName: varchar({ length: 255 }),
productLineName: varchar({ length: 255 }), productLineName: varchar({ length: 255 }),
productUrlName: varchar({ length: 255 }).default('').notNull(), productUrlName: varchar({ length: 255 }).default('').notNull(),
rarityName: varchar({ length: 100 }), rarityName: varchar({ length: 100 }),
sealed: boolean().default(false).notNull(), sealed: boolean().default(false).notNull(),
setId: integer(), setId: integer(),
cardType: varchar({ length: 100 }), cardType: varchar({ length: 100 }),
energyType: varchar({ length: 100 }), energyType: varchar({ length: 100 }),
number: varchar({ length: 50 }), number: varchar({ length: 50 }),
artist: varchar({ length: 255 }), artist: varchar({ length: 255 }),
}); });
export const sets = pokeSchema.table('sets', { export const sets = pokeSchema.table('sets', {
setId: integer().primaryKey(), setId: integer().primaryKey(),
setName: varchar({ length: 255 }).notNull(), setName: varchar({ length: 255 }).notNull(),
setUrlName: varchar({ length: 255 }).notNull(), setUrlName: varchar({ length: 255 }).notNull(),
setCode: varchar({ length: 100 }).notNull(), setCode: varchar({ length: 100 }).notNull(),
}); });
export const skus = pokeSchema.table('skus', { export const skus = pokeSchema.table('skus', {
skuId: integer().primaryKey(), skuId: integer().primaryKey(),
cardId: integer().default(0).notNull(), cardId: integer().default(0).notNull(),
productId: integer().notNull(), productId: integer().notNull(),
condition: varchar({ length: 255 }).notNull(), condition: varchar({ length: 255 }).notNull(),
language: varchar({ length: 100 }).notNull(), language: varchar({ length: 100 }).notNull(),
variant: varchar({ length: 100 }).notNull(), variant: varchar({ length: 100 }).notNull(),
calculatedAt: timestamp(), calculatedAt: timestamp(),
highestPrice: decimal({ precision: 10, scale: 2 }), highestPrice: decimal({ precision: 10, scale: 2 }),
lowestPrice: decimal({ precision: 10, scale: 2 }), lowestPrice: decimal({ precision: 10, scale: 2 }),
marketPrice: decimal({ precision: 10, scale: 2 }), marketPrice: decimal({ precision: 10, scale: 2 }),
priceCount: integer(), priceCount: integer(),
}, },
(table) => [ (table) => [
index('idx_product_id_condition').on(table.productId, table.variant), index('idx_product_id_condition').on(table.productId, table.variant),
]); ]);
export const priceHistory = pokeSchema.table('price_history', { export const priceHistory = pokeSchema.table('price_history', {
skuId: integer().notNull(), skuId: integer().notNull(),
calculatedAt: timestamp().notNull(), calculatedAt: timestamp().notNull(),
marketPrice: decimal({ precision: 10, scale: 2 }), marketPrice: decimal({ precision: 10, scale: 2 }),
}, },
(table) => [ (table) => [
primaryKey({ name: 'pk_price_history', columns: [table.skuId, table.calculatedAt] }) primaryKey({ name: 'pk_price_history', columns: [table.skuId, table.calculatedAt] })
]); ]);
export const processingSkus = pokeSchema.table('processing_skus', { export const processingSkus = pokeSchema.table('processing_skus', {
skuId: integer().primaryKey(), skuId: integer().primaryKey(),
}); });