@pooflabs/web 0.0.84 → 0.0.85-rc2

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 (67) hide show
  1. package/dist/auth/providers/solana-mobile-wallet-provider.d.ts +47 -20
  2. package/dist/{index-BM6hgCdH.js → index-B1_Q49qQ.js} +2 -2
  3. package/dist/{index-BM6hgCdH.js.map → index-B1_Q49qQ.js.map} +1 -1
  4. package/dist/{index-CH2G5Y9i.esm.js → index-B7tJ8TAn.esm.js} +2 -2
  5. package/dist/{index-CH2G5Y9i.esm.js.map → index-B7tJ8TAn.esm.js.map} +1 -1
  6. package/dist/{index-BPlF6-PQ.js → index-BeFR3-cf.js} +522 -289
  7. package/dist/{index-BPlF6-PQ.js.map → index-BeFR3-cf.js.map} +1 -1
  8. package/dist/index-DbJCCvVN.esm.js +6 -0
  9. package/dist/index-DbJCCvVN.esm.js.map +1 -0
  10. package/dist/{index-CSeN3jbG.js → index-DflG_JAB.js} +3 -3
  11. package/dist/{index-CSeN3jbG.js.map → index-DflG_JAB.js.map} +1 -1
  12. package/dist/{index-Bp4b5LXs.js → index-DyRIXw-l.js} +2 -2
  13. package/dist/index-DyRIXw-l.js.map +1 -0
  14. package/dist/{index-XHbmzFFO.esm.js → index-QukWgaIi.esm.js} +523 -290
  15. package/dist/{index-XHbmzFFO.esm.js.map → index-QukWgaIi.esm.js.map} +1 -1
  16. package/dist/{index-ep10Sw82.esm.js → index-agGmWBn4.esm.js} +3 -3
  17. package/dist/{index-ep10Sw82.esm.js.map → index-agGmWBn4.esm.js.map} +1 -1
  18. package/dist/{index.browser-C1QL04xM.js → index.browser-BJmFjY2f.js} +1006 -15
  19. package/dist/index.browser-BJmFjY2f.js.map +1 -0
  20. package/dist/index.browser-DZtZWdul.js +4994 -0
  21. package/dist/index.browser-DZtZWdul.js.map +1 -0
  22. package/dist/index.browser-lHP9glAW.esm.js +6060 -0
  23. package/dist/index.browser-lHP9glAW.esm.js.map +1 -0
  24. package/dist/{index.browser-Cgj7Hs6n.esm.js → index.browser-p-pgsxxW.esm.js} +836 -916
  25. package/dist/index.browser-p-pgsxxW.esm.js.map +1 -0
  26. package/dist/index.esm.js +1 -1
  27. package/dist/index.js +1 -1
  28. package/dist/{index.native-BmtuyGXs.js → index.native-ANhb4jEB.js} +4 -4
  29. package/dist/{index.native-BmtuyGXs.js.map → index.native-ANhb4jEB.js.map} +1 -1
  30. package/dist/{index.native-X01vlukI.esm.js → index.native-a3mhu9HP.esm.js} +4 -4
  31. package/dist/{index.native-X01vlukI.esm.js.map → index.native-a3mhu9HP.esm.js.map} +1 -1
  32. package/dist/index.native.esm.js +1 -1
  33. package/dist/index.native.js +1 -1
  34. package/dist/{phantom-wallet-provider-C_LPU6Ns.js → phantom-wallet-provider-BOdn0D1Q.js} +4 -4
  35. package/dist/{phantom-wallet-provider-C_LPU6Ns.js.map → phantom-wallet-provider-BOdn0D1Q.js.map} +1 -1
  36. package/dist/{phantom-wallet-provider-DRvhBbbR.esm.js → phantom-wallet-provider-Dsza6TBv.esm.js} +4 -4
  37. package/dist/{phantom-wallet-provider-DRvhBbbR.esm.js.map → phantom-wallet-provider-Dsza6TBv.esm.js.map} +1 -1
  38. package/dist/{privy-wallet-provider-DQM8xO38.js → privy-wallet-provider-BlPh3Gn_.js} +3 -3
  39. package/dist/{privy-wallet-provider-DQM8xO38.js.map → privy-wallet-provider-BlPh3Gn_.js.map} +1 -1
  40. package/dist/{privy-wallet-provider-ZGu8q5T5.esm.js → privy-wallet-provider-bwwhkFjL.esm.js} +3 -3
  41. package/dist/{privy-wallet-provider-ZGu8q5T5.esm.js.map → privy-wallet-provider-bwwhkFjL.esm.js.map} +1 -1
  42. package/dist/solana-mobile-wallet-provider-S8yWHG6i.js +841 -0
  43. package/dist/solana-mobile-wallet-provider-S8yWHG6i.js.map +1 -0
  44. package/dist/solana-mobile-wallet-provider-fzLIgJBf.esm.js +820 -0
  45. package/dist/solana-mobile-wallet-provider-fzLIgJBf.esm.js.map +1 -0
  46. package/package.json +2 -1
  47. package/dist/index-Bp4b5LXs.js.map +0 -1
  48. package/dist/index-C80kRxWk.esm.js +0 -6
  49. package/dist/index-C80kRxWk.esm.js.map +0 -1
  50. package/dist/index.browser-BvNsUWjt.js +0 -105
  51. package/dist/index.browser-BvNsUWjt.js.map +0 -1
  52. package/dist/index.browser-BwIqqM4U.js +0 -1099
  53. package/dist/index.browser-BwIqqM4U.js.map +0 -1
  54. package/dist/index.browser-C1QL04xM.js.map +0 -1
  55. package/dist/index.browser-Cgj7Hs6n.esm.js.map +0 -1
  56. package/dist/index.browser-CifFI7Ju.esm.js +0 -1096
  57. package/dist/index.browser-CifFI7Ju.esm.js.map +0 -1
  58. package/dist/index.browser-D8VWPXTZ.esm.js +0 -102
  59. package/dist/index.browser-D8VWPXTZ.esm.js.map +0 -1
  60. package/dist/index.browser-OvGNsMPu.esm.js +0 -1002
  61. package/dist/index.browser-OvGNsMPu.esm.js.map +0 -1
  62. package/dist/index.browser-vuTr40so.js +0 -1008
  63. package/dist/index.browser-vuTr40so.js.map +0 -1
  64. package/dist/solana-mobile-wallet-provider-6gNw2_bX.js +0 -608
  65. package/dist/solana-mobile-wallet-provider-6gNw2_bX.js.map +0 -1
  66. package/dist/solana-mobile-wallet-provider-B65A7abd.esm.js +0 -587
  67. package/dist/solana-mobile-wallet-provider-B65A7abd.esm.js.map +0 -1
@@ -36,38 +36,65 @@ export declare function registerMobileWalletAdapter(config?: {
36
36
  };
37
37
  chains?: string[];
38
38
  remoteHostAuthority?: string;
39
+ /**
40
+ * Optional custom wallet-not-found handler. If omitted, the SDK installs
41
+ * a no-op (NOT the library default) — see comment below.
42
+ */
43
+ onWalletNotFound?: (mobileWalletAdapter: any) => Promise<void>;
39
44
  }): Promise<void>;
40
45
  /**
41
- * SolanaMobileWalletProvider implements the AuthProvider interface using the
42
- * Solana Mobile Wallet Adapter (MWA) protocol's low-level `transact` API.
46
+ * SolanaMobileWalletProvider implements the AuthProvider interface using
47
+ * Solana Mobile's wallet-standard wrapper (`LocalSolanaMobileWalletAdapterWallet`).
43
48
  *
44
- * This enables TaroBase dApps to work with any MWA-compliant wallet on Solana
45
- * mobile devices (Seeker, Saga) — including the native Seed Vault Wallet,
46
- * Phantom, Solflare, and any other wallet that implements the MWA protocol.
49
+ * Why wallet-standard and not the raw MWA protocol: as of
50
+ * `@solana-mobile/wallet-standard-mobile@0.5.0+`, the wallet's internal
51
+ * `#transact` calls `checkLocalNetworkAccessPermission()` before opening the
52
+ * localhost WebSocket. That helper renders a three-stage UX flow Solana
53
+ * Mobile designed specifically to defuse Chrome's Local Network Access
54
+ * permission dialog (which renders with disabled buttons on Android Chrome,
55
+ * the source of the long-running Seeker MWA bug):
47
56
  *
48
- * By using `transact()` directly (instead of the wallet-adapter wrapper),
49
- * login combines authorize + signMessage into a single wallet session —
50
- * meaning one popup/approval instead of two.
57
+ * 1. "Allow connections to your wallet" informational modal.
58
+ * 2. Chrome's permission prompt (interactive because it's spawned as a
59
+ * fresh user gesture from step 1).
60
+ * 3. "Ready to connect!" success modal.
61
+ *
62
+ * `checkLocalNetworkAccessPermission` is internal to the library — it's not
63
+ * exported. The only way to invoke it is to go through the wallet's
64
+ * `standard:connect` / `solana:sign*` features, which is what this provider
65
+ * does.
66
+ *
67
+ * Notes on UX: login uses two wallet popups in succession — `standard:connect`
68
+ * (authorize) and `solana:signMessage` (sign the Tarobase nonce). The
69
+ * previous implementation combined both inside a single `transact` callback;
70
+ * splitting them is the cost of going through wallet-standard, and is
71
+ * acceptable given the alternative was broken on Seeker.
51
72
  */
52
73
  export declare class SolanaMobileWalletProvider implements AuthProvider {
53
74
  private static instance;
54
75
  private networkUrl;
55
76
  private config;
56
- private authToken;
57
- private walletUriBase;
58
- private base64Address;
59
- private authorizedPublicKey;
60
- private publicKeyObj;
61
77
  private appIdentity;
62
- private chain;
78
+ /** Raw cluster name (e.g. 'mainnet-beta'); mapped via mapChainToWalletStandard. */
79
+ private cluster;
80
+ /** LocalSolanaMobileWalletAdapterWallet, lazy-constructed in ensureWallet(). */
81
+ private wallet;
63
82
  constructor(networkUrl?: string | null, config?: SolanaMobileWalletConfig);
64
83
  static getInstance(networkUrl: string | null, config: SolanaMobileWalletConfig): SolanaMobileWalletProvider;
65
- /** Config for transact() routes to the same wallet if we've already authorized */
66
- private getAssociationConfig;
67
- /** Reauthorize within a transact callback using a stored auth_token */
68
- private reauthorizeWallet;
69
- /** Persist auth result from an authorize/reauthorize call */
70
- private storeAuthResult;
84
+ /** Lazy-construct LocalSolanaMobileWalletAdapterWallet on first need. */
85
+ private ensureWallet;
86
+ /**
87
+ * Ensure the wallet has an active authorization. After a Tarobase session
88
+ * is restored from storage on cold-start, `wallet.accounts` is empty until
89
+ * we silently reconnect from the AuthorizationCache. If the cache is also
90
+ * empty, fall back to interactive `login()` (which surfaces the three-stage
91
+ * Solana Mobile LNA flow + wallet popups).
92
+ *
93
+ * Returns the wallet-standard `WalletAccount` to use for sign operations.
94
+ */
95
+ private ensureAuthorized;
96
+ /** Returns the active wallet-standard chain identifier (e.g. 'solana:mainnet'). */
97
+ private getChain;
71
98
  login(): Promise<User | null>;
72
99
  restoreSession(): Promise<User | null>;
73
100
  logout(): Promise<void>;
@@ -2,7 +2,7 @@
2
2
 
3
3
  var React = require('react');
4
4
  var globalAxios = require('axios');
5
- var index = require('./index-BPlF6-PQ.js');
5
+ var index = require('./index-BeFR3-cf.js');
6
6
  var web3_js = require('@solana/web3.js');
7
7
  var jsxRuntime = require('react/jsx-runtime');
8
8
  require('@coral-xyz/anchor');
@@ -15777,4 +15777,4 @@ exports.useModal = useModal;
15777
15777
  exports.usePhantom = usePhantom;
15778
15778
  exports.useSolana = useSolana;
15779
15779
  exports.useTheme = useTheme;
15780
- //# sourceMappingURL=index-BM6hgCdH.js.map
15780
+ //# sourceMappingURL=index-B1_Q49qQ.js.map