UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

1 lines 1.7 kB
{"version":3,"file":"resolve-preview-mode.mjs","names":["constants"],"sources":["../../../../src/services/preview-sessions/helpers/resolve-preview-mode.ts"],"sourcesContent":["import constants from \"../../../constants/constants.js\";\nimport { copy } from \"../../../libs/i18n/index.js\";\nimport type { DocumentVersionType, PreviewMode } from \"../../../types.js\";\nimport type { ServiceResponse } from \"../../../utils/services/types.js\";\n\nexport const requiresPinnedPreviewVersion = (\n\tversionType: DocumentVersionType,\n) =>\n\tversionType === \"revision\" ||\n\tversionType === constants.collectionBuilder.publishing.snapshotVersionType;\n\n/** Resolves the preview mode and rejects modes unsupported by the version type. */\nconst resolvePreviewMode = async (data: {\n\tversionType: DocumentVersionType;\n\tmode?: PreviewMode;\n}): ServiceResponse<PreviewMode> => {\n\tif (\n\t\tdata.mode === \"perspective\" &&\n\t\trequiresPinnedPreviewVersion(data.versionType)\n\t) {\n\t\treturn {\n\t\t\terror: {\n\t\t\t\ttype: \"basic\",\n\t\t\t\tmessage: copy(\"server:core.documents.preview.mode.unsupported.message\"),\n\t\t\t\tstatus: 400,\n\t\t\t},\n\t\t\tdata: undefined,\n\t\t};\n\t}\n\n\treturn {\n\t\terror: undefined,\n\t\tdata:\n\t\t\tdata.mode ??\n\t\t\t(requiresPinnedPreviewVersion(data.versionType)\n\t\t\t\t? \"scoped\"\n\t\t\t\t: \"perspective\"),\n\t};\n};\n\nexport default resolvePreviewMode;\n"],"mappings":"mGAKA,MAAa,EACZ,GAEA,IAAgB,YAChB,IAAgBA,EAAU,kBAAkB,WAAW,oBAGlD,EAAqB,KAAO,IAKhC,EAAK,OAAS,eACd,EAA6B,EAAK,WAAW,EAEtC,CACN,MAAO,CACN,KAAM,QACN,QAAS,EAAK,wDAAwD,EACtE,OAAQ,GACT,EACA,KAAM,IAAA,EACP,EAGM,CACN,MAAO,IAAA,GACP,KACC,EAAK,OACJ,EAA6B,EAAK,WAAW,EAC3C,SACA,cACL"}