chore(cms): regenerate payload types for currency, staffing, and evaluation fields
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
parent
5430c02fbc
commit
f904522683
1 changed files with 254 additions and 0 deletions
|
|
@ -73,6 +73,8 @@ export interface Config {
|
||||||
'game-structures': GameStructure;
|
'game-structures': GameStructure;
|
||||||
'game-vehicles': GameVehicle;
|
'game-vehicles': GameVehicle;
|
||||||
'game-npcs': GameNpc;
|
'game-npcs': GameNpc;
|
||||||
|
'npc-staffing': NpcStaffing;
|
||||||
|
'labor-classifications': LaborClassification;
|
||||||
'game-event-logs': GameEventLog;
|
'game-event-logs': GameEventLog;
|
||||||
users: User;
|
users: User;
|
||||||
roles: Role;
|
roles: Role;
|
||||||
|
|
@ -139,6 +141,8 @@ export interface Config {
|
||||||
'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-npcs': GameNpcsSelect<false> | GameNpcsSelect<true>;
|
||||||
|
'npc-staffing': NpcStaffingSelect<false> | NpcStaffingSelect<true>;
|
||||||
|
'labor-classifications': LaborClassificationsSelect<false> | LaborClassificationsSelect<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>;
|
||||||
roles: RolesSelect<false> | RolesSelect<true>;
|
roles: RolesSelect<false> | RolesSelect<true>;
|
||||||
|
|
@ -312,6 +316,48 @@ export interface GameStructure {
|
||||||
* The faction that owns this structure.
|
* The faction that owns this structure.
|
||||||
*/
|
*/
|
||||||
faction?: (number | null) | Faction;
|
faction?: (number | null) | Faction;
|
||||||
|
/**
|
||||||
|
* Funds charged per base tick for structure upkeep, separate from staff salaries.
|
||||||
|
*/
|
||||||
|
maintenanceCost?: number | null;
|
||||||
|
/**
|
||||||
|
* Which labor classifications this structure needs. Empty = no labor crews can be assigned here.
|
||||||
|
*/
|
||||||
|
laborRequirements?:
|
||||||
|
| {
|
||||||
|
classification: number | LaborClassification;
|
||||||
|
/**
|
||||||
|
* Informational staffing target shown to logistics officers.
|
||||||
|
*/
|
||||||
|
requiredHeadcount: number;
|
||||||
|
/**
|
||||||
|
* Hard cap for this classification. Zero or empty means it cannot be hired here.
|
||||||
|
*/
|
||||||
|
maxHeadcount?: number | null;
|
||||||
|
/**
|
||||||
|
* When set, workers of this classification are always paid this wage; hirers cannot change it.
|
||||||
|
*/
|
||||||
|
enforcedSalary?: number | null;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
|
/**
|
||||||
|
* Which named staff position types this structure accepts. Empty = no named staff can be assigned here.
|
||||||
|
*/
|
||||||
|
staffPositions?:
|
||||||
|
| {
|
||||||
|
positionType: 'administrative' | 'technical' | 'other';
|
||||||
|
/**
|
||||||
|
* Maximum simultaneous named staff of this type. Empty means unlimited.
|
||||||
|
*/
|
||||||
|
max?: number | null;
|
||||||
|
/**
|
||||||
|
* When set, named staff of this type are always paid this salary.
|
||||||
|
*/
|
||||||
|
enforcedSalary?: number | null;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
/**
|
/**
|
||||||
* @minItems 2
|
* @minItems 2
|
||||||
* @maxItems 2
|
* @maxItems 2
|
||||||
|
|
@ -453,6 +499,48 @@ export interface Structure {
|
||||||
* A base price that this structure could sell for when fully operational. Leaving this empty will make this structure unsellable.
|
* A base price that this structure could sell for when fully operational. Leaving this empty will make this structure unsellable.
|
||||||
*/
|
*/
|
||||||
sellPrice?: number | null;
|
sellPrice?: number | null;
|
||||||
|
/**
|
||||||
|
* Default funds charged per base tick for structure upkeep. Copied into newly created game-structures of this type.
|
||||||
|
*/
|
||||||
|
maintenanceCost?: number | null;
|
||||||
|
/**
|
||||||
|
* Default labor classifications copied into newly created game-structures of this type. Empty = no labor crews by default.
|
||||||
|
*/
|
||||||
|
laborRequirements?:
|
||||||
|
| {
|
||||||
|
classification: number | LaborClassification;
|
||||||
|
/**
|
||||||
|
* Informational staffing target shown to logistics officers.
|
||||||
|
*/
|
||||||
|
requiredHeadcount: number;
|
||||||
|
/**
|
||||||
|
* Hard cap for this classification. Zero or empty means it cannot be hired here.
|
||||||
|
*/
|
||||||
|
maxHeadcount?: number | null;
|
||||||
|
/**
|
||||||
|
* When set, workers of this classification are always paid this wage; hirers cannot change it.
|
||||||
|
*/
|
||||||
|
enforcedSalary?: number | null;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
|
/**
|
||||||
|
* Default named staff position types copied into newly created game-structures of this type. Empty = no named staff by default.
|
||||||
|
*/
|
||||||
|
staffPositions?:
|
||||||
|
| {
|
||||||
|
positionType: 'administrative' | 'technical' | 'other';
|
||||||
|
/**
|
||||||
|
* Maximum simultaneous named staff of this type. Empty means unlimited.
|
||||||
|
*/
|
||||||
|
max?: number | null;
|
||||||
|
/**
|
||||||
|
* When set, named staff of this type are always paid this salary.
|
||||||
|
*/
|
||||||
|
enforcedSalary?: number | null;
|
||||||
|
id?: string | null;
|
||||||
|
}[]
|
||||||
|
| null;
|
||||||
/**
|
/**
|
||||||
* The app will use this type to determine what processes should run for this structure type.
|
* The app will use this type to determine what processes should run for this structure type.
|
||||||
*/
|
*/
|
||||||
|
|
@ -714,6 +802,32 @@ export interface Technology {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "labor-classifications".
|
||||||
|
*/
|
||||||
|
export interface LaborClassification {
|
||||||
|
id: number;
|
||||||
|
/**
|
||||||
|
* Display label for this labor trade (e.g. Mechanic).
|
||||||
|
*/
|
||||||
|
name: string;
|
||||||
|
/**
|
||||||
|
* Stable slug used to identify this classification (e.g. mechanic).
|
||||||
|
*/
|
||||||
|
key: string;
|
||||||
|
/**
|
||||||
|
* Prefills the wage-per-worker input in the hire dialog.
|
||||||
|
*/
|
||||||
|
defaultUnitSalary?: number | null;
|
||||||
|
description?: string | null;
|
||||||
|
/**
|
||||||
|
* How many workers of this classification are currently available to hire across the unit. Hiring consumes from this pool; releasing staff returns them.
|
||||||
|
*/
|
||||||
|
availableHeadcount?: number | 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` "assets".
|
* via the `definition` "assets".
|
||||||
|
|
@ -1640,6 +1754,29 @@ export interface GameNpc {
|
||||||
updatedAt: string;
|
updatedAt: string;
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "npc-staffing".
|
||||||
|
*/
|
||||||
|
export interface NpcStaffing {
|
||||||
|
id: number;
|
||||||
|
npc?: (number | null) | GameNpc;
|
||||||
|
structure: number | GameStructure;
|
||||||
|
positionType: 'labor' | 'administrative' | 'technical' | 'other';
|
||||||
|
positionTitle: string;
|
||||||
|
/**
|
||||||
|
* Workers in this block; always 1 for named staff
|
||||||
|
*/
|
||||||
|
headcount?: number | null;
|
||||||
|
laborClassification?: (number | null) | LaborClassification;
|
||||||
|
salary?: number | null;
|
||||||
|
status?: ('active' | 'terminated') | null;
|
||||||
|
hiredAt?: string | null;
|
||||||
|
terminatedAt?: string | null;
|
||||||
|
notes?: 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` "game-event-logs".
|
* via the `definition` "game-event-logs".
|
||||||
|
|
@ -1663,6 +1800,7 @@ export interface GameEventLog {
|
||||||
| 'game-structures'
|
| 'game-structures'
|
||||||
| 'game-vehicles'
|
| 'game-vehicles'
|
||||||
| 'game-npcs'
|
| 'game-npcs'
|
||||||
|
| 'npc-staffing'
|
||||||
| 'structures'
|
| 'structures'
|
||||||
| 'resources'
|
| 'resources'
|
||||||
| 'assets'
|
| 'assets'
|
||||||
|
|
@ -2161,6 +2299,10 @@ export interface Mission {
|
||||||
* When the attendance roll-call was first posted to Discord (managed by the bot).
|
* When the attendance roll-call was first posted to Discord (managed by the bot).
|
||||||
*/
|
*/
|
||||||
discordAttendanceSentAt?: string | null;
|
discordAttendanceSentAt?: string | null;
|
||||||
|
/**
|
||||||
|
* When evaluation reminder DMs were sent for this mission (managed by the bot, one-shot).
|
||||||
|
*/
|
||||||
|
evaluationRemindersSentAt?: string | null;
|
||||||
/**
|
/**
|
||||||
* Background image for the mission page hero header. Renders translucent with a top-to-bottom fade to black. Recommended aspect ratio: 16:9 or wider.
|
* Background image for the mission page hero header. Renders translucent with a top-to-bottom fade to black. Recommended aspect ratio: 16:9 or wider.
|
||||||
*/
|
*/
|
||||||
|
|
@ -3377,6 +3519,14 @@ export interface PayloadLockedDocument {
|
||||||
relationTo: 'game-npcs';
|
relationTo: 'game-npcs';
|
||||||
value: number | GameNpc;
|
value: number | GameNpc;
|
||||||
} | null)
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'npc-staffing';
|
||||||
|
value: number | NpcStaffing;
|
||||||
|
} | null)
|
||||||
|
| ({
|
||||||
|
relationTo: 'labor-classifications';
|
||||||
|
value: number | LaborClassification;
|
||||||
|
} | null)
|
||||||
| ({
|
| ({
|
||||||
relationTo: 'game-event-logs';
|
relationTo: 'game-event-logs';
|
||||||
value: number | GameEventLog;
|
value: number | GameEventLog;
|
||||||
|
|
@ -3654,6 +3804,24 @@ export interface GameStructuresSelect<T extends boolean = true> {
|
||||||
name?: T;
|
name?: T;
|
||||||
type?: T;
|
type?: T;
|
||||||
faction?: T;
|
faction?: T;
|
||||||
|
maintenanceCost?: T;
|
||||||
|
laborRequirements?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
classification?: T;
|
||||||
|
requiredHeadcount?: T;
|
||||||
|
maxHeadcount?: T;
|
||||||
|
enforcedSalary?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
|
staffPositions?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
positionType?: T;
|
||||||
|
max?: T;
|
||||||
|
enforcedSalary?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
coordinates?: T;
|
coordinates?: T;
|
||||||
storedResources?:
|
storedResources?:
|
||||||
| T
|
| T
|
||||||
|
|
@ -3735,6 +3903,38 @@ export interface GameNpcsSelect<T extends boolean = true> {
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "npc-staffing_select".
|
||||||
|
*/
|
||||||
|
export interface NpcStaffingSelect<T extends boolean = true> {
|
||||||
|
npc?: T;
|
||||||
|
structure?: T;
|
||||||
|
positionType?: T;
|
||||||
|
positionTitle?: T;
|
||||||
|
headcount?: T;
|
||||||
|
laborClassification?: T;
|
||||||
|
salary?: T;
|
||||||
|
status?: T;
|
||||||
|
hiredAt?: T;
|
||||||
|
terminatedAt?: T;
|
||||||
|
notes?: T;
|
||||||
|
updatedAt?: T;
|
||||||
|
createdAt?: T;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* This interface was referenced by `Config`'s JSON-Schema
|
||||||
|
* via the `definition` "labor-classifications_select".
|
||||||
|
*/
|
||||||
|
export interface LaborClassificationsSelect<T extends boolean = true> {
|
||||||
|
name?: T;
|
||||||
|
key?: T;
|
||||||
|
defaultUnitSalary?: T;
|
||||||
|
description?: T;
|
||||||
|
availableHeadcount?: 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".
|
||||||
|
|
@ -4072,6 +4272,7 @@ export interface MissionsSelect<T extends boolean = true> {
|
||||||
discordMessageId?: T;
|
discordMessageId?: T;
|
||||||
discordAttendanceHash?: T;
|
discordAttendanceHash?: T;
|
||||||
discordAttendanceSentAt?: T;
|
discordAttendanceSentAt?: T;
|
||||||
|
evaluationRemindersSentAt?: T;
|
||||||
coverImage?: T;
|
coverImage?: T;
|
||||||
classification?:
|
classification?:
|
||||||
| T
|
| T
|
||||||
|
|
@ -4527,6 +4728,24 @@ export interface StructuresSelect<T extends boolean = true> {
|
||||||
id?: T;
|
id?: T;
|
||||||
};
|
};
|
||||||
sellPrice?: T;
|
sellPrice?: T;
|
||||||
|
maintenanceCost?: T;
|
||||||
|
laborRequirements?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
classification?: T;
|
||||||
|
requiredHeadcount?: T;
|
||||||
|
maxHeadcount?: T;
|
||||||
|
enforcedSalary?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
|
staffPositions?:
|
||||||
|
| T
|
||||||
|
| {
|
||||||
|
positionType?: T;
|
||||||
|
max?: T;
|
||||||
|
enforcedSalary?: T;
|
||||||
|
id?: T;
|
||||||
|
};
|
||||||
functionType?: T;
|
functionType?: T;
|
||||||
canProduce?: T;
|
canProduce?: T;
|
||||||
autoGeneratedResources?:
|
autoGeneratedResources?:
|
||||||
|
|
@ -5101,6 +5320,26 @@ export interface GameRule {
|
||||||
* The base currency ("gold standard") used by all factions to pay for goods and services.
|
* The base currency ("gold standard") used by all factions to pay for goods and services.
|
||||||
*/
|
*/
|
||||||
mainCurrency: number | Resource;
|
mainCurrency: number | Resource;
|
||||||
|
/**
|
||||||
|
* General display name for the currency, e.g. "credit". Used when singular or plural names are not set.
|
||||||
|
*/
|
||||||
|
currencyName?: string | null;
|
||||||
|
/**
|
||||||
|
* Optional symbol prefixed to amounts, e.g. "¢" or "$".
|
||||||
|
*/
|
||||||
|
currencySymbol?: string | null;
|
||||||
|
/**
|
||||||
|
* Singular amount label, e.g. "credit".
|
||||||
|
*/
|
||||||
|
currencySingular?: string | null;
|
||||||
|
/**
|
||||||
|
* Plural amount label, e.g. "credits".
|
||||||
|
*/
|
||||||
|
currencyPlural?: string | null;
|
||||||
|
/**
|
||||||
|
* Optional subunit name for future fractional displays, e.g. "cent". This does not affect stored values.
|
||||||
|
*/
|
||||||
|
currencyDenomination?: string | null;
|
||||||
/**
|
/**
|
||||||
* Assignment(s) considered unit command. Members and leaders of these assignments get elevated access to draft missions and other restricted content.
|
* Assignment(s) considered unit command. Members and leaders of these assignments get elevated access to draft missions and other restricted content.
|
||||||
*/
|
*/
|
||||||
|
|
@ -5125,6 +5364,14 @@ export interface GameRule {
|
||||||
* Height of each member's personal locker grid, in cells. Applies to newly provisioned lockers.
|
* Height of each member's personal locker grid, in cells. Applies to newly provisioned lockers.
|
||||||
*/
|
*/
|
||||||
lockerGridHeight?: number | null;
|
lockerGridHeight?: number | null;
|
||||||
|
/**
|
||||||
|
* When off, logistics officers cannot hire staff anywhere (both labor crews and named NPC staff).
|
||||||
|
*/
|
||||||
|
staffHiringEnabled?: boolean | null;
|
||||||
|
/**
|
||||||
|
* Message shown to logistics officers when hiring is disabled, e.g. explaining the in-universe reason.
|
||||||
|
*/
|
||||||
|
staffHiringDisabledMessage?: string | null;
|
||||||
updatedAt?: string | null;
|
updatedAt?: string | null;
|
||||||
createdAt?: string | null;
|
createdAt?: string | null;
|
||||||
}
|
}
|
||||||
|
|
@ -5193,12 +5440,19 @@ export interface Shim {
|
||||||
*/
|
*/
|
||||||
export interface GameRulesSelect<T extends boolean = true> {
|
export interface GameRulesSelect<T extends boolean = true> {
|
||||||
mainCurrency?: T;
|
mainCurrency?: T;
|
||||||
|
currencyName?: T;
|
||||||
|
currencySymbol?: T;
|
||||||
|
currencySingular?: T;
|
||||||
|
currencyPlural?: T;
|
||||||
|
currencyDenomination?: T;
|
||||||
commandAssignments?: T;
|
commandAssignments?: T;
|
||||||
intelAssignments?: T;
|
intelAssignments?: T;
|
||||||
proximityThreshold?: T;
|
proximityThreshold?: T;
|
||||||
gameTickIntervalMinutes?: T;
|
gameTickIntervalMinutes?: T;
|
||||||
lockerGridWidth?: T;
|
lockerGridWidth?: T;
|
||||||
lockerGridHeight?: T;
|
lockerGridHeight?: T;
|
||||||
|
staffHiringEnabled?: T;
|
||||||
|
staffHiringDisabledMessage?: T;
|
||||||
updatedAt?: T;
|
updatedAt?: T;
|
||||||
createdAt?: T;
|
createdAt?: T;
|
||||||
globalType?: T;
|
globalType?: T;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue