@payloadcms/plugin-cloud-storage 3.74.0-canary.5 → 3.74.0-internal-debug.1b84a48

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.
@@ -1 +1 @@
1
- {"version":3,"file":"getFields.d.ts","sourceRoot":"","sources":["../../src/fields/getFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAyB,MAAM,SAAS,CAAA;AAI7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAIpE,UAAU,IAAI;IACZ,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,UAAU,EAAE,gBAAgB,CAAA;IAC5B,2BAA2B,CAAC,EAAE,IAAI,CAAA;IAClC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,SAAS,uGAOnB,IAAI,KAAG,KAAK,EAuJd,CAAA"}
1
+ {"version":3,"file":"getFields.d.ts","sourceRoot":"","sources":["../../src/fields/getFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAyB,MAAM,SAAS,CAAA;AAI7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAKpE,UAAU,IAAI;IACZ,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,UAAU,EAAE,gBAAgB,CAAA;IAC5B,2BAA2B,CAAC,EAAE,IAAI,CAAA;IAClC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,SAAS,uGAOnB,IAAI,KAAG,KAAK,EAuKd,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import path from 'path';
2
2
  import { getAfterReadHook } from '../hooks/afterRead.js';
3
+ import { getBeforeChangeHook } from '../hooks/beforeChange.js';
3
4
  export const getFields = ({ adapter, alwaysInsertFields, collection, disablePayloadAccessControl, generateFileURL, prefix })=>{
4
5
  const baseURLField = {
5
6
  name: 'url',
@@ -48,6 +49,14 @@ export const getFields = ({ adapter, alwaysInsertFields, collection, disablePayl
48
49
  generateFileURL
49
50
  }),
50
51
  ...existingURLField?.hooks?.afterRead || []
52
+ ],
53
+ beforeChange: [
54
+ getBeforeChangeHook({
55
+ adapter,
56
+ collection,
57
+ disablePayloadAccessControl
58
+ }),
59
+ ...existingURLField?.hooks?.beforeChange || []
51
60
  ]
52
61
  }
53
62
  });
@@ -93,6 +102,15 @@ export const getFields = ({ adapter, alwaysInsertFields, collection, disablePayl
93
102
  size
94
103
  }),
95
104
  ...typeof existingSizeURLField === 'object' && 'hooks' in existingSizeURLField && existingSizeURLField?.hooks?.afterRead || []
105
+ ],
106
+ beforeChange: [
107
+ getBeforeChangeHook({
108
+ adapter,
109
+ collection,
110
+ disablePayloadAccessControl,
111
+ size
112
+ }),
113
+ ...typeof existingSizeURLField === 'object' && 'hooks' in existingSizeURLField && existingSizeURLField?.hooks?.beforeChange || []
96
114
  ]
97
115
  }
98
116
  } : {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/fields/getFields.ts"],"sourcesContent":["import type { CollectionConfig, Field, GroupField, TextField } from 'payload'\n\nimport path from 'path'\n\nimport type { GeneratedAdapter, GenerateFileURL } from '../types.js'\n\nimport { getAfterReadHook } from '../hooks/afterRead.js'\n\ninterface Args {\n adapter?: GeneratedAdapter\n /**\n * When true, always insert the prefix field regardless of whether a prefix is configured.\n */\n alwaysInsertFields?: boolean\n collection: CollectionConfig\n disablePayloadAccessControl?: true\n generateFileURL?: GenerateFileURL\n prefix?: string\n}\n\nexport const getFields = ({\n adapter,\n alwaysInsertFields,\n collection,\n disablePayloadAccessControl,\n generateFileURL,\n prefix,\n}: Args): Field[] => {\n const baseURLField: TextField = {\n name: 'url',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: 'URL',\n }\n\n const basePrefixField: TextField = {\n name: 'prefix',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n }\n\n const fields = [...collection.fields, ...(adapter?.fields || [])]\n\n // Inject a hook into all URL fields to generate URLs\n\n let existingURLFieldIndex = -1\n\n const existingURLField = fields.find((existingField, i) => {\n if ('name' in existingField && existingField.name === 'url') {\n existingURLFieldIndex = i\n return true\n }\n return false\n }) as TextField\n\n if (existingURLFieldIndex > -1) {\n fields.splice(existingURLFieldIndex, 1)\n }\n\n // Only add afterRead hook if adapter is provided\n if (adapter) {\n fields.push({\n ...baseURLField,\n ...(existingURLField || {}),\n hooks: {\n afterRead: [\n getAfterReadHook({ adapter, collection, disablePayloadAccessControl, generateFileURL }),\n ...(existingURLField?.hooks?.afterRead || []),\n ],\n },\n } as TextField)\n } else {\n fields.push({\n ...baseURLField,\n ...(existingURLField || {}),\n } as TextField)\n }\n\n if (typeof collection.upload === 'object' && collection.upload.imageSizes) {\n let existingSizesFieldIndex = -1\n\n const existingSizesField = fields.find((existingField, i) => {\n if ('name' in existingField && existingField.name === 'sizes') {\n existingSizesFieldIndex = i\n return true\n }\n\n return false\n }) as GroupField\n\n if (existingSizesFieldIndex > -1) {\n fields.splice(existingSizesFieldIndex, 1)\n }\n\n const sizesField: Field = {\n ...(existingSizesField || {}),\n name: 'sizes',\n type: 'group',\n admin: {\n hidden: true,\n },\n fields: collection.upload.imageSizes.map((size) => {\n const existingSizeField = existingSizesField?.fields.find(\n (existingField) => 'name' in existingField && existingField.name === size.name,\n ) as GroupField\n\n const existingSizeURLField = existingSizeField?.fields.find(\n (existingField) => 'name' in existingField && existingField.name === 'url',\n ) as TextField\n\n // Only add afterRead hook if adapter is provided\n const sizeURLField: TextField = adapter\n ? ({\n ...(existingSizeURLField || {}),\n ...baseURLField,\n hooks: {\n afterRead: [\n getAfterReadHook({\n adapter,\n collection,\n disablePayloadAccessControl,\n generateFileURL,\n size,\n }),\n ...((typeof existingSizeURLField === 'object' &&\n 'hooks' in existingSizeURLField &&\n existingSizeURLField?.hooks?.afterRead) ||\n []),\n ],\n },\n } as TextField)\n : ({\n ...(existingSizeURLField || {}),\n ...baseURLField,\n } as TextField)\n\n return {\n ...existingSizeField,\n name: size.name,\n type: 'group',\n fields: [...(adapter?.fields || []), sizeURLField],\n } as Field\n }),\n }\n\n fields.push(sizesField)\n }\n\n // If prefix is enabled or alwaysInsertFields is true, save it to db\n if (typeof prefix !== 'undefined' || alwaysInsertFields) {\n let existingPrefixFieldIndex = -1\n\n const existingPrefixField = fields.find((existingField, i) => {\n if ('name' in existingField && existingField.name === 'prefix') {\n existingPrefixFieldIndex = i\n return true\n }\n return false\n }) as TextField\n\n if (existingPrefixFieldIndex > -1) {\n fields.splice(existingPrefixFieldIndex, 1)\n }\n\n fields.push({\n ...basePrefixField,\n ...(existingPrefixField || {}),\n defaultValue: prefix ? path.posix.join(prefix) : '',\n } as TextField)\n }\n\n return fields\n}\n"],"names":["path","getAfterReadHook","getFields","adapter","alwaysInsertFields","collection","disablePayloadAccessControl","generateFileURL","prefix","baseURLField","name","type","admin","hidden","readOnly","label","basePrefixField","fields","existingURLFieldIndex","existingURLField","find","existingField","i","splice","push","hooks","afterRead","upload","imageSizes","existingSizesFieldIndex","existingSizesField","sizesField","map","size","existingSizeField","existingSizeURLField","sizeURLField","existingPrefixFieldIndex","existingPrefixField","defaultValue","posix","join"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/fields/getFields.ts"],"sourcesContent":["import type { CollectionConfig, Field, GroupField, TextField } from 'payload'\n\nimport path from 'path'\n\nimport type { GeneratedAdapter, GenerateFileURL } from '../types.js'\n\nimport { getAfterReadHook } from '../hooks/afterRead.js'\nimport { getBeforeChangeHook } from '../hooks/beforeChange.js'\n\ninterface Args {\n adapter?: GeneratedAdapter\n /**\n * When true, always insert the prefix field regardless of whether a prefix is configured.\n */\n alwaysInsertFields?: boolean\n collection: CollectionConfig\n disablePayloadAccessControl?: true\n generateFileURL?: GenerateFileURL\n prefix?: string\n}\n\nexport const getFields = ({\n adapter,\n alwaysInsertFields,\n collection,\n disablePayloadAccessControl,\n generateFileURL,\n prefix,\n}: Args): Field[] => {\n const baseURLField: TextField = {\n name: 'url',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n label: 'URL',\n }\n\n const basePrefixField: TextField = {\n name: 'prefix',\n type: 'text',\n admin: {\n hidden: true,\n readOnly: true,\n },\n }\n\n const fields = [...collection.fields, ...(adapter?.fields || [])]\n\n // Inject a hook into all URL fields to generate URLs\n\n let existingURLFieldIndex = -1\n\n const existingURLField = fields.find((existingField, i) => {\n if ('name' in existingField && existingField.name === 'url') {\n existingURLFieldIndex = i\n return true\n }\n return false\n }) as TextField\n\n if (existingURLFieldIndex > -1) {\n fields.splice(existingURLFieldIndex, 1)\n }\n\n // Only add afterRead hook if adapter is provided\n if (adapter) {\n fields.push({\n ...baseURLField,\n ...(existingURLField || {}),\n hooks: {\n afterRead: [\n getAfterReadHook({ adapter, collection, disablePayloadAccessControl, generateFileURL }),\n ...(existingURLField?.hooks?.afterRead || []),\n ],\n beforeChange: [\n getBeforeChangeHook({ adapter, collection, disablePayloadAccessControl }),\n ...(existingURLField?.hooks?.beforeChange || []),\n ],\n },\n } as TextField)\n } else {\n fields.push({\n ...baseURLField,\n ...(existingURLField || {}),\n } as TextField)\n }\n\n if (typeof collection.upload === 'object' && collection.upload.imageSizes) {\n let existingSizesFieldIndex = -1\n\n const existingSizesField = fields.find((existingField, i) => {\n if ('name' in existingField && existingField.name === 'sizes') {\n existingSizesFieldIndex = i\n return true\n }\n\n return false\n }) as GroupField\n\n if (existingSizesFieldIndex > -1) {\n fields.splice(existingSizesFieldIndex, 1)\n }\n\n const sizesField: Field = {\n ...(existingSizesField || {}),\n name: 'sizes',\n type: 'group',\n admin: {\n hidden: true,\n },\n fields: collection.upload.imageSizes.map((size) => {\n const existingSizeField = existingSizesField?.fields.find(\n (existingField) => 'name' in existingField && existingField.name === size.name,\n ) as GroupField\n\n const existingSizeURLField = existingSizeField?.fields.find(\n (existingField) => 'name' in existingField && existingField.name === 'url',\n ) as TextField\n\n // Only add afterRead hook if adapter is provided\n const sizeURLField: TextField = adapter\n ? ({\n ...(existingSizeURLField || {}),\n ...baseURLField,\n hooks: {\n afterRead: [\n getAfterReadHook({\n adapter,\n collection,\n disablePayloadAccessControl,\n generateFileURL,\n size,\n }),\n ...((typeof existingSizeURLField === 'object' &&\n 'hooks' in existingSizeURLField &&\n existingSizeURLField?.hooks?.afterRead) ||\n []),\n ],\n beforeChange: [\n getBeforeChangeHook({\n adapter,\n collection,\n disablePayloadAccessControl,\n size,\n }),\n ...((typeof existingSizeURLField === 'object' &&\n 'hooks' in existingSizeURLField &&\n existingSizeURLField?.hooks?.beforeChange) ||\n []),\n ],\n },\n } as TextField)\n : ({\n ...(existingSizeURLField || {}),\n ...baseURLField,\n } as TextField)\n\n return {\n ...existingSizeField,\n name: size.name,\n type: 'group',\n fields: [...(adapter?.fields || []), sizeURLField],\n } as Field\n }),\n }\n\n fields.push(sizesField)\n }\n\n // If prefix is enabled or alwaysInsertFields is true, save it to db\n if (typeof prefix !== 'undefined' || alwaysInsertFields) {\n let existingPrefixFieldIndex = -1\n\n const existingPrefixField = fields.find((existingField, i) => {\n if ('name' in existingField && existingField.name === 'prefix') {\n existingPrefixFieldIndex = i\n return true\n }\n return false\n }) as TextField\n\n if (existingPrefixFieldIndex > -1) {\n fields.splice(existingPrefixFieldIndex, 1)\n }\n\n fields.push({\n ...basePrefixField,\n ...(existingPrefixField || {}),\n defaultValue: prefix ? path.posix.join(prefix) : '',\n } as TextField)\n }\n\n return fields\n}\n"],"names":["path","getAfterReadHook","getBeforeChangeHook","getFields","adapter","alwaysInsertFields","collection","disablePayloadAccessControl","generateFileURL","prefix","baseURLField","name","type","admin","hidden","readOnly","label","basePrefixField","fields","existingURLFieldIndex","existingURLField","find","existingField","i","splice","push","hooks","afterRead","beforeChange","upload","imageSizes","existingSizesFieldIndex","existingSizesField","sizesField","map","size","existingSizeField","existingSizeURLField","sizeURLField","existingPrefixFieldIndex","existingPrefixField","defaultValue","posix","join"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"afterChange.d.ts","sourceRoot":"","sources":["../../src/hooks/afterChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEhG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAInD,UAAU,IAAI;IACZ,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAED,eAAO,MAAM,kBAAkB,4BACH,IAAI,KAAG,yBAAyB,CAAC,QAAQ,GAAG,UAAU,CA+E/E,CAAA"}
1
+ {"version":3,"file":"afterChange.d.ts","sourceRoot":"","sources":["../../src/hooks/afterChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEhG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAInD,UAAU,IAAI;IACZ,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAED,eAAO,MAAM,kBAAkB,4BACH,IAAI,KAAG,yBAAyB,CAAC,QAAQ,GAAG,UAAU,CA0F/E,CAAA"}
@@ -1,5 +1,9 @@
1
1
  import { getIncomingFiles } from '../utilities/getIncomingFiles.js';
2
2
  export const getAfterChangeHook = ({ adapter, collection })=>async ({ doc, operation, previousDoc, req })=>{
3
+ // Skip if this is an internal update to prevent infinite loop
4
+ if (req.context?.skipCloudStorage) {
5
+ return doc;
6
+ }
3
7
  try {
4
8
  const files = getIncomingFiles({
5
9
  data: doc,
@@ -41,6 +45,10 @@ export const getAfterChangeHook = ({ adapter, collection })=>async ({ doc, opera
41
45
  }), {});
42
46
  if (Object.keys(uploadMetadata).length > 0) {
43
47
  try {
48
+ if (!req.context) {
49
+ req.context = {};
50
+ }
51
+ req.context.skipCloudStorage = true;
44
52
  await req.payload.update({
45
53
  id: doc.id,
46
54
  collection: collection.slug,
@@ -48,6 +56,7 @@ export const getAfterChangeHook = ({ adapter, collection })=>async ({ doc, opera
48
56
  depth: 0,
49
57
  req
50
58
  });
59
+ delete req.context.skipCloudStorage;
51
60
  return {
52
61
  ...doc,
53
62
  ...uploadMetadata
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/afterChange.ts"],"sourcesContent":["import type { CollectionAfterChangeHook, CollectionConfig, FileData, TypeWithID } from 'payload'\n\nimport type { GeneratedAdapter } from '../types.js'\n\nimport { getIncomingFiles } from '../utilities/getIncomingFiles.js'\n\ninterface Args {\n adapter: GeneratedAdapter\n collection: CollectionConfig\n}\n\nexport const getAfterChangeHook =\n ({ adapter, collection }: Args): CollectionAfterChangeHook<FileData & TypeWithID> =>\n async ({ doc, operation, previousDoc, req }) => {\n try {\n const files = getIncomingFiles({ data: doc, req })\n\n if (files.length > 0) {\n // If there is a previous doc, files and the operation is update,\n // delete the old files before uploading the new ones.\n if (previousDoc && operation === 'update') {\n let filesToDelete: string[] = []\n\n if (typeof previousDoc?.filename === 'string') {\n filesToDelete.push(previousDoc.filename)\n }\n\n if (typeof previousDoc.sizes === 'object') {\n filesToDelete = filesToDelete.concat(\n Object.values(previousDoc?.sizes || []).map(\n (resizedFileData) => resizedFileData?.filename as string,\n ),\n )\n }\n\n const deletionPromises = filesToDelete.map(async (filename) => {\n if (filename) {\n await adapter.handleDelete({ collection, doc: previousDoc, filename, req })\n }\n })\n\n await Promise.all(deletionPromises)\n }\n\n const uploadResults = await Promise.all(\n files.map((file) =>\n adapter.handleUpload({\n clientUploadContext: file.clientUploadContext,\n collection,\n data: doc,\n file,\n req,\n }),\n ),\n )\n\n const uploadMetadata = uploadResults\n .filter(\n (result): result is Partial<FileData & TypeWithID> =>\n result != null && typeof result === 'object',\n )\n .reduce(\n (acc, metadata) => ({ ...acc, ...metadata }),\n {} as Partial<FileData & TypeWithID>,\n )\n\n if (Object.keys(uploadMetadata).length > 0) {\n try {\n await req.payload.update({\n id: doc.id,\n collection: collection.slug,\n data: uploadMetadata,\n depth: 0,\n req,\n })\n return { ...doc, ...uploadMetadata }\n } catch (updateError: unknown) {\n req.payload.logger.warn(\n `Failed to persist upload data for collection ${collection.slug} document ${doc.id}: ${String(updateError)}`,\n )\n }\n }\n }\n } catch (err: unknown) {\n req.payload.logger.error(\n `There was an error while uploading files corresponding to the collection ${collection.slug} with filename ${doc.filename}:`,\n )\n req.payload.logger.error({ err })\n throw err\n }\n return doc\n }\n"],"names":["getIncomingFiles","getAfterChangeHook","adapter","collection","doc","operation","previousDoc","req","files","data","length","filesToDelete","filename","push","sizes","concat","Object","values","map","resizedFileData","deletionPromises","handleDelete","Promise","all","uploadResults","file","handleUpload","clientUploadContext","uploadMetadata","filter","result","reduce","acc","metadata","keys","payload","update","id","slug","depth","updateError","logger","warn","String","err","error"],"mappings":"AAIA,SAASA,gBAAgB,QAAQ,mCAAkC;AAOnE,OAAO,MAAMC,qBACX,CAAC,EAAEC,OAAO,EAAEC,UAAU,EAAQ,GAC9B,OAAO,EAAEC,GAAG,EAAEC,SAAS,EAAEC,WAAW,EAAEC,GAAG,EAAE;QACzC,IAAI;YACF,MAAMC,QAAQR,iBAAiB;gBAAES,MAAML;gBAAKG;YAAI;YAEhD,IAAIC,MAAME,MAAM,GAAG,GAAG;gBACpB,iEAAiE;gBACjE,sDAAsD;gBACtD,IAAIJ,eAAeD,cAAc,UAAU;oBACzC,IAAIM,gBAA0B,EAAE;oBAEhC,IAAI,OAAOL,aAAaM,aAAa,UAAU;wBAC7CD,cAAcE,IAAI,CAACP,YAAYM,QAAQ;oBACzC;oBAEA,IAAI,OAAON,YAAYQ,KAAK,KAAK,UAAU;wBACzCH,gBAAgBA,cAAcI,MAAM,CAClCC,OAAOC,MAAM,CAACX,aAAaQ,SAAS,EAAE,EAAEI,GAAG,CACzC,CAACC,kBAAoBA,iBAAiBP;oBAG5C;oBAEA,MAAMQ,mBAAmBT,cAAcO,GAAG,CAAC,OAAON;wBAChD,IAAIA,UAAU;4BACZ,MAAMV,QAAQmB,YAAY,CAAC;gCAAElB;gCAAYC,KAAKE;gCAAaM;gCAAUL;4BAAI;wBAC3E;oBACF;oBAEA,MAAMe,QAAQC,GAAG,CAACH;gBACpB;gBAEA,MAAMI,gBAAgB,MAAMF,QAAQC,GAAG,CACrCf,MAAMU,GAAG,CAAC,CAACO,OACTvB,QAAQwB,YAAY,CAAC;wBACnBC,qBAAqBF,KAAKE,mBAAmB;wBAC7CxB;wBACAM,MAAML;wBACNqB;wBACAlB;oBACF;gBAIJ,MAAMqB,iBAAiBJ,cACpBK,MAAM,CACL,CAACC,SACCA,UAAU,QAAQ,OAAOA,WAAW,UAEvCC,MAAM,CACL,CAACC,KAAKC,WAAc,CAAA;wBAAE,GAAGD,GAAG;wBAAE,GAAGC,QAAQ;oBAAC,CAAA,GAC1C,CAAC;gBAGL,IAAIjB,OAAOkB,IAAI,CAACN,gBAAgBlB,MAAM,GAAG,GAAG;oBAC1C,IAAI;wBACF,MAAMH,IAAI4B,OAAO,CAACC,MAAM,CAAC;4BACvBC,IAAIjC,IAAIiC,EAAE;4BACVlC,YAAYA,WAAWmC,IAAI;4BAC3B7B,MAAMmB;4BACNW,OAAO;4BACPhC;wBACF;wBACA,OAAO;4BAAE,GAAGH,GAAG;4BAAE,GAAGwB,cAAc;wBAAC;oBACrC,EAAE,OAAOY,aAAsB;wBAC7BjC,IAAI4B,OAAO,CAACM,MAAM,CAACC,IAAI,CACrB,CAAC,6CAA6C,EAAEvC,WAAWmC,IAAI,CAAC,UAAU,EAAElC,IAAIiC,EAAE,CAAC,EAAE,EAAEM,OAAOH,cAAc;oBAEhH;gBACF;YACF;QACF,EAAE,OAAOI,KAAc;YACrBrC,IAAI4B,OAAO,CAACM,MAAM,CAACI,KAAK,CACtB,CAAC,yEAAyE,EAAE1C,WAAWmC,IAAI,CAAC,eAAe,EAAElC,IAAIQ,QAAQ,CAAC,CAAC,CAAC;YAE9HL,IAAI4B,OAAO,CAACM,MAAM,CAACI,KAAK,CAAC;gBAAED;YAAI;YAC/B,MAAMA;QACR;QACA,OAAOxC;IACT,EAAC"}
1
+ {"version":3,"sources":["../../src/hooks/afterChange.ts"],"sourcesContent":["import type { CollectionAfterChangeHook, CollectionConfig, FileData, TypeWithID } from 'payload'\n\nimport type { GeneratedAdapter } from '../types.js'\n\nimport { getIncomingFiles } from '../utilities/getIncomingFiles.js'\n\ninterface Args {\n adapter: GeneratedAdapter\n collection: CollectionConfig\n}\n\nexport const getAfterChangeHook =\n ({ adapter, collection }: Args): CollectionAfterChangeHook<FileData & TypeWithID> =>\n async ({ doc, operation, previousDoc, req }) => {\n // Skip if this is an internal update to prevent infinite loop\n if (req.context?.skipCloudStorage) {\n return doc\n }\n\n try {\n const files = getIncomingFiles({ data: doc, req })\n\n if (files.length > 0) {\n // If there is a previous doc, files and the operation is update,\n // delete the old files before uploading the new ones.\n if (previousDoc && operation === 'update') {\n let filesToDelete: string[] = []\n\n if (typeof previousDoc?.filename === 'string') {\n filesToDelete.push(previousDoc.filename)\n }\n\n if (typeof previousDoc.sizes === 'object') {\n filesToDelete = filesToDelete.concat(\n Object.values(previousDoc?.sizes || []).map(\n (resizedFileData) => resizedFileData?.filename as string,\n ),\n )\n }\n\n const deletionPromises = filesToDelete.map(async (filename) => {\n if (filename) {\n await adapter.handleDelete({ collection, doc: previousDoc, filename, req })\n }\n })\n\n await Promise.all(deletionPromises)\n }\n\n const uploadResults = await Promise.all(\n files.map((file) =>\n adapter.handleUpload({\n clientUploadContext: file.clientUploadContext,\n collection,\n data: doc,\n file,\n req,\n }),\n ),\n )\n\n const uploadMetadata = uploadResults\n .filter(\n (result): result is Partial<FileData & TypeWithID> =>\n result != null && typeof result === 'object',\n )\n .reduce(\n (acc, metadata) => ({ ...acc, ...metadata }),\n {} as Partial<FileData & TypeWithID>,\n )\n\n if (Object.keys(uploadMetadata).length > 0) {\n try {\n if (!req.context) {\n req.context = {}\n }\n req.context.skipCloudStorage = true\n\n await req.payload.update({\n id: doc.id,\n collection: collection.slug,\n data: uploadMetadata,\n depth: 0,\n req,\n })\n delete req.context.skipCloudStorage\n return { ...doc, ...uploadMetadata }\n } catch (updateError: unknown) {\n req.payload.logger.warn(\n `Failed to persist upload data for collection ${collection.slug} document ${doc.id}: ${String(updateError)}`,\n )\n }\n }\n }\n } catch (err: unknown) {\n req.payload.logger.error(\n `There was an error while uploading files corresponding to the collection ${collection.slug} with filename ${doc.filename}:`,\n )\n req.payload.logger.error({ err })\n throw err\n }\n return doc\n }\n"],"names":["getIncomingFiles","getAfterChangeHook","adapter","collection","doc","operation","previousDoc","req","context","skipCloudStorage","files","data","length","filesToDelete","filename","push","sizes","concat","Object","values","map","resizedFileData","deletionPromises","handleDelete","Promise","all","uploadResults","file","handleUpload","clientUploadContext","uploadMetadata","filter","result","reduce","acc","metadata","keys","payload","update","id","slug","depth","updateError","logger","warn","String","err","error"],"mappings":"AAIA,SAASA,gBAAgB,QAAQ,mCAAkC;AAOnE,OAAO,MAAMC,qBACX,CAAC,EAAEC,OAAO,EAAEC,UAAU,EAAQ,GAC9B,OAAO,EAAEC,GAAG,EAAEC,SAAS,EAAEC,WAAW,EAAEC,GAAG,EAAE;QACzC,8DAA8D;QAC9D,IAAIA,IAAIC,OAAO,EAAEC,kBAAkB;YACjC,OAAOL;QACT;QAEA,IAAI;YACF,MAAMM,QAAQV,iBAAiB;gBAAEW,MAAMP;gBAAKG;YAAI;YAEhD,IAAIG,MAAME,MAAM,GAAG,GAAG;gBACpB,iEAAiE;gBACjE,sDAAsD;gBACtD,IAAIN,eAAeD,cAAc,UAAU;oBACzC,IAAIQ,gBAA0B,EAAE;oBAEhC,IAAI,OAAOP,aAAaQ,aAAa,UAAU;wBAC7CD,cAAcE,IAAI,CAACT,YAAYQ,QAAQ;oBACzC;oBAEA,IAAI,OAAOR,YAAYU,KAAK,KAAK,UAAU;wBACzCH,gBAAgBA,cAAcI,MAAM,CAClCC,OAAOC,MAAM,CAACb,aAAaU,SAAS,EAAE,EAAEI,GAAG,CACzC,CAACC,kBAAoBA,iBAAiBP;oBAG5C;oBAEA,MAAMQ,mBAAmBT,cAAcO,GAAG,CAAC,OAAON;wBAChD,IAAIA,UAAU;4BACZ,MAAMZ,QAAQqB,YAAY,CAAC;gCAAEpB;gCAAYC,KAAKE;gCAAaQ;gCAAUP;4BAAI;wBAC3E;oBACF;oBAEA,MAAMiB,QAAQC,GAAG,CAACH;gBACpB;gBAEA,MAAMI,gBAAgB,MAAMF,QAAQC,GAAG,CACrCf,MAAMU,GAAG,CAAC,CAACO,OACTzB,QAAQ0B,YAAY,CAAC;wBACnBC,qBAAqBF,KAAKE,mBAAmB;wBAC7C1B;wBACAQ,MAAMP;wBACNuB;wBACApB;oBACF;gBAIJ,MAAMuB,iBAAiBJ,cACpBK,MAAM,CACL,CAACC,SACCA,UAAU,QAAQ,OAAOA,WAAW,UAEvCC,MAAM,CACL,CAACC,KAAKC,WAAc,CAAA;wBAAE,GAAGD,GAAG;wBAAE,GAAGC,QAAQ;oBAAC,CAAA,GAC1C,CAAC;gBAGL,IAAIjB,OAAOkB,IAAI,CAACN,gBAAgBlB,MAAM,GAAG,GAAG;oBAC1C,IAAI;wBACF,IAAI,CAACL,IAAIC,OAAO,EAAE;4BAChBD,IAAIC,OAAO,GAAG,CAAC;wBACjB;wBACAD,IAAIC,OAAO,CAACC,gBAAgB,GAAG;wBAE/B,MAAMF,IAAI8B,OAAO,CAACC,MAAM,CAAC;4BACvBC,IAAInC,IAAImC,EAAE;4BACVpC,YAAYA,WAAWqC,IAAI;4BAC3B7B,MAAMmB;4BACNW,OAAO;4BACPlC;wBACF;wBACA,OAAOA,IAAIC,OAAO,CAACC,gBAAgB;wBACnC,OAAO;4BAAE,GAAGL,GAAG;4BAAE,GAAG0B,cAAc;wBAAC;oBACrC,EAAE,OAAOY,aAAsB;wBAC7BnC,IAAI8B,OAAO,CAACM,MAAM,CAACC,IAAI,CACrB,CAAC,6CAA6C,EAAEzC,WAAWqC,IAAI,CAAC,UAAU,EAAEpC,IAAImC,EAAE,CAAC,EAAE,EAAEM,OAAOH,cAAc;oBAEhH;gBACF;YACF;QACF,EAAE,OAAOI,KAAc;YACrBvC,IAAI8B,OAAO,CAACM,MAAM,CAACI,KAAK,CACtB,CAAC,yEAAyE,EAAE5C,WAAWqC,IAAI,CAAC,eAAe,EAAEpC,IAAIU,QAAQ,CAAC,CAAC,CAAC;YAE9HP,IAAI8B,OAAO,CAACM,MAAM,CAACI,KAAK,CAAC;gBAAED;YAAI;YAC/B,MAAMA;QACR;QACA,OAAO1C;IACT,EAAC"}
@@ -0,0 +1,11 @@
1
+ import type { CollectionConfig, FieldHook, ImageSize } from 'payload';
2
+ import type { GeneratedAdapter } from '../types.js';
3
+ interface Args {
4
+ adapter: GeneratedAdapter;
5
+ collection: CollectionConfig;
6
+ disablePayloadAccessControl?: boolean;
7
+ size?: ImageSize;
8
+ }
9
+ export declare const getBeforeChangeHook: ({ adapter, collection, disablePayloadAccessControl, size }: Args) => FieldHook;
10
+ export {};
11
+ //# sourceMappingURL=beforeChange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beforeChange.d.ts","sourceRoot":"","sources":["../../src/hooks/beforeChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAEnD,UAAU,IAAI;IACZ,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,gBAAgB,CAAA;IAC5B,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB;AAED,eAAO,MAAM,mBAAmB,+DAC+B,IAAI,KAAG,SA4BnE,CAAA"}
@@ -0,0 +1,25 @@
1
+ export const getBeforeChangeHook = ({ adapter, collection, disablePayloadAccessControl, size })=>async ({ data, originalDoc, value })=>{
2
+ // Only handle the disablePayloadAccessControl: true case here
3
+ // When false, let the core beforeChange hook from getBaseFields handle it
4
+ if (!disablePayloadAccessControl) {
5
+ return value;
6
+ }
7
+ const filename = size ? data?.sizes?.[size.name]?.filename : data?.filename;
8
+ if (!filename) {
9
+ return value;
10
+ }
11
+ const prefix = data?.prefix;
12
+ // Store the full URL in the database so files can be accessed directly
13
+ // from the storage provider without going through Payload's API
14
+ if (adapter.generateURL) {
15
+ return await adapter.generateURL({
16
+ collection,
17
+ data: data || originalDoc,
18
+ filename,
19
+ prefix
20
+ });
21
+ }
22
+ return value;
23
+ };
24
+
25
+ //# sourceMappingURL=beforeChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/hooks/beforeChange.ts"],"sourcesContent":["import type { CollectionConfig, FieldHook, ImageSize } from 'payload'\n\nimport type { GeneratedAdapter } from '../types.js'\n\ninterface Args {\n adapter: GeneratedAdapter\n collection: CollectionConfig\n disablePayloadAccessControl?: boolean\n size?: ImageSize\n}\n\nexport const getBeforeChangeHook =\n ({ adapter, collection, disablePayloadAccessControl, size }: Args): FieldHook =>\n async ({ data, originalDoc, value }) => {\n // Only handle the disablePayloadAccessControl: true case here\n // When false, let the core beforeChange hook from getBaseFields handle it\n if (!disablePayloadAccessControl) {\n return value\n }\n\n const filename = size ? data?.sizes?.[size.name]?.filename : data?.filename\n\n if (!filename) {\n return value\n }\n\n const prefix = data?.prefix\n\n // Store the full URL in the database so files can be accessed directly\n // from the storage provider without going through Payload's API\n if (adapter.generateURL) {\n return await adapter.generateURL({\n collection,\n data: data || originalDoc,\n filename,\n prefix,\n })\n }\n\n return value\n }\n"],"names":["getBeforeChangeHook","adapter","collection","disablePayloadAccessControl","size","data","originalDoc","value","filename","sizes","name","prefix","generateURL"],"mappings":"AAWA,OAAO,MAAMA,sBACX,CAAC,EAAEC,OAAO,EAAEC,UAAU,EAAEC,2BAA2B,EAAEC,IAAI,EAAQ,GACjE,OAAO,EAAEC,IAAI,EAAEC,WAAW,EAAEC,KAAK,EAAE;QACjC,8DAA8D;QAC9D,0EAA0E;QAC1E,IAAI,CAACJ,6BAA6B;YAChC,OAAOI;QACT;QAEA,MAAMC,WAAWJ,OAAOC,MAAMI,OAAO,CAACL,KAAKM,IAAI,CAAC,EAAEF,WAAWH,MAAMG;QAEnE,IAAI,CAACA,UAAU;YACb,OAAOD;QACT;QAEA,MAAMI,SAASN,MAAMM;QAErB,uEAAuE;QACvE,gEAAgE;QAChE,IAAIV,QAAQW,WAAW,EAAE;YACvB,OAAO,MAAMX,QAAQW,WAAW,CAAC;gBAC/BV;gBACAG,MAAMA,QAAQC;gBACdE;gBACAG;YACF;QACF;QAEA,OAAOJ;IACT,EAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/plugin-cloud-storage",
3
- "version": "3.74.0-canary.5",
3
+ "version": "3.74.0-internal-debug.1b84a48",
4
4
  "description": "The official cloud storage plugin for Payload CMS",
5
5
  "homepage": "https://payloadcms.com",
6
6
  "repository": {
@@ -51,18 +51,18 @@
51
51
  "dependencies": {
52
52
  "find-node-modules": "^2.1.3",
53
53
  "range-parser": "^1.2.1",
54
- "@payloadcms/ui": "3.74.0-canary.5"
54
+ "@payloadcms/ui": "3.74.0-internal-debug.1b84a48"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@types/find-node-modules": "^2.1.2",
58
58
  "@types/react": "19.2.9",
59
59
  "@types/react-dom": "19.2.3",
60
- "payload": "3.74.0-canary.5"
60
+ "payload": "3.74.0-internal-debug.1b84a48"
61
61
  },
62
62
  "peerDependencies": {
63
63
  "react": "^19.0.1 || ^19.1.2 || ^19.2.1",
64
64
  "react-dom": "^19.0.1 || ^19.1.2 || ^19.2.1",
65
- "payload": "3.74.0-canary.5"
65
+ "payload": "3.74.0-internal-debug.1b84a48"
66
66
  },
67
67
  "publishConfig": {
68
68
  "registry": "https://registry.npmjs.org/"