@contember/engine-s3-plugin 2.1.0-alpha.36 → 2.1.0-alpha.39

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 (87) hide show
  1. package/dist/development/index.cjs +27 -0
  2. package/dist/development/index.cjs.map +1 -0
  3. package/dist/development/index.js +28 -0
  4. package/dist/development/index.js.map +1 -0
  5. package/dist/development/src/Config.cjs +73 -0
  6. package/dist/development/src/Config.cjs.map +1 -0
  7. package/dist/development/src/Config.js +56 -0
  8. package/dist/development/src/Config.js.map +1 -0
  9. package/dist/development/src/S3ConfigProcessor.cjs +60 -0
  10. package/dist/development/src/S3ConfigProcessor.cjs.map +1 -0
  11. package/dist/development/src/S3ConfigProcessor.js +43 -0
  12. package/dist/development/src/S3ConfigProcessor.js.map +1 -0
  13. package/dist/development/src/S3ObjectAuthorizator.cjs +46 -0
  14. package/dist/development/src/S3ObjectAuthorizator.cjs.map +1 -0
  15. package/dist/development/src/S3ObjectAuthorizator.js +46 -0
  16. package/dist/development/src/S3ObjectAuthorizator.js.map +1 -0
  17. package/dist/development/src/S3SchemaContributor.cjs +105 -0
  18. package/dist/development/src/S3SchemaContributor.cjs.map +1 -0
  19. package/dist/development/src/S3SchemaContributor.js +105 -0
  20. package/dist/development/src/S3SchemaContributor.js.map +1 -0
  21. package/dist/development/src/S3SchemaTypes.cjs +71 -0
  22. package/dist/development/src/S3SchemaTypes.cjs.map +1 -0
  23. package/dist/development/src/S3SchemaTypes.js +71 -0
  24. package/dist/development/src/S3SchemaTypes.js.map +1 -0
  25. package/dist/development/src/S3Service.cjs +105 -0
  26. package/dist/development/src/S3Service.cjs.map +1 -0
  27. package/dist/development/src/S3Service.js +105 -0
  28. package/dist/development/src/S3Service.js.map +1 -0
  29. package/dist/development/src/S3Signer.cjs +84 -0
  30. package/dist/development/src/S3Signer.cjs.map +1 -0
  31. package/dist/development/src/S3Signer.js +84 -0
  32. package/dist/development/src/S3Signer.js.map +1 -0
  33. package/dist/production/index.cjs +27 -0
  34. package/dist/production/index.cjs.map +1 -0
  35. package/dist/production/index.js +28 -0
  36. package/dist/production/index.js.map +1 -0
  37. package/dist/production/src/Config.cjs +73 -0
  38. package/dist/production/src/Config.cjs.map +1 -0
  39. package/dist/production/src/Config.js +56 -0
  40. package/dist/production/src/Config.js.map +1 -0
  41. package/dist/production/src/S3ConfigProcessor.cjs +60 -0
  42. package/dist/production/src/S3ConfigProcessor.cjs.map +1 -0
  43. package/dist/production/src/S3ConfigProcessor.js +43 -0
  44. package/dist/production/src/S3ConfigProcessor.js.map +1 -0
  45. package/dist/production/src/S3ObjectAuthorizator.cjs +46 -0
  46. package/dist/production/src/S3ObjectAuthorizator.cjs.map +1 -0
  47. package/dist/production/src/S3ObjectAuthorizator.js +46 -0
  48. package/dist/production/src/S3ObjectAuthorizator.js.map +1 -0
  49. package/dist/production/src/S3SchemaContributor.cjs +105 -0
  50. package/dist/production/src/S3SchemaContributor.cjs.map +1 -0
  51. package/dist/production/src/S3SchemaContributor.js +105 -0
  52. package/dist/production/src/S3SchemaContributor.js.map +1 -0
  53. package/dist/production/src/S3SchemaTypes.cjs +71 -0
  54. package/dist/production/src/S3SchemaTypes.cjs.map +1 -0
  55. package/dist/production/src/S3SchemaTypes.js +71 -0
  56. package/dist/production/src/S3SchemaTypes.js.map +1 -0
  57. package/dist/production/src/S3Service.cjs +105 -0
  58. package/dist/production/src/S3Service.cjs.map +1 -0
  59. package/dist/production/src/S3Service.js +105 -0
  60. package/dist/production/src/S3Service.js.map +1 -0
  61. package/dist/production/src/S3Signer.cjs +84 -0
  62. package/dist/production/src/S3Signer.cjs.map +1 -0
  63. package/dist/production/src/S3Signer.js +84 -0
  64. package/dist/production/src/S3Signer.js.map +1 -0
  65. package/dist/tests/cases/authorizator.test.d.ts +2 -0
  66. package/dist/tests/cases/authorizator.test.d.ts.map +1 -0
  67. package/dist/tests/cases/signRequest.test.d.ts +2 -0
  68. package/dist/tests/cases/signRequest.test.d.ts.map +1 -0
  69. package/dist/tests/tsconfig.tsbuildinfo +1 -0
  70. package/dist/types/Config.d.ts +33 -0
  71. package/dist/types/Config.d.ts.map +1 -0
  72. package/dist/types/S3ConfigProcessor.d.ts +9 -0
  73. package/dist/types/S3ConfigProcessor.d.ts.map +1 -0
  74. package/dist/types/S3ObjectAuthorizator.d.ts +22 -0
  75. package/dist/types/S3ObjectAuthorizator.d.ts.map +1 -0
  76. package/dist/types/S3SchemaContributor.d.ts +21 -0
  77. package/dist/types/S3SchemaContributor.d.ts.map +1 -0
  78. package/dist/types/S3SchemaTypes.d.ts +21 -0
  79. package/dist/types/S3SchemaTypes.d.ts.map +1 -0
  80. package/dist/types/S3Service.d.ts +44 -0
  81. package/dist/types/S3Service.d.ts.map +1 -0
  82. package/dist/types/S3Signer.d.ts +22 -0
  83. package/dist/types/S3Signer.d.ts.map +1 -0
  84. package/dist/types/index.d.ts +13 -0
  85. package/dist/types/index.d.ts.map +1 -0
  86. package/dist/types/tsconfig.tsbuildinfo +1 -0
  87. package/package.json +13 -13
@@ -0,0 +1,33 @@
1
+ import * as Typesafe from '@contember/typesafe';
2
+ export declare enum S3Providers {
3
+ aws = "aws",
4
+ minio = "minio",
5
+ ceph = "ceph",
6
+ localstack = "localstack",
7
+ cloudserver = "cloudserver"
8
+ }
9
+ export declare const s3ConfigSchema: Typesafe.Type<{
10
+ readonly bucket: string;
11
+ readonly region: string;
12
+ readonly prefix: string;
13
+ readonly credentials: {
14
+ readonly key: string;
15
+ readonly secret: string;
16
+ };
17
+ } & {
18
+ readonly endpoint?: string | undefined;
19
+ readonly cdnEndpoint?: string | undefined;
20
+ readonly provider?: S3Providers | undefined;
21
+ readonly noAcl?: boolean | undefined;
22
+ }>;
23
+ export type S3Config = ReturnType<typeof s3ConfigSchema>;
24
+ export type Project3Config = {
25
+ s3?: S3Config;
26
+ };
27
+ export declare const resolveS3Config: (config: S3Config) => S3Config;
28
+ export declare const resolveS3Endpoint: (config: S3Config) => {
29
+ endpoint: string;
30
+ basePath: string;
31
+ };
32
+ export declare const resolveS3PublicBaseUrl: (config: S3Config) => string;
33
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAE/C,oBAAY,WAAW;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,WAAW,gBAAgB;CAC3B;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;EAgB1B,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA;AAExD,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAA;AAK9C,eAAO,MAAM,eAAe,GAAI,QAAQ,QAAQ,KAAG,QAKlD,CAAA;AAID,eAAO,MAAM,iBAAiB,GAC7B,QAAQ,QAAQ,KACd;IACF,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CAOhB,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,QAAQ,QAAQ,KAAG,MAMzD,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { ConfigProcessor, ConfigTemplate, ConfigTemplateContext } from '@contember/engine-plugins';
2
+ import { Project3Config } from './Config';
3
+ import * as Typesafe from '@contember/typesafe';
4
+ export declare class S3ConfigProcessor implements ConfigProcessor<Project3Config> {
5
+ getDefaultEnv(): Record<string, string>;
6
+ prepareConfigTemplate(template: ConfigTemplate, { env }: ConfigTemplateContext): any;
7
+ getProjectConfigSchema(slug: string): Typesafe.Type<Record<string, any>>;
8
+ }
9
+ //# sourceMappingURL=S3ConfigProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3ConfigProcessor.d.ts","sourceRoot":"","sources":["../../src/S3ConfigProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAClG,OAAO,EAAE,cAAc,EAAkB,MAAM,UAAU,CAAA;AACzD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAE/C,qBAAa,iBAAkB,YAAW,eAAe,CAAC,cAAc,CAAC;IACxE,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAQvC,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,EAAE,qBAAqB;IAqB9E,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAQxE"}
@@ -0,0 +1,22 @@
1
+ export type S3ObjectUploadRule = {
2
+ pattern: string;
3
+ maxSize?: number;
4
+ matcher?: (key: string) => boolean;
5
+ };
6
+ export type S3ObjectReadRule = {
7
+ pattern: string;
8
+ matcher?: (key: string) => boolean;
9
+ };
10
+ export declare class S3ObjectAuthorizator {
11
+ private readonly uploadRules;
12
+ private readonly readRules;
13
+ constructor(uploadRules: Omit<S3ObjectUploadRule, 'matcher'>[], readRules: Omit<S3ObjectReadRule, 'matcher'>[]);
14
+ verifyReadAccess({ key }: {
15
+ key: string;
16
+ }): void;
17
+ verifyUploadAccess({ key, size }: {
18
+ key: string;
19
+ size: number | null;
20
+ }): void;
21
+ }
22
+ //# sourceMappingURL=S3ObjectAuthorizator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3ObjectAuthorizator.d.ts","sourceRoot":"","sources":["../../src/S3ObjectAuthorizator.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,kBAAkB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;CAClC,CAAA;AAED,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;gBAG7C,WAAW,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,EAAE,EAClD,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE;IAMxC,gBAAgB,CAAC,EAAE,GAAG,EAAE,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAYhD,kBAAkB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI;CAwBpF"}
@@ -0,0 +1,21 @@
1
+ import { GraphQLSchemaConfig } from 'graphql';
2
+ import { S3ServiceFactory } from './S3Service';
3
+ import { GraphQLSchemaContributor, GraphQLSchemaContributorContext, Providers } from '@contember/engine-plugins';
4
+ export type S3SchemaUploadAcl = boolean | {
5
+ maxSize?: number;
6
+ };
7
+ export type S3SchemaAcl = Record<string, // public/*.jpg
8
+ {
9
+ read?: boolean;
10
+ upload?: S3SchemaUploadAcl;
11
+ }>;
12
+ export declare class S3SchemaContributor implements GraphQLSchemaContributor {
13
+ private readonly s3Factory;
14
+ private readonly providers;
15
+ constructor(s3Factory: S3ServiceFactory, providers: Providers);
16
+ getCacheKey?({ project }: GraphQLSchemaContributorContext): string;
17
+ createSchema(context: GraphQLSchemaContributorContext): GraphQLSchemaConfig | undefined;
18
+ private createReadMutation;
19
+ private createUploadMutation;
20
+ }
21
+ //# sourceMappingURL=S3SchemaContributor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3SchemaContributor.d.ts","sourceRoot":"","sources":["../../src/S3SchemaContributor.ts"],"names":[],"mappings":"AAAA,OAAO,EAON,mBAAmB,EAEnB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAa,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAEzD,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAShH,MAAM,MAAM,iBAAiB,GAC1B,OAAO,GACP;IACD,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,MAAM,CAC/B,MAAM,EAAE,eAAe;AACvB;IACC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,iBAAiB,CAAA;CAC1B,CACD,CAAA;AAED,qBAAa,mBAAoB,YAAW,wBAAwB;IAElE,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,SAAS;IAGtC,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,+BAA+B,GAAG,MAAM;IAIlE,YAAY,CAAC,OAAO,EAAE,+BAA+B,GAAG,mBAAmB,GAAG,SAAS;IAyCvF,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,oBAAoB;CAkC5B"}
@@ -0,0 +1,21 @@
1
+ import { GraphQLEnumType, GraphQLInputObjectType, GraphQLObjectType } from 'graphql';
2
+ export declare const S3Header: GraphQLObjectType<any, any>;
3
+ export declare const S3ContentDisposition: GraphQLEnumType;
4
+ export type S3ContentDisposition = 'ATTACHMENT' | 'INLINE';
5
+ export declare const S3SignedRead: GraphQLObjectType<any, any>;
6
+ export declare const S3SignedUpload: GraphQLObjectType<any, any>;
7
+ export declare const S3Acl: GraphQLEnumType;
8
+ export type S3Acl = 'PUBLIC_READ' | 'PRIVATE' | 'NONE';
9
+ export declare const S3GenerateSignedUploadInput: GraphQLInputObjectType;
10
+ export interface S3GenerateSignedUploadInput {
11
+ contentType: null | string;
12
+ extension: null | string;
13
+ expiration: null | number;
14
+ size: null | number;
15
+ prefix: null | string;
16
+ suffix: null | string;
17
+ fileName: null | string;
18
+ contentDisposition: null | S3ContentDisposition;
19
+ acl: null | S3Acl;
20
+ }
21
+ //# sourceMappingURL=S3SchemaTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3SchemaTypes.d.ts","sourceRoot":"","sources":["../../src/S3SchemaTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAA2C,iBAAiB,EAAiB,MAAM,SAAS,CAAA;AAE5I,eAAO,MAAM,QAAQ,6BAMnB,CAAA;AAEF,eAAO,MAAM,oBAAoB,iBAM/B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,QAAQ,CAAA;AAE1D,eAAO,MAAM,YAAY,6BAWvB,CAAA;AAEF,eAAO,MAAM,cAAc,6BAYzB,CAAA;AAEF,eAAO,MAAM,KAAK,iBAOhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,aAAa,GAAG,SAAS,GAAG,MAAM,CAAA;AAEtD,eAAO,MAAM,2BAA2B,wBAatC,CAAA;AACF,MAAM,WAAW,2BAA2B;IAC3C,WAAW,EAAE,IAAI,GAAG,MAAM,CAAA;IAC1B,SAAS,EAAE,IAAI,GAAG,MAAM,CAAA;IACxB,UAAU,EAAE,IAAI,GAAG,MAAM,CAAA;IACzB,IAAI,EAAE,IAAI,GAAG,MAAM,CAAA;IACnB,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,MAAM,EAAE,IAAI,GAAG,MAAM,CAAA;IACrB,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAA;IACvB,kBAAkB,EAAE,IAAI,GAAG,oBAAoB,CAAA;IAC/C,GAAG,EAAE,IAAI,GAAG,KAAK,CAAA;CACjB"}
@@ -0,0 +1,44 @@
1
+ import { S3Config } from './Config';
2
+ import { Providers } from '@contember/engine-plugins';
3
+ import { S3GenerateSignedUploadInput } from './S3SchemaTypes';
4
+ import { S3ObjectAuthorizator } from './S3ObjectAuthorizator';
5
+ type SignedReadUrl = {
6
+ url: string;
7
+ bucket: string;
8
+ objectKey: string;
9
+ headers: {
10
+ key: string;
11
+ value: string;
12
+ }[];
13
+ method: string;
14
+ };
15
+ type SignedUploadUrl = {
16
+ objectKey: string;
17
+ url: string;
18
+ bucket: string;
19
+ publicUrl: string;
20
+ headers: {
21
+ key: string;
22
+ value: string;
23
+ }[];
24
+ method: string;
25
+ };
26
+ export declare class S3Service {
27
+ readonly config: S3Config;
28
+ private readonly providers;
29
+ private readonly authorizator;
30
+ private readonly publicBaseUrl;
31
+ private readonly signer;
32
+ constructor(config: S3Config, providers: Pick<Providers, 'uuid' | 'now'>, authorizator: S3ObjectAuthorizator);
33
+ getSignedUploadUrl({ acl, contentDisposition, contentType, expiration, prefix, suffix, fileName, extension, size }: S3GenerateSignedUploadInput): SignedUploadUrl;
34
+ getSignedReadUrl({ objectKey, expiration }: {
35
+ objectKey: string;
36
+ expiration: number | null;
37
+ }): SignedReadUrl;
38
+ formatPublicUrl(key: string): string;
39
+ }
40
+ export declare class S3ServiceFactory {
41
+ create(config: S3Config, providers: Providers, authorizator: S3ObjectAuthorizator): S3Service;
42
+ }
43
+ export {};
44
+ //# sourceMappingURL=S3Service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3Service.d.ts","sourceRoot":"","sources":["../../src/S3Service.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,QAAQ,EAAE,MAAM,UAAU,CAAA;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,KAAK,aAAa,GAAG;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACzC,MAAM,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,eAAe,GAAG;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACzC,MAAM,EAAE,MAAM,CAAA;CACd,CAAA;AAED,qBAAa,SAAS;aAMJ,MAAM,EAAE,QAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAP9B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IAEtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAGhB,MAAM,EAAE,QAAQ,EACf,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,EAC1C,YAAY,EAAE,oBAAoB;IAM7C,kBAAkB,CACxB,EAAE,GAAG,EAAE,kBAAkB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,2BAA2B,GAC1H,eAAe;IAwDX,gBAAgB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,aAAa;IA+B5G,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAG3C;AAED,qBAAa,gBAAgB;IACrB,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,oBAAoB;CAGxF"}
@@ -0,0 +1,22 @@
1
+ import { S3Config } from './Config';
2
+ import { Providers } from '@contember/engine-plugins';
3
+ interface S3Request {
4
+ action: 'read' | 'upload';
5
+ key: string;
6
+ expiration: number;
7
+ headers: Record<string, string>;
8
+ }
9
+ export declare class S3Signer {
10
+ private readonly config;
11
+ private readonly providers;
12
+ private region;
13
+ constructor(config: S3Config, providers: Pick<Providers, 'now'>);
14
+ sign(request: S3Request): string;
15
+ private getQueryParams;
16
+ private getScope;
17
+ private getSignedHeaders;
18
+ private isHeaderSignable;
19
+ private getSignedHeaderNames;
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=S3Signer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"S3Signer.d.ts","sourceRoot":"","sources":["../../src/S3Signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,QAAQ,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAIrD,UAAU,SAAS;IAClB,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAA;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAWD,qBAAa,QAAQ;IAGR,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAY,OAAO,CAAC,QAAQ,CAAC,SAAS;IAFzE,OAAO,CAAC,MAAM,CAAQ;gBAEO,MAAM,EAAE,QAAQ,EAAmB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;IAI1F,IAAI,CAAC,OAAO,EAAE,SAAS;IA2B9B,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,oBAAoB;CAO5B"}
@@ -0,0 +1,13 @@
1
+ import { Plugin, SchemaContributorArgs } from '@contember/engine-plugins';
2
+ import { S3ConfigProcessor } from './S3ConfigProcessor';
3
+ import { S3SchemaContributor } from './S3SchemaContributor';
4
+ import { Project3Config } from './Config';
5
+ export * from './S3ObjectAuthorizator';
6
+ export * from './S3SchemaContributor';
7
+ export * from './S3Service';
8
+ export default class S3 implements Plugin<Project3Config> {
9
+ name: string;
10
+ getConfigProcessor(): S3ConfigProcessor;
11
+ getSchemaContributor({ providers }: SchemaContributorArgs): S3SchemaContributor;
12
+ }
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,aAAa,CAAA;AAE3B,MAAM,CAAC,OAAO,OAAO,EAAG,YAAW,MAAM,CAAC,cAAc,CAAC;IACxD,IAAI,SAAiB;IAErB,kBAAkB;IAIlB,oBAAoB,CAAC,EAAE,SAAS,EAAE,EAAE,qBAAqB;CAIzD"}