Skip to content

Commit

Permalink
rm assetexternalfiletoasset (#75)
Browse files Browse the repository at this point in the history
  • Loading branch information
dromzeh committed Mar 12, 2024
1 parent 94a79da commit 2414969
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 63 deletions.
1 change: 0 additions & 1 deletion src/v2/db/drizzle.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ export const tableNames = {
// atlas: "atlas",
// atlasToAsset: "atlasToAsset",
assetExternalFile: "assetExternalFile",
assetExternalFileToAsset: "assetExternalFileToAsset",
assetTag: "assetTag",
assetTagLikes: "assetTagLikes",
assetTagAsset: "assetTagAsset",
Expand Down
71 changes: 11 additions & 60 deletions src/v2/db/schema/asset/asset-external-files.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ export const assetExternalFile = sqliteTable(
onUpdate: "cascade",
onDelete: "cascade",
}),
assetId: text("asset_id")
.notNull()
.references(() => asset.id, {
onUpdate: "cascade",
onDelete: "cascade",
}),
uploadedDate: text("uploaded_date")
.notNull()
.$defaultFn(() => {
Expand All @@ -60,73 +66,18 @@ export type NewAssetExtrnalFile = typeof assetExternalFile.$inferInsert
export const insertExtrnalFileSchema = createInsertSchema(assetExternalFile)
export const selectExternalFileSchema = createSelectSchema(assetExternalFile)

export const assetExternalFileToAsset = sqliteTable(
tableNames.assetExternalFileToAsset,
{
id: text("id").primaryKey().notNull(),
assetExternalFileId: text("asset_external_file_id")
.notNull()
.references(() => assetExternalFile.id, {
onUpdate: "cascade",
onDelete: "cascade",
}),
assetId: integer("asset_id")
.notNull()
.references(() => asset.id, {
onUpdate: "cascade",
onDelete: "cascade",
}),
},
(assetExternalFileToAsset) => {
return {
assetExternalFileToAssetIdx: index(
"asset_external_file_to_asset_id_idx"
).on(assetExternalFileToAsset.id),
assetExternalFileToAssetFileIdx: index(
"asset_external_file_to_asset_file_id_idx"
).on(assetExternalFileToAsset.assetExternalFileId),
assetExternalFileToAssetAssetIdx: index(
"asset_external_file_to_asset_asset_id_idx"
).on(assetExternalFileToAsset.assetId),
}
}
)

export type AssetExternalFileToAsset =
typeof assetExternalFileToAsset.$inferSelect
export type NewAssetExternalFileToAsset =
typeof assetExternalFileToAsset.$inferInsert
export const insertExternalFileToAssetSchema = createInsertSchema(
assetExternalFileToAsset
)
export const selectExternalFileToAssetSchema = createSelectSchema(
assetExternalFileToAsset
)

export const assetExternalFileRelations = relations(
assetExternalFile,
({ one }) => ({
assetExternalFileToAsset: one(assetExternalFileToAsset),
asset: one(asset, {
fields: [assetExternalFile.assetId],
references: [asset.id],
relationName: "asset_external_file_asset",
}),
uploadedBy: one(authUser, {
fields: [assetExternalFile.uploadedById],
references: [authUser.id],
relationName: "asset_external_file_auth_user",
}),
})
)

export const assetExternalFileToAssetRelations = relations(
assetExternalFileToAsset,
({ one }) => ({
assetExternalFile: one(assetExternalFile, {
fields: [assetExternalFileToAsset.assetExternalFileId],
references: [assetExternalFile.id],
relationName: "asset_external_file_external_file",
}),
asset: one(asset, {
fields: [assetExternalFileToAsset.assetId],
references: [asset.id],
relationName: "asset_external_file_asset",
}),
})
)
4 changes: 2 additions & 2 deletions src/v2/db/schema/asset/asset.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import { authUser } from "../user/user"
import { assetCategory } from "../categories/asset-categories"
import { game } from "../game/game"
import { assetTagAsset } from "../tags/asset-tags"
import { assetExternalFileToAsset } from "./asset-external-files"
import { createInsertSchema, createSelectSchema } from "drizzle-zod"
import { assetLikes } from "./asset-likes"
import { assetExternalFile } from "./asset-external-files"

/*
NOTE: Assets have a lot of relations, and can be quite complex in some cases.
Expand Down Expand Up @@ -98,7 +98,7 @@ export const selectAssetSchema = createSelectSchema(asset)

export const assetRelations = relations(asset, ({ one, many }) => ({
assetTagAsset: many(assetTagAsset),
assetExternalFileToAsset: many(assetExternalFileToAsset),
assetExternalFile: many(assetExternalFile),
assetLikes: many(assetLikes),
authUser: one(authUser, {
fields: [asset.uploadedById, asset.uploadedByName],
Expand Down

0 comments on commit 2414969

Please sign in to comment.