rac-delta 1.0.3 → 1.0.5

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.
@@ -6,8 +6,8 @@ export declare class SSHStorageAdapter extends HashStorageAdapter {
6
6
  private readonly config;
7
7
  private sftp;
8
8
  private client;
9
- constructor(config: SSHStorageConfig);
10
9
  private connecting;
10
+ constructor(config: SSHStorageConfig);
11
11
  private connect;
12
12
  private resolveChunkPath;
13
13
  private resolveIndexPath;
@@ -1 +1 @@
1
- {"version":3,"file":"ssh-storage-adapter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/adapters/ssh-storage-adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI5C,qBAAa,iBAAkB,SAAQ,kBAAkB;IAI3C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,MAAM,CAAuB;gBAER,MAAM,EAAE,gBAAgB;IAIrD,OAAO,CAAC,UAAU,CAAqC;YAEzC,OAAO;IA0CrB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,gBAAgB;IAKlB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAwBhD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBrD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAexC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAe/B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAuBpD,cAAc,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAkC/C,OAAO,CAAC,UAAU;IAaZ,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAehB,mBAAmB;IAgBjC,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,cAAc;CAKvB"}
1
+ {"version":3,"file":"ssh-storage-adapter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/adapters/ssh-storage-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAK5C,qBAAa,iBAAkB,SAAQ,kBAAkB;IAM3C,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;IAE3B,OAAO,CAAC,UAAU,CAA6B;gBAElB,MAAM,EAAE,gBAAgB;YAIvC,OAAO;IA4CrB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,gBAAgB;IAKlB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAwBhD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBrD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAexC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAe/B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAuBpD,cAAc,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAkC/C,OAAO,CAAC,UAAU;IAaZ,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAehB,mBAAmB;IAgBjC,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,cAAc;CAKvB"}
@@ -1,19 +1,52 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.SSHStorageAdapter = void 0;
4
- const ssh2_1 = require("ssh2");
5
37
  const stream_1 = require("stream");
6
38
  const path_1 = require("path");
7
39
  const adapters_1 = require("../../core/adapters");
40
+ // TODO: Replace anys with ssh2 types and see if peerDependencies break
8
41
  class SSHStorageAdapter extends adapters_1.HashStorageAdapter {
9
42
  config;
10
43
  sftp = null;
11
44
  client = null;
45
+ connecting = null;
12
46
  constructor(config) {
13
47
  super();
14
48
  this.config = config;
15
49
  }
16
- connecting = null;
17
50
  async connect() {
18
51
  if (this.sftp) {
19
52
  return this.sftp;
@@ -21,8 +54,9 @@ class SSHStorageAdapter extends adapters_1.HashStorageAdapter {
21
54
  if (this.connecting) {
22
55
  return this.connecting;
23
56
  }
57
+ const { Client } = await Promise.resolve().then(() => __importStar(require('ssh2')));
24
58
  this.connecting = new Promise((resolve, reject) => {
25
- const client = new ssh2_1.Client();
59
+ const client = new Client();
26
60
  client
27
61
  .on('ready', () => {
28
62
  client.sftp((err, sftp) => {
@@ -38,8 +38,9 @@ export declare class RacDeltaClient<C extends StorageConfig = StorageConfig> {
38
38
  readonly validation: ValidationService;
39
39
  readonly reconstruction: ReconstructionService;
40
40
  readonly pipelines: PipelineBundleFor<AdapterFromConfig<C>>;
41
- constructor(config: RacDeltaConfig & {
41
+ private constructor();
42
+ static create<C extends StorageConfig>(config: RacDeltaConfig & {
42
43
  storage: C;
43
- });
44
+ }): Promise<RacDeltaClient<C>>;
44
45
  }
45
46
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/infrastructure/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,iBAAiB,EAAmB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAyB,MAAM,qCAAqC,CAAC;AAG/F;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa;IACjE,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,CAAC,CAAA;KAAE,CAAC;IACjD,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEhD,MAAM,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,CAAC,CAAA;KAAE;CAapD"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/infrastructure/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,iBAAiB,EAAmB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAyB,MAAM,qCAAqC,CAAC;AAG/F;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa;IACjE,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,CAAC,CAAA;KAAE,CAAC;IACjD,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5D,OAAO;WAgBM,MAAM,CAAC,CAAC,SAAS,aAAa,EACzC,MAAM,EAAE,cAAc,GAAG;QAAE,OAAO,EAAE,CAAC,CAAA;KAAE,GACtC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CAS9B"}
@@ -38,15 +38,19 @@ class RacDeltaClient {
38
38
  validation;
39
39
  reconstruction;
40
40
  pipelines;
41
- constructor(config) {
41
+ constructor(config, storage, services) {
42
42
  this.config = config;
43
- this.storage = storage_adpater_factory_1.StorageAdapterFactory.create(config.storage);
44
- const services = service_factory_1.ServiceFactory.create();
43
+ this.storage = storage;
45
44
  this.delta = services.delta;
46
45
  this.hasher = services.hasher;
47
46
  this.validation = services.validation;
48
47
  this.reconstruction = services.reconstruction;
49
48
  this.pipelines = pipeline_factory_1.PipelineFactory.create(this.storage, services, config);
50
49
  }
50
+ static async create(config) {
51
+ const storage = (await storage_adpater_factory_1.StorageAdapterFactory.create(config.storage));
52
+ const services = service_factory_1.ServiceFactory.create();
53
+ return new RacDeltaClient(config, storage, services);
54
+ }
51
55
  }
52
56
  exports.RacDeltaClient = RacDeltaClient;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "rac-delta",
3
3
  "description": "Storage agnostic delta patching implementation of rac-delta protocol for NodeJs. With streaming support and file reconstruction.",
4
- "version": "1.0.3",
4
+ "version": "1.0.5",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "repository": {
@@ -53,12 +53,11 @@
53
53
  }
54
54
  },
55
55
  "devDependencies": {
56
+ "@types/ssh2": "^1.15.5",
56
57
  "@aws-sdk/client-s3": "^3.962.0",
57
58
  "@azure/identity": "^4.13.0",
58
59
  "@azure/storage-blob": "^12.29.1",
59
60
  "@google-cloud/storage": "^7.18.0",
60
- "ssh2": "^1.17.0",
61
- "@types/ssh2": "^1.15.5",
62
61
  "@vitest/coverage-v8": "^3.2.4",
63
62
  "eslint": "^9.37.0",
64
63
  "prettier": "^3.6.2",