@shapeshiftoss/hdwallet-gridplus 1.62.9 → 1.62.10-alpha.1

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.
package/dist/adapter.d.ts CHANGED
@@ -1,19 +1,14 @@
1
1
  import * as core from "@shapeshiftoss/hdwallet-core";
2
2
  import { GridPlusHDWallet } from "./gridplus";
3
- import { GridPlusTransport } from "./transport";
4
3
  export declare class GridPlusAdapter {
5
4
  keyring: core.Keyring;
6
- private activeTransports;
5
+ private client?;
7
6
  constructor(keyring: core.Keyring);
8
7
  static useKeyring(keyring: core.Keyring): GridPlusAdapter;
9
- connectDevice(deviceId: string, password?: string, existingSessionId?: string): Promise<{
10
- transport: GridPlusTransport;
11
- isPaired: boolean;
8
+ connectDevice(deviceId: string, password?: string): Promise<{
9
+ wallet?: GridPlusHDWallet;
12
10
  sessionId: string;
13
11
  }>;
14
- pairConnectedDevice(deviceId: string, pairingCode: string): Promise<GridPlusHDWallet>;
15
- pairDevice(deviceId: string, password?: string, pairingCode?: string, existingSessionId?: string): Promise<GridPlusHDWallet>;
16
- initialize(deviceId: string, password?: string): Promise<number>;
17
- get(deviceId: string): GridPlusHDWallet;
12
+ pairDevice(pairingCode: string): Promise<GridPlusHDWallet>;
18
13
  }
19
14
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,qBAAa,eAAe;IAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;IACtB,OAAO,CAAC,gBAAgB,CAA6C;gBAEzD,OAAO,EAAE,IAAI,CAAC,OAAO;WAInB,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO;IAIjC,aAAa,CACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EACjB,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC;QAAE,SAAS,EAAE,iBAAiB,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAiBrE,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAyBrF,UAAU,CACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,EACpB,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,gBAAgB,CAAC;IAgCf,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKtE,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB;CAG/C"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAIrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK9C,qBAAa,eAAe;IAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;IAEtB,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,OAAO,EAAE,IAAI,CAAC,OAAO;WAInB,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO;IAIjC,aAAa,CACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,SAAK,GACZ,OAAO,CAAC;QAAE,MAAM,CAAC,EAAE,gBAAgB,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAqB/C,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAWxE"}
package/dist/adapter.js CHANGED
@@ -1,27 +1,4 @@
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 (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
3
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
4
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -33,97 +10,50 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
33
10
  };
34
11
  Object.defineProperty(exports, "__esModule", { value: true });
35
12
  exports.GridPlusAdapter = void 0;
36
- const core = __importStar(require("@shapeshiftoss/hdwallet-core"));
13
+ const crypto_1 = require("crypto");
14
+ const gridplus_sdk_1 = require("gridplus-sdk");
37
15
  const gridplus_1 = require("./gridplus");
38
- const transport_1 = require("./transport");
16
+ const name = "ShapeShift";
17
+ const baseUrl = "https://signing.gridpl.us";
39
18
  class GridPlusAdapter {
40
19
  constructor(keyring) {
41
- this.activeTransports = new Map();
42
20
  this.keyring = keyring;
43
21
  }
44
22
  static useKeyring(keyring) {
45
23
  return new GridPlusAdapter(keyring);
46
24
  }
47
- connectDevice(deviceId, password, existingSessionId) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const transport = (() => {
50
- const existing = this.activeTransports.get(deviceId);
51
- if (existing)
52
- return existing;
53
- const newTransport = new transport_1.GridPlusTransport({
54
- deviceId,
55
- password: password || "shapeshift-default",
56
- });
57
- this.activeTransports.set(deviceId, newTransport);
58
- return newTransport;
59
- })();
60
- const { isPaired, sessionId } = yield transport.setup(deviceId, password, existingSessionId);
61
- return { transport, isPaired, sessionId };
62
- });
63
- }
64
- pairConnectedDevice(deviceId, pairingCode) {
65
- return __awaiter(this, void 0, void 0, function* () {
66
- const transport = this.activeTransports.get(deviceId);
67
- if (!transport) {
68
- throw new Error("Device not connected. Call connectDevice first.");
69
- }
70
- try {
71
- const pairingSuccess = yield transport.pair(pairingCode);
72
- if (!pairingSuccess) {
73
- throw new Error("Pairing failed. Please check the 8-character code displayed on your Lattice device.");
74
- }
75
- const wallet = new gridplus_1.GridPlusHDWallet(transport);
76
- wallet.setActiveWalletId(deviceId);
77
- yield wallet.initialize();
78
- this.keyring.add(wallet, deviceId);
79
- this.activeTransports.delete(deviceId);
80
- return wallet;
25
+ connectDevice(deviceId_1) {
26
+ return __awaiter(this, arguments, void 0, function* (deviceId, password = "") {
27
+ const privKey = (0, crypto_1.createHash)("sha256")
28
+ .update(deviceId + password + name)
29
+ .digest();
30
+ const sessionId = privKey.toString("hex");
31
+ if (!this.client) {
32
+ this.client = new gridplus_sdk_1.Client({ name, baseUrl, privKey, deviceId });
81
33
  }
82
- catch (error) {
83
- throw new Error(`GridPlus pairing failed: ${error instanceof Error ? error.message : "Unknown error"}`);
34
+ else {
35
+ // Client already exists, reset active wallets to clear stale state before reconnecting
36
+ // This is critical when switching between SafeCards - ensures fresh wallet state from device
37
+ this.client.resetActiveWallets();
84
38
  }
39
+ const isPaired = yield this.client.connect(deviceId);
40
+ if (isPaired)
41
+ return { wallet: new gridplus_1.GridPlusHDWallet(this.client), sessionId };
42
+ return { sessionId: privKey.toString("hex") };
85
43
  });
86
44
  }
87
- pairDevice(deviceId, password, pairingCode, existingSessionId) {
45
+ pairDevice(pairingCode) {
88
46
  return __awaiter(this, void 0, void 0, function* () {
89
- const existingWallet = this.keyring.get(deviceId);
90
- if (existingWallet) {
91
- // Reset Client activeWallets state and fetch fresh UIDs from currently inserted SafeCard
92
- yield existingWallet.transport.setup(deviceId, password, existingSessionId);
93
- // Ensure the wallet has the correct active walletId set
94
- existingWallet.setActiveWalletId(deviceId);
95
- // Reinitialize to clear cached addresses when reconnecting (e.g., SafeCard swap)
96
- yield existingWallet.initialize();
97
- return existingWallet;
98
- }
99
- const { isPaired } = yield this.connectDevice(deviceId, password, existingSessionId);
100
- if (!isPaired) {
101
- if (pairingCode) {
102
- return yield this.pairConnectedDevice(deviceId, pairingCode);
103
- }
104
- else {
105
- throw new Error("PAIRING_REQUIRED");
106
- }
107
- }
108
- // Already paired - create wallet directly
109
- const transport = this.activeTransports.get(deviceId);
110
- const wallet = new gridplus_1.GridPlusHDWallet(transport);
111
- wallet.setActiveWalletId(deviceId);
112
- yield wallet.initialize();
113
- this.keyring.add(wallet, deviceId);
114
- this.activeTransports.delete(deviceId);
47
+ if (!this.client)
48
+ throw new Error("No client connected. Call connectDevice first.");
49
+ const success = yield this.client.pair(pairingCode);
50
+ if (!success)
51
+ throw new Error("Failed to pair.");
52
+ const wallet = new gridplus_1.GridPlusHDWallet(this.client);
53
+ this.keyring.add(wallet, this.client.getDeviceId());
115
54
  return wallet;
116
55
  });
117
56
  }
118
- initialize(deviceId, password) {
119
- return __awaiter(this, void 0, void 0, function* () {
120
- yield this.pairDevice(deviceId, password);
121
- return Object.keys(this.keyring.wallets).length;
122
- });
123
- }
124
- get(deviceId) {
125
- return core.mustBeDefined(this.keyring.get(deviceId));
126
- }
127
57
  }
128
58
  exports.GridPlusAdapter = GridPlusAdapter;
129
59
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,mCAAoC;AACpC,+CAAsC;AAEtC,yCAA8C;AAE9C,MAAM,IAAI,GAAG,YAAY,CAAC;AAC1B,MAAM,OAAO,GAAG,2BAA2B,CAAC;AAE5C,MAAa,eAAe;IAK1B,YAAY,OAAqB;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,OAAqB;QAC5C,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAEY,aAAa;6DACxB,QAAgB,EAChB,QAAQ,GAAG,EAAE;YAEb,MAAM,OAAO,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC;iBACjC,MAAM,CAAC,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAC;iBAClC,MAAM,EAAE,CAAC;YAEZ,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAE1C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,uFAAuF;gBACvF,6FAA6F;gBAC7F,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACnC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,QAAQ;gBAAE,OAAO,EAAE,MAAM,EAAE,IAAI,2BAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;YAE9E,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,CAAC;KAAA;IAEY,UAAU,CAAC,WAAmB;;YACzC,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAEpF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,IAAI,2BAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAEpD,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;CACF;AAhDD,0CAgDC"}
package/dist/bitcoin.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import * as core from "@shapeshiftoss/hdwallet-core";
2
2
  import { Client } from "gridplus-sdk";
3
- export declare const btcGetAccountPaths: (msg: core.BTCGetAccountPaths) => Array<core.BTCAccountPath>;
3
+ export declare function deriveAddressFromPubkey(pubkey: Buffer, coin: string, scriptType?: core.BTCScriptType): string | undefined;
4
4
  export declare function btcGetAddress(client: Client, msg: core.BTCGetAddress): Promise<string | null>;
5
5
  export declare function btcSignTx(client: Client, msg: core.BTCSignTx): Promise<core.BTCSignedTx | null>;
6
- export declare const btcNextAccountPath: (msg: core.BTCAccountPath) => core.BTCAccountPath | undefined;
7
6
  //# sourceMappingURL=bitcoin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../src/bitcoin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAKrD,OAAO,EAAE,MAAM,EAAa,MAAM,cAAc,CAAC;AAkDjD,eAAO,MAAM,kBAAkB,QAAS,IAAI,CAAC,kBAAkB,KAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAwB1F,CAAC;AAEF,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4BnG;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,CA2kBrG;AAED,eAAO,MAAM,kBAAkB,QAAS,IAAI,CAAC,cAAc,KAAG,IAAI,CAAC,cAAc,GAAG,SAQnF,CAAC"}
1
+ {"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../src/bitcoin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,MAAM,EAAa,MAAM,cAAc,CAAC;AAIjD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,IAAI,CAAC,aAAoD,GACpE,MAAM,GAAG,SAAS,CAGpB;AAaD,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAOnG;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,CA+JrG"}