@webiny/api-file-manager 5.40.0-beta.1 → 5.40.0-beta.3

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.
Files changed (80) hide show
  1. package/FileManagerContextSetup.js.map +1 -1
  2. package/cmsFileStorage/CmsFilesStorage.js.map +1 -1
  3. package/cmsFileStorage/ListFilesWhereProcessor.js.map +1 -1
  4. package/cmsFileStorage/ListTagsWhereProcessor.js.map +1 -1
  5. package/cmsFileStorage/file.model.js +1 -3
  6. package/cmsFileStorage/file.model.js.map +1 -1
  7. package/contants.js +1 -2
  8. package/contants.js.map +1 -1
  9. package/createFileManager/files.crud.js.map +1 -1
  10. package/createFileManager/index.js.map +1 -1
  11. package/createFileManager/permissions/FilesPermissions.js.map +1 -1
  12. package/createFileManager/settings.crud.js +3 -1
  13. package/createFileManager/settings.crud.js.map +1 -1
  14. package/createFileManager/system.crud.js.map +1 -1
  15. package/delivery/AssetDelivery/AliasAssetRequestResolver.d.ts +2 -2
  16. package/delivery/AssetDelivery/AliasAssetRequestResolver.js.map +1 -1
  17. package/delivery/AssetDelivery/Asset.js.map +1 -1
  18. package/delivery/AssetDelivery/AssetDeliveryConfig.js.map +1 -1
  19. package/delivery/AssetDelivery/AssetRequest.js.map +1 -1
  20. package/delivery/AssetDelivery/FilesAssetRequestResolver.js.map +1 -1
  21. package/delivery/AssetDelivery/NullAssetOutputStrategy.js.map +1 -1
  22. package/delivery/AssetDelivery/NullAssetReply.js.map +1 -1
  23. package/delivery/AssetDelivery/NullAssetResolver.js.map +1 -1
  24. package/delivery/AssetDelivery/NullRequestResolver.js.map +1 -1
  25. package/delivery/AssetDelivery/SetCacheControlHeaders.js.map +1 -1
  26. package/delivery/AssetDelivery/SetResponseHeaders.js.map +1 -1
  27. package/delivery/AssetDelivery/abstractions/AssetContentsReader.js.map +1 -1
  28. package/delivery/AssetDelivery/abstractions/AssetOutputStrategy.js.map +1 -1
  29. package/delivery/AssetDelivery/abstractions/AssetProcessor.js.map +1 -1
  30. package/delivery/AssetDelivery/abstractions/AssetReply.js.map +1 -1
  31. package/delivery/AssetDelivery/abstractions/AssetRequestResolver.js.map +1 -1
  32. package/delivery/AssetDelivery/abstractions/AssetResolver.js.map +1 -1
  33. package/delivery/AssetDelivery/abstractions/AssetTransformationStrategy.js.map +1 -1
  34. package/delivery/AssetDelivery/createAssetDeliveryPluginLoader.js.map +1 -1
  35. package/delivery/AssetDelivery/privateFiles/AssetAuthorizer.js.map +1 -1
  36. package/delivery/AssetDelivery/privateFiles/NotAuthorizedAssetReply.js.map +1 -1
  37. package/delivery/AssetDelivery/privateFiles/NotAuthorizedOutputStrategy.js.map +1 -1
  38. package/delivery/AssetDelivery/privateFiles/PrivateAuthenticatedAuthorizer.js.map +1 -1
  39. package/delivery/AssetDelivery/privateFiles/PrivateCache.js.map +1 -1
  40. package/delivery/AssetDelivery/privateFiles/PrivateFileAssetRequestResolver.js.map +1 -1
  41. package/delivery/AssetDelivery/privateFiles/PrivateFilesAssetProcessor.js.map +1 -1
  42. package/delivery/AssetDelivery/privateFiles/PublicCache.js.map +1 -1
  43. package/delivery/AssetDelivery/privateFiles/RedirectToPrivateUrlOutputStrategy.js.map +1 -1
  44. package/delivery/AssetDelivery/privateFiles/RedirectToPublicUrlOutputStrategy.js.map +1 -1
  45. package/delivery/AssetDelivery/privateFiles/internalIdentity.js +1 -2
  46. package/delivery/AssetDelivery/privateFiles/internalIdentity.js.map +1 -1
  47. package/delivery/AssetDelivery/transformation/PassthroughAssetProcessor.js.map +1 -1
  48. package/delivery/AssetDelivery/transformation/PassthroughAssetTransformationStrategy.js.map +1 -1
  49. package/delivery/AssetDelivery/transformation/TransformationAssetProcessor.js.map +1 -1
  50. package/delivery/index.js.map +1 -1
  51. package/delivery/setupAssetDelivery.d.ts +2 -2
  52. package/delivery/setupAssetDelivery.js.map +1 -1
  53. package/graphql/baseSchema.js.map +1 -1
  54. package/graphql/createFilesTypeDefs.js +2 -3
  55. package/graphql/createFilesTypeDefs.js.map +1 -1
  56. package/graphql/filesSchema.js.map +1 -1
  57. package/graphql/getFileByUrl.js.map +1 -1
  58. package/graphql/index.js.map +1 -1
  59. package/graphql/utils.js.map +1 -1
  60. package/handlers/manage/imageManager.js +1 -2
  61. package/handlers/manage/imageManager.js.map +1 -1
  62. package/handlers/manage/index.js.map +1 -1
  63. package/handlers/manage/legacyUtils.js +4 -8
  64. package/handlers/manage/legacyUtils.js.map +1 -1
  65. package/handlers/manage/utils.js +4 -8
  66. package/handlers/manage/utils.js.map +1 -1
  67. package/handlers/types.js.map +1 -1
  68. package/handlers/utils/getEnvironment.js.map +1 -1
  69. package/handlers/utils/getObjectParams.js.map +1 -1
  70. package/handlers/utils/index.js.map +1 -1
  71. package/index.js.map +1 -1
  72. package/modelModifier/CmsModelModifier.js.map +1 -1
  73. package/package.json +28 -28
  74. package/plugins/FilePhysicalStoragePlugin.js.map +1 -1
  75. package/plugins/FileStorageTransformPlugin.js.map +1 -1
  76. package/plugins/index.js.map +1 -1
  77. package/storage/FileStorage.js.map +1 -1
  78. package/types/file.js.map +1 -1
  79. package/types/file.lifecycle.js.map +1 -1
  80. package/types.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_AssetRequest","require","FilesAssetRequestResolver","resolve","request","url","startsWith","undefined","params","query","path","AssetRequest","key","decodeURI","replace","context","options","width","parseInt","exports"],"sources":["FilesAssetRequestResolver.ts"],"sourcesContent":["import { Request } from \"@webiny/handler/types\";\nimport { AssetRequestResolver } from \"./abstractions/AssetRequestResolver\";\nimport { AssetRequest } from \"./AssetRequest\";\n\nexport class FilesAssetRequestResolver implements AssetRequestResolver {\n async resolve(request: Request): Promise<AssetRequest | undefined> {\n // Example: /files/65722cb5c7824a0008d05963/image-48.jpg?width=300\n if (!request.url.startsWith(\"/files/\")) {\n return undefined;\n }\n\n const params = (request.params as Record<string, any>) ?? {};\n const query = (request.query as Record<string, any>) ?? {};\n\n // Example: { '*': '/files/65722cb5c7824a0008d05963/image-48.jpg' },\n const path = params[\"*\"];\n\n return new AssetRequest({\n key: decodeURI(path).replace(\"/files/\", \"\"),\n context: {\n url: request.url\n },\n options: {\n ...query,\n width: query.width ? parseInt(query.width) : undefined\n }\n });\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,aAAA,GAAAC,OAAA;AAEO,MAAMC,yBAAyB,CAAiC;EACnE,MAAMC,OAAOA,CAACC,OAAgB,EAAqC;IAC/D;IACA,IAAI,CAACA,OAAO,CAACC,GAAG,CAACC,UAAU,CAAC,SAAS,CAAC,EAAE;MACpC,OAAOC,SAAS;IACpB;IAEA,MAAMC,MAAM,GAAIJ,OAAO,CAACI,MAAM,IAA4B,CAAC,CAAC;IAC5D,MAAMC,KAAK,GAAIL,OAAO,CAACK,KAAK,IAA4B,CAAC,CAAC;;IAE1D;IACA,MAAMC,IAAI,GAAGF,MAAM,CAAC,GAAG,CAAC;IAExB,OAAO,IAAIG,0BAAY,CAAC;MACpBC,GAAG,EAAEC,SAAS,CAACH,IAAI,CAAC,CAACI,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;MAC3CC,OAAO,EAAE;QACLV,GAAG,EAAED,OAAO,CAACC;MACjB,CAAC;MACDW,OAAO,EAAE;QACL,GAAGP,KAAK;QACRQ,KAAK,EAAER,KAAK,CAACQ,KAAK,GAAGC,QAAQ,CAACT,KAAK,CAACQ,KAAK,CAAC,GAAGV;MACjD;IACJ,CAAC,CAAC;EACN;AACJ;AAACY,OAAA,CAAAjB,yBAAA,GAAAA,yBAAA"}
1
+ {"version":3,"names":["_AssetRequest","require","FilesAssetRequestResolver","resolve","request","url","startsWith","undefined","params","query","path","AssetRequest","key","decodeURI","replace","context","options","width","parseInt","exports"],"sources":["FilesAssetRequestResolver.ts"],"sourcesContent":["import { Request } from \"@webiny/handler/types\";\nimport { AssetRequestResolver } from \"./abstractions/AssetRequestResolver\";\nimport { AssetRequest } from \"./AssetRequest\";\n\nexport class FilesAssetRequestResolver implements AssetRequestResolver {\n async resolve(request: Request): Promise<AssetRequest | undefined> {\n // Example: /files/65722cb5c7824a0008d05963/image-48.jpg?width=300\n if (!request.url.startsWith(\"/files/\")) {\n return undefined;\n }\n\n const params = (request.params as Record<string, any>) ?? {};\n const query = (request.query as Record<string, any>) ?? {};\n\n // Example: { '*': '/files/65722cb5c7824a0008d05963/image-48.jpg' },\n const path = params[\"*\"];\n\n return new AssetRequest({\n key: decodeURI(path).replace(\"/files/\", \"\"),\n context: {\n url: request.url\n },\n options: {\n ...query,\n width: query.width ? parseInt(query.width) : undefined\n }\n });\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,aAAA,GAAAC,OAAA;AAEO,MAAMC,yBAAyB,CAAiC;EACnE,MAAMC,OAAOA,CAACC,OAAgB,EAAqC;IAC/D;IACA,IAAI,CAACA,OAAO,CAACC,GAAG,CAACC,UAAU,CAAC,SAAS,CAAC,EAAE;MACpC,OAAOC,SAAS;IACpB;IAEA,MAAMC,MAAM,GAAIJ,OAAO,CAACI,MAAM,IAA4B,CAAC,CAAC;IAC5D,MAAMC,KAAK,GAAIL,OAAO,CAACK,KAAK,IAA4B,CAAC,CAAC;;IAE1D;IACA,MAAMC,IAAI,GAAGF,MAAM,CAAC,GAAG,CAAC;IAExB,OAAO,IAAIG,0BAAY,CAAC;MACpBC,GAAG,EAAEC,SAAS,CAACH,IAAI,CAAC,CAACI,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;MAC3CC,OAAO,EAAE;QACLV,GAAG,EAAED,OAAO,CAACC;MACjB,CAAC;MACDW,OAAO,EAAE;QACL,GAAGP,KAAK;QACRQ,KAAK,EAAER,KAAK,CAACQ,KAAK,GAAGC,QAAQ,CAACT,KAAK,CAACQ,KAAK,CAAC,GAAGV;MACjD;IACJ,CAAC,CAAC;EACN;AACJ;AAACY,OAAA,CAAAjB,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_NullAssetReply","require","NullAssetOutputStrategy","output","NullAssetReply","exports"],"sources":["NullAssetOutputStrategy.ts"],"sourcesContent":["import { AssetOutputStrategy, AssetReply } from \"~/delivery\";\nimport { NullAssetReply } from \"./NullAssetReply\";\n\nexport class NullAssetOutputStrategy implements AssetOutputStrategy {\n async output(): Promise<AssetReply> {\n return new NullAssetReply();\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,OAAA;AAEO,MAAMC,uBAAuB,CAAgC;EAChE,MAAMC,MAAMA,CAAA,EAAwB;IAChC,OAAO,IAAIC,8BAAc,CAAC,CAAC;EAC/B;AACJ;AAACC,OAAA,CAAAH,uBAAA,GAAAA,uBAAA"}
1
+ {"version":3,"names":["_NullAssetReply","require","NullAssetOutputStrategy","output","NullAssetReply","exports"],"sources":["NullAssetOutputStrategy.ts"],"sourcesContent":["import { AssetOutputStrategy, AssetReply } from \"~/delivery\";\nimport { NullAssetReply } from \"./NullAssetReply\";\n\nexport class NullAssetOutputStrategy implements AssetOutputStrategy {\n async output(): Promise<AssetReply> {\n return new NullAssetReply();\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,OAAA;AAEO,MAAMC,uBAAuB,CAAgC;EAChE,MAAMC,MAAMA,CAAA,EAAwB;IAChC,OAAO,IAAIC,8BAAc,CAAC,CAAC;EAC/B;AACJ;AAACC,OAAA,CAAAH,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_AssetReply","require","NullAssetReply","AssetReply","constructor","code","body","error","exports"],"sources":["NullAssetReply.ts"],"sourcesContent":["import { AssetReply } from \"~/delivery/AssetDelivery/abstractions/AssetReply\";\n\nexport class NullAssetReply extends AssetReply {\n constructor() {\n super({\n code: 404,\n body: () => ({ error: \"Asset output strategy is not implemented!\" })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEO,MAAMC,cAAc,SAASC,sBAAU,CAAC;EAC3CC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFC,IAAI,EAAE,GAAG;MACTC,IAAI,EAAEA,CAAA,MAAO;QAAEC,KAAK,EAAE;MAA4C,CAAC;IACvE,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAAN,cAAA,GAAAA,cAAA"}
1
+ {"version":3,"names":["_AssetReply","require","NullAssetReply","AssetReply","constructor","code","body","error","exports"],"sources":["NullAssetReply.ts"],"sourcesContent":["import { AssetReply } from \"~/delivery/AssetDelivery/abstractions/AssetReply\";\n\nexport class NullAssetReply extends AssetReply {\n constructor() {\n super({\n code: 404,\n body: () => ({ error: \"Asset output strategy is not implemented!\" })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEO,MAAMC,cAAc,SAASC,sBAAU,CAAC;EAC3CC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFC,IAAI,EAAE,GAAG;MACTC,IAAI,EAAEA,CAAA,MAAO;QAAEC,KAAK,EAAE;MAA4C,CAAC;IACvE,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAAN,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["NullAssetResolver","resolve","Promise","undefined","exports"],"sources":["NullAssetResolver.ts"],"sourcesContent":["import { AssetResolver } from \"./abstractions/AssetResolver\";\nimport { Asset } from \"./Asset\";\n\nexport class NullAssetResolver implements AssetResolver {\n resolve(): Promise<Asset | undefined> {\n return Promise.resolve(undefined);\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,iBAAiB,CAA0B;EACpDC,OAAOA,CAAA,EAA+B;IAClC,OAAOC,OAAO,CAACD,OAAO,CAACE,SAAS,CAAC;EACrC;AACJ;AAACC,OAAA,CAAAJ,iBAAA,GAAAA,iBAAA"}
1
+ {"version":3,"names":["NullAssetResolver","resolve","Promise","undefined","exports"],"sources":["NullAssetResolver.ts"],"sourcesContent":["import { AssetResolver } from \"./abstractions/AssetResolver\";\nimport { Asset } from \"./Asset\";\n\nexport class NullAssetResolver implements AssetResolver {\n resolve(): Promise<Asset | undefined> {\n return Promise.resolve(undefined);\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,iBAAiB,CAA0B;EACpDC,OAAOA,CAAA,EAA+B;IAClC,OAAOC,OAAO,CAACD,OAAO,CAACE,SAAS,CAAC;EACrC;AACJ;AAACC,OAAA,CAAAJ,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["NullRequestResolver","resolve","Promise","undefined","exports"],"sources":["NullRequestResolver.ts"],"sourcesContent":["import { AssetRequest, AssetRequestResolver } from \"~/delivery\";\n\nexport class NullRequestResolver implements AssetRequestResolver {\n resolve(): Promise<AssetRequest | undefined> {\n return Promise.resolve(undefined);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,mBAAmB,CAAiC;EAC7DC,OAAOA,CAAA,EAAsC;IACzC,OAAOC,OAAO,CAACD,OAAO,CAACE,SAAS,CAAC;EACrC;AACJ;AAACC,OAAA,CAAAJ,mBAAA,GAAAA,mBAAA"}
1
+ {"version":3,"names":["NullRequestResolver","resolve","Promise","undefined","exports"],"sources":["NullRequestResolver.ts"],"sourcesContent":["import { AssetRequest, AssetRequestResolver } from \"~/delivery\";\n\nexport class NullRequestResolver implements AssetRequestResolver {\n resolve(): Promise<AssetRequest | undefined> {\n return Promise.resolve(undefined);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,mBAAmB,CAAiC;EAC7DC,OAAOA,CAAA,EAAsC;IACzC,OAAOC,OAAO,CAACD,OAAO,CAACE,SAAS,CAAC;EACrC;AACJ;AAACC,OAAA,CAAAJ,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["SetCacheControlHeaders","constructor","headers","strategy","output","asset","Error","reply","setHeaders","merge","exports"],"sources":["SetCacheControlHeaders.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\nimport { Asset, AssetOutputStrategy, AssetReply } from \"~/delivery\";\n\nexport class SetCacheControlHeaders implements AssetOutputStrategy {\n private readonly strategy: AssetOutputStrategy | undefined;\n private readonly headers: ResponseHeaders;\n\n constructor(headers: ResponseHeaders, strategy: AssetOutputStrategy | undefined) {\n this.headers = headers;\n this.strategy = strategy;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n if (!this.strategy) {\n throw Error(`No asset output strategy is configured!`);\n }\n\n const reply = await this.strategy.output(asset);\n\n reply.setHeaders(headers => {\n return headers.merge(this.headers);\n });\n\n return reply;\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,sBAAsB,CAAgC;EAI/DC,WAAWA,CAACC,OAAwB,EAAEC,QAAyC,EAAE;IAC7E,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAMC,MAAMA,CAACC,KAAY,EAAuB;IAC5C,IAAI,CAAC,IAAI,CAACF,QAAQ,EAAE;MAChB,MAAMG,KAAK,CAAE,yCAAwC,CAAC;IAC1D;IAEA,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACJ,QAAQ,CAACC,MAAM,CAACC,KAAK,CAAC;IAE/CE,KAAK,CAACC,UAAU,CAACN,OAAO,IAAI;MACxB,OAAOA,OAAO,CAACO,KAAK,CAAC,IAAI,CAACP,OAAO,CAAC;IACtC,CAAC,CAAC;IAEF,OAAOK,KAAK;EAChB;AACJ;AAACG,OAAA,CAAAV,sBAAA,GAAAA,sBAAA"}
1
+ {"version":3,"names":["SetCacheControlHeaders","constructor","headers","strategy","output","asset","Error","reply","setHeaders","merge","exports"],"sources":["SetCacheControlHeaders.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\nimport { Asset, AssetOutputStrategy, AssetReply } from \"~/delivery\";\n\nexport class SetCacheControlHeaders implements AssetOutputStrategy {\n private readonly strategy: AssetOutputStrategy | undefined;\n private readonly headers: ResponseHeaders;\n\n constructor(headers: ResponseHeaders, strategy: AssetOutputStrategy | undefined) {\n this.headers = headers;\n this.strategy = strategy;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n if (!this.strategy) {\n throw Error(`No asset output strategy is configured!`);\n }\n\n const reply = await this.strategy.output(asset);\n\n reply.setHeaders(headers => {\n return headers.merge(this.headers);\n });\n\n return reply;\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,sBAAsB,CAAgC;EAI/DC,WAAWA,CAACC,OAAwB,EAAEC,QAAyC,EAAE;IAC7E,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAMC,MAAMA,CAACC,KAAY,EAAuB;IAC5C,IAAI,CAAC,IAAI,CAACF,QAAQ,EAAE;MAChB,MAAMG,KAAK,CAAE,yCAAwC,CAAC;IAC1D;IAEA,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACJ,QAAQ,CAACC,MAAM,CAACC,KAAK,CAAC;IAE/CE,KAAK,CAACC,UAAU,CAACN,OAAO,IAAI;MACxB,OAAOA,OAAO,CAACO,KAAK,CAAC,IAAI,CAACP,OAAO,CAAC;IACtC,CAAC,CAAC;IAEF,OAAOK,KAAK;EAChB;AACJ;AAACG,OAAA,CAAAV,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["SetResponseHeaders","constructor","setter","strategyDecoratorParams","output","asset","reply","assetOutputStrategy","assetRequest","context","headers","getHeaders","exports"],"sources":["SetResponseHeaders.ts"],"sourcesContent":["import {\n AssetOutputStrategy,\n Asset,\n AssetReply,\n AssetRequest,\n AssetOutputStrategyDecoratorParams\n} from \"~/delivery\";\nimport { FileManagerContext } from \"~/types\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport interface ResponseHeadersParams {\n headers: ResponseHeaders;\n context: FileManagerContext;\n assetRequest: AssetRequest;\n asset: Asset;\n}\n\nexport interface ResponseHeadersSetter {\n (params: ResponseHeadersParams): Promise<void> | void;\n}\n\nexport class SetResponseHeaders implements AssetOutputStrategy {\n private readonly setter: ResponseHeadersSetter;\n private strategyDecoratorParams: AssetOutputStrategyDecoratorParams;\n\n constructor(\n setter: ResponseHeadersSetter,\n strategyDecoratorParams: AssetOutputStrategyDecoratorParams\n ) {\n this.strategyDecoratorParams = strategyDecoratorParams;\n this.setter = setter;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n const reply = await this.strategyDecoratorParams.assetOutputStrategy.output(asset);\n\n await this.setter({\n asset: this.strategyDecoratorParams.asset,\n assetRequest: this.strategyDecoratorParams.assetRequest,\n context: this.strategyDecoratorParams.context,\n headers: reply.getHeaders()\n });\n\n return reply;\n }\n}\n"],"mappings":";;;;;;AAqBO,MAAMA,kBAAkB,CAAgC;EAI3DC,WAAWA,CACPC,MAA6B,EAC7BC,uBAA2D,EAC7D;IACE,IAAI,CAACA,uBAAuB,GAAGA,uBAAuB;IACtD,IAAI,CAACD,MAAM,GAAGA,MAAM;EACxB;EAEA,MAAME,MAAMA,CAACC,KAAY,EAAuB;IAC5C,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACH,uBAAuB,CAACI,mBAAmB,CAACH,MAAM,CAACC,KAAK,CAAC;IAElF,MAAM,IAAI,CAACH,MAAM,CAAC;MACdG,KAAK,EAAE,IAAI,CAACF,uBAAuB,CAACE,KAAK;MACzCG,YAAY,EAAE,IAAI,CAACL,uBAAuB,CAACK,YAAY;MACvDC,OAAO,EAAE,IAAI,CAACN,uBAAuB,CAACM,OAAO;MAC7CC,OAAO,EAAEJ,KAAK,CAACK,UAAU,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAOL,KAAK;EAChB;AACJ;AAACM,OAAA,CAAAZ,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"names":["SetResponseHeaders","constructor","setter","strategyDecoratorParams","output","asset","reply","assetOutputStrategy","assetRequest","context","headers","getHeaders","exports"],"sources":["SetResponseHeaders.ts"],"sourcesContent":["import {\n AssetOutputStrategy,\n Asset,\n AssetReply,\n AssetRequest,\n AssetOutputStrategyDecoratorParams\n} from \"~/delivery\";\nimport { FileManagerContext } from \"~/types\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport interface ResponseHeadersParams {\n headers: ResponseHeaders;\n context: FileManagerContext;\n assetRequest: AssetRequest;\n asset: Asset;\n}\n\nexport interface ResponseHeadersSetter {\n (params: ResponseHeadersParams): Promise<void> | void;\n}\n\nexport class SetResponseHeaders implements AssetOutputStrategy {\n private readonly setter: ResponseHeadersSetter;\n private strategyDecoratorParams: AssetOutputStrategyDecoratorParams;\n\n constructor(\n setter: ResponseHeadersSetter,\n strategyDecoratorParams: AssetOutputStrategyDecoratorParams\n ) {\n this.strategyDecoratorParams = strategyDecoratorParams;\n this.setter = setter;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n const reply = await this.strategyDecoratorParams.assetOutputStrategy.output(asset);\n\n await this.setter({\n asset: this.strategyDecoratorParams.asset,\n assetRequest: this.strategyDecoratorParams.assetRequest,\n context: this.strategyDecoratorParams.context,\n headers: reply.getHeaders()\n });\n\n return reply;\n }\n}\n"],"mappings":";;;;;;AAqBO,MAAMA,kBAAkB,CAAgC;EAI3DC,WAAWA,CACPC,MAA6B,EAC7BC,uBAA2D,EAC7D;IACE,IAAI,CAACA,uBAAuB,GAAGA,uBAAuB;IACtD,IAAI,CAACD,MAAM,GAAGA,MAAM;EACxB;EAEA,MAAME,MAAMA,CAACC,KAAY,EAAuB;IAC5C,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACH,uBAAuB,CAACI,mBAAmB,CAACH,MAAM,CAACC,KAAK,CAAC;IAElF,MAAM,IAAI,CAACH,MAAM,CAAC;MACdG,KAAK,EAAE,IAAI,CAACF,uBAAuB,CAACE,KAAK;MACzCG,YAAY,EAAE,IAAI,CAACL,uBAAuB,CAACK,YAAY;MACvDC,OAAO,EAAE,IAAI,CAACN,uBAAuB,CAACM,OAAO;MAC7CC,OAAO,EAAEJ,KAAK,CAACK,UAAU,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAOL,KAAK;EAChB;AACJ;AAACM,OAAA,CAAAZ,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetContentsReader.ts"],"sourcesContent":["import { Asset } from \"~/delivery\";\n\nexport interface AssetContentsReader {\n read(asset: Asset): Promise<Buffer>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetContentsReader.ts"],"sourcesContent":["import { Asset } from \"~/delivery\";\n\nexport interface AssetContentsReader {\n read(asset: Asset): Promise<Buffer>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetOutputStrategy.ts"],"sourcesContent":["import { Asset, AssetReply } from \"~/delivery\";\n\nexport interface AssetOutputStrategy {\n output(asset: Asset): Promise<AssetReply>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetOutputStrategy.ts"],"sourcesContent":["import { Asset, AssetReply } from \"~/delivery\";\n\nexport interface AssetOutputStrategy {\n output(asset: Asset): Promise<AssetReply>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetProcessor.ts"],"sourcesContent":["import { Asset, AssetRequest } from \"~/delivery\";\n\nexport interface AssetProcessor {\n process(assetRequest: AssetRequest, asset: Asset): Promise<Asset>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetProcessor.ts"],"sourcesContent":["import { Asset, AssetRequest } from \"~/delivery\";\n\nexport interface AssetProcessor {\n process(assetRequest: AssetRequest, asset: Asset): Promise<Asset>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_handler","require","defaultBody","AssetReply","constructor","params","code","headers","ResponseHeaders","create","body","setHeaders","cb","getHeaders","setCode","getCode","setBody","getBody","exports"],"sources":["AssetReply.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\n\ninterface HeadersSetter {\n (headers: ResponseHeaders): ResponseHeaders;\n}\n\ninterface AssetReplyParams {\n code: number;\n headers?: ResponseHeaders;\n body?: AssetReplyBody;\n}\n\ninterface AssetReplyBody {\n (): Promise<unknown> | unknown;\n}\n\nconst defaultBody = () => \"\";\n\nexport class AssetReply {\n private headers: ResponseHeaders;\n private code: number;\n private body: AssetReplyBody;\n\n constructor(params: AssetReplyParams = { code: 200 }) {\n this.code = params.code;\n this.headers = params.headers || ResponseHeaders.create();\n this.body = params.body || defaultBody;\n }\n\n setHeaders(cb: HeadersSetter) {\n this.headers = cb(this.headers);\n }\n\n getHeaders() {\n return this.headers;\n }\n\n setCode(code: number) {\n this.code = code;\n }\n\n getCode() {\n return this.code;\n }\n\n setBody(body: AssetReplyBody) {\n this.body = body;\n }\n\n getBody() {\n return this.body();\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAgBA,MAAMC,WAAW,GAAGA,CAAA,KAAM,EAAE;AAErB,MAAMC,UAAU,CAAC;EAKpBC,WAAWA,CAACC,MAAwB,GAAG;IAAEC,IAAI,EAAE;EAAI,CAAC,EAAE;IAClD,IAAI,CAACA,IAAI,GAAGD,MAAM,CAACC,IAAI;IACvB,IAAI,CAACC,OAAO,GAAGF,MAAM,CAACE,OAAO,IAAIC,wBAAe,CAACC,MAAM,CAAC,CAAC;IACzD,IAAI,CAACC,IAAI,GAAGL,MAAM,CAACK,IAAI,IAAIR,WAAW;EAC1C;EAEAS,UAAUA,CAACC,EAAiB,EAAE;IAC1B,IAAI,CAACL,OAAO,GAAGK,EAAE,CAAC,IAAI,CAACL,OAAO,CAAC;EACnC;EAEAM,UAAUA,CAAA,EAAG;IACT,OAAO,IAAI,CAACN,OAAO;EACvB;EAEAO,OAAOA,CAACR,IAAY,EAAE;IAClB,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB;EAEAS,OAAOA,CAAA,EAAG;IACN,OAAO,IAAI,CAACT,IAAI;EACpB;EAEAU,OAAOA,CAACN,IAAoB,EAAE;IAC1B,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB;EAEAO,OAAOA,CAAA,EAAG;IACN,OAAO,IAAI,CAACP,IAAI,CAAC,CAAC;EACtB;AACJ;AAACQ,OAAA,CAAAf,UAAA,GAAAA,UAAA"}
1
+ {"version":3,"names":["_handler","require","defaultBody","AssetReply","constructor","params","code","headers","ResponseHeaders","create","body","setHeaders","cb","getHeaders","setCode","getCode","setBody","getBody","exports"],"sources":["AssetReply.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\n\ninterface HeadersSetter {\n (headers: ResponseHeaders): ResponseHeaders;\n}\n\ninterface AssetReplyParams {\n code: number;\n headers?: ResponseHeaders;\n body?: AssetReplyBody;\n}\n\ninterface AssetReplyBody {\n (): Promise<unknown> | unknown;\n}\n\nconst defaultBody = () => \"\";\n\nexport class AssetReply {\n private headers: ResponseHeaders;\n private code: number;\n private body: AssetReplyBody;\n\n constructor(params: AssetReplyParams = { code: 200 }) {\n this.code = params.code;\n this.headers = params.headers || ResponseHeaders.create();\n this.body = params.body || defaultBody;\n }\n\n setHeaders(cb: HeadersSetter) {\n this.headers = cb(this.headers);\n }\n\n getHeaders() {\n return this.headers;\n }\n\n setCode(code: number) {\n this.code = code;\n }\n\n getCode() {\n return this.code;\n }\n\n setBody(body: AssetReplyBody) {\n this.body = body;\n }\n\n getBody() {\n return this.body();\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAgBA,MAAMC,WAAW,GAAGA,CAAA,KAAM,EAAE;AAErB,MAAMC,UAAU,CAAC;EAKpBC,WAAWA,CAACC,MAAwB,GAAG;IAAEC,IAAI,EAAE;EAAI,CAAC,EAAE;IAClD,IAAI,CAACA,IAAI,GAAGD,MAAM,CAACC,IAAI;IACvB,IAAI,CAACC,OAAO,GAAGF,MAAM,CAACE,OAAO,IAAIC,wBAAe,CAACC,MAAM,CAAC,CAAC;IACzD,IAAI,CAACC,IAAI,GAAGL,MAAM,CAACK,IAAI,IAAIR,WAAW;EAC1C;EAEAS,UAAUA,CAACC,EAAiB,EAAE;IAC1B,IAAI,CAACL,OAAO,GAAGK,EAAE,CAAC,IAAI,CAACL,OAAO,CAAC;EACnC;EAEAM,UAAUA,CAAA,EAAG;IACT,OAAO,IAAI,CAACN,OAAO;EACvB;EAEAO,OAAOA,CAACR,IAAY,EAAE;IAClB,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB;EAEAS,OAAOA,CAAA,EAAG;IACN,OAAO,IAAI,CAACT,IAAI;EACpB;EAEAU,OAAOA,CAACN,IAAoB,EAAE;IAC1B,IAAI,CAACA,IAAI,GAAGA,IAAI;EACpB;EAEAO,OAAOA,CAAA,EAAG;IACN,OAAO,IAAI,CAACP,IAAI,CAAC,CAAC;EACtB;AACJ;AAACQ,OAAA,CAAAf,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetRequestResolver.ts"],"sourcesContent":["import { Request } from \"@webiny/handler/types\";\nimport { AssetRequest } from \"~/delivery\";\n\nexport interface AssetRequestResolver {\n resolve(request: Request): Promise<AssetRequest | undefined>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetRequestResolver.ts"],"sourcesContent":["import { Request } from \"@webiny/handler/types\";\nimport { AssetRequest } from \"~/delivery\";\n\nexport interface AssetRequestResolver {\n resolve(request: Request): Promise<AssetRequest | undefined>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetResolver.ts"],"sourcesContent":["import { Asset, AssetRequest } from \"~/delivery\";\n\nexport interface AssetResolver {\n resolve(request: AssetRequest): Promise<Asset | undefined>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetResolver.ts"],"sourcesContent":["import { Asset, AssetRequest } from \"~/delivery\";\n\nexport interface AssetResolver {\n resolve(request: AssetRequest): Promise<Asset | undefined>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetTransformationStrategy.ts"],"sourcesContent":["import { Asset, AssetRequest } from \"~/delivery\";\n\nexport interface AssetTransformationStrategy {\n transform(assetRequest: AssetRequest, asset: Asset): Promise<Asset>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetTransformationStrategy.ts"],"sourcesContent":["import { Asset, AssetRequest } from \"~/delivery\";\n\nexport interface AssetTransformationStrategy {\n transform(assetRequest: AssetRequest, asset: Asset): Promise<Asset>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["createAssetDeliveryPluginLoader","cb","process","env","WEBINY_FUNCTION_TYPE","Promise","resolve","exports"],"sources":["createAssetDeliveryPluginLoader.ts"],"sourcesContent":["import { PluginFactory } from \"@webiny/plugins/types\";\n\nexport const createAssetDeliveryPluginLoader = (cb: PluginFactory): PluginFactory => {\n if (process.env.WEBINY_FUNCTION_TYPE === \"asset-delivery\") {\n return () => cb();\n }\n\n return () => Promise.resolve([]);\n};\n"],"mappings":";;;;;;AAEO,MAAMA,+BAA+B,GAAIC,EAAiB,IAAoB;EACjF,IAAIC,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,gBAAgB,EAAE;IACvD,OAAO,MAAMH,EAAE,CAAC,CAAC;EACrB;EAEA,OAAO,MAAMI,OAAO,CAACC,OAAO,CAAC,EAAE,CAAC;AACpC,CAAC;AAACC,OAAA,CAAAP,+BAAA,GAAAA,+BAAA"}
1
+ {"version":3,"names":["createAssetDeliveryPluginLoader","cb","process","env","WEBINY_FUNCTION_TYPE","Promise","resolve","exports"],"sources":["createAssetDeliveryPluginLoader.ts"],"sourcesContent":["import { PluginFactory } from \"@webiny/plugins/types\";\n\nexport const createAssetDeliveryPluginLoader = (cb: PluginFactory): PluginFactory => {\n if (process.env.WEBINY_FUNCTION_TYPE === \"asset-delivery\") {\n return () => cb();\n }\n\n return () => Promise.resolve([]);\n};\n"],"mappings":";;;;;;AAEO,MAAMA,+BAA+B,GAAIC,EAAiB,IAAoB;EACjF,IAAIC,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,gBAAgB,EAAE;IACvD,OAAO,MAAMH,EAAE,CAAC,CAAC;EACrB;EAEA,OAAO,MAAMI,OAAO,CAACC,OAAO,CAAC,EAAE,CAAC;AACpC,CAAC;AAACC,OAAA,CAAAP,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["AssetAuthorizer.ts"],"sourcesContent":["import { File } from \"~/types\";\n\nexport interface AssetAuthorizer {\n authorize(file: File): Promise<void>;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["AssetAuthorizer.ts"],"sourcesContent":["import { File } from \"~/types\";\n\nexport interface AssetAuthorizer {\n authorize(file: File): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_handler","require","_","NotAuthorizedAssetReply","AssetReply","constructor","code","headers","ResponseHeaders","create","body","error","exports"],"sources":["NotAuthorizedAssetReply.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\nimport { AssetReply } from \"~/delivery\";\n\nexport class NotAuthorizedAssetReply extends AssetReply {\n constructor() {\n super({\n code: 403,\n headers: ResponseHeaders.create({\n \"cache-control\": \"no-store\",\n \"content-type\": \"application/json\"\n }),\n body: () => ({ error: \"Not authorized!\", code: \"NOT_AUTHORIZED\" })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,CAAA,GAAAD,OAAA;AAEO,MAAME,uBAAuB,SAASC,YAAU,CAAC;EACpDC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFC,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEC,wBAAe,CAACC,MAAM,CAAC;QAC5B,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE;MACpB,CAAC,CAAC;MACFC,IAAI,EAAEA,CAAA,MAAO;QAAEC,KAAK,EAAE,iBAAiB;QAAEL,IAAI,EAAE;MAAiB,CAAC;IACrE,CAAC,CAAC;EACN;AACJ;AAACM,OAAA,CAAAT,uBAAA,GAAAA,uBAAA"}
1
+ {"version":3,"names":["_handler","require","_","NotAuthorizedAssetReply","AssetReply","constructor","code","headers","ResponseHeaders","create","body","error","exports"],"sources":["NotAuthorizedAssetReply.ts"],"sourcesContent":["import { ResponseHeaders } from \"@webiny/handler\";\nimport { AssetReply } from \"~/delivery\";\n\nexport class NotAuthorizedAssetReply extends AssetReply {\n constructor() {\n super({\n code: 403,\n headers: ResponseHeaders.create({\n \"cache-control\": \"no-store\",\n \"content-type\": \"application/json\"\n }),\n body: () => ({ error: \"Not authorized!\", code: \"NOT_AUTHORIZED\" })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,CAAA,GAAAD,OAAA;AAEO,MAAME,uBAAuB,SAASC,YAAU,CAAC;EACpDC,WAAWA,CAAA,EAAG;IACV,KAAK,CAAC;MACFC,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEC,wBAAe,CAACC,MAAM,CAAC;QAC5B,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE;MACpB,CAAC,CAAC;MACFC,IAAI,EAAEA,CAAA,MAAO;QAAEC,KAAK,EAAE,iBAAiB;QAAEL,IAAI,EAAE;MAAiB,CAAC;IACrE,CAAC,CAAC;EACN;AACJ;AAACM,OAAA,CAAAT,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_NotAuthorizedAssetReply","require","NotAuthorizedOutputStrategy","output","NotAuthorizedAssetReply","exports"],"sources":["NotAuthorizedOutputStrategy.ts"],"sourcesContent":["import { AssetOutputStrategy, AssetReply } from \"~/delivery\";\nimport { NotAuthorizedAssetReply } from \"./NotAuthorizedAssetReply\";\n\nexport class NotAuthorizedOutputStrategy implements AssetOutputStrategy {\n async output(): Promise<AssetReply> {\n return new NotAuthorizedAssetReply();\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,wBAAA,GAAAC,OAAA;AAEO,MAAMC,2BAA2B,CAAgC;EACpE,MAAMC,MAAMA,CAAA,EAAwB;IAChC,OAAO,IAAIC,gDAAuB,CAAC,CAAC;EACxC;AACJ;AAACC,OAAA,CAAAH,2BAAA,GAAAA,2BAAA"}
1
+ {"version":3,"names":["_NotAuthorizedAssetReply","require","NotAuthorizedOutputStrategy","output","NotAuthorizedAssetReply","exports"],"sources":["NotAuthorizedOutputStrategy.ts"],"sourcesContent":["import { AssetOutputStrategy, AssetReply } from \"~/delivery\";\nimport { NotAuthorizedAssetReply } from \"./NotAuthorizedAssetReply\";\n\nexport class NotAuthorizedOutputStrategy implements AssetOutputStrategy {\n async output(): Promise<AssetReply> {\n return new NotAuthorizedAssetReply();\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,wBAAA,GAAAC,OAAA;AAEO,MAAMC,2BAA2B,CAAgC;EACpE,MAAMC,MAAMA,CAAA,EAAwB;IAChC,OAAO,IAAIC,gDAAuB,CAAC,CAAC;EACxC;AACJ;AAACC,OAAA,CAAAH,2BAAA,GAAAA,2BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_error","_interopRequireDefault","require","PrivateAuthenticatedAuthorizer","constructor","context","authorize","file","accessControl","type","identity","security","getIdentity","Error","code","message","exports"],"sources":["PrivateAuthenticatedAuthorizer.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport { File, FileManagerContext } from \"~/types\";\nimport { AssetAuthorizer } from \"./AssetAuthorizer\";\n\nexport class PrivateAuthenticatedAuthorizer implements AssetAuthorizer {\n private context: FileManagerContext;\n\n constructor(context: FileManagerContext) {\n this.context = context;\n }\n\n async authorize(file: File) {\n if (file.accessControl && file.accessControl.type === \"private-authenticated\") {\n // Make sure there's a valid identity!\n const identity = this.context.security.getIdentity();\n\n if (!identity) {\n throw new Error({\n code: \"NOT_AUTHORIZED\",\n message: \"You're not authorized to access this asset!\"\n });\n }\n }\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIO,MAAMC,8BAA8B,CAA4B;EAGnEC,WAAWA,CAACC,OAA2B,EAAE;IACrC,IAAI,CAACA,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,SAASA,CAACC,IAAU,EAAE;IACxB,IAAIA,IAAI,CAACC,aAAa,IAAID,IAAI,CAACC,aAAa,CAACC,IAAI,KAAK,uBAAuB,EAAE;MAC3E;MACA,MAAMC,QAAQ,GAAG,IAAI,CAACL,OAAO,CAACM,QAAQ,CAACC,WAAW,CAAC,CAAC;MAEpD,IAAI,CAACF,QAAQ,EAAE;QACX,MAAM,IAAIG,cAAK,CAAC;UACZC,IAAI,EAAE,gBAAgB;UACtBC,OAAO,EAAE;QACb,CAAC,CAAC;MACN;IACJ;EACJ;AACJ;AAACC,OAAA,CAAAb,8BAAA,GAAAA,8BAAA"}
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","PrivateAuthenticatedAuthorizer","constructor","context","authorize","file","accessControl","type","identity","security","getIdentity","Error","code","message","exports"],"sources":["PrivateAuthenticatedAuthorizer.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport { File, FileManagerContext } from \"~/types\";\nimport { AssetAuthorizer } from \"./AssetAuthorizer\";\n\nexport class PrivateAuthenticatedAuthorizer implements AssetAuthorizer {\n private context: FileManagerContext;\n\n constructor(context: FileManagerContext) {\n this.context = context;\n }\n\n async authorize(file: File) {\n if (file.accessControl && file.accessControl.type === \"private-authenticated\") {\n // Make sure there's a valid identity!\n const identity = this.context.security.getIdentity();\n\n if (!identity) {\n throw new Error({\n code: \"NOT_AUTHORIZED\",\n message: \"You're not authorized to access this asset!\"\n });\n }\n }\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIO,MAAMC,8BAA8B,CAA4B;EAGnEC,WAAWA,CAACC,OAA2B,EAAE;IACrC,IAAI,CAACA,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,SAASA,CAACC,IAAU,EAAE;IACxB,IAAIA,IAAI,CAACC,aAAa,IAAID,IAAI,CAACC,aAAa,CAACC,IAAI,KAAK,uBAAuB,EAAE;MAC3E;MACA,MAAMC,QAAQ,GAAG,IAAI,CAACL,OAAO,CAACM,QAAQ,CAACC,WAAW,CAAC,CAAC;MAEpD,IAAI,CAACF,QAAQ,EAAE;QACX,MAAM,IAAIG,cAAK,CAAC;UACZC,IAAI,EAAE,gBAAgB;UACtBC,OAAO,EAAE;QACb,CAAC,CAAC;MACN;IACJ;EACJ;AACJ;AAACC,OAAA,CAAAb,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_","require","_handler","PrivateCache","SetCacheControlHeaders","constructor","days","strategy","ResponseHeaders","create","exports"],"sources":["PrivateCache.ts"],"sourcesContent":["import { AssetOutputStrategy, SetCacheControlHeaders } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class PrivateCache extends SetCacheControlHeaders {\n constructor(days: number, strategy: AssetOutputStrategy | undefined) {\n super(\n ResponseHeaders.create({\n \"cache-control\": `private, max-age=${86400 * days}`\n }),\n strategy\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,YAAY,SAASC,wBAAsB,CAAC;EACrDC,WAAWA,CAACC,IAAY,EAAEC,QAAyC,EAAE;IACjE,KAAK,CACDC,wBAAe,CAACC,MAAM,CAAC;MACnB,eAAe,EAAG,oBAAmB,KAAK,GAAGH,IAAK;IACtD,CAAC,CAAC,EACFC,QACJ,CAAC;EACL;AACJ;AAACG,OAAA,CAAAP,YAAA,GAAAA,YAAA"}
1
+ {"version":3,"names":["_","require","_handler","PrivateCache","SetCacheControlHeaders","constructor","days","strategy","ResponseHeaders","create","exports"],"sources":["PrivateCache.ts"],"sourcesContent":["import { AssetOutputStrategy, SetCacheControlHeaders } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class PrivateCache extends SetCacheControlHeaders {\n constructor(days: number, strategy: AssetOutputStrategy | undefined) {\n super(\n ResponseHeaders.create({\n \"cache-control\": `private, max-age=${86400 * days}`\n }),\n strategy\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,YAAY,SAASC,wBAAsB,CAAC;EACrDC,WAAWA,CAACC,IAAY,EAAEC,QAAyC,EAAE;IACjE,KAAK,CACDC,wBAAe,CAACC,MAAM,CAAC;MACnB,eAAe,EAAG,oBAAmB,KAAK,GAAGH,IAAK;IACtD,CAAC,CAAC,EACFC,QACJ,CAAC;EACL;AACJ;AAACG,OAAA,CAAAP,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_","require","PrivateFileAssetRequestResolver","constructor","resolver","resolve","request","url","startsWith","params","query","path","AssetRequest","key","decodeURI","replace","context","private","options","width","parseInt","undefined","exports"],"sources":["PrivateFileAssetRequestResolver.ts"],"sourcesContent":["import { AssetRequest, AssetRequestResolver } from \"~/delivery\";\nimport { Request } from \"@webiny/handler/types\";\n\nexport class PrivateFileAssetRequestResolver implements AssetRequestResolver {\n private readonly resolver: AssetRequestResolver;\n\n constructor(resolver: AssetRequestResolver) {\n this.resolver = resolver;\n }\n\n async resolve(request: Request): Promise<AssetRequest | undefined> {\n // Example: /private/65722cb5c7824a0008d05963/image-48.jpg?width=300\n if (!request.url.startsWith(\"/private/\")) {\n return this.resolver.resolve(request);\n }\n\n const params = (request.params ?? {}) as Record<string, any>;\n const query = (request.query ?? {}) as Record<string, any>;\n\n // Example: { '*': '/private/65722cb5c7824a0008d05963/image-48.jpg' },\n const path = params[\"*\"];\n\n return new AssetRequest({\n key: decodeURI(path).replace(\"/private/\", \"\"),\n context: {\n url: request.url,\n private: true\n },\n options: {\n ...query,\n width: query.width ? parseInt(query.width) : undefined\n }\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AAGO,MAAMC,+BAA+B,CAAiC;EAGzEC,WAAWA,CAACC,QAA8B,EAAE;IACxC,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAMC,OAAOA,CAACC,OAAgB,EAAqC;IAC/D;IACA,IAAI,CAACA,OAAO,CAACC,GAAG,CAACC,UAAU,CAAC,WAAW,CAAC,EAAE;MACtC,OAAO,IAAI,CAACJ,QAAQ,CAACC,OAAO,CAACC,OAAO,CAAC;IACzC;IAEA,MAAMG,MAAM,GAAIH,OAAO,CAACG,MAAM,IAAI,CAAC,CAAyB;IAC5D,MAAMC,KAAK,GAAIJ,OAAO,CAACI,KAAK,IAAI,CAAC,CAAyB;;IAE1D;IACA,MAAMC,IAAI,GAAGF,MAAM,CAAC,GAAG,CAAC;IAExB,OAAO,IAAIG,cAAY,CAAC;MACpBC,GAAG,EAAEC,SAAS,CAACH,IAAI,CAAC,CAACI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;MAC7CC,OAAO,EAAE;QACLT,GAAG,EAAED,OAAO,CAACC,GAAG;QAChBU,OAAO,EAAE;MACb,CAAC;MACDC,OAAO,EAAE;QACL,GAAGR,KAAK;QACRS,KAAK,EAAET,KAAK,CAACS,KAAK,GAAGC,QAAQ,CAACV,KAAK,CAACS,KAAK,CAAC,GAAGE;MACjD;IACJ,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAApB,+BAAA,GAAAA,+BAAA"}
1
+ {"version":3,"names":["_","require","PrivateFileAssetRequestResolver","constructor","resolver","resolve","request","url","startsWith","params","query","path","AssetRequest","key","decodeURI","replace","context","private","options","width","parseInt","undefined","exports"],"sources":["PrivateFileAssetRequestResolver.ts"],"sourcesContent":["import { AssetRequest, AssetRequestResolver } from \"~/delivery\";\nimport { Request } from \"@webiny/handler/types\";\n\nexport class PrivateFileAssetRequestResolver implements AssetRequestResolver {\n private readonly resolver: AssetRequestResolver;\n\n constructor(resolver: AssetRequestResolver) {\n this.resolver = resolver;\n }\n\n async resolve(request: Request): Promise<AssetRequest | undefined> {\n // Example: /private/65722cb5c7824a0008d05963/image-48.jpg?width=300\n if (!request.url.startsWith(\"/private/\")) {\n return this.resolver.resolve(request);\n }\n\n const params = (request.params ?? {}) as Record<string, any>;\n const query = (request.query ?? {}) as Record<string, any>;\n\n // Example: { '*': '/private/65722cb5c7824a0008d05963/image-48.jpg' },\n const path = params[\"*\"];\n\n return new AssetRequest({\n key: decodeURI(path).replace(\"/private/\", \"\"),\n context: {\n url: request.url,\n private: true\n },\n options: {\n ...query,\n width: query.width ? parseInt(query.width) : undefined\n }\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AAGO,MAAMC,+BAA+B,CAAiC;EAGzEC,WAAWA,CAACC,QAA8B,EAAE;IACxC,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAMC,OAAOA,CAACC,OAAgB,EAAqC;IAC/D;IACA,IAAI,CAACA,OAAO,CAACC,GAAG,CAACC,UAAU,CAAC,WAAW,CAAC,EAAE;MACtC,OAAO,IAAI,CAACJ,QAAQ,CAACC,OAAO,CAACC,OAAO,CAAC;IACzC;IAEA,MAAMG,MAAM,GAAIH,OAAO,CAACG,MAAM,IAAI,CAAC,CAAyB;IAC5D,MAAMC,KAAK,GAAIJ,OAAO,CAACI,KAAK,IAAI,CAAC,CAAyB;;IAE1D;IACA,MAAMC,IAAI,GAAGF,MAAM,CAAC,GAAG,CAAC;IAExB,OAAO,IAAIG,cAAY,CAAC;MACpBC,GAAG,EAAEC,SAAS,CAACH,IAAI,CAAC,CAACI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;MAC7CC,OAAO,EAAE;QACLT,GAAG,EAAED,OAAO,CAACC,GAAG;QAChBU,OAAO,EAAE;MACb,CAAC;MACDC,OAAO,EAAE;QACL,GAAGR,KAAK;QACRS,KAAK,EAAET,KAAK,CAACS,KAAK,GAAGC,QAAQ,CAACV,KAAK,CAACS,KAAK,CAAC,GAAGE;MACjD;IACJ,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAApB,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_NotAuthorizedOutputStrategy","require","_RedirectToPublicUrlOutputStrategy","_RedirectToPrivateUrlOutputStrategy","_PrivateCache","_PublicCache","PrivateFilesAssetProcessor","constructor","context","assetAuthorizer","assetProcessor","process","assetRequest","asset","id","getId","security","fileManager","file","withoutAuthorization","getFile","isPrivateFile","isPrivate","requestedViaPrivateEndpoint","setOutputStrategy","RedirectToPublicUrlOutputStrategy","requestedViaPublicEndpoint","RedirectToPrivateUrlOutputStrategy","console","log","authorize","error","NotAuthorizedOutputStrategy","processedAsset","strategy","PrivateCache","PublicCache","accessControl","type","startsWith","getContext","private","exports"],"sources":["PrivateFilesAssetProcessor.ts"],"sourcesContent":["import { File, FileManagerContext } from \"~/types\";\nimport { Asset, AssetProcessor, AssetRequest } from \"~/delivery\";\nimport { AssetAuthorizer } from \"./AssetAuthorizer\";\nimport { NotAuthorizedOutputStrategy } from \"./NotAuthorizedOutputStrategy\";\nimport { RedirectToPublicUrlOutputStrategy } from \"./RedirectToPublicUrlOutputStrategy\";\nimport { RedirectToPrivateUrlOutputStrategy } from \"./RedirectToPrivateUrlOutputStrategy\";\nimport { PrivateCache } from \"./PrivateCache\";\nimport { PublicCache } from \"./PublicCache\";\n\ninterface MaybePrivate {\n private?: boolean;\n}\n\nexport class PrivateFilesAssetProcessor implements AssetProcessor {\n private readonly context: FileManagerContext;\n private assetProcessor: AssetProcessor;\n private assetAuthorizer: AssetAuthorizer;\n\n constructor(\n context: FileManagerContext,\n assetAuthorizer: AssetAuthorizer,\n assetProcessor: AssetProcessor\n ) {\n this.assetAuthorizer = assetAuthorizer;\n this.context = context;\n this.assetProcessor = assetProcessor;\n }\n\n async process(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n const id = asset.getId();\n const { security, fileManager } = this.context;\n\n // Get file from File Manager by `id`.\n const file = await security.withoutAuthorization(() => fileManager.getFile(id));\n\n const isPrivateFile = this.isPrivate(file);\n\n if (!isPrivateFile && this.requestedViaPrivateEndpoint(assetRequest)) {\n asset.setOutputStrategy(new RedirectToPublicUrlOutputStrategy(assetRequest));\n return asset;\n }\n\n if (isPrivateFile && this.requestedViaPublicEndpoint(assetRequest)) {\n asset.setOutputStrategy(new RedirectToPrivateUrlOutputStrategy(assetRequest));\n return asset;\n }\n\n console.log(\"file\", file);\n\n try {\n await this.assetAuthorizer.authorize(file);\n } catch (error) {\n asset.setOutputStrategy(new NotAuthorizedOutputStrategy());\n\n return asset;\n }\n\n const processedAsset = await this.assetProcessor.process(assetRequest, asset);\n\n processedAsset.setOutputStrategy(strategy => {\n return isPrivateFile ? new PrivateCache(30, strategy) : new PublicCache(365, strategy);\n });\n\n return processedAsset;\n }\n\n private isPrivate(file: File) {\n return file.accessControl && file.accessControl.type.startsWith(\"private-\");\n }\n\n private requestedViaPrivateEndpoint(assetRequest: AssetRequest) {\n return assetRequest.getContext<MaybePrivate>().private;\n }\n\n private requestedViaPublicEndpoint(assetRequest: AssetRequest) {\n return !this.requestedViaPrivateEndpoint(assetRequest);\n }\n}\n"],"mappings":";;;;;;AAGA,IAAAA,4BAAA,GAAAC,OAAA;AACA,IAAAC,kCAAA,GAAAD,OAAA;AACA,IAAAE,mCAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AAMO,MAAMK,0BAA0B,CAA2B;EAK9DC,WAAWA,CACPC,OAA2B,EAC3BC,eAAgC,EAChCC,cAA8B,EAChC;IACE,IAAI,CAACD,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,cAAc,GAAGA,cAAc;EACxC;EAEA,MAAMC,OAAOA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IACpE,MAAMC,EAAE,GAAGD,KAAK,CAACE,KAAK,CAAC,CAAC;IACxB,MAAM;MAAEC,QAAQ;MAAEC;IAAY,CAAC,GAAG,IAAI,CAACT,OAAO;;IAE9C;IACA,MAAMU,IAAI,GAAG,MAAMF,QAAQ,CAACG,oBAAoB,CAAC,MAAMF,WAAW,CAACG,OAAO,CAACN,EAAE,CAAC,CAAC;IAE/E,MAAMO,aAAa,GAAG,IAAI,CAACC,SAAS,CAACJ,IAAI,CAAC;IAE1C,IAAI,CAACG,aAAa,IAAI,IAAI,CAACE,2BAA2B,CAACX,YAAY,CAAC,EAAE;MAClEC,KAAK,CAACW,iBAAiB,CAAC,IAAIC,oEAAiC,CAACb,YAAY,CAAC,CAAC;MAC5E,OAAOC,KAAK;IAChB;IAEA,IAAIQ,aAAa,IAAI,IAAI,CAACK,0BAA0B,CAACd,YAAY,CAAC,EAAE;MAChEC,KAAK,CAACW,iBAAiB,CAAC,IAAIG,sEAAkC,CAACf,YAAY,CAAC,CAAC;MAC7E,OAAOC,KAAK;IAChB;IAEAe,OAAO,CAACC,GAAG,CAAC,MAAM,EAAEX,IAAI,CAAC;IAEzB,IAAI;MACA,MAAM,IAAI,CAACT,eAAe,CAACqB,SAAS,CAACZ,IAAI,CAAC;IAC9C,CAAC,CAAC,OAAOa,KAAK,EAAE;MACZlB,KAAK,CAACW,iBAAiB,CAAC,IAAIQ,wDAA2B,CAAC,CAAC,CAAC;MAE1D,OAAOnB,KAAK;IAChB;IAEA,MAAMoB,cAAc,GAAG,MAAM,IAAI,CAACvB,cAAc,CAACC,OAAO,CAACC,YAAY,EAAEC,KAAK,CAAC;IAE7EoB,cAAc,CAACT,iBAAiB,CAACU,QAAQ,IAAI;MACzC,OAAOb,aAAa,GAAG,IAAIc,0BAAY,CAAC,EAAE,EAAED,QAAQ,CAAC,GAAG,IAAIE,wBAAW,CAAC,GAAG,EAAEF,QAAQ,CAAC;IAC1F,CAAC,CAAC;IAEF,OAAOD,cAAc;EACzB;EAEQX,SAASA,CAACJ,IAAU,EAAE;IAC1B,OAAOA,IAAI,CAACmB,aAAa,IAAInB,IAAI,CAACmB,aAAa,CAACC,IAAI,CAACC,UAAU,CAAC,UAAU,CAAC;EAC/E;EAEQhB,2BAA2BA,CAACX,YAA0B,EAAE;IAC5D,OAAOA,YAAY,CAAC4B,UAAU,CAAe,CAAC,CAACC,OAAO;EAC1D;EAEQf,0BAA0BA,CAACd,YAA0B,EAAE;IAC3D,OAAO,CAAC,IAAI,CAACW,2BAA2B,CAACX,YAAY,CAAC;EAC1D;AACJ;AAAC8B,OAAA,CAAApC,0BAAA,GAAAA,0BAAA"}
1
+ {"version":3,"names":["_NotAuthorizedOutputStrategy","require","_RedirectToPublicUrlOutputStrategy","_RedirectToPrivateUrlOutputStrategy","_PrivateCache","_PublicCache","PrivateFilesAssetProcessor","constructor","context","assetAuthorizer","assetProcessor","process","assetRequest","asset","id","getId","security","fileManager","file","withoutAuthorization","getFile","isPrivateFile","isPrivate","requestedViaPrivateEndpoint","setOutputStrategy","RedirectToPublicUrlOutputStrategy","requestedViaPublicEndpoint","RedirectToPrivateUrlOutputStrategy","console","log","authorize","error","NotAuthorizedOutputStrategy","processedAsset","strategy","PrivateCache","PublicCache","accessControl","type","startsWith","getContext","private","exports"],"sources":["PrivateFilesAssetProcessor.ts"],"sourcesContent":["import { File, FileManagerContext } from \"~/types\";\nimport { Asset, AssetProcessor, AssetRequest } from \"~/delivery\";\nimport { AssetAuthorizer } from \"./AssetAuthorizer\";\nimport { NotAuthorizedOutputStrategy } from \"./NotAuthorizedOutputStrategy\";\nimport { RedirectToPublicUrlOutputStrategy } from \"./RedirectToPublicUrlOutputStrategy\";\nimport { RedirectToPrivateUrlOutputStrategy } from \"./RedirectToPrivateUrlOutputStrategy\";\nimport { PrivateCache } from \"./PrivateCache\";\nimport { PublicCache } from \"./PublicCache\";\n\ninterface MaybePrivate {\n private?: boolean;\n}\n\nexport class PrivateFilesAssetProcessor implements AssetProcessor {\n private readonly context: FileManagerContext;\n private assetProcessor: AssetProcessor;\n private assetAuthorizer: AssetAuthorizer;\n\n constructor(\n context: FileManagerContext,\n assetAuthorizer: AssetAuthorizer,\n assetProcessor: AssetProcessor\n ) {\n this.assetAuthorizer = assetAuthorizer;\n this.context = context;\n this.assetProcessor = assetProcessor;\n }\n\n async process(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n const id = asset.getId();\n const { security, fileManager } = this.context;\n\n // Get file from File Manager by `id`.\n const file = await security.withoutAuthorization(() => fileManager.getFile(id));\n\n const isPrivateFile = this.isPrivate(file);\n\n if (!isPrivateFile && this.requestedViaPrivateEndpoint(assetRequest)) {\n asset.setOutputStrategy(new RedirectToPublicUrlOutputStrategy(assetRequest));\n return asset;\n }\n\n if (isPrivateFile && this.requestedViaPublicEndpoint(assetRequest)) {\n asset.setOutputStrategy(new RedirectToPrivateUrlOutputStrategy(assetRequest));\n return asset;\n }\n\n console.log(\"file\", file);\n\n try {\n await this.assetAuthorizer.authorize(file);\n } catch (error) {\n asset.setOutputStrategy(new NotAuthorizedOutputStrategy());\n\n return asset;\n }\n\n const processedAsset = await this.assetProcessor.process(assetRequest, asset);\n\n processedAsset.setOutputStrategy(strategy => {\n return isPrivateFile ? new PrivateCache(30, strategy) : new PublicCache(365, strategy);\n });\n\n return processedAsset;\n }\n\n private isPrivate(file: File) {\n return file.accessControl && file.accessControl.type.startsWith(\"private-\");\n }\n\n private requestedViaPrivateEndpoint(assetRequest: AssetRequest) {\n return assetRequest.getContext<MaybePrivate>().private;\n }\n\n private requestedViaPublicEndpoint(assetRequest: AssetRequest) {\n return !this.requestedViaPrivateEndpoint(assetRequest);\n }\n}\n"],"mappings":";;;;;;AAGA,IAAAA,4BAAA,GAAAC,OAAA;AACA,IAAAC,kCAAA,GAAAD,OAAA;AACA,IAAAE,mCAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AAMO,MAAMK,0BAA0B,CAA2B;EAK9DC,WAAWA,CACPC,OAA2B,EAC3BC,eAAgC,EAChCC,cAA8B,EAChC;IACE,IAAI,CAACD,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,cAAc,GAAGA,cAAc;EACxC;EAEA,MAAMC,OAAOA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IACpE,MAAMC,EAAE,GAAGD,KAAK,CAACE,KAAK,CAAC,CAAC;IACxB,MAAM;MAAEC,QAAQ;MAAEC;IAAY,CAAC,GAAG,IAAI,CAACT,OAAO;;IAE9C;IACA,MAAMU,IAAI,GAAG,MAAMF,QAAQ,CAACG,oBAAoB,CAAC,MAAMF,WAAW,CAACG,OAAO,CAACN,EAAE,CAAC,CAAC;IAE/E,MAAMO,aAAa,GAAG,IAAI,CAACC,SAAS,CAACJ,IAAI,CAAC;IAE1C,IAAI,CAACG,aAAa,IAAI,IAAI,CAACE,2BAA2B,CAACX,YAAY,CAAC,EAAE;MAClEC,KAAK,CAACW,iBAAiB,CAAC,IAAIC,oEAAiC,CAACb,YAAY,CAAC,CAAC;MAC5E,OAAOC,KAAK;IAChB;IAEA,IAAIQ,aAAa,IAAI,IAAI,CAACK,0BAA0B,CAACd,YAAY,CAAC,EAAE;MAChEC,KAAK,CAACW,iBAAiB,CAAC,IAAIG,sEAAkC,CAACf,YAAY,CAAC,CAAC;MAC7E,OAAOC,KAAK;IAChB;IAEAe,OAAO,CAACC,GAAG,CAAC,MAAM,EAAEX,IAAI,CAAC;IAEzB,IAAI;MACA,MAAM,IAAI,CAACT,eAAe,CAACqB,SAAS,CAACZ,IAAI,CAAC;IAC9C,CAAC,CAAC,OAAOa,KAAK,EAAE;MACZlB,KAAK,CAACW,iBAAiB,CAAC,IAAIQ,wDAA2B,CAAC,CAAC,CAAC;MAE1D,OAAOnB,KAAK;IAChB;IAEA,MAAMoB,cAAc,GAAG,MAAM,IAAI,CAACvB,cAAc,CAACC,OAAO,CAACC,YAAY,EAAEC,KAAK,CAAC;IAE7EoB,cAAc,CAACT,iBAAiB,CAACU,QAAQ,IAAI;MACzC,OAAOb,aAAa,GAAG,IAAIc,0BAAY,CAAC,EAAE,EAAED,QAAQ,CAAC,GAAG,IAAIE,wBAAW,CAAC,GAAG,EAAEF,QAAQ,CAAC;IAC1F,CAAC,CAAC;IAEF,OAAOD,cAAc;EACzB;EAEQX,SAASA,CAACJ,IAAU,EAAE;IAC1B,OAAOA,IAAI,CAACmB,aAAa,IAAInB,IAAI,CAACmB,aAAa,CAACC,IAAI,CAACC,UAAU,CAAC,UAAU,CAAC;EAC/E;EAEQhB,2BAA2BA,CAACX,YAA0B,EAAE;IAC5D,OAAOA,YAAY,CAAC4B,UAAU,CAAe,CAAC,CAACC,OAAO;EAC1D;EAEQf,0BAA0BA,CAACd,YAA0B,EAAE;IAC3D,OAAO,CAAC,IAAI,CAACW,2BAA2B,CAACX,YAAY,CAAC;EAC1D;AACJ;AAAC8B,OAAA,CAAApC,0BAAA,GAAAA,0BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_","require","_handler","PublicCache","SetCacheControlHeaders","constructor","days","strategy","ResponseHeaders","create","exports"],"sources":["PublicCache.ts"],"sourcesContent":["import { AssetOutputStrategy, SetCacheControlHeaders } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class PublicCache extends SetCacheControlHeaders {\n constructor(days: number, strategy: AssetOutputStrategy | undefined) {\n super(\n ResponseHeaders.create({\n \"cache-control\": `public, max-age=${86400 * days}`\n }),\n strategy\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,WAAW,SAASC,wBAAsB,CAAC;EACpDC,WAAWA,CAACC,IAAY,EAAEC,QAAyC,EAAE;IACjE,KAAK,CACDC,wBAAe,CAACC,MAAM,CAAC;MACnB,eAAe,EAAG,mBAAkB,KAAK,GAAGH,IAAK;IACrD,CAAC,CAAC,EACFC,QACJ,CAAC;EACL;AACJ;AAACG,OAAA,CAAAP,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"names":["_","require","_handler","PublicCache","SetCacheControlHeaders","constructor","days","strategy","ResponseHeaders","create","exports"],"sources":["PublicCache.ts"],"sourcesContent":["import { AssetOutputStrategy, SetCacheControlHeaders } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class PublicCache extends SetCacheControlHeaders {\n constructor(days: number, strategy: AssetOutputStrategy | undefined) {\n super(\n ResponseHeaders.create({\n \"cache-control\": `public, max-age=${86400 * days}`\n }),\n strategy\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,WAAW,SAASC,wBAAsB,CAAC;EACpDC,WAAWA,CAACC,IAAY,EAAEC,QAAyC,EAAE;IACjE,KAAK,CACDC,wBAAe,CAACC,MAAM,CAAC;MACnB,eAAe,EAAG,mBAAkB,KAAK,GAAGH,IAAK;IACrD,CAAC,CAAC,EACFC,QACJ,CAAC;EACL;AACJ;AAACG,OAAA,CAAAP,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_","require","_handler","RedirectToPrivateUrlOutputStrategy","constructor","assetRequest","output","asset","requestUrl","getContext","url","AssetReply","code","headers","ResponseHeaders","create","location","replace","getContentType","exports"],"sources":["RedirectToPrivateUrlOutputStrategy.ts"],"sourcesContent":["import { Asset, AssetOutputStrategy, AssetReply, AssetRequest } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class RedirectToPrivateUrlOutputStrategy implements AssetOutputStrategy {\n private assetRequest: AssetRequest;\n\n constructor(assetRequest: AssetRequest) {\n this.assetRequest = assetRequest;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n const requestUrl = this.assetRequest.getContext().url;\n\n return new AssetReply({\n code: 301,\n headers: ResponseHeaders.create({\n location: requestUrl.replace(\"/files/\", \"/private/\"),\n \"content-type\": asset.getContentType(),\n \"cache-control\": `public, max-age=${86400 * 30}`\n })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,kCAAkC,CAAgC;EAG3EC,WAAWA,CAACC,YAA0B,EAAE;IACpC,IAAI,CAACA,YAAY,GAAGA,YAAY;EACpC;EAEA,MAAMC,MAAMA,CAACC,KAAY,EAAuB;IAC5C,MAAMC,UAAU,GAAG,IAAI,CAACH,YAAY,CAACI,UAAU,CAAC,CAAC,CAACC,GAAG;IAErD,OAAO,IAAIC,YAAU,CAAC;MAClBC,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEC,wBAAe,CAACC,MAAM,CAAC;QAC5BC,QAAQ,EAAER,UAAU,CAACS,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;QACpD,cAAc,EAAEV,KAAK,CAACW,cAAc,CAAC,CAAC;QACtC,eAAe,EAAG,mBAAkB,KAAK,GAAG,EAAG;MACnD,CAAC;IACL,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAAhB,kCAAA,GAAAA,kCAAA"}
1
+ {"version":3,"names":["_","require","_handler","RedirectToPrivateUrlOutputStrategy","constructor","assetRequest","output","asset","requestUrl","getContext","url","AssetReply","code","headers","ResponseHeaders","create","location","replace","getContentType","exports"],"sources":["RedirectToPrivateUrlOutputStrategy.ts"],"sourcesContent":["import { Asset, AssetOutputStrategy, AssetReply, AssetRequest } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class RedirectToPrivateUrlOutputStrategy implements AssetOutputStrategy {\n private assetRequest: AssetRequest;\n\n constructor(assetRequest: AssetRequest) {\n this.assetRequest = assetRequest;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n const requestUrl = this.assetRequest.getContext().url;\n\n return new AssetReply({\n code: 301,\n headers: ResponseHeaders.create({\n location: requestUrl.replace(\"/files/\", \"/private/\"),\n \"content-type\": asset.getContentType(),\n \"cache-control\": `public, max-age=${86400 * 30}`\n })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,kCAAkC,CAAgC;EAG3EC,WAAWA,CAACC,YAA0B,EAAE;IACpC,IAAI,CAACA,YAAY,GAAGA,YAAY;EACpC;EAEA,MAAMC,MAAMA,CAACC,KAAY,EAAuB;IAC5C,MAAMC,UAAU,GAAG,IAAI,CAACH,YAAY,CAACI,UAAU,CAAC,CAAC,CAACC,GAAG;IAErD,OAAO,IAAIC,YAAU,CAAC;MAClBC,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEC,wBAAe,CAACC,MAAM,CAAC;QAC5BC,QAAQ,EAAER,UAAU,CAACS,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC;QACpD,cAAc,EAAEV,KAAK,CAACW,cAAc,CAAC,CAAC;QACtC,eAAe,EAAG,mBAAkB,KAAK,GAAG,EAAG;MACnD,CAAC;IACL,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAAhB,kCAAA,GAAAA,kCAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_","require","_handler","RedirectToPublicUrlOutputStrategy","constructor","assetRequest","output","asset","requestUrl","getContext","url","AssetReply","code","headers","ResponseHeaders","create","location","replace","getContentType","exports"],"sources":["RedirectToPublicUrlOutputStrategy.ts"],"sourcesContent":["import { Asset, AssetOutputStrategy, AssetReply, AssetRequest } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class RedirectToPublicUrlOutputStrategy implements AssetOutputStrategy {\n private assetRequest: AssetRequest;\n\n constructor(assetRequest: AssetRequest) {\n this.assetRequest = assetRequest;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n const requestUrl = this.assetRequest.getContext().url;\n\n return new AssetReply({\n code: 301,\n headers: ResponseHeaders.create({\n location: requestUrl.replace(\"/private/\", \"/files/\"),\n \"content-type\": asset.getContentType(),\n \"cache-control\": `public, max-age=${86400 * 30}`\n })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,iCAAiC,CAAgC;EAG1EC,WAAWA,CAACC,YAA0B,EAAE;IACpC,IAAI,CAACA,YAAY,GAAGA,YAAY;EACpC;EAEA,MAAMC,MAAMA,CAACC,KAAY,EAAuB;IAC5C,MAAMC,UAAU,GAAG,IAAI,CAACH,YAAY,CAACI,UAAU,CAAC,CAAC,CAACC,GAAG;IAErD,OAAO,IAAIC,YAAU,CAAC;MAClBC,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEC,wBAAe,CAACC,MAAM,CAAC;QAC5BC,QAAQ,EAAER,UAAU,CAACS,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC;QACpD,cAAc,EAAEV,KAAK,CAACW,cAAc,CAAC,CAAC;QACtC,eAAe,EAAG,mBAAkB,KAAK,GAAG,EAAG;MACnD,CAAC;IACL,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAAhB,iCAAA,GAAAA,iCAAA"}
1
+ {"version":3,"names":["_","require","_handler","RedirectToPublicUrlOutputStrategy","constructor","assetRequest","output","asset","requestUrl","getContext","url","AssetReply","code","headers","ResponseHeaders","create","location","replace","getContentType","exports"],"sources":["RedirectToPublicUrlOutputStrategy.ts"],"sourcesContent":["import { Asset, AssetOutputStrategy, AssetReply, AssetRequest } from \"~/delivery\";\nimport { ResponseHeaders } from \"@webiny/handler\";\n\nexport class RedirectToPublicUrlOutputStrategy implements AssetOutputStrategy {\n private assetRequest: AssetRequest;\n\n constructor(assetRequest: AssetRequest) {\n this.assetRequest = assetRequest;\n }\n\n async output(asset: Asset): Promise<AssetReply> {\n const requestUrl = this.assetRequest.getContext().url;\n\n return new AssetReply({\n code: 301,\n headers: ResponseHeaders.create({\n location: requestUrl.replace(\"/private/\", \"/files/\"),\n \"content-type\": asset.getContentType(),\n \"cache-control\": `public, max-age=${86400 * 30}`\n })\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEO,MAAME,iCAAiC,CAAgC;EAG1EC,WAAWA,CAACC,YAA0B,EAAE;IACpC,IAAI,CAACA,YAAY,GAAGA,YAAY;EACpC;EAEA,MAAMC,MAAMA,CAACC,KAAY,EAAuB;IAC5C,MAAMC,UAAU,GAAG,IAAI,CAACH,YAAY,CAACI,UAAU,CAAC,CAAC,CAACC,GAAG;IAErD,OAAO,IAAIC,YAAU,CAAC;MAClBC,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEC,wBAAe,CAACC,MAAM,CAAC;QAC5BC,QAAQ,EAAER,UAAU,CAACS,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC;QACpD,cAAc,EAAEV,KAAK,CAACW,cAAc,CAAC,CAAC;QACtC,eAAe,EAAG,mBAAkB,KAAK,GAAG,EAAG;MACnD,CAAC;IACL,CAAC,CAAC;EACN;AACJ;AAACC,OAAA,CAAAhB,iCAAA,GAAAA,iCAAA","ignoreList":[]}
@@ -9,11 +9,10 @@ exports.internalIdentity = void 0;
9
9
  * FLP will complain, if the identity is `undefined`. Using this mock identity and `security.withIdentity`,
10
10
  * we set this temporary identity for the duration of the callback execution, and FLP is happy.
11
11
  */
12
- const internalIdentity = {
12
+ const internalIdentity = exports.internalIdentity = {
13
13
  id: "asset-delivery",
14
14
  type: "asset-delivery",
15
15
  displayName: ""
16
16
  };
17
- exports.internalIdentity = internalIdentity;
18
17
 
19
18
  //# sourceMappingURL=internalIdentity.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["internalIdentity","id","type","displayName","exports"],"sources":["internalIdentity.ts"],"sourcesContent":["import { SecurityIdentity } from \"@webiny/api-security/types\";\n\n/**\n * This identity is used to bypass the current behavior of FLP. Even when using `withoutAuthorization`,\n * FLP will complain, if the identity is `undefined`. Using this mock identity and `security.withIdentity`,\n * we set this temporary identity for the duration of the callback execution, and FLP is happy.\n */\nexport const internalIdentity: SecurityIdentity = {\n id: \"asset-delivery\",\n type: \"asset-delivery\",\n displayName: \"\"\n};\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACO,MAAMA,gBAAkC,GAAG;EAC9CC,EAAE,EAAE,gBAAgB;EACpBC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACjB,CAAC;AAACC,OAAA,CAAAJ,gBAAA,GAAAA,gBAAA"}
1
+ {"version":3,"names":["internalIdentity","exports","id","type","displayName"],"sources":["internalIdentity.ts"],"sourcesContent":["import { SecurityIdentity } from \"@webiny/api-security/types\";\n\n/**\n * This identity is used to bypass the current behavior of FLP. Even when using `withoutAuthorization`,\n * FLP will complain, if the identity is `undefined`. Using this mock identity and `security.withIdentity`,\n * we set this temporary identity for the duration of the callback execution, and FLP is happy.\n */\nexport const internalIdentity: SecurityIdentity = {\n id: \"asset-delivery\",\n type: \"asset-delivery\",\n displayName: \"\"\n};\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACO,MAAMA,gBAAkC,GAAAC,OAAA,CAAAD,gBAAA,GAAG;EAC9CE,EAAE,EAAE,gBAAgB;EACpBC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACjB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["PassthroughAssetProcessor","process","assetRequest","asset","Promise","resolve","exports"],"sources":["PassthroughAssetProcessor.ts"],"sourcesContent":["import { Asset, AssetProcessor, AssetRequest } from \"~/delivery\";\n\nexport class PassthroughAssetProcessor implements AssetProcessor {\n process(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n return Promise.resolve(asset);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,yBAAyB,CAA2B;EAC7DC,OAAOA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IAC9D,OAAOC,OAAO,CAACC,OAAO,CAACF,KAAK,CAAC;EACjC;AACJ;AAACG,OAAA,CAAAN,yBAAA,GAAAA,yBAAA"}
1
+ {"version":3,"names":["PassthroughAssetProcessor","process","assetRequest","asset","Promise","resolve","exports"],"sources":["PassthroughAssetProcessor.ts"],"sourcesContent":["import { Asset, AssetProcessor, AssetRequest } from \"~/delivery\";\n\nexport class PassthroughAssetProcessor implements AssetProcessor {\n process(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n return Promise.resolve(asset);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,yBAAyB,CAA2B;EAC7DC,OAAOA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IAC9D,OAAOC,OAAO,CAACC,OAAO,CAACF,KAAK,CAAC;EACjC;AACJ;AAACG,OAAA,CAAAN,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["PassthroughAssetTransformationStrategy","transform","assetRequest","asset","Promise","resolve","exports"],"sources":["PassthroughAssetTransformationStrategy.ts"],"sourcesContent":["import { Asset, AssetTransformationStrategy, AssetRequest } from \"~/delivery\";\n\nexport class PassthroughAssetTransformationStrategy implements AssetTransformationStrategy {\n transform(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n return Promise.resolve(asset);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,sCAAsC,CAAwC;EACvFC,SAASA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IAChE,OAAOC,OAAO,CAACC,OAAO,CAACF,KAAK,CAAC;EACjC;AACJ;AAACG,OAAA,CAAAN,sCAAA,GAAAA,sCAAA"}
1
+ {"version":3,"names":["PassthroughAssetTransformationStrategy","transform","assetRequest","asset","Promise","resolve","exports"],"sources":["PassthroughAssetTransformationStrategy.ts"],"sourcesContent":["import { Asset, AssetTransformationStrategy, AssetRequest } from \"~/delivery\";\n\nexport class PassthroughAssetTransformationStrategy implements AssetTransformationStrategy {\n transform(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n return Promise.resolve(asset);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,sCAAsC,CAAwC;EACvFC,SAASA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IAChE,OAAOC,OAAO,CAACC,OAAO,CAACF,KAAK,CAAC;EACjC;AACJ;AAACG,OAAA,CAAAN,sCAAA,GAAAA,sCAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TransformationAssetProcessor","constructor","strategy","process","assetRequest","asset","original","getOptions","transform","exports"],"sources":["TransformationAssetProcessor.ts"],"sourcesContent":["import { Asset, AssetProcessor, AssetRequest, AssetTransformationStrategy } from \"~/delivery\";\n\nexport class TransformationAssetProcessor implements AssetProcessor {\n private strategy: AssetTransformationStrategy;\n\n constructor(strategy: AssetTransformationStrategy) {\n this.strategy = strategy;\n }\n\n async process(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n const { original } = assetRequest.getOptions();\n\n // If the `original` image was requested, we skip all transformations.\n if (original) {\n return asset;\n }\n\n return this.strategy.transform(assetRequest, asset);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,4BAA4B,CAA2B;EAGhEC,WAAWA,CAACC,QAAqC,EAAE;IAC/C,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAMC,OAAOA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IACpE,MAAM;MAAEC;IAAS,CAAC,GAAGF,YAAY,CAACG,UAAU,CAAC,CAAC;;IAE9C;IACA,IAAID,QAAQ,EAAE;MACV,OAAOD,KAAK;IAChB;IAEA,OAAO,IAAI,CAACH,QAAQ,CAACM,SAAS,CAACJ,YAAY,EAAEC,KAAK,CAAC;EACvD;AACJ;AAACI,OAAA,CAAAT,4BAAA,GAAAA,4BAAA"}
1
+ {"version":3,"names":["TransformationAssetProcessor","constructor","strategy","process","assetRequest","asset","original","getOptions","transform","exports"],"sources":["TransformationAssetProcessor.ts"],"sourcesContent":["import { Asset, AssetProcessor, AssetRequest, AssetTransformationStrategy } from \"~/delivery\";\n\nexport class TransformationAssetProcessor implements AssetProcessor {\n private strategy: AssetTransformationStrategy;\n\n constructor(strategy: AssetTransformationStrategy) {\n this.strategy = strategy;\n }\n\n async process(assetRequest: AssetRequest, asset: Asset): Promise<Asset> {\n const { original } = assetRequest.getOptions();\n\n // If the `original` image was requested, we skip all transformations.\n if (original) {\n return asset;\n }\n\n return this.strategy.transform(assetRequest, asset);\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,4BAA4B,CAA2B;EAGhEC,WAAWA,CAACC,QAAqC,EAAE;IAC/C,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC5B;EAEA,MAAMC,OAAOA,CAACC,YAA0B,EAAEC,KAAY,EAAkB;IACpE,MAAM;MAAEC;IAAS,CAAC,GAAGF,YAAY,CAACG,UAAU,CAAC,CAAC;;IAE9C;IACA,IAAID,QAAQ,EAAE;MACV,OAAOD,KAAK;IAChB;IAEA,OAAO,IAAI,CAACH,QAAQ,CAACM,SAAS,CAACJ,YAAY,EAAEC,KAAK,CAAC;EACvD;AACJ;AAACI,OAAA,CAAAT,4BAAA,GAAAA,4BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_AssetDeliveryConfig","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Asset","_AssetRequest","_AssetRequestResolver","_AssetResolver","_AssetProcessor","_AssetContentsReader","_AssetOutputStrategy","_AssetTransformationStrategy","_AssetReply","_createAssetDeliveryPluginLoader","_FilesAssetRequestResolver","_AliasAssetRequestResolver","_SetCacheControlHeaders","_SetResponseHeaders","_PublicCache","_PrivateCache"],"sources":["index.ts"],"sourcesContent":["export * from \"./AssetDelivery/AssetDeliveryConfig\";\nexport * from \"./AssetDelivery/Asset\";\nexport * from \"./AssetDelivery/AssetRequest\";\nexport * from \"./AssetDelivery/abstractions/AssetRequestResolver\";\nexport * from \"./AssetDelivery/abstractions/AssetResolver\";\nexport * from \"./AssetDelivery/abstractions/AssetProcessor\";\nexport * from \"./AssetDelivery/abstractions/AssetContentsReader\";\nexport * from \"./AssetDelivery/abstractions/AssetOutputStrategy\";\nexport * from \"./AssetDelivery/abstractions/AssetTransformationStrategy\";\nexport * from \"./AssetDelivery/abstractions/AssetReply\";\nexport * from \"./AssetDelivery/createAssetDeliveryPluginLoader\";\nexport * from \"./AssetDelivery/FilesAssetRequestResolver\";\nexport * from \"./AssetDelivery/AliasAssetRequestResolver\";\nexport * from \"./AssetDelivery/SetCacheControlHeaders\";\nexport * from \"./AssetDelivery/SetResponseHeaders\";\nexport * from \"./AssetDelivery/privateFiles/PublicCache\";\nexport * from \"./AssetDelivery/privateFiles/PrivateCache\";\n"],"mappings":"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"}
1
+ {"version":3,"names":["_AssetDeliveryConfig","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_Asset","_AssetRequest","_AssetRequestResolver","_AssetResolver","_AssetProcessor","_AssetContentsReader","_AssetOutputStrategy","_AssetTransformationStrategy","_AssetReply","_createAssetDeliveryPluginLoader","_FilesAssetRequestResolver","_AliasAssetRequestResolver","_SetCacheControlHeaders","_SetResponseHeaders","_PublicCache","_PrivateCache"],"sources":["index.ts"],"sourcesContent":["export * from \"./AssetDelivery/AssetDeliveryConfig\";\nexport * from \"./AssetDelivery/Asset\";\nexport * from \"./AssetDelivery/AssetRequest\";\nexport * from \"./AssetDelivery/abstractions/AssetRequestResolver\";\nexport * from \"./AssetDelivery/abstractions/AssetResolver\";\nexport * from \"./AssetDelivery/abstractions/AssetProcessor\";\nexport * from \"./AssetDelivery/abstractions/AssetContentsReader\";\nexport * from \"./AssetDelivery/abstractions/AssetOutputStrategy\";\nexport * from \"./AssetDelivery/abstractions/AssetTransformationStrategy\";\nexport * from \"./AssetDelivery/abstractions/AssetReply\";\nexport * from \"./AssetDelivery/createAssetDeliveryPluginLoader\";\nexport * from \"./AssetDelivery/FilesAssetRequestResolver\";\nexport * from \"./AssetDelivery/AliasAssetRequestResolver\";\nexport * from \"./AssetDelivery/SetCacheControlHeaders\";\nexport * from \"./AssetDelivery/SetResponseHeaders\";\nexport * from \"./AssetDelivery/privateFiles/PublicCache\";\nexport * from \"./AssetDelivery/privateFiles/PrivateCache\";\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import { DynamoDBClient } from "@webiny/aws-sdk/client-dynamodb";
1
+ import { DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb";
2
2
  import { AssetDeliveryConfigModifierPlugin } from "./index";
3
3
  export interface AssetDeliveryParams {
4
- documentClient: DynamoDBClient;
4
+ documentClient: DynamoDBDocument;
5
5
  }
6
6
  export declare const setupAssetDelivery: (params: AssetDeliveryParams) => (AssetDeliveryConfigModifierPlugin | import("@webiny/handler").ModifyFastifyPlugin)[];
@@ -1 +1 @@
1
- {"version":3,"names":["_handler","require","_PrivateFilesAssetProcessor","_PrivateAuthenticatedAuthorizer","_PrivateFileAssetRequestResolver","_index","noCacheHeaders","ResponseHeaders","create","assertAssetRequestWasResolved","request","undefined","Error","assertAssetWasResolved","asset","setupAssetDelivery","params","outputAsset","reply","assetReply","output","headers","getHeaders","set","code","getCode","send","getBody","createModifyFastifyPlugin","app","configBuilder","AssetDeliveryConfigBuilder","configPlugins","webiny","plugins","byType","AssetDeliveryConfigModifierPlugin","type","forEach","configPlugin","buildConfig","resolvedRequest","resolvedAsset","handlerOnRequest","createHandlerOnRequest","requestResolver","getAssetRequestResolver","resolve","error","hijack","assetResolver","getAssetResolver","getTenant","getLocale","deliveryRoute","createRoute","onGet","context","_","wcp","canUsePrivateFiles","decorateAssetProcessor","assetProcessor","assetAuthorizer","PrivateAuthenticatedAuthorizer","PrivateFilesAssetProcessor","outputStrategy","getAssetOutputStrategy","setOutputStrategy","getAssetProcessor","processedAsset","process","override","register","createAssetDeliveryConfig","config","decorateAssetRequestResolver","FilesAssetRequestResolver","assetRequestResolver","AliasAssetRequestResolver","documentClient","PrivateFileAssetRequestResolver","exports"],"sources":["setupAssetDelivery.ts"],"sourcesContent":["import { DynamoDBClient } from \"@webiny/aws-sdk/client-dynamodb\";\nimport {\n createHandlerOnRequest,\n createModifyFastifyPlugin,\n createRoute,\n ResponseHeaders\n} from \"@webiny/handler\";\nimport { FileManagerContext } from \"~/types\";\nimport { PrivateFilesAssetProcessor } from \"./AssetDelivery/privateFiles/PrivateFilesAssetProcessor\";\nimport { PrivateAuthenticatedAuthorizer } from \"./AssetDelivery/privateFiles/PrivateAuthenticatedAuthorizer\";\nimport { PrivateFileAssetRequestResolver } from \"./AssetDelivery/privateFiles/PrivateFileAssetRequestResolver\";\nimport {\n Asset,\n AssetDeliveryConfigBuilder,\n AssetDeliveryConfigModifierPlugin,\n AssetRequest,\n AliasAssetRequestResolver,\n FilesAssetRequestResolver,\n createAssetDeliveryConfig\n} from \"./index\";\nimport { Reply } from \"@webiny/handler/types\";\n\nconst noCacheHeaders = ResponseHeaders.create({\n \"content-type\": \"application/json\",\n \"cache-control\": \"no-cache, no-store, must-revalidate\"\n});\n\nfunction assertAssetRequestWasResolved(request: any): asserts request is AssetRequest {\n if (request === undefined) {\n throw new Error(\"Not an AssetRequest!\");\n }\n}\n\nfunction assertAssetWasResolved(asset: Asset | undefined): asserts asset is Asset {\n if (asset === undefined) {\n throw new Error(\"Not an Asset!\");\n }\n}\n\nexport interface AssetDeliveryParams {\n documentClient: DynamoDBClient;\n}\n\nexport const setupAssetDelivery = (params: AssetDeliveryParams) => {\n const outputAsset = async (reply: Reply, asset: Asset) => {\n const assetReply = await asset.output();\n const headers = assetReply.getHeaders();\n\n // Set default headers.\n headers.set(\"x-webiny-base64-encoded\", true);\n\n reply.code(assetReply.getCode());\n reply.headers(headers.getHeaders());\n return reply.send(await assetReply.getBody());\n };\n\n return [\n createModifyFastifyPlugin(app => {\n // Config builder allows config modification via plugins.\n const configBuilder = new AssetDeliveryConfigBuilder();\n\n // Apply config modifications.\n const configPlugins = app.webiny.plugins.byType<AssetDeliveryConfigModifierPlugin>(\n AssetDeliveryConfigModifierPlugin.type\n );\n\n configPlugins.forEach(configPlugin => configPlugin.buildConfig(configBuilder));\n\n let resolvedRequest: AssetRequest | undefined;\n let resolvedAsset: Asset | undefined;\n\n // Create a `HandlerOnRequest` plugin to resolve `tenant` and `locale`, and allow the system to bootstrap.\n const handlerOnRequest = createHandlerOnRequest(async (request, reply) => {\n const requestResolver = configBuilder.getAssetRequestResolver();\n resolvedRequest = await requestResolver.resolve(request);\n\n if (!resolvedRequest) {\n reply\n .code(404)\n .headers(noCacheHeaders.getHeaders())\n .send({ error: \"Unable to resolve the request!\" })\n .hijack();\n\n return false;\n }\n\n const assetResolver = configBuilder.getAssetResolver();\n\n resolvedAsset = await assetResolver.resolve(resolvedRequest);\n\n if (!resolvedAsset) {\n reply\n .code(404)\n .headers(noCacheHeaders.getHeaders())\n .send({ error: \"Asset not found!\" })\n .hijack();\n\n return false;\n }\n\n request.headers = {\n ...request.headers,\n \"x-tenant\": resolvedAsset.getTenant(),\n \"x-i18n-locale\": resolvedAsset.getLocale()\n };\n\n return;\n });\n\n // Create the `Route` plugin, to handle all GET requests, and output the resolved asset.\n const deliveryRoute = createRoute<FileManagerContext>(({ onGet, context }) => {\n onGet(\n \"*\",\n async (_, reply) => {\n assertAssetRequestWasResolved(resolvedRequest);\n assertAssetWasResolved(resolvedAsset);\n\n if (context.wcp.canUsePrivateFiles()) {\n configBuilder.decorateAssetProcessor(({ assetProcessor, context }) => {\n // Currently, we only have one authorizer.\n const assetAuthorizer = new PrivateAuthenticatedAuthorizer(context);\n\n return new PrivateFilesAssetProcessor(\n context,\n assetAuthorizer,\n assetProcessor\n );\n });\n }\n\n const outputStrategy = configBuilder.getAssetOutputStrategy(\n context,\n resolvedRequest,\n resolvedAsset\n );\n\n resolvedAsset.setOutputStrategy(outputStrategy);\n\n const assetProcessor = configBuilder.getAssetProcessor(context);\n\n const processedAsset = await assetProcessor.process(\n resolvedRequest,\n resolvedAsset\n );\n\n // Get reply object (runs the output strategy under the hood).\n return outputAsset(reply, processedAsset);\n },\n { override: true }\n );\n });\n\n app.webiny.plugins.register(handlerOnRequest, deliveryRoute);\n }),\n // Create the default configuration\n createAssetDeliveryConfig(config => {\n config.decorateAssetRequestResolver(() => {\n // This resolver works with `/files/*` requests.\n return new FilesAssetRequestResolver();\n });\n\n config.decorateAssetRequestResolver(({ assetRequestResolver }) => {\n // This resolver tries to resolve the request using aliases.\n return new AliasAssetRequestResolver(params.documentClient, assetRequestResolver);\n });\n\n config.decorateAssetRequestResolver(({ assetRequestResolver }) => {\n // This resolver works with `/private/*` requests.\n return new PrivateFileAssetRequestResolver(assetRequestResolver);\n });\n })\n ];\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_handler","require","_PrivateFilesAssetProcessor","_PrivateAuthenticatedAuthorizer","_PrivateFileAssetRequestResolver","_index","noCacheHeaders","ResponseHeaders","create","assertAssetRequestWasResolved","request","undefined","Error","assertAssetWasResolved","asset","setupAssetDelivery","params","outputAsset","reply","assetReply","output","headers","getHeaders","set","code","getCode","send","getBody","createModifyFastifyPlugin","app","configBuilder","AssetDeliveryConfigBuilder","configPlugins","webiny","plugins","byType","AssetDeliveryConfigModifierPlugin","type","forEach","configPlugin","buildConfig","resolvedRequest","resolvedAsset","handlerOnRequest","createHandlerOnRequest","requestResolver","getAssetRequestResolver","resolve","error","hijack","assetResolver","getAssetResolver","getTenant","getLocale","deliveryRoute","createRoute","onGet","context","_","wcp","canUsePrivateFiles","decorateAssetProcessor","assetProcessor","assetAuthorizer","PrivateAuthenticatedAuthorizer","PrivateFilesAssetProcessor","outputStrategy","getAssetOutputStrategy","setOutputStrategy","getAssetProcessor","processedAsset","process","override","register","createAssetDeliveryConfig","config","decorateAssetRequestResolver","FilesAssetRequestResolver","assetRequestResolver","AliasAssetRequestResolver","documentClient","PrivateFileAssetRequestResolver","exports"],"sources":["setupAssetDelivery.ts"],"sourcesContent":["import { DynamoDBDocument } from \"@webiny/aws-sdk/client-dynamodb\";\nimport {\n createHandlerOnRequest,\n createModifyFastifyPlugin,\n createRoute,\n ResponseHeaders\n} from \"@webiny/handler\";\nimport { FileManagerContext } from \"~/types\";\nimport { PrivateFilesAssetProcessor } from \"./AssetDelivery/privateFiles/PrivateFilesAssetProcessor\";\nimport { PrivateAuthenticatedAuthorizer } from \"./AssetDelivery/privateFiles/PrivateAuthenticatedAuthorizer\";\nimport { PrivateFileAssetRequestResolver } from \"./AssetDelivery/privateFiles/PrivateFileAssetRequestResolver\";\nimport {\n Asset,\n AssetDeliveryConfigBuilder,\n AssetDeliveryConfigModifierPlugin,\n AssetRequest,\n AliasAssetRequestResolver,\n FilesAssetRequestResolver,\n createAssetDeliveryConfig\n} from \"./index\";\nimport { Reply } from \"@webiny/handler/types\";\n\nconst noCacheHeaders = ResponseHeaders.create({\n \"content-type\": \"application/json\",\n \"cache-control\": \"no-cache, no-store, must-revalidate\"\n});\n\nfunction assertAssetRequestWasResolved(request: any): asserts request is AssetRequest {\n if (request === undefined) {\n throw new Error(\"Not an AssetRequest!\");\n }\n}\n\nfunction assertAssetWasResolved(asset: Asset | undefined): asserts asset is Asset {\n if (asset === undefined) {\n throw new Error(\"Not an Asset!\");\n }\n}\n\nexport interface AssetDeliveryParams {\n documentClient: DynamoDBDocument;\n}\n\nexport const setupAssetDelivery = (params: AssetDeliveryParams) => {\n const outputAsset = async (reply: Reply, asset: Asset) => {\n const assetReply = await asset.output();\n const headers = assetReply.getHeaders();\n\n // Set default headers.\n headers.set(\"x-webiny-base64-encoded\", true);\n\n reply.code(assetReply.getCode());\n reply.headers(headers.getHeaders());\n return reply.send(await assetReply.getBody());\n };\n\n return [\n createModifyFastifyPlugin(app => {\n // Config builder allows config modification via plugins.\n const configBuilder = new AssetDeliveryConfigBuilder();\n\n // Apply config modifications.\n const configPlugins = app.webiny.plugins.byType<AssetDeliveryConfigModifierPlugin>(\n AssetDeliveryConfigModifierPlugin.type\n );\n\n configPlugins.forEach(configPlugin => configPlugin.buildConfig(configBuilder));\n\n let resolvedRequest: AssetRequest | undefined;\n let resolvedAsset: Asset | undefined;\n\n // Create a `HandlerOnRequest` plugin to resolve `tenant` and `locale`, and allow the system to bootstrap.\n const handlerOnRequest = createHandlerOnRequest(async (request, reply) => {\n const requestResolver = configBuilder.getAssetRequestResolver();\n resolvedRequest = await requestResolver.resolve(request);\n\n if (!resolvedRequest) {\n reply\n .code(404)\n .headers(noCacheHeaders.getHeaders())\n .send({ error: \"Unable to resolve the request!\" })\n .hijack();\n\n return false;\n }\n\n const assetResolver = configBuilder.getAssetResolver();\n\n resolvedAsset = await assetResolver.resolve(resolvedRequest);\n\n if (!resolvedAsset) {\n reply\n .code(404)\n .headers(noCacheHeaders.getHeaders())\n .send({ error: \"Asset not found!\" })\n .hijack();\n\n return false;\n }\n\n request.headers = {\n ...request.headers,\n \"x-tenant\": resolvedAsset.getTenant(),\n \"x-i18n-locale\": resolvedAsset.getLocale()\n };\n\n return;\n });\n\n // Create the `Route` plugin, to handle all GET requests, and output the resolved asset.\n const deliveryRoute = createRoute<FileManagerContext>(({ onGet, context }) => {\n onGet(\n \"*\",\n async (_, reply) => {\n assertAssetRequestWasResolved(resolvedRequest);\n assertAssetWasResolved(resolvedAsset);\n\n if (context.wcp.canUsePrivateFiles()) {\n configBuilder.decorateAssetProcessor(({ assetProcessor, context }) => {\n // Currently, we only have one authorizer.\n const assetAuthorizer = new PrivateAuthenticatedAuthorizer(context);\n\n return new PrivateFilesAssetProcessor(\n context,\n assetAuthorizer,\n assetProcessor\n );\n });\n }\n\n const outputStrategy = configBuilder.getAssetOutputStrategy(\n context,\n resolvedRequest,\n resolvedAsset\n );\n\n resolvedAsset.setOutputStrategy(outputStrategy);\n\n const assetProcessor = configBuilder.getAssetProcessor(context);\n\n const processedAsset = await assetProcessor.process(\n resolvedRequest,\n resolvedAsset\n );\n\n // Get reply object (runs the output strategy under the hood).\n return outputAsset(reply, processedAsset);\n },\n { override: true }\n );\n });\n\n app.webiny.plugins.register(handlerOnRequest, deliveryRoute);\n }),\n // Create the default configuration\n createAssetDeliveryConfig(config => {\n config.decorateAssetRequestResolver(() => {\n // This resolver works with `/files/*` requests.\n return new FilesAssetRequestResolver();\n });\n\n config.decorateAssetRequestResolver(({ assetRequestResolver }) => {\n // This resolver tries to resolve the request using aliases.\n return new AliasAssetRequestResolver(params.documentClient, assetRequestResolver);\n });\n\n config.decorateAssetRequestResolver(({ assetRequestResolver }) => {\n // This resolver works with `/private/*` requests.\n return new PrivateFileAssetRequestResolver(assetRequestResolver);\n });\n })\n ];\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_handlerGraphql","require","_utils","createBaseSchema","fileManagerGraphQL","GraphQLSchemaPlugin","typeDefs","resolvers","Query","fileManager","emptyResolver","Mutation","FmQuery","version","_","__","context","i18n","tenancy","getCurrentTenant","getContentLocale","getVersion","getSettings","resolve","FmMutation","install","args","srcPrefix","updateSettings","data","name","exports"],"sources":["baseSchema.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql\";\nimport { FileManagerContext } from \"~/types\";\nimport { emptyResolver, resolve } from \"./utils\";\n\nexport const createBaseSchema = () => {\n const fileManagerGraphQL = new GraphQLSchemaPlugin<FileManagerContext>({\n typeDefs: /* GraphQL */ `\n type FmError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n type FmCreatedBy {\n id: ID\n displayName: String\n type: String\n }\n\n type FmListMeta {\n cursor: String\n totalCount: Int\n hasMoreItems: Boolean\n }\n\n type FmBooleanResponse {\n data: Boolean\n error: FmError\n }\n\n type FmSettings {\n uploadMinFileSize: Number\n uploadMaxFileSize: Number\n srcPrefix: String\n }\n\n input FmSettingsInput {\n uploadMinFileSize: Number\n uploadMaxFileSize: Number\n srcPrefix: String\n }\n\n type FmSettingsResponse {\n data: FmSettings\n error: FmError\n }\n\n type FmQuery {\n version: String\n getSettings: FmSettingsResponse\n }\n\n type FmDeleteResponse {\n data: Boolean\n error: FmError\n }\n\n type FmMutation {\n install(srcPrefix: String): FmBooleanResponse\n updateSettings(data: FmSettingsInput): FmSettingsResponse\n }\n\n input FmInstallInput {\n srcPrefix: String!\n }\n\n extend type Query {\n fileManager: FmQuery\n }\n\n extend type Mutation {\n fileManager: FmMutation\n }\n `,\n resolvers: {\n Query: {\n fileManager: emptyResolver\n },\n Mutation: {\n fileManager: emptyResolver\n },\n FmQuery: {\n async version(_, __, context) {\n const { i18n, tenancy, fileManager } = context;\n if (!tenancy.getCurrentTenant() || !i18n.getContentLocale()) {\n return null;\n }\n\n const version = await fileManager.getVersion();\n return version ? \"true\" : null;\n },\n async getSettings(_, __, context) {\n return resolve(() => context.fileManager.getSettings());\n }\n },\n FmMutation: {\n async install(_, args: any, context) {\n return resolve(() =>\n context.fileManager.install({ srcPrefix: args.srcPrefix })\n );\n },\n async updateSettings(_, args: any, context) {\n return resolve(() => context.fileManager.updateSettings(args.data));\n }\n }\n }\n });\n fileManagerGraphQL.name = \"fm.graphql.base\";\n\n return fileManagerGraphQL;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAEO,MAAME,gBAAgB,GAAGA,CAAA,KAAM;EAClC,MAAMC,kBAAkB,GAAG,IAAIC,mCAAmB,CAAqB;IACnEC,QAAQ,EAAE,aAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;IACDC,SAAS,EAAE;MACPC,KAAK,EAAE;QACHC,WAAW,EAAEC;MACjB,CAAC;MACDC,QAAQ,EAAE;QACNF,WAAW,EAAEC;MACjB,CAAC;MACDE,OAAO,EAAE;QACL,MAAMC,OAAOA,CAACC,CAAC,EAAEC,EAAE,EAAEC,OAAO,EAAE;UAC1B,MAAM;YAAEC,IAAI;YAAEC,OAAO;YAAET;UAAY,CAAC,GAAGO,OAAO;UAC9C,IAAI,CAACE,OAAO,CAACC,gBAAgB,CAAC,CAAC,IAAI,CAACF,IAAI,CAACG,gBAAgB,CAAC,CAAC,EAAE;YACzD,OAAO,IAAI;UACf;UAEA,MAAMP,OAAO,GAAG,MAAMJ,WAAW,CAACY,UAAU,CAAC,CAAC;UAC9C,OAAOR,OAAO,GAAG,MAAM,GAAG,IAAI;QAClC,CAAC;QACD,MAAMS,WAAWA,CAACR,CAAC,EAAEC,EAAE,EAAEC,OAAO,EAAE;UAC9B,OAAO,IAAAO,cAAO,EAAC,MAAMP,OAAO,CAACP,WAAW,CAACa,WAAW,CAAC,CAAC,CAAC;QAC3D;MACJ,CAAC;MACDE,UAAU,EAAE;QACR,MAAMC,OAAOA,CAACX,CAAC,EAAEY,IAAS,EAAEV,OAAO,EAAE;UACjC,OAAO,IAAAO,cAAO,EAAC,MACXP,OAAO,CAACP,WAAW,CAACgB,OAAO,CAAC;YAAEE,SAAS,EAAED,IAAI,CAACC;UAAU,CAAC,CAC7D,CAAC;QACL,CAAC;QACD,MAAMC,cAAcA,CAACd,CAAC,EAAEY,IAAS,EAAEV,OAAO,EAAE;UACxC,OAAO,IAAAO,cAAO,EAAC,MAAMP,OAAO,CAACP,WAAW,CAACmB,cAAc,CAACF,IAAI,CAACG,IAAI,CAAC,CAAC;QACvE;MACJ;IACJ;EACJ,CAAC,CAAC;EACFzB,kBAAkB,CAAC0B,IAAI,GAAG,iBAAiB;EAE3C,OAAO1B,kBAAkB;AAC7B,CAAC;AAAC2B,OAAA,CAAA5B,gBAAA,GAAAA,gBAAA"}
1
+ {"version":3,"names":["_handlerGraphql","require","_utils","createBaseSchema","fileManagerGraphQL","GraphQLSchemaPlugin","typeDefs","resolvers","Query","fileManager","emptyResolver","Mutation","FmQuery","version","_","__","context","i18n","tenancy","getCurrentTenant","getContentLocale","getVersion","getSettings","resolve","FmMutation","install","args","srcPrefix","updateSettings","data","name","exports"],"sources":["baseSchema.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql\";\nimport { FileManagerContext } from \"~/types\";\nimport { emptyResolver, resolve } from \"./utils\";\n\nexport const createBaseSchema = () => {\n const fileManagerGraphQL = new GraphQLSchemaPlugin<FileManagerContext>({\n typeDefs: /* GraphQL */ `\n type FmError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n type FmCreatedBy {\n id: ID\n displayName: String\n type: String\n }\n\n type FmListMeta {\n cursor: String\n totalCount: Int\n hasMoreItems: Boolean\n }\n\n type FmBooleanResponse {\n data: Boolean\n error: FmError\n }\n\n type FmSettings {\n uploadMinFileSize: Number\n uploadMaxFileSize: Number\n srcPrefix: String\n }\n\n input FmSettingsInput {\n uploadMinFileSize: Number\n uploadMaxFileSize: Number\n srcPrefix: String\n }\n\n type FmSettingsResponse {\n data: FmSettings\n error: FmError\n }\n\n type FmQuery {\n version: String\n getSettings: FmSettingsResponse\n }\n\n type FmDeleteResponse {\n data: Boolean\n error: FmError\n }\n\n type FmMutation {\n install(srcPrefix: String): FmBooleanResponse\n updateSettings(data: FmSettingsInput): FmSettingsResponse\n }\n\n input FmInstallInput {\n srcPrefix: String!\n }\n\n extend type Query {\n fileManager: FmQuery\n }\n\n extend type Mutation {\n fileManager: FmMutation\n }\n `,\n resolvers: {\n Query: {\n fileManager: emptyResolver\n },\n Mutation: {\n fileManager: emptyResolver\n },\n FmQuery: {\n async version(_, __, context) {\n const { i18n, tenancy, fileManager } = context;\n if (!tenancy.getCurrentTenant() || !i18n.getContentLocale()) {\n return null;\n }\n\n const version = await fileManager.getVersion();\n return version ? \"true\" : null;\n },\n async getSettings(_, __, context) {\n return resolve(() => context.fileManager.getSettings());\n }\n },\n FmMutation: {\n async install(_, args: any, context) {\n return resolve(() =>\n context.fileManager.install({ srcPrefix: args.srcPrefix })\n );\n },\n async updateSettings(_, args: any, context) {\n return resolve(() => context.fileManager.updateSettings(args.data));\n }\n }\n }\n });\n fileManagerGraphQL.name = \"fm.graphql.base\";\n\n return fileManagerGraphQL;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAEO,MAAME,gBAAgB,GAAGA,CAAA,KAAM;EAClC,MAAMC,kBAAkB,GAAG,IAAIC,mCAAmB,CAAqB;IACnEC,QAAQ,EAAE,aAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;IACDC,SAAS,EAAE;MACPC,KAAK,EAAE;QACHC,WAAW,EAAEC;MACjB,CAAC;MACDC,QAAQ,EAAE;QACNF,WAAW,EAAEC;MACjB,CAAC;MACDE,OAAO,EAAE;QACL,MAAMC,OAAOA,CAACC,CAAC,EAAEC,EAAE,EAAEC,OAAO,EAAE;UAC1B,MAAM;YAAEC,IAAI;YAAEC,OAAO;YAAET;UAAY,CAAC,GAAGO,OAAO;UAC9C,IAAI,CAACE,OAAO,CAACC,gBAAgB,CAAC,CAAC,IAAI,CAACF,IAAI,CAACG,gBAAgB,CAAC,CAAC,EAAE;YACzD,OAAO,IAAI;UACf;UAEA,MAAMP,OAAO,GAAG,MAAMJ,WAAW,CAACY,UAAU,CAAC,CAAC;UAC9C,OAAOR,OAAO,GAAG,MAAM,GAAG,IAAI;QAClC,CAAC;QACD,MAAMS,WAAWA,CAACR,CAAC,EAAEC,EAAE,EAAEC,OAAO,EAAE;UAC9B,OAAO,IAAAO,cAAO,EAAC,MAAMP,OAAO,CAACP,WAAW,CAACa,WAAW,CAAC,CAAC,CAAC;QAC3D;MACJ,CAAC;MACDE,UAAU,EAAE;QACR,MAAMC,OAAOA,CAACX,CAAC,EAAEY,IAAS,EAAEV,OAAO,EAAE;UACjC,OAAO,IAAAO,cAAO,EAAC,MACXP,OAAO,CAACP,WAAW,CAACgB,OAAO,CAAC;YAAEE,SAAS,EAAED,IAAI,CAACC;UAAU,CAAC,CAC7D,CAAC;QACL,CAAC;QACD,MAAMC,cAAcA,CAACd,CAAC,EAAEY,IAAS,EAAEV,OAAO,EAAE;UACxC,OAAO,IAAAO,cAAO,EAAC,MAAMP,OAAO,CAACP,WAAW,CAACmB,cAAc,CAACF,IAAI,CAACG,IAAI,CAAC,CAAC;QACvE;MACJ;IACJ;EACJ,CAAC,CAAC;EACFzB,kBAAkB,CAAC0B,IAAI,GAAG,iBAAiB;EAE3C,OAAO1B,kBAAkB;AAC7B,CAAC;AAAC2B,OAAA,CAAA5B,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -67,7 +67,7 @@ const createFilesTypeDefs = params => {
67
67
  fieldTypePlugins,
68
68
  sorterPlugins: []
69
69
  });
70
- return (/* GraphQL */`
70
+ return /* GraphQL */`
71
71
  ${fieldTypes.map(f => f.typeDefs).join("\n")}
72
72
 
73
73
  type FmFile {
@@ -177,8 +177,7 @@ const createFilesTypeDefs = params => {
177
177
  updateFile(id: ID!, data: FmFileUpdateInput!): FmFileResponse!
178
178
  deleteFile(id: ID!): FmBooleanResponse!
179
179
  }
180
- `
181
- );
180
+ `;
182
181
  };
183
182
  exports.createFilesTypeDefs = createFilesTypeDefs;
184
183
 
@@ -1 +1 @@
1
- {"version":3,"names":["_renderFields","require","_renderInputFields","_renderListFilterFields","_renderSortEnum","removeFieldRequiredValidation","field","validation","filter","name","listValidation","v","createUpdateFields","fields","reduce","collection","push","createFilesTypeDefs","params","model","models","plugins","fieldTypePlugins","fieldTypes","renderFields","type","inputCreateFields","renderInputFields","inputUpdateFields","listFilterFieldsRender","renderListFilterFields","excludeFields","excludeFromSorterts","sortEnumRender","renderSortEnum","includes","fieldId","sorterPlugins","map","f","typeDefs","join","exports"],"sources":["createFilesTypeDefs.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { renderFields } from \"@webiny/api-headless-cms/utils/renderFields\";\nimport { renderInputFields } from \"@webiny/api-headless-cms/utils/renderInputFields\";\nimport { renderListFilterFields } from \"@webiny/api-headless-cms/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"@webiny/api-headless-cms/utils/renderSortEnum\";\n\nexport interface CreateFilesTypeDefsParams {\n model: CmsModel;\n models: CmsModel[];\n plugins: CmsFieldTypePlugins;\n}\n\nconst removeFieldRequiredValidation = (field: CmsModelField) => {\n if (field.validation) {\n field.validation = field.validation.filter(validation => validation.name !== \"required\");\n }\n if (field.listValidation) {\n field.listValidation = field.listValidation.filter(v => v.name !== \"required\");\n }\n return field;\n};\n\nconst createUpdateFields = (fields: CmsModelField[]): CmsModelField[] => {\n return fields.reduce<CmsModelField[]>((collection, field) => {\n collection.push(removeFieldRequiredValidation({ ...field }));\n return collection;\n }, []);\n};\n\nexport const createFilesTypeDefs = (params: CreateFilesTypeDefsParams): string => {\n const { model, models, plugins: fieldTypePlugins } = params;\n const { fields } = model;\n\n const fieldTypes = renderFields({\n models,\n model,\n fields,\n type: \"manage\",\n fieldTypePlugins\n });\n const inputCreateFields = renderInputFields({\n models,\n model,\n fields,\n fieldTypePlugins\n });\n const inputUpdateFields = renderInputFields({\n models,\n model,\n fields: createUpdateFields(fields),\n fieldTypePlugins\n });\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins,\n excludeFields: [\"entryId\", \"status\"]\n });\n\n const excludeFromSorterts = [\"tags\", \"aliases\"];\n\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields.filter(field => !excludeFromSorterts.includes(field.fieldId)),\n fieldTypePlugins,\n sorterPlugins: []\n });\n\n return /* GraphQL */ `\n ${fieldTypes.map(f => f.typeDefs).join(\"\\n\")}\n\n type FmFile {\n id: ID!\n createdOn: DateTime!\n modifiedOn: DateTime\n savedOn: DateTime!\n createdBy: FmCreatedBy!\n modifiedBy: FmCreatedBy\n savedBy: FmCreatedBy!\n src: String\n ${fieldTypes.map(f => f.fields).join(\"\\n\")}\n }\n\n ${inputCreateFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input FmCreatedByInput {\n id: ID!\n displayName: String!\n type: String!\n }\n\n input FmFileCreateInput {\n id: ID!\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n createdBy: FmCreatedByInput\n modifiedBy: FmCreatedByInput\n savedBy: FmCreatedByInput\n ${inputCreateFields.map(f => f.fields).join(\"\\n\")}\n }\n\n input FmFileUpdateInput {\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n createdBy: FmCreatedByInput\n modifiedBy: FmCreatedByInput\n savedBy: FmCreatedByInput\n ${inputUpdateFields.map(f => f.fields).join(\"\\n\")}\n }\n\n type FmFileResponse {\n data: FmFile\n error: FmError\n }\n\n input FmFileListWhereInput {\n ${listFilterFieldsRender}\n AND: [FmFileListWhereInput!]\n OR: [FmFileListWhereInput!]\n }\n\n type FmFileListResponse {\n data: [FmFile!]\n error: FmError\n meta: FmListMeta\n }\n\n enum FmFileListSorter {\n ${sortEnumRender}\n }\n\n input FmTagsListWhereInput {\n createdBy: String\n tags_startsWith: String\n tags_not_startsWith: String\n }\n\n type FmTag {\n tag: String!\n count: Number!\n }\n\n type FmTagsListResponse {\n data: [FmTag!]\n error: FmError\n }\n\n type FmCreateFilesResponse {\n data: [FmFile!]\n error: FmError\n }\n \n type FmFileModelResponse {\n data: JSON\n error: FmError\n }\n\n extend type FmQuery {\n getFileModel: FmFileModelResponse!\n getFile(id: ID!): FmFileResponse!\n listFiles(\n search: String\n where: FmFileListWhereInput\n limit: Int\n after: String\n sort: [FmFileListSorter!]\n ): FmFileListResponse!\n listTags(where: FmTagsListWhereInput): FmTagsListResponse!\n }\n\n extend type FmMutation {\n createFile(data: FmFileCreateInput!): FmFileResponse!\n createFiles(data: [FmFileCreateInput!]!): FmCreateFilesResponse!\n updateFile(id: ID!, data: FmFileUpdateInput!): FmFileResponse!\n deleteFile(id: ID!): FmBooleanResponse!\n }\n `;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_renderFields","require","_renderInputFields","_renderListFilterFields","_renderSortEnum","removeFieldRequiredValidation","field","validation","filter","name","listValidation","v","createUpdateFields","fields","reduce","collection","push","createFilesTypeDefs","params","model","models","plugins","fieldTypePlugins","fieldTypes","renderFields","type","inputCreateFields","renderInputFields","inputUpdateFields","listFilterFieldsRender","renderListFilterFields","excludeFields","excludeFromSorterts","sortEnumRender","renderSortEnum","includes","fieldId","sorterPlugins","map","f","typeDefs","join","exports"],"sources":["createFilesTypeDefs.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { renderFields } from \"@webiny/api-headless-cms/utils/renderFields\";\nimport { renderInputFields } from \"@webiny/api-headless-cms/utils/renderInputFields\";\nimport { renderListFilterFields } from \"@webiny/api-headless-cms/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"@webiny/api-headless-cms/utils/renderSortEnum\";\n\nexport interface CreateFilesTypeDefsParams {\n model: CmsModel;\n models: CmsModel[];\n plugins: CmsFieldTypePlugins;\n}\n\nconst removeFieldRequiredValidation = (field: CmsModelField) => {\n if (field.validation) {\n field.validation = field.validation.filter(validation => validation.name !== \"required\");\n }\n if (field.listValidation) {\n field.listValidation = field.listValidation.filter(v => v.name !== \"required\");\n }\n return field;\n};\n\nconst createUpdateFields = (fields: CmsModelField[]): CmsModelField[] => {\n return fields.reduce<CmsModelField[]>((collection, field) => {\n collection.push(removeFieldRequiredValidation({ ...field }));\n return collection;\n }, []);\n};\n\nexport const createFilesTypeDefs = (params: CreateFilesTypeDefsParams): string => {\n const { model, models, plugins: fieldTypePlugins } = params;\n const { fields } = model;\n\n const fieldTypes = renderFields({\n models,\n model,\n fields,\n type: \"manage\",\n fieldTypePlugins\n });\n const inputCreateFields = renderInputFields({\n models,\n model,\n fields,\n fieldTypePlugins\n });\n const inputUpdateFields = renderInputFields({\n models,\n model,\n fields: createUpdateFields(fields),\n fieldTypePlugins\n });\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins,\n excludeFields: [\"entryId\", \"status\"]\n });\n\n const excludeFromSorterts = [\"tags\", \"aliases\"];\n\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields.filter(field => !excludeFromSorterts.includes(field.fieldId)),\n fieldTypePlugins,\n sorterPlugins: []\n });\n\n return /* GraphQL */ `\n ${fieldTypes.map(f => f.typeDefs).join(\"\\n\")}\n\n type FmFile {\n id: ID!\n createdOn: DateTime!\n modifiedOn: DateTime\n savedOn: DateTime!\n createdBy: FmCreatedBy!\n modifiedBy: FmCreatedBy\n savedBy: FmCreatedBy!\n src: String\n ${fieldTypes.map(f => f.fields).join(\"\\n\")}\n }\n\n ${inputCreateFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input FmCreatedByInput {\n id: ID!\n displayName: String!\n type: String!\n }\n\n input FmFileCreateInput {\n id: ID!\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n createdBy: FmCreatedByInput\n modifiedBy: FmCreatedByInput\n savedBy: FmCreatedByInput\n ${inputCreateFields.map(f => f.fields).join(\"\\n\")}\n }\n\n input FmFileUpdateInput {\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n createdBy: FmCreatedByInput\n modifiedBy: FmCreatedByInput\n savedBy: FmCreatedByInput\n ${inputUpdateFields.map(f => f.fields).join(\"\\n\")}\n }\n\n type FmFileResponse {\n data: FmFile\n error: FmError\n }\n\n input FmFileListWhereInput {\n ${listFilterFieldsRender}\n AND: [FmFileListWhereInput!]\n OR: [FmFileListWhereInput!]\n }\n\n type FmFileListResponse {\n data: [FmFile!]\n error: FmError\n meta: FmListMeta\n }\n\n enum FmFileListSorter {\n ${sortEnumRender}\n }\n\n input FmTagsListWhereInput {\n createdBy: String\n tags_startsWith: String\n tags_not_startsWith: String\n }\n\n type FmTag {\n tag: String!\n count: Number!\n }\n\n type FmTagsListResponse {\n data: [FmTag!]\n error: FmError\n }\n\n type FmCreateFilesResponse {\n data: [FmFile!]\n error: FmError\n }\n \n type FmFileModelResponse {\n data: JSON\n error: FmError\n }\n\n extend type FmQuery {\n getFileModel: FmFileModelResponse!\n getFile(id: ID!): FmFileResponse!\n listFiles(\n search: String\n where: FmFileListWhereInput\n limit: Int\n after: String\n sort: [FmFileListSorter!]\n ): FmFileListResponse!\n listTags(where: FmTagsListWhereInput): FmTagsListResponse!\n }\n\n extend type FmMutation {\n createFile(data: FmFileCreateInput!): FmFileResponse!\n createFiles(data: [FmFileCreateInput!]!): FmCreateFilesResponse!\n updateFile(id: ID!, data: FmFileUpdateInput!): FmFileResponse!\n deleteFile(id: ID!): FmBooleanResponse!\n }\n `;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_handlerGraphql","require","_utils","_createFilesTypeDefs","_apiSecurity","createFilesSchema","params","fileManagerGraphQL","GraphQLSchemaPlugin","typeDefs","createFilesTypeDefs","resolvers","Query","fileManager","emptyResolver","Mutation","FmFile","src","file","_","context","settings","getSettings","srcPrefix","key","FmQuery","getFileModel","__","identity","security","getIdentity","NotAuthorizedResponse","resolve","cms","getModel","getFile","args","id","listFiles","data","meta","ListResponse","e","ErrorResponse","listTags","tags","Response","error","FmMutation","createFile","createFiles","createFilesInBatch","updateFile","deleteFile","storage","delete","name","exports"],"sources":["filesSchema.ts"],"sourcesContent":["import {\n ErrorResponse,\n GraphQLSchemaPlugin,\n ListResponse,\n Response\n} from \"@webiny/handler-graphql\";\nimport { FileManagerContext, FilesListOpts } from \"~/types\";\nimport { emptyResolver, resolve } from \"./utils\";\nimport { createFilesTypeDefs, CreateFilesTypeDefsParams } from \"~/graphql/createFilesTypeDefs\";\nimport { NotAuthorizedResponse } from \"@webiny/api-security\";\n\nexport const createFilesSchema = (params: CreateFilesTypeDefsParams) => {\n const fileManagerGraphQL = new GraphQLSchemaPlugin<FileManagerContext>({\n typeDefs: createFilesTypeDefs(params),\n resolvers: {\n Query: {\n fileManager: emptyResolver\n },\n Mutation: {\n fileManager: emptyResolver\n },\n FmFile: {\n async src(file, _, context: FileManagerContext) {\n const settings = await context.fileManager.getSettings();\n return (settings?.srcPrefix || \"\") + file.key;\n }\n },\n FmQuery: {\n getFileModel(_, __, context) {\n const identity = context.security.getIdentity();\n if (!identity) {\n return new NotAuthorizedResponse();\n }\n\n return resolve(() => context.cms.getModel(\"fmFile\"));\n },\n getFile(_, args: any, context) {\n return resolve(() => context.fileManager.getFile(args.id));\n },\n async listFiles(_, args: FilesListOpts, context) {\n try {\n const [data, meta] = await context.fileManager.listFiles(args);\n\n return new ListResponse(data, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n async listTags(_, args: any, context) {\n try {\n const tags = await context.fileManager.listTags(args || {});\n\n return new Response(tags);\n } catch (error) {\n return new ErrorResponse(error);\n }\n }\n },\n FmMutation: {\n async createFile(_, args: any, context) {\n return resolve(() => {\n return context.fileManager.createFile(args.data, args.meta);\n });\n },\n async createFiles(_, args: any, context) {\n return resolve(() => {\n return context.fileManager.createFilesInBatch(args.data, args.meta);\n });\n },\n async updateFile(_, args: any, context) {\n return resolve(() => {\n return context.fileManager.updateFile(args.id, args.data);\n });\n },\n async deleteFile(_, args: any, context) {\n return resolve(async () => {\n // TODO: Ideally, this should work via a lifecycle hook; first we delete a record from DB, then from cloud storage.\n const file = await context.fileManager.getFile(args.id);\n return await context.fileManager.storage.delete({\n id: file.id,\n key: file.key\n });\n });\n }\n }\n }\n });\n fileManagerGraphQL.name = \"fm.graphql.files\";\n\n return fileManagerGraphQL;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_handlerGraphql","require","_utils","_createFilesTypeDefs","_apiSecurity","createFilesSchema","params","fileManagerGraphQL","GraphQLSchemaPlugin","typeDefs","createFilesTypeDefs","resolvers","Query","fileManager","emptyResolver","Mutation","FmFile","src","file","_","context","settings","getSettings","srcPrefix","key","FmQuery","getFileModel","__","identity","security","getIdentity","NotAuthorizedResponse","resolve","cms","getModel","getFile","args","id","listFiles","data","meta","ListResponse","e","ErrorResponse","listTags","tags","Response","error","FmMutation","createFile","createFiles","createFilesInBatch","updateFile","deleteFile","storage","delete","name","exports"],"sources":["filesSchema.ts"],"sourcesContent":["import {\n ErrorResponse,\n GraphQLSchemaPlugin,\n ListResponse,\n Response\n} from \"@webiny/handler-graphql\";\nimport { FileManagerContext, FilesListOpts } from \"~/types\";\nimport { emptyResolver, resolve } from \"./utils\";\nimport { createFilesTypeDefs, CreateFilesTypeDefsParams } from \"~/graphql/createFilesTypeDefs\";\nimport { NotAuthorizedResponse } from \"@webiny/api-security\";\n\nexport const createFilesSchema = (params: CreateFilesTypeDefsParams) => {\n const fileManagerGraphQL = new GraphQLSchemaPlugin<FileManagerContext>({\n typeDefs: createFilesTypeDefs(params),\n resolvers: {\n Query: {\n fileManager: emptyResolver\n },\n Mutation: {\n fileManager: emptyResolver\n },\n FmFile: {\n async src(file, _, context: FileManagerContext) {\n const settings = await context.fileManager.getSettings();\n return (settings?.srcPrefix || \"\") + file.key;\n }\n },\n FmQuery: {\n getFileModel(_, __, context) {\n const identity = context.security.getIdentity();\n if (!identity) {\n return new NotAuthorizedResponse();\n }\n\n return resolve(() => context.cms.getModel(\"fmFile\"));\n },\n getFile(_, args: any, context) {\n return resolve(() => context.fileManager.getFile(args.id));\n },\n async listFiles(_, args: FilesListOpts, context) {\n try {\n const [data, meta] = await context.fileManager.listFiles(args);\n\n return new ListResponse(data, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n async listTags(_, args: any, context) {\n try {\n const tags = await context.fileManager.listTags(args || {});\n\n return new Response(tags);\n } catch (error) {\n return new ErrorResponse(error);\n }\n }\n },\n FmMutation: {\n async createFile(_, args: any, context) {\n return resolve(() => {\n return context.fileManager.createFile(args.data, args.meta);\n });\n },\n async createFiles(_, args: any, context) {\n return resolve(() => {\n return context.fileManager.createFilesInBatch(args.data, args.meta);\n });\n },\n async updateFile(_, args: any, context) {\n return resolve(() => {\n return context.fileManager.updateFile(args.id, args.data);\n });\n },\n async deleteFile(_, args: any, context) {\n return resolve(async () => {\n // TODO: Ideally, this should work via a lifecycle hook; first we delete a record from DB, then from cloud storage.\n const file = await context.fileManager.getFile(args.id);\n return await context.fileManager.storage.delete({\n id: file.id,\n key: file.key\n });\n });\n }\n }\n }\n });\n fileManagerGraphQL.name = \"fm.graphql.files\";\n\n return fileManagerGraphQL;\n};\n"],"mappings":"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","ignoreList":[]}