chore(types): regenerate payload types and database schema
This commit is contained in:
parent
6cce6116b8
commit
2e65ab08d8
2 changed files with 1261 additions and 94 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -70,6 +70,7 @@ export interface Config {
|
||||||
media: Media;
|
media: Media;
|
||||||
'game-hard-resources': GameHardResource;
|
'game-hard-resources': GameHardResource;
|
||||||
'game-structures': GameStructure;
|
'game-structures': GameStructure;
|
||||||
|
'game-vehicles': GameVehicle;
|
||||||
'game-event-logs': GameEventLog;
|
'game-event-logs': GameEventLog;
|
||||||
users: User;
|
users: User;
|
||||||
ranks: Rank;
|
ranks: Rank;
|
||||||
|
|
@ -86,6 +87,7 @@ export interface Config {
|
||||||
resources: Resource;
|
resources: Resource;
|
||||||
vehicles: Vehicle;
|
vehicles: Vehicle;
|
||||||
structures: Structure;
|
structures: Structure;
|
||||||
|
shipments: Shipment;
|
||||||
maps: Map;
|
maps: Map;
|
||||||
'narrative-events': NarrativeEvent;
|
'narrative-events': NarrativeEvent;
|
||||||
'mission-files': MissionFile;
|
'mission-files': MissionFile;
|
||||||
|
|
@ -107,6 +109,7 @@ export interface Config {
|
||||||
media: MediaSelect<false> | MediaSelect<true>;
|
media: MediaSelect<false> | MediaSelect<true>;
|
||||||
'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-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 +126,7 @@ export interface Config {
|
||||||
resources: ResourcesSelect<false> | ResourcesSelect<true>;
|
resources: ResourcesSelect<false> | ResourcesSelect<true>;
|
||||||
vehicles: VehiclesSelect<false> | VehiclesSelect<true>;
|
vehicles: VehiclesSelect<false> | VehiclesSelect<true>;
|
||||||
structures: StructuresSelect<false> | StructuresSelect<true>;
|
structures: StructuresSelect<false> | StructuresSelect<true>;
|
||||||
|
shipments: ShipmentsSelect<false> | ShipmentsSelect<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>;
|
||||||
|
|
@ -143,9 +147,10 @@ export interface Config {
|
||||||
'game-rules': GameRulesSelect<false> | GameRulesSelect<true>;
|
'game-rules': GameRulesSelect<false> | GameRulesSelect<true>;
|
||||||
};
|
};
|
||||||
locale: null;
|
locale: null;
|
||||||
user: User & {
|
widgets: {
|
||||||
collection: 'users';
|
collections: CollectionsWidget;
|
||||||
};
|
};
|
||||||
|
user: User;
|
||||||
jobs: {
|
jobs: {
|
||||||
tasks: unknown;
|
tasks: unknown;
|
||||||
workflows: unknown;
|
workflows: unknown;
|
||||||
|
|
@ -423,6 +428,10 @@ export interface Structure {
|
||||||
* The maximum storage capacity of this structure as mass (retrieved from the mass defined for every asset stored here.)
|
* The maximum storage capacity of this structure as mass (retrieved from the mass defined for every asset stored here.)
|
||||||
*/
|
*/
|
||||||
maxCapacityMass?: number | null;
|
maxCapacityMass?: number | null;
|
||||||
|
/**
|
||||||
|
* When enabled, ONLY the items listed in Allowed Storage can be stored here — everything else is rejected. When disabled, the Allowed Storage list still enforces per-item quantity caps, but other items are permitted up to the mass capacity.
|
||||||
|
*/
|
||||||
|
restrictToAllowed?: boolean | null;
|
||||||
xSize?: number | null;
|
xSize?: number | null;
|
||||||
ySize?: number | null;
|
ySize?: number | null;
|
||||||
allowedStorage?:
|
allowedStorage?:
|
||||||
|
|
@ -810,6 +819,23 @@ export interface Vehicle {
|
||||||
} | null;
|
} | null;
|
||||||
image?: (number | null) | Media;
|
image?: (number | null) | Media;
|
||||||
category?: ('civilian' | 'utility' | 'transport' | 'weaponized' | 'military')[] | null;
|
category?: ('civilian' | 'utility' | 'transport' | 'weaponized' | 'military')[] | null;
|
||||||
|
/**
|
||||||
|
* Fuel configuration for this vehicle. Defines what fuel type it uses, how much it can hold, and how fast it consumes fuel.
|
||||||
|
*/
|
||||||
|
fuel: {
|
||||||
|
/**
|
||||||
|
* The type of fuel this vehicle consumes (e.g., gasoline, diesel, jet fuel).
|
||||||
|
*/
|
||||||
|
fuelType: number | Resource;
|
||||||
|
/**
|
||||||
|
* Maximum fuel units this vehicle's tank can hold.
|
||||||
|
*/
|
||||||
|
fuelCapacity: number;
|
||||||
|
/**
|
||||||
|
* Fuel consumed per unit of distance traveled.
|
||||||
|
*/
|
||||||
|
fuelConsumptionRate: number;
|
||||||
|
};
|
||||||
materials?:
|
materials?:
|
||||||
| {
|
| {
|
||||||
resource: number | Resource;
|
resource: number | Resource;
|
||||||
|
|
@ -965,6 +991,63 @@ export interface Campaign {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "game-vehicles".
|
||||||
|
*/
|
||||||
|
export interface GameVehicle {
|
||||||
|
id: number;
|
||||||
|
/**
|
||||||
|
* Display name or callsign for this vehicle instance.
|
||||||
|
*/
|
||||||
|
name: string;
|
||||||
|
/**
|
||||||
|
* The vehicle type/template this instance is based on.
|
||||||
|
*/
|
||||||
|
type: number | Vehicle;
|
||||||
|
/**
|
||||||
|
* The structure where this vehicle is currently stationed. Null if in transit.
|
||||||
|
*/
|
||||||
|
deployedAt?: (number | null) | GameStructure;
|
||||||
|
/**
|
||||||
|
* The faction that owns this vehicle.
|
||||||
|
*/
|
||||||
|
faction?: (number | null) | Faction;
|
||||||
|
status: 'idle' | 'assigned' | 'in_transit' | 'damaged' | 'destroyed';
|
||||||
|
/**
|
||||||
|
* Current fuel level. Must be between 0 and the vehicle type's fuel capacity.
|
||||||
|
*/
|
||||||
|
currentFuel: number;
|
||||||
|
/**
|
||||||
|
* Current health. Must be between 0 and the vehicle type's max health.
|
||||||
|
*/
|
||||||
|
currentHealth: number;
|
||||||
|
storedResources?:
|
||||||
|
| {
|
||||||
|
resource: number | Resource;
|
||||||
|
amount: number;
|
||||||
|
gridX: number;
|
||||||
|
gridY: number;
|
||||||
|
rotated?: boolean | null;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
|
/**
|
||||||
|
* Items displaced by grid resizing.
|
||||||
|
*/
|
||||||
|
voidStorage?:
|
||||||
|
| {
|
||||||
|
resource: number | Resource;
|
||||||
|
amount: number;
|
||||||
|
gridX: number;
|
||||||
|
gridY: number;
|
||||||
|
rotated?: boolean | null;
|
||||||
|
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` "game-event-logs".
|
* via the `definition` "game-event-logs".
|
||||||
|
|
@ -986,6 +1069,7 @@ export interface GameEventLog {
|
||||||
targetCollection?:
|
targetCollection?:
|
||||||
| (
|
| (
|
||||||
| 'game-structures'
|
| 'game-structures'
|
||||||
|
| 'game-vehicles'
|
||||||
| 'structures'
|
| 'structures'
|
||||||
| 'resources'
|
| 'resources'
|
||||||
| 'assets'
|
| 'assets'
|
||||||
|
|
@ -996,6 +1080,7 @@ export interface GameEventLog {
|
||||||
| 'users'
|
| 'users'
|
||||||
| 'technologies'
|
| 'technologies'
|
||||||
| 'maps'
|
| 'maps'
|
||||||
|
| 'shipments'
|
||||||
)
|
)
|
||||||
| null;
|
| null;
|
||||||
targetId?: number | null;
|
targetId?: number | null;
|
||||||
|
|
@ -1040,6 +1125,7 @@ export interface User {
|
||||||
}[]
|
}[]
|
||||||
| null;
|
| null;
|
||||||
password?: string | null;
|
password?: string | null;
|
||||||
|
collection: 'users';
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
|
@ -1462,6 +1548,67 @@ export interface ModList {
|
||||||
focalX?: number | null;
|
focalX?: number | null;
|
||||||
focalY?: number | null;
|
focalY?: number | null;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "shipments".
|
||||||
|
*/
|
||||||
|
export interface Shipment {
|
||||||
|
id: number;
|
||||||
|
/**
|
||||||
|
* Shipment label. Auto-generated if left empty.
|
||||||
|
*/
|
||||||
|
name?: string | null;
|
||||||
|
origin: number | GameStructure;
|
||||||
|
destination: number | GameStructure;
|
||||||
|
/**
|
||||||
|
* The vehicle instance transporting this shipment.
|
||||||
|
*/
|
||||||
|
transportVehicle: number | GameVehicle;
|
||||||
|
/**
|
||||||
|
* Euclidean distance between origin and destination.
|
||||||
|
*/
|
||||||
|
distance: number;
|
||||||
|
cargo: {
|
||||||
|
item:
|
||||||
|
| {
|
||||||
|
relationTo: 'resources';
|
||||||
|
value: number | Resource;
|
||||||
|
}
|
||||||
|
| {
|
||||||
|
relationTo: 'assets';
|
||||||
|
value: number | Asset;
|
||||||
|
}
|
||||||
|
| {
|
||||||
|
relationTo: 'vehicles';
|
||||||
|
value: number | Vehicle;
|
||||||
|
};
|
||||||
|
amount: number;
|
||||||
|
id?: string | null;
|
||||||
|
}[];
|
||||||
|
/**
|
||||||
|
* Total fuel required for the entire trip.
|
||||||
|
*/
|
||||||
|
fuelCost: number;
|
||||||
|
/**
|
||||||
|
* Fuel consumed so far during transit.
|
||||||
|
*/
|
||||||
|
fuelConsumed?: number | null;
|
||||||
|
status: 'pending' | 'dispatched' | 'in_transit' | 'arrived' | 'completed' | 'cancelled' | 'failed' | 'stranded';
|
||||||
|
dispatchedAt?: string | null;
|
||||||
|
estimatedArrival?: string | null;
|
||||||
|
completedAt?: string | null;
|
||||||
|
/**
|
||||||
|
* If true, the vehicle will automatically return to its origin after completing this shipment.
|
||||||
|
*/
|
||||||
|
autoReturn?: boolean | null;
|
||||||
|
createdBy?: (number | null) | User;
|
||||||
|
/**
|
||||||
|
* Reason for failure or stranding.
|
||||||
|
*/
|
||||||
|
failureReason?: string | 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".
|
||||||
|
|
@ -1539,6 +1686,10 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'game-structures';
|
relationTo: 'game-structures';
|
||||||
value: number | GameStructure;
|
value: number | GameStructure;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'game-vehicles';
|
||||||
|
value: number | GameVehicle;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'game-event-logs';
|
relationTo: 'game-event-logs';
|
||||||
value: number | GameEventLog;
|
value: number | GameEventLog;
|
||||||
|
|
@ -1603,6 +1754,10 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'structures';
|
relationTo: 'structures';
|
||||||
value: number | Structure;
|
value: number | Structure;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'shipments';
|
||||||
|
value: number | Shipment;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'maps';
|
relationTo: 'maps';
|
||||||
value: number | Map;
|
value: number | Map;
|
||||||
|
|
@ -1722,6 +1877,41 @@ export interface GameStructuresSelect<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-vehicles_select".
|
||||||
|
*/
|
||||||
|
export interface GameVehiclesSelect<T extends boolean = true> {
|
||||||
|
name?: T;
|
||||||
|
type?: T;
|
||||||
|
deployedAt?: T;
|
||||||
|
faction?: T;
|
||||||
|
status?: T;
|
||||||
|
currentFuel?: T;
|
||||||
|
currentHealth?: T;
|
||||||
|
storedResources?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
resource?: T;
|
||||||
|
amount?: T;
|
||||||
|
gridX?: T;
|
||||||
|
gridY?: T;
|
||||||
|
rotated?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
|
voidStorage?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
resource?: T;
|
||||||
|
amount?: T;
|
||||||
|
gridX?: T;
|
||||||
|
gridY?: T;
|
||||||
|
rotated?: 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` "game-event-logs_select".
|
* via the `definition` "game-event-logs_select".
|
||||||
|
|
@ -2180,6 +2370,13 @@ export interface VehiclesSelect<T extends boolean = true> {
|
||||||
description?: T;
|
description?: T;
|
||||||
image?: T;
|
image?: T;
|
||||||
category?: T;
|
category?: T;
|
||||||
|
fuel?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
fuelType?: T;
|
||||||
|
fuelCapacity?: T;
|
||||||
|
fuelConsumptionRate?: T;
|
||||||
|
};
|
||||||
materials?:
|
materials?:
|
||||||
| T
|
| T
|
||||||
| {
|
| {
|
||||||
|
|
@ -2294,6 +2491,7 @@ export interface StructuresSelect<T extends boolean = true> {
|
||||||
id?: T;
|
id?: T;
|
||||||
};
|
};
|
||||||
maxCapacityMass?: T;
|
maxCapacityMass?: T;
|
||||||
|
restrictToAllowed?: T;
|
||||||
xSize?: T;
|
xSize?: T;
|
||||||
ySize?: T;
|
ySize?: T;
|
||||||
allowedStorage?:
|
allowedStorage?:
|
||||||
|
|
@ -2314,6 +2512,35 @@ export interface StructuresSelect<T extends boolean = true> {
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "shipments_select".
|
||||||
|
*/
|
||||||
|
export interface ShipmentsSelect<T extends boolean = true> {
|
||||||
|
name?: T;
|
||||||
|
origin?: T;
|
||||||
|
destination?: T;
|
||||||
|
transportVehicle?: T;
|
||||||
|
distance?: T;
|
||||||
|
cargo?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
item?: T;
|
||||||
|
amount?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
|
fuelCost?: T;
|
||||||
|
fuelConsumed?: T;
|
||||||
|
status?: T;
|
||||||
|
dispatchedAt?: T;
|
||||||
|
estimatedArrival?: T;
|
||||||
|
completedAt?: T;
|
||||||
|
autoReturn?: T;
|
||||||
|
createdBy?: T;
|
||||||
|
failureReason?: 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".
|
||||||
|
|
@ -2437,6 +2664,14 @@ export interface GameRule {
|
||||||
* Assignment(s) considered the intelligence division. Members and leaders of these assignments get elevated access to draft missions and intelligence content.
|
* Assignment(s) considered the intelligence division. Members and leaders of these assignments get elevated access to draft missions and intelligence content.
|
||||||
*/
|
*/
|
||||||
intelAssignments?: (number | Assignment)[] | null;
|
intelAssignments?: (number | Assignment)[] | null;
|
||||||
|
/**
|
||||||
|
* Distance threshold for instant transfers. Structures within this distance can transfer resources instantly. Beyond this, shipments are required.
|
||||||
|
*/
|
||||||
|
proximityThreshold?: number | null;
|
||||||
|
/**
|
||||||
|
* How often the game tick runs, in minutes. This processes shipment movement, fuel consumption, and arrivals.
|
||||||
|
*/
|
||||||
|
gameTickIntervalMinutes?: number | null;
|
||||||
updatedAt?: string | null;
|
updatedAt?: string | null;
|
||||||
createdAt?: string | null;
|
createdAt?: string | null;
|
||||||
}
|
}
|
||||||
|
|
@ -2448,10 +2683,22 @@ export interface GameRulesSelect<T extends boolean = true> {
|
||||||
mainCurrency?: T;
|
mainCurrency?: T;
|
||||||
commandAssignments?: T;
|
commandAssignments?: T;
|
||||||
intelAssignments?: T;
|
intelAssignments?: T;
|
||||||
|
proximityThreshold?: T;
|
||||||
|
gameTickIntervalMinutes?: T;
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
globalType?: T;
|
globalType?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "collections_widget".
|
||||||
|
*/
|
||||||
|
export interface CollectionsWidget {
|
||||||
|
data?: {
|
||||||
|
[k: string]: unknown;
|
||||||
|
};
|
||||||
|
width: 'full';
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* This interface was referenced by `Config`'s JSON-Schema
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
* via the `definition` "auth".
|
* via the `definition` "auth".
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue