UNPKG

@lucidcms/core

Version:

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

1 lines 2.39 kB
{"version":3,"file":"check-awaiting-sync.mjs","names":["constants"],"sources":["../../../../src/services/media/checks/check-awaiting-sync.ts"],"sourcesContent":["import { addMilliseconds } from \"date-fns\";\nimport constants from \"../../../constants/constants.js\";\nimport { copy } from \"../../../libs/i18n/index.js\";\nimport { MediaAwaitingSyncRepository } from \"../../../libs/repositories/index.js\";\nimport type { ServiceFn } from \"../../../utils/services/types.js\";\n\n/**\n * Checks if the given media key exists within the lucid_media_awaiting_sync table and if it has not expired.\n *\n * If it has expired or does not exist, this means the item has either already been created or deleted.\n */\nconst checkAwaitingSync: ServiceFn<\n\t[\n\t\t{\n\t\t\tkey: string;\n\t\t},\n\t],\n\ttrue\n> = async (context, data) => {\n\tconst MediaAwaitingSync = new MediaAwaitingSyncRepository(\n\t\tcontext.db.client,\n\t\tcontext.config.db,\n\t);\n\n\tconst awaitingSyncRes = await MediaAwaitingSync.selectSingle({\n\t\tselect: [\"key\"],\n\t\twhere: [\n\t\t\t{\n\t\t\t\tkey: \"key\",\n\t\t\t\toperator: \"=\",\n\t\t\t\tvalue: data.key,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"timestamp\",\n\t\t\t\toperator: \">\",\n\t\t\t\tvalue: addMilliseconds(\n\t\t\t\t\tnew Date(),\n\t\t\t\t\tconstants.mediaAwaitingSyncInterval * -1,\n\t\t\t\t).toISOString(),\n\t\t\t},\n\t\t],\n\t});\n\tif (awaitingSyncRes.error) return awaitingSyncRes;\n\n\tif (awaitingSyncRes.data === undefined) {\n\t\treturn {\n\t\t\terror: {\n\t\t\t\ttype: \"basic\",\n\t\t\t\tstatus: 400,\n\t\t\t\terrors: {\n\t\t\t\t\tfile: {\n\t\t\t\t\t\tcode: \"media_error\",\n\t\t\t\t\t\tmessage: copy(\"server:core.media.errors.not.awaiting.sync\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tdata: undefined,\n\t\t};\n\t}\n\n\treturn {\n\t\terror: undefined,\n\t\tdata: true,\n\t};\n};\n\nexport default checkAwaitingSync;\n"],"mappings":"gNAWA,MAAM,EAOF,MAAO,EAAS,IAAS,CAM5B,IAAM,EAAkB,MAAM,IALA,EAC7B,EAAQ,GAAG,OACX,EAAQ,OAAO,EAG8B,CAAC,CAAC,aAAa,CAC5D,OAAQ,CAAC,KAAK,EACd,MAAO,CACN,CACC,IAAK,MACL,SAAU,IACV,MAAO,EAAK,GACb,EACA,CACC,IAAK,YACL,SAAU,IACV,MAAO,EACN,IAAI,KACJA,EAAU,0BAA4B,EACvC,CAAC,CAAC,YAAY,CACf,CACD,CACD,CAAC,EAmBD,OAlBI,EAAgB,MAAc,EAE9B,EAAgB,OAAS,IAAA,GACrB,CACN,MAAO,CACN,KAAM,QACN,OAAQ,IACR,OAAQ,CACP,KAAM,CACL,KAAM,cACN,QAAS,EAAK,4CAA4C,CAC3D,CACD,CACD,EACA,KAAM,IAAA,EACP,EAGM,CACN,MAAO,IAAA,GACP,KAAM,EACP,CACD"}