@jaw.id/wagmi 1.0.13 → 1.0.15
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/lib/Connector.d.ts +10 -0
- package/dist/lib/Connector.d.ts.map +1 -1
- package/dist/lib/Connector.js +16 -3
- package/dist/lib/connect-shape.test.d.ts +2 -0
- package/dist/lib/connect-shape.test.d.ts.map +1 -0
- package/dist/lib/connect-shape.test.js +74 -0
- package/dist/lib/internal/core.d.ts.map +1 -1
- package/dist/lib/internal/core.js +9 -1
- package/package.json +2 -2
package/dist/lib/Connector.d.ts
CHANGED
|
@@ -10,6 +10,16 @@ type ConnectParameters = {
|
|
|
10
10
|
* When provided, uses wallet_connect instead of eth_requestAccounts.
|
|
11
11
|
*/
|
|
12
12
|
capabilities?: WalletConnectCapabilities | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* wagmi's own flag (v3) deciding the shape of `accounts` in the result:
|
|
15
|
+
* `{ address, capabilities }[]` when true, bare addresses when not.
|
|
16
|
+
*
|
|
17
|
+
* Distinct from `capabilities` above, which asks the *wallet* for
|
|
18
|
+
* capabilities. wagmi's connect action only normalizes the result when it
|
|
19
|
+
* asked for capabilities, so returning objects unrequested puts objects
|
|
20
|
+
* where wagmi's store expects addresses.
|
|
21
|
+
*/
|
|
22
|
+
withCapabilities?: boolean | undefined;
|
|
13
23
|
};
|
|
14
24
|
/** Account with capabilities returned from wallet_connect */
|
|
15
25
|
export type AccountWithCapabilities = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Connector.d.ts","sourceRoot":"","sources":["../../src/lib/Connector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EAGd,MAAM,cAAc,CAAC;AAEtB,OAAO,EAGL,KAAK,mBAAmB,EAIzB,MAAM,MAAM,CAAC;AAGd,MAAM,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAGhD,YAAY,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAwB9D,KAAK,iBAAiB,GAAG;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC;;;OAGG;IACH,YAAY,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Connector.d.ts","sourceRoot":"","sources":["../../src/lib/Connector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EAGd,MAAM,cAAc,CAAC;AAEtB,OAAO,EAGL,KAAK,mBAAmB,EAIzB,MAAM,MAAM,CAAC;AAGd,MAAM,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAGhD,YAAY,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAwB9D,KAAK,iBAAiB,GAAG;IACvB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC;;;OAGG;IACH,YAAY,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IACrD;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACxC,CAAC;AAEF,6DAA6D;AAC7D,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,qBAAqB,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;CAC1E,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,OAAO,CAAC,UAAU,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC;QAC/C,QAAQ,EAAE,SAAS,KAAK,MAAM,EAAE,EAAE,GAAG,SAAS,uBAAuB,EAAE,CAAC;QACxE,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,CAAC,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAClD;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC;CAC7C,CAAC;AAEF,wBAAgB,GAAG,CAAC,UAAU,EAAE,aAAa,4GAyR5C;yBAzRe,GAAG"}
|
package/dist/lib/Connector.js
CHANGED
|
@@ -43,7 +43,7 @@ export function jaw(parameters) {
|
|
|
43
43
|
provider.on('connect', connect);
|
|
44
44
|
}
|
|
45
45
|
},
|
|
46
|
-
async connect({ chainId, isReconnecting, capabilities } = {}) {
|
|
46
|
+
async connect({ chainId, isReconnecting, capabilities, withCapabilities } = {}) {
|
|
47
47
|
const targetChainId = chainId;
|
|
48
48
|
let accounts = [];
|
|
49
49
|
let accountsWithCapabilities = [];
|
|
@@ -115,9 +115,22 @@ export function jaw(parameters) {
|
|
|
115
115
|
});
|
|
116
116
|
currentChainId = chain?.id ?? currentChainId;
|
|
117
117
|
}
|
|
118
|
-
//
|
|
118
|
+
// The shape follows wagmi's `withCapabilities` flag, not whether we
|
|
119
|
+
// happened to call wallet_connect: wagmi only maps objects back to
|
|
120
|
+
// addresses when it asked for capabilities, so returning them
|
|
121
|
+
// unrequested lands objects in `state.connections[].accounts` and
|
|
122
|
+
// useAccount().address stops being an address. JAW's own connect action
|
|
123
|
+
// reads either shape.
|
|
124
|
+
if (withCapabilities) {
|
|
125
|
+
return {
|
|
126
|
+
accounts: (accountsWithCapabilities.length > 0
|
|
127
|
+
? accountsWithCapabilities
|
|
128
|
+
: accounts.map((address) => ({ address, capabilities: {} }))),
|
|
129
|
+
chainId: currentChainId,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
119
132
|
return {
|
|
120
|
-
accounts:
|
|
133
|
+
accounts: accounts,
|
|
121
134
|
chainId: currentChainId,
|
|
122
135
|
};
|
|
123
136
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-shape.test.d.ts","sourceRoot":"","sources":["../../src/lib/connect-shape.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { describe, expect, it, vi, beforeEach } from 'vitest';
|
|
2
|
+
const request = vi.fn();
|
|
3
|
+
vi.mock('@jaw.id/core', async (importOriginal) => {
|
|
4
|
+
const actual = await importOriginal();
|
|
5
|
+
return {
|
|
6
|
+
...actual,
|
|
7
|
+
JAW: {
|
|
8
|
+
create: () => ({
|
|
9
|
+
provider: { request, on: () => undefined, removeListener: () => undefined },
|
|
10
|
+
}),
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
});
|
|
14
|
+
const { jaw } = await import('./Connector.js');
|
|
15
|
+
const ADDRESS = '0x1234567890123456789012345678901234567890';
|
|
16
|
+
const SIWE_CAPABILITIES = { signInWithEthereum: { nonce: '123', chainId: '0x1' } };
|
|
17
|
+
function makeConnector() {
|
|
18
|
+
const emitter = {
|
|
19
|
+
uid: 'test',
|
|
20
|
+
emit: () => undefined,
|
|
21
|
+
on: () => undefined,
|
|
22
|
+
off: () => undefined,
|
|
23
|
+
once: () => undefined,
|
|
24
|
+
listenerCount: () => 0,
|
|
25
|
+
};
|
|
26
|
+
return jaw({ apiKey: 'test-api-key' })({ emitter, chains: [], transports: {} });
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* wagmi v3 decides the shape of `connect`'s `accounts` from its own
|
|
30
|
+
* `withCapabilities` flag, and only maps objects back to addresses when it asked
|
|
31
|
+
* for capabilities. A connector that returns objects unrequested puts objects in
|
|
32
|
+
* `state.connections[].accounts`, and `useAccount().address` stops being an
|
|
33
|
+
* address.
|
|
34
|
+
*/
|
|
35
|
+
describe('connect() honors wagmi v3 withCapabilities', () => {
|
|
36
|
+
beforeEach(() => {
|
|
37
|
+
request.mockReset();
|
|
38
|
+
request.mockImplementation(({ method }) => {
|
|
39
|
+
switch (method) {
|
|
40
|
+
case 'eth_requestAccounts':
|
|
41
|
+
return Promise.resolve([ADDRESS]);
|
|
42
|
+
case 'wallet_connect':
|
|
43
|
+
return Promise.resolve({
|
|
44
|
+
accounts: [{ address: ADDRESS, capabilities: { signInWithEthereum: { signature: '0xsig' } } }],
|
|
45
|
+
});
|
|
46
|
+
case 'eth_chainId':
|
|
47
|
+
return Promise.resolve('0x1');
|
|
48
|
+
case 'eth_accounts':
|
|
49
|
+
return Promise.resolve([]);
|
|
50
|
+
default:
|
|
51
|
+
return Promise.resolve(null);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
it('returns bare addresses by default', async () => {
|
|
56
|
+
const { accounts } = await makeConnector().connect();
|
|
57
|
+
expect(accounts).toEqual([ADDRESS]);
|
|
58
|
+
});
|
|
59
|
+
it('returns bare addresses even when wallet capabilities were requested', async () => {
|
|
60
|
+
const { accounts } = await makeConnector().connect({ capabilities: SIWE_CAPABILITIES });
|
|
61
|
+
expect(accounts).toEqual([ADDRESS]);
|
|
62
|
+
});
|
|
63
|
+
it('returns account objects when wagmi asks for capabilities', async () => {
|
|
64
|
+
const { accounts } = await makeConnector().connect({
|
|
65
|
+
capabilities: SIWE_CAPABILITIES,
|
|
66
|
+
withCapabilities: true,
|
|
67
|
+
});
|
|
68
|
+
expect(accounts).toEqual([{ address: ADDRESS, capabilities: { signInWithEthereum: { signature: '0xsig' } } }]);
|
|
69
|
+
});
|
|
70
|
+
it('wraps addresses when wagmi asks for capabilities the wallet was never asked for', async () => {
|
|
71
|
+
const { accounts } = await makeConnector().connect({ withCapabilities: true });
|
|
72
|
+
expect(accounts).toEqual([{ address: ADDRESS, capabilities: {} }]);
|
|
73
|
+
});
|
|
74
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/lib/internal/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,SAAS,EAAqD,MAAM,aAAa,CAAC;AAC7G,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEzC,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EACnC,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAM/D,yBAAiB,OAAO,CAAC;IACvB,KAAY,UAAU,GAAG;QACvB,0CAA0C;QAC1C,SAAS,EAAE,SAAS,CAAC;QACrB,sCAAsC;QACtC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB;;;WAGG;QACH,YAAY,CAAC,EAAE,yBAAyB,CAAC;QACzC,mDAAmD;QACnD,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IAEF,KAAY,UAAU,GAAG;QACvB,0DAA0D;QAC1D,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,uBAAuB,EAAE,CAAC;QAClE,yBAAyB;QACzB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,KAAY,SAAS,GAAG,KAAK,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,OAAO,CAAC,MAAM,SAAS,MAAM,EACjD,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,CAAC,UAAU,GAC7B,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/lib/internal/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,15 @@ export async function connect(config, parameters) {
|
|
|
33
33
|
try {
|
|
34
34
|
config.setState((x) => ({ ...x, status: 'connecting' }));
|
|
35
35
|
connector.emitter.emit('message', { type: 'connecting' });
|
|
36
|
-
|
|
36
|
+
// `withCapabilities` is wagmi's flag for the result shape; ask for the
|
|
37
|
+
// richer one whenever we requested wallet capabilities, so the caller still
|
|
38
|
+
// gets each account's capabilities (a SIWE signature, for instance) back.
|
|
39
|
+
const wantsCapabilities = Boolean(capabilities && Object.keys(capabilities).length > 0);
|
|
40
|
+
const result = await connector.connect({
|
|
41
|
+
chainId,
|
|
42
|
+
capabilities,
|
|
43
|
+
withCapabilities: wantsCapabilities,
|
|
44
|
+
});
|
|
37
45
|
connector.emitter.off('connect', config._internal.events.connect);
|
|
38
46
|
connector.emitter.on('change', config._internal.events.change);
|
|
39
47
|
connector.emitter.on('disconnect', config._internal.events.disconnect);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jaw.id/wagmi",
|
|
3
3
|
"description": "Wagmi connector and React hooks for JAW.id.",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.15",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./dist/index.js",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"!**/*.tsbuildinfo"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@jaw.id/core": "1.1.
|
|
34
|
+
"@jaw.id/core": "1.1.4",
|
|
35
35
|
"@wagmi/core": "^3.0.0",
|
|
36
36
|
"tslib": "^2.3.0",
|
|
37
37
|
"viem": "^2.38.2"
|