Orion, Orion Unit, Configuration (#40)

* Refactoring

* Better docs

* Bump

* ESLint standard

* Fix

* Bumo

* VerboseOrionUnitConfig to types

* Docs improvements

* Docs improvements. Orion default env
This commit is contained in:
Aleksandr Kraiz
2023-02-08 14:51:58 +04:00
committed by GitHub
parent bf33fbe4f0
commit b2f3cdf5fb
31 changed files with 4386 additions and 2816 deletions

View File

@@ -1,18 +1,34 @@
import { z } from 'zod';
import { SupportedChainId } from '../../types';
export const pureEnvNetworksSchema = z.object({
api: z.string(),
services: z.object({
blockchain: z.object({
http: z.string(),
}),
aggregator: z.object({
http: z.string(),
ws: z.string(),
}),
priceFeed: z.object({
all: z.string(),
}),
}),
rpc: z.string().optional(),
liquidityMigratorAddress: z.string().optional(),
});
export const pureEnvPayloadSchema = z.object({
analyticsAPI: z.string().url(),
referralAPI: z.string().url(),
networks: z.record(
z.nativeEnum(SupportedChainId),
z.object({
api: z.string(),
rpc: z.string().optional(),
liquidityMigratorAddress: z.string().optional(),
}),
pureEnvNetworksSchema
),
});
export const pureEnvSchema = z.record(
z.string(),
z.enum(['production', 'staging', 'testing']).or(z.string()),
pureEnvPayloadSchema,
);