Skip to content

schemas/config

type StudioCMSConfig = typeof StudioCMSOptionsSchema._output;

Defined in: studiocms/packages/studiocms/src/schemas/config/index.ts:137^


type StudioCMSOptions = typeof StudioCMSOptionsSchema._input;

Defined in: studiocms/packages/studiocms/src/schemas/config/index.ts:136^

const StudioCMSOptionsSchema: ZodDefault<ZodOptional<ZodObject<{
componentRegistry: ZodOptional<ZodRecord<ZodString, ZodString>>;
dbStartPage: ZodDefault<ZodOptional<ZodBoolean>>;
features: ZodDefault<ZodOptional<ZodObject<{
authConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>;
dashboardConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>;
developerConfig: ZodDefault<ZodOptional<ZodObject<..., ..., ..., ..., ...>>>;
injectQuickActionsMenu: ZodDefault<ZodOptional<ZodBoolean>>;
preferredImageService: ZodOptional<ZodString>;
robotsTXT: ZodDefault<ZodOptional<ZodUnion<...>>>;
sdk: ZodEffects<ZodDefault<ZodOptional<...>>, {
cacheConfig: {
enabled: ...;
lifetime: ...;
};
},
| undefined
| boolean
| {
cacheConfig: ...;
}>;
}, "strip", ZodTypeAny, {
authConfig: {
enabled: boolean;
providers: {
usernameAndPassword: boolean;
usernameAndPasswordConfig: {
allowUserRegistration: ...;
};
};
};
dashboardConfig: {
dashboardEnabled: boolean;
dashboardRouteOverride: string;
faviconURL: string;
inject404Route: boolean;
versionCheck: boolean;
};
developerConfig: {
demoMode: | false
| {
password: ...;
username: ...;
};
};
injectQuickActionsMenu: boolean;
preferredImageService: string;
robotsTXT: | boolean
| {
host: ... | ... | ... | ...;
policy: ... | ...;
sitemap: ... | ... | ... | ... | ...;
};
sdk: {
cacheConfig: {
enabled: boolean;
lifetime: number;
};
};
}, {
authConfig: {
enabled: ... | ... | ...;
providers: ... | ...;
};
dashboardConfig: {
dashboardEnabled: ... | ... | ...;
dashboardRouteOverride: ... | ...;
faviconURL: ... | ...;
inject404Route: ... | ... | ...;
versionCheck: ... | ... | ...;
};
developerConfig: {
demoMode: ... | ... | ...;
};
injectQuickActionsMenu: boolean;
preferredImageService: string;
robotsTXT: | boolean
| {
host: ... | ... | ... | ...;
policy: ... | ...;
sitemap: ... | ... | ... | ... | ...;
};
sdk: | boolean
| {
cacheConfig: ... | ... | ... | ...;
};
}>>>;
locale: ZodDefault<ZodOptional<ZodObject<{
dateLocale: ZodDefault<ZodOptional<ZodString>>;
dateTimeFormat: ZodDefault<ZodOptional<ZodType<..., ..., ...>>>;
}, "strip", ZodTypeAny, {
dateLocale: string;
dateTimeFormat: DateTimeFormatOptions;
}, {
dateLocale: string;
dateTimeFormat: DateTimeFormatOptions;
}>>>;
logLevel: ZodDefault<ZodOptional<ZodUnion<[ZodLiteral<"All">, ZodLiteral<"Fatal">, ZodLiteral<"Error">, ZodLiteral<"Warning">, ZodLiteral<"Info">, ZodLiteral<"Debug">, ZodLiteral<"Trace">, ZodLiteral<"None">]>>>;
plugins: ZodOptional<ZodType<StudioCMSPlugin[], ZodTypeDef, StudioCMSPlugin[]>>;
verbose: ZodDefault<ZodOptional<ZodBoolean>>;
}, "strip", ZodTypeAny, {
componentRegistry: Record<string, string>;
dbStartPage: boolean;
features: {
authConfig: {
enabled: boolean;
providers: {
usernameAndPassword: boolean;
usernameAndPasswordConfig: {
allowUserRegistration: boolean;
};
};
};
dashboardConfig: {
dashboardEnabled: boolean;
dashboardRouteOverride: string;
faviconURL: string;
inject404Route: boolean;
versionCheck: boolean;
};
developerConfig: {
demoMode: | false
| {
password: string;
username: string;
};
};
injectQuickActionsMenu: boolean;
preferredImageService: string;
robotsTXT: | boolean
| {
host: string | boolean;
policy: {
allow: ... | ... | ...;
cleanParam: ... | ... | ...;
crawlDelay: ... | ...;
disallow: ... | ... | ...;
userAgent: | ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...
| ...;
}[];
sitemap: string | boolean | string[];
};
sdk: {
cacheConfig: {
enabled: boolean;
lifetime: number;
};
};
};
locale: {
dateLocale: string;
dateTimeFormat: DateTimeFormatOptions;
};
logLevel: "All" | "Fatal" | "Error" | "Warning" | "Info" | "Debug" | "Trace" | "None";
plugins: StudioCMSPlugin[];
verbose: boolean;
}, {
componentRegistry: Record<string, string>;
dbStartPage: boolean;
features: {
authConfig: {
enabled: boolean;
providers: {
usernameAndPassword: ... | ... | ...;
usernameAndPasswordConfig: ... | ...;
};
};
dashboardConfig: {
dashboardEnabled: boolean;
dashboardRouteOverride: string;
faviconURL: string;
inject404Route: boolean;
versionCheck: boolean;
};
developerConfig: {
demoMode: | false
| {
password: string;
username: string;
};
};
injectQuickActionsMenu: boolean;
preferredImageService: string;
robotsTXT: | boolean
| {
host: string | boolean;
policy: {
allow: ...;
cleanParam: ...;
crawlDelay: ...;
disallow: ...;
userAgent: ...;
}[];
sitemap: string | boolean | string[];
};
sdk: | boolean
| {
cacheConfig: | boolean
| {
lifetime: ... | ...;
};
};
};
locale: {
dateLocale: string;
dateTimeFormat: DateTimeFormatOptions;
};
logLevel: "All" | "Fatal" | "Error" | "Warning" | "Info" | "Debug" | "Trace" | "None";
plugins: StudioCMSPlugin[];
verbose: boolean;
}>>>;

Defined in: studiocms/packages/studiocms/src/schemas/config/index.ts:14^

Re-exports dashboardConfigSchema