UNPKG

@softvisio/core

Version:
104 lines (86 loc) 2.9 kB
- $id: config type: object properties: defaultVersion: { type: integer, minimum: 1 } avatarUrl: { type: string, format: kebab-case-absolute-folder-path } avatarMaxAge: { type: string, format: interval } forceDefaultAvatar: { type: boolean } defaultGravatar: anyOf: - type: "null" - enum: [mp, identicon, monsterid, wavatar, retro, robohash] # frontend frontendUrl: { type: string, format: url } frontend: type: object properties: location: { type: string, format: kebab-case-root-or-absolute-file-path } maxParallelCallsPerClient: anyOf: - type: "null" - { type: integer, minimum: 1 } maxApiRequestBodySize: { type: string, format: digital-size } idleTimeout: { type: string, format: interval } sendPingsAutomatically: { type: boolean } compress: anyOf: - type: "null" # use server default - type: boolean - { type: integer, minimum: 0 } additionalProperties: false required: [location, maxParallelCallsPerClient, maxApiRequestBodySize, idleTimeout, sendPingsAutomatically, compress] # users signupEnabled: { type: boolean } # tokens apiTokensCacheMaxSize: { type: integer, minimum: 1 } # sessions sessionsCacheMaxSize: { type: integer, minimum: 1 } sessionMaxAge: { type: string, format: interval } # ms authorizedSessionMaxAge: { type: string, format: interval } # oauth oauth: type: object properties: google: anyOf: - type: "null" - type: object properties: clientId: { type: ["null", string] } clientSecret: { type: ["null", string] } additionalProperties: false required: [clientId, clientSecret] facebook: anyOf: - type: "null" - type: object properties: clientId: { type: ["null", string] } clientSecret: { type: ["null", string] } additionalProperties: false required: [clientId, clientSecret] github: anyOf: - type: "null" - type: object properties: clientId: { type: ["null", string] } clientSecret: { type: ["null", string] } required: [clientId, clientSecret] additionalProperties: false additionalProperties: false required: [google, facebook, github] additionalProperties: false required: - defaultVersion - avatarUrl - avatarMaxAge - forceDefaultAvatar - frontendUrl - frontend - signupEnabled - apiTokensCacheMaxSize - sessionsCacheMaxSize - sessionMaxAge - authorizedSessionMaxAge - oauth