@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
2 lines • 1.54 kB
JavaScript
import e,{resolvePreviewCollectionVersionType as t}from"../documents/helpers/resolve-relation-version-type.mjs";import n from"./helpers/resolve-session.mjs";const r=async(r,i)=>{let a=await n(r,{token:i.token});if(a.error)return a;let o=a.data,s={versionType:i.versionType,versionId:i.versionId},c=e=>{let n=t({config:r.config,sourceCollectionKey:o.entry_collection_key,sourceVersionType:e,targetCollectionKey:i.collectionKey,fallbackVersionType:i.versionType});return{versionType:n,...n===s.versionType&&s.versionId!==void 0?{versionId:s.versionId}:{}}};if(o.mode===`scoped`){if(i.collectionKey===o.entry_collection_key)return{error:void 0,data:{mode:`scoped`,target:`entry`,entry:{collectionKey:o.entry_collection_key,documentId:o.entry_document_id,versionType:o.entry_version_type,versionId:o.entry_version_id??void 0}}};if(o.entry_version_type===`revision`)return{error:void 0,data:{mode:`scoped`,target:`auxiliary`,entry:{collectionKey:o.entry_collection_key,documentId:o.entry_document_id},...s}};let t=await e(r,{collectionKey:o.entry_collection_key,documentId:o.entry_document_id,versionType:o.entry_version_type,versionId:o.entry_version_id??void 0});return t.error?t:{error:void 0,data:{mode:`scoped`,target:`auxiliary`,entry:{collectionKey:o.entry_collection_key,documentId:o.entry_document_id},...c(t.data.versionType)}}}return{error:void 0,data:{mode:`perspective`,entry:{collectionKey:o.entry_collection_key,documentId:o.entry_document_id},...c(o.entry_version_type)}}};export{r as default};
//# sourceMappingURL=authorize.mjs.map