@spinajs/fs-s3 2.0.461 → 2.0.463

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 (41) hide show
  1. package/lib/cjs/cloudFrontSigner.d.ts +6 -0
  2. package/lib/cjs/cloudFrontSigner.d.ts.map +1 -0
  3. package/lib/cjs/{cloudFronUrlSigner.js → cloudFrontSigner.js} +9 -10
  4. package/lib/cjs/cloudFrontSigner.js.map +1 -0
  5. package/lib/cjs/index.d.ts +4 -3
  6. package/lib/cjs/index.d.ts.map +1 -1
  7. package/lib/cjs/index.js +4 -3
  8. package/lib/cjs/index.js.map +1 -1
  9. package/lib/cjs/interfaces.d.ts +31 -4
  10. package/lib/cjs/interfaces.d.ts.map +1 -1
  11. package/lib/cjs/interfaces.js +28 -3
  12. package/lib/cjs/interfaces.js.map +1 -1
  13. package/lib/cjs/s3BucketSigner.d.ts +6 -0
  14. package/lib/cjs/s3BucketSigner.d.ts.map +1 -0
  15. package/lib/cjs/s3BucketSigner.js +27 -0
  16. package/lib/cjs/s3BucketSigner.js.map +1 -0
  17. package/lib/mjs/cloudFrontSigner.d.ts +6 -0
  18. package/lib/mjs/cloudFrontSigner.d.ts.map +1 -0
  19. package/lib/mjs/{cloudFronUrlSigner.js → cloudFrontSigner.js} +9 -10
  20. package/lib/mjs/cloudFrontSigner.js.map +1 -0
  21. package/lib/mjs/index.d.ts +4 -3
  22. package/lib/mjs/index.d.ts.map +1 -1
  23. package/lib/mjs/index.js +4 -3
  24. package/lib/mjs/index.js.map +1 -1
  25. package/lib/mjs/interfaces.d.ts +31 -4
  26. package/lib/mjs/interfaces.d.ts.map +1 -1
  27. package/lib/mjs/interfaces.js +25 -1
  28. package/lib/mjs/interfaces.js.map +1 -1
  29. package/lib/mjs/s3BucketSigner.d.ts +6 -0
  30. package/lib/mjs/s3BucketSigner.d.ts.map +1 -0
  31. package/lib/mjs/s3BucketSigner.js +24 -0
  32. package/lib/mjs/s3BucketSigner.js.map +1 -0
  33. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  34. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  35. package/package.json +6 -5
  36. package/lib/cjs/cloudFronUrlSigner.d.ts +0 -6
  37. package/lib/cjs/cloudFronUrlSigner.d.ts.map +0 -1
  38. package/lib/cjs/cloudFronUrlSigner.js.map +0 -1
  39. package/lib/mjs/cloudFronUrlSigner.d.ts +0 -6
  40. package/lib/mjs/cloudFronUrlSigner.d.ts.map +0 -1
  41. package/lib/mjs/cloudFronUrlSigner.js.map +0 -1
@@ -0,0 +1,6 @@
1
+ import { DateTime } from "luxon";
2
+ import { CloudFrontUrlSigner } from "./interfaces.js";
3
+ export declare class CloudFrontSigner extends CloudFrontUrlSigner {
4
+ sign(path: string, until?: DateTime): Promise<string>;
5
+ }
6
+ //# sourceMappingURL=cloudFrontSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudFrontSigner.d.ts","sourceRoot":"","sources":["../../src/cloudFrontSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAItD,qBACa,gBAAiB,SAAQ,mBAAmB;IAExC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ;CAWnD"}
@@ -6,24 +6,23 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.CloudFrontUrlSigner = void 0;
10
- const luxon_1 = require("luxon");
9
+ exports.CloudFrontSigner = void 0;
11
10
  const interfaces_js_1 = require("./interfaces.js");
12
11
  const cloudfront_signer_1 = require("@aws-sdk/cloudfront-signer");
13
12
  const di_1 = require("@spinajs/di");
14
- let CloudFrontUrlSigner = class CloudFrontUrlSigner extends interfaces_js_1.CloudUrlSigner {
13
+ let CloudFrontSigner = class CloudFrontSigner extends interfaces_js_1.CloudFrontUrlSigner {
15
14
  async sign(path, until) {
16
15
  const url = `${this.options.domain}/${path}`;
17
- return await (0, cloudfront_signer_1.getSignedUrl)({
16
+ return (0, cloudfront_signer_1.getSignedUrl)({
18
17
  url,
19
18
  keyPairId: this.options.publicKeyId,
20
19
  privateKey: this.options.privateKey,
21
- dateLessThan: until ? until.toISO() : luxon_1.DateTime.now().plus({ hour: 1 }).toISO()
20
+ dateLessThan: this.getDateLessThan(until),
22
21
  });
23
22
  }
24
23
  };
25
- exports.CloudFrontUrlSigner = CloudFrontUrlSigner;
26
- exports.CloudFrontUrlSigner = CloudFrontUrlSigner = __decorate([
27
- (0, di_1.Injectable)()
28
- ], CloudFrontUrlSigner);
29
- //# sourceMappingURL=cloudFronUrlSigner.js.map
24
+ exports.CloudFrontSigner = CloudFrontSigner;
25
+ exports.CloudFrontSigner = CloudFrontSigner = __decorate([
26
+ (0, di_1.Injectable)(interfaces_js_1.CloudFrontUrlSigner)
27
+ ], CloudFrontSigner);
28
+ //# sourceMappingURL=cloudFrontSigner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudFrontSigner.js","sourceRoot":"","sources":["../../src/cloudFrontSigner.ts"],"names":[],"mappings":";;;;;;;;;AACA,mDAAsD;AACtD,kEAA0D;AAC1D,oCAAyC;AAGlC,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,mCAAmB;IAE9C,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,KAAgB;QAC5C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;QAE7C,OAAO,IAAA,gCAAY,EAAC;YAChB,GAAG;YACH,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACnC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;SAC5C,CAAC,CAAC;IACP,CAAC;CAEJ,CAAA;AAbY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAU,EAAC,mCAAmB,CAAC;GACnB,gBAAgB,CAa5B"}
@@ -2,8 +2,9 @@ import { Log } from '@spinajs/log-common';
2
2
  import { fs, IStat, IZipResult, FileInfoService, IFileInfo } from '@spinajs/fs';
3
3
  import { S3Client, S3ClientConfig } from '@aws-sdk/client-s3';
4
4
  import { Readable } from 'stream';
5
- import { CloudUrlSigner, IS3Config } from './interfaces.js';
6
- export * from './cloudFronUrlSigner.js';
5
+ import { S3UrlSigner, IS3Config } from './interfaces.js';
6
+ export * from './s3BucketSigner.js';
7
+ export * from './cloudFrontSigner.js';
7
8
  /**
8
9
  * Abstract layer for file operations.
9
10
  * Basic implementation is just wrapper for native node fs functions
@@ -23,7 +24,7 @@ export declare class fsS3 extends fs {
23
24
  */
24
25
  protected TempFs: fs;
25
26
  protected FileInfo: FileInfoService;
26
- protected Signer?: CloudUrlSigner;
27
+ protected Signer?: S3UrlSigner;
27
28
  /**
28
29
  * Name of provider. We can have multiple providers of the same type but with different options.
29
30
  * Also used in InjectService decorator for mapping
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAc,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EACL,QAAQ,EACR,cAAc,EAQf,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5D,cAAc,yBAAyB,CAAC;AAIxC;;;;;;;;GAQG;AACH,qBAEa,IAAK,SAAQ,EAAE;IA4BP,OAAO,EAAE,SAAS;IA1BrC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;IAEtB,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC;IAGvB,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC;IAEpC;;OAEG;IAEH,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;IAGrB,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEpC,SAAS,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IAElC;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;gBAEkB,OAAO,EAAE,SAAS;IAIrC;;;OAGG;YACW,kBAAkB;IA2BnB,OAAO;IAsCpB;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBrC;;;;;;OAMG;IACU,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBpD;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc;IASxD;;;;;OAKG;IACU,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc;IAgB/D;;OAEG;IACU,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc;IAcrF;;;;;;;OAOG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAYvD;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAelD,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IA8CtD;;;;;;OAMG;IACU,WAAW,CAAC,IAAI,EAAE,MAAM;IAWrC;;;;;;;OAOG;IACU,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjF;;;OAGG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM;IAgBnB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAK1C;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;IAkBxD;;OAEG;IACU,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;IAK9D;;OAEG;IACU,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAIpD;;;;;OAKG;IACU,EAAE,CAAC,KAAK,EAAE,MAAM;IAS7B;;;;OAIG;IACU,KAAK;IAML,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMnD;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAyBlC,YAAY,CAAC,IAAI,EAAE,MAAM;IAe/B,OAAO,IAAI,MAAM;IAIxB;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM;IAWjB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAItE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI7E,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAS1C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAc,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EACL,QAAQ,EACR,cAAc,EAQf,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEzD,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AAItC;;;;;;;;GAQG;AACH,qBAEa,IAAK,SAAQ,EAAE;IA4BP,OAAO,EAAE,SAAS;IA1BrC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;IAEtB,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC;IAGvB,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC;IAEpC;;OAEG;IAEH,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;IAGrB,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEpC,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE/B;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;gBAEkB,OAAO,EAAE,SAAS;IAIrC;;;OAGG;YACW,kBAAkB;IA2BnB,OAAO;IAuCpB;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBrC;;;;;;OAMG;IACU,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBpD;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc;IASxD;;;;;OAKG;IACU,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc;IAgB/D;;OAEG;IACU,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc;IAcrF;;;;;;;OAOG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAYvD;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAelD,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IA8CtD;;;;;;OAMG;IACU,WAAW,CAAC,IAAI,EAAE,MAAM;IAWrC;;;;;;;OAOG;IACU,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjF;;;OAGG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM;IAgBnB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAK1C;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;IAkBxD;;OAEG;IACU,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;IAK9D;;OAEG;IACU,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAIpD;;;;;OAKG;IACU,EAAE,CAAC,KAAK,EAAE,MAAM;IAS7B;;;;OAIG;IACU,KAAK;IAML,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMnD;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAyBlC,YAAY,CAAC,IAAI,EAAE,MAAM;IAe/B,OAAO,IAAI,MAAM;IAIxB;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM;IAWjB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAItE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI7E,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAS1C"}
package/lib/cjs/index.js CHANGED
@@ -61,7 +61,8 @@ const fs_2 = require("fs");
61
61
  const luxon_1 = require("luxon");
62
62
  const stream_1 = require("stream");
63
63
  const iconv_lite_1 = __importDefault(require("iconv-lite"));
64
- __exportStar(require("./cloudFronUrlSigner.js"), exports);
64
+ __exportStar(require("./s3BucketSigner.js"), exports);
65
+ __exportStar(require("./cloudFrontSigner.js"), exports);
65
66
  /**
66
67
  * Abstract layer for file operations.
67
68
  * Basic implementation is just wrapper for native node fs functions
@@ -119,7 +120,7 @@ let fsS3 = class fsS3 extends fs_1.fs {
119
120
  await super.resolve();
120
121
  this.Logger.info(`Initializing S3 file provider '${this.Options.name}' for bucket '${this.Options.bucket}'`);
121
122
  const credentials = typeof this.AwsConfig.credentials === 'function' ? undefined : this.AwsConfig.credentials;
122
- this.Logger.info(`S3 Configuration: ${JSON.stringify({
123
+ this.Logger.debug(`S3 Configuration: ${JSON.stringify({
123
124
  endpoint: this.AwsConfig.endpoint,
124
125
  region: this.AwsConfig.region,
125
126
  secretAccessKey: credentials?.secretAccessKey ? '****' : undefined,
@@ -138,7 +139,7 @@ let fsS3 = class fsS3 extends fs_1.fs {
138
139
  await this.ensureBucketExists();
139
140
  if (this.Options.signer) {
140
141
  this.Logger.info(`Initializing URL signer for service '${this.Options.signer.service}'`);
141
- this.Signer = await di_1.DI.resolve(this.Options.signer.service, [this.Options.signer]);
142
+ this.Signer = await di_1.DI.resolve(this.Options.signer.service, [{ ...this.Options.signer, bucket: this.Options.bucket, s3Client: this.S3 }]);
142
143
  this.Logger.trace(`URL signer initialized successfully`);
143
144
  }
144
145
  this.Logger.info(`S3 file provider '${this.Options.name}' initialized successfully`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,14 @@
1
+ import { S3Client } from "@aws-sdk/client-s3";
1
2
  import { DateTime } from "luxon";
2
- export interface ICloudUrlSignerOptions {
3
+ export interface IS3UrlSigner {
4
+ bucket: string;
5
+ s3Client: S3Client;
6
+ }
7
+ export interface ICloudfrontUrlSignerOptions {
3
8
  privateKey: string;
4
9
  publicKeyId: string;
5
10
  domain: string;
11
+ bucket: string;
6
12
  }
7
13
  export interface IS3Config {
8
14
  bucket: string;
@@ -15,9 +21,30 @@ export interface IS3Config {
15
21
  domain: string;
16
22
  };
17
23
  }
18
- export declare abstract class CloudUrlSigner {
19
- protected options: ICloudUrlSignerOptions;
20
- constructor(options: ICloudUrlSignerOptions);
24
+ export declare abstract class S3UrlSigner {
25
+ protected options: IS3UrlSigner;
26
+ constructor(options: IS3UrlSigner);
27
+ /**
28
+ * Returns the number of seconds from now until the given expiration time.
29
+ * Defaults to 900 seconds (15 minutes) when `until` is not provided.
30
+ * Ensures a minimum of 1 second.
31
+ */
32
+ protected getExpiresInSeconds(until?: DateTime): number;
33
+ /**
34
+ *
35
+ * @param path url path to access / sign
36
+ * @param until link valid until ? if null valid for 1 hour
37
+ */
38
+ abstract sign(path: string, until?: DateTime): Promise<string>;
39
+ }
40
+ export declare abstract class CloudFrontUrlSigner {
41
+ protected options: ICloudfrontUrlSignerOptions;
42
+ constructor(options: ICloudfrontUrlSignerOptions);
43
+ /**
44
+ * Returns an ISO 8601 date string for the expiration time.
45
+ * Defaults to 1 hour from now when `until` is not provided.
46
+ */
47
+ protected getDateLessThan(until?: DateTime): string;
21
48
  /**
22
49
  *
23
50
  * @param path url path to access / sign
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IAEb,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,MAAM,CAAC,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAA;CACJ;AAED,8BAAsB,cAAc;IACpB,SAAS,CAAC,OAAO,EAAE,sBAAsB;gBAA/B,OAAO,EAAE,sBAAsB;IAIrD;;;;OAIG;aACa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CACxE"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,2BAA2B;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IAEb,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,MAAM,CAAC,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAA;CACJ;AAED,8BAAsB,WAAW;IACjB,SAAS,CAAC,OAAO,EAAE,YAAY;gBAArB,OAAO,EAAE,YAAY;IAI3C;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM;IAOvD;;;;OAIG;aACa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CACxE;AAED,8BAAsB,mBAAmB;IACzB,SAAS,CAAC,OAAO,EAAE,2BAA2B;gBAApC,OAAO,EAAE,2BAA2B;IAI1D;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM;IAInD;;;;OAIG;aACa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CACxE"}
@@ -1,10 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CloudUrlSigner = void 0;
4
- class CloudUrlSigner {
3
+ exports.CloudFrontUrlSigner = exports.S3UrlSigner = void 0;
4
+ const luxon_1 = require("luxon");
5
+ class S3UrlSigner {
5
6
  constructor(options) {
6
7
  this.options = options;
7
8
  }
9
+ /**
10
+ * Returns the number of seconds from now until the given expiration time.
11
+ * Defaults to 900 seconds (15 minutes) when `until` is not provided.
12
+ * Ensures a minimum of 1 second.
13
+ */
14
+ getExpiresInSeconds(until) {
15
+ const expiresIn = until
16
+ ? Math.floor(until.diffNow("seconds").seconds)
17
+ : 900;
18
+ return Math.max(1, expiresIn);
19
+ }
20
+ }
21
+ exports.S3UrlSigner = S3UrlSigner;
22
+ class CloudFrontUrlSigner {
23
+ constructor(options) {
24
+ this.options = options;
25
+ }
26
+ /**
27
+ * Returns an ISO 8601 date string for the expiration time.
28
+ * Defaults to 1 hour from now when `until` is not provided.
29
+ */
30
+ getDateLessThan(until) {
31
+ return (until ?? luxon_1.DateTime.now().plus({ hour: 1 })).toISO();
32
+ }
8
33
  }
9
- exports.CloudUrlSigner = CloudUrlSigner;
34
+ exports.CloudFrontUrlSigner = CloudFrontUrlSigner;
10
35
  //# sourceMappingURL=interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;AAuBA,MAAsB,cAAc;IAChC,YAAsB,OAA+B;QAA/B,YAAO,GAAP,OAAO,CAAwB;IAErD,CAAC;CAQJ;AAXD,wCAWC"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;AACA,iCAAiC;AA6BjC,MAAsB,WAAW;IAC7B,YAAsB,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAE3C,CAAC;IAED;;;;OAIG;IACO,mBAAmB,CAAC,KAAgB;QAC1C,MAAM,SAAS,GAAG,KAAK;YACnB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,GAAG,CAAC;QACV,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAClC,CAAC;CAQJ;AAvBD,kCAuBC;AAED,MAAsB,mBAAmB;IACrC,YAAsB,OAAoC;QAApC,YAAO,GAAP,OAAO,CAA6B;IAE1D,CAAC;IAED;;;OAGG;IACO,eAAe,CAAC,KAAgB;QACtC,OAAO,CAAC,KAAK,IAAI,gBAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/D,CAAC;CAQJ;AAnBD,kDAmBC"}
@@ -0,0 +1,6 @@
1
+ import { DateTime } from "luxon";
2
+ import { S3UrlSigner } from "./interfaces.js";
3
+ export declare class S3BucketSigner extends S3UrlSigner {
4
+ sign(path: string, until?: DateTime): Promise<string>;
5
+ }
6
+ //# sourceMappingURL=s3BucketSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3BucketSigner.d.ts","sourceRoot":"","sources":["../../src/s3BucketSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK9C,qBACa,cAAe,SAAQ,WAAW;IAE9B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ;CASnD"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.S3BucketSigner = void 0;
10
+ const interfaces_js_1 = require("./interfaces.js");
11
+ const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
12
+ const di_1 = require("@spinajs/di");
13
+ const client_s3_1 = require("@aws-sdk/client-s3");
14
+ let S3BucketSigner = class S3BucketSigner extends interfaces_js_1.S3UrlSigner {
15
+ async sign(path, until) {
16
+ const command = new client_s3_1.GetObjectCommand({
17
+ Bucket: this.options.bucket,
18
+ Key: path,
19
+ });
20
+ return (0, s3_request_presigner_1.getSignedUrl)(this.options.s3Client, command, { expiresIn: this.getExpiresInSeconds(until) });
21
+ }
22
+ };
23
+ exports.S3BucketSigner = S3BucketSigner;
24
+ exports.S3BucketSigner = S3BucketSigner = __decorate([
25
+ (0, di_1.Injectable)(interfaces_js_1.S3UrlSigner)
26
+ ], S3BucketSigner);
27
+ //# sourceMappingURL=s3BucketSigner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3BucketSigner.js","sourceRoot":"","sources":["../../src/s3BucketSigner.ts"],"names":[],"mappings":";;;;;;;;;AACA,mDAA8C;AAC9C,wEAA6D;AAC7D,oCAAyC;AACzC,kDAAsD;AAG/C,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,2BAAW;IAEpC,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,KAAgB;QAC5C,MAAM,OAAO,GAAG,IAAI,4BAAgB,CAAC;YACjC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC3B,GAAG,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,OAAO,IAAA,mCAAY,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACxG,CAAC;CAEJ,CAAA;AAXY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,eAAU,EAAC,2BAAW,CAAC;GACX,cAAc,CAW1B"}
@@ -0,0 +1,6 @@
1
+ import { DateTime } from "luxon";
2
+ import { CloudFrontUrlSigner } from "./interfaces.js";
3
+ export declare class CloudFrontSigner extends CloudFrontUrlSigner {
4
+ sign(path: string, until?: DateTime): Promise<string>;
5
+ }
6
+ //# sourceMappingURL=cloudFrontSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudFrontSigner.d.ts","sourceRoot":"","sources":["../../src/cloudFrontSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAItD,qBACa,gBAAiB,SAAQ,mBAAmB;IAExC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ;CAWnD"}
@@ -4,23 +4,22 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { DateTime } from "luxon";
8
- import { CloudUrlSigner } from "./interfaces.js";
7
+ import { CloudFrontUrlSigner } from "./interfaces.js";
9
8
  import { getSignedUrl } from "@aws-sdk/cloudfront-signer";
10
9
  import { Injectable } from "@spinajs/di";
11
- let CloudFrontUrlSigner = class CloudFrontUrlSigner extends CloudUrlSigner {
10
+ let CloudFrontSigner = class CloudFrontSigner extends CloudFrontUrlSigner {
12
11
  async sign(path, until) {
13
12
  const url = `${this.options.domain}/${path}`;
14
- return await getSignedUrl({
13
+ return getSignedUrl({
15
14
  url,
16
15
  keyPairId: this.options.publicKeyId,
17
16
  privateKey: this.options.privateKey,
18
- dateLessThan: until ? until.toISO() : DateTime.now().plus({ hour: 1 }).toISO()
17
+ dateLessThan: this.getDateLessThan(until),
19
18
  });
20
19
  }
21
20
  };
22
- CloudFrontUrlSigner = __decorate([
23
- Injectable()
24
- ], CloudFrontUrlSigner);
25
- export { CloudFrontUrlSigner };
26
- //# sourceMappingURL=cloudFronUrlSigner.js.map
21
+ CloudFrontSigner = __decorate([
22
+ Injectable(CloudFrontUrlSigner)
23
+ ], CloudFrontSigner);
24
+ export { CloudFrontSigner };
25
+ //# sourceMappingURL=cloudFrontSigner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudFrontSigner.js","sourceRoot":"","sources":["../../src/cloudFrontSigner.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGlC,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,mBAAmB;IAE9C,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,KAAgB;QAC5C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;QAE7C,OAAO,YAAY,CAAC;YAChB,GAAG;YACH,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACnC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;YACnC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;SAC5C,CAAC,CAAC;IACP,CAAC;CAEJ,CAAA;AAbY,gBAAgB;IAD5B,UAAU,CAAC,mBAAmB,CAAC;GACnB,gBAAgB,CAa5B"}
@@ -2,8 +2,9 @@ import { Log } from '@spinajs/log-common';
2
2
  import { fs, IStat, IZipResult, FileInfoService, IFileInfo } from '@spinajs/fs';
3
3
  import { S3Client, S3ClientConfig } from '@aws-sdk/client-s3';
4
4
  import { Readable } from 'stream';
5
- import { CloudUrlSigner, IS3Config } from './interfaces.js';
6
- export * from './cloudFronUrlSigner.js';
5
+ import { S3UrlSigner, IS3Config } from './interfaces.js';
6
+ export * from './s3BucketSigner.js';
7
+ export * from './cloudFrontSigner.js';
7
8
  /**
8
9
  * Abstract layer for file operations.
9
10
  * Basic implementation is just wrapper for native node fs functions
@@ -23,7 +24,7 @@ export declare class fsS3 extends fs {
23
24
  */
24
25
  protected TempFs: fs;
25
26
  protected FileInfo: FileInfoService;
26
- protected Signer?: CloudUrlSigner;
27
+ protected Signer?: S3UrlSigner;
27
28
  /**
28
29
  * Name of provider. We can have multiple providers of the same type but with different options.
29
30
  * Also used in InjectService decorator for mapping
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAc,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EACL,QAAQ,EACR,cAAc,EAQf,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEzD,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AAItC;;;;;;;;GAQG;AACH,qBAEa,IAAK,SAAQ,EAAE;IA4BP,OAAO,EAAE,SAAS;IA1BrC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC;IAEtB,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC;IAGvB,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC;IAEpC;;OAEG;IAEH,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;IAGrB,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEpC,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE/B;;;OAGG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;gBAEkB,OAAO,EAAE,SAAS;IAIrC;;;OAGG;YACW,kBAAkB;IA2BnB,OAAO;IAuCpB;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBrC;;;;;;OAMG;IACU,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBpD;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc;IASxD;;;;;OAKG;IACU,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc;IAgB/D;;OAEG;IACU,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc;IAcrF;;;;;;;OAOG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAYvD;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAelD,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IA8CtD;;;;;;OAMG;IACU,WAAW,CAAC,IAAI,EAAE,MAAM;IAWrC;;;;;;;OAOG;IACU,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjF;;;OAGG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM;IAgBnB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAK1C;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;IAkBxD;;OAEG;IACU,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;IAK9D;;OAEG;IACU,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAIpD;;;;;OAKG;IACU,EAAE,CAAC,KAAK,EAAE,MAAM;IAS7B;;;;OAIG;IACU,KAAK;IAML,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMnD;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAyBlC,YAAY,CAAC,IAAI,EAAE,MAAM;IAe/B,OAAO,IAAI,MAAM;IAIxB;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM;IAWjB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAItE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI7E,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAS1C"}
package/lib/mjs/index.js CHANGED
@@ -19,7 +19,8 @@ import { createReadStream, existsSync } from 'fs';
19
19
  import { DateTime } from 'luxon';
20
20
  import { Readable } from 'stream';
21
21
  import iconv from 'iconv-lite';
22
- export * from './cloudFronUrlSigner.js';
22
+ export * from './s3BucketSigner.js';
23
+ export * from './cloudFrontSigner.js';
23
24
  /**
24
25
  * Abstract layer for file operations.
25
26
  * Basic implementation is just wrapper for native node fs functions
@@ -77,7 +78,7 @@ let fsS3 = class fsS3 extends fs {
77
78
  await super.resolve();
78
79
  this.Logger.info(`Initializing S3 file provider '${this.Options.name}' for bucket '${this.Options.bucket}'`);
79
80
  const credentials = typeof this.AwsConfig.credentials === 'function' ? undefined : this.AwsConfig.credentials;
80
- this.Logger.info(`S3 Configuration: ${JSON.stringify({
81
+ this.Logger.debug(`S3 Configuration: ${JSON.stringify({
81
82
  endpoint: this.AwsConfig.endpoint,
82
83
  region: this.AwsConfig.region,
83
84
  secretAccessKey: credentials?.secretAccessKey ? '****' : undefined,
@@ -96,7 +97,7 @@ let fsS3 = class fsS3 extends fs {
96
97
  await this.ensureBucketExists();
97
98
  if (this.Options.signer) {
98
99
  this.Logger.info(`Initializing URL signer for service '${this.Options.signer.service}'`);
99
- this.Signer = await DI.resolve(this.Options.signer.service, [this.Options.signer]);
100
+ this.Signer = await DI.resolve(this.Options.signer.service, [{ ...this.Options.signer, bucket: this.Options.bucket, s3Client: this.S3 }]);
100
101
  this.Logger.trace(`URL signer initialized successfully`);
101
102
  }
102
103
  this.Logger.info(`S3 file provider '${this.Options.name}' initialized successfully`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,14 @@
1
+ import { S3Client } from "@aws-sdk/client-s3";
1
2
  import { DateTime } from "luxon";
2
- export interface ICloudUrlSignerOptions {
3
+ export interface IS3UrlSigner {
4
+ bucket: string;
5
+ s3Client: S3Client;
6
+ }
7
+ export interface ICloudfrontUrlSignerOptions {
3
8
  privateKey: string;
4
9
  publicKeyId: string;
5
10
  domain: string;
11
+ bucket: string;
6
12
  }
7
13
  export interface IS3Config {
8
14
  bucket: string;
@@ -15,9 +21,30 @@ export interface IS3Config {
15
21
  domain: string;
16
22
  };
17
23
  }
18
- export declare abstract class CloudUrlSigner {
19
- protected options: ICloudUrlSignerOptions;
20
- constructor(options: ICloudUrlSignerOptions);
24
+ export declare abstract class S3UrlSigner {
25
+ protected options: IS3UrlSigner;
26
+ constructor(options: IS3UrlSigner);
27
+ /**
28
+ * Returns the number of seconds from now until the given expiration time.
29
+ * Defaults to 900 seconds (15 minutes) when `until` is not provided.
30
+ * Ensures a minimum of 1 second.
31
+ */
32
+ protected getExpiresInSeconds(until?: DateTime): number;
33
+ /**
34
+ *
35
+ * @param path url path to access / sign
36
+ * @param until link valid until ? if null valid for 1 hour
37
+ */
38
+ abstract sign(path: string, until?: DateTime): Promise<string>;
39
+ }
40
+ export declare abstract class CloudFrontUrlSigner {
41
+ protected options: ICloudfrontUrlSignerOptions;
42
+ constructor(options: ICloudfrontUrlSignerOptions);
43
+ /**
44
+ * Returns an ISO 8601 date string for the expiration time.
45
+ * Defaults to 1 hour from now when `until` is not provided.
46
+ */
47
+ protected getDateLessThan(until?: DateTime): string;
21
48
  /**
22
49
  *
23
50
  * @param path url path to access / sign
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IAEb,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,MAAM,CAAC,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAA;CACJ;AAED,8BAAsB,cAAc;IACpB,SAAS,CAAC,OAAO,EAAE,sBAAsB;gBAA/B,OAAO,EAAE,sBAAsB;IAIrD;;;;OAIG;aACa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CACxE"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,2BAA2B;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IAEb,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,MAAM,CAAC,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAA;CACJ;AAED,8BAAsB,WAAW;IACjB,SAAS,CAAC,OAAO,EAAE,YAAY;gBAArB,OAAO,EAAE,YAAY;IAI3C;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM;IAOvD;;;;OAIG;aACa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CACxE;AAED,8BAAsB,mBAAmB;IACzB,SAAS,CAAC,OAAO,EAAE,2BAA2B;gBAApC,OAAO,EAAE,2BAA2B;IAI1D;;;OAGG;IACH,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM;IAInD;;;;OAIG;aACa,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CACxE"}
@@ -1,6 +1,30 @@
1
- export class CloudUrlSigner {
1
+ import { DateTime } from "luxon";
2
+ export class S3UrlSigner {
2
3
  constructor(options) {
3
4
  this.options = options;
4
5
  }
6
+ /**
7
+ * Returns the number of seconds from now until the given expiration time.
8
+ * Defaults to 900 seconds (15 minutes) when `until` is not provided.
9
+ * Ensures a minimum of 1 second.
10
+ */
11
+ getExpiresInSeconds(until) {
12
+ const expiresIn = until
13
+ ? Math.floor(until.diffNow("seconds").seconds)
14
+ : 900;
15
+ return Math.max(1, expiresIn);
16
+ }
17
+ }
18
+ export class CloudFrontUrlSigner {
19
+ constructor(options) {
20
+ this.options = options;
21
+ }
22
+ /**
23
+ * Returns an ISO 8601 date string for the expiration time.
24
+ * Defaults to 1 hour from now when `until` is not provided.
25
+ */
26
+ getDateLessThan(until) {
27
+ return (until ?? DateTime.now().plus({ hour: 1 })).toISO();
28
+ }
5
29
  }
6
30
  //# sourceMappingURL=interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAuBA,MAAM,OAAgB,cAAc;IAChC,YAAsB,OAA+B;QAA/B,YAAO,GAAP,OAAO,CAAwB;IAErD,CAAC;CAQJ"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA6BjC,MAAM,OAAgB,WAAW;IAC7B,YAAsB,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAE3C,CAAC;IAED;;;;OAIG;IACO,mBAAmB,CAAC,KAAgB;QAC1C,MAAM,SAAS,GAAG,KAAK;YACnB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,GAAG,CAAC;QACV,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAClC,CAAC;CAQJ;AAED,MAAM,OAAgB,mBAAmB;IACrC,YAAsB,OAAoC;QAApC,YAAO,GAAP,OAAO,CAA6B;IAE1D,CAAC;IAED;;;OAGG;IACO,eAAe,CAAC,KAAgB;QACtC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/D,CAAC;CAQJ"}
@@ -0,0 +1,6 @@
1
+ import { DateTime } from "luxon";
2
+ import { S3UrlSigner } from "./interfaces.js";
3
+ export declare class S3BucketSigner extends S3UrlSigner {
4
+ sign(path: string, until?: DateTime): Promise<string>;
5
+ }
6
+ //# sourceMappingURL=s3BucketSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3BucketSigner.d.ts","sourceRoot":"","sources":["../../src/s3BucketSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAK9C,qBACa,cAAe,SAAQ,WAAW;IAE9B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ;CASnD"}