feat: RCON API transport, full furnidata translation with LibreTranslate fallback, remove organize feature, bump per-page limit to 500
- Add EMULATOR_MODE=api option with HTTP transport mirroring RCON payload - buildLocalizedFurniDataFiles now falls back to LibreTranslate for customs (incl. pl/ru/ar/ja) - Remove Organiseer import button from studio and Reorganize Catalog from import page - Delete organize API route and PUT handler; remove organizeCatalogAll from catalog-repair.ts - Increase imported-furni list perPage from 50 to 500
This commit is contained in:
1 parent
5668493485
commit
85b5792d40
8 files changed
+146
-768
No files matched your search
+11
@@ -45,6 +45,17 @@ const schema = z
|
||||
RCON_PORT: z.coerce.number().int().positive().default(3001),
|
||||
RCON_TIMEOUT_MS: z.coerce.number().int().positive().default(10_000),
|
||||
RCON_MAX_RETRIES: z.coerce.number().int().positive().default(3),
|
||||
// Emulator transport selection. "rcon" uses the raw-JSON TCP protocol
|
||||
// above; "api" uses an HTTP endpoint that accepts the same
|
||||
// `{"key":...,"data":...}` payload (for emulators without RCON).
|
||||
EMULATOR_MODE: z.enum(["rcon", "api"]).default("rcon"),
|
||||
// HTTP endpoint used when EMULATOR_MODE=api. Required in that mode.
|
||||
EMULATOR_API_URL: z.string().url().optional(),
|
||||
// Optional bearer/key auth for the API transport. When set, it is sent
|
||||
// as `${EMULATOR_API_KEY_HEADER}: ${EMULATOR_API_KEY}` (default header
|
||||
// "Authorization").
|
||||
EMULATOR_API_KEY: z.string().optional(),
|
||||
EMULATOR_API_KEY_HEADER: z.string().default("Authorization"),
|
||||
// NextAuth v5 reads AUTH_SECRET itself; declared here for documentation/typing.
|
||||
AUTH_SECRET: z.string().min(1).optional(),
|
||||
// Laravel APP_KEY (base64:...) — needed to read existing 2FA secrets.
|
||||
|
||||
Reference in new issue
Block a user