@contember/engine-s3-plugin 1.4.0-rc.7 → 2.0.0-alpha.10

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 (108) hide show
  1. package/dist/development/index.cjs +30 -0
  2. package/dist/development/index.cjs.map +1 -0
  3. package/dist/development/index.js +31 -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 +97 -0
  18. package/dist/development/src/S3SchemaContributor.cjs.map +1 -0
  19. package/dist/development/src/S3SchemaContributor.js +97 -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 +30 -0
  34. package/dist/production/index.cjs.map +1 -0
  35. package/dist/production/index.js +31 -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 +97 -0
  50. package/dist/production/src/S3SchemaContributor.cjs.map +1 -0
  51. package/dist/production/src/S3SchemaContributor.js +97 -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/tsconfig.tsbuildinfo +1 -1
  66. package/dist/{src → types}/Config.d.ts.map +1 -1
  67. package/dist/types/tsconfig.tsbuildinfo +1 -0
  68. package/package.json +24 -12
  69. package/src/tsconfig.json +1 -1
  70. package/tests/cases/signRequest.test.ts +1 -1
  71. package/vitest.config.ts +3 -0
  72. package/dist/src/Config.js +0 -75
  73. package/dist/src/Config.js.map +0 -1
  74. package/dist/src/S3ConfigProcessor.js +0 -64
  75. package/dist/src/S3ConfigProcessor.js.map +0 -1
  76. package/dist/src/S3ObjectAuthorizator.js +0 -48
  77. package/dist/src/S3ObjectAuthorizator.js.map +0 -1
  78. package/dist/src/S3SchemaContributor.js +0 -122
  79. package/dist/src/S3SchemaContributor.js.map +0 -1
  80. package/dist/src/S3SchemaTypes.js +0 -65
  81. package/dist/src/S3SchemaTypes.js.map +0 -1
  82. package/dist/src/S3Service.js +0 -101
  83. package/dist/src/S3Service.js.map +0 -1
  84. package/dist/src/S3Signer.js +0 -92
  85. package/dist/src/S3Signer.js.map +0 -1
  86. package/dist/src/index.js +0 -39
  87. package/dist/src/index.js.map +0 -1
  88. package/dist/src/tsconfig.tsbuildinfo +0 -1
  89. package/dist/tests/cases/authorizator.test.js +0 -21
  90. package/dist/tests/cases/authorizator.test.js.map +0 -1
  91. package/dist/tests/cases/signRequest.test.js +0 -44
  92. package/dist/tests/cases/signRequest.test.js.map +0 -1
  93. package/vite.config.js +0 -3
  94. /package/dist/{src → types}/Config.d.ts +0 -0
  95. /package/dist/{src → types}/S3ConfigProcessor.d.ts +0 -0
  96. /package/dist/{src → types}/S3ConfigProcessor.d.ts.map +0 -0
  97. /package/dist/{src → types}/S3ObjectAuthorizator.d.ts +0 -0
  98. /package/dist/{src → types}/S3ObjectAuthorizator.d.ts.map +0 -0
  99. /package/dist/{src → types}/S3SchemaContributor.d.ts +0 -0
  100. /package/dist/{src → types}/S3SchemaContributor.d.ts.map +0 -0
  101. /package/dist/{src → types}/S3SchemaTypes.d.ts +0 -0
  102. /package/dist/{src → types}/S3SchemaTypes.d.ts.map +0 -0
  103. /package/dist/{src → types}/S3Service.d.ts +0 -0
  104. /package/dist/{src → types}/S3Service.d.ts.map +0 -0
  105. /package/dist/{src → types}/S3Signer.d.ts +0 -0
  106. /package/dist/{src → types}/S3Signer.d.ts.map +0 -0
  107. /package/dist/{src → types}/index.d.ts +0 -0
  108. /package/dist/{src → types}/index.d.ts.map +0 -0
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const src_1 = require("../../src");
5
- (0, vitest_1.test)('required read pattern', () => {
6
- const authorizator = new src_1.S3ObjectAuthorizator([], [{ pattern: 'foo/**' }]);
7
- vitest_1.assert.doesNotThrow(() => authorizator.verifyReadAccess({ key: 'foo/lorem.jpg' }));
8
- vitest_1.assert.throw(() => authorizator.verifyReadAccess({ key: 'lorem.jpg' }), 'Read access forbidden for object key lorem.jpg');
9
- });
10
- (0, vitest_1.test)('required upload pattern', () => {
11
- const authorizator = new src_1.S3ObjectAuthorizator([{ pattern: 'foo/**' }], []);
12
- vitest_1.assert.doesNotThrow(() => authorizator.verifyUploadAccess({ key: 'foo/lorem.jpg', size: null }));
13
- vitest_1.assert.throw(() => authorizator.verifyUploadAccess({ key: 'lorem.jpg', size: null }), 'Upload access forbidden for object key lorem.jpg');
14
- });
15
- (0, vitest_1.test)('max upload size', () => {
16
- const authorizator = new src_1.S3ObjectAuthorizator([{ pattern: '**', maxSize: 1024 }], []);
17
- vitest_1.assert.doesNotThrow(() => authorizator.verifyUploadAccess({ key: 'lorem.jpg', size: 1000 }));
18
- vitest_1.assert.throw(() => authorizator.verifyUploadAccess({ key: 'lorem.jpg', size: null }), 'File size must be provided');
19
- vitest_1.assert.throw(() => authorizator.verifyUploadAccess({ key: 'lorem.jpg', size: 2048 }), 'Uploaded file is too large');
20
- });
21
- //# sourceMappingURL=authorizator.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"authorizator.test.js","sourceRoot":"","sources":["../../../tests/cases/authorizator.test.ts"],"names":[],"mappings":";;AAAA,mCAAqC;AACrC,mCAAgD;AAEhD,IAAA,aAAI,EAAC,uBAAuB,EAAE,GAAG,EAAE;IAClC,MAAM,YAAY,GAAG,IAAI,0BAAoB,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;IAC1E,eAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAA;IAClF,eAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,gDAAgD,CAAC,CAAA;AAC1H,CAAC,CAAC,CAAA;AAEF,IAAA,aAAI,EAAC,yBAAyB,EAAE,GAAG,EAAE;IACpC,MAAM,YAAY,GAAG,IAAI,0BAAoB,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1E,eAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAChG,eAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,kDAAkD,CAAC,CAAA;AAC1I,CAAC,CAAC,CAAA;AAGF,IAAA,aAAI,EAAC,iBAAiB,EAAE,GAAG,EAAE;IAC5B,MAAM,YAAY,GAAG,IAAI,0BAAoB,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IACrF,eAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC5F,eAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,4BAA4B,CAAC,CAAA;IACnH,eAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,4BAA4B,CAAC,CAAA;AACpH,CAAC,CAAC,CAAA"}
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
- const src_1 = require("../../src");
5
- const mocked = new Date('2021-07-02 17:22');
6
- const constantUuid = '9fce3907-ff2b-45bb-b4ce-eff5527dd315';
7
- const createS3Service = (bucket, prefix = '') => new src_1.S3Service({
8
- bucket,
9
- region: 'eu-central-1',
10
- credentials: {
11
- key: 'test',
12
- secret: 'abcd',
13
- },
14
- prefix,
15
- }, {
16
- uuid: () => constantUuid,
17
- now: () => mocked,
18
- }, new src_1.S3ObjectAuthorizator([{ pattern: '**' }], [{ pattern: '**' }]));
19
- (0, vitest_1.test)('sign s3 request', () => {
20
- const service = createS3Service('test');
21
- const signed = service.getSignedReadUrl({ objectKey: 'foo.jpg', expiration: null });
22
- (0, vitest_1.expect)(signed.url).toMatchInlineSnapshot('"https://test.s3.eu-central-1.amazonaws.com/foo.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210702%2Feu-central-1%2Fs3%2Faws4_request&X-Amz-Date=20210702T172200Z&X-Amz-Expires=3600&X-Amz-Signature=00e912fe0383066802fc6c0f93ffb223320ca143992385fe69070bbb87c758dc&X-Amz-SignedHeaders=host"');
23
- });
24
- (0, vitest_1.test)('sign s3 request - prefix', () => {
25
- const service = createS3Service('test', 'lorem');
26
- const signed = service.getSignedReadUrl({ objectKey: 'lorem/foo.jpg', expiration: null });
27
- (0, vitest_1.expect)(signed.url).toMatchInlineSnapshot('"https://test.s3.eu-central-1.amazonaws.com/lorem/foo.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210702%2Feu-central-1%2Fs3%2Faws4_request&X-Amz-Date=20210702T172200Z&X-Amz-Expires=3600&X-Amz-Signature=f6c69dc306422c2b3242c9d9d42147336817720ffae249af8bd91cc7062e9f6d&X-Amz-SignedHeaders=host"');
28
- });
29
- (0, vitest_1.test)('sign upload', () => {
30
- const service = createS3Service('test');
31
- const signed = service.getSignedUploadUrl({ contentType: 'image/jpeg', acl: 'PUBLIC_READ', expiration: 1800, contentDisposition: null, extension: null, fileName: null, prefix: null, suffix: null, size: null });
32
- (0, vitest_1.expect)(signed.url).toMatchInlineSnapshot('"https://test.s3.eu-central-1.amazonaws.com/9fce3907-ff2b-45bb-b4ce-eff5527dd315.jpeg?Cache-Control=immutable&Content-Type=image%2Fjpeg&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210702%2Feu-central-1%2Fs3%2Faws4_request&X-Amz-Date=20210702T172200Z&X-Amz-Expires=1800&X-Amz-Signature=fcd00b967054c19a2ee64b59e31d61e032ea086dcf2f0d8c36a883971c469c99&X-Amz-SignedHeaders=cache-control%3Bhost%3Bx-amz-acl&x-amz-acl=public-read"');
33
- });
34
- (0, vitest_1.test)('sign upload #2', () => {
35
- const service = createS3Service('test');
36
- const signed = service.getSignedUploadUrl({ contentType: 'image/jpeg', acl: 'PUBLIC_READ', expiration: 1800, contentDisposition: 'INLINE', extension: 'jpeg', fileName: 'foo-bar.jpeg', prefix: 'foo', suffix: 'bar', size: null });
37
- (0, vitest_1.expect)(signed.url).toMatchInlineSnapshot('"https://test.s3.eu-central-1.amazonaws.com/foo/9fce3907-ff2b-45bb-b4ce-eff5527dd315bar.jpeg?Cache-Control=immutable&Content-Type=image%2Fjpeg&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210702%2Feu-central-1%2Fs3%2Faws4_request&X-Amz-Date=20210702T172200Z&X-Amz-Expires=1800&X-Amz-Signature=979a93bca65a98ce6b2bf97d2bf2afe7d5f2fa805f7d596187675416c86a3bd5&X-Amz-SignedHeaders=cache-control%3Bcontent-disposition%3Bhost%3Bx-amz-acl&x-amz-acl=public-read"');
38
- });
39
- (0, vitest_1.test)('bucket with dot', () => {
40
- const service = createS3Service('test.foo');
41
- const signed = service.getSignedReadUrl({ objectKey: 'foo.jpg', expiration: null });
42
- (0, vitest_1.expect)(signed.url).toMatchInlineSnapshot('"https://s3.eu-central-1.amazonaws.com/test.foo/foo.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=test%2F20210702%2Feu-central-1%2Fs3%2Faws4_request&X-Amz-Date=20210702T172200Z&X-Amz-Expires=3600&X-Amz-Signature=811a809196e60413e0e54e51d3dd91ab73ad1482b61e5371864d25d43ba642ff&X-Amz-SignedHeaders=host"');
43
- });
44
- //# sourceMappingURL=signRequest.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signRequest.test.js","sourceRoot":"","sources":["../../../tests/cases/signRequest.test.ts"],"names":[],"mappings":"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"}
package/vite.config.js DELETED
@@ -1,3 +0,0 @@
1
- import { createViteConfig } from '../../scripts/vite/createViteConfig'
2
-
3
- export default createViteConfig()
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes