UNPKG

@paroicms/connector

Version:

An API to help build management tools for ParoiCMS instances

200 lines (175 loc) 4.82 kB
export type JtConfiguration = JtSingleSiteConfiguration | JtMultisiteConfiguration; export interface JtConfigurationBase { /** * @deprecated Move the sub-properties in the parent. */ thisServer?: JtDeprecatedThisServerConf; /** * It is required except if the legacy `thisServer` is still used. */ port?: number; hostname?: string; /** * Default is `"http"`. */ publicProtocol?: "http" | "https"; publicPort?: number; /** * @deprecated Use adminUiPort instead. */ boPort?: number; adminUiPort?: number; allowRobots: boolean; enableCache?: boolean; immutableAssets?: boolean; /** * For example: `"14d"`. */ cacheTimeToIdle?: string | "disabled" | "infinite"; clearCacheAfterStart?: boolean; clearImageCacheAfterStart?: boolean; /** * @deprecated Replace `log.level` by `logLevel`, and `log.file` by `logFile`. */ log?: JtLogConf; logLevel?: "silent" | "error" | "warn" | "info" | "stats" | "debug" | "trace"; /** * Omit for stdout. */ logFile?: string; graphqlDevTools?: boolean; generateMissingDatabases?: boolean; googleAuth?: JtGoogleAuthConf; /** @deprecated Use "@paroicms/send-mail-aws-ses-plugin" configuration instead */ awsSesMail?: JtDeprecatedAwsSesMailConf; /** @deprecated Use "@paroicms/contact-form-plugin" configuration instead */ googleRecaptcha?: JtDeprecatedGoogleRecaptchaConf; imageProcessor?: JtImageProcessorConf | JtLegacyImageProcessorConf; devAccount?: JtDevAccountConf; platformAdminAccounts?: JtPlatformAdminAccountConf[]; plugins?: JtPluginStaticConfiguration[] | JtDeprecatedPluginConfigurations; httpRedirections?: JtHttpRedirection[]; } export interface JtHttpRedirection { fromFqdn: string; to: string; mapPaths?: { [fromRegex: string]: string; }; preservePath?: boolean; } export interface JtSingleSiteConfiguration extends JtConfigurationBase { singleSite: JtSingleSiteConf; } export interface JtMultisiteConfiguration extends JtConfigurationBase { platform: { dataDir: string; }; sitePacks: JtSitePackOrLegacyConf[]; } export interface JtDeprecatedThisServerConf { port: number; publicPort?: number; boPublicPort?: number; hostName?: string | null; https: boolean; } export interface JtLogConf { level: "silent" | "error" | "warn" | "info" | "stats" | "debug" | "trace"; /** * Omit for stdout. */ file?: string; } export interface JtSingleSiteConf { siteDir: string; dataDir: string; cacheDir: string; backupDir: string; fqdn: string; redirectWww?: boolean; /* Default value is `true`. */ trusted?: boolean; } export type JtSitePackOrLegacyConf = | JtSitePackConf | JtLegacyFqdnSitePackConf | JtLegacySubDomainSitePackConf; export type JtSitePackConf = JtFqdnSitePackConf | JtSubDomainSitePackConf; export interface JtSitePackConfBase { packName: string; sitesDir?: string; dataDir: string; cacheDir: string; backupDir: string; redirectWww?: boolean; /* Default value is `true`. */ trusted?: boolean; } export interface JtFqdnSitePackConf extends JtSitePackConfBase { serveOn: "fqdn"; } export interface JtSubDomainSitePackConf extends JtSitePackConfBase { serveOn: "subDomain"; parentDomain: string; } export interface JtLegacyFqdnSitePackConf extends JtSitePackConfBase { /** @deprecated Renamed to `serveOn` */ serveAs: "fqdn"; } export interface JtLegacySubDomainSitePackConf extends JtSitePackConfBase { /** @deprecated Renamed to `serveOn` */ serveAs: "subDomain"; parentDomain: string; } export interface JtGoogleAuthConf { disabled?: boolean; fqdn: string; clientId: string; clientSecret: string; } /** @deprecated Use "@paroicms/send-mail-aws-ses-plugin" configuration instead */ export interface JtDeprecatedAwsSesMailConf { disabled?: boolean; from: string; accessKeyId: string; secretAccessKey: string; region: string; } /** @deprecated Use "@paroicms/contact-form-plugin" configuration instead */ export interface JtDeprecatedGoogleRecaptchaConf { disabled?: boolean; siteKey: string; secretKey: string; } export interface JtImageProcessorConf { cpuCoresPerFile?: number; allowConcurrency?: boolean; } export interface JtLegacyImageProcessorConf { cpuCoresPerFile?: number; oneSharpAtATime?: boolean; } export interface JtDevAccountConf { email: string; name: string; password: string; } export interface JtPlatformAdminAccountConf { email: string; name: string; } export interface JtPluginStaticConfiguration { name: string; disabled?: boolean; platform?: boolean; configuration?: { [key: string]: unknown; }; } /** @deprecated Use JtPluginConfiguration[] instead */ export interface JtDeprecatedPluginConfigurations { [pluginName: string]: { [key: string]: unknown; }; }