payload 3.0.0-beta.32 → 3.0.0-beta.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/loader/ignores.d.ts +2 -0
- package/dist/bin/loader/ignores.d.ts.map +1 -0
- package/dist/bin/loader/ignores.js +5 -0
- package/dist/bin/loader/ignores.js.map +1 -0
- package/dist/bin/loader/index.d.ts.map +1 -1
- package/dist/bin/loader/index.js +10 -6
- package/dist/bin/loader/index.js.map +1 -1
- package/dist/collections/config/client.d.ts +21 -0
- package/dist/collections/config/client.d.ts.map +1 -1
- package/dist/collections/config/schema.d.ts.map +1 -1
- package/dist/collections/config/schema.js +5 -1
- package/dist/collections/config/schema.js.map +1 -1
- package/dist/collections/config/types.d.ts +5 -1
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +1 -0
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +5 -2
- package/dist/config/schema.js.map +1 -1
- package/dist/config/shared/openGraphSchema.d.ts +3 -0
- package/dist/config/shared/openGraphSchema.d.ts.map +1 -0
- package/dist/config/shared/openGraphSchema.js +16 -0
- package/dist/config/shared/openGraphSchema.js.map +1 -0
- package/dist/config/types.d.ts +69 -21
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/globals/config/schema.d.ts.map +1 -1
- package/dist/globals/config/schema.js +5 -0
- package/dist/globals/config/schema.js.map +1 -1
- package/dist/globals/config/types.d.ts +5 -1
- package/dist/globals/config/types.d.ts.map +1 -1
- package/dist/globals/config/types.js.map +1 -1
- package/dist/uploads/getExternalFile.js +1 -1
- package/dist/uploads/getExternalFile.js.map +1 -1
- package/dist/uploads/types.d.ts +0 -3
- package/dist/uploads/types.d.ts.map +1 -1
- package/dist/uploads/types.js.map +1 -1
- package/dist/utilities/isReactComponent.d.ts.map +1 -1
- package/dist/utilities/isReactComponent.js +23 -4
- package/dist/utilities/isReactComponent.js.map +1 -1
- package/package.json +3 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ignores.d.ts","sourceRoot":"","sources":["../../../src/bin/loader/ignores.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAAkB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/bin/loader/ignores.ts"],"sourcesContent":["export const specifiersToIgnore = ['server-only']\n"],"names":["specifiersToIgnore"],"rangeMappings":";;","mappings":"AAAA,OAAO,MAAMA,qBAAqB;IAAC;CAAc,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/loader/index.ts"],"names":[],"mappings":"AAUA,UAAU,cAAc;IACtB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B;AACD,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;CACZ;AACD,KAAK,WAAW,GAAG;IACjB,SAAS,EAAE,MAAM;IACjB,OAAO,CAAC,EAAE,cAAc;IACxB,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,aAAa,CAAC;CAC/D,CAAA;AACD,KAAK,SAAS,GAAG,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAA;AA+B3E,eAAO,MAAM,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/loader/index.ts"],"names":[],"mappings":"AAUA,UAAU,cAAc;IACtB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B;AACD,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;CACZ;AACD,KAAK,WAAW,GAAG;IACjB,SAAS,EAAE,MAAM;IACjB,OAAO,CAAC,EAAE,cAAc;IACxB,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,aAAa,CAAC;CAC/D,CAAA;AACD,KAAK,SAAS,GAAG,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAA;AA+B3E,eAAO,MAAM,OAAO,EAAE,SAyErB,CAAA;AAED,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAA;CAClC;AACD,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,MAAM,EAAE,WAAW,GAAG,iBAAiB,GAAG,UAAU,GAAG,MAAM,CAAA;CAC9D;AACD,KAAK,QAAQ,GAAG;IACd,GAAG,EAAE,MAAM;IACX,OAAO,EAAE,WAAW;IACpB,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,UAAU,CAAC;CACtD,CAAA;AACD,KAAK,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;AAOlE,eAAO,MAAM,IAAI,EAAE,MAuBlB,CAAA"}
|
package/dist/bin/loader/index.js
CHANGED
|
@@ -3,6 +3,7 @@ import ts from 'typescript';
|
|
|
3
3
|
import { fileURLToPath, pathToFileURL } from 'url';
|
|
4
4
|
import { CLIENT_EXTENSIONS } from './clientExtensions.js';
|
|
5
5
|
import { compile } from './compile.js';
|
|
6
|
+
import { specifiersToIgnore } from './ignores.js';
|
|
6
7
|
import { resolveOriginalPath } from './resolveOriginalPath.js';
|
|
7
8
|
const locatedConfig = getTsconfig();
|
|
8
9
|
const tsconfig = locatedConfig.config.compilerOptions;
|
|
@@ -28,15 +29,18 @@ const TS_EXTENSIONS = [
|
|
|
28
29
|
export const resolve = async (specifier, context, nextResolve)=>{
|
|
29
30
|
const isTS = TS_EXTENSIONS.some((ext)=>specifier.endsWith(ext));
|
|
30
31
|
const isClient = CLIENT_EXTENSIONS.some((ext)=>specifier.endsWith(ext));
|
|
31
|
-
|
|
32
|
+
const shouldIgnore = specifiersToIgnore.includes(specifier);
|
|
33
|
+
// If it's a client file, or a file to be ignored is resolved,
|
|
34
|
+
// we'll set `format: 'ignore'`
|
|
32
35
|
// and short circuit, so the load step
|
|
33
36
|
// will return source code of empty object
|
|
34
|
-
if (isClient) {
|
|
35
|
-
const nextResult = await nextResolve(specifier, context, nextResolve);
|
|
37
|
+
if (isClient || shouldIgnore) {
|
|
36
38
|
return {
|
|
37
|
-
format: '
|
|
39
|
+
format: 'ignore',
|
|
38
40
|
shortCircuit: true,
|
|
39
|
-
|
|
41
|
+
// No need to resolve the URL using nextResolve. We ignore client files anyway.
|
|
42
|
+
// Additionally, nextResolve throws an error if the URL is a TS path, so we'd have to use TypeScript's resolveModuleName to resolve the URL, which is unnecessary
|
|
43
|
+
url: 'file:///'
|
|
40
44
|
};
|
|
41
45
|
}
|
|
42
46
|
// entrypoint
|
|
@@ -86,7 +90,7 @@ const swcOptions = {
|
|
|
86
90
|
paths: undefined
|
|
87
91
|
};
|
|
88
92
|
export const load = async (url, context, nextLoad)=>{
|
|
89
|
-
if (context.format === '
|
|
93
|
+
if (context.format === 'ignore') {
|
|
90
94
|
const rawSource = 'export default {}';
|
|
91
95
|
return {
|
|
92
96
|
format: 'module',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/bin/loader/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/unbound-method */\nimport { getTsconfig } from 'get-tsconfig'\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/bin/loader/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/unbound-method */\nimport { getTsconfig } from 'get-tsconfig'\nimport ts from 'typescript'\nimport { fileURLToPath, pathToFileURL } from 'url'\n\nimport { CLIENT_EXTENSIONS } from './clientExtensions.js'\nimport { compile } from './compile.js'\nimport { specifiersToIgnore } from './ignores.js'\nimport { resolveOriginalPath } from './resolveOriginalPath.js'\n\ninterface ResolveContext {\n conditions: string[]\n parentURL: string | undefined\n}\ninterface ResolveResult {\n format?: string\n shortCircuit?: boolean\n url: string\n}\ntype ResolveArgs = [\n specifier: string,\n context?: ResolveContext,\n nextResolve?: (...args: ResolveArgs) => Promise<ResolveResult>,\n]\ntype ResolveFn = (...args: Required<ResolveArgs>) => Promise<ResolveResult>\n\nconst locatedConfig = getTsconfig()\nconst tsconfig = locatedConfig.config.compilerOptions as unknown as ts.CompilerOptions\n\n// Ensure baseUrl is set in order to support paths\nif (!tsconfig.baseUrl) {\n tsconfig.baseUrl = '.'\n}\n\n// Don't resolve d.ts files, because we aren't type-checking\ntsconfig.noDtsResolution = true\ntsconfig.module = ts.ModuleKind.ESNext\ntsconfig.moduleResolution = ts.ModuleResolutionKind.NodeNext\n\nconst moduleResolutionCache = ts.createModuleResolutionCache(\n ts.sys.getCurrentDirectory(),\n (x) => x,\n tsconfig,\n)\nconst host: ts.ModuleResolutionHost = {\n fileExists: ts.sys.fileExists,\n readFile: ts.sys.readFile,\n}\nconst TS_EXTENSIONS: string[] = [\n ts.Extension.Ts,\n ts.Extension.Tsx,\n ts.Extension.Dts,\n ts.Extension.Mts,\n]\n\nexport const resolve: ResolveFn = async (specifier, context, nextResolve) => {\n const isTS = TS_EXTENSIONS.some((ext) => specifier.endsWith(ext))\n const isClient = CLIENT_EXTENSIONS.some((ext) => specifier.endsWith(ext))\n const shouldIgnore = specifiersToIgnore.includes(specifier)\n\n // If it's a client file, or a file to be ignored is resolved,\n // we'll set `format: 'ignore'`\n // and short circuit, so the load step\n // will return source code of empty object\n if (isClient || shouldIgnore) {\n return {\n format: 'ignore',\n shortCircuit: true,\n // No need to resolve the URL using nextResolve. We ignore client files anyway.\n // Additionally, nextResolve throws an error if the URL is a TS path, so we'd have to use TypeScript's resolveModuleName to resolve the URL, which is unnecessary\n url: 'file:///',\n }\n }\n\n // entrypoint\n if (!context.parentURL) {\n return {\n format: isTS ? 'ts' : undefined,\n shortCircuit: true,\n url: specifier,\n }\n }\n\n // Try and resolve normally\n // This could fail, so we need to swallow that error\n // and keep going\n let nextResult: ResolveResult\n\n if (!isTS) {\n try {\n nextResult = await nextResolve(specifier, context, nextResolve)\n } catch (_) {\n // swallow error\n }\n }\n\n if (nextResult) {\n const nextResultIsTS = TS_EXTENSIONS.some((ext) => nextResult.url.endsWith(ext))\n\n return {\n ...nextResult,\n format: nextResultIsTS ? 'ts' : nextResult.format,\n shortCircuit: true,\n }\n }\n\n const { resolvedModule } = ts.resolveModuleName(\n specifier,\n fileURLToPath(context.parentURL),\n tsconfig,\n host,\n moduleResolutionCache,\n )\n\n if (resolvedModule) {\n const resolvedIsTS = TS_EXTENSIONS.includes(resolvedModule.extension)\n\n return {\n format: resolvedIsTS ? 'ts' : undefined,\n shortCircuit: true,\n url: pathToFileURL(await resolveOriginalPath(resolvedModule.resolvedFileName)).href, // The typescript module resolver does not resolve to the original path, but to the symlinked path, if present. This can cause issues\n }\n }\n\n // import from local project to either:\n // - something TS couldn't resolve\n // - local project non-TS file\n return nextResolve(specifier, context, nextResolve)\n}\n\ninterface LoadContext {\n conditions: string[]\n format: null | string | undefined\n}\ninterface LoadResult {\n format: string\n shortCircuit?: boolean\n source: ArrayBuffer | SharedArrayBuffer | Uint8Array | string\n}\ntype LoadArgs = [\n url: string,\n context: LoadContext,\n nextLoad?: (...args: LoadArgs) => Promise<LoadResult>,\n]\ntype LoadFn = (...args: Required<LoadArgs>) => Promise<LoadResult>\n\nconst swcOptions = {\n ...tsconfig,\n baseUrl: undefined,\n paths: undefined,\n}\nexport const load: LoadFn = async (url, context, nextLoad) => {\n if (context.format === 'ignore') {\n const rawSource = 'export default {}'\n\n return {\n format: 'module',\n shortCircuit: true,\n source: rawSource,\n }\n }\n\n if (context.format === 'ts') {\n const { source } = await nextLoad(url, context)\n const code = typeof source === 'string' ? source : Buffer.from(source).toString()\n const compiled = await compile(code, fileURLToPath(url), swcOptions)\n return {\n format: 'module',\n shortCircuit: true,\n source: compiled,\n }\n } else {\n return nextLoad(url, context)\n }\n}\n"],"names":["getTsconfig","ts","fileURLToPath","pathToFileURL","CLIENT_EXTENSIONS","compile","specifiersToIgnore","resolveOriginalPath","locatedConfig","tsconfig","config","compilerOptions","baseUrl","noDtsResolution","module","ModuleKind","ESNext","moduleResolution","ModuleResolutionKind","NodeNext","moduleResolutionCache","createModuleResolutionCache","sys","getCurrentDirectory","x","host","fileExists","readFile","TS_EXTENSIONS","Extension","Ts","Tsx","Dts","Mts","resolve","specifier","context","nextResolve","isTS","some","ext","endsWith","isClient","shouldIgnore","includes","format","shortCircuit","url","parentURL","undefined","nextResult","_","nextResultIsTS","resolvedModule","resolveModuleName","resolvedIsTS","extension","resolvedFileName","href","swcOptions","paths","load","nextLoad","rawSource","source","code","Buffer","from","toString","compiled"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -261,6 +261,27 @@ export declare const createClientCollectionConfig: ({ collection, t, }: {
|
|
|
261
261
|
payload: import("../../index.js").Payload;
|
|
262
262
|
}) => string | Promise<string>);
|
|
263
263
|
};
|
|
264
|
+
meta: {
|
|
265
|
+
description: string;
|
|
266
|
+
openGraph: {
|
|
267
|
+
description: string;
|
|
268
|
+
images: {
|
|
269
|
+
alt: string;
|
|
270
|
+
height: string | number;
|
|
271
|
+
type: string;
|
|
272
|
+
url: string;
|
|
273
|
+
width: string | number;
|
|
274
|
+
} | {
|
|
275
|
+
alt: string;
|
|
276
|
+
height: string | number;
|
|
277
|
+
type: string;
|
|
278
|
+
url: string;
|
|
279
|
+
width: string | number;
|
|
280
|
+
}[];
|
|
281
|
+
siteName: string;
|
|
282
|
+
title: string;
|
|
283
|
+
};
|
|
284
|
+
};
|
|
264
285
|
pagination: {
|
|
265
286
|
defaultLimit: number;
|
|
266
287
|
limits: number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/collections/config/client.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAA;AAE/F,MAAM,MAAM,8BAA8B,GAAG,MAAM,IAAI,CACrD,yBAAyB,EACzB,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,OAAO,CAC5C,CAAA;AAED,MAAM,MAAM,mCAAmC,GAAG,MAAM,IAAI,CAC1D,yBAAyB,CAAC,OAAO,CAAC,EAClC,YAAY,GAAG,QAAQ,GAAG,SAAS,CACpC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,yBAAyB,EACzB,OAAO,GAAG,QAAQ,GAAG,8BAA8B,CACpD,GAAG;IACF,KAAK,EAAE,IAAI,CACT,yBAAyB,CAAC,OAAO,CAAC,EAClC,QAAQ,GAAG,aAAa,GAAG,mCAAmC,CAC/D,GAAG;QACF,WAAW,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,+BAA+B,CAAC,CAAA;KACvE,CAAA;IACD,MAAM,EAAE,iBAAiB,EAAE,CAAA;CAC5B,CAAA;AAED,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAI3D,eAAO,MAAM,4BAA4B,uBAGtC;IACD,UAAU,EAAE,yBAAyB,CAAA;IACrC,CAAC,EAAE,SAAS,CAAA;CACb
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/collections/config/client.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAA;AAE/F,MAAM,MAAM,8BAA8B,GAAG,MAAM,IAAI,CACrD,yBAAyB,EACzB,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,OAAO,CAC5C,CAAA;AAED,MAAM,MAAM,mCAAmC,GAAG,MAAM,IAAI,CAC1D,yBAAyB,CAAC,OAAO,CAAC,EAClC,YAAY,GAAG,QAAQ,GAAG,SAAS,CACpC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,yBAAyB,EACzB,OAAO,GAAG,QAAQ,GAAG,8BAA8B,CACpD,GAAG;IACF,KAAK,EAAE,IAAI,CACT,yBAAyB,CAAC,OAAO,CAAC,EAClC,QAAQ,GAAG,aAAa,GAAG,mCAAmC,CAC/D,GAAG;QACF,WAAW,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,+BAA+B,CAAC,CAAA;KACvE,CAAA;IACD,MAAM,EAAE,iBAAiB,EAAE,CAAA;CAC5B,CAAA;AAED,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAI3D,eAAO,MAAM,4BAA4B,uBAGtC;IACD,UAAU,EAAE,yBAAyB,CAAA;IACrC,CAAC,EAAE,SAAS,CAAA;CACb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiEA,CAAA;AAED,eAAO,MAAM,6BAA6B,wBAGvC;IACD,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,CAAC,EAAE,SAAS,CAAA;CACb,KAAG,sBAAsB,EACwD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/collections/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/collections/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAerB,QAAA,MAAM,gBAAgB,uBAuNpB,CAAA;AAEF,eAAe,gBAAgB,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import joi from 'joi';
|
|
2
2
|
import { endpointsSchema } from '../../config/schema.js';
|
|
3
3
|
import { componentSchema, customViewSchema, livePreviewSchema } from '../../config/shared/componentSchema.js';
|
|
4
|
+
import { openGraphSchema } from '../../config/shared/openGraphSchema.js';
|
|
4
5
|
const strategyBaseSchema = joi.object().keys({
|
|
5
6
|
logout: joi.boolean(),
|
|
6
7
|
refresh: joi.boolean()
|
|
@@ -57,6 +58,10 @@ const collectionSchema = joi.object().keys({
|
|
|
57
58
|
hideAPIURL: joi.bool(),
|
|
58
59
|
listSearchableFields: joi.array().items(joi.string()),
|
|
59
60
|
livePreview: joi.object(livePreviewSchema),
|
|
61
|
+
meta: joi.object({
|
|
62
|
+
description: joi.string(),
|
|
63
|
+
openGraph: openGraphSchema
|
|
64
|
+
}),
|
|
60
65
|
pagination: joi.object({
|
|
61
66
|
defaultLimit: joi.number(),
|
|
62
67
|
limits: joi.array().items(joi.number())
|
|
@@ -160,7 +165,6 @@ const collectionSchema = joi.object().keys({
|
|
|
160
165
|
withoutEnlargement: joi.bool()
|
|
161
166
|
}).allow(null),
|
|
162
167
|
staticDir: joi.string(),
|
|
163
|
-
staticOptions: joi.object(),
|
|
164
168
|
tempFileDir: joi.string(),
|
|
165
169
|
trimOptions: joi.alternatives().try(joi.object().keys({
|
|
166
170
|
format: joi.string(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/collections/config/schema.ts"],"sourcesContent":["import joi from 'joi'\n\nimport { endpointsSchema } from '../../config/schema.js'\nimport {\n componentSchema,\n customViewSchema,\n livePreviewSchema,\n} from '../../config/shared/componentSchema.js'\n\nconst strategyBaseSchema = joi.object().keys({\n logout: joi.boolean(),\n refresh: joi.boolean(),\n})\n\nconst collectionSchema = joi.object().keys({\n slug: joi.string().required(),\n access: joi.object({\n admin: joi.func(),\n create: joi.func(),\n delete: joi.func(),\n read: joi.func(),\n readVersions: joi.func(),\n unlock: joi.func(),\n update: joi.func(),\n }),\n admin: joi.object({\n components: joi.object({\n AfterList: joi.array().items(componentSchema),\n AfterListTable: joi.array().items(componentSchema),\n BeforeList: joi.array().items(componentSchema),\n BeforeListTable: joi.array().items(componentSchema),\n edit: joi.object({\n Description: componentSchema,\n PreviewButton: componentSchema,\n PublishButton: componentSchema,\n SaveButton: componentSchema,\n SaveDraftButton: componentSchema,\n }),\n views: joi.object({\n Edit: joi.alternatives().try(\n componentSchema,\n joi.object({\n API: joi.alternatives().try(componentSchema, customViewSchema),\n Default: joi.alternatives().try(componentSchema, customViewSchema),\n LivePreview: joi.alternatives().try(componentSchema, customViewSchema),\n Version: joi.alternatives().try(componentSchema, customViewSchema),\n Versions: joi.alternatives().try(componentSchema, customViewSchema),\n // Relationships\n // References\n }),\n ),\n List: joi.alternatives().try(\n componentSchema,\n joi.object({\n Component: componentSchema,\n actions: joi.array().items(componentSchema),\n }),\n ),\n }),\n }),\n custom: joi.object().pattern(joi.string(), joi.any()),\n defaultColumns: joi.array().items(joi.string()),\n description: joi\n .alternatives()\n .try(joi.func(), joi.object().pattern(joi.string(), [joi.string()]), joi.string()),\n enableRichTextLink: joi.boolean(),\n enableRichTextRelationship: joi.boolean(),\n group: joi.alternatives().try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n hidden: joi.alternatives().try(joi.boolean(), joi.func()),\n hideAPIURL: joi.bool(),\n listSearchableFields: joi.array().items(joi.string()),\n livePreview: joi.object(livePreviewSchema),\n pagination: joi.object({\n defaultLimit: joi.number(),\n limits: joi.array().items(joi.number()),\n }),\n preview: joi.func(),\n useAsTitle: joi.string(),\n }),\n auth: joi.alternatives().try(\n joi.object({\n cookies: joi.object().keys({\n domain: joi.string(),\n sameSite: joi.string(), // TODO: add further specificity with joi.xor\n secure: joi.boolean(),\n }),\n depth: joi.number(),\n disableLocalStrategy: joi.boolean().valid(true),\n forgotPassword: joi.object().keys({\n generateEmailHTML: joi.func(),\n generateEmailSubject: joi.func(),\n }),\n lockTime: joi.number(),\n maxLoginAttempts: joi.number(),\n removeTokenFromResponses: joi.boolean().valid(true),\n strategies: joi.array().items(\n joi.object().keys({\n name: joi.string().required(),\n authenticate: joi.func().required(),\n }),\n ),\n tokenExpiration: joi.number(),\n useAPIKey: joi.boolean(),\n verify: joi.alternatives().try(\n joi.boolean(),\n joi.object().keys({\n generateEmailHTML: joi.func(),\n generateEmailSubject: joi.func(),\n }),\n ),\n }),\n joi.boolean(),\n ),\n custom: joi.object().pattern(joi.string(), joi.any()),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n defaultSort: joi.string(),\n disableDuplicate: joi.bool(),\n endpoints: endpointsSchema,\n fields: joi.array(),\n graphQL: joi.alternatives().try(\n joi.object().keys({\n pluralName: joi.string(),\n singularName: joi.string(),\n }),\n joi.boolean(),\n ),\n hooks: joi.object({\n afterChange: joi.array().items(joi.func()),\n afterDelete: joi.array().items(joi.func()),\n afterForgotPassword: joi.array().items(joi.func()),\n afterLogin: joi.array().items(joi.func()),\n afterLogout: joi.array().items(joi.func()),\n afterMe: joi.array().items(joi.func()),\n afterOperation: joi.array().items(joi.func()),\n afterRead: joi.array().items(joi.func()),\n afterRefresh: joi.array().items(joi.func()),\n beforeChange: joi.array().items(joi.func()),\n beforeDelete: joi.array().items(joi.func()),\n beforeLogin: joi.array().items(joi.func()),\n beforeOperation: joi.array().items(joi.func()),\n beforeRead: joi.array().items(joi.func()),\n beforeValidate: joi.array().items(joi.func()),\n }),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n timestamps: joi.boolean(),\n typescript: joi.object().keys({\n interface: joi.string(),\n }),\n upload: joi.alternatives().try(\n joi.object({\n adapter: joi.string(),\n adminThumbnail: joi.alternatives().try(joi.string(), componentSchema),\n crop: joi.bool(),\n disableLocalStorage: joi.bool(),\n externalFileHeaderFilter: joi.func(),\n filesRequiredOnCreate: joi.bool(),\n focalPoint: joi.bool(),\n formatOptions: joi.object().keys({\n format: joi.string(),\n options: joi.object(),\n }),\n handlers: joi.array().items(joi.func()),\n imageSizes: joi.array().items(\n joi\n .object()\n .keys({\n name: joi.string(),\n crop: joi.string(), // TODO: add further specificity with joi.xor\n height: joi.number().integer().allow(null),\n width: joi.number().integer().allow(null),\n })\n .unknown(),\n ),\n mimeTypes: joi.array().items(joi.string()),\n resizeOptions: joi\n .object()\n .keys({\n background: joi.string(),\n fastShrinkOnLoad: joi.bool(),\n fit: joi.string(),\n height: joi.number().allow(null),\n kernel: joi.string(),\n position: joi.alternatives().try(joi.string(), joi.number()),\n width: joi.number().allow(null),\n withoutEnlargement: joi.bool(),\n })\n .allow(null),\n staticDir: joi.string(),\n staticOptions: joi.object(),\n tempFileDir: joi.string(),\n trimOptions: joi.alternatives().try(\n joi.object().keys({\n format: joi.string(),\n options: joi.object(),\n }),\n joi.string(),\n joi.number(),\n ),\n useTempFiles: joi.bool(),\n }),\n joi.boolean(),\n ),\n versions: joi.alternatives().try(\n joi.object({\n drafts: joi.alternatives().try(\n joi.object({\n autosave: joi.alternatives().try(\n joi.boolean(),\n joi.object({\n interval: joi.number(),\n }),\n ),\n }),\n joi.boolean(),\n ),\n maxPerDoc: joi.number(),\n }),\n joi.boolean(),\n ),\n})\n\nexport default collectionSchema\n"],"names":["joi","endpointsSchema","componentSchema","customViewSchema","livePreviewSchema","strategyBaseSchema","object","keys","logout","boolean","refresh","collectionSchema","slug","string","required","access","admin","func","create","delete","read","readVersions","unlock","update","components","AfterList","array","items","AfterListTable","BeforeList","BeforeListTable","edit","Description","PreviewButton","PublishButton","SaveButton","SaveDraftButton","views","Edit","alternatives","try","API","Default","LivePreview","Version","Versions","List","Component","actions","custom","pattern","any","defaultColumns","description","enableRichTextLink","enableRichTextRelationship","group","hidden","hideAPIURL","bool","listSearchableFields","livePreview","pagination","defaultLimit","number","limits","preview","useAsTitle","auth","cookies","domain","sameSite","secure","depth","disableLocalStrategy","valid","forgotPassword","generateEmailHTML","generateEmailSubject","lockTime","maxLoginAttempts","removeTokenFromResponses","strategies","name","authenticate","tokenExpiration","useAPIKey","verify","dbName","defaultSort","disableDuplicate","endpoints","fields","graphQL","pluralName","singularName","hooks","afterChange","afterDelete","afterForgotPassword","afterLogin","afterLogout","afterMe","afterOperation","afterRead","afterRefresh","beforeChange","beforeDelete","beforeLogin","beforeOperation","beforeRead","beforeValidate","labels","plural","singular","timestamps","typescript","interface","upload","adapter","adminThumbnail","crop","disableLocalStorage","externalFileHeaderFilter","filesRequiredOnCreate","focalPoint","formatOptions","format","options","handlers","imageSizes","height","integer","allow","width","unknown","mimeTypes","resizeOptions","background","fastShrinkOnLoad","fit","kernel","position","withoutEnlargement","staticDir","staticOptions","tempFileDir","trimOptions","useTempFiles","versions","drafts","autosave","interval","maxPerDoc"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/collections/config/schema.ts"],"sourcesContent":["import joi from 'joi'\n\nimport { endpointsSchema } from '../../config/schema.js'\nimport {\n componentSchema,\n customViewSchema,\n livePreviewSchema,\n} from '../../config/shared/componentSchema.js'\nimport { openGraphSchema } from '../../config/shared/openGraphSchema.js'\n\nconst strategyBaseSchema = joi.object().keys({\n logout: joi.boolean(),\n refresh: joi.boolean(),\n})\n\nconst collectionSchema = joi.object().keys({\n slug: joi.string().required(),\n access: joi.object({\n admin: joi.func(),\n create: joi.func(),\n delete: joi.func(),\n read: joi.func(),\n readVersions: joi.func(),\n unlock: joi.func(),\n update: joi.func(),\n }),\n admin: joi.object({\n components: joi.object({\n AfterList: joi.array().items(componentSchema),\n AfterListTable: joi.array().items(componentSchema),\n BeforeList: joi.array().items(componentSchema),\n BeforeListTable: joi.array().items(componentSchema),\n edit: joi.object({\n Description: componentSchema,\n PreviewButton: componentSchema,\n PublishButton: componentSchema,\n SaveButton: componentSchema,\n SaveDraftButton: componentSchema,\n }),\n views: joi.object({\n Edit: joi.alternatives().try(\n componentSchema,\n joi.object({\n API: joi.alternatives().try(componentSchema, customViewSchema),\n Default: joi.alternatives().try(componentSchema, customViewSchema),\n LivePreview: joi.alternatives().try(componentSchema, customViewSchema),\n Version: joi.alternatives().try(componentSchema, customViewSchema),\n Versions: joi.alternatives().try(componentSchema, customViewSchema),\n // Relationships\n // References\n }),\n ),\n List: joi.alternatives().try(\n componentSchema,\n joi.object({\n Component: componentSchema,\n actions: joi.array().items(componentSchema),\n }),\n ),\n }),\n }),\n custom: joi.object().pattern(joi.string(), joi.any()),\n defaultColumns: joi.array().items(joi.string()),\n description: joi\n .alternatives()\n .try(joi.func(), joi.object().pattern(joi.string(), [joi.string()]), joi.string()),\n enableRichTextLink: joi.boolean(),\n enableRichTextRelationship: joi.boolean(),\n group: joi.alternatives().try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n hidden: joi.alternatives().try(joi.boolean(), joi.func()),\n hideAPIURL: joi.bool(),\n listSearchableFields: joi.array().items(joi.string()),\n livePreview: joi.object(livePreviewSchema),\n meta: joi.object({\n description: joi.string(),\n openGraph: openGraphSchema,\n }),\n pagination: joi.object({\n defaultLimit: joi.number(),\n limits: joi.array().items(joi.number()),\n }),\n preview: joi.func(),\n useAsTitle: joi.string(),\n }),\n auth: joi.alternatives().try(\n joi.object({\n cookies: joi.object().keys({\n domain: joi.string(),\n sameSite: joi.string(), // TODO: add further specificity with joi.xor\n secure: joi.boolean(),\n }),\n depth: joi.number(),\n disableLocalStrategy: joi.boolean().valid(true),\n forgotPassword: joi.object().keys({\n generateEmailHTML: joi.func(),\n generateEmailSubject: joi.func(),\n }),\n lockTime: joi.number(),\n maxLoginAttempts: joi.number(),\n removeTokenFromResponses: joi.boolean().valid(true),\n strategies: joi.array().items(\n joi.object().keys({\n name: joi.string().required(),\n authenticate: joi.func().required(),\n }),\n ),\n tokenExpiration: joi.number(),\n useAPIKey: joi.boolean(),\n verify: joi.alternatives().try(\n joi.boolean(),\n joi.object().keys({\n generateEmailHTML: joi.func(),\n generateEmailSubject: joi.func(),\n }),\n ),\n }),\n joi.boolean(),\n ),\n custom: joi.object().pattern(joi.string(), joi.any()),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n defaultSort: joi.string(),\n disableDuplicate: joi.bool(),\n endpoints: endpointsSchema,\n fields: joi.array(),\n graphQL: joi.alternatives().try(\n joi.object().keys({\n pluralName: joi.string(),\n singularName: joi.string(),\n }),\n joi.boolean(),\n ),\n hooks: joi.object({\n afterChange: joi.array().items(joi.func()),\n afterDelete: joi.array().items(joi.func()),\n afterForgotPassword: joi.array().items(joi.func()),\n afterLogin: joi.array().items(joi.func()),\n afterLogout: joi.array().items(joi.func()),\n afterMe: joi.array().items(joi.func()),\n afterOperation: joi.array().items(joi.func()),\n afterRead: joi.array().items(joi.func()),\n afterRefresh: joi.array().items(joi.func()),\n beforeChange: joi.array().items(joi.func()),\n beforeDelete: joi.array().items(joi.func()),\n beforeLogin: joi.array().items(joi.func()),\n beforeOperation: joi.array().items(joi.func()),\n beforeRead: joi.array().items(joi.func()),\n beforeValidate: joi.array().items(joi.func()),\n }),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n timestamps: joi.boolean(),\n typescript: joi.object().keys({\n interface: joi.string(),\n }),\n upload: joi.alternatives().try(\n joi.object({\n adapter: joi.string(),\n adminThumbnail: joi.alternatives().try(joi.string(), componentSchema),\n crop: joi.bool(),\n disableLocalStorage: joi.bool(),\n externalFileHeaderFilter: joi.func(),\n filesRequiredOnCreate: joi.bool(),\n focalPoint: joi.bool(),\n formatOptions: joi.object().keys({\n format: joi.string(),\n options: joi.object(),\n }),\n handlers: joi.array().items(joi.func()),\n imageSizes: joi.array().items(\n joi\n .object()\n .keys({\n name: joi.string(),\n crop: joi.string(), // TODO: add further specificity with joi.xor\n height: joi.number().integer().allow(null),\n width: joi.number().integer().allow(null),\n })\n .unknown(),\n ),\n mimeTypes: joi.array().items(joi.string()),\n resizeOptions: joi\n .object()\n .keys({\n background: joi.string(),\n fastShrinkOnLoad: joi.bool(),\n fit: joi.string(),\n height: joi.number().allow(null),\n kernel: joi.string(),\n position: joi.alternatives().try(joi.string(), joi.number()),\n width: joi.number().allow(null),\n withoutEnlargement: joi.bool(),\n })\n .allow(null),\n staticDir: joi.string(),\n tempFileDir: joi.string(),\n trimOptions: joi.alternatives().try(\n joi.object().keys({\n format: joi.string(),\n options: joi.object(),\n }),\n joi.string(),\n joi.number(),\n ),\n useTempFiles: joi.bool(),\n }),\n joi.boolean(),\n ),\n versions: joi.alternatives().try(\n joi.object({\n drafts: joi.alternatives().try(\n joi.object({\n autosave: joi.alternatives().try(\n joi.boolean(),\n joi.object({\n interval: joi.number(),\n }),\n ),\n }),\n joi.boolean(),\n ),\n maxPerDoc: joi.number(),\n }),\n joi.boolean(),\n ),\n})\n\nexport default collectionSchema\n"],"names":["joi","endpointsSchema","componentSchema","customViewSchema","livePreviewSchema","openGraphSchema","strategyBaseSchema","object","keys","logout","boolean","refresh","collectionSchema","slug","string","required","access","admin","func","create","delete","read","readVersions","unlock","update","components","AfterList","array","items","AfterListTable","BeforeList","BeforeListTable","edit","Description","PreviewButton","PublishButton","SaveButton","SaveDraftButton","views","Edit","alternatives","try","API","Default","LivePreview","Version","Versions","List","Component","actions","custom","pattern","any","defaultColumns","description","enableRichTextLink","enableRichTextRelationship","group","hidden","hideAPIURL","bool","listSearchableFields","livePreview","meta","openGraph","pagination","defaultLimit","number","limits","preview","useAsTitle","auth","cookies","domain","sameSite","secure","depth","disableLocalStrategy","valid","forgotPassword","generateEmailHTML","generateEmailSubject","lockTime","maxLoginAttempts","removeTokenFromResponses","strategies","name","authenticate","tokenExpiration","useAPIKey","verify","dbName","defaultSort","disableDuplicate","endpoints","fields","graphQL","pluralName","singularName","hooks","afterChange","afterDelete","afterForgotPassword","afterLogin","afterLogout","afterMe","afterOperation","afterRead","afterRefresh","beforeChange","beforeDelete","beforeLogin","beforeOperation","beforeRead","beforeValidate","labels","plural","singular","timestamps","typescript","interface","upload","adapter","adminThumbnail","crop","disableLocalStorage","externalFileHeaderFilter","filesRequiredOnCreate","focalPoint","formatOptions","format","options","handlers","imageSizes","height","integer","allow","width","unknown","mimeTypes","resizeOptions","background","fastShrinkOnLoad","fit","kernel","position","withoutEnlargement","staticDir","tempFileDir","trimOptions","useTempFiles","versions","drafts","autosave","interval","maxPerDoc"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from '
|
|
|
3
3
|
import type { DeepRequired } from 'ts-essentials';
|
|
4
4
|
import type { CustomPreviewButton, CustomPublishButton, CustomSaveButton, CustomSaveDraftButton } from '../../admin/types.js';
|
|
5
5
|
import type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js';
|
|
6
|
-
import type { Access, CustomComponent, EditConfig, Endpoint, EntityDescription, EntityDescriptionComponent, GeneratePreviewURL, LabelFunction, LivePreviewConfig } from '../../config/types.js';
|
|
6
|
+
import type { Access, CustomComponent, EditConfig, Endpoint, EntityDescription, EntityDescriptionComponent, GeneratePreviewURL, LabelFunction, LivePreviewConfig, OpenGraphConfig } from '../../config/types.js';
|
|
7
7
|
import type { DBIdentifierName } from '../../database/types.js';
|
|
8
8
|
import type { Field } from '../../fields/config/types.js';
|
|
9
9
|
import type { GeneratedTypes } from '../../index.js';
|
|
@@ -236,6 +236,10 @@ export type CollectionAdminOptions = {
|
|
|
236
236
|
* Live preview options
|
|
237
237
|
*/
|
|
238
238
|
livePreview?: LivePreviewConfig;
|
|
239
|
+
meta?: {
|
|
240
|
+
description?: string;
|
|
241
|
+
openGraph?: OpenGraphConfig;
|
|
242
|
+
};
|
|
239
243
|
pagination?: {
|
|
240
244
|
defaultLimit?: number;
|
|
241
245
|
limits?: number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACxF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EACf,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,0BAA0B,EAC1B,kBAAkB,EAClB,aAAa,EACb,iBAAiB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACxF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EACf,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,0BAA0B,EAC1B,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACjF,OAAO,KAAK,EACV,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAElF,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,MAAM,GACN,SAAS,GACT,QAAQ,CAAA;AAEZ,KAAK,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAA;AAE9E,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE;IACvC,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB;;OAEG;IACH,SAAS,EAAE,iBAAiB,CAAA;IAC5B,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAClE,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IACjB;;OAEG;IACH,SAAS,EAAE,uBAAuB,CAAA;IAClC;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,CAAA;IACf,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAChE,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IAChB;;OAEG;IACH,SAAS,EAAE,uBAAuB,CAAA;IAClC;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,CAAA;IACf,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC/D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,CAAC,CAAA;IACN;;OAEG;IACH,SAAS,EAAE,uBAAuB,CAAA;IAClC,WAAW,EAAE,CAAC,CAAA;IACd,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC9D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,CAAC,CAAA;IACN,KAAK,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC7B,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC7D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,CAAC,CAAA;IACN,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC9B,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE;IACpC,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC/D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,CAAC,CAAA;IACN,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAC3D,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,KACtB,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAE1E,MAAM,MAAM,cAAc,GAAG,CAC3B,GAAG,EAAE,KAAK,EACV,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,cAAc;AACvB,kIAAkI;AAClI,UAAU,EAAE,yBAAyB,GAAG,IAAI,KACzC;IAAE,QAAQ,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAA;AAE7C,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC/D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,IAAI,EAAE,CAAC,CAAA;CACR,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC9D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,CAAC,CAAA;CACR,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC/D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAC3D,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,QAAQ,EAAE,OAAO,CAAA;CAClB,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IAChE,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,sBAAsB,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;CACd,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,uBAAuB,GAAG,CAAC,IAAI,EAAE;IAC3C,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,qDAAqD;IACrD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,cAAc,CAAA;CACxB,KAAK,GAAG,CAAA;AAET,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,eAAe,EAAE,CAAA;QAC7B,cAAc,CAAC,EAAE,eAAe,EAAE,CAAA;QAClC,UAAU,CAAC,EAAE,eAAe,EAAE,CAAA;QAC9B,eAAe,CAAC,EAAE,eAAe,EAAE,CAAA;QACnC;;WAEG;QACH,IAAI,CAAC,EAAE;YACL,WAAW,CAAC,EAAE,0BAA0B,CAAA;YAExC;;eAEG;YACH,aAAa,CAAC,EAAE,mBAAmB,CAAA;YACnC;;;eAGG;YACH,aAAa,CAAC,EAAE,mBAAmB,CAAA;YACnC;;;eAGG;YACH,UAAU,CAAC,EAAE,gBAAgB,CAAA;YAC7B;;;;eAIG;YACH,eAAe,CAAC,EAAE,qBAAqB,CAAA;SACxC,CAAA;QACD,KAAK,CAAC,EAAE;YACN;;;eAGG;YACH,IAAI,CAAC,EAAE,UAAU,CAAA;YACjB,IAAI,CAAC,EACD;gBACE,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;gBACpC,OAAO,CAAC,EAAE,eAAe,EAAE,CAAA;aAC5B,GACD,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;SAC7B,CAAA;KACF,CAAA;IACD,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB;;OAEG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC;;SAEK;IACL,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;IACvC;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,OAAO,CAAC,GAAG,OAAO,CAAA;IAC5D;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC/B;;OAEG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,IAAI,CAAC,EAAE;QACL,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,SAAS,CAAC,EAAE,eAAe,CAAA;KAC5B,CAAA;IACD,UAAU,CAAC,EAAE;QACX,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAClB,CAAA;IACD;;OAEG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAA;IAC5B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,8CAA8C;AAC9C,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;YAAE,GAAG,EAAE,sBAAsB,CAAA;SAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;QAChF,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;IACD;;OAEG;IACH,KAAK,CAAC,EAAE,sBAAsB,CAAA;IAC9B;;;;OAIG;IACH,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAA;IACjC,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAA;IACzB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;OAEG;IACH,SAAS,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,GAAG,KAAK,CAAA;IAC5C,MAAM,EAAE,KAAK,EAAE,CAAA;IACf;;OAEG;IACH,OAAO,CAAC,EACJ;QACE,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,GACD,KAAK,CAAA;IACT;;OAEG;IACH,KAAK,CAAC,EAAE;QACN,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;QAC/B,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;QAC/B,UAAU,CAAC,EAAE,cAAc,CAAA;QAC3B,mBAAmB,CAAC,EAAE,uBAAuB,EAAE,CAAA;QAC/C,UAAU,CAAC,EAAE,cAAc,EAAE,CAAA;QAC7B,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;QAC/B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;QACvB,cAAc,CAAC,EAAE,kBAAkB,EAAE,CAAA;QACrC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;QAC3B,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAA;QACjC,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAA;QACjC,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAA;QACjC,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;QAC/B,eAAe,CAAC,EAAE,mBAAmB,EAAE,CAAA;QACvC,UAAU,CAAC,EAAE,cAAc,EAAE,CAAA;QAC7B,cAAc,CAAC,EAAE,kBAAkB,EAAE,CAAA;KACtC,CAAA;IACD;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;QACxD,QAAQ,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;KAC3D,CAAA;IACD,IAAI,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE;QACX;;WAEG;QACH,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;IACD;;;;OAIG;IACH,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAA;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAAA;CAChD,CAAA;AAED,MAAM,WAAW,yBACf,SAAQ,IAAI,CACV,YAAY,CAAC,gBAAgB,CAAC,EAC9B,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CACxD;IACD,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC7B,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,MAAM,EAAE,qBAAqB,CAAA;IAC7B,QAAQ,EAAE,2BAA2B,CAAA;CACtC;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,yBAAyB,CAAA;IACjC,YAAY,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAChC,OAAO,CAAC,EAAE;QACR,GAAG,EAAE,iBAAiB,CAAA;QACtB,SAAS,EAAE,iBAAiB,CAAA;QAC5B,iBAAiB,EAAE,cAAc,CAAC,GAAG,CAAC,CAAA;QACtC,aAAa,EAAE,iBAAiB,CAAA;QAChC,IAAI,EAAE,iBAAiB,CAAA;QACvB,uBAAuB,EAAE,cAAc,CAAC,GAAG,CAAC,CAAA;QAC5C,WAAW,EAAE,iBAAiB,CAAA;QAC9B,cAAc,EAAE,sBAAsB,CAAA;KACvC,CAAA;CACF,CAAA;AAED,MAAM,MAAM,mBAAmB,CAAC,KAAK,SAAS,MAAM,cAAc,CAAC,aAAa,CAAC,IAAI;IACnF,IAAI,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAA;IAC5C,MAAM,EAAE;QACN,EAAE,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9C,OAAO,EAAE,MAAM,CAAA;KAChB,EAAE,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,yBAAyB,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/collections/config/types.ts"],"sourcesContent":["import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport type { DeepRequired } from 'ts-essentials'\n\nimport type {\n CustomPreviewButton,\n CustomPublishButton,\n CustomSaveButton,\n CustomSaveDraftButton,\n} from '../../admin/types.js'\nimport type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js'\nimport type {\n Access,\n CustomComponent,\n EditConfig,\n Endpoint,\n EntityDescription,\n EntityDescriptionComponent,\n GeneratePreviewURL,\n LabelFunction,\n LivePreviewConfig,\n} from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { Field } from '../../fields/config/types.js'\nimport type { GeneratedTypes } from '../../index.js'\nimport type { PayloadRequestWithData, RequestContext } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js'\nimport type {\n IncomingCollectionVersions,\n SanitizedCollectionVersions,\n} from '../../versions/types.js'\nimport type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js'\n\nexport type HookOperationType =\n | 'autosave'\n | 'count'\n | 'create'\n | 'delete'\n | 'forgotPassword'\n | 'login'\n | 'read'\n | 'refresh'\n | 'update'\n\ntype CreateOrUpdateOperation = Extract<HookOperationType, 'create' | 'update'>\n\nexport type BeforeOperationHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n /**\n * Hook operation being performed\n */\n operation: HookOperationType\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeValidateHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data?: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n previousDoc: T\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n query: { [key: string]: any }\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n findMany?: boolean\n query?: { [key: string]: any }\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeDeleteHook = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n id: number | string\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterDeleteHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n id: number | string\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterOperationHook<T extends TypeWithID = any> = (\n arg: AfterOperationArg<T>,\n) => Promise<ReturnType<AfterOperationMap<T>[keyof AfterOperationMap<T>]>>\n\nexport type AfterErrorHook = (\n err: Error,\n res: unknown,\n context: RequestContext,\n /** The collection which this hook is being run on. This is null if the AfterError hook was be added to the payload-wide config */\n collection: SanitizedCollectionConfig | null,\n) => { response: any; status: number } | void\n\nexport type BeforeLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n user: T\n}) => any\n\nexport type AfterLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n token: string\n user: T\n}) => any\n\nexport type AfterLogoutHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterMeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n response: unknown\n}) => any\n\nexport type AfterRefreshHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n exp: number\n req: PayloadRequestWithData\n token: string\n}) => any\n\nexport type AfterForgotPasswordHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n}) => any\n\nexport type CollectionAdminOptions = {\n /**\n * Custom admin components\n */\n components?: {\n AfterList?: CustomComponent[]\n AfterListTable?: CustomComponent[]\n BeforeList?: CustomComponent[]\n BeforeListTable?: CustomComponent[]\n /**\n * Components within the edit view\n */\n edit?: {\n Description?: EntityDescriptionComponent\n\n /**\n * Replaces the \"Preview\" button\n */\n PreviewButton?: CustomPreviewButton\n /**\n * Replaces the \"Publish\" button\n * + drafts must be enabled\n */\n PublishButton?: CustomPublishButton\n /**\n * Replaces the \"Save\" button\n * + drafts must be disabled\n */\n SaveButton?: CustomSaveButton\n /**\n * Replaces the \"Save Draft\" button\n * + drafts must be enabled\n * + autosave must be disabled\n */\n SaveDraftButton?: CustomSaveDraftButton\n }\n views?: {\n /**\n * Set to a React component to replace the entire \"Edit\" view, including all nested routes.\n * Set to an object to replace or modify individual nested routes, or to add new ones.\n */\n Edit?: EditConfig\n List?:\n | {\n Component?: React.ComponentType<any>\n actions?: CustomComponent[]\n }\n | React.ComponentType<any>\n }\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n /**\n * Default columns to show in list view\n */\n defaultColumns?: string[]\n /**\n * Custom description for collection\n */\n description?: EntityDescription\n enableRichTextLink?: boolean\n enableRichTextRelationship?: boolean\n /**\n * Place collections into a navigational group\n * */\n group?: Record<string, string> | string\n /**\n * Exclude the collection from the admin nav and routes\n */\n hidden?: ((args: { user: ClientUser }) => boolean) | boolean\n /**\n * Hide the API URL within the Edit view\n */\n hideAPIURL?: boolean\n /**\n * Additional fields to be searched via the full text search\n */\n listSearchableFields?: string[]\n /**\n * Live preview options\n */\n livePreview?: LivePreviewConfig\n pagination?: {\n defaultLimit?: number\n limits?: number[]\n }\n /**\n * Function to generate custom preview URL\n */\n preview?: GeneratePreviewURL\n /**\n * Field to use as title in Edit view and first column in List view\n */\n useAsTitle?: string\n}\n\n/** Manage all aspects of a data collection */\nexport type CollectionConfig = {\n /**\n * Access control\n */\n access?: {\n admin?: ({ req }: { req: PayloadRequestWithData }) => Promise<boolean> | boolean\n create?: Access\n delete?: Access\n read?: Access\n readVersions?: Access\n unlock?: Access\n update?: Access\n }\n /**\n * Collection admin options\n */\n admin?: CollectionAdminOptions\n /**\n * Collection login options\n *\n * Use `true` to enable with default options\n */\n auth?: IncomingAuthType | boolean\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Used to override the default naming of the database table or collection with your using a function or string\n * @WARNING: If you change this property with existing data, you will need to handle the renaming of the table in your database or by using migrations\n */\n dbName?: DBIdentifierName\n /**\n * Default field to sort by in collection list view\n */\n defaultSort?: string\n /**\n * When true, do not show the \"Duplicate\" button while editing documents within this collection and prevent `duplicate` from all APIs\n */\n disableDuplicate?: boolean\n /**\n * Custom rest api endpoints, set false to disable all rest endpoints for this collection.\n */\n endpoints?: Omit<Endpoint, 'root'>[] | false\n fields: Field[]\n /**\n * GraphQL configuration\n */\n graphQL?:\n | {\n pluralName?: string\n singularName?: string\n }\n | false\n /**\n * Hooks to modify Payload functionality\n */\n hooks?: {\n afterChange?: AfterChangeHook[]\n afterDelete?: AfterDeleteHook[]\n afterError?: AfterErrorHook\n afterForgotPassword?: AfterForgotPasswordHook[]\n afterLogin?: AfterLoginHook[]\n afterLogout?: AfterLogoutHook[]\n afterMe?: AfterMeHook[]\n afterOperation?: AfterOperationHook[]\n afterRead?: AfterReadHook[]\n afterRefresh?: AfterRefreshHook[]\n beforeChange?: BeforeChangeHook[]\n beforeDelete?: BeforeDeleteHook[]\n beforeLogin?: BeforeLoginHook[]\n beforeOperation?: BeforeOperationHook[]\n beforeRead?: BeforeReadHook[]\n beforeValidate?: BeforeValidateHook[]\n }\n /**\n * Label configuration\n */\n labels?: {\n plural?: LabelFunction | Record<string, string> | string\n singular?: LabelFunction | Record<string, string> | string\n }\n slug: string\n /**\n * Add `createdAt` and `updatedAt` fields\n *\n * @default true\n */\n timestamps?: boolean\n /**\n * Options used in typescript generation\n */\n typescript?: {\n /**\n * Typescript generation name given to the interface type\n */\n interface?: string\n }\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable uploads\n */\n upload?: UploadConfig | boolean\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable versioning\n */\n versions?: IncomingCollectionVersions | boolean\n}\n\nexport interface SanitizedCollectionConfig\n extends Omit<\n DeepRequired<CollectionConfig>,\n 'auth' | 'endpoints' | 'fields' | 'upload' | 'versions'\n > {\n auth: Auth\n endpoints: Endpoint[] | false\n fields: Field[]\n upload: SanitizedUploadConfig\n versions: SanitizedCollectionVersions\n}\n\nexport type Collection = {\n config: SanitizedCollectionConfig\n customIDType?: 'number' | 'text'\n graphQL?: {\n JWT: GraphQLObjectType\n countType: GraphQLObjectType\n mutationInputType: GraphQLNonNull<any>\n paginatedType: GraphQLObjectType\n type: GraphQLObjectType\n updateMutationInputType: GraphQLNonNull<any>\n versionType: GraphQLObjectType\n whereInputType: GraphQLInputObjectType\n }\n}\n\nexport type BulkOperationResult<TSlug extends keyof GeneratedTypes['collections']> = {\n docs: GeneratedTypes['collections'][TSlug][]\n errors: {\n id: GeneratedTypes['collections'][TSlug]['id']\n message: string\n }[]\n}\n\nexport type AuthCollection = {\n config: SanitizedCollectionConfig\n}\n\nexport type TypeWithID = {\n id: number | string\n}\n\nexport type TypeWithTimestamps = {\n [key: string]: unknown\n createdAt: string\n id: number | string\n updatedAt: string\n}\n"],"names":[],"rangeMappings":"","mappings":"AAocA,WAKC"}
|
|
1
|
+
{"version":3,"sources":["../../../src/collections/config/types.ts"],"sourcesContent":["import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport type { DeepRequired } from 'ts-essentials'\n\nimport type {\n CustomPreviewButton,\n CustomPublishButton,\n CustomSaveButton,\n CustomSaveDraftButton,\n} from '../../admin/types.js'\nimport type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js'\nimport type {\n Access,\n CustomComponent,\n EditConfig,\n Endpoint,\n EntityDescription,\n EntityDescriptionComponent,\n GeneratePreviewURL,\n LabelFunction,\n LivePreviewConfig,\n OpenGraphConfig,\n} from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { Field } from '../../fields/config/types.js'\nimport type { GeneratedTypes } from '../../index.js'\nimport type { PayloadRequestWithData, RequestContext } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js'\nimport type {\n IncomingCollectionVersions,\n SanitizedCollectionVersions,\n} from '../../versions/types.js'\nimport type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js'\n\nexport type HookOperationType =\n | 'autosave'\n | 'count'\n | 'create'\n | 'delete'\n | 'forgotPassword'\n | 'login'\n | 'read'\n | 'refresh'\n | 'update'\n\ntype CreateOrUpdateOperation = Extract<HookOperationType, 'create' | 'update'>\n\nexport type BeforeOperationHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n /**\n * Hook operation being performed\n */\n operation: HookOperationType\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeValidateHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data?: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n previousDoc: T\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n query: { [key: string]: any }\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n findMany?: boolean\n query?: { [key: string]: any }\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeDeleteHook = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n id: number | string\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterDeleteHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n id: number | string\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterOperationHook<T extends TypeWithID = any> = (\n arg: AfterOperationArg<T>,\n) => Promise<ReturnType<AfterOperationMap<T>[keyof AfterOperationMap<T>]>>\n\nexport type AfterErrorHook = (\n err: Error,\n res: unknown,\n context: RequestContext,\n /** The collection which this hook is being run on. This is null if the AfterError hook was be added to the payload-wide config */\n collection: SanitizedCollectionConfig | null,\n) => { response: any; status: number } | void\n\nexport type BeforeLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n user: T\n}) => any\n\nexport type AfterLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n token: string\n user: T\n}) => any\n\nexport type AfterLogoutHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterMeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n response: unknown\n}) => any\n\nexport type AfterRefreshHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n exp: number\n req: PayloadRequestWithData\n token: string\n}) => any\n\nexport type AfterForgotPasswordHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n}) => any\n\nexport type CollectionAdminOptions = {\n /**\n * Custom admin components\n */\n components?: {\n AfterList?: CustomComponent[]\n AfterListTable?: CustomComponent[]\n BeforeList?: CustomComponent[]\n BeforeListTable?: CustomComponent[]\n /**\n * Components within the edit view\n */\n edit?: {\n Description?: EntityDescriptionComponent\n\n /**\n * Replaces the \"Preview\" button\n */\n PreviewButton?: CustomPreviewButton\n /**\n * Replaces the \"Publish\" button\n * + drafts must be enabled\n */\n PublishButton?: CustomPublishButton\n /**\n * Replaces the \"Save\" button\n * + drafts must be disabled\n */\n SaveButton?: CustomSaveButton\n /**\n * Replaces the \"Save Draft\" button\n * + drafts must be enabled\n * + autosave must be disabled\n */\n SaveDraftButton?: CustomSaveDraftButton\n }\n views?: {\n /**\n * Set to a React component to replace the entire \"Edit\" view, including all nested routes.\n * Set to an object to replace or modify individual nested routes, or to add new ones.\n */\n Edit?: EditConfig\n List?:\n | {\n Component?: React.ComponentType<any>\n actions?: CustomComponent[]\n }\n | React.ComponentType<any>\n }\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n /**\n * Default columns to show in list view\n */\n defaultColumns?: string[]\n /**\n * Custom description for collection\n */\n description?: EntityDescription\n enableRichTextLink?: boolean\n enableRichTextRelationship?: boolean\n /**\n * Place collections into a navigational group\n * */\n group?: Record<string, string> | string\n /**\n * Exclude the collection from the admin nav and routes\n */\n hidden?: ((args: { user: ClientUser }) => boolean) | boolean\n /**\n * Hide the API URL within the Edit view\n */\n hideAPIURL?: boolean\n /**\n * Additional fields to be searched via the full text search\n */\n listSearchableFields?: string[]\n /**\n * Live preview options\n */\n livePreview?: LivePreviewConfig\n meta?: {\n description?: string\n openGraph?: OpenGraphConfig\n }\n pagination?: {\n defaultLimit?: number\n limits?: number[]\n }\n /**\n * Function to generate custom preview URL\n */\n preview?: GeneratePreviewURL\n /**\n * Field to use as title in Edit view and first column in List view\n */\n useAsTitle?: string\n}\n\n/** Manage all aspects of a data collection */\nexport type CollectionConfig = {\n /**\n * Access control\n */\n access?: {\n admin?: ({ req }: { req: PayloadRequestWithData }) => Promise<boolean> | boolean\n create?: Access\n delete?: Access\n read?: Access\n readVersions?: Access\n unlock?: Access\n update?: Access\n }\n /**\n * Collection admin options\n */\n admin?: CollectionAdminOptions\n /**\n * Collection login options\n *\n * Use `true` to enable with default options\n */\n auth?: IncomingAuthType | boolean\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Used to override the default naming of the database table or collection with your using a function or string\n * @WARNING: If you change this property with existing data, you will need to handle the renaming of the table in your database or by using migrations\n */\n dbName?: DBIdentifierName\n /**\n * Default field to sort by in collection list view\n */\n defaultSort?: string\n /**\n * When true, do not show the \"Duplicate\" button while editing documents within this collection and prevent `duplicate` from all APIs\n */\n disableDuplicate?: boolean\n /**\n * Custom rest api endpoints, set false to disable all rest endpoints for this collection.\n */\n endpoints?: Omit<Endpoint, 'root'>[] | false\n fields: Field[]\n /**\n * GraphQL configuration\n */\n graphQL?:\n | {\n pluralName?: string\n singularName?: string\n }\n | false\n /**\n * Hooks to modify Payload functionality\n */\n hooks?: {\n afterChange?: AfterChangeHook[]\n afterDelete?: AfterDeleteHook[]\n afterError?: AfterErrorHook\n afterForgotPassword?: AfterForgotPasswordHook[]\n afterLogin?: AfterLoginHook[]\n afterLogout?: AfterLogoutHook[]\n afterMe?: AfterMeHook[]\n afterOperation?: AfterOperationHook[]\n afterRead?: AfterReadHook[]\n afterRefresh?: AfterRefreshHook[]\n beforeChange?: BeforeChangeHook[]\n beforeDelete?: BeforeDeleteHook[]\n beforeLogin?: BeforeLoginHook[]\n beforeOperation?: BeforeOperationHook[]\n beforeRead?: BeforeReadHook[]\n beforeValidate?: BeforeValidateHook[]\n }\n /**\n * Label configuration\n */\n labels?: {\n plural?: LabelFunction | Record<string, string> | string\n singular?: LabelFunction | Record<string, string> | string\n }\n slug: string\n /**\n * Add `createdAt` and `updatedAt` fields\n *\n * @default true\n */\n timestamps?: boolean\n /**\n * Options used in typescript generation\n */\n typescript?: {\n /**\n * Typescript generation name given to the interface type\n */\n interface?: string\n }\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable uploads\n */\n upload?: UploadConfig | boolean\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable versioning\n */\n versions?: IncomingCollectionVersions | boolean\n}\n\nexport interface SanitizedCollectionConfig\n extends Omit<\n DeepRequired<CollectionConfig>,\n 'auth' | 'endpoints' | 'fields' | 'upload' | 'versions'\n > {\n auth: Auth\n endpoints: Endpoint[] | false\n fields: Field[]\n upload: SanitizedUploadConfig\n versions: SanitizedCollectionVersions\n}\n\nexport type Collection = {\n config: SanitizedCollectionConfig\n customIDType?: 'number' | 'text'\n graphQL?: {\n JWT: GraphQLObjectType\n countType: GraphQLObjectType\n mutationInputType: GraphQLNonNull<any>\n paginatedType: GraphQLObjectType\n type: GraphQLObjectType\n updateMutationInputType: GraphQLNonNull<any>\n versionType: GraphQLObjectType\n whereInputType: GraphQLInputObjectType\n }\n}\n\nexport type BulkOperationResult<TSlug extends keyof GeneratedTypes['collections']> = {\n docs: GeneratedTypes['collections'][TSlug][]\n errors: {\n id: GeneratedTypes['collections'][TSlug]['id']\n message: string\n }[]\n}\n\nexport type AuthCollection = {\n config: SanitizedCollectionConfig\n}\n\nexport type TypeWithID = {\n id: number | string\n}\n\nexport type TypeWithTimestamps = {\n [key: string]: unknown\n createdAt: string\n id: number | string\n updatedAt: string\n}\n"],"names":[],"rangeMappings":"","mappings":"AAycA,WAKC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,eAAO,MAAM,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,QAAQ,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,eAAO,MAAM,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,QAAQ,GAAG,QAAQ,CAoD7D,CAAA"}
|
package/dist/config/defaults.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/config/defaults.ts"],"sourcesContent":["import type { Config } from './types.js'\n\nexport const defaults: Omit<Config, 'db' | 'editor' | 'secret'> = {\n admin: {\n avatar: 'default',\n components: {},\n custom: {},\n dateFormat: 'MMMM do yyyy, h:mm a',\n disable: false,\n meta: {\n titleSuffix: '- Payload',\n },\n routes: {\n account: '/account',\n createFirstUser: '/create-first-user',\n forgot: '/forgot',\n inactivity: '/logout-inactivity',\n login: '/login',\n logout: '/logout',\n unauthorized: '/unauthorized',\n },\n },\n bin: [],\n collections: [],\n cookiePrefix: 'payload',\n cors: [],\n csrf: [],\n custom: {},\n defaultDepth: 2,\n defaultMaxTextLength: 40000,\n endpoints: [],\n globals: [],\n graphQL: {\n disablePlaygroundInProduction: true,\n maxComplexity: 1000,\n schemaOutputFile: `${typeof process?.cwd === 'function' ? process.cwd() : ''}/schema.graphql`,\n },\n hooks: {},\n i18n: {},\n localization: false,\n maxDepth: 10,\n routes: {\n admin: '/admin',\n api: '/api',\n graphQL: '/graphql',\n graphQLPlayground: '/graphql-playground',\n },\n serverURL: '',\n telemetry: true,\n typescript: {\n outputFile: `${typeof process?.cwd === 'function' ? process.cwd() : ''}/payload-types.ts`,\n },\n upload: {},\n}\n"],"names":["defaults","admin","avatar","components","custom","dateFormat","disable","meta","titleSuffix","routes","account","createFirstUser","forgot","inactivity","login","logout","unauthorized","bin","collections","cookiePrefix","cors","csrf","defaultDepth","defaultMaxTextLength","endpoints","globals","graphQL","disablePlaygroundInProduction","maxComplexity","schemaOutputFile","process","cwd","hooks","i18n","localization","maxDepth","api","graphQLPlayground","serverURL","telemetry","typescript","outputFile","upload"],"rangeMappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/config/defaults.ts"],"sourcesContent":["import type { Config } from './types.js'\n\nexport const defaults: Omit<Config, 'db' | 'editor' | 'secret'> = {\n admin: {\n avatar: 'default',\n components: {},\n custom: {},\n dateFormat: 'MMMM do yyyy, h:mm a',\n disable: false,\n meta: {\n defaultOGImageType: 'dynamic',\n titleSuffix: '- Payload',\n },\n routes: {\n account: '/account',\n createFirstUser: '/create-first-user',\n forgot: '/forgot',\n inactivity: '/logout-inactivity',\n login: '/login',\n logout: '/logout',\n unauthorized: '/unauthorized',\n },\n },\n bin: [],\n collections: [],\n cookiePrefix: 'payload',\n cors: [],\n csrf: [],\n custom: {},\n defaultDepth: 2,\n defaultMaxTextLength: 40000,\n endpoints: [],\n globals: [],\n graphQL: {\n disablePlaygroundInProduction: true,\n maxComplexity: 1000,\n schemaOutputFile: `${typeof process?.cwd === 'function' ? process.cwd() : ''}/schema.graphql`,\n },\n hooks: {},\n i18n: {},\n localization: false,\n maxDepth: 10,\n routes: {\n admin: '/admin',\n api: '/api',\n graphQL: '/graphql',\n graphQLPlayground: '/graphql-playground',\n },\n serverURL: '',\n telemetry: true,\n typescript: {\n outputFile: `${typeof process?.cwd === 'function' ? process.cwd() : ''}/payload-types.ts`,\n },\n upload: {},\n}\n"],"names":["defaults","admin","avatar","components","custom","dateFormat","disable","meta","defaultOGImageType","titleSuffix","routes","account","createFirstUser","forgot","inactivity","login","logout","unauthorized","bin","collections","cookiePrefix","cors","csrf","defaultDepth","defaultMaxTextLength","endpoints","globals","graphQL","disablePlaygroundInProduction","maxComplexity","schemaOutputFile","process","cwd","hooks","i18n","localization","maxDepth","api","graphQLPlayground","serverURL","telemetry","typescript","outputFile","upload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,OAAO,MAAMA,WAAqD;IAChEC,OAAO;QACLC,QAAQ;QACRC,YAAY,CAAC;QACbC,QAAQ,CAAC;QACTC,YAAY;QACZC,SAAS;QACTC,MAAM;YACJC,oBAAoB;YACpBC,aAAa;QACf;QACAC,QAAQ;YACNC,SAAS;YACTC,iBAAiB;YACjBC,QAAQ;YACRC,YAAY;YACZC,OAAO;YACPC,QAAQ;YACRC,cAAc;QAChB;IACF;IACAC,KAAK,EAAE;IACPC,aAAa,EAAE;IACfC,cAAc;IACdC,MAAM,EAAE;IACRC,MAAM,EAAE;IACRlB,QAAQ,CAAC;IACTmB,cAAc;IACdC,sBAAsB;IACtBC,WAAW,EAAE;IACbC,SAAS,EAAE;IACXC,SAAS;QACPC,+BAA+B;QAC/BC,eAAe;QACfC,kBAAkB,CAAC,EAAE,OAAOC,SAASC,QAAQ,aAAaD,QAAQC,GAAG,KAAK,GAAG,eAAe,CAAC;IAC/F;IACAC,OAAO,CAAC;IACRC,MAAM,CAAC;IACPC,cAAc;IACdC,UAAU;IACV1B,QAAQ;QACNT,OAAO;QACPoC,KAAK;QACLV,SAAS;QACTW,mBAAmB;IACrB;IACAC,WAAW;IACXC,WAAW;IACXC,YAAY;QACVC,YAAY,CAAC,EAAE,OAAOX,SAASC,QAAQ,aAAaD,QAAQC,GAAG,KAAK,GAAG,iBAAiB,CAAC;IAC3F;IACAW,QAAQ,CAAC;AACX,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAQrB,eAAO,MAAM,eAAe,6BAa3B,CAAA;;AAED,wBA4KE"}
|
package/dist/config/schema.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import joi from 'joi';
|
|
2
2
|
import { adminViewSchema } from './shared/adminViewSchema.js';
|
|
3
3
|
import { componentSchema, livePreviewSchema } from './shared/componentSchema.js';
|
|
4
|
+
import { openGraphSchema } from './shared/openGraphSchema.js';
|
|
4
5
|
const component = joi.alternatives().try(joi.object().unknown(), joi.func());
|
|
5
6
|
export const endpointsSchema = joi.alternatives().try(joi.array().items(joi.object({
|
|
6
7
|
custom: joi.object().pattern(joi.string(), joi.any()),
|
|
@@ -49,8 +50,10 @@ export default joi.object({
|
|
|
49
50
|
globals: joi.array().items(joi.string())
|
|
50
51
|
}),
|
|
51
52
|
meta: joi.object().keys({
|
|
52
|
-
|
|
53
|
-
|
|
53
|
+
defaultOGImageType: joi.string().valid('off', 'dynamic', 'static'),
|
|
54
|
+
description: joi.string(),
|
|
55
|
+
icons: joi.array().items(joi.object()),
|
|
56
|
+
openGraph: openGraphSchema,
|
|
54
57
|
titleSuffix: joi.string()
|
|
55
58
|
}),
|
|
56
59
|
routes: joi.object({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/config/schema.ts"],"sourcesContent":["import joi from 'joi'\n\nimport { adminViewSchema } from './shared/adminViewSchema.js'\nimport { componentSchema, livePreviewSchema } from './shared/componentSchema.js'\n\nconst component = joi.alternatives().try(joi.object().unknown(), joi.func())\n\nexport const endpointsSchema = joi.alternatives().try(\n joi.array().items(\n joi.object({\n custom: joi.object().pattern(joi.string(), joi.any()),\n handler: joi.alternatives().try(joi.array().items(joi.func()), joi.func()),\n method: joi\n .string()\n .valid('get', 'head', 'post', 'put', 'patch', 'delete', 'connect', 'options'),\n path: joi.string(),\n root: joi.bool(),\n }),\n ),\n joi.boolean(),\n)\n\nexport default joi.object({\n admin: joi.object({\n autoLogin: joi.alternatives().try(\n joi.object().keys({\n email: joi.string(),\n password: joi.string(),\n prefillOnly: joi.boolean(),\n }),\n joi.boolean(),\n ),\n avatar: joi.alternatives().try(joi.string(), component),\n buildPath: joi.string(),\n components: joi.object().keys({\n Nav: component,\n actions: joi.array().items(component),\n afterDashboard: joi.array().items(component),\n afterLogin: joi.array().items(component),\n afterNavLinks: joi.array().items(component),\n beforeDashboard: joi.array().items(component),\n beforeLogin: joi.array().items(component),\n beforeNavLinks: joi.array().items(component),\n graphics: joi.object({\n Icon: component,\n Logo: component,\n }),\n logout: joi.object({\n Button: component,\n }),\n providers: joi.array().items(component),\n views: joi.alternatives().try(\n joi.object({\n Account: joi.alternatives().try(component, adminViewSchema),\n Dashboard: joi.alternatives().try(component, adminViewSchema),\n }),\n joi.object().pattern(joi.string(), component),\n ),\n }),\n custom: joi.object().pattern(joi.string(), joi.any()),\n dateFormat: joi.string(),\n disable: joi.bool(),\n livePreview: joi.object({\n ...livePreviewSchema,\n collections: joi.array().items(joi.string()),\n globals: joi.array().items(joi.string()),\n }),\n meta: joi.object().keys({\n icons: joi\n .alternatives()\n .try(\n joi.array().items(joi.alternatives().try(joi.string(), joi.object())),\n joi.object(),\n joi.string().allow(null),\n ),\n ogImage: joi.string(),\n titleSuffix: joi.string(),\n }),\n routes: joi.object({\n account: joi.string(),\n createFirstUser: joi.string(),\n forgot: joi.string(),\n inactivity: joi.string(),\n login: joi.string(),\n logout: joi.string(),\n unauthorized: joi.string(),\n }),\n user: joi.string(),\n }),\n bin: joi.array().items(\n joi.object().keys({\n key: joi.string(),\n scriptPath: joi.string(),\n }),\n ),\n collections: joi.array(),\n cookiePrefix: joi.string(),\n cors: [joi.string().valid('*'), joi.array().items(joi.string())],\n csrf: joi.array().items(joi.string().allow('')).sparse(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n db: joi.any(),\n debug: joi.boolean(),\n defaultDepth: joi.number().min(0).max(30),\n defaultMaxTextLength: joi.number(),\n editor: joi\n .object()\n .required()\n .keys({\n CellComponent: componentSchema.optional(),\n FieldComponent: componentSchema.optional(),\n afterReadPromise: joi.func().optional(),\n outputSchema: joi.func().optional(),\n populationPromise: joi.func().optional(),\n validate: joi.func().required(),\n })\n .unknown(),\n email: joi.alternatives().try(joi.object(), joi.func()),\n endpoints: endpointsSchema,\n globals: joi.array(),\n graphQL: joi.object().keys({\n disable: joi.boolean(),\n disablePlaygroundInProduction: joi.boolean(),\n maxComplexity: joi.number(),\n mutations: joi.function(),\n queries: joi.function(),\n schemaOutputFile: joi.string(),\n }),\n hooks: joi.object().keys({\n afterError: joi.func(),\n }),\n i18n: joi.object(),\n indexSortableFields: joi.boolean(),\n local: joi.boolean(),\n localization: joi.alternatives().try(\n joi.object().keys({\n defaultLocale: joi.string(),\n fallback: joi.boolean(),\n localeCodes: joi.array().items(joi.string()),\n locales: joi.alternatives().try(\n joi.array().items(\n joi.object().keys({\n code: joi.string(),\n fallbackLocale: joi.string(),\n label: joi\n .alternatives()\n .try(\n joi.object().pattern(joi.string(), [joi.string()]),\n joi.string(),\n joi.valid(false),\n ),\n rtl: joi.boolean(),\n toString: joi.func(),\n }),\n ),\n joi.array().items(joi.string()),\n ),\n }),\n joi.boolean(),\n ),\n maxDepth: joi.number().min(0).max(100),\n onInit: joi.func(),\n plugins: joi.array().items(joi.func()),\n routes: joi.object({\n admin: joi.string(),\n api: joi.string(),\n graphQL: joi.string(),\n graphQLPlayground: joi.string(),\n }),\n secret: joi.string(),\n serverURL: joi\n .string()\n .uri()\n .allow('')\n .custom((value, helper) => {\n const urlWithoutProtocol = value.split('//')[1]\n\n if (!urlWithoutProtocol) {\n return helper.message({\n custom: 'You need to include either \"https://\" or \"http://\" in your serverURL.',\n })\n }\n\n if (urlWithoutProtocol.indexOf('/') > -1) {\n return helper.message({\n custom:\n 'Your serverURL cannot have a path. It can only contain a protocol, a domain, and an optional port.',\n })\n }\n\n return value\n }),\n sharp: joi.any(),\n telemetry: joi.boolean(),\n typescript: joi.object({\n declare: joi.alternatives().try(joi.boolean(), joi.object({ ignoreTSError: joi.boolean() })),\n outputFile: joi.string(),\n }),\n upload: joi.object(),\n})\n"],"names":["joi","adminViewSchema","componentSchema","livePreviewSchema","component","alternatives","try","object","unknown","func","endpointsSchema","array","items","custom","pattern","string","any","handler","method","valid","path","root","bool","boolean","admin","autoLogin","keys","email","password","prefillOnly","avatar","buildPath","components","Nav","actions","afterDashboard","afterLogin","afterNavLinks","beforeDashboard","beforeLogin","beforeNavLinks","graphics","Icon","Logo","logout","Button","providers","views","Account","Dashboard","dateFormat","disable","livePreview","collections","globals","meta","icons","allow","ogImage","titleSuffix","routes","account","createFirstUser","forgot","inactivity","login","unauthorized","user","bin","key","scriptPath","cookiePrefix","cors","csrf","sparse","db","debug","defaultDepth","number","min","max","defaultMaxTextLength","editor","required","CellComponent","optional","FieldComponent","afterReadPromise","outputSchema","populationPromise","validate","endpoints","graphQL","disablePlaygroundInProduction","maxComplexity","mutations","function","queries","schemaOutputFile","hooks","afterError","i18n","indexSortableFields","local","localization","defaultLocale","fallback","localeCodes","locales","code","fallbackLocale","label","rtl","toString","maxDepth","onInit","plugins","api","graphQLPlayground","secret","serverURL","uri","value","helper","urlWithoutProtocol","split","message","indexOf","sharp","telemetry","typescript","declare","ignoreTSError","outputFile","upload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,SAAS,MAAK;AAErB,SAASC,eAAe,QAAQ,8BAA6B;AAC7D,SAASC,eAAe,EAAEC,iBAAiB,QAAQ,8BAA6B;AAEhF,MAAMC,YAAYJ,IAAIK,YAAY,GAAGC,GAAG,CAACN,IAAIO,MAAM,GAAGC,OAAO,IAAIR,IAAIS,IAAI;AAEzE,OAAO,MAAMC,kBAAkBV,IAAIK,YAAY,GAAGC,GAAG,CACnDN,IAAIW,KAAK,GAAGC,KAAK,CACfZ,IAAIO,MAAM,CAAC;IACTM,QAAQb,IAAIO,MAAM,GAAGO,OAAO,CAACd,IAAIe,MAAM,IAAIf,IAAIgB,GAAG;IAClDC,SAASjB,IAAIK,YAAY,GAAGC,GAAG,CAACN,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIS,IAAI,KAAKT,IAAIS,IAAI;IACvES,QAAQlB,IACLe,MAAM,GACNI,KAAK,CAAC,OAAO,QAAQ,QAAQ,OAAO,SAAS,UAAU,WAAW;IACrEC,MAAMpB,IAAIe,MAAM;IAChBM,MAAMrB,IAAIsB,IAAI;AAChB,KAEFtB,IAAIuB,OAAO,IACZ;AAED,eAAevB,IAAIO,MAAM,CAAC;IACxBiB,OAAOxB,IAAIO,MAAM,CAAC;QAChBkB,WAAWzB,IAAIK,YAAY,GAAGC,GAAG,CAC/BN,IAAIO,MAAM,GAAGmB,IAAI,CAAC;YAChBC,OAAO3B,IAAIe,MAAM;YACjBa,UAAU5B,IAAIe,MAAM;YACpBc,aAAa7B,IAAIuB,OAAO;QAC1B,IACAvB,IAAIuB,OAAO;QAEbO,QAAQ9B,IAAIK,YAAY,GAAGC,GAAG,CAACN,IAAIe,MAAM,IAAIX;QAC7C2B,WAAW/B,IAAIe,MAAM;QACrBiB,YAAYhC,IAAIO,MAAM,GAAGmB,IAAI,CAAC;YAC5BO,KAAK7B;YACL8B,SAASlC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YAC3B+B,gBAAgBnC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YAClCgC,YAAYpC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YAC9BiC,eAAerC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YACjCkC,iBAAiBtC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YACnCmC,aAAavC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YAC/BoC,gBAAgBxC,IAAIW,KAAK,GAAGC,KAAK,CAACR;YAClCqC,UAAUzC,IAAIO,MAAM,CAAC;gBACnBmC,MAAMtC;gBACNuC,MAAMvC;YACR;YACAwC,QAAQ5C,IAAIO,MAAM,CAAC;gBACjBsC,QAAQzC;YACV;YACA0C,WAAW9C,IAAIW,KAAK,GAAGC,KAAK,CAACR;YAC7B2C,OAAO/C,IAAIK,YAAY,GAAGC,GAAG,CAC3BN,IAAIO,MAAM,CAAC;gBACTyC,SAAShD,IAAIK,YAAY,GAAGC,GAAG,CAACF,WAAWH;gBAC3CgD,WAAWjD,IAAIK,YAAY,GAAGC,GAAG,CAACF,WAAWH;YAC/C,IACAD,IAAIO,MAAM,GAAGO,OAAO,CAACd,IAAIe,MAAM,IAAIX;QAEvC;QACAS,QAAQb,IAAIO,MAAM,GAAGO,OAAO,CAACd,IAAIe,MAAM,IAAIf,IAAIgB,GAAG;QAClDkC,YAAYlD,IAAIe,MAAM;QACtBoC,SAASnD,IAAIsB,IAAI;QACjB8B,aAAapD,IAAIO,MAAM,CAAC;YACtB,GAAGJ,iBAAiB;YACpBkD,aAAarD,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIe,MAAM;YACzCuC,SAAStD,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIe,MAAM;QACvC;QACAwC,MAAMvD,IAAIO,MAAM,GAAGmB,IAAI,CAAC;YACtB8B,OAAOxD,IACJK,YAAY,GACZC,GAAG,CACFN,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIK,YAAY,GAAGC,GAAG,CAACN,IAAIe,MAAM,IAAIf,IAAIO,MAAM,MACjEP,IAAIO,MAAM,IACVP,IAAIe,MAAM,GAAG0C,KAAK,CAAC;YAEvBC,SAAS1D,IAAIe,MAAM;YACnB4C,aAAa3D,IAAIe,MAAM;QACzB;QACA6C,QAAQ5D,IAAIO,MAAM,CAAC;YACjBsD,SAAS7D,IAAIe,MAAM;YACnB+C,iBAAiB9D,IAAIe,MAAM;YAC3BgD,QAAQ/D,IAAIe,MAAM;YAClBiD,YAAYhE,IAAIe,MAAM;YACtBkD,OAAOjE,IAAIe,MAAM;YACjB6B,QAAQ5C,IAAIe,MAAM;YAClBmD,cAAclE,IAAIe,MAAM;QAC1B;QACAoD,MAAMnE,IAAIe,MAAM;IAClB;IACAqD,KAAKpE,IAAIW,KAAK,GAAGC,KAAK,CACpBZ,IAAIO,MAAM,GAAGmB,IAAI,CAAC;QAChB2C,KAAKrE,IAAIe,MAAM;QACfuD,YAAYtE,IAAIe,MAAM;IACxB;IAEFsC,aAAarD,IAAIW,KAAK;IACtB4D,cAAcvE,IAAIe,MAAM;IACxByD,MAAM;QAACxE,IAAIe,MAAM,GAAGI,KAAK,CAAC;QAAMnB,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIe,MAAM;KAAI;IAChE0D,MAAMzE,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIe,MAAM,GAAG0C,KAAK,CAAC,KAAKiB,MAAM;IACtD7D,QAAQb,IAAIO,MAAM,GAAGO,OAAO,CAACd,IAAIe,MAAM,IAAIf,IAAIgB,GAAG;IAClD2D,IAAI3E,IAAIgB,GAAG;IACX4D,OAAO5E,IAAIuB,OAAO;IAClBsD,cAAc7E,IAAI8E,MAAM,GAAGC,GAAG,CAAC,GAAGC,GAAG,CAAC;IACtCC,sBAAsBjF,IAAI8E,MAAM;IAChCI,QAAQlF,IACLO,MAAM,GACN4E,QAAQ,GACRzD,IAAI,CAAC;QACJ0D,eAAelF,gBAAgBmF,QAAQ;QACvCC,gBAAgBpF,gBAAgBmF,QAAQ;QACxCE,kBAAkBvF,IAAIS,IAAI,GAAG4E,QAAQ;QACrCG,cAAcxF,IAAIS,IAAI,GAAG4E,QAAQ;QACjCI,mBAAmBzF,IAAIS,IAAI,GAAG4E,QAAQ;QACtCK,UAAU1F,IAAIS,IAAI,GAAG0E,QAAQ;IAC/B,GACC3E,OAAO;IACVmB,OAAO3B,IAAIK,YAAY,GAAGC,GAAG,CAACN,IAAIO,MAAM,IAAIP,IAAIS,IAAI;IACpDkF,WAAWjF;IACX4C,SAAStD,IAAIW,KAAK;IAClBiF,SAAS5F,IAAIO,MAAM,GAAGmB,IAAI,CAAC;QACzByB,SAASnD,IAAIuB,OAAO;QACpBsE,+BAA+B7F,IAAIuB,OAAO;QAC1CuE,eAAe9F,IAAI8E,MAAM;QACzBiB,WAAW/F,IAAIgG,QAAQ;QACvBC,SAASjG,IAAIgG,QAAQ;QACrBE,kBAAkBlG,IAAIe,MAAM;IAC9B;IACAoF,OAAOnG,IAAIO,MAAM,GAAGmB,IAAI,CAAC;QACvB0E,YAAYpG,IAAIS,IAAI;IACtB;IACA4F,MAAMrG,IAAIO,MAAM;IAChB+F,qBAAqBtG,IAAIuB,OAAO;IAChCgF,OAAOvG,IAAIuB,OAAO;IAClBiF,cAAcxG,IAAIK,YAAY,GAAGC,GAAG,CAClCN,IAAIO,MAAM,GAAGmB,IAAI,CAAC;QAChB+E,eAAezG,IAAIe,MAAM;QACzB2F,UAAU1G,IAAIuB,OAAO;QACrBoF,aAAa3G,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIe,MAAM;QACzC6F,SAAS5G,IAAIK,YAAY,GAAGC,GAAG,CAC7BN,IAAIW,KAAK,GAAGC,KAAK,CACfZ,IAAIO,MAAM,GAAGmB,IAAI,CAAC;YAChBmF,MAAM7G,IAAIe,MAAM;YAChB+F,gBAAgB9G,IAAIe,MAAM;YAC1BgG,OAAO/G,IACJK,YAAY,GACZC,GAAG,CACFN,IAAIO,MAAM,GAAGO,OAAO,CAACd,IAAIe,MAAM,IAAI;gBAACf,IAAIe,MAAM;aAAG,GACjDf,IAAIe,MAAM,IACVf,IAAImB,KAAK,CAAC;YAEd6F,KAAKhH,IAAIuB,OAAO;YAChB0F,UAAUjH,IAAIS,IAAI;QACpB,KAEFT,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIe,MAAM;IAEhC,IACAf,IAAIuB,OAAO;IAEb2F,UAAUlH,IAAI8E,MAAM,GAAGC,GAAG,CAAC,GAAGC,GAAG,CAAC;IAClCmC,QAAQnH,IAAIS,IAAI;IAChB2G,SAASpH,IAAIW,KAAK,GAAGC,KAAK,CAACZ,IAAIS,IAAI;IACnCmD,QAAQ5D,IAAIO,MAAM,CAAC;QACjBiB,OAAOxB,IAAIe,MAAM;QACjBsG,KAAKrH,IAAIe,MAAM;QACf6E,SAAS5F,IAAIe,MAAM;QACnBuG,mBAAmBtH,IAAIe,MAAM;IAC/B;IACAwG,QAAQvH,IAAIe,MAAM;IAClByG,WAAWxH,IACRe,MAAM,GACN0G,GAAG,GACHhE,KAAK,CAAC,IACN5C,MAAM,CAAC,CAAC6G,OAAOC;QACd,MAAMC,qBAAqBF,MAAMG,KAAK,CAAC,KAAK,CAAC,EAAE;QAE/C,IAAI,CAACD,oBAAoB;YACvB,OAAOD,OAAOG,OAAO,CAAC;gBACpBjH,QAAQ;YACV;QACF;QAEA,IAAI+G,mBAAmBG,OAAO,CAAC,OAAO,CAAC,GAAG;YACxC,OAAOJ,OAAOG,OAAO,CAAC;gBACpBjH,QACE;YACJ;QACF;QAEA,OAAO6G;IACT;IACFM,OAAOhI,IAAIgB,GAAG;IACdiH,WAAWjI,IAAIuB,OAAO;IACtB2G,YAAYlI,IAAIO,MAAM,CAAC;QACrB4H,SAASnI,IAAIK,YAAY,GAAGC,GAAG,CAACN,IAAIuB,OAAO,IAAIvB,IAAIO,MAAM,CAAC;YAAE6H,eAAepI,IAAIuB,OAAO;QAAG;QACzF8G,YAAYrI,IAAIe,MAAM;IACxB;IACAuH,QAAQtI,IAAIO,MAAM;AACpB,GAAE"}
|
|
1
|
+
{"version":3,"sources":["../../src/config/schema.ts"],"sourcesContent":["import joi from 'joi'\n\nimport { adminViewSchema } from './shared/adminViewSchema.js'\nimport { componentSchema, livePreviewSchema } from './shared/componentSchema.js'\nimport { openGraphSchema } from './shared/openGraphSchema.js'\n\nconst component = joi.alternatives().try(joi.object().unknown(), joi.func())\n\nexport const endpointsSchema = joi.alternatives().try(\n joi.array().items(\n joi.object({\n custom: joi.object().pattern(joi.string(), joi.any()),\n handler: joi.alternatives().try(joi.array().items(joi.func()), joi.func()),\n method: joi\n .string()\n .valid('get', 'head', 'post', 'put', 'patch', 'delete', 'connect', 'options'),\n path: joi.string(),\n root: joi.bool(),\n }),\n ),\n joi.boolean(),\n)\n\nexport default joi.object({\n admin: joi.object({\n autoLogin: joi.alternatives().try(\n joi.object().keys({\n email: joi.string(),\n password: joi.string(),\n prefillOnly: joi.boolean(),\n }),\n joi.boolean(),\n ),\n avatar: joi.alternatives().try(joi.string(), component),\n buildPath: joi.string(),\n components: joi.object().keys({\n Nav: component,\n actions: joi.array().items(component),\n afterDashboard: joi.array().items(component),\n afterLogin: joi.array().items(component),\n afterNavLinks: joi.array().items(component),\n beforeDashboard: joi.array().items(component),\n beforeLogin: joi.array().items(component),\n beforeNavLinks: joi.array().items(component),\n graphics: joi.object({\n Icon: component,\n Logo: component,\n }),\n logout: joi.object({\n Button: component,\n }),\n providers: joi.array().items(component),\n views: joi.alternatives().try(\n joi.object({\n Account: joi.alternatives().try(component, adminViewSchema),\n Dashboard: joi.alternatives().try(component, adminViewSchema),\n }),\n joi.object().pattern(joi.string(), component),\n ),\n }),\n custom: joi.object().pattern(joi.string(), joi.any()),\n dateFormat: joi.string(),\n disable: joi.bool(),\n livePreview: joi.object({\n ...livePreviewSchema,\n collections: joi.array().items(joi.string()),\n globals: joi.array().items(joi.string()),\n }),\n meta: joi.object().keys({\n defaultOGImageType: joi.string().valid('off', 'dynamic', 'static'),\n description: joi.string(),\n icons: joi.array().items(joi.object()),\n openGraph: openGraphSchema,\n titleSuffix: joi.string(),\n }),\n routes: joi.object({\n account: joi.string(),\n createFirstUser: joi.string(),\n forgot: joi.string(),\n inactivity: joi.string(),\n login: joi.string(),\n logout: joi.string(),\n unauthorized: joi.string(),\n }),\n user: joi.string(),\n }),\n bin: joi.array().items(\n joi.object().keys({\n key: joi.string(),\n scriptPath: joi.string(),\n }),\n ),\n collections: joi.array(),\n cookiePrefix: joi.string(),\n cors: [joi.string().valid('*'), joi.array().items(joi.string())],\n csrf: joi.array().items(joi.string().allow('')).sparse(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n db: joi.any(),\n debug: joi.boolean(),\n defaultDepth: joi.number().min(0).max(30),\n defaultMaxTextLength: joi.number(),\n editor: joi\n .object()\n .required()\n .keys({\n CellComponent: componentSchema.optional(),\n FieldComponent: componentSchema.optional(),\n afterReadPromise: joi.func().optional(),\n outputSchema: joi.func().optional(),\n populationPromise: joi.func().optional(),\n validate: joi.func().required(),\n })\n .unknown(),\n email: joi.alternatives().try(joi.object(), joi.func()),\n endpoints: endpointsSchema,\n globals: joi.array(),\n graphQL: joi.object().keys({\n disable: joi.boolean(),\n disablePlaygroundInProduction: joi.boolean(),\n maxComplexity: joi.number(),\n mutations: joi.function(),\n queries: joi.function(),\n schemaOutputFile: joi.string(),\n }),\n hooks: joi.object().keys({\n afterError: joi.func(),\n }),\n i18n: joi.object(),\n indexSortableFields: joi.boolean(),\n local: joi.boolean(),\n localization: joi.alternatives().try(\n joi.object().keys({\n defaultLocale: joi.string(),\n fallback: joi.boolean(),\n localeCodes: joi.array().items(joi.string()),\n locales: joi.alternatives().try(\n joi.array().items(\n joi.object().keys({\n code: joi.string(),\n fallbackLocale: joi.string(),\n label: joi\n .alternatives()\n .try(\n joi.object().pattern(joi.string(), [joi.string()]),\n joi.string(),\n joi.valid(false),\n ),\n rtl: joi.boolean(),\n toString: joi.func(),\n }),\n ),\n joi.array().items(joi.string()),\n ),\n }),\n joi.boolean(),\n ),\n maxDepth: joi.number().min(0).max(100),\n onInit: joi.func(),\n plugins: joi.array().items(joi.func()),\n routes: joi.object({\n admin: joi.string(),\n api: joi.string(),\n graphQL: joi.string(),\n graphQLPlayground: joi.string(),\n }),\n secret: joi.string(),\n serverURL: joi\n .string()\n .uri()\n .allow('')\n .custom((value, helper) => {\n const urlWithoutProtocol = value.split('//')[1]\n\n if (!urlWithoutProtocol) {\n return helper.message({\n custom: 'You need to include either \"https://\" or \"http://\" in your serverURL.',\n })\n }\n\n if (urlWithoutProtocol.indexOf('/') > -1) {\n return helper.message({\n custom:\n 'Your serverURL cannot have a path. It can only contain a protocol, a domain, and an optional port.',\n })\n }\n\n return value\n }),\n sharp: joi.any(),\n telemetry: joi.boolean(),\n typescript: joi.object({\n declare: joi.alternatives().try(joi.boolean(), joi.object({ ignoreTSError: joi.boolean() })),\n outputFile: joi.string(),\n }),\n upload: joi.object(),\n})\n"],"names":["joi","adminViewSchema","componentSchema","livePreviewSchema","openGraphSchema","component","alternatives","try","object","unknown","func","endpointsSchema","array","items","custom","pattern","string","any","handler","method","valid","path","root","bool","boolean","admin","autoLogin","keys","email","password","prefillOnly","avatar","buildPath","components","Nav","actions","afterDashboard","afterLogin","afterNavLinks","beforeDashboard","beforeLogin","beforeNavLinks","graphics","Icon","Logo","logout","Button","providers","views","Account","Dashboard","dateFormat","disable","livePreview","collections","globals","meta","defaultOGImageType","description","icons","openGraph","titleSuffix","routes","account","createFirstUser","forgot","inactivity","login","unauthorized","user","bin","key","scriptPath","cookiePrefix","cors","csrf","allow","sparse","db","debug","defaultDepth","number","min","max","defaultMaxTextLength","editor","required","CellComponent","optional","FieldComponent","afterReadPromise","outputSchema","populationPromise","validate","endpoints","graphQL","disablePlaygroundInProduction","maxComplexity","mutations","function","queries","schemaOutputFile","hooks","afterError","i18n","indexSortableFields","local","localization","defaultLocale","fallback","localeCodes","locales","code","fallbackLocale","label","rtl","toString","maxDepth","onInit","plugins","api","graphQLPlayground","secret","serverURL","uri","value","helper","urlWithoutProtocol","split","message","indexOf","sharp","telemetry","typescript","declare","ignoreTSError","outputFile","upload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,SAAS,MAAK;AAErB,SAASC,eAAe,QAAQ,8BAA6B;AAC7D,SAASC,eAAe,EAAEC,iBAAiB,QAAQ,8BAA6B;AAChF,SAASC,eAAe,QAAQ,8BAA6B;AAE7D,MAAMC,YAAYL,IAAIM,YAAY,GAAGC,GAAG,CAACP,IAAIQ,MAAM,GAAGC,OAAO,IAAIT,IAAIU,IAAI;AAEzE,OAAO,MAAMC,kBAAkBX,IAAIM,YAAY,GAAGC,GAAG,CACnDP,IAAIY,KAAK,GAAGC,KAAK,CACfb,IAAIQ,MAAM,CAAC;IACTM,QAAQd,IAAIQ,MAAM,GAAGO,OAAO,CAACf,IAAIgB,MAAM,IAAIhB,IAAIiB,GAAG;IAClDC,SAASlB,IAAIM,YAAY,GAAGC,GAAG,CAACP,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIU,IAAI,KAAKV,IAAIU,IAAI;IACvES,QAAQnB,IACLgB,MAAM,GACNI,KAAK,CAAC,OAAO,QAAQ,QAAQ,OAAO,SAAS,UAAU,WAAW;IACrEC,MAAMrB,IAAIgB,MAAM;IAChBM,MAAMtB,IAAIuB,IAAI;AAChB,KAEFvB,IAAIwB,OAAO,IACZ;AAED,eAAexB,IAAIQ,MAAM,CAAC;IACxBiB,OAAOzB,IAAIQ,MAAM,CAAC;QAChBkB,WAAW1B,IAAIM,YAAY,GAAGC,GAAG,CAC/BP,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;YAChBC,OAAO5B,IAAIgB,MAAM;YACjBa,UAAU7B,IAAIgB,MAAM;YACpBc,aAAa9B,IAAIwB,OAAO;QAC1B,IACAxB,IAAIwB,OAAO;QAEbO,QAAQ/B,IAAIM,YAAY,GAAGC,GAAG,CAACP,IAAIgB,MAAM,IAAIX;QAC7C2B,WAAWhC,IAAIgB,MAAM;QACrBiB,YAAYjC,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;YAC5BO,KAAK7B;YACL8B,SAASnC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YAC3B+B,gBAAgBpC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YAClCgC,YAAYrC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YAC9BiC,eAAetC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YACjCkC,iBAAiBvC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YACnCmC,aAAaxC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YAC/BoC,gBAAgBzC,IAAIY,KAAK,GAAGC,KAAK,CAACR;YAClCqC,UAAU1C,IAAIQ,MAAM,CAAC;gBACnBmC,MAAMtC;gBACNuC,MAAMvC;YACR;YACAwC,QAAQ7C,IAAIQ,MAAM,CAAC;gBACjBsC,QAAQzC;YACV;YACA0C,WAAW/C,IAAIY,KAAK,GAAGC,KAAK,CAACR;YAC7B2C,OAAOhD,IAAIM,YAAY,GAAGC,GAAG,CAC3BP,IAAIQ,MAAM,CAAC;gBACTyC,SAASjD,IAAIM,YAAY,GAAGC,GAAG,CAACF,WAAWJ;gBAC3CiD,WAAWlD,IAAIM,YAAY,GAAGC,GAAG,CAACF,WAAWJ;YAC/C,IACAD,IAAIQ,MAAM,GAAGO,OAAO,CAACf,IAAIgB,MAAM,IAAIX;QAEvC;QACAS,QAAQd,IAAIQ,MAAM,GAAGO,OAAO,CAACf,IAAIgB,MAAM,IAAIhB,IAAIiB,GAAG;QAClDkC,YAAYnD,IAAIgB,MAAM;QACtBoC,SAASpD,IAAIuB,IAAI;QACjB8B,aAAarD,IAAIQ,MAAM,CAAC;YACtB,GAAGL,iBAAiB;YACpBmD,aAAatD,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIgB,MAAM;YACzCuC,SAASvD,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIgB,MAAM;QACvC;QACAwC,MAAMxD,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;YACtB8B,oBAAoBzD,IAAIgB,MAAM,GAAGI,KAAK,CAAC,OAAO,WAAW;YACzDsC,aAAa1D,IAAIgB,MAAM;YACvB2C,OAAO3D,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIQ,MAAM;YACnCoD,WAAWxD;YACXyD,aAAa7D,IAAIgB,MAAM;QACzB;QACA8C,QAAQ9D,IAAIQ,MAAM,CAAC;YACjBuD,SAAS/D,IAAIgB,MAAM;YACnBgD,iBAAiBhE,IAAIgB,MAAM;YAC3BiD,QAAQjE,IAAIgB,MAAM;YAClBkD,YAAYlE,IAAIgB,MAAM;YACtBmD,OAAOnE,IAAIgB,MAAM;YACjB6B,QAAQ7C,IAAIgB,MAAM;YAClBoD,cAAcpE,IAAIgB,MAAM;QAC1B;QACAqD,MAAMrE,IAAIgB,MAAM;IAClB;IACAsD,KAAKtE,IAAIY,KAAK,GAAGC,KAAK,CACpBb,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;QAChB4C,KAAKvE,IAAIgB,MAAM;QACfwD,YAAYxE,IAAIgB,MAAM;IACxB;IAEFsC,aAAatD,IAAIY,KAAK;IACtB6D,cAAczE,IAAIgB,MAAM;IACxB0D,MAAM;QAAC1E,IAAIgB,MAAM,GAAGI,KAAK,CAAC;QAAMpB,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIgB,MAAM;KAAI;IAChE2D,MAAM3E,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIgB,MAAM,GAAG4D,KAAK,CAAC,KAAKC,MAAM;IACtD/D,QAAQd,IAAIQ,MAAM,GAAGO,OAAO,CAACf,IAAIgB,MAAM,IAAIhB,IAAIiB,GAAG;IAClD6D,IAAI9E,IAAIiB,GAAG;IACX8D,OAAO/E,IAAIwB,OAAO;IAClBwD,cAAchF,IAAIiF,MAAM,GAAGC,GAAG,CAAC,GAAGC,GAAG,CAAC;IACtCC,sBAAsBpF,IAAIiF,MAAM;IAChCI,QAAQrF,IACLQ,MAAM,GACN8E,QAAQ,GACR3D,IAAI,CAAC;QACJ4D,eAAerF,gBAAgBsF,QAAQ;QACvCC,gBAAgBvF,gBAAgBsF,QAAQ;QACxCE,kBAAkB1F,IAAIU,IAAI,GAAG8E,QAAQ;QACrCG,cAAc3F,IAAIU,IAAI,GAAG8E,QAAQ;QACjCI,mBAAmB5F,IAAIU,IAAI,GAAG8E,QAAQ;QACtCK,UAAU7F,IAAIU,IAAI,GAAG4E,QAAQ;IAC/B,GACC7E,OAAO;IACVmB,OAAO5B,IAAIM,YAAY,GAAGC,GAAG,CAACP,IAAIQ,MAAM,IAAIR,IAAIU,IAAI;IACpDoF,WAAWnF;IACX4C,SAASvD,IAAIY,KAAK;IAClBmF,SAAS/F,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;QACzByB,SAASpD,IAAIwB,OAAO;QACpBwE,+BAA+BhG,IAAIwB,OAAO;QAC1CyE,eAAejG,IAAIiF,MAAM;QACzBiB,WAAWlG,IAAImG,QAAQ;QACvBC,SAASpG,IAAImG,QAAQ;QACrBE,kBAAkBrG,IAAIgB,MAAM;IAC9B;IACAsF,OAAOtG,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;QACvB4E,YAAYvG,IAAIU,IAAI;IACtB;IACA8F,MAAMxG,IAAIQ,MAAM;IAChBiG,qBAAqBzG,IAAIwB,OAAO;IAChCkF,OAAO1G,IAAIwB,OAAO;IAClBmF,cAAc3G,IAAIM,YAAY,GAAGC,GAAG,CAClCP,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;QAChBiF,eAAe5G,IAAIgB,MAAM;QACzB6F,UAAU7G,IAAIwB,OAAO;QACrBsF,aAAa9G,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIgB,MAAM;QACzC+F,SAAS/G,IAAIM,YAAY,GAAGC,GAAG,CAC7BP,IAAIY,KAAK,GAAGC,KAAK,CACfb,IAAIQ,MAAM,GAAGmB,IAAI,CAAC;YAChBqF,MAAMhH,IAAIgB,MAAM;YAChBiG,gBAAgBjH,IAAIgB,MAAM;YAC1BkG,OAAOlH,IACJM,YAAY,GACZC,GAAG,CACFP,IAAIQ,MAAM,GAAGO,OAAO,CAACf,IAAIgB,MAAM,IAAI;gBAAChB,IAAIgB,MAAM;aAAG,GACjDhB,IAAIgB,MAAM,IACVhB,IAAIoB,KAAK,CAAC;YAEd+F,KAAKnH,IAAIwB,OAAO;YAChB4F,UAAUpH,IAAIU,IAAI;QACpB,KAEFV,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIgB,MAAM;IAEhC,IACAhB,IAAIwB,OAAO;IAEb6F,UAAUrH,IAAIiF,MAAM,GAAGC,GAAG,CAAC,GAAGC,GAAG,CAAC;IAClCmC,QAAQtH,IAAIU,IAAI;IAChB6G,SAASvH,IAAIY,KAAK,GAAGC,KAAK,CAACb,IAAIU,IAAI;IACnCoD,QAAQ9D,IAAIQ,MAAM,CAAC;QACjBiB,OAAOzB,IAAIgB,MAAM;QACjBwG,KAAKxH,IAAIgB,MAAM;QACf+E,SAAS/F,IAAIgB,MAAM;QACnByG,mBAAmBzH,IAAIgB,MAAM;IAC/B;IACA0G,QAAQ1H,IAAIgB,MAAM;IAClB2G,WAAW3H,IACRgB,MAAM,GACN4G,GAAG,GACHhD,KAAK,CAAC,IACN9D,MAAM,CAAC,CAAC+G,OAAOC;QACd,MAAMC,qBAAqBF,MAAMG,KAAK,CAAC,KAAK,CAAC,EAAE;QAE/C,IAAI,CAACD,oBAAoB;YACvB,OAAOD,OAAOG,OAAO,CAAC;gBACpBnH,QAAQ;YACV;QACF;QAEA,IAAIiH,mBAAmBG,OAAO,CAAC,OAAO,CAAC,GAAG;YACxC,OAAOJ,OAAOG,OAAO,CAAC;gBACpBnH,QACE;YACJ;QACF;QAEA,OAAO+G;IACT;IACFM,OAAOnI,IAAIiB,GAAG;IACdmH,WAAWpI,IAAIwB,OAAO;IACtB6G,YAAYrI,IAAIQ,MAAM,CAAC;QACrB8H,SAAStI,IAAIM,YAAY,GAAGC,GAAG,CAACP,IAAIwB,OAAO,IAAIxB,IAAIQ,MAAM,CAAC;YAAE+H,eAAevI,IAAIwB,OAAO;QAAG;QACzFgH,YAAYxI,IAAIgB,MAAM;IACxB;IACAyH,QAAQzI,IAAIQ,MAAM;AACpB,GAAE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openGraphSchema.d.ts","sourceRoot":"","sources":["../../../src/config/shared/openGraphSchema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAUrB,eAAO,MAAM,eAAe,uBAK1B,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import joi from 'joi';
|
|
2
|
+
const ogImageObj = joi.object({
|
|
3
|
+
type: joi.string(),
|
|
4
|
+
alt: joi.string(),
|
|
5
|
+
height: joi.alternatives().try(joi.string(), joi.number()),
|
|
6
|
+
url: joi.string(),
|
|
7
|
+
width: joi.alternatives().try(joi.string(), joi.number())
|
|
8
|
+
});
|
|
9
|
+
export const openGraphSchema = joi.object({
|
|
10
|
+
description: joi.string(),
|
|
11
|
+
images: joi.alternatives().try(joi.array().items(joi.string()), joi.array().items(ogImageObj)),
|
|
12
|
+
title: joi.string(),
|
|
13
|
+
url: joi.string()
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=openGraphSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/config/shared/openGraphSchema.ts"],"sourcesContent":["import joi from 'joi'\n\nconst ogImageObj = joi.object({\n type: joi.string(),\n alt: joi.string(),\n height: joi.alternatives().try(joi.string(), joi.number()),\n url: joi.string(),\n width: joi.alternatives().try(joi.string(), joi.number()),\n})\n\nexport const openGraphSchema = joi.object({\n description: joi.string(),\n images: joi.alternatives().try(joi.array().items(joi.string()), joi.array().items(ogImageObj)),\n title: joi.string(),\n url: joi.string(),\n})\n"],"names":["joi","ogImageObj","object","type","string","alt","height","alternatives","try","number","url","width","openGraphSchema","description","images","array","items","title"],"rangeMappings":";;;;;;;;;;;;;","mappings":"AAAA,OAAOA,SAAS,MAAK;AAErB,MAAMC,aAAaD,IAAIE,MAAM,CAAC;IAC5BC,MAAMH,IAAII,MAAM;IAChBC,KAAKL,IAAII,MAAM;IACfE,QAAQN,IAAIO,YAAY,GAAGC,GAAG,CAACR,IAAII,MAAM,IAAIJ,IAAIS,MAAM;IACvDC,KAAKV,IAAII,MAAM;IACfO,OAAOX,IAAIO,YAAY,GAAGC,GAAG,CAACR,IAAII,MAAM,IAAIJ,IAAIS,MAAM;AACxD;AAEA,OAAO,MAAMG,kBAAkBZ,IAAIE,MAAM,CAAC;IACxCW,aAAab,IAAII,MAAM;IACvBU,QAAQd,IAAIO,YAAY,GAAGC,GAAG,CAACR,IAAIe,KAAK,GAAGC,KAAK,CAAChB,IAAII,MAAM,KAAKJ,IAAIe,KAAK,GAAGC,KAAK,CAACf;IAClFgB,OAAOjB,IAAII,MAAM;IACjBM,KAAKV,IAAII,MAAM;AACjB,GAAE"}
|