@xian-tech/provider 0.1.11 → 0.2.0

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/README.md CHANGED
@@ -24,7 +24,8 @@ Core helpers:
24
24
  - `InjectedXianWallet`: dapp-facing convenience wrapper for connect, chain,
25
25
  wallet info, asset watching, transaction preparation, sign, and send flows
26
26
  - `ProviderBackedXianSigner`: adapter that lets provider-backed wallets fit
27
- signer-based APIs that only need `getAddress()` and `signMessage()`
27
+ transaction-signing APIs by delegating canonical payloads through
28
+ `xian_signTransaction`
28
29
 
29
30
  Current provider request methods include:
30
31
 
@@ -40,11 +41,25 @@ Current provider request methods include:
40
41
  - `xian_sendTransaction`
41
42
  - `xian_sendCall`
42
43
 
44
+ `xian_signMessage` signs the version-1 Xian external-message envelope bound to
45
+ the active chain and account. It returns the usual 128-character hex signature,
46
+ but it never exposes raw provider signing. Verify it with
47
+ `verifyXianMessage(...)` from `@xian-tech/client`.
48
+
43
49
  It does not own:
44
50
 
45
51
  - framework bindings
46
52
  - production wallet custody flows
47
53
 
54
+ The reference provider coordinates automatic nonces for concurrent
55
+ `xian_sendCall` requests per provider instance, active chain, and signer. Each
56
+ same-scope build/sign/broadcast lifecycle is serialized so CheckTx sees the
57
+ contiguous nonce order; different chains remain independent.
58
+ Prebuilt `xian_sendTransaction` payloads bypass that manager. Ambiguous
59
+ broadcast failures block further automatic calls until the network nonce
60
+ advances; a wallet owner can explicitly call `resetNonceReservation()` only
61
+ after independently reconciling the transaction outcome.
62
+
48
63
  ```mermaid
49
64
  flowchart LR
50
65
  Wallet["Wallet implementation"] --> Register["registerInjectedXianProvider"]
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,0BAA0B,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,aAAa,CAAC,EAAE,0BAA0B,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,mCAAmC;IAClD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,+BAA+B;IAC9C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC;CACzD;AAED,MAAM,WAAW,kCACf,SAAQ,+BAA+B;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA4DD,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mCAAmC,GAC3C,0BAA0B,CA0C5B;AAED,wBAAgB,yBAAyB,CACvC,MAAM,CAAC,EAAE,mBAAmB,GAC3B,0BAA0B,EAAE,CAI9B;AAED,wBAAgB,uBAAuB,CACrC,OAAO,CAAC,EAAE,+BAA+B,GACxC,0BAA0B,GAAG,SAAS,CAiBxC;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,CAAC,EAAE,kCAAkC,GAC3C,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,CAuCjD;AAED,qBAAa,wBAAyB,YAAW,UAAU;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,kBAAkB;IAEjD,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAQnC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG9C;AAED,qBAAa,kBAAkB;IAE3B,QAAQ,CAAC,QAAQ,EAAE,YAAY;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB;gBAD7B,QAAQ,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,kBAAkB,YAAA;IAGxC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,0BAA0B,GAAG,kBAAkB;IAIzE,MAAM,CAAC,WAAW,CAChB,OAAO,CAAC,EAAE,+BAA+B,GACxC,kBAAkB,GAAG,SAAS;WAKpB,eAAe,CAC1B,OAAO,CAAC,EAAE,kCAAkC,GAC3C,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAK1C,OAAO,CAAC,SAAS,GAAG,OAAO,EAAE,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3E,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI;IAI/D,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI;IAI3E,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI5B,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAI9B,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIhC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvB,aAAa,IAAI,OAAO,CAAC,cAAc,CAAC;IAa9C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO9C,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC;IAO5D,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAO7C,kBAAkB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAOnF,eAAe,CAAC,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAO5E,eAAe,CACb,EAAE,EAAE,uBAAuB,EAC3B,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,qBAAqB,CAAC;IAejC,QAAQ,CACN,MAAM,EAAE,qBAAqB,EAC7B,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,qBAAqB,CAAC;IAejC,QAAQ,IAAI,wBAAwB;CAGrC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,IAAI,CAAC,EAAE,qBAAqB,CAAC;QAC7B,aAAa,CAAC,EAAE,0BAA0B,EAAE,CAAC;KAC9C;CACF"}
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
package/dist/discovery.js CHANGED
@@ -137,8 +137,21 @@ export class ProviderBackedXianSigner {
137
137
  }
138
138
  return account;
139
139
  }
140
- signMessage(message) {
141
- return this.wallet.signMessage(message);
140
+ async signMessage(message) {
141
+ let payload;
142
+ try {
143
+ payload = JSON.parse(message);
144
+ }
145
+ catch {
146
+ throw new ProviderUnauthorizedError("provider-backed signers accept only canonical transaction payloads");
147
+ }
148
+ if (typeof payload !== "object" || payload == null || Array.isArray(payload)) {
149
+ throw new ProviderUnauthorizedError("provider-backed signer payload must be a transaction object");
150
+ }
151
+ const signed = await this.wallet.signTransaction({
152
+ payload: payload
153
+ });
154
+ return signed.metadata.signature;
142
155
  }
143
156
  }
144
157
  export class InjectedXianWallet {
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -15,4 +15,14 @@ export declare class ProviderUnauthorizedError extends XianProviderError {
15
15
  export declare class ProviderUnsupportedMethodError extends XianProviderError {
16
16
  constructor(method: string);
17
17
  }
18
+ export declare class ProviderNonceReservationError extends XianProviderError {
19
+ readonly sender: string;
20
+ readonly chainId: string;
21
+ readonly nonce: number | bigint;
22
+ constructor(options: {
23
+ sender: string;
24
+ chainId: string;
25
+ nonce: number | bigint;
26
+ });
27
+ }
18
28
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;gBAEZ,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;CAM1D;AAED,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,OAAO,SAA6B;CAGjD;AAED,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,OAAO,SAA+C;CAGnE;AAED,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,OAAO,SAA+B;CAGnD;AAED,qBAAa,8BAA+B,SAAQ,iBAAiB;gBACvD,MAAM,EAAE,MAAM;CAG3B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;gBAEZ,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;CAM1D;AAED,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,OAAO,SAA6B;CAGjD;AAED,qBAAa,0BAA2B,SAAQ,iBAAiB;gBACnD,OAAO,SAA+C;CAGnE;AAED,qBAAa,yBAA0B,SAAQ,iBAAiB;gBAClD,OAAO,SAA+B;CAGnD;AAED,qBAAa,8BAA+B,SAAQ,iBAAiB;gBACvD,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,6BAA8B,SAAQ,iBAAiB;IAClE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;gBAEpB,OAAO,EAAE;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;KACxB;CAYF"}
package/dist/errors.js CHANGED
@@ -28,4 +28,17 @@ export class ProviderUnsupportedMethodError extends XianProviderError {
28
28
  super(4200, `unsupported provider method: ${method}`);
29
29
  }
30
30
  }
31
+ export class ProviderNonceReservationError extends XianProviderError {
32
+ sender;
33
+ chainId;
34
+ nonce;
35
+ constructor(options) {
36
+ super(-32000, `automatic nonce ${String(options.nonce)} for ${options.sender} on ` +
37
+ `${options.chainId} has an ambiguous broadcast outcome; wait for the ` +
38
+ "network nonce to advance or explicitly reset the nonce reservation", options);
39
+ this.sender = options.sender;
40
+ this.chainId = options.chainId;
41
+ this.nonce = options.nonce;
42
+ }
43
+ }
31
44
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACjC,IAAI,CAAS;IACb,IAAI,CAAW;IAExB,YAAY,IAAY,EAAE,OAAe,EAAE,IAAc;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,iBAAiB;IAC9D,YAAY,OAAO,GAAG,0BAA0B;QAC9C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,0BAA2B,SAAQ,iBAAiB;IAC/D,YAAY,OAAO,GAAG,4CAA4C;QAChE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,iBAAiB;IAC9D,YAAY,OAAO,GAAG,4BAA4B;QAChD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,iBAAiB;IACnE,YAAY,MAAc;QACxB,KAAK,CAAC,IAAI,EAAE,gCAAgC,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACjC,IAAI,CAAS;IACb,IAAI,CAAW;IAExB,YAAY,IAAY,EAAE,OAAe,EAAE,IAAc;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,iBAAiB;IAC9D,YAAY,OAAO,GAAG,0BAA0B;QAC9C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,0BAA2B,SAAQ,iBAAiB;IAC/D,YAAY,OAAO,GAAG,4CAA4C;QAChE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,iBAAiB;IAC9D,YAAY,OAAO,GAAG,4BAA4B;QAChD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,iBAAiB;IACnE,YAAY,MAAc;QACxB,KAAK,CAAC,IAAI,EAAE,gCAAgC,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;CACF;AAED,MAAM,OAAO,6BAA8B,SAAQ,iBAAiB;IACzD,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,KAAK,CAAkB;IAEhC,YAAY,OAIX;QACC,KAAK,CACH,CAAC,KAAK,EACN,mBAAmB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,OAAO,CAAC,MAAM,MAAM;YAClE,GAAG,OAAO,CAAC,OAAO,oDAAoD;YACtE,oEAAoE,EACtE,OAAO,CACR,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC7B,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { InMemoryXianProvider, type InMemoryXianProviderOptions, type BroadcastMode, type TransactionSubmission, type XianNumber, type XianProvider, type XianProviderClient, type XianProviderRequest, type XianSignedTransaction, type XianSigner, type XianTransactionIntent, type XianTxPayload, type XianWalletCapabilities, type XianWalletDescriptor, type XianWalletInfo, type XianWatchedAsset, type XianWatchAssetRequest, type XianUnsignedTransaction } from "./provider.js";
2
2
  export { InjectedXianWallet, ProviderBackedXianSigner, XIAN_INITIALIZED_EVENT, getInjectedXianProvider, listInjectedXianProviders, registerInjectedXianProvider, waitForInjectedXianProvider, type FindInjectedXianProviderOptions, type InjectedXianProviderRecord, type RegisterInjectedXianProviderOptions, type WaitForInjectedXianProviderOptions, type XianInjectionTarget, type XianProviderNamespace, type XianWalletMetadata } from "./discovery.js";
3
- export { ProviderChainMismatchError, ProviderDisconnectedError, ProviderUnauthorizedError, ProviderUnsupportedMethodError, XianProviderError } from "./errors.js";
3
+ export { ProviderChainMismatchError, ProviderDisconnectedError, ProviderNonceReservationError, ProviderUnauthorizedError, ProviderUnsupportedMethodError, XianProviderError } from "./errors.js";
4
4
  export { WalletConnectXianProvider, type WalletConnectRequestClient, type WalletConnectXianProviderOptions } from "./walletconnect.js";
5
- export { XIAN_WALLETCONNECT_EVENTS, XIAN_WALLETCONNECT_METHODS, XIAN_WALLETCONNECT_NAMESPACE, createXianDappPolicyForRequest, evaluateXianDappPolicy, findMatchingXianDappPolicy, parseXianDappAction, xianAccountFromCaip10, xianAccountToCaip10, xianChainIdFromCaip2, xianChainIdToCaip2, type XianAutoApproveMethod, type XianDappAction, type XianDappPolicy, type XianDappPolicyMatch, type XianDappRequestContext, type XianWalletConnectEvent, type XianWalletConnectMethod } from "./permissions.js";
5
+ export { XIAN_WALLETCONNECT_EVENTS, XIAN_WALLETCONNECT_METHODS, XIAN_WALLETCONNECT_NAMESPACE, createXianDappPolicyForRequest, evaluateXianDappPolicy, findMatchingXianDappPolicy, parseXianDappAction, xianAccountFromCaip10, xianAccountToCaip10, xianChainIdFromCaip2, xianChainIdToCaip2, xianDappPoliciesHaveSameScope, type XianAutoApproveMethod, type XianDappAction, type XianDappPolicy, type XianDappPolicyArgumentScope, type XianDappPolicyMatch, type XianDappRequestContext, type XianWalletConnectEvent, type XianWalletConnectMethod } from "./permissions.js";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,kCAAkC,EACvC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,gCAAgC,EACtC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,8BAA8B,EAC9B,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,2BAA2B,EAChC,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,kCAAkC,EACvC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EACzB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,gCAAgC,EACtC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,8BAA8B,EAC9B,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,6BAA6B,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export { InMemoryXianProvider } from "./provider.js";
2
2
  export { InjectedXianWallet, ProviderBackedXianSigner, XIAN_INITIALIZED_EVENT, getInjectedXianProvider, listInjectedXianProviders, registerInjectedXianProvider, waitForInjectedXianProvider } from "./discovery.js";
3
- export { ProviderChainMismatchError, ProviderDisconnectedError, ProviderUnauthorizedError, ProviderUnsupportedMethodError, XianProviderError } from "./errors.js";
3
+ export { ProviderChainMismatchError, ProviderDisconnectedError, ProviderNonceReservationError, ProviderUnauthorizedError, ProviderUnsupportedMethodError, XianProviderError } from "./errors.js";
4
4
  export { WalletConnectXianProvider } from "./walletconnect.js";
5
- export { XIAN_WALLETCONNECT_EVENTS, XIAN_WALLETCONNECT_METHODS, XIAN_WALLETCONNECT_NAMESPACE, createXianDappPolicyForRequest, evaluateXianDappPolicy, findMatchingXianDappPolicy, parseXianDappAction, xianAccountFromCaip10, xianAccountToCaip10, xianChainIdFromCaip2, xianChainIdToCaip2 } from "./permissions.js";
5
+ export { XIAN_WALLETCONNECT_EVENTS, XIAN_WALLETCONNECT_METHODS, XIAN_WALLETCONNECT_NAMESPACE, createXianDappPolicyForRequest, evaluateXianDappPolicy, findMatchingXianDappPolicy, parseXianDappAction, xianAccountFromCaip10, xianAccountToCaip10, xianChainIdFromCaip2, xianChainIdToCaip2, xianDappPoliciesHaveSameScope } from "./permissions.js";
6
6
  //# 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,OAAO,EACL,oBAAoB,EAkBrB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAQ5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EAG1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,8BAA8B,EAC9B,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAQnB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EAkBrB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAQ5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EACzB,8BAA8B,EAC9B,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EAG1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,8BAA8B,EAC9B,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,6BAA6B,EAS9B,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { XianNumber } from "@xian-tech/types";
2
+ export interface NonceScope {
3
+ chainId: string;
4
+ sender: string;
5
+ }
6
+ export interface NonceReservation {
7
+ nonce: XianNumber;
8
+ scope: NonceScope;
9
+ }
10
+ /** Per-provider automatic nonce coordination for intent-based sends. */
11
+ export declare class NonceReservationManager {
12
+ private readonly states;
13
+ private readonly sendTails;
14
+ runExclusive<T>(scope: NonceScope, operation: () => Promise<T>): Promise<T>;
15
+ reserve(scope: NonceScope, readNetworkNonce: () => Promise<XianNumber>): Promise<NonceReservation>;
16
+ assertCanBroadcast(reservation: NonceReservation): Promise<void>;
17
+ release(reservation: NonceReservation): Promise<void>;
18
+ confirm(reservation: NonceReservation): Promise<void>;
19
+ reject(reservation: NonceReservation): Promise<void>;
20
+ quarantine(reservation: NonceReservation): Promise<void>;
21
+ reset(scope: NonceScope): Promise<void>;
22
+ private state;
23
+ private withState;
24
+ }
25
+ //# sourceMappingURL=nonce-reservation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nonce-reservation.d.ts","sourceRoot":"","sources":["../src/nonce-reservation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,UAAU,CAAC;CACnB;AAyCD,wEAAwE;AACxE,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAExD,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAmB3E,OAAO,CACX,KAAK,EAAE,UAAU,EACjB,gBAAgB,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,GAC1C,OAAO,CAAC,gBAAgB,CAAC;IA+BtB,kBAAkB,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAWhE,OAAO,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBrD,OAAO,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD,MAAM,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpD,UAAU,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYxD,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,KAAK;YAcC,SAAS;CAiBxB"}
@@ -0,0 +1,167 @@
1
+ import { ProviderNonceReservationError } from "./errors.js";
2
+ function scopeKey(scope) {
3
+ return `${scope.chainId.length}:${scope.chainId}:${scope.sender}`;
4
+ }
5
+ function toBigInt(value) {
6
+ if (typeof value === "bigint") {
7
+ if (value < 0n) {
8
+ throw new TypeError("network nonce must be a non-negative integer");
9
+ }
10
+ return value;
11
+ }
12
+ if (!Number.isSafeInteger(value) || value < 0) {
13
+ throw new TypeError("network nonce must be a non-negative safe integer");
14
+ }
15
+ return BigInt(value);
16
+ }
17
+ function toXianNumber(value) {
18
+ return value <= BigInt(Number.MAX_SAFE_INTEGER) ? Number(value) : value;
19
+ }
20
+ function lowest(values) {
21
+ let result;
22
+ for (const value of values) {
23
+ if (result === undefined || value < result) {
24
+ result = value;
25
+ }
26
+ }
27
+ return result;
28
+ }
29
+ /** Per-provider automatic nonce coordination for intent-based sends. */
30
+ export class NonceReservationManager {
31
+ states = new Map();
32
+ sendTails = new Map();
33
+ async runExclusive(scope, operation) {
34
+ const key = scopeKey(scope);
35
+ const previous = this.sendTails.get(key) ?? Promise.resolve();
36
+ let unlock;
37
+ const current = new Promise((resolve) => {
38
+ unlock = resolve;
39
+ });
40
+ this.sendTails.set(key, current);
41
+ await previous;
42
+ try {
43
+ return await operation();
44
+ }
45
+ finally {
46
+ unlock();
47
+ if (this.sendTails.get(key) === current) {
48
+ this.sendTails.delete(key);
49
+ }
50
+ }
51
+ }
52
+ async reserve(scope, readNetworkNonce) {
53
+ return this.withState(scope, async (state) => {
54
+ if (state.quarantined !== undefined) {
55
+ const networkNonce = toBigInt(await readNetworkNonce());
56
+ if (networkNonce <= state.quarantined) {
57
+ throw new ProviderNonceReservationError({
58
+ ...scope,
59
+ nonce: toXianNumber(state.quarantined)
60
+ });
61
+ }
62
+ state.quarantined = undefined;
63
+ state.next = networkNonce;
64
+ state.reusable.clear();
65
+ }
66
+ else if (state.next === undefined) {
67
+ state.next = toBigInt(await readNetworkNonce());
68
+ state.reusable.clear();
69
+ }
70
+ let nonce = lowest(state.reusable) ?? state.next;
71
+ state.reusable.delete(nonce);
72
+ while (state.reserved.has(nonce)) {
73
+ nonce += 1n;
74
+ }
75
+ if (nonce >= state.next) {
76
+ state.next = nonce + 1n;
77
+ }
78
+ state.reserved.add(nonce);
79
+ return { nonce: toXianNumber(nonce), scope };
80
+ });
81
+ }
82
+ async assertCanBroadcast(reservation) {
83
+ await this.withState(reservation.scope, (state) => {
84
+ if (state.quarantined !== undefined) {
85
+ throw new ProviderNonceReservationError({
86
+ ...reservation.scope,
87
+ nonce: toXianNumber(state.quarantined)
88
+ });
89
+ }
90
+ });
91
+ }
92
+ async release(reservation) {
93
+ await this.withState(reservation.scope, (state) => {
94
+ const nonce = toBigInt(reservation.nonce);
95
+ if (!state.reserved.delete(nonce) || state.quarantined !== undefined) {
96
+ return;
97
+ }
98
+ state.reusable.add(nonce);
99
+ while (state.next !== undefined && state.next > 0n) {
100
+ const previous = state.next - 1n;
101
+ if (state.reserved.has(previous) || !state.reusable.delete(previous)) {
102
+ break;
103
+ }
104
+ state.next = previous;
105
+ }
106
+ });
107
+ }
108
+ async confirm(reservation) {
109
+ await this.withState(reservation.scope, (state) => {
110
+ state.reserved.delete(toBigInt(reservation.nonce));
111
+ });
112
+ }
113
+ async reject(reservation) {
114
+ await this.withState(reservation.scope, (state) => {
115
+ state.reserved.delete(toBigInt(reservation.nonce));
116
+ state.next = undefined;
117
+ state.reusable.clear();
118
+ });
119
+ }
120
+ async quarantine(reservation) {
121
+ await this.withState(reservation.scope, (state) => {
122
+ const nonce = toBigInt(reservation.nonce);
123
+ state.reserved.delete(nonce);
124
+ if (state.quarantined === undefined || nonce > state.quarantined) {
125
+ state.quarantined = nonce;
126
+ }
127
+ state.next = undefined;
128
+ state.reusable.clear();
129
+ });
130
+ }
131
+ async reset(scope) {
132
+ await this.withState(scope, (state) => {
133
+ state.next = undefined;
134
+ state.quarantined = undefined;
135
+ state.reusable.clear();
136
+ });
137
+ }
138
+ state(scope) {
139
+ const key = scopeKey(scope);
140
+ let state = this.states.get(key);
141
+ if (!state) {
142
+ state = {
143
+ tail: Promise.resolve(),
144
+ reserved: new Set(),
145
+ reusable: new Set()
146
+ };
147
+ this.states.set(key, state);
148
+ }
149
+ return state;
150
+ }
151
+ async withState(scope, operation) {
152
+ const state = this.state(scope);
153
+ const previous = state.tail;
154
+ let unlock;
155
+ state.tail = new Promise((resolve) => {
156
+ unlock = resolve;
157
+ });
158
+ await previous;
159
+ try {
160
+ return await operation(state);
161
+ }
162
+ finally {
163
+ unlock();
164
+ }
165
+ }
166
+ }
167
+ //# sourceMappingURL=nonce-reservation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nonce-reservation.js","sourceRoot":"","sources":["../src/nonce-reservation.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export declare const XIAN_WALLETCONNECT_EVENTS: readonly ["accountsChanged", "ch
5
5
  export type XianWalletConnectMethod = (typeof XIAN_WALLETCONNECT_METHODS)[number];
6
6
  export type XianWalletConnectEvent = (typeof XIAN_WALLETCONNECT_EVENTS)[number];
7
7
  export type XianAutoApproveMethod = "xian_signTransaction" | "xian_sendTransaction" | "xian_sendCall";
8
+ export type XianDappPolicyArgumentScope = "exact" | "any";
8
9
  export interface XianDappRequestContext {
9
10
  origin: string;
10
11
  account: string;
@@ -29,6 +30,7 @@ export interface XianDappPolicy {
29
30
  contract?: string;
30
31
  function?: string;
31
32
  maxChi?: XianNumber | string;
33
+ argumentScope?: XianDappPolicyArgumentScope;
32
34
  kwargs?: Record<string, unknown>;
33
35
  label?: string;
34
36
  createdAt: number;
@@ -43,6 +45,7 @@ export interface XianDappPolicyMatch {
43
45
  action?: XianDappAction;
44
46
  reason?: string;
45
47
  }
48
+ export declare function xianDappPoliciesHaveSameScope(left: XianDappPolicy, right: XianDappPolicy): boolean;
46
49
  export declare function xianChainIdToCaip2(chainId: string): string;
47
50
  export declare function xianAccountToCaip10(chainId: string, account: string): string;
48
51
  export declare function xianChainIdFromCaip2(value: string): string | null;
@@ -62,5 +65,6 @@ export declare function createXianDappPolicyForRequest(input: {
62
65
  now: number;
63
66
  expiresAt?: number;
64
67
  label?: string;
68
+ argumentScope?: XianDappPolicyArgumentScope;
65
69
  }): XianDappPolicy | null;
66
70
  //# sourceMappingURL=permissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
@@ -79,14 +79,34 @@ function deepEqual(left, right) {
79
79
  }
80
80
  return false;
81
81
  }
82
- function kwargsMatch(policyKwargs, actionKwargs) {
83
- if (!policyKwargs || Object.keys(policyKwargs).length === 0) {
82
+ function normalizeKwargs(kwargs) {
83
+ return kwargs ?? {};
84
+ }
85
+ function policyArgumentScope(policy) {
86
+ return policy.argumentScope === "any" ? "any" : "exact";
87
+ }
88
+ function methodsMatch(left, right) {
89
+ return (left.length === right.length &&
90
+ left.every((method) => right.includes(method)));
91
+ }
92
+ function policyArgumentsMatch(policy, actionKwargs) {
93
+ if (policyArgumentScope(policy) === "any") {
84
94
  return true;
85
95
  }
86
- if (!actionKwargs) {
87
- return false;
88
- }
89
- return Object.entries(policyKwargs).every(([key, value]) => deepEqual(actionKwargs[key], value));
96
+ return deepEqual(normalizeKwargs(policy.kwargs), normalizeKwargs(actionKwargs));
97
+ }
98
+ export function xianDappPoliciesHaveSameScope(left, right) {
99
+ const leftArgumentScope = policyArgumentScope(left);
100
+ const rightArgumentScope = policyArgumentScope(right);
101
+ return (left.origin === right.origin &&
102
+ left.account === right.account &&
103
+ left.chainId === right.chainId &&
104
+ left.contract === right.contract &&
105
+ left.function === right.function &&
106
+ methodsMatch(left.methods, right.methods) &&
107
+ leftArgumentScope === rightArgumentScope &&
108
+ (leftArgumentScope === "any" ||
109
+ deepEqual(normalizeKwargs(left.kwargs), normalizeKwargs(right.kwargs))));
90
110
  }
91
111
  export function xianChainIdToCaip2(chainId) {
92
112
  if (!chainId.trim()) {
@@ -193,7 +213,7 @@ export function evaluateXianDappPolicy(policy, context, request) {
193
213
  return { matched: false, action, reason: "chi limit exceeded" };
194
214
  }
195
215
  }
196
- if (!kwargsMatch(policy.kwargs, action.kwargs)) {
216
+ if (!policyArgumentsMatch(policy, action.kwargs)) {
197
217
  return { matched: false, action, reason: "arguments mismatch" };
198
218
  }
199
219
  return { matched: true, policy, action };
@@ -223,6 +243,7 @@ export function createXianDappPolicyForRequest(input) {
223
243
  if (!contract || !fn) {
224
244
  return null;
225
245
  }
246
+ const argumentScope = input.argumentScope === "any" ? "any" : "exact";
226
247
  return {
227
248
  id: input.id,
228
249
  origin: input.origin,
@@ -232,6 +253,8 @@ export function createXianDappPolicyForRequest(input) {
232
253
  contract,
233
254
  function: fn,
234
255
  maxChi: action.chi,
256
+ argumentScope,
257
+ kwargs: argumentScope === "exact" ? normalizeKwargs(action.kwargs) : undefined,
235
258
  label: input.label ?? `${contract}.${fn}`,
236
259
  createdAt: input.now,
237
260
  updatedAt: input.now,
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAEnD,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,sBAAsB;IACtB,oBAAoB;IACpB,eAAe;IACf,cAAc;IACd,yBAAyB;IACzB,kBAAkB;IAClB,sBAAsB;IACtB,sBAAsB;IACtB,eAAe;IACf,iBAAiB;CACT,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,iBAAiB;IACjB,cAAc;IACd,SAAS;IACT,YAAY;CACJ,CAAC;AA0DX,SAAS,gBAAgB,CACvB,MAAuD;IAEvD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;QACvB,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3E,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA4B;IACxD,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,OAAO,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,OAA4B;IACrD,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACpC,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,IAAa,EAAE,KAAc;IAC9C,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,OAAO,KAAK,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAC7D,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,CACL,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;YACpC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAC1E,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CACtB,MAA2C;IAE3C,OAAO,MAAM,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAsB;IAEtB,OAAO,MAAM,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;AAC1D,CAAC;AAED,SAAS,YAAY,CACnB,IAA6B,EAC7B,KAA8B;IAE9B,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAC5B,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAsB,EACtB,YAAiD;IAEjD,IAAI,mBAAmB,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,IAAoB,EACpB,KAAqB;IAErB,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACtD,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAC5B,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC9B,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;QAC9B,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;QAChC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;QAChC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QACzC,iBAAiB,KAAK,kBAAkB;QACxC,CAAC,iBAAiB,KAAK,KAAK;YAC1B,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,qBAAqB,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,4BAA4B,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,OAAe;IAClE,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,SAAS,CAAC,qBAAqB,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,iBAAiB,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,MAAM,MAAM,GAAG,GAAG,4BAA4B,GAAG,CAAC;IAClD,OAAO,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;QAC7D,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5B,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAa;IAIjD,MAAM,MAAM,GAAG,GAAG,4BAA4B,GAAG,CAAC;IAClD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACpD,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,KAAK,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC;QAC7C,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAA4B;IAE5B,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YACnE,OAAO;gBACL,MAAM,EAAE,eAAe;gBACvB,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;gBACvC,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACzC,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACzC,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,GAAG,CAAoC;gBAC1E,MAAM;aACP,CAAC;QACJ,CAAC;QACD,KAAK,sBAAsB,CAAC;QAC5B,KAAK,sBAAsB,CAAC,CAAC,CAAC;YAC5B,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YACrE,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC;gBACtC,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACzC,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAC1C,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAC1C,GAAG,EAAE,OAAO,CAAC,YAA+C;gBAC5D,MAAM;aACP,CAAC;QACJ,CAAC;QACD;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAsB,EACtB,OAA+B,EAC/B,OAA4B;IAE5B,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAAC;IACtE,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAChF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC/D,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QACvC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QACvC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;QACxD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;IACtE,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;QACtD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC/D,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,GAAG,SAAS,EAAE,CAAC;YACpE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;QAClE,CAAC;IACH,CAAC;IACD,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IAClE,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,QAA0B,EAC1B,OAA+B,EAC/B,OAA4B;IAE5B,IAAI,UAAsC,CAAC;IAC3C,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,UAAU,GAAG,KAAK,CAAC,MAAM,IAAI,UAAU,CAAC;IAC1C,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,UAAU,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,SAAS;QAC/D,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,oBAAoB;KACrE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,KAU9C;IACC,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;IACtE,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QACxB,QAAQ;QACR,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,MAAM,CAAC,GAAG;QAClB,aAAa;QACb,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;QAC9E,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,GAAG,QAAQ,IAAI,EAAE,EAAE;QACzC,SAAS,EAAE,KAAK,CAAC,GAAG;QACpB,SAAS,EAAE,KAAK,CAAC,GAAG;QACpB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC;AACJ,CAAC"}
@@ -73,6 +73,7 @@ export interface XianProviderClient {
73
73
  function: string;
74
74
  kwargs: Record<string, unknown>;
75
75
  chainId?: string;
76
+ nonce?: XianNumber;
76
77
  chi?: XianNumber;
77
78
  chiSupplied?: XianNumber;
78
79
  }): Promise<XianUnsignedTransaction>;
@@ -95,6 +96,7 @@ export interface InMemoryXianProviderOptions {
95
96
  export declare class InMemoryXianProvider implements XianProvider {
96
97
  private readonly options;
97
98
  private readonly events;
99
+ private readonly nonceReservations;
98
100
  private readonly watchedAssets;
99
101
  private connected;
100
102
  private chainId?;
@@ -112,8 +114,14 @@ export declare class InMemoryXianProvider implements XianProvider {
112
114
  private disconnect;
113
115
  private requireConnected;
114
116
  private prepareTransaction;
117
+ private requireTransactionChain;
115
118
  private normalizeWatchAssetRequest;
116
119
  listWatchedAssets(): XianWatchedAsset[];
120
+ /**
121
+ * Clear local automatic-nonce state after the wallet owner has independently
122
+ * reconciled an ambiguous broadcast outcome with the network.
123
+ */
124
+ resetNonceReservation(chainId?: string): Promise<void>;
117
125
  request(args: XianProviderRequest): Promise<unknown>;
118
126
  }
119
127
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,UAAU,EAEV,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,aAAa,EACb,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,KAAK,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,UAAU,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,YAAY,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC5C,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;CACzD;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,OAAO,CAAC,MAAM,EAAE;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,UAAU,CAAC;QACjB,WAAW,CAAC,EAAE,UAAU,CAAC;KAC1B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxF,WAAW,CACT,EAAE,EAAE,qBAAqB,EACzB,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,YAAY,CAAC,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACpE;AA4DD,qBAAa,oBAAqB,YAAW,YAAY;IAO3C,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuC;IACrE,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,MAAM,CAAU;gBAEK,OAAO,EAAE,2BAA2B;IAQjE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAI3C,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;YAIzC,UAAU;IAOxB,OAAO,CAAC,eAAe;YAMT,aAAa;YAWb,YAAY;IAU1B,OAAO,CAAC,eAAe;YAcT,aAAa;YAab,OAAO;IAgBrB,OAAO,CAAC,UAAU;YASJ,gBAAgB;YAOhB,kBAAkB;IAuBhC,OAAO,CAAC,0BAA0B;IA+ClC,iBAAiB,IAAI,gBAAgB,EAAE;IAIjC,OAAO,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CA4G3D"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
package/dist/provider.js CHANGED
@@ -1,4 +1,6 @@
1
1
  import { ProviderChainMismatchError, ProviderDisconnectedError, ProviderUnauthorizedError, ProviderUnsupportedMethodError } from "./errors.js";
2
+ import { NonceReservationManager } from "./nonce-reservation.js";
3
+ import { createXianMessageSigningPayload } from "@xian-tech/types";
2
4
  class EventEmitter {
3
5
  listeners = new Map();
4
6
  on(event, listener) {
@@ -50,6 +52,7 @@ function parseOptionalXianNumber(value, fieldName) {
50
52
  export class InMemoryXianProvider {
51
53
  options;
52
54
  events = new EventEmitter();
55
+ nonceReservations = new NonceReservationManager();
53
56
  watchedAssets = new Map();
54
57
  connected = false;
55
58
  chainId;
@@ -149,24 +152,35 @@ export class InMemoryXianProvider {
149
152
  }
150
153
  this.requireUnlocked();
151
154
  }
152
- async prepareTransaction(intent) {
155
+ async prepareTransaction(intent, options) {
153
156
  if (!this.options.client) {
154
157
  throw new TypeError("provider client is required for xian_prepareTransaction");
155
158
  }
156
- const activeChainId = await this.ensureChainId();
159
+ const activeChainId = options?.chainId ?? (await this.ensureChainId());
157
160
  if (intent.chainId && intent.chainId !== activeChainId) {
158
161
  throw new ProviderChainMismatchError();
159
162
  }
160
163
  return this.options.client.buildTx({
161
- sender: await this.getAddress(),
164
+ sender: options?.sender ?? (await this.getAddress()),
162
165
  contract: intent.contract,
163
166
  function: intent.function,
164
167
  kwargs: intent.kwargs,
165
168
  chainId: activeChainId,
169
+ ...(options?.nonce == null ? {} : { nonce: options.nonce }),
166
170
  chi: parseOptionalXianNumber(intent.chi, "chi"),
167
171
  chiSupplied: parseOptionalXianNumber(intent.chiSupplied, "chiSupplied")
168
172
  });
169
173
  }
174
+ async requireTransactionChain(tx) {
175
+ const activeChainId = await this.ensureChainId();
176
+ const txChainId = tx?.payload?.chain_id;
177
+ if (typeof txChainId !== "string" || txChainId.length === 0) {
178
+ throw new TypeError("transaction payload must include chain_id");
179
+ }
180
+ if (txChainId !== activeChainId) {
181
+ throw new ProviderChainMismatchError();
182
+ }
183
+ }
170
184
  normalizeWatchAssetRequest(request) {
171
185
  const type = request.type;
172
186
  if (type != null && type !== "token") {
@@ -205,6 +219,16 @@ export class InMemoryXianProvider {
205
219
  listWatchedAssets() {
206
220
  return [...this.watchedAssets.values()];
207
221
  }
222
+ /**
223
+ * Clear local automatic-nonce state after the wallet owner has independently
224
+ * reconciled an ambiguous broadcast outcome with the network.
225
+ */
226
+ async resetNonceReservation(chainId) {
227
+ await this.nonceReservations.reset({
228
+ chainId: chainId ?? (await this.ensureChainId()),
229
+ sender: await this.getAddress()
230
+ });
231
+ }
208
232
  async request(args) {
209
233
  switch (args.method) {
210
234
  case "xian_connect":
@@ -233,7 +257,11 @@ export class InMemoryXianProvider {
233
257
  if (typeof message !== "string") {
234
258
  throw new TypeError("xian_signMessage requires a message string");
235
259
  }
236
- return this.options.signer.signMessage(message);
260
+ const [account, chainId] = await Promise.all([
261
+ this.getAddress(),
262
+ this.ensureChainId()
263
+ ]);
264
+ return this.options.signer.signMessage(createXianMessageSigningPayload({ account, chainId, message }));
237
265
  }
238
266
  case "xian_signTransaction": {
239
267
  await this.requireConnected();
@@ -241,7 +269,9 @@ export class InMemoryXianProvider {
241
269
  throw new TypeError("provider client is required for xian_signTransaction");
242
270
  }
243
271
  const { tx } = firstParamObject(args.params);
244
- return this.options.client.signTx(tx, this.options.signer);
272
+ const unsignedTx = tx;
273
+ await this.requireTransactionChain(unsignedTx);
274
+ return this.options.client.signTx(unsignedTx, this.options.signer);
245
275
  }
246
276
  case "xian_prepareTransaction": {
247
277
  await this.requireConnected();
@@ -254,7 +284,9 @@ export class InMemoryXianProvider {
254
284
  throw new TypeError("provider client is required for xian_sendTransaction");
255
285
  }
256
286
  const { tx, mode, waitForTx, timeoutMs, pollIntervalMs } = firstParamObject(args.params);
257
- const signedTx = await this.options.client.signTx(tx, this.options.signer);
287
+ const unsignedTx = tx;
288
+ await this.requireTransactionChain(unsignedTx);
289
+ const signedTx = await this.options.client.signTx(unsignedTx, this.options.signer);
258
290
  return this.options.client.broadcastTx(signedTx, {
259
291
  mode: mode,
260
292
  waitForTx: waitForTx,
@@ -264,17 +296,67 @@ export class InMemoryXianProvider {
264
296
  }
265
297
  case "xian_sendCall": {
266
298
  await this.requireConnected();
267
- if (!this.options.client) {
299
+ const client = this.options.client;
300
+ if (!client) {
268
301
  throw new TypeError("provider client is required for xian_sendCall");
269
302
  }
270
303
  const { intent, mode, waitForTx, timeoutMs, pollIntervalMs } = firstParamObject(args.params);
271
- const preparedTx = await this.prepareTransaction(intent);
272
- const signedTx = await this.options.client.signTx(preparedTx, this.options.signer);
273
- return this.options.client.broadcastTx(signedTx, {
274
- mode: mode,
275
- waitForTx: waitForTx,
276
- timeoutMs: timeoutMs,
277
- pollIntervalMs: pollIntervalMs
304
+ if (mode != null && !["async", "checktx", "commit"].includes(String(mode))) {
305
+ throw new TypeError("mode must be one of: async, checktx, commit");
306
+ }
307
+ const transactionIntent = intent;
308
+ const chainId = await this.ensureChainId();
309
+ if (transactionIntent.chainId && transactionIntent.chainId !== chainId) {
310
+ throw new ProviderChainMismatchError();
311
+ }
312
+ const sender = await this.getAddress();
313
+ const scope = { chainId, sender };
314
+ return this.nonceReservations.runExclusive(scope, async () => {
315
+ let preparedTx;
316
+ const reservation = await this.nonceReservations.reserve(scope, async () => {
317
+ preparedTx = await this.prepareTransaction(transactionIntent, {
318
+ chainId,
319
+ sender
320
+ });
321
+ return preparedTx.payload.nonce;
322
+ });
323
+ let broadcastAttempted = false;
324
+ try {
325
+ preparedTx ??= await this.prepareTransaction(transactionIntent, {
326
+ chainId,
327
+ sender,
328
+ nonce: reservation.nonce
329
+ });
330
+ const signedTx = await client.signTx(preparedTx, this.options.signer);
331
+ await this.nonceReservations.assertCanBroadcast(reservation);
332
+ broadcastAttempted = true;
333
+ let submission;
334
+ try {
335
+ submission = await client.broadcastTx(signedTx, {
336
+ mode: mode,
337
+ waitForTx: waitForTx,
338
+ timeoutMs: timeoutMs,
339
+ pollIntervalMs: pollIntervalMs
340
+ });
341
+ }
342
+ catch (error) {
343
+ await this.nonceReservations.quarantine(reservation);
344
+ throw error;
345
+ }
346
+ if (!submission.submitted || submission.accepted === false) {
347
+ await this.nonceReservations.reject(reservation);
348
+ }
349
+ else {
350
+ await this.nonceReservations.confirm(reservation);
351
+ }
352
+ return submission;
353
+ }
354
+ catch (error) {
355
+ if (!broadcastAttempted) {
356
+ await this.nonceReservations.release(reservation);
357
+ }
358
+ throw error;
359
+ }
278
360
  });
279
361
  }
280
362
  case "xian_watchAsset": {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xian-tech/provider",
3
- "version": "0.1.11",
3
+ "version": "0.2.0",
4
4
  "description": "Xian browser wallet provider contract and reference provider",
5
5
  "repository": {
6
6
  "type": "git",
@@ -26,6 +26,6 @@
26
26
  "typecheck": "tsc --noEmit -p tsconfig.json"
27
27
  },
28
28
  "dependencies": {
29
- "@xian-tech/types": "0.1.11"
29
+ "@xian-tech/types": "0.2.0"
30
30
  }
31
31
  }