@bwalletx/connect 0.5.6 → 0.7.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +22 -2
  3. package/dist/bwalletx-connect.global.js +15 -10
  4. package/dist/bwalletx-connect.global.js.map +1 -1
  5. package/dist/{choice-DCh-tgpT.d.cts → choice-B97AjqF4.d.cts} +87 -3
  6. package/dist/{choice-DCh-tgpT.d.ts → choice-B97AjqF4.d.ts} +87 -3
  7. package/dist/{chunk-LS6AYEBO.js → chunk-6EFFOIHK.js} +596 -41
  8. package/dist/chunk-6EFFOIHK.js.map +1 -0
  9. package/dist/{chunk-34DKBQNN.js → chunk-DIKJFKND.js} +22 -5
  10. package/dist/chunk-DIKJFKND.js.map +1 -0
  11. package/dist/{chunk-IFGOAROM.js → chunk-TNRI7ARM.js} +14 -63
  12. package/dist/chunk-TNRI7ARM.js.map +1 -0
  13. package/dist/{element-D9Zl-x12.d.cts → element-BXEoOdXY.d.cts} +11 -4
  14. package/dist/{element-D9Zl-x12.d.ts → element-BXEoOdXY.d.ts} +11 -4
  15. package/dist/element.cjs +480 -50
  16. package/dist/element.cjs.map +1 -1
  17. package/dist/element.d.cts +7 -2
  18. package/dist/element.d.ts +7 -2
  19. package/dist/element.js +8 -2
  20. package/dist/element.js.map +1 -1
  21. package/dist/index.cjs +676 -100
  22. package/dist/index.cjs.map +1 -1
  23. package/dist/index.d.cts +169 -11
  24. package/dist/index.d.ts +169 -11
  25. package/dist/index.js +92 -6
  26. package/dist/index.js.map +1 -1
  27. package/dist/react.cjs +683 -103
  28. package/dist/react.cjs.map +1 -1
  29. package/dist/react.d.cts +43 -4
  30. package/dist/react.d.ts +43 -4
  31. package/dist/react.js +147 -12
  32. package/dist/react.js.map +1 -1
  33. package/package.json +1 -1
  34. package/dist/chunk-34DKBQNN.js.map +0 -1
  35. package/dist/chunk-IFGOAROM.js.map +0 -1
  36. package/dist/chunk-LS6AYEBO.js.map +0 -1
package/dist/index.js CHANGED
@@ -5,32 +5,47 @@ import {
5
5
  dropLegacyConnectedKey,
6
6
  getUrlFor,
7
7
  handleLabel,
8
+ migrateConnectedKey,
8
9
  stateFor
9
- } from "./chunk-34DKBQNN.js";
10
+ } from "./chunk-DIKJFKND.js";
10
11
  import {
11
12
  BRC29_PROTOCOL,
13
+ NO_COINS_TEXT,
12
14
  PaymentError,
13
15
  WALLET_THEME_META,
14
16
  amountInSats,
15
17
  buyToken,
16
18
  declareWalletTheme,
17
19
  isIdentityKeyHex,
20
+ isInsufficientFunds,
18
21
  isPaymail,
19
22
  pay,
20
23
  resolvePaymailP2P,
21
- runConnect,
22
24
  tip
23
- } from "./chunk-IFGOAROM.js";
25
+ } from "./chunk-TNRI7ARM.js";
24
26
  import {
25
27
  BAVATAR_URL,
26
28
  BWALLETX_RDNS,
27
29
  BWALLETX_TYPE,
30
+ CONTINUE_OTHER_LABEL,
28
31
  DEFAULT_DISCOVER_MS,
29
32
  DESKTOP_OPTION_ID,
30
33
  GET_URL,
31
34
  IDENTITY_HINT_KEY,
35
+ KNOWN_KEYS_KEY,
32
36
  LOGIN_PROTOCOL,
33
37
  MENU_CSS,
38
+ METANET_ANSWER_MS,
39
+ METANET_JSON_API,
40
+ METANET_LABEL,
41
+ METANET_NOTE,
42
+ METANET_OPTION_ID,
43
+ METANET_REMEMBERED_NOTE,
44
+ METANET_SILENT_MS,
45
+ METANET_TYPE,
46
+ METANET_UNREACHABLE,
47
+ MetanetUnreachableError,
48
+ NOT_YOU_LABEL,
34
49
  PAYMAIL_LOOKUP_URL,
35
50
  PENDING_LABEL,
36
51
  PENDING_LABEL_OTHER,
@@ -39,8 +54,11 @@ import {
39
54
  RDNS_MOBILE,
40
55
  SIGNIN_CSS,
41
56
  SIGNIN_TAG,
57
+ SWITCH_NOTE,
58
+ WALLET_CHOICE_KEY,
42
59
  WEB_WALLET_URL,
43
60
  accountLabel,
61
+ attachRemembered,
44
62
  attemptFor,
45
63
  autoChoice,
46
64
  avatarUrlFor,
@@ -50,8 +68,10 @@ import {
50
68
  challengeWantsIdentityKey,
51
69
  chooseWallet,
52
70
  chooserOrder,
71
+ claimSilentAttempt,
53
72
  clearPairing,
54
73
  connectBwalletX,
74
+ connectMetanetDesktop,
55
75
  cwiIsAnnounced,
56
76
  decideWallet,
57
77
  defineBwalletxSignin,
@@ -59,40 +79,63 @@ import {
59
79
  discoverBwalletX,
60
80
  discoverWallets,
61
81
  findBwalletX,
82
+ forgetWalletChoice,
62
83
  handcashAdapter,
63
84
  hasBwalletX,
85
+ inAnyFrame,
64
86
  inOrder,
87
+ isExplicitPick,
65
88
  isFramed,
89
+ isKnownIdentityKey,
90
+ isLocalDesktop,
91
+ isLocalDesktopType,
66
92
  isPresentBwalletX,
93
+ isRememberable,
67
94
  isTouchDevice,
68
95
  isUserRejection,
96
+ knownIdentityKeys,
69
97
  lookupPaymail,
70
98
  markSvg,
99
+ matchRemembered,
100
+ metanetOffered,
101
+ metanetOption,
102
+ needsBwalletX,
71
103
  otherDetected,
72
104
  outcomeOf,
73
105
  pairBwalletX,
74
106
  pairingModal,
75
107
  pairingOption,
76
108
  pickWallet,
109
+ planAutoConnect,
77
110
  prewarmBwalletX,
78
111
  proveHoldings,
79
112
  qrSvg,
80
113
  rememberIdentity,
114
+ rememberKnownIdentityKey,
115
+ rememberWalletChoice,
81
116
  rememberedIdentity,
117
+ rememberedWalletChoice,
82
118
  reportAttempt,
83
119
  requestAccess,
120
+ resetSilentAttempt,
84
121
  restorePairing,
122
+ runConnect,
123
+ runSilentMetanet,
85
124
  shortKey,
86
125
  signInAndVerify,
87
126
  signInErrorText,
88
127
  signInWithBwalletX,
89
128
  signinText,
129
+ silentAttemptUsed,
90
130
  substrateOf,
131
+ tapGoesElsewhere,
91
132
  throwIfAccessError,
92
133
  toAccessError,
134
+ trySilentMetanet,
93
135
  waitIfLocked,
94
- walletTypeOf
95
- } from "./chunk-LS6AYEBO.js";
136
+ walletTypeOf,
137
+ warnIfNoLogout
138
+ } from "./chunk-6EFFOIHK.js";
96
139
  import {
97
140
  ACCESS_ERROR_STATUS,
98
141
  ACCESS_PROTOCOL,
@@ -158,13 +201,27 @@ export {
158
201
  BWALLETX_RDNS,
159
202
  BWALLETX_TYPE,
160
203
  CONNECTED_KEY,
204
+ CONTINUE_OTHER_LABEL,
161
205
  DEFAULT_DISCOVER_MS,
162
206
  DESKTOP_OPTION_ID,
163
207
  GET_URL,
164
208
  IDENTITY_HINT_KEY,
209
+ KNOWN_KEYS_KEY,
165
210
  LOGIN_PROTOCOL,
166
211
  LOGO_URL,
167
212
  MENU_CSS,
213
+ METANET_ANSWER_MS,
214
+ METANET_JSON_API,
215
+ METANET_LABEL,
216
+ METANET_NOTE,
217
+ METANET_OPTION_ID,
218
+ METANET_REMEMBERED_NOTE,
219
+ METANET_SILENT_MS,
220
+ METANET_TYPE,
221
+ METANET_UNREACHABLE,
222
+ MetanetUnreachableError,
223
+ NOT_YOU_LABEL,
224
+ NO_COINS_TEXT,
168
225
  PAYMAIL_LOOKUP_URL,
169
226
  PENDING_LABEL,
170
227
  PENDING_LABEL_OTHER,
@@ -175,11 +232,14 @@ export {
175
232
  RDNS_MOBILE,
176
233
  SIGNIN_CSS,
177
234
  SIGNIN_TAG,
235
+ SWITCH_NOTE,
236
+ WALLET_CHOICE_KEY,
178
237
  WALLET_THEME_META,
179
238
  WEB_WALLET_URL,
180
239
  accessErrorMessage,
181
240
  accountLabel,
182
241
  amountInSats,
242
+ attachRemembered,
183
243
  attemptFor,
184
244
  autoChoice,
185
245
  avatarUrlFor,
@@ -191,8 +251,10 @@ export {
191
251
  challengeWantsIdentityKey,
192
252
  chooseWallet,
193
253
  chooserOrder,
254
+ claimSilentAttempt,
194
255
  clearPairing,
195
256
  connectBwalletX,
257
+ connectMetanetDesktop,
196
258
  cwiIsAnnounced,
197
259
  decideWallet,
198
260
  declareWalletTheme,
@@ -203,19 +265,33 @@ export {
203
265
  discoverWallets,
204
266
  dropLegacyConnectedKey,
205
267
  findBwalletX,
268
+ forgetWalletChoice,
206
269
  getUrlFor,
207
270
  handcashAdapter,
208
271
  handleLabel,
209
272
  hasBwalletX,
273
+ inAnyFrame,
210
274
  inOrder,
275
+ isExplicitPick,
211
276
  isFramed,
212
277
  isIdentityKeyHex,
278
+ isInsufficientFunds,
279
+ isKnownIdentityKey,
280
+ isLocalDesktop,
281
+ isLocalDesktopType,
213
282
  isPaymail,
214
283
  isPresentBwalletX,
284
+ isRememberable,
215
285
  isTouchDevice,
216
286
  isUserRejection,
287
+ knownIdentityKeys,
217
288
  lookupPaymail,
218
289
  markSvg,
290
+ matchRemembered,
291
+ metanetOffered,
292
+ metanetOption,
293
+ migrateConnectedKey,
294
+ needsBwalletX,
219
295
  otherDetected,
220
296
  outcomeOf,
221
297
  pairBwalletX,
@@ -223,29 +299,39 @@ export {
223
299
  pairingOption,
224
300
  pay,
225
301
  pickWallet,
302
+ planAutoConnect,
226
303
  prewarmBwalletX,
227
304
  protocolMediaUrl,
228
305
  proveHoldings,
229
306
  qrSvg,
230
307
  rememberIdentity,
308
+ rememberKnownIdentityKey,
309
+ rememberWalletChoice,
231
310
  rememberedIdentity,
311
+ rememberedWalletChoice,
232
312
  renderButton,
233
313
  reportAttempt,
234
314
  requestAccess,
315
+ resetSilentAttempt,
235
316
  resolvePaymailP2P,
236
317
  restorePairing,
237
318
  runConnect,
319
+ runSilentMetanet,
238
320
  shortKey,
239
321
  signInAndVerify,
240
322
  signInErrorText,
241
323
  signInWithBwalletX,
242
324
  signinText,
325
+ silentAttemptUsed,
243
326
  stateFor,
244
327
  substrateOf,
328
+ tapGoesElsewhere,
245
329
  throwIfAccessError,
246
330
  tip,
247
331
  toAccessError,
332
+ trySilentMetanet,
248
333
  waitIfLocked,
249
- walletTypeOf
334
+ walletTypeOf,
335
+ warnIfNoLogout
250
336
  };
251
337
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/button.ts"],"sourcesContent":["const CSS = `\n.bwx-signin{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:10px 22px 10px 10px;border:0;border-radius:12px;cursor:pointer;background:linear-gradient(180deg,#fcd34d,#f59e0b);color:#000;text-align:left;font:700 16px/1.2 system-ui,-apple-system,\"Segoe UI\",sans-serif;box-shadow:0 8px 24px rgba(245,158,11,.2)}\n.bwx-signin:hover{background:linear-gradient(180deg,#fde68a,#fbbf24)}\n.bwx-signin:focus-visible{outline:2px solid #ffd24d;outline-offset:3px}\n.bwx-signin:disabled{opacity:.6;cursor:wait}\n.bwx-signin .bwx-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#000;flex:none}\n.bwx-signin small{display:block;font-size:11px;font-weight:500;color:rgba(0,0,0,.6)}`;\n\nexport const LOGO_URL = 'https://bwalletx.com/logo.svg';\n\nexport interface ButtonOptions {\n /** Second line under the label. Default \"also works with bWallet\". false hides it. */\n subtitle?: string | false;\n onClick?: (button: HTMLButtonElement) => void;\n}\n\n/** Put the gold \"Sign in with bWalletX\" button into `el` (replacing its contents). */\nexport function renderButton(el: HTMLElement | string, opts: ButtonOptions = {}): HTMLButtonElement {\n const host = typeof el === 'string' ? document.querySelector<HTMLElement>(el) : el;\n if (!host) throw new Error(`renderButton: no element ${String(el)}`);\n if (!document.getElementById('bwx-signin-css')) {\n const style = document.createElement('style');\n style.id = 'bwx-signin-css';\n style.textContent = CSS;\n document.head.appendChild(style);\n }\n const b = document.createElement('button');\n b.type = 'button';\n b.className = 'bwx-signin';\n const mark = document.createElement('span');\n mark.className = 'bwx-mark';\n const img = document.createElement('img');\n img.src = LOGO_URL;\n img.alt = '';\n img.width = 15;\n img.height = 20;\n mark.appendChild(img);\n const label = document.createElement('span');\n label.className = 'bwx-label';\n label.textContent = 'Sign in with bWalletX';\n const sub = opts.subtitle === undefined ? 'also works with bWallet' : opts.subtitle;\n if (sub) {\n const small = document.createElement('small');\n small.textContent = sub;\n label.appendChild(small);\n }\n b.append(mark, label);\n if (opts.onClick) b.addEventListener('click', () => opts.onClick!(b));\n host.replaceChildren(b);\n return b;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQL,IAAM,WAAW;AASjB,SAAS,aAAa,IAA0B,OAAsB,CAAC,GAAsB;AAClG,QAAM,OAAO,OAAO,OAAO,WAAW,SAAS,cAA2B,EAAE,IAAI;AAChF,MAAI,CAAC,KAAM,OAAM,IAAI,MAAM,4BAA4B,OAAO,EAAE,CAAC,EAAE;AACnE,MAAI,CAAC,SAAS,eAAe,gBAAgB,GAAG;AAC9C,UAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,UAAM,KAAK;AACX,UAAM,cAAc;AACpB,aAAS,KAAK,YAAY,KAAK;AAAA,EACjC;AACA,QAAM,IAAI,SAAS,cAAc,QAAQ;AACzC,IAAE,OAAO;AACT,IAAE,YAAY;AACd,QAAM,OAAO,SAAS,cAAc,MAAM;AAC1C,OAAK,YAAY;AACjB,QAAM,MAAM,SAAS,cAAc,KAAK;AACxC,MAAI,MAAM;AACV,MAAI,MAAM;AACV,MAAI,QAAQ;AACZ,MAAI,SAAS;AACb,OAAK,YAAY,GAAG;AACpB,QAAM,QAAQ,SAAS,cAAc,MAAM;AAC3C,QAAM,YAAY;AAClB,QAAM,cAAc;AACpB,QAAM,MAAM,KAAK,aAAa,SAAY,4BAA4B,KAAK;AAC3E,MAAI,KAAK;AACP,UAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,UAAM,cAAc;AACpB,UAAM,YAAY,KAAK;AAAA,EACzB;AACA,IAAE,OAAO,MAAM,KAAK;AACpB,MAAI,KAAK,QAAS,GAAE,iBAAiB,SAAS,MAAM,KAAK,QAAS,CAAC,CAAC;AACpE,OAAK,gBAAgB,CAAC;AACtB,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../src/button.ts"],"sourcesContent":["const CSS = `\n.bwx-signin{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:10px 22px 10px 10px;border:0;border-radius:12px;cursor:pointer;background:linear-gradient(180deg,#fcd34d,#f59e0b);color:#000;text-align:left;font:700 16px/1.2 system-ui,-apple-system,\"Segoe UI\",sans-serif;box-shadow:0 8px 24px rgba(245,158,11,.2)}\n.bwx-signin:hover{background:linear-gradient(180deg,#fde68a,#fbbf24)}\n.bwx-signin:focus-visible{outline:2px solid #ffd24d;outline-offset:3px}\n.bwx-signin:disabled{opacity:.6;cursor:wait}\n.bwx-signin .bwx-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#000;flex:none}\n.bwx-signin small{display:block;font-size:11px;font-weight:500;color:rgba(0,0,0,.6)}`;\n\nexport const LOGO_URL = 'https://bwalletx.com/logo.svg';\n\nexport interface ButtonOptions {\n /** Second line under the label. Default \"also works with bWallet\". false hides it. */\n subtitle?: string | false;\n onClick?: (button: HTMLButtonElement) => void;\n}\n\n/** Put the gold \"Sign in with bWalletX\" button into `el` (replacing its contents). */\nexport function renderButton(el: HTMLElement | string, opts: ButtonOptions = {}): HTMLButtonElement {\n const host = typeof el === 'string' ? document.querySelector<HTMLElement>(el) : el;\n if (!host) throw new Error(`renderButton: no element ${String(el)}`);\n if (!document.getElementById('bwx-signin-css')) {\n const style = document.createElement('style');\n style.id = 'bwx-signin-css';\n style.textContent = CSS;\n document.head.appendChild(style);\n }\n const b = document.createElement('button');\n b.type = 'button';\n b.className = 'bwx-signin';\n const mark = document.createElement('span');\n mark.className = 'bwx-mark';\n const img = document.createElement('img');\n img.src = LOGO_URL;\n img.alt = '';\n img.width = 15;\n img.height = 20;\n mark.appendChild(img);\n const label = document.createElement('span');\n label.className = 'bwx-label';\n label.textContent = 'Sign in with bWalletX';\n const sub = opts.subtitle === undefined ? 'also works with bWallet' : opts.subtitle;\n if (sub) {\n const small = document.createElement('small');\n small.textContent = sub;\n label.appendChild(small);\n }\n b.append(mark, label);\n if (opts.onClick) b.addEventListener('click', () => opts.onClick!(b));\n host.replaceChildren(b);\n return b;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQL,IAAM,WAAW;AASjB,SAAS,aAAa,IAA0B,OAAsB,CAAC,GAAsB;AAClG,QAAM,OAAO,OAAO,OAAO,WAAW,SAAS,cAA2B,EAAE,IAAI;AAChF,MAAI,CAAC,KAAM,OAAM,IAAI,MAAM,4BAA4B,OAAO,EAAE,CAAC,EAAE;AACnE,MAAI,CAAC,SAAS,eAAe,gBAAgB,GAAG;AAC9C,UAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,UAAM,KAAK;AACX,UAAM,cAAc;AACpB,aAAS,KAAK,YAAY,KAAK;AAAA,EACjC;AACA,QAAM,IAAI,SAAS,cAAc,QAAQ;AACzC,IAAE,OAAO;AACT,IAAE,YAAY;AACd,QAAM,OAAO,SAAS,cAAc,MAAM;AAC1C,OAAK,YAAY;AACjB,QAAM,MAAM,SAAS,cAAc,KAAK;AACxC,MAAI,MAAM;AACV,MAAI,MAAM;AACV,MAAI,QAAQ;AACZ,MAAI,SAAS;AACb,OAAK,YAAY,GAAG;AACpB,QAAM,QAAQ,SAAS,cAAc,MAAM;AAC3C,QAAM,YAAY;AAClB,QAAM,cAAc;AACpB,QAAM,MAAM,KAAK,aAAa,SAAY,4BAA4B,KAAK;AAC3E,MAAI,KAAK;AACP,UAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,UAAM,cAAc;AACpB,UAAM,YAAY,KAAK;AAAA,EACzB;AACA,IAAE,OAAO,MAAM,KAAK;AACpB,MAAI,KAAK,QAAS,GAAE,iBAAiB,SAAS,MAAM,KAAK,QAAS,CAAC,CAAC;AACpE,OAAK,gBAAgB,CAAC;AACtB,SAAO;AACT;","names":[]}