{"version":3,"file":"provider.mjs","sources":["../../../server/src/services/provider.ts"],"sourcesContent":["import { isFunction } from 'lodash/fp';\nimport { file as fileUtils } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nimport { Config, UploadableFile } from '../types';\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => ({\n  async checkFileSize(file: UploadableFile) {\n    const { sizeLimit } = strapi.config.get<Config>('plugin::upload');\n    await strapi.plugin('upload').provider.checkFileSize(file, { sizeLimit });\n  },\n\n  async upload(file: UploadableFile) {\n    if (isFunction(strapi.plugin('upload').provider.uploadStream)) {\n      file.stream = file.getStream();\n      await strapi.plugin('upload').provider.uploadStream(file);\n\n      delete file.stream;\n\n      if ('filepath' in file) {\n        delete file.filepath;\n      }\n    } else {\n      file.buffer = await fileUtils.streamToBuffer(file.getStream());\n      await strapi.plugin('upload').provider.upload(file);\n\n      delete file.buffer;\n\n      if ('filepath' in file) {\n        delete file.filepath;\n      }\n    }\n  },\n});\n"],"names":["strapi","checkFileSize","file","sizeLimit","config","get","plugin","provider","upload","isFunction","uploadStream","stream","getStream","filepath","buffer","fileUtils","streamToBuffer"],"mappings":";;;AAMA,eAAe,CAAA,CAAC,EAAEA,MAAM,EAA2B,IAAM;AACvD,QAAA,MAAMC,eAAcC,IAAoB,EAAA;YACtC,MAAM,EAAEC,SAAS,EAAE,GAAGH,OAAOI,MAAM,CAACC,GAAG,CAAS,gBAAA,CAAA;YAChD,MAAML,MAAAA,CAAOM,MAAM,CAAC,QAAA,CAAA,CAAUC,QAAQ,CAACN,aAAa,CAACC,IAAAA,EAAM;AAAEC,gBAAAA;AAAU,aAAA,CAAA;AACzE,QAAA,CAAA;AAEA,QAAA,MAAMK,QAAON,MAAoB,EAAA;YAC/B,IAAIO,UAAAA,CAAWT,OAAOM,MAAM,CAAC,UAAUC,QAAQ,CAACG,YAAY,CAAA,EAAG;gBAC7DR,MAAAA,CAAKS,MAAM,GAAGT,MAAAA,CAAKU,SAAS,EAAA;AAC5B,gBAAA,MAAMZ,OAAOM,MAAM,CAAC,UAAUC,QAAQ,CAACG,YAAY,CAACR,MAAAA,CAAAA;AAEpD,gBAAA,OAAOA,OAAKS,MAAM;AAElB,gBAAA,IAAI,cAAcT,MAAAA,EAAM;AACtB,oBAAA,OAAOA,OAAKW,QAAQ;AACtB,gBAAA;YACF,CAAA,MAAO;AACLX,gBAAAA,MAAAA,CAAKY,MAAM,GAAG,MAAMC,KAAUC,cAAc,CAACd,OAAKU,SAAS,EAAA,CAAA;AAC3D,gBAAA,MAAMZ,OAAOM,MAAM,CAAC,UAAUC,QAAQ,CAACC,MAAM,CAACN,MAAAA,CAAAA;AAE9C,gBAAA,OAAOA,OAAKY,MAAM;AAElB,gBAAA,IAAI,cAAcZ,MAAAA,EAAM;AACtB,oBAAA,OAAOA,OAAKW,QAAQ;AACtB,gBAAA;AACF,YAAA;AACF,QAAA;AACF,KAAA,CAAC;;;;"}