@wizardconnect/core 0.1.6 → 0.1.8

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.
@@ -100,7 +100,7 @@ export function initiateDappRelay(statusCallback, options = {}) {
100
100
  : [
101
101
  `${DEFAULT_RELAY_PROTOCOL}://${DEFAULT_RELAY_HOSTNAME}:${DEFAULT_RELAY_PORT}`,
102
102
  ];
103
- const cleanup = initiateRelay(wrappedCallback, dappPrivateKey, new Uint8Array(33), {
103
+ const cleanup = initiateRelay(wrappedCallback, dappPrivateKey, walletPublicKeyNostr ?? new Uint8Array(33), {
104
104
  explicitRelayUrls: relayUrls,
105
105
  reconnectInterval: options.reconnectInterval,
106
106
  maxReconnectAttempts: options.maxReconnectAttempts,
@@ -1 +1 @@
1
- {"version":3,"file":"dapp-relay.js","sourceRoot":"","sources":["../src/dapp-relay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dapp-relay.js","sourceRoot":"","sources":["../src/dapp-relay.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -11,3 +11,4 @@ export type { KeyExchangeCredentials, DecodedKeyExchangeURI, KeyExchangeURIOptio
11
11
  export * from "./protocols/hdwalletv1.js";
12
12
  export * from "./protocols/base.js";
13
13
  export { binToHex, hexToBin, binToBech32Padded, bech32PaddedToBin, } from "@bitauth/libauth";
14
+ export { parseExtendedJson, parseExtendedJsonValue, isExtendedJsonFormat, toUint8Array, toBigInt, } from "./serialize.js";
package/dist/index.js CHANGED
@@ -9,4 +9,5 @@ export { generateKeyExchangeCredentials, encodeKeyExchangeURI, decodeKeyExchange
9
9
  export * from "./protocols/hdwalletv1.js";
10
10
  export * from "./protocols/base.js";
11
11
  export { binToHex, hexToBin, binToBech32Padded, bech32PaddedToBin, } from "@bitauth/libauth";
12
+ export { parseExtendedJson, parseExtendedJsonValue, isExtendedJsonFormat, toUint8Array, toBigInt, } from "./serialize.js";
12
13
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sGAAsG;AACtG,0GAA0G;AAE1G,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAO3B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sGAAsG;AACtG,0GAA0G;AAE1G,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAO3B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,YAAY,EACZ,QAAQ,GACT,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,36 @@
1
+ export interface SourceOutput {
2
+ outpointTransactionHash: Uint8Array;
3
+ outpointIndex: number;
4
+ unlockingBytecode: Uint8Array;
5
+ sequenceNumber: number;
6
+ valueSatoshis: bigint;
7
+ lockingBytecode: Uint8Array;
8
+ token?: {
9
+ category: Uint8Array;
10
+ amount: bigint;
11
+ nft?: {
12
+ capability?: string;
13
+ commitment?: Uint8Array;
14
+ };
15
+ };
16
+ }
17
+ interface TxInput {
18
+ outpointTransactionHash: Uint8Array;
19
+ outpointIndex: number;
20
+ unlockingBytecode: Uint8Array;
21
+ sequenceNumber: number;
22
+ }
23
+ interface TxOutput {
24
+ valueSatoshis: bigint;
25
+ lockingBytecode: Uint8Array;
26
+ }
27
+ /**
28
+ * Convert a source output to relay-safe JSON format.
29
+ * Uint8Array fields become hex strings, BigInt becomes `<bigint: Xn>`.
30
+ */
31
+ export declare function sourceOutputToRelay(so: SourceOutput): any;
32
+ /**
33
+ * Encode a transaction to hex for relay transport.
34
+ */
35
+ export declare function transactionToHex(inputs: TxInput[], outputs: TxOutput[], version?: number, locktime?: number): string;
36
+ export {};
@@ -0,0 +1,51 @@
1
+ // Copyright (C) 2026 Whiterun LLC,
2
+ // This software is licensed under the GNU Lesser General Public License (LGPL), version 3.0 or later.
3
+ // A copy of the license can be found in the LICENSE file or at https://www.gnu.org/licenses/lgpl-3.0.html
4
+ /**
5
+ * Serialization helpers specific to the hdwalletv1 sign-transaction flow.
6
+ *
7
+ * These convert between native libauth transaction types and the relay-safe
8
+ * JSON used in SignTransactionRequest / SignTransactionResponse messages.
9
+ */
10
+ import { binToHex, encodeTransaction } from "@bitauth/libauth";
11
+ // ---------------------------------------------------------------------------
12
+ // Serialization (native types → relay JSON)
13
+ // ---------------------------------------------------------------------------
14
+ /**
15
+ * Convert a source output to relay-safe JSON format.
16
+ * Uint8Array fields become hex strings, BigInt becomes `<bigint: Xn>`.
17
+ */
18
+ export function sourceOutputToRelay(so) {
19
+ const result = {
20
+ outpointTransactionHash: binToHex(so.outpointTransactionHash),
21
+ outpointIndex: so.outpointIndex,
22
+ unlockingBytecode: binToHex(so.unlockingBytecode),
23
+ sequenceNumber: so.sequenceNumber,
24
+ valueSatoshis: `<bigint: ${so.valueSatoshis}n>`,
25
+ lockingBytecode: binToHex(so.lockingBytecode),
26
+ };
27
+ if (so.token) {
28
+ result.token = {
29
+ category: binToHex(so.token.category),
30
+ amount: `<bigint: ${so.token.amount}n>`,
31
+ ...(so.token.nft && {
32
+ nft: {
33
+ ...(so.token.nft.capability !== undefined && {
34
+ capability: so.token.nft.capability,
35
+ }),
36
+ ...(so.token.nft.commitment !== undefined && {
37
+ commitment: binToHex(so.token.nft.commitment),
38
+ }),
39
+ },
40
+ }),
41
+ };
42
+ }
43
+ return result;
44
+ }
45
+ /**
46
+ * Encode a transaction to hex for relay transport.
47
+ */
48
+ export function transactionToHex(inputs, outputs, version = 2, locktime = 0) {
49
+ return binToHex(encodeTransaction({ inputs, outputs, version, locktime }));
50
+ }
51
+ //# sourceMappingURL=hdwalletv1-serialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hdwalletv1-serialize.js","sourceRoot":"","sources":["../../src/protocols/hdwalletv1-serialize.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sGAAsG;AACtG,0GAA0G;AAE1G;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAgC/D,8EAA8E;AAC9E,4CAA4C;AAC5C,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAgB;IAClD,MAAM,MAAM,GAAQ;QAClB,uBAAuB,EAAE,QAAQ,CAAC,EAAE,CAAC,uBAAuB,CAAC;QAC7D,aAAa,EAAE,EAAE,CAAC,aAAa;QAC/B,iBAAiB,EAAE,QAAQ,CAAC,EAAE,CAAC,iBAAiB,CAAC;QACjD,cAAc,EAAE,EAAE,CAAC,cAAc;QACjC,aAAa,EAAE,YAAY,EAAE,CAAC,aAAa,IAAI;QAC/C,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC,eAAe,CAAC;KAC9C,CAAC;IACF,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,GAAG;YACb,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrC,MAAM,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI;YACvC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;gBAClB,GAAG,EAAE;oBACH,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI;wBAC3C,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU;qBACpC,CAAC;oBACF,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI;wBAC3C,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;qBAC9C,CAAC;iBACH;aACF,CAAC;SACH,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAiB,EACjB,OAAmB,EACnB,OAAO,GAAG,CAAC,EACX,QAAQ,GAAG,CAAC;IAEZ,OAAO,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Parse a full JSON string that may contain extended-format values.
3
+ * Handles both `<Uint8Array: 0x...>` and `<bigint: ...n>` formats.
4
+ */
5
+ export declare function parseExtendedJson(jsonString: string): any;
6
+ /**
7
+ * Check if a string contains extended JSON markers.
8
+ */
9
+ export declare function isExtendedJsonFormat(str: string): boolean;
10
+ /**
11
+ * Parse a single extended JSON value string to its native type.
12
+ * Returns the original string if it doesn't match any known format.
13
+ */
14
+ export declare function parseExtendedJsonValue(value: string): Uint8Array | bigint | string;
15
+ /**
16
+ * Convert a value to Uint8Array. Accepts:
17
+ * - Uint8Array (returned as-is)
18
+ * - hex string
19
+ * - extended JSON format string (`<Uint8Array: 0x...>`)
20
+ */
21
+ export declare function toUint8Array(value: string | Uint8Array): Uint8Array;
22
+ /**
23
+ * Convert a value to bigint. Accepts:
24
+ * - bigint (returned as-is)
25
+ * - number
26
+ * - numeric string
27
+ * - extended JSON format string (`<bigint: Xn>`)
28
+ */
29
+ export declare function toBigInt(value: string | number | bigint): bigint;
@@ -0,0 +1,88 @@
1
+ // Copyright (C) 2026 Whiterun LLC,
2
+ // This software is licensed under the GNU Lesser General Public License (LGPL), version 3.0 or later.
3
+ // A copy of the license can be found in the LICENSE file or at https://www.gnu.org/licenses/lgpl-3.0.html
4
+ /**
5
+ * Serialization helpers for converting between native libauth types and the
6
+ * relay-safe JSON format used by the WizardConnect protocol.
7
+ *
8
+ * The relay transmits messages as JSON, which cannot represent BigInt or
9
+ * Uint8Array natively. This module provides the canonical encoding:
10
+ *
11
+ * - Uint8Array → hex string (or `<Uint8Array: 0x...>` extended format)
12
+ * - BigInt → `<bigint: Xn>` string
13
+ *
14
+ * Both dapps and wallets should use these helpers to ensure interoperability.
15
+ */
16
+ import { hexToBin } from "@bitauth/libauth";
17
+ // ---------------------------------------------------------------------------
18
+ // Deserialization (relay JSON → native types)
19
+ // ---------------------------------------------------------------------------
20
+ const BIGINT_RE = /^<bigint: (?<bigint>[0-9]*)n>$/;
21
+ const UINT8_RE = /^<Uint8Array: 0x(?<hex>[0-9a-f]*)>$/u;
22
+ /**
23
+ * Parse a full JSON string that may contain extended-format values.
24
+ * Handles both `<Uint8Array: 0x...>` and `<bigint: ...n>` formats.
25
+ */
26
+ export function parseExtendedJson(jsonString) {
27
+ return JSON.parse(jsonString, (_key, value) => {
28
+ if (typeof value === "string") {
29
+ const bigintMatch = value.match(BIGINT_RE);
30
+ if (bigintMatch)
31
+ return BigInt(bigintMatch[1]);
32
+ const uint8Match = value.match(UINT8_RE);
33
+ if (uint8Match)
34
+ return hexToBin(uint8Match[1]);
35
+ }
36
+ return value;
37
+ });
38
+ }
39
+ /**
40
+ * Check if a string contains extended JSON markers.
41
+ */
42
+ export function isExtendedJsonFormat(str) {
43
+ return UINT8_RE.test(str) || BIGINT_RE.test(str);
44
+ }
45
+ /**
46
+ * Parse a single extended JSON value string to its native type.
47
+ * Returns the original string if it doesn't match any known format.
48
+ */
49
+ export function parseExtendedJsonValue(value) {
50
+ const bigintMatch = value.match(BIGINT_RE);
51
+ if (bigintMatch)
52
+ return BigInt(bigintMatch[1]);
53
+ const uint8Match = value.match(UINT8_RE);
54
+ if (uint8Match)
55
+ return hexToBin(uint8Match[1]);
56
+ return value;
57
+ }
58
+ /**
59
+ * Convert a value to Uint8Array. Accepts:
60
+ * - Uint8Array (returned as-is)
61
+ * - hex string
62
+ * - extended JSON format string (`<Uint8Array: 0x...>`)
63
+ */
64
+ export function toUint8Array(value) {
65
+ if (value instanceof Uint8Array)
66
+ return value;
67
+ if (isExtendedJsonFormat(value))
68
+ return parseExtendedJsonValue(value);
69
+ return hexToBin(value);
70
+ }
71
+ /**
72
+ * Convert a value to bigint. Accepts:
73
+ * - bigint (returned as-is)
74
+ * - number
75
+ * - numeric string
76
+ * - extended JSON format string (`<bigint: Xn>`)
77
+ */
78
+ export function toBigInt(value) {
79
+ if (typeof value === "bigint")
80
+ return value;
81
+ if (typeof value === "string") {
82
+ if (isExtendedJsonFormat(value))
83
+ return parseExtendedJsonValue(value);
84
+ return BigInt(value);
85
+ }
86
+ return BigInt(value);
87
+ }
88
+ //# sourceMappingURL=serialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,sGAAsG;AACtG,0GAA0G;AAE1G;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E,MAAM,SAAS,GAAG,gCAAgC,CAAC;AACnD,MAAM,QAAQ,GAAG,sCAAsC,CAAC;AAExD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,WAAW;gBAAE,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,UAAU;gBAAE,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAa;IAEb,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,WAAW;QAAE,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,UAAU;QAAE,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAA0B;IACrD,IAAI,KAAK,YAAY,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9C,IAAI,oBAAoB,CAAC,KAAK,CAAC;QAC7B,OAAO,sBAAsB,CAAC,KAAK,CAAe,CAAC;IACrD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,KAA+B;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,oBAAoB,CAAC,KAAK,CAAC;YAC7B,OAAO,sBAAsB,CAAC,KAAK,CAAW,CAAC;QACjD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wizardconnect/core",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "type": "module",
5
5
  "description": "Transport and protocol primitives for WizardConnect",
6
6
  "repository": {
@@ -8,6 +8,16 @@
8
8
  "url": "https://gitlab.com/riftenlabs/lib/wizardconnect",
9
9
  "directory": "packages/core"
10
10
  },
11
+ "exports": {
12
+ ".": {
13
+ "types": "./dist/index.d.ts",
14
+ "default": "./dist/index.js"
15
+ },
16
+ "./hdwalletv1-serialize": {
17
+ "types": "./dist/protocols/hdwalletv1-serialize.d.ts",
18
+ "default": "./dist/protocols/hdwalletv1-serialize.js"
19
+ }
20
+ },
11
21
  "main": "dist/index.js",
12
22
  "types": "dist/index.d.ts",
13
23
  "files": [