chore(types): regenerate payload types and schema
Regenerate payload-types.ts and payload-generated-schema.ts to cover the forthcoming user-notifications, game-npcs, and market collections (including the quantity column on market-negotiations).
This commit is contained in:
parent
6b94686de4
commit
4a76b54426
2 changed files with 1039 additions and 0 deletions
|
|
@ -36,6 +36,7 @@ export const enum_game_event_logs_target_collection = pgEnum(
|
||||||
[
|
[
|
||||||
"game-structures",
|
"game-structures",
|
||||||
"game-vehicles",
|
"game-vehicles",
|
||||||
|
"game-npcs",
|
||||||
"structures",
|
"structures",
|
||||||
"resources",
|
"resources",
|
||||||
"assets",
|
"assets",
|
||||||
|
|
@ -50,6 +51,10 @@ export const enum_game_event_logs_target_collection = pgEnum(
|
||||||
"bank-accounts",
|
"bank-accounts",
|
||||||
"bank-transactions",
|
"bank-transactions",
|
||||||
"ledger-entries",
|
"ledger-entries",
|
||||||
|
"locker-storages",
|
||||||
|
"loadouts",
|
||||||
|
"market-listings",
|
||||||
|
"market-negotiations",
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
export const enum_users_roles = pgEnum("enum_users_roles", ["guest", "user", "admin", "developer"]);
|
export const enum_users_roles = pgEnum("enum_users_roles", ["guest", "user", "admin", "developer"]);
|
||||||
|
|
@ -114,6 +119,10 @@ export const enum_technologies_approval_status = pgEnum("enum_technologies_appro
|
||||||
"revision_requested",
|
"revision_requested",
|
||||||
]);
|
]);
|
||||||
export const enum_technologies_type = pgEnum("enum_technologies_type", ["asset", "upgrade"]);
|
export const enum_technologies_type = pgEnum("enum_technologies_type", ["asset", "upgrade"]);
|
||||||
|
export const enum_assets_skin_configuration_applies_to_asset_types = pgEnum(
|
||||||
|
"enum_assets_skin_configuration_applies_to_asset_types",
|
||||||
|
["weapon", "uniform", "vest", "backpack", "helmet"],
|
||||||
|
);
|
||||||
export const enum_assets_approval_status = pgEnum("enum_assets_approval_status", [
|
export const enum_assets_approval_status = pgEnum("enum_assets_approval_status", [
|
||||||
"in_progress",
|
"in_progress",
|
||||||
"ready_for_review",
|
"ready_for_review",
|
||||||
|
|
@ -137,6 +146,7 @@ export const enum_assets_asset_type = pgEnum("enum_assets_asset_type", [
|
||||||
"medical",
|
"medical",
|
||||||
"tool",
|
"tool",
|
||||||
"explosive",
|
"explosive",
|
||||||
|
"skin",
|
||||||
"miscellaneous",
|
"miscellaneous",
|
||||||
]);
|
]);
|
||||||
export const enum_assets_weapon_configuration_slot_type = pgEnum(
|
export const enum_assets_weapon_configuration_slot_type = pgEnum(
|
||||||
|
|
@ -270,6 +280,28 @@ export const enum_ledger_entries_type = pgEnum("enum_ledger_entries_type", [
|
||||||
"salary",
|
"salary",
|
||||||
"adjustment",
|
"adjustment",
|
||||||
]);
|
]);
|
||||||
|
export const enum_market_listings_status = pgEnum("enum_market_listings_status", [
|
||||||
|
"active",
|
||||||
|
"sold",
|
||||||
|
"cancelled",
|
||||||
|
"expired",
|
||||||
|
]);
|
||||||
|
export const enum_market_negotiations_history_from = pgEnum(
|
||||||
|
"enum_market_negotiations_history_from",
|
||||||
|
["buyer", "seller"],
|
||||||
|
);
|
||||||
|
export const enum_market_negotiations_status = pgEnum("enum_market_negotiations_status", [
|
||||||
|
"open",
|
||||||
|
"accepted",
|
||||||
|
"rejected",
|
||||||
|
"closed",
|
||||||
|
"cancelled",
|
||||||
|
"expired",
|
||||||
|
]);
|
||||||
|
export const enum_market_negotiations_proposed_by = pgEnum("enum_market_negotiations_proposed_by", [
|
||||||
|
"buyer",
|
||||||
|
"seller",
|
||||||
|
]);
|
||||||
export const enum_narrative_events_triggers_type = pgEnum("enum_narrative_events_triggers_type", [
|
export const enum_narrative_events_triggers_type = pgEnum("enum_narrative_events_triggers_type", [
|
||||||
"manual",
|
"manual",
|
||||||
"mission_complete",
|
"mission_complete",
|
||||||
|
|
@ -502,6 +534,65 @@ export const game_vehicles = pgTable(
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
export const game_npcs = pgTable(
|
||||||
|
"game_npcs",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
name: varchar("name").notNull(),
|
||||||
|
occupation: varchar("occupation"),
|
||||||
|
location: integer("location_id").references(() => game_structures.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
faction: integer("faction_id").references(() => factions.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
bio: varchar("bio"),
|
||||||
|
isGenerated: boolean("is_generated").default(false),
|
||||||
|
isInGame: boolean("is_in_game").default(true),
|
||||||
|
vendor_enabled: boolean("vendor_enabled").default(false),
|
||||||
|
vendor_priceModifier: numeric("vendor_price_modifier", { mode: "number" }).default(1),
|
||||||
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("game_npcs_location_idx").on(columns.location),
|
||||||
|
index("game_npcs_faction_idx").on(columns.faction),
|
||||||
|
index("game_npcs_updated_at_idx").on(columns.updatedAt),
|
||||||
|
index("game_npcs_created_at_idx").on(columns.createdAt),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const game_npcs_rels = pgTable(
|
||||||
|
"game_npcs_rels",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
order: integer("order"),
|
||||||
|
parent: integer("parent_id").notNull(),
|
||||||
|
path: varchar("path").notNull(),
|
||||||
|
assetsID: integer("assets_id"),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("game_npcs_rels_order_idx").on(columns.order),
|
||||||
|
index("game_npcs_rels_parent_idx").on(columns.parent),
|
||||||
|
index("game_npcs_rels_path_idx").on(columns.path),
|
||||||
|
index("game_npcs_rels_assets_id_idx").on(columns.assetsID),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["parent"]],
|
||||||
|
foreignColumns: [game_npcs.id],
|
||||||
|
name: "game_npcs_rels_parent_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["assetsID"]],
|
||||||
|
foreignColumns: [assets.id],
|
||||||
|
name: "game_npcs_rels_assets_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
export const game_event_logs = pgTable(
|
export const game_event_logs = pgTable(
|
||||||
"game_event_logs",
|
"game_event_logs",
|
||||||
{
|
{
|
||||||
|
|
@ -676,6 +767,22 @@ export const profiles = pgTable(
|
||||||
progression_scoreboard_deaths: numeric("progression_scoreboard_deaths", {
|
progression_scoreboard_deaths: numeric("progression_scoreboard_deaths", {
|
||||||
mode: "number",
|
mode: "number",
|
||||||
}).default(0),
|
}).default(0),
|
||||||
|
progression_minigames_flappyBird_gamesPlayed: numeric(
|
||||||
|
"progression_minigames_flappy_bird_games_played",
|
||||||
|
{ mode: "number" },
|
||||||
|
).default(0),
|
||||||
|
progression_minigames_flappyBird_totalPasses: numeric(
|
||||||
|
"progression_minigames_flappy_bird_total_passes",
|
||||||
|
{ mode: "number" },
|
||||||
|
).default(0),
|
||||||
|
progression_minigames_flappyBird_bestScore: numeric(
|
||||||
|
"progression_minigames_flappy_bird_best_score",
|
||||||
|
{ mode: "number" },
|
||||||
|
).default(0),
|
||||||
|
progression_minigames_flappyBird_xpEarned: numeric(
|
||||||
|
"progression_minigames_flappy_bird_xp_earned",
|
||||||
|
{ mode: "number" },
|
||||||
|
).default(0),
|
||||||
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
.defaultNow()
|
.defaultNow()
|
||||||
.notNull(),
|
.notNull(),
|
||||||
|
|
@ -852,6 +959,35 @@ export const experience = pgTable(
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
export const user_notifications = pgTable(
|
||||||
|
"user_notifications",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
user: integer("user_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => users.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
type: varchar("type"),
|
||||||
|
title: varchar("title").notNull(),
|
||||||
|
message: varchar("message"),
|
||||||
|
link: varchar("link"),
|
||||||
|
read: boolean("read").default(false),
|
||||||
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("user_notifications_user_idx").on(columns.user),
|
||||||
|
index("user_notifications_read_idx").on(columns.read),
|
||||||
|
index("user_notifications_updated_at_idx").on(columns.updatedAt),
|
||||||
|
index("user_notifications_created_at_idx").on(columns.createdAt),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
export const missions_mission_roles_provided_roles = pgTable(
|
export const missions_mission_roles_provided_roles = pgTable(
|
||||||
"missions_mission_roles_provided_roles",
|
"missions_mission_roles_provided_roles",
|
||||||
{
|
{
|
||||||
|
|
@ -1334,6 +1470,25 @@ export const technologies_rels = pgTable(
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
export const assets_skin_configuration_applies_to_asset_types = pgTable(
|
||||||
|
"assets_skin_configuration_applies_to_asset_types",
|
||||||
|
{
|
||||||
|
order: integer("order").notNull(),
|
||||||
|
parent: integer("parent_id").notNull(),
|
||||||
|
value: enum_assets_skin_configuration_applies_to_asset_types("value"),
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("assets_skin_configuration_applies_to_asset_types_order_idx").on(columns.order),
|
||||||
|
index("assets_skin_configuration_applies_to_asset_types_parent_idx").on(columns.parent),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["parent"]],
|
||||||
|
foreignColumns: [assets.id],
|
||||||
|
name: "assets_skin_configuration_applies_to_asset_types_parent_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
export const assets_crafting_crafting_data_inputs = pgTable(
|
export const assets_crafting_crafting_data_inputs = pgTable(
|
||||||
"assets_crafting_crafting_data_inputs",
|
"assets_crafting_crafting_data_inputs",
|
||||||
{
|
{
|
||||||
|
|
@ -1432,6 +1587,17 @@ export const assets = pgTable(
|
||||||
})
|
})
|
||||||
.notNull()
|
.notNull()
|
||||||
.default(1),
|
.default(1),
|
||||||
|
storageDimensions_gridWidth: numeric("storage_dimensions_grid_width", { mode: "number" })
|
||||||
|
.notNull()
|
||||||
|
.default(1),
|
||||||
|
storageDimensions_gridHeight: numeric("storage_dimensions_grid_height", { mode: "number" })
|
||||||
|
.notNull()
|
||||||
|
.default(1),
|
||||||
|
storageDimensions_stackable: boolean("storage_dimensions_stackable").default(true),
|
||||||
|
storageDimensions_maxStackSize: numeric("storage_dimensions_max_stack_size", {
|
||||||
|
mode: "number",
|
||||||
|
}),
|
||||||
|
storageDimensions_rotatable: boolean("storage_dimensions_rotatable").default(true),
|
||||||
isLive: boolean("is_live"),
|
isLive: boolean("is_live"),
|
||||||
notes: jsonb("notes"),
|
notes: jsonb("notes"),
|
||||||
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
|
@ -2255,6 +2421,276 @@ export const ledger_entries = pgTable(
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
export const locker_storages_items_equipment_attachments = pgTable(
|
||||||
|
"locker_storages_items_equipment_attachments",
|
||||||
|
{
|
||||||
|
_order: integer("_order").notNull(),
|
||||||
|
_parentID: varchar("_parent_id").notNull(),
|
||||||
|
id: varchar("id").primaryKey(),
|
||||||
|
asset: integer("asset_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("locker_storages_items_equipment_attachments_order_idx").on(columns._order),
|
||||||
|
index("locker_storages_items_equipment_attachments_parent_id_idx").on(columns._parentID),
|
||||||
|
index("locker_storages_items_equipment_attachments_asset_idx").on(columns.asset),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["_parentID"]],
|
||||||
|
foreignColumns: [locker_storages_items.id],
|
||||||
|
name: "locker_storages_items_equipment_attachments_parent_id_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const locker_storages_items = pgTable(
|
||||||
|
"locker_storages_items",
|
||||||
|
{
|
||||||
|
_order: integer("_order").notNull(),
|
||||||
|
_parentID: integer("_parent_id").notNull(),
|
||||||
|
id: varchar("id").primaryKey(),
|
||||||
|
asset: integer("asset_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
quantity: numeric("quantity", { mode: "number" }).notNull().default(1),
|
||||||
|
gridX: numeric("grid_x", { mode: "number" }).notNull().default(0),
|
||||||
|
gridY: numeric("grid_y", { mode: "number" }).notNull().default(0),
|
||||||
|
rotated: boolean("rotated").default(false),
|
||||||
|
equipment_skin: integer("equipment_skin_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
equipment_customName: varchar("equipment_custom_name"),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("locker_storages_items_order_idx").on(columns._order),
|
||||||
|
index("locker_storages_items_parent_id_idx").on(columns._parentID),
|
||||||
|
index("locker_storages_items_asset_idx").on(columns.asset),
|
||||||
|
index("locker_storages_items_equipment_equipment_skin_idx").on(columns.equipment_skin),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["_parentID"]],
|
||||||
|
foreignColumns: [locker_storages.id],
|
||||||
|
name: "locker_storages_items_parent_id_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const locker_storages = pgTable(
|
||||||
|
"locker_storages",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
name: varchar("name").notNull().default("Personal Locker"),
|
||||||
|
ownerUser: integer("owner_user_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => users.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
itemCount: numeric("item_count", { mode: "number" }),
|
||||||
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("locker_storages_owner_user_idx").on(columns.ownerUser),
|
||||||
|
index("locker_storages_updated_at_idx").on(columns.updatedAt),
|
||||||
|
index("locker_storages_created_at_idx").on(columns.createdAt),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const loadouts = pgTable(
|
||||||
|
"loadouts",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
name: varchar("name").notNull(),
|
||||||
|
description: varchar("description"),
|
||||||
|
ownerUser: integer("owner_user_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => users.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
equipped: boolean("equipped").default(false),
|
||||||
|
slots_primary: integer("slots_primary_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_secondary: integer("slots_secondary_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_launcher: integer("slots_launcher_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_uniform: integer("slots_uniform_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_vest: integer("slots_vest_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_backpack: integer("slots_backpack_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_helmet: integer("slots_helmet_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_facewear: integer("slots_facewear_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_nvg: integer("slots_nvg_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_radio: integer("slots_radio_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_optic: integer("slots_optic_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_muzzle: integer("slots_muzzle_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
slots_bipod: integer("slots_bipod_id").references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("loadouts_owner_user_idx").on(columns.ownerUser),
|
||||||
|
index("loadouts_slots_slots_primary_idx").on(columns.slots_primary),
|
||||||
|
index("loadouts_slots_slots_secondary_idx").on(columns.slots_secondary),
|
||||||
|
index("loadouts_slots_slots_launcher_idx").on(columns.slots_launcher),
|
||||||
|
index("loadouts_slots_slots_uniform_idx").on(columns.slots_uniform),
|
||||||
|
index("loadouts_slots_slots_vest_idx").on(columns.slots_vest),
|
||||||
|
index("loadouts_slots_slots_backpack_idx").on(columns.slots_backpack),
|
||||||
|
index("loadouts_slots_slots_helmet_idx").on(columns.slots_helmet),
|
||||||
|
index("loadouts_slots_slots_facewear_idx").on(columns.slots_facewear),
|
||||||
|
index("loadouts_slots_slots_nvg_idx").on(columns.slots_nvg),
|
||||||
|
index("loadouts_slots_slots_radio_idx").on(columns.slots_radio),
|
||||||
|
index("loadouts_slots_slots_optic_idx").on(columns.slots_optic),
|
||||||
|
index("loadouts_slots_slots_muzzle_idx").on(columns.slots_muzzle),
|
||||||
|
index("loadouts_slots_slots_bipod_idx").on(columns.slots_bipod),
|
||||||
|
index("loadouts_updated_at_idx").on(columns.updatedAt),
|
||||||
|
index("loadouts_created_at_idx").on(columns.createdAt),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const market_listings = pgTable(
|
||||||
|
"market_listings",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
asset: integer("asset_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => assets.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
seller: integer("seller_id").references(() => users.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
npc: integer("npc_id").references(() => game_npcs.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
quantity: numeric("quantity", { mode: "number" }).notNull().default(1),
|
||||||
|
price: numeric("price", { mode: "number" }).notNull(),
|
||||||
|
desiredPrice: numeric("desired_price", { mode: "number" }),
|
||||||
|
minPrice: numeric("min_price", { mode: "number" }),
|
||||||
|
currency: integer("currency_id").references(() => resources.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
status: enum_market_listings_status("status").notNull().default("active"),
|
||||||
|
isAutoGenerated: boolean("is_auto_generated").default(false),
|
||||||
|
listedAt: timestamp("listed_at", {
|
||||||
|
mode: "string",
|
||||||
|
withTimezone: true,
|
||||||
|
precision: 3,
|
||||||
|
}).notNull(),
|
||||||
|
expiresAt: timestamp("expires_at", { mode: "string", withTimezone: true, precision: 3 }),
|
||||||
|
soldAt: timestamp("sold_at", { mode: "string", withTimezone: true, precision: 3 }),
|
||||||
|
buyer: integer("buyer_id").references(() => users.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("market_listings_asset_idx").on(columns.asset),
|
||||||
|
index("market_listings_seller_idx").on(columns.seller),
|
||||||
|
index("market_listings_npc_idx").on(columns.npc),
|
||||||
|
index("market_listings_currency_idx").on(columns.currency),
|
||||||
|
index("market_listings_status_idx").on(columns.status),
|
||||||
|
index("market_listings_buyer_idx").on(columns.buyer),
|
||||||
|
index("market_listings_updated_at_idx").on(columns.updatedAt),
|
||||||
|
index("market_listings_created_at_idx").on(columns.createdAt),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const market_negotiations_history = pgTable(
|
||||||
|
"market_negotiations_history",
|
||||||
|
{
|
||||||
|
_order: integer("_order").notNull(),
|
||||||
|
_parentID: integer("_parent_id").notNull(),
|
||||||
|
id: varchar("id").primaryKey(),
|
||||||
|
amount: numeric("amount", { mode: "number" }).notNull(),
|
||||||
|
from: enum_market_negotiations_history_from("from").notNull(),
|
||||||
|
note: varchar("note"),
|
||||||
|
at: timestamp("at", { mode: "string", withTimezone: true, precision: 3 }).notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("market_negotiations_history_order_idx").on(columns._order),
|
||||||
|
index("market_negotiations_history_parent_id_idx").on(columns._parentID),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["_parentID"]],
|
||||||
|
foreignColumns: [market_negotiations.id],
|
||||||
|
name: "market_negotiations_history_parent_id_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
export const market_negotiations = pgTable(
|
||||||
|
"market_negotiations",
|
||||||
|
{
|
||||||
|
id: serial("id").primaryKey(),
|
||||||
|
listing: integer("listing_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => market_listings.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
buyer: integer("buyer_id")
|
||||||
|
.notNull()
|
||||||
|
.references(() => users.id, {
|
||||||
|
onDelete: "set null",
|
||||||
|
}),
|
||||||
|
status: enum_market_negotiations_status("status").notNull().default("open"),
|
||||||
|
patience: numeric("patience", { mode: "number" }).default(0),
|
||||||
|
amount: numeric("amount", { mode: "number" }).notNull(),
|
||||||
|
proposedBy: enum_market_negotiations_proposed_by("proposed_by").notNull().default("buyer"),
|
||||||
|
acceptedPrice: numeric("accepted_price", { mode: "number" }),
|
||||||
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 })
|
||||||
|
.defaultNow()
|
||||||
|
.notNull(),
|
||||||
|
},
|
||||||
|
(columns) => [
|
||||||
|
index("market_negotiations_listing_idx").on(columns.listing),
|
||||||
|
index("market_negotiations_buyer_idx").on(columns.buyer),
|
||||||
|
index("market_negotiations_status_idx").on(columns.status),
|
||||||
|
index("market_negotiations_updated_at_idx").on(columns.updatedAt),
|
||||||
|
index("market_negotiations_created_at_idx").on(columns.createdAt),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
export const maps = pgTable(
|
export const maps = pgTable(
|
||||||
"maps",
|
"maps",
|
||||||
{
|
{
|
||||||
|
|
@ -2406,6 +2842,7 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
"game-hard-resourcesID": integer("game_hard_resources_id"),
|
"game-hard-resourcesID": integer("game_hard_resources_id"),
|
||||||
"game-structuresID": integer("game_structures_id"),
|
"game-structuresID": integer("game_structures_id"),
|
||||||
"game-vehiclesID": integer("game_vehicles_id"),
|
"game-vehiclesID": integer("game_vehicles_id"),
|
||||||
|
"game-npcsID": integer("game_npcs_id"),
|
||||||
"game-event-logsID": integer("game_event_logs_id"),
|
"game-event-logsID": integer("game_event_logs_id"),
|
||||||
usersID: integer("users_id"),
|
usersID: integer("users_id"),
|
||||||
ranksID: integer("ranks_id"),
|
ranksID: integer("ranks_id"),
|
||||||
|
|
@ -2414,6 +2851,7 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
qualificationsID: integer("qualifications_id"),
|
qualificationsID: integer("qualifications_id"),
|
||||||
assignmentsID: integer("assignments_id"),
|
assignmentsID: integer("assignments_id"),
|
||||||
experienceID: integer("experience_id"),
|
experienceID: integer("experience_id"),
|
||||||
|
"user-notificationsID": integer("user_notifications_id"),
|
||||||
missionsID: integer("missions_id"),
|
missionsID: integer("missions_id"),
|
||||||
campaignsID: integer("campaigns_id"),
|
campaignsID: integer("campaigns_id"),
|
||||||
factionsID: integer("factions_id"),
|
factionsID: integer("factions_id"),
|
||||||
|
|
@ -2426,6 +2864,10 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
"bank-accountsID": integer("bank_accounts_id"),
|
"bank-accountsID": integer("bank_accounts_id"),
|
||||||
"bank-transactionsID": integer("bank_transactions_id"),
|
"bank-transactionsID": integer("bank_transactions_id"),
|
||||||
"ledger-entriesID": integer("ledger_entries_id"),
|
"ledger-entriesID": integer("ledger_entries_id"),
|
||||||
|
"locker-storagesID": integer("locker_storages_id"),
|
||||||
|
loadoutsID: integer("loadouts_id"),
|
||||||
|
"market-listingsID": integer("market_listings_id"),
|
||||||
|
"market-negotiationsID": integer("market_negotiations_id"),
|
||||||
mapsID: integer("maps_id"),
|
mapsID: integer("maps_id"),
|
||||||
"narrative-eventsID": integer("narrative_events_id"),
|
"narrative-eventsID": integer("narrative_events_id"),
|
||||||
"mission-filesID": integer("mission_files_id"),
|
"mission-filesID": integer("mission_files_id"),
|
||||||
|
|
@ -2441,6 +2883,7 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
),
|
),
|
||||||
index("payload_locked_documents_rels_game_structures_id_idx").on(columns["game-structuresID"]),
|
index("payload_locked_documents_rels_game_structures_id_idx").on(columns["game-structuresID"]),
|
||||||
index("payload_locked_documents_rels_game_vehicles_id_idx").on(columns["game-vehiclesID"]),
|
index("payload_locked_documents_rels_game_vehicles_id_idx").on(columns["game-vehiclesID"]),
|
||||||
|
index("payload_locked_documents_rels_game_npcs_id_idx").on(columns["game-npcsID"]),
|
||||||
index("payload_locked_documents_rels_game_event_logs_id_idx").on(columns["game-event-logsID"]),
|
index("payload_locked_documents_rels_game_event_logs_id_idx").on(columns["game-event-logsID"]),
|
||||||
index("payload_locked_documents_rels_users_id_idx").on(columns.usersID),
|
index("payload_locked_documents_rels_users_id_idx").on(columns.usersID),
|
||||||
index("payload_locked_documents_rels_ranks_id_idx").on(columns.ranksID),
|
index("payload_locked_documents_rels_ranks_id_idx").on(columns.ranksID),
|
||||||
|
|
@ -2449,6 +2892,9 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
index("payload_locked_documents_rels_qualifications_id_idx").on(columns.qualificationsID),
|
index("payload_locked_documents_rels_qualifications_id_idx").on(columns.qualificationsID),
|
||||||
index("payload_locked_documents_rels_assignments_id_idx").on(columns.assignmentsID),
|
index("payload_locked_documents_rels_assignments_id_idx").on(columns.assignmentsID),
|
||||||
index("payload_locked_documents_rels_experience_id_idx").on(columns.experienceID),
|
index("payload_locked_documents_rels_experience_id_idx").on(columns.experienceID),
|
||||||
|
index("payload_locked_documents_rels_user_notifications_id_idx").on(
|
||||||
|
columns["user-notificationsID"],
|
||||||
|
),
|
||||||
index("payload_locked_documents_rels_missions_id_idx").on(columns.missionsID),
|
index("payload_locked_documents_rels_missions_id_idx").on(columns.missionsID),
|
||||||
index("payload_locked_documents_rels_campaigns_id_idx").on(columns.campaignsID),
|
index("payload_locked_documents_rels_campaigns_id_idx").on(columns.campaignsID),
|
||||||
index("payload_locked_documents_rels_factions_id_idx").on(columns.factionsID),
|
index("payload_locked_documents_rels_factions_id_idx").on(columns.factionsID),
|
||||||
|
|
@ -2463,6 +2909,12 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
columns["bank-transactionsID"],
|
columns["bank-transactionsID"],
|
||||||
),
|
),
|
||||||
index("payload_locked_documents_rels_ledger_entries_id_idx").on(columns["ledger-entriesID"]),
|
index("payload_locked_documents_rels_ledger_entries_id_idx").on(columns["ledger-entriesID"]),
|
||||||
|
index("payload_locked_documents_rels_locker_storages_id_idx").on(columns["locker-storagesID"]),
|
||||||
|
index("payload_locked_documents_rels_loadouts_id_idx").on(columns.loadoutsID),
|
||||||
|
index("payload_locked_documents_rels_market_listings_id_idx").on(columns["market-listingsID"]),
|
||||||
|
index("payload_locked_documents_rels_market_negotiations_id_idx").on(
|
||||||
|
columns["market-negotiationsID"],
|
||||||
|
),
|
||||||
index("payload_locked_documents_rels_maps_id_idx").on(columns.mapsID),
|
index("payload_locked_documents_rels_maps_id_idx").on(columns.mapsID),
|
||||||
index("payload_locked_documents_rels_narrative_events_id_idx").on(
|
index("payload_locked_documents_rels_narrative_events_id_idx").on(
|
||||||
columns["narrative-eventsID"],
|
columns["narrative-eventsID"],
|
||||||
|
|
@ -2494,6 +2946,11 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
foreignColumns: [game_vehicles.id],
|
foreignColumns: [game_vehicles.id],
|
||||||
name: "payload_locked_documents_rels_game_vehicles_fk",
|
name: "payload_locked_documents_rels_game_vehicles_fk",
|
||||||
}).onDelete("cascade"),
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["game-npcsID"]],
|
||||||
|
foreignColumns: [game_npcs.id],
|
||||||
|
name: "payload_locked_documents_rels_game_npcs_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
foreignKey({
|
foreignKey({
|
||||||
columns: [columns["game-event-logsID"]],
|
columns: [columns["game-event-logsID"]],
|
||||||
foreignColumns: [game_event_logs.id],
|
foreignColumns: [game_event_logs.id],
|
||||||
|
|
@ -2534,6 +2991,11 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
foreignColumns: [experience.id],
|
foreignColumns: [experience.id],
|
||||||
name: "payload_locked_documents_rels_experience_fk",
|
name: "payload_locked_documents_rels_experience_fk",
|
||||||
}).onDelete("cascade"),
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["user-notificationsID"]],
|
||||||
|
foreignColumns: [user_notifications.id],
|
||||||
|
name: "payload_locked_documents_rels_user_notifications_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
foreignKey({
|
foreignKey({
|
||||||
columns: [columns["missionsID"]],
|
columns: [columns["missionsID"]],
|
||||||
foreignColumns: [missions.id],
|
foreignColumns: [missions.id],
|
||||||
|
|
@ -2594,6 +3056,26 @@ export const payload_locked_documents_rels = pgTable(
|
||||||
foreignColumns: [ledger_entries.id],
|
foreignColumns: [ledger_entries.id],
|
||||||
name: "payload_locked_documents_rels_ledger_entries_fk",
|
name: "payload_locked_documents_rels_ledger_entries_fk",
|
||||||
}).onDelete("cascade"),
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["locker-storagesID"]],
|
||||||
|
foreignColumns: [locker_storages.id],
|
||||||
|
name: "payload_locked_documents_rels_locker_storages_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["loadoutsID"]],
|
||||||
|
foreignColumns: [loadouts.id],
|
||||||
|
name: "payload_locked_documents_rels_loadouts_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["market-listingsID"]],
|
||||||
|
foreignColumns: [market_listings.id],
|
||||||
|
name: "payload_locked_documents_rels_market_listings_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
|
foreignKey({
|
||||||
|
columns: [columns["market-negotiationsID"]],
|
||||||
|
foreignColumns: [market_negotiations.id],
|
||||||
|
name: "payload_locked_documents_rels_market_negotiations_fk",
|
||||||
|
}).onDelete("cascade"),
|
||||||
foreignKey({
|
foreignKey({
|
||||||
columns: [columns["mapsID"]],
|
columns: [columns["mapsID"]],
|
||||||
foreignColumns: [maps.id],
|
foreignColumns: [maps.id],
|
||||||
|
|
@ -2694,6 +3176,8 @@ export const game_rules = pgTable(
|
||||||
}),
|
}),
|
||||||
proximityThreshold: numeric("proximity_threshold", { mode: "number" }).default(10),
|
proximityThreshold: numeric("proximity_threshold", { mode: "number" }).default(10),
|
||||||
gameTickIntervalMinutes: numeric("game_tick_interval_minutes", { mode: "number" }).default(10),
|
gameTickIntervalMinutes: numeric("game_tick_interval_minutes", { mode: "number" }).default(10),
|
||||||
|
lockerGridWidth: numeric("locker_grid_width", { mode: "number" }).default(10),
|
||||||
|
lockerGridHeight: numeric("locker_grid_height", { mode: "number" }).default(6),
|
||||||
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 }),
|
updatedAt: timestamp("updated_at", { mode: "string", withTimezone: true, precision: 3 }),
|
||||||
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 }),
|
createdAt: timestamp("created_at", { mode: "string", withTimezone: true, precision: 3 }),
|
||||||
},
|
},
|
||||||
|
|
@ -2830,6 +3314,33 @@ export const relations_game_vehicles = relations(game_vehicles, ({ one, many })
|
||||||
relationName: "voidStorage",
|
relationName: "voidStorage",
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
export const relations_game_npcs_rels = relations(game_npcs_rels, ({ one }) => ({
|
||||||
|
parent: one(game_npcs, {
|
||||||
|
fields: [game_npcs_rels.parent],
|
||||||
|
references: [game_npcs.id],
|
||||||
|
relationName: "_rels",
|
||||||
|
}),
|
||||||
|
assetsID: one(assets, {
|
||||||
|
fields: [game_npcs_rels.assetsID],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "assets",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
|
export const relations_game_npcs = relations(game_npcs, ({ one, many }) => ({
|
||||||
|
location: one(game_structures, {
|
||||||
|
fields: [game_npcs.location],
|
||||||
|
references: [game_structures.id],
|
||||||
|
relationName: "location",
|
||||||
|
}),
|
||||||
|
faction: one(factions, {
|
||||||
|
fields: [game_npcs.faction],
|
||||||
|
references: [factions.id],
|
||||||
|
relationName: "faction",
|
||||||
|
}),
|
||||||
|
_rels: many(game_npcs_rels, {
|
||||||
|
relationName: "_rels",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
export const relations_game_event_logs = relations(game_event_logs, ({ one }) => ({
|
export const relations_game_event_logs = relations(game_event_logs, ({ one }) => ({
|
||||||
actor: one(users, {
|
actor: one(users, {
|
||||||
fields: [game_event_logs.actor],
|
fields: [game_event_logs.actor],
|
||||||
|
|
@ -2939,6 +3450,13 @@ export const relations_assignments = relations(assignments, ({ one, many }) => (
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
export const relations_experience = relations(experience, () => ({}));
|
export const relations_experience = relations(experience, () => ({}));
|
||||||
|
export const relations_user_notifications = relations(user_notifications, ({ one }) => ({
|
||||||
|
user: one(users, {
|
||||||
|
fields: [user_notifications.user],
|
||||||
|
references: [users.id],
|
||||||
|
relationName: "user",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
export const relations_missions_mission_roles_provided_roles = relations(
|
export const relations_missions_mission_roles_provided_roles = relations(
|
||||||
missions_mission_roles_provided_roles,
|
missions_mission_roles_provided_roles,
|
||||||
({ one }) => ({
|
({ one }) => ({
|
||||||
|
|
@ -3158,6 +3676,16 @@ export const relations_technologies = relations(technologies, ({ many }) => ({
|
||||||
relationName: "_rels",
|
relationName: "_rels",
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
export const relations_assets_skin_configuration_applies_to_asset_types = relations(
|
||||||
|
assets_skin_configuration_applies_to_asset_types,
|
||||||
|
({ one }) => ({
|
||||||
|
parent: one(assets, {
|
||||||
|
fields: [assets_skin_configuration_applies_to_asset_types.parent],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "Skin Configuration_appliesToAssetTypes",
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
);
|
||||||
export const relations_assets_crafting_crafting_data_inputs = relations(
|
export const relations_assets_crafting_crafting_data_inputs = relations(
|
||||||
assets_crafting_crafting_data_inputs,
|
assets_crafting_crafting_data_inputs,
|
||||||
({ one }) => ({
|
({ one }) => ({
|
||||||
|
|
@ -3206,6 +3734,9 @@ export const relations_assets_rels = relations(assets_rels, ({ one }) => ({
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
export const relations_assets = relations(assets, ({ one, many }) => ({
|
export const relations_assets = relations(assets, ({ one, many }) => ({
|
||||||
|
"Skin Configuration_appliesToAssetTypes": many(assets_skin_configuration_applies_to_asset_types, {
|
||||||
|
relationName: "Skin Configuration_appliesToAssetTypes",
|
||||||
|
}),
|
||||||
"Asset Metadata_thumbnail": one(media, {
|
"Asset Metadata_thumbnail": one(media, {
|
||||||
fields: [assets["Asset Metadata_thumbnail"]],
|
fields: [assets["Asset Metadata_thumbnail"]],
|
||||||
references: [media.id],
|
references: [media.id],
|
||||||
|
|
@ -3613,6 +4144,178 @@ export const relations_ledger_entries = relations(ledger_entries, ({ one }) => (
|
||||||
relationName: "transaction",
|
relationName: "transaction",
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
export const relations_locker_storages_items_equipment_attachments = relations(
|
||||||
|
locker_storages_items_equipment_attachments,
|
||||||
|
({ one }) => ({
|
||||||
|
_parentID: one(locker_storages_items, {
|
||||||
|
fields: [locker_storages_items_equipment_attachments._parentID],
|
||||||
|
references: [locker_storages_items.id],
|
||||||
|
relationName: "equipment_attachments",
|
||||||
|
}),
|
||||||
|
asset: one(assets, {
|
||||||
|
fields: [locker_storages_items_equipment_attachments.asset],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "asset",
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
export const relations_locker_storages_items = relations(
|
||||||
|
locker_storages_items,
|
||||||
|
({ one, many }) => ({
|
||||||
|
_parentID: one(locker_storages, {
|
||||||
|
fields: [locker_storages_items._parentID],
|
||||||
|
references: [locker_storages.id],
|
||||||
|
relationName: "items",
|
||||||
|
}),
|
||||||
|
asset: one(assets, {
|
||||||
|
fields: [locker_storages_items.asset],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "asset",
|
||||||
|
}),
|
||||||
|
equipment_attachments: many(locker_storages_items_equipment_attachments, {
|
||||||
|
relationName: "equipment_attachments",
|
||||||
|
}),
|
||||||
|
equipment_skin: one(assets, {
|
||||||
|
fields: [locker_storages_items.equipment_skin],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "equipment_skin",
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
export const relations_locker_storages = relations(locker_storages, ({ one, many }) => ({
|
||||||
|
ownerUser: one(users, {
|
||||||
|
fields: [locker_storages.ownerUser],
|
||||||
|
references: [users.id],
|
||||||
|
relationName: "ownerUser",
|
||||||
|
}),
|
||||||
|
items: many(locker_storages_items, {
|
||||||
|
relationName: "items",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
|
export const relations_loadouts = relations(loadouts, ({ one }) => ({
|
||||||
|
ownerUser: one(users, {
|
||||||
|
fields: [loadouts.ownerUser],
|
||||||
|
references: [users.id],
|
||||||
|
relationName: "ownerUser",
|
||||||
|
}),
|
||||||
|
slots_primary: one(assets, {
|
||||||
|
fields: [loadouts.slots_primary],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_primary",
|
||||||
|
}),
|
||||||
|
slots_secondary: one(assets, {
|
||||||
|
fields: [loadouts.slots_secondary],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_secondary",
|
||||||
|
}),
|
||||||
|
slots_launcher: one(assets, {
|
||||||
|
fields: [loadouts.slots_launcher],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_launcher",
|
||||||
|
}),
|
||||||
|
slots_uniform: one(assets, {
|
||||||
|
fields: [loadouts.slots_uniform],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_uniform",
|
||||||
|
}),
|
||||||
|
slots_vest: one(assets, {
|
||||||
|
fields: [loadouts.slots_vest],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_vest",
|
||||||
|
}),
|
||||||
|
slots_backpack: one(assets, {
|
||||||
|
fields: [loadouts.slots_backpack],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_backpack",
|
||||||
|
}),
|
||||||
|
slots_helmet: one(assets, {
|
||||||
|
fields: [loadouts.slots_helmet],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_helmet",
|
||||||
|
}),
|
||||||
|
slots_facewear: one(assets, {
|
||||||
|
fields: [loadouts.slots_facewear],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_facewear",
|
||||||
|
}),
|
||||||
|
slots_nvg: one(assets, {
|
||||||
|
fields: [loadouts.slots_nvg],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_nvg",
|
||||||
|
}),
|
||||||
|
slots_radio: one(assets, {
|
||||||
|
fields: [loadouts.slots_radio],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_radio",
|
||||||
|
}),
|
||||||
|
slots_optic: one(assets, {
|
||||||
|
fields: [loadouts.slots_optic],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_optic",
|
||||||
|
}),
|
||||||
|
slots_muzzle: one(assets, {
|
||||||
|
fields: [loadouts.slots_muzzle],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_muzzle",
|
||||||
|
}),
|
||||||
|
slots_bipod: one(assets, {
|
||||||
|
fields: [loadouts.slots_bipod],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "slots_bipod",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
|
export const relations_market_listings = relations(market_listings, ({ one }) => ({
|
||||||
|
asset: one(assets, {
|
||||||
|
fields: [market_listings.asset],
|
||||||
|
references: [assets.id],
|
||||||
|
relationName: "asset",
|
||||||
|
}),
|
||||||
|
seller: one(users, {
|
||||||
|
fields: [market_listings.seller],
|
||||||
|
references: [users.id],
|
||||||
|
relationName: "seller",
|
||||||
|
}),
|
||||||
|
npc: one(game_npcs, {
|
||||||
|
fields: [market_listings.npc],
|
||||||
|
references: [game_npcs.id],
|
||||||
|
relationName: "npc",
|
||||||
|
}),
|
||||||
|
currency: one(resources, {
|
||||||
|
fields: [market_listings.currency],
|
||||||
|
references: [resources.id],
|
||||||
|
relationName: "currency",
|
||||||
|
}),
|
||||||
|
buyer: one(users, {
|
||||||
|
fields: [market_listings.buyer],
|
||||||
|
references: [users.id],
|
||||||
|
relationName: "buyer",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
|
export const relations_market_negotiations_history = relations(
|
||||||
|
market_negotiations_history,
|
||||||
|
({ one }) => ({
|
||||||
|
_parentID: one(market_negotiations, {
|
||||||
|
fields: [market_negotiations_history._parentID],
|
||||||
|
references: [market_negotiations.id],
|
||||||
|
relationName: "history",
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
export const relations_market_negotiations = relations(market_negotiations, ({ one, many }) => ({
|
||||||
|
listing: one(market_listings, {
|
||||||
|
fields: [market_negotiations.listing],
|
||||||
|
references: [market_listings.id],
|
||||||
|
relationName: "listing",
|
||||||
|
}),
|
||||||
|
buyer: one(users, {
|
||||||
|
fields: [market_negotiations.buyer],
|
||||||
|
references: [users.id],
|
||||||
|
relationName: "buyer",
|
||||||
|
}),
|
||||||
|
history: many(market_negotiations_history, {
|
||||||
|
relationName: "history",
|
||||||
|
}),
|
||||||
|
}));
|
||||||
export const relations_maps = relations(maps, () => ({}));
|
export const relations_maps = relations(maps, () => ({}));
|
||||||
export const relations_narrative_events = relations(narrative_events, () => ({}));
|
export const relations_narrative_events = relations(narrative_events, () => ({}));
|
||||||
export const relations_mission_files = relations(mission_files, ({ one }) => ({
|
export const relations_mission_files = relations(mission_files, ({ one }) => ({
|
||||||
|
|
@ -3658,6 +4361,11 @@ export const relations_payload_locked_documents_rels = relations(
|
||||||
references: [game_vehicles.id],
|
references: [game_vehicles.id],
|
||||||
relationName: "game-vehicles",
|
relationName: "game-vehicles",
|
||||||
}),
|
}),
|
||||||
|
"game-npcsID": one(game_npcs, {
|
||||||
|
fields: [payload_locked_documents_rels["game-npcsID"]],
|
||||||
|
references: [game_npcs.id],
|
||||||
|
relationName: "game-npcs",
|
||||||
|
}),
|
||||||
"game-event-logsID": one(game_event_logs, {
|
"game-event-logsID": one(game_event_logs, {
|
||||||
fields: [payload_locked_documents_rels["game-event-logsID"]],
|
fields: [payload_locked_documents_rels["game-event-logsID"]],
|
||||||
references: [game_event_logs.id],
|
references: [game_event_logs.id],
|
||||||
|
|
@ -3698,6 +4406,11 @@ export const relations_payload_locked_documents_rels = relations(
|
||||||
references: [experience.id],
|
references: [experience.id],
|
||||||
relationName: "experience",
|
relationName: "experience",
|
||||||
}),
|
}),
|
||||||
|
"user-notificationsID": one(user_notifications, {
|
||||||
|
fields: [payload_locked_documents_rels["user-notificationsID"]],
|
||||||
|
references: [user_notifications.id],
|
||||||
|
relationName: "user-notifications",
|
||||||
|
}),
|
||||||
missionsID: one(missions, {
|
missionsID: one(missions, {
|
||||||
fields: [payload_locked_documents_rels.missionsID],
|
fields: [payload_locked_documents_rels.missionsID],
|
||||||
references: [missions.id],
|
references: [missions.id],
|
||||||
|
|
@ -3758,6 +4471,26 @@ export const relations_payload_locked_documents_rels = relations(
|
||||||
references: [ledger_entries.id],
|
references: [ledger_entries.id],
|
||||||
relationName: "ledger-entries",
|
relationName: "ledger-entries",
|
||||||
}),
|
}),
|
||||||
|
"locker-storagesID": one(locker_storages, {
|
||||||
|
fields: [payload_locked_documents_rels["locker-storagesID"]],
|
||||||
|
references: [locker_storages.id],
|
||||||
|
relationName: "locker-storages",
|
||||||
|
}),
|
||||||
|
loadoutsID: one(loadouts, {
|
||||||
|
fields: [payload_locked_documents_rels.loadoutsID],
|
||||||
|
references: [loadouts.id],
|
||||||
|
relationName: "loadouts",
|
||||||
|
}),
|
||||||
|
"market-listingsID": one(market_listings, {
|
||||||
|
fields: [payload_locked_documents_rels["market-listingsID"]],
|
||||||
|
references: [market_listings.id],
|
||||||
|
relationName: "market-listings",
|
||||||
|
}),
|
||||||
|
"market-negotiationsID": one(market_negotiations, {
|
||||||
|
fields: [payload_locked_documents_rels["market-negotiationsID"]],
|
||||||
|
references: [market_negotiations.id],
|
||||||
|
relationName: "market-negotiations",
|
||||||
|
}),
|
||||||
mapsID: one(maps, {
|
mapsID: one(maps, {
|
||||||
fields: [payload_locked_documents_rels.mapsID],
|
fields: [payload_locked_documents_rels.mapsID],
|
||||||
references: [maps.id],
|
references: [maps.id],
|
||||||
|
|
@ -3850,6 +4583,7 @@ type DatabaseSchema = {
|
||||||
enum_factions_type: typeof enum_factions_type;
|
enum_factions_type: typeof enum_factions_type;
|
||||||
enum_technologies_approval_status: typeof enum_technologies_approval_status;
|
enum_technologies_approval_status: typeof enum_technologies_approval_status;
|
||||||
enum_technologies_type: typeof enum_technologies_type;
|
enum_technologies_type: typeof enum_technologies_type;
|
||||||
|
enum_assets_skin_configuration_applies_to_asset_types: typeof enum_assets_skin_configuration_applies_to_asset_types;
|
||||||
enum_assets_approval_status: typeof enum_assets_approval_status;
|
enum_assets_approval_status: typeof enum_assets_approval_status;
|
||||||
enum_assets_asset_type: typeof enum_assets_asset_type;
|
enum_assets_asset_type: typeof enum_assets_asset_type;
|
||||||
enum_assets_weapon_configuration_slot_type: typeof enum_assets_weapon_configuration_slot_type;
|
enum_assets_weapon_configuration_slot_type: typeof enum_assets_weapon_configuration_slot_type;
|
||||||
|
|
@ -3872,6 +4606,10 @@ type DatabaseSchema = {
|
||||||
enum_bank_transactions_type: typeof enum_bank_transactions_type;
|
enum_bank_transactions_type: typeof enum_bank_transactions_type;
|
||||||
enum_bank_transactions_status: typeof enum_bank_transactions_status;
|
enum_bank_transactions_status: typeof enum_bank_transactions_status;
|
||||||
enum_ledger_entries_type: typeof enum_ledger_entries_type;
|
enum_ledger_entries_type: typeof enum_ledger_entries_type;
|
||||||
|
enum_market_listings_status: typeof enum_market_listings_status;
|
||||||
|
enum_market_negotiations_history_from: typeof enum_market_negotiations_history_from;
|
||||||
|
enum_market_negotiations_status: typeof enum_market_negotiations_status;
|
||||||
|
enum_market_negotiations_proposed_by: typeof enum_market_negotiations_proposed_by;
|
||||||
enum_narrative_events_triggers_type: typeof enum_narrative_events_triggers_type;
|
enum_narrative_events_triggers_type: typeof enum_narrative_events_triggers_type;
|
||||||
media: typeof media;
|
media: typeof media;
|
||||||
game_hard_resources: typeof game_hard_resources;
|
game_hard_resources: typeof game_hard_resources;
|
||||||
|
|
@ -3881,6 +4619,8 @@ type DatabaseSchema = {
|
||||||
game_vehicles_stored_resources: typeof game_vehicles_stored_resources;
|
game_vehicles_stored_resources: typeof game_vehicles_stored_resources;
|
||||||
game_vehicles_void_storage: typeof game_vehicles_void_storage;
|
game_vehicles_void_storage: typeof game_vehicles_void_storage;
|
||||||
game_vehicles: typeof game_vehicles;
|
game_vehicles: typeof game_vehicles;
|
||||||
|
game_npcs: typeof game_npcs;
|
||||||
|
game_npcs_rels: typeof game_npcs_rels;
|
||||||
game_event_logs: typeof game_event_logs;
|
game_event_logs: typeof game_event_logs;
|
||||||
users_roles: typeof users_roles;
|
users_roles: typeof users_roles;
|
||||||
users_sessions: typeof users_sessions;
|
users_sessions: typeof users_sessions;
|
||||||
|
|
@ -3893,6 +4633,7 @@ type DatabaseSchema = {
|
||||||
assignments: typeof assignments;
|
assignments: typeof assignments;
|
||||||
assignments_rels: typeof assignments_rels;
|
assignments_rels: typeof assignments_rels;
|
||||||
experience: typeof experience;
|
experience: typeof experience;
|
||||||
|
user_notifications: typeof user_notifications;
|
||||||
missions_mission_roles_provided_roles: typeof missions_mission_roles_provided_roles;
|
missions_mission_roles_provided_roles: typeof missions_mission_roles_provided_roles;
|
||||||
missions_briefing: typeof missions_briefing;
|
missions_briefing: typeof missions_briefing;
|
||||||
missions_mission_objectives: typeof missions_mission_objectives;
|
missions_mission_objectives: typeof missions_mission_objectives;
|
||||||
|
|
@ -3910,6 +4651,7 @@ type DatabaseSchema = {
|
||||||
technologies_research_costs_resources: typeof technologies_research_costs_resources;
|
technologies_research_costs_resources: typeof technologies_research_costs_resources;
|
||||||
technologies: typeof technologies;
|
technologies: typeof technologies;
|
||||||
technologies_rels: typeof technologies_rels;
|
technologies_rels: typeof technologies_rels;
|
||||||
|
assets_skin_configuration_applies_to_asset_types: typeof assets_skin_configuration_applies_to_asset_types;
|
||||||
assets_crafting_crafting_data_inputs: typeof assets_crafting_crafting_data_inputs;
|
assets_crafting_crafting_data_inputs: typeof assets_crafting_crafting_data_inputs;
|
||||||
assets_crafting_crafting_data_byproducts: typeof assets_crafting_crafting_data_byproducts;
|
assets_crafting_crafting_data_byproducts: typeof assets_crafting_crafting_data_byproducts;
|
||||||
assets: typeof assets;
|
assets: typeof assets;
|
||||||
|
|
@ -3938,6 +4680,13 @@ type DatabaseSchema = {
|
||||||
bank_accounts: typeof bank_accounts;
|
bank_accounts: typeof bank_accounts;
|
||||||
bank_transactions: typeof bank_transactions;
|
bank_transactions: typeof bank_transactions;
|
||||||
ledger_entries: typeof ledger_entries;
|
ledger_entries: typeof ledger_entries;
|
||||||
|
locker_storages_items_equipment_attachments: typeof locker_storages_items_equipment_attachments;
|
||||||
|
locker_storages_items: typeof locker_storages_items;
|
||||||
|
locker_storages: typeof locker_storages;
|
||||||
|
loadouts: typeof loadouts;
|
||||||
|
market_listings: typeof market_listings;
|
||||||
|
market_negotiations_history: typeof market_negotiations_history;
|
||||||
|
market_negotiations: typeof market_negotiations;
|
||||||
maps: typeof maps;
|
maps: typeof maps;
|
||||||
narrative_events: typeof narrative_events;
|
narrative_events: typeof narrative_events;
|
||||||
mission_files: typeof mission_files;
|
mission_files: typeof mission_files;
|
||||||
|
|
@ -3958,6 +4707,8 @@ type DatabaseSchema = {
|
||||||
relations_game_vehicles_stored_resources: typeof relations_game_vehicles_stored_resources;
|
relations_game_vehicles_stored_resources: typeof relations_game_vehicles_stored_resources;
|
||||||
relations_game_vehicles_void_storage: typeof relations_game_vehicles_void_storage;
|
relations_game_vehicles_void_storage: typeof relations_game_vehicles_void_storage;
|
||||||
relations_game_vehicles: typeof relations_game_vehicles;
|
relations_game_vehicles: typeof relations_game_vehicles;
|
||||||
|
relations_game_npcs_rels: typeof relations_game_npcs_rels;
|
||||||
|
relations_game_npcs: typeof relations_game_npcs;
|
||||||
relations_game_event_logs: typeof relations_game_event_logs;
|
relations_game_event_logs: typeof relations_game_event_logs;
|
||||||
relations_users_roles: typeof relations_users_roles;
|
relations_users_roles: typeof relations_users_roles;
|
||||||
relations_users_sessions: typeof relations_users_sessions;
|
relations_users_sessions: typeof relations_users_sessions;
|
||||||
|
|
@ -3970,6 +4721,7 @@ type DatabaseSchema = {
|
||||||
relations_assignments_rels: typeof relations_assignments_rels;
|
relations_assignments_rels: typeof relations_assignments_rels;
|
||||||
relations_assignments: typeof relations_assignments;
|
relations_assignments: typeof relations_assignments;
|
||||||
relations_experience: typeof relations_experience;
|
relations_experience: typeof relations_experience;
|
||||||
|
relations_user_notifications: typeof relations_user_notifications;
|
||||||
relations_missions_mission_roles_provided_roles: typeof relations_missions_mission_roles_provided_roles;
|
relations_missions_mission_roles_provided_roles: typeof relations_missions_mission_roles_provided_roles;
|
||||||
relations_missions_briefing: typeof relations_missions_briefing;
|
relations_missions_briefing: typeof relations_missions_briefing;
|
||||||
relations_missions_mission_objectives: typeof relations_missions_mission_objectives;
|
relations_missions_mission_objectives: typeof relations_missions_mission_objectives;
|
||||||
|
|
@ -3987,6 +4739,7 @@ type DatabaseSchema = {
|
||||||
relations_technologies_research_costs_resources: typeof relations_technologies_research_costs_resources;
|
relations_technologies_research_costs_resources: typeof relations_technologies_research_costs_resources;
|
||||||
relations_technologies_rels: typeof relations_technologies_rels;
|
relations_technologies_rels: typeof relations_technologies_rels;
|
||||||
relations_technologies: typeof relations_technologies;
|
relations_technologies: typeof relations_technologies;
|
||||||
|
relations_assets_skin_configuration_applies_to_asset_types: typeof relations_assets_skin_configuration_applies_to_asset_types;
|
||||||
relations_assets_crafting_crafting_data_inputs: typeof relations_assets_crafting_crafting_data_inputs;
|
relations_assets_crafting_crafting_data_inputs: typeof relations_assets_crafting_crafting_data_inputs;
|
||||||
relations_assets_crafting_crafting_data_byproducts: typeof relations_assets_crafting_crafting_data_byproducts;
|
relations_assets_crafting_crafting_data_byproducts: typeof relations_assets_crafting_crafting_data_byproducts;
|
||||||
relations_assets_rels: typeof relations_assets_rels;
|
relations_assets_rels: typeof relations_assets_rels;
|
||||||
|
|
@ -4015,6 +4768,13 @@ type DatabaseSchema = {
|
||||||
relations_bank_accounts: typeof relations_bank_accounts;
|
relations_bank_accounts: typeof relations_bank_accounts;
|
||||||
relations_bank_transactions: typeof relations_bank_transactions;
|
relations_bank_transactions: typeof relations_bank_transactions;
|
||||||
relations_ledger_entries: typeof relations_ledger_entries;
|
relations_ledger_entries: typeof relations_ledger_entries;
|
||||||
|
relations_locker_storages_items_equipment_attachments: typeof relations_locker_storages_items_equipment_attachments;
|
||||||
|
relations_locker_storages_items: typeof relations_locker_storages_items;
|
||||||
|
relations_locker_storages: typeof relations_locker_storages;
|
||||||
|
relations_loadouts: typeof relations_loadouts;
|
||||||
|
relations_market_listings: typeof relations_market_listings;
|
||||||
|
relations_market_negotiations_history: typeof relations_market_negotiations_history;
|
||||||
|
relations_market_negotiations: typeof relations_market_negotiations;
|
||||||
relations_maps: typeof relations_maps;
|
relations_maps: typeof relations_maps;
|
||||||
relations_narrative_events: typeof relations_narrative_events;
|
relations_narrative_events: typeof relations_narrative_events;
|
||||||
relations_mission_files: typeof relations_mission_files;
|
relations_mission_files: typeof relations_mission_files;
|
||||||
|
|
|
||||||
|
|
@ -71,6 +71,7 @@ export interface Config {
|
||||||
'game-hard-resources': GameHardResource;
|
'game-hard-resources': GameHardResource;
|
||||||
'game-structures': GameStructure;
|
'game-structures': GameStructure;
|
||||||
'game-vehicles': GameVehicle;
|
'game-vehicles': GameVehicle;
|
||||||
|
'game-npcs': GameNpc;
|
||||||
'game-event-logs': GameEventLog;
|
'game-event-logs': GameEventLog;
|
||||||
users: User;
|
users: User;
|
||||||
ranks: Rank;
|
ranks: Rank;
|
||||||
|
|
@ -79,6 +80,7 @@ export interface Config {
|
||||||
qualifications: Qualification;
|
qualifications: Qualification;
|
||||||
assignments: Assignment;
|
assignments: Assignment;
|
||||||
experience: Experience;
|
experience: Experience;
|
||||||
|
'user-notifications': UserNotification;
|
||||||
missions: Mission;
|
missions: Mission;
|
||||||
campaigns: Campaign;
|
campaigns: Campaign;
|
||||||
factions: Faction;
|
factions: Faction;
|
||||||
|
|
@ -93,6 +95,8 @@ export interface Config {
|
||||||
'ledger-entries': LedgerEntry;
|
'ledger-entries': LedgerEntry;
|
||||||
'locker-storages': LockerStorage;
|
'locker-storages': LockerStorage;
|
||||||
loadouts: Loadout;
|
loadouts: Loadout;
|
||||||
|
'market-listings': MarketListing;
|
||||||
|
'market-negotiations': MarketNegotiation;
|
||||||
maps: Map;
|
maps: Map;
|
||||||
'narrative-events': NarrativeEvent;
|
'narrative-events': NarrativeEvent;
|
||||||
'mission-files': MissionFile;
|
'mission-files': MissionFile;
|
||||||
|
|
@ -115,6 +119,7 @@ export interface Config {
|
||||||
'game-hard-resources': GameHardResourcesSelect<false> | GameHardResourcesSelect<true>;
|
'game-hard-resources': GameHardResourcesSelect<false> | GameHardResourcesSelect<true>;
|
||||||
'game-structures': GameStructuresSelect<false> | GameStructuresSelect<true>;
|
'game-structures': GameStructuresSelect<false> | GameStructuresSelect<true>;
|
||||||
'game-vehicles': GameVehiclesSelect<false> | GameVehiclesSelect<true>;
|
'game-vehicles': GameVehiclesSelect<false> | GameVehiclesSelect<true>;
|
||||||
|
'game-npcs': GameNpcsSelect<false> | GameNpcsSelect<true>;
|
||||||
'game-event-logs': GameEventLogsSelect<false> | GameEventLogsSelect<true>;
|
'game-event-logs': GameEventLogsSelect<false> | GameEventLogsSelect<true>;
|
||||||
users: UsersSelect<false> | UsersSelect<true>;
|
users: UsersSelect<false> | UsersSelect<true>;
|
||||||
ranks: RanksSelect<false> | RanksSelect<true>;
|
ranks: RanksSelect<false> | RanksSelect<true>;
|
||||||
|
|
@ -123,6 +128,7 @@ export interface Config {
|
||||||
qualifications: QualificationsSelect<false> | QualificationsSelect<true>;
|
qualifications: QualificationsSelect<false> | QualificationsSelect<true>;
|
||||||
assignments: AssignmentsSelect<false> | AssignmentsSelect<true>;
|
assignments: AssignmentsSelect<false> | AssignmentsSelect<true>;
|
||||||
experience: ExperienceSelect<false> | ExperienceSelect<true>;
|
experience: ExperienceSelect<false> | ExperienceSelect<true>;
|
||||||
|
'user-notifications': UserNotificationsSelect<false> | UserNotificationsSelect<true>;
|
||||||
missions: MissionsSelect<false> | MissionsSelect<true>;
|
missions: MissionsSelect<false> | MissionsSelect<true>;
|
||||||
campaigns: CampaignsSelect<false> | CampaignsSelect<true>;
|
campaigns: CampaignsSelect<false> | CampaignsSelect<true>;
|
||||||
factions: FactionsSelect<false> | FactionsSelect<true>;
|
factions: FactionsSelect<false> | FactionsSelect<true>;
|
||||||
|
|
@ -137,6 +143,8 @@ export interface Config {
|
||||||
'ledger-entries': LedgerEntriesSelect<false> | LedgerEntriesSelect<true>;
|
'ledger-entries': LedgerEntriesSelect<false> | LedgerEntriesSelect<true>;
|
||||||
'locker-storages': LockerStoragesSelect<false> | LockerStoragesSelect<true>;
|
'locker-storages': LockerStoragesSelect<false> | LockerStoragesSelect<true>;
|
||||||
loadouts: LoadoutsSelect<false> | LoadoutsSelect<true>;
|
loadouts: LoadoutsSelect<false> | LoadoutsSelect<true>;
|
||||||
|
'market-listings': MarketListingsSelect<false> | MarketListingsSelect<true>;
|
||||||
|
'market-negotiations': MarketNegotiationsSelect<false> | MarketNegotiationsSelect<true>;
|
||||||
maps: MapsSelect<false> | MapsSelect<true>;
|
maps: MapsSelect<false> | MapsSelect<true>;
|
||||||
'narrative-events': NarrativeEventsSelect<false> | NarrativeEventsSelect<true>;
|
'narrative-events': NarrativeEventsSelect<false> | NarrativeEventsSelect<true>;
|
||||||
'mission-files': MissionFilesSelect<false> | MissionFilesSelect<true>;
|
'mission-files': MissionFilesSelect<false> | MissionFilesSelect<true>;
|
||||||
|
|
@ -1090,6 +1098,57 @@ export interface GameVehicle {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "game-npcs".
|
||||||
|
*/
|
||||||
|
export interface GameNpc {
|
||||||
|
id: number;
|
||||||
|
/**
|
||||||
|
* The NPC's name as shown in-game and on the frontend.
|
||||||
|
*/
|
||||||
|
name: string;
|
||||||
|
/**
|
||||||
|
* What this NPC does (e.g. 'Weapons Dealer', 'Field Medic').
|
||||||
|
*/
|
||||||
|
occupation?: string | null;
|
||||||
|
/**
|
||||||
|
* Where this NPC is stationed in-game.
|
||||||
|
*/
|
||||||
|
location?: (number | null) | GameStructure;
|
||||||
|
/**
|
||||||
|
* The faction this NPC belongs to, if any.
|
||||||
|
*/
|
||||||
|
faction?: (number | null) | Faction;
|
||||||
|
/**
|
||||||
|
* A short background/profile for this NPC.
|
||||||
|
*/
|
||||||
|
bio?: string | null;
|
||||||
|
/**
|
||||||
|
* True for NPCs auto-created by the market tick to cover unstocked goods. They are placeholders until included in the game.
|
||||||
|
*/
|
||||||
|
isGenerated?: boolean | null;
|
||||||
|
/**
|
||||||
|
* Whether this NPC is officially part of the game. Generated NPCs start off; flip this on to include them.
|
||||||
|
*/
|
||||||
|
isInGame?: boolean | null;
|
||||||
|
vendor?: {
|
||||||
|
/**
|
||||||
|
* Whether this NPC runs a market stall. Auto-generated vendor stock is attributed to them.
|
||||||
|
*/
|
||||||
|
enabled?: boolean | null;
|
||||||
|
/**
|
||||||
|
* Multiplies the auto-generated price for this NPC's stock (1 = base market price).
|
||||||
|
*/
|
||||||
|
priceModifier?: number | null;
|
||||||
|
/**
|
||||||
|
* The goods this NPC sells. The market tick prefers these NPCs when stocking those assets.
|
||||||
|
*/
|
||||||
|
sells?: (number | Asset)[] | null;
|
||||||
|
};
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "game-event-logs".
|
* via the `definition` "game-event-logs".
|
||||||
|
|
@ -1112,6 +1171,7 @@ export interface GameEventLog {
|
||||||
| (
|
| (
|
||||||
| 'game-structures'
|
| 'game-structures'
|
||||||
| 'game-vehicles'
|
| 'game-vehicles'
|
||||||
|
| 'game-npcs'
|
||||||
| 'structures'
|
| 'structures'
|
||||||
| 'resources'
|
| 'resources'
|
||||||
| 'assets'
|
| 'assets'
|
||||||
|
|
@ -1128,6 +1188,8 @@ export interface GameEventLog {
|
||||||
| 'ledger-entries'
|
| 'ledger-entries'
|
||||||
| 'locker-storages'
|
| 'locker-storages'
|
||||||
| 'loadouts'
|
| 'loadouts'
|
||||||
|
| 'market-listings'
|
||||||
|
| 'market-negotiations'
|
||||||
)
|
)
|
||||||
| null;
|
| null;
|
||||||
targetId?: number | null;
|
targetId?: number | null;
|
||||||
|
|
@ -1364,6 +1426,27 @@ export interface Experience {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "user-notifications".
|
||||||
|
*/
|
||||||
|
export interface UserNotification {
|
||||||
|
id: number;
|
||||||
|
user: number | User;
|
||||||
|
/**
|
||||||
|
* Machine-readable notification type, e.g. `market:offer`.
|
||||||
|
*/
|
||||||
|
type?: string | null;
|
||||||
|
title: string;
|
||||||
|
message?: string | null;
|
||||||
|
/**
|
||||||
|
* Optional internal path to navigate to when clicked.
|
||||||
|
*/
|
||||||
|
link?: string | null;
|
||||||
|
read?: boolean | null;
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "missions".
|
* via the `definition` "missions".
|
||||||
|
|
@ -1917,6 +2000,103 @@ export interface Loadout {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "market-listings".
|
||||||
|
*/
|
||||||
|
export interface MarketListing {
|
||||||
|
id: number;
|
||||||
|
/**
|
||||||
|
* The asset being offered for sale.
|
||||||
|
*/
|
||||||
|
asset: number | Asset;
|
||||||
|
/**
|
||||||
|
* The user who listed this item. Null for auto-generated market entries (NPC stock).
|
||||||
|
*/
|
||||||
|
seller?: (number | null) | User;
|
||||||
|
/**
|
||||||
|
* The NPC stocking this entry. Auto-generated market entries are attributed to an NPC instead of a user.
|
||||||
|
*/
|
||||||
|
npc?: (number | null) | GameNpc;
|
||||||
|
quantity: number;
|
||||||
|
/**
|
||||||
|
* Price per single unit, in the market currency.
|
||||||
|
*/
|
||||||
|
price: number;
|
||||||
|
/**
|
||||||
|
* The seller's target price during negotiations. Defaults to the asking price.
|
||||||
|
*/
|
||||||
|
desiredPrice?: number | null;
|
||||||
|
/**
|
||||||
|
* The lowest per-unit price the seller will accept. When set below the asking price, the listing is negotiable.
|
||||||
|
*/
|
||||||
|
minPrice?: number | null;
|
||||||
|
/**
|
||||||
|
* The currency this listing is priced in. Defaults to the main campaign currency.
|
||||||
|
*/
|
||||||
|
currency?: (number | null) | Resource;
|
||||||
|
status: 'active' | 'sold' | 'cancelled' | 'expired';
|
||||||
|
/**
|
||||||
|
* True for system-generated NPC entries. Auto-generated entries have no seller; proceeds go to the unit treasury.
|
||||||
|
*/
|
||||||
|
isAutoGenerated?: boolean | null;
|
||||||
|
listedAt: string;
|
||||||
|
/**
|
||||||
|
* When this listing expires. Expired user listings have their stock returned to the seller; auto-generated entries simply close.
|
||||||
|
*/
|
||||||
|
expiresAt?: string | null;
|
||||||
|
soldAt?: string | null;
|
||||||
|
/**
|
||||||
|
* The user who purchased this listing.
|
||||||
|
*/
|
||||||
|
buyer?: (number | null) | User;
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "market-negotiations".
|
||||||
|
*/
|
||||||
|
export interface MarketNegotiation {
|
||||||
|
id: number;
|
||||||
|
/**
|
||||||
|
* The market listing this negotiation thread belongs to.
|
||||||
|
*/
|
||||||
|
listing: number | MarketListing;
|
||||||
|
/**
|
||||||
|
* The player interested in buying the listing.
|
||||||
|
*/
|
||||||
|
buyer: number | User;
|
||||||
|
status: 'open' | 'accepted' | 'rejected' | 'closed' | 'cancelled' | 'expired';
|
||||||
|
/**
|
||||||
|
* NPC vendor patience (0–100). Rises each bargaining round and sharply for lowball offers; at 100 the negotiation closes and the buyer can only buy at the asking price.
|
||||||
|
*/
|
||||||
|
patience?: number | null;
|
||||||
|
/**
|
||||||
|
* How many units the buyer wants from the listing.
|
||||||
|
*/
|
||||||
|
quantity?: number | null;
|
||||||
|
/**
|
||||||
|
* The per-unit price currently on the table. Proposed by the buyer or the seller depending on the proposal.
|
||||||
|
*/
|
||||||
|
amount: number;
|
||||||
|
proposedBy: 'buyer' | 'seller';
|
||||||
|
/**
|
||||||
|
* The per-unit price agreed when the negotiation is accepted.
|
||||||
|
*/
|
||||||
|
acceptedPrice?: number | null;
|
||||||
|
history?:
|
||||||
|
| {
|
||||||
|
amount: number;
|
||||||
|
from: 'buyer' | 'seller';
|
||||||
|
note?: string | null;
|
||||||
|
at: string;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
|
updatedAt: string;
|
||||||
|
createdAt: string;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "narrative-events".
|
* via the `definition` "narrative-events".
|
||||||
|
|
@ -1998,6 +2178,10 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'game-vehicles';
|
relationTo: 'game-vehicles';
|
||||||
value: number | GameVehicle;
|
value: number | GameVehicle;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'game-npcs';
|
||||||
|
value: number | GameNpc;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'game-event-logs';
|
relationTo: 'game-event-logs';
|
||||||
value: number | GameEventLog;
|
value: number | GameEventLog;
|
||||||
|
|
@ -2030,6 +2214,10 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'experience';
|
relationTo: 'experience';
|
||||||
value: number | Experience;
|
value: number | Experience;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'user-notifications';
|
||||||
|
value: number | UserNotification;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'missions';
|
relationTo: 'missions';
|
||||||
value: number | Mission;
|
value: number | Mission;
|
||||||
|
|
@ -2086,6 +2274,14 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'loadouts';
|
relationTo: 'loadouts';
|
||||||
value: number | Loadout;
|
value: number | Loadout;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'market-listings';
|
||||||
|
value: number | MarketListing;
|
||||||
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'market-negotiations';
|
||||||
|
value: number | MarketNegotiation;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'maps';
|
relationTo: 'maps';
|
||||||
value: number | Map;
|
value: number | Map;
|
||||||
|
|
@ -2240,6 +2436,28 @@ export interface GameVehiclesSelect<T extends boolean = true> {
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "game-npcs_select".
|
||||||
|
*/
|
||||||
|
export interface GameNpcsSelect<T extends boolean = true> {
|
||||||
|
name?: T;
|
||||||
|
occupation?: T;
|
||||||
|
location?: T;
|
||||||
|
faction?: T;
|
||||||
|
bio?: T;
|
||||||
|
isGenerated?: T;
|
||||||
|
isInGame?: T;
|
||||||
|
vendor?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
enabled?: T;
|
||||||
|
priceModifier?: T;
|
||||||
|
sells?: T;
|
||||||
|
};
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "game-event-logs_select".
|
* via the `definition` "game-event-logs_select".
|
||||||
|
|
@ -2394,6 +2612,20 @@ export interface ExperienceSelect<T extends boolean = true> {
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "user-notifications_select".
|
||||||
|
*/
|
||||||
|
export interface UserNotificationsSelect<T extends boolean = true> {
|
||||||
|
user?: T;
|
||||||
|
type?: T;
|
||||||
|
title?: T;
|
||||||
|
message?: T;
|
||||||
|
link?: T;
|
||||||
|
read?: T;
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "missions_select".
|
* via the `definition` "missions_select".
|
||||||
|
|
@ -3006,6 +3238,53 @@ export interface LoadoutsSelect<T extends boolean = true> {
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "market-listings_select".
|
||||||
|
*/
|
||||||
|
export interface MarketListingsSelect<T extends boolean = true> {
|
||||||
|
asset?: T;
|
||||||
|
seller?: T;
|
||||||
|
npc?: T;
|
||||||
|
quantity?: T;
|
||||||
|
price?: T;
|
||||||
|
desiredPrice?: T;
|
||||||
|
minPrice?: T;
|
||||||
|
currency?: T;
|
||||||
|
status?: T;
|
||||||
|
isAutoGenerated?: T;
|
||||||
|
listedAt?: T;
|
||||||
|
expiresAt?: T;
|
||||||
|
soldAt?: T;
|
||||||
|
buyer?: T;
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "market-negotiations_select".
|
||||||
|
*/
|
||||||
|
export interface MarketNegotiationsSelect<T extends boolean = true> {
|
||||||
|
listing?: T;
|
||||||
|
buyer?: T;
|
||||||
|
status?: T;
|
||||||
|
patience?: T;
|
||||||
|
quantity?: T;
|
||||||
|
amount?: T;
|
||||||
|
proposedBy?: T;
|
||||||
|
acceptedPrice?: T;
|
||||||
|
history?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
amount?: T;
|
||||||
|
from?: T;
|
||||||
|
note?: T;
|
||||||
|
at?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "maps_select".
|
* via the `definition` "maps_select".
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue