{"version":3,"file":"storageAdapter.mjs","names":["magicError: UseMagicErrorReturn"],"sources":["../../src/adapter/storageAdapter.ts"],"sourcesContent":["import { getHandleUpload } from './handleUpload'\nimport { getHandleDelete } from './handleDelete'\nimport { getStaticHandler } from './staticHandler'\n\nimport { useMagicError, type UseMagicErrorReturn } from '@maas/error-handler'\nimport { MediaCloudErrors } from '../types/errors'\n\nimport type {\n  Adapter,\n  GeneratedAdapter,\n} from '@payloadcms/plugin-cloud-storage/types'\nimport type { Mux } from '@mux/mux-node'\nimport type { MediaCloudPluginOptions } from '../types'\nimport type { S3Store } from '../tus/stores/s3/s3Store'\n\ninterface StorageAdapterArgs {\n  pluginOptions: MediaCloudPluginOptions\n  getS3Store: () => S3Store\n  getMuxClient: () => Mux\n}\n\nconst magicError: UseMagicErrorReturn = useMagicError({\n  prefix: 'PLUGIN-MEDIA-CLOUD',\n})\n\n/**\n * Creates the storage adapter for media cloud plugin\n * @param args - The arguments for creating the storage adapter\n * @param args.pluginOptions - The media cloud plugin options\n * @param args.getS3Store - Function that returns an S3 client instance\n * @param args.getMuxClient - Function that returns a Mux client instance\n * @returns An Adapter function that returns a GeneratedAdapter configuration\n */\nexport function getStorageAdapter(args: StorageAdapterArgs): Adapter {\n  const { getS3Store, getMuxClient, pluginOptions } = args\n\n  const collection = pluginOptions.collection\n  magicError.assert(collection, MediaCloudErrors.COLLECTION_REQUIRED)\n\n  return (): GeneratedAdapter => ({\n    name: 'media-cloud',\n    clientUploads: true,\n    handleUpload: getHandleUpload(),\n    handleDelete: getHandleDelete({ getS3Store, getMuxClient }),\n    staticHandler: getStaticHandler({ getS3Store, collection }),\n  })\n}\n"],"mappings":";;;;;;;AAqBA,MAAMA,aAAkC,cAAc,EACpD,QAAQ,sBACT,CAAC;;;;;;;;;AAUF,SAAgB,kBAAkB,MAAmC;CACnE,MAAM,EAAE,YAAY,cAAc,kBAAkB;CAEpD,MAAM,aAAa,cAAc;AACjC,YAAW,OAAO,YAAY,iBAAiB,oBAAoB;AAEnE,eAAgC;EAC9B,MAAM;EACN,eAAe;EACf,cAAc,iBAAiB;EAC/B,cAAc,gBAAgB;GAAE;GAAY;GAAc,CAAC;EAC3D,eAAe,iBAAiB;GAAE;GAAY;GAAY,CAAC;EAC5D"}