@wallet-ui/react-gill 2.0.0-canary-20250827010551 → 2.0.0-canary-20250827030244

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.
@@ -2,18 +2,24 @@
2
2
 
3
3
  var React = require('react');
4
4
  var gill = require('gill');
5
+ var react$2 = require('@wallet-ui/react');
5
6
  var react = require('@solana/react');
6
7
  var walletStandardFeatures = require('@solana/wallet-standard-features');
7
8
  var core = require('@wallet-standard/core');
8
9
  var react$1 = require('@wallet-standard/react');
9
10
  var core$1 = require('@wallet-ui/core');
10
- var react$2 = require('@wallet-ui/react');
11
11
 
12
12
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
13
13
 
14
14
  var React__default = /*#__PURE__*/_interopDefault(React);
15
15
 
16
- // src/use-wallet-ui-gill.tsx
16
+ // src/get-solana-cluster-moniker.ts
17
+ function getSolanaClusterMoniker(clusterId) {
18
+ if (!clusterId.startsWith("solana:")) {
19
+ throw new Error(`Invalid cluster id: ${clusterId}`);
20
+ }
21
+ return clusterId.replace("solana:", "");
22
+ }
17
23
  var WalletUiGillContext = React.createContext({});
18
24
 
19
25
  // src/use-wallet-ui-gill.tsx
@@ -34,20 +40,23 @@ function useWalletUiSignAndSend() {
34
40
  return gill.getBase58Decoder().decode(signature);
35
41
  };
36
42
  }
37
- function WalletUiGillContextProvider({ children, urlOrMoniker }) {
38
- return /* @__PURE__ */ React__default.default.createElement(
39
- WalletUiGillContext.Provider,
40
- {
41
- value: React.useMemo(() => gill.createSolanaClient({ urlOrMoniker }), [urlOrMoniker])
42
- },
43
- children
44
- );
43
+ function WalletUiGillProvider({ children, url }) {
44
+ const { cluster } = react$2.useWalletUiCluster();
45
+ const urlOrMoniker = React.useMemo(() => url ?? cluster.url, [cluster.url, url]);
46
+ return /* @__PURE__ */ React__default.default.createElement(WalletUiGillContext.Provider, { value: React.useMemo(() => gill.createSolanaClient({ urlOrMoniker }), [urlOrMoniker]) }, children);
45
47
  }
46
48
 
47
49
  exports.WalletUiGillContext = WalletUiGillContext;
48
- exports.WalletUiGillContextProvider = WalletUiGillContextProvider;
50
+ exports.WalletUiGillProvider = WalletUiGillProvider;
51
+ exports.getSolanaClusterMoniker = getSolanaClusterMoniker;
49
52
  exports.useWalletUiGill = useWalletUiGill;
50
53
  exports.useWalletUiSignAndSend = useWalletUiSignAndSend;
54
+ Object.keys(react$2).forEach(function (k) {
55
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
56
+ enumerable: true,
57
+ get: function () { return react$2[k]; }
58
+ });
59
+ });
51
60
  Object.keys(react).forEach(function (k) {
52
61
  if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
53
62
  enumerable: true,
@@ -78,11 +87,5 @@ Object.keys(core$1).forEach(function (k) {
78
87
  get: function () { return core$1[k]; }
79
88
  });
80
89
  });
81
- Object.keys(react$2).forEach(function (k) {
82
- if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
83
- enumerable: true,
84
- get: function () { return react$2[k]; }
85
- });
86
- });
87
90
  //# sourceMappingURL=index.browser.cjs.map
88
91
  //# sourceMappingURL=index.browser.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-context-provider.tsx"],"names":["createContext","useContext","createTransaction","signAndSendTransactionMessageWithSigners","getBase58Decoder","React","useMemo","createSolanaClient"],"mappings":";;;;;;;;;;;;;;;;AAQa,IAAA,mBAAA,GAAsBA,mBAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAOC,iBAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAcC,sBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAMC,6CAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAAC,qBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;ACjBO,SAAS,2BAA4B,CAAA,EAAE,QAAU,EAAA,YAAA,EAAkD,EAAA;AACtG,EACI,uBAAAC,sBAAA,CAAA,aAAA;AAAA,IAAC,mBAAoB,CAAA,QAAA;AAAA,IAApB;AAAA,MACG,KAAA,EAAOC,aAAQ,CAAA,MAAMC,uBAAmB,CAAA,EAAE,cAAc,CAAA,EAAmB,CAAC,YAAY,CAAC;AAAA,KAAA;AAAA,IAExF;AAAA,GACL;AAER","file":"index.browser.cjs","sourcesContent":["import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { createSolanaClient, SolanaClient } from 'gill';\nimport React, { useMemo } from 'react';\n\nimport { WalletUiGillContext, WalletUiGillContextProviderProps } from './wallet-ui-gill-context';\n\nexport function WalletUiGillContextProvider({ children, urlOrMoniker }: WalletUiGillContextProviderProps) {\n return (\n <WalletUiGillContext.Provider\n value={useMemo(() => createSolanaClient({ urlOrMoniker }) as SolanaClient, [urlOrMoniker])}\n >\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/get-solana-cluster-moniker.ts","../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-provider.tsx"],"names":["createContext","useContext","createTransaction","signAndSendTransactionMessageWithSigners","getBase58Decoder","useWalletUiCluster","useMemo","createSolanaClient"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAAS,wBAAwB,SAAkD,EAAA;AACtF,EAAA,IAAI,CAAC,SAAA,CAAU,UAAW,CAAA,SAAS,CAAG,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA,CAAM,CAAuB,oBAAA,EAAA,SAAS,CAAE,CAAA,CAAA;AAAA;AAEtD,EAAO,OAAA,SAAA,CAAU,OAAQ,CAAA,SAAA,EAAW,EAAE,CAAA;AAC1C;ACAa,IAAA,mBAAA,GAAsBA,mBAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAOC,iBAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAcC,sBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAMC,6CAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAAC,qBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;AChBO,SAAS,oBAAqB,CAAA,EAAE,QAAU,EAAA,GAAA,EAA8C,EAAA;AAC3F,EAAM,MAAA,EAAE,OAAQ,EAAA,GAAIC,0BAAmB,EAAA;AACvC,EAAM,MAAA,YAAA,GAAeC,aAAQ,CAAA,MAAM,GAAO,IAAA,OAAA,CAAQ,KAAK,CAAC,OAAA,CAAQ,GAAK,EAAA,GAAG,CAAC,CAAA;AACzE,EAAA,4DACK,mBAAoB,CAAA,QAAA,EAApB,EAA6B,KAAA,EAAOA,cAAQ,MAAMC,uBAAA,CAAmB,EAAE,YAAA,EAAc,CAAG,EAAA,CAAC,YAAY,CAAC,KAClG,QACL,CAAA;AAER","file":"index.browser.cjs","sourcesContent":["import { SolanaClusterId } from '@wallet-ui/core';\nimport type { SolanaClusterMoniker } from 'gill';\n\nexport function getSolanaClusterMoniker(clusterId: SolanaClusterId): SolanaClusterMoniker {\n if (!clusterId.startsWith('solana:')) {\n throw new Error(`Invalid cluster id: ${clusterId}`);\n }\n return clusterId.replace('solana:', '') as SolanaClusterMoniker;\n}\n","import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { useWalletUiCluster } from '@wallet-ui/react';\nimport { createSolanaClient } from 'gill';\nimport React, { ReactNode, useMemo } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function WalletUiGillProvider({ children, url }: { children: ReactNode; url?: string }) {\n const { cluster } = useWalletUiCluster();\n const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);\n return (\n <WalletUiGillContext.Provider value={useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])}>\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
@@ -1,13 +1,20 @@
1
1
  import React, { createContext, useContext, useMemo } from 'react';
2
2
  import { createTransaction, signAndSendTransactionMessageWithSigners, getBase58Decoder, createSolanaClient } from 'gill';
3
+ import { useWalletUiCluster } from '@wallet-ui/react';
4
+ export * from '@wallet-ui/react';
3
5
  export * from '@solana/react';
4
6
  export * from '@solana/wallet-standard-features';
5
7
  export * from '@wallet-standard/core';
6
8
  export * from '@wallet-standard/react';
7
9
  export * from '@wallet-ui/core';
8
- export * from '@wallet-ui/react';
9
10
 
10
- // src/use-wallet-ui-gill.tsx
11
+ // src/get-solana-cluster-moniker.ts
12
+ function getSolanaClusterMoniker(clusterId) {
13
+ if (!clusterId.startsWith("solana:")) {
14
+ throw new Error(`Invalid cluster id: ${clusterId}`);
15
+ }
16
+ return clusterId.replace("solana:", "");
17
+ }
11
18
  var WalletUiGillContext = createContext({});
12
19
 
13
20
  // src/use-wallet-ui-gill.tsx
@@ -28,16 +35,12 @@ function useWalletUiSignAndSend() {
28
35
  return getBase58Decoder().decode(signature);
29
36
  };
30
37
  }
31
- function WalletUiGillContextProvider({ children, urlOrMoniker }) {
32
- return /* @__PURE__ */ React.createElement(
33
- WalletUiGillContext.Provider,
34
- {
35
- value: useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])
36
- },
37
- children
38
- );
38
+ function WalletUiGillProvider({ children, url }) {
39
+ const { cluster } = useWalletUiCluster();
40
+ const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);
41
+ return /* @__PURE__ */ React.createElement(WalletUiGillContext.Provider, { value: useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker]) }, children);
39
42
  }
40
43
 
41
- export { WalletUiGillContext, WalletUiGillContextProvider, useWalletUiGill, useWalletUiSignAndSend };
44
+ export { WalletUiGillContext, WalletUiGillProvider, getSolanaClusterMoniker, useWalletUiGill, useWalletUiSignAndSend };
42
45
  //# sourceMappingURL=index.browser.mjs.map
43
46
  //# sourceMappingURL=index.browser.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-context-provider.tsx"],"names":[],"mappings":";;;;;;;;;;AAQa,IAAA,mBAAA,GAAsB,aAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAO,WAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAc,iBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAM,wCAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAA,gBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;ACjBO,SAAS,2BAA4B,CAAA,EAAE,QAAU,EAAA,YAAA,EAAkD,EAAA;AACtG,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,mBAAoB,CAAA,QAAA;AAAA,IAApB;AAAA,MACG,KAAA,EAAO,OAAQ,CAAA,MAAM,kBAAmB,CAAA,EAAE,cAAc,CAAA,EAAmB,CAAC,YAAY,CAAC;AAAA,KAAA;AAAA,IAExF;AAAA,GACL;AAER","file":"index.browser.mjs","sourcesContent":["import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { createSolanaClient, SolanaClient } from 'gill';\nimport React, { useMemo } from 'react';\n\nimport { WalletUiGillContext, WalletUiGillContextProviderProps } from './wallet-ui-gill-context';\n\nexport function WalletUiGillContextProvider({ children, urlOrMoniker }: WalletUiGillContextProviderProps) {\n return (\n <WalletUiGillContext.Provider\n value={useMemo(() => createSolanaClient({ urlOrMoniker }) as SolanaClient, [urlOrMoniker])}\n >\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/get-solana-cluster-moniker.ts","../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-provider.tsx"],"names":[],"mappings":";;;;;;;;;;;AAGO,SAAS,wBAAwB,SAAkD,EAAA;AACtF,EAAA,IAAI,CAAC,SAAA,CAAU,UAAW,CAAA,SAAS,CAAG,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA,CAAM,CAAuB,oBAAA,EAAA,SAAS,CAAE,CAAA,CAAA;AAAA;AAEtD,EAAO,OAAA,SAAA,CAAU,OAAQ,CAAA,SAAA,EAAW,EAAE,CAAA;AAC1C;ACAa,IAAA,mBAAA,GAAsB,aAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAO,WAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAc,iBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAM,wCAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAA,gBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;AChBO,SAAS,oBAAqB,CAAA,EAAE,QAAU,EAAA,GAAA,EAA8C,EAAA;AAC3F,EAAM,MAAA,EAAE,OAAQ,EAAA,GAAI,kBAAmB,EAAA;AACvC,EAAM,MAAA,YAAA,GAAe,OAAQ,CAAA,MAAM,GAAO,IAAA,OAAA,CAAQ,KAAK,CAAC,OAAA,CAAQ,GAAK,EAAA,GAAG,CAAC,CAAA;AACzE,EAAA,2CACK,mBAAoB,CAAA,QAAA,EAApB,EAA6B,KAAA,EAAO,QAAQ,MAAM,kBAAA,CAAmB,EAAE,YAAA,EAAc,CAAG,EAAA,CAAC,YAAY,CAAC,KAClG,QACL,CAAA;AAER","file":"index.browser.mjs","sourcesContent":["import { SolanaClusterId } from '@wallet-ui/core';\nimport type { SolanaClusterMoniker } from 'gill';\n\nexport function getSolanaClusterMoniker(clusterId: SolanaClusterId): SolanaClusterMoniker {\n if (!clusterId.startsWith('solana:')) {\n throw new Error(`Invalid cluster id: ${clusterId}`);\n }\n return clusterId.replace('solana:', '') as SolanaClusterMoniker;\n}\n","import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { useWalletUiCluster } from '@wallet-ui/react';\nimport { createSolanaClient } from 'gill';\nimport React, { ReactNode, useMemo } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function WalletUiGillProvider({ children, url }: { children: ReactNode; url?: string }) {\n const { cluster } = useWalletUiCluster();\n const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);\n return (\n <WalletUiGillContext.Provider value={useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])}>\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
@@ -1,13 +1,20 @@
1
1
  import React, { createContext, useContext, useMemo } from 'react';
2
2
  import { createTransaction, signAndSendTransactionMessageWithSigners, getBase58Decoder, createSolanaClient } from 'gill';
3
+ import { useWalletUiCluster } from '@wallet-ui/react';
4
+ export * from '@wallet-ui/react';
3
5
  export * from '@solana/react';
4
6
  export * from '@solana/wallet-standard-features';
5
7
  export * from '@wallet-standard/core';
6
8
  export * from '@wallet-standard/react';
7
9
  export * from '@wallet-ui/core';
8
- export * from '@wallet-ui/react';
9
10
 
10
- // src/use-wallet-ui-gill.tsx
11
+ // src/get-solana-cluster-moniker.ts
12
+ function getSolanaClusterMoniker(clusterId) {
13
+ if (!clusterId.startsWith("solana:")) {
14
+ throw new Error(`Invalid cluster id: ${clusterId}`);
15
+ }
16
+ return clusterId.replace("solana:", "");
17
+ }
11
18
  var WalletUiGillContext = createContext({});
12
19
 
13
20
  // src/use-wallet-ui-gill.tsx
@@ -28,16 +35,12 @@ function useWalletUiSignAndSend() {
28
35
  return getBase58Decoder().decode(signature);
29
36
  };
30
37
  }
31
- function WalletUiGillContextProvider({ children, urlOrMoniker }) {
32
- return /* @__PURE__ */ React.createElement(
33
- WalletUiGillContext.Provider,
34
- {
35
- value: useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])
36
- },
37
- children
38
- );
38
+ function WalletUiGillProvider({ children, url }) {
39
+ const { cluster } = useWalletUiCluster();
40
+ const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);
41
+ return /* @__PURE__ */ React.createElement(WalletUiGillContext.Provider, { value: useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker]) }, children);
39
42
  }
40
43
 
41
- export { WalletUiGillContext, WalletUiGillContextProvider, useWalletUiGill, useWalletUiSignAndSend };
44
+ export { WalletUiGillContext, WalletUiGillProvider, getSolanaClusterMoniker, useWalletUiGill, useWalletUiSignAndSend };
42
45
  //# sourceMappingURL=index.native.mjs.map
43
46
  //# sourceMappingURL=index.native.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-context-provider.tsx"],"names":[],"mappings":";;;;;;;;;;AAQa,IAAA,mBAAA,GAAsB,aAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAO,WAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAc,iBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAM,wCAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAA,gBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;ACjBO,SAAS,2BAA4B,CAAA,EAAE,QAAU,EAAA,YAAA,EAAkD,EAAA;AACtG,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,mBAAoB,CAAA,QAAA;AAAA,IAApB;AAAA,MACG,KAAA,EAAO,OAAQ,CAAA,MAAM,kBAAmB,CAAA,EAAE,cAAc,CAAA,EAAmB,CAAC,YAAY,CAAC;AAAA,KAAA;AAAA,IAExF;AAAA,GACL;AAER","file":"index.native.mjs","sourcesContent":["import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { createSolanaClient, SolanaClient } from 'gill';\nimport React, { useMemo } from 'react';\n\nimport { WalletUiGillContext, WalletUiGillContextProviderProps } from './wallet-ui-gill-context';\n\nexport function WalletUiGillContextProvider({ children, urlOrMoniker }: WalletUiGillContextProviderProps) {\n return (\n <WalletUiGillContext.Provider\n value={useMemo(() => createSolanaClient({ urlOrMoniker }) as SolanaClient, [urlOrMoniker])}\n >\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/get-solana-cluster-moniker.ts","../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-provider.tsx"],"names":[],"mappings":";;;;;;;;;;;AAGO,SAAS,wBAAwB,SAAkD,EAAA;AACtF,EAAA,IAAI,CAAC,SAAA,CAAU,UAAW,CAAA,SAAS,CAAG,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA,CAAM,CAAuB,oBAAA,EAAA,SAAS,CAAE,CAAA,CAAA;AAAA;AAEtD,EAAO,OAAA,SAAA,CAAU,OAAQ,CAAA,SAAA,EAAW,EAAE,CAAA;AAC1C;ACAa,IAAA,mBAAA,GAAsB,aAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAO,WAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAc,iBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAM,wCAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAA,gBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;AChBO,SAAS,oBAAqB,CAAA,EAAE,QAAU,EAAA,GAAA,EAA8C,EAAA;AAC3F,EAAM,MAAA,EAAE,OAAQ,EAAA,GAAI,kBAAmB,EAAA;AACvC,EAAM,MAAA,YAAA,GAAe,OAAQ,CAAA,MAAM,GAAO,IAAA,OAAA,CAAQ,KAAK,CAAC,OAAA,CAAQ,GAAK,EAAA,GAAG,CAAC,CAAA;AACzE,EAAA,2CACK,mBAAoB,CAAA,QAAA,EAApB,EAA6B,KAAA,EAAO,QAAQ,MAAM,kBAAA,CAAmB,EAAE,YAAA,EAAc,CAAG,EAAA,CAAC,YAAY,CAAC,KAClG,QACL,CAAA;AAER","file":"index.native.mjs","sourcesContent":["import { SolanaClusterId } from '@wallet-ui/core';\nimport type { SolanaClusterMoniker } from 'gill';\n\nexport function getSolanaClusterMoniker(clusterId: SolanaClusterId): SolanaClusterMoniker {\n if (!clusterId.startsWith('solana:')) {\n throw new Error(`Invalid cluster id: ${clusterId}`);\n }\n return clusterId.replace('solana:', '') as SolanaClusterMoniker;\n}\n","import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { useWalletUiCluster } from '@wallet-ui/react';\nimport { createSolanaClient } from 'gill';\nimport React, { ReactNode, useMemo } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function WalletUiGillProvider({ children, url }: { children: ReactNode; url?: string }) {\n const { cluster } = useWalletUiCluster();\n const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);\n return (\n <WalletUiGillContext.Provider value={useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])}>\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
@@ -2,18 +2,24 @@
2
2
 
3
3
  var React = require('react');
4
4
  var gill = require('gill');
5
+ var react$2 = require('@wallet-ui/react');
5
6
  var react = require('@solana/react');
6
7
  var walletStandardFeatures = require('@solana/wallet-standard-features');
7
8
  var core = require('@wallet-standard/core');
8
9
  var react$1 = require('@wallet-standard/react');
9
10
  var core$1 = require('@wallet-ui/core');
10
- var react$2 = require('@wallet-ui/react');
11
11
 
12
12
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
13
13
 
14
14
  var React__default = /*#__PURE__*/_interopDefault(React);
15
15
 
16
- // src/use-wallet-ui-gill.tsx
16
+ // src/get-solana-cluster-moniker.ts
17
+ function getSolanaClusterMoniker(clusterId) {
18
+ if (!clusterId.startsWith("solana:")) {
19
+ throw new Error(`Invalid cluster id: ${clusterId}`);
20
+ }
21
+ return clusterId.replace("solana:", "");
22
+ }
17
23
  var WalletUiGillContext = React.createContext({});
18
24
 
19
25
  // src/use-wallet-ui-gill.tsx
@@ -34,20 +40,23 @@ function useWalletUiSignAndSend() {
34
40
  return gill.getBase58Decoder().decode(signature);
35
41
  };
36
42
  }
37
- function WalletUiGillContextProvider({ children, urlOrMoniker }) {
38
- return /* @__PURE__ */ React__default.default.createElement(
39
- WalletUiGillContext.Provider,
40
- {
41
- value: React.useMemo(() => gill.createSolanaClient({ urlOrMoniker }), [urlOrMoniker])
42
- },
43
- children
44
- );
43
+ function WalletUiGillProvider({ children, url }) {
44
+ const { cluster } = react$2.useWalletUiCluster();
45
+ const urlOrMoniker = React.useMemo(() => url ?? cluster.url, [cluster.url, url]);
46
+ return /* @__PURE__ */ React__default.default.createElement(WalletUiGillContext.Provider, { value: React.useMemo(() => gill.createSolanaClient({ urlOrMoniker }), [urlOrMoniker]) }, children);
45
47
  }
46
48
 
47
49
  exports.WalletUiGillContext = WalletUiGillContext;
48
- exports.WalletUiGillContextProvider = WalletUiGillContextProvider;
50
+ exports.WalletUiGillProvider = WalletUiGillProvider;
51
+ exports.getSolanaClusterMoniker = getSolanaClusterMoniker;
49
52
  exports.useWalletUiGill = useWalletUiGill;
50
53
  exports.useWalletUiSignAndSend = useWalletUiSignAndSend;
54
+ Object.keys(react$2).forEach(function (k) {
55
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
56
+ enumerable: true,
57
+ get: function () { return react$2[k]; }
58
+ });
59
+ });
51
60
  Object.keys(react).forEach(function (k) {
52
61
  if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
53
62
  enumerable: true,
@@ -78,11 +87,5 @@ Object.keys(core$1).forEach(function (k) {
78
87
  get: function () { return core$1[k]; }
79
88
  });
80
89
  });
81
- Object.keys(react$2).forEach(function (k) {
82
- if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
83
- enumerable: true,
84
- get: function () { return react$2[k]; }
85
- });
86
- });
87
90
  //# sourceMappingURL=index.node.cjs.map
88
91
  //# sourceMappingURL=index.node.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-context-provider.tsx"],"names":["createContext","useContext","createTransaction","signAndSendTransactionMessageWithSigners","getBase58Decoder","React","useMemo","createSolanaClient"],"mappings":";;;;;;;;;;;;;;;;AAQa,IAAA,mBAAA,GAAsBA,mBAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAOC,iBAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAcC,sBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAMC,6CAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAAC,qBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;ACjBO,SAAS,2BAA4B,CAAA,EAAE,QAAU,EAAA,YAAA,EAAkD,EAAA;AACtG,EACI,uBAAAC,sBAAA,CAAA,aAAA;AAAA,IAAC,mBAAoB,CAAA,QAAA;AAAA,IAApB;AAAA,MACG,KAAA,EAAOC,aAAQ,CAAA,MAAMC,uBAAmB,CAAA,EAAE,cAAc,CAAA,EAAmB,CAAC,YAAY,CAAC;AAAA,KAAA;AAAA,IAExF;AAAA,GACL;AAER","file":"index.node.cjs","sourcesContent":["import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { createSolanaClient, SolanaClient } from 'gill';\nimport React, { useMemo } from 'react';\n\nimport { WalletUiGillContext, WalletUiGillContextProviderProps } from './wallet-ui-gill-context';\n\nexport function WalletUiGillContextProvider({ children, urlOrMoniker }: WalletUiGillContextProviderProps) {\n return (\n <WalletUiGillContext.Provider\n value={useMemo(() => createSolanaClient({ urlOrMoniker }) as SolanaClient, [urlOrMoniker])}\n >\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/get-solana-cluster-moniker.ts","../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-provider.tsx"],"names":["createContext","useContext","createTransaction","signAndSendTransactionMessageWithSigners","getBase58Decoder","useWalletUiCluster","useMemo","createSolanaClient"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAAS,wBAAwB,SAAkD,EAAA;AACtF,EAAA,IAAI,CAAC,SAAA,CAAU,UAAW,CAAA,SAAS,CAAG,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA,CAAM,CAAuB,oBAAA,EAAA,SAAS,CAAE,CAAA,CAAA;AAAA;AAEtD,EAAO,OAAA,SAAA,CAAU,OAAQ,CAAA,SAAA,EAAW,EAAE,CAAA;AAC1C;ACAa,IAAA,mBAAA,GAAsBA,mBAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAOC,iBAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAcC,sBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAMC,6CAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAAC,qBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;AChBO,SAAS,oBAAqB,CAAA,EAAE,QAAU,EAAA,GAAA,EAA8C,EAAA;AAC3F,EAAM,MAAA,EAAE,OAAQ,EAAA,GAAIC,0BAAmB,EAAA;AACvC,EAAM,MAAA,YAAA,GAAeC,aAAQ,CAAA,MAAM,GAAO,IAAA,OAAA,CAAQ,KAAK,CAAC,OAAA,CAAQ,GAAK,EAAA,GAAG,CAAC,CAAA;AACzE,EAAA,4DACK,mBAAoB,CAAA,QAAA,EAApB,EAA6B,KAAA,EAAOA,cAAQ,MAAMC,uBAAA,CAAmB,EAAE,YAAA,EAAc,CAAG,EAAA,CAAC,YAAY,CAAC,KAClG,QACL,CAAA;AAER","file":"index.node.cjs","sourcesContent":["import { SolanaClusterId } from '@wallet-ui/core';\nimport type { SolanaClusterMoniker } from 'gill';\n\nexport function getSolanaClusterMoniker(clusterId: SolanaClusterId): SolanaClusterMoniker {\n if (!clusterId.startsWith('solana:')) {\n throw new Error(`Invalid cluster id: ${clusterId}`);\n }\n return clusterId.replace('solana:', '') as SolanaClusterMoniker;\n}\n","import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { useWalletUiCluster } from '@wallet-ui/react';\nimport { createSolanaClient } from 'gill';\nimport React, { ReactNode, useMemo } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function WalletUiGillProvider({ children, url }: { children: ReactNode; url?: string }) {\n const { cluster } = useWalletUiCluster();\n const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);\n return (\n <WalletUiGillContext.Provider value={useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])}>\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
@@ -1,13 +1,20 @@
1
1
  import React, { createContext, useContext, useMemo } from 'react';
2
2
  import { createTransaction, signAndSendTransactionMessageWithSigners, getBase58Decoder, createSolanaClient } from 'gill';
3
+ import { useWalletUiCluster } from '@wallet-ui/react';
4
+ export * from '@wallet-ui/react';
3
5
  export * from '@solana/react';
4
6
  export * from '@solana/wallet-standard-features';
5
7
  export * from '@wallet-standard/core';
6
8
  export * from '@wallet-standard/react';
7
9
  export * from '@wallet-ui/core';
8
- export * from '@wallet-ui/react';
9
10
 
10
- // src/use-wallet-ui-gill.tsx
11
+ // src/get-solana-cluster-moniker.ts
12
+ function getSolanaClusterMoniker(clusterId) {
13
+ if (!clusterId.startsWith("solana:")) {
14
+ throw new Error(`Invalid cluster id: ${clusterId}`);
15
+ }
16
+ return clusterId.replace("solana:", "");
17
+ }
11
18
  var WalletUiGillContext = createContext({});
12
19
 
13
20
  // src/use-wallet-ui-gill.tsx
@@ -28,16 +35,12 @@ function useWalletUiSignAndSend() {
28
35
  return getBase58Decoder().decode(signature);
29
36
  };
30
37
  }
31
- function WalletUiGillContextProvider({ children, urlOrMoniker }) {
32
- return /* @__PURE__ */ React.createElement(
33
- WalletUiGillContext.Provider,
34
- {
35
- value: useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])
36
- },
37
- children
38
- );
38
+ function WalletUiGillProvider({ children, url }) {
39
+ const { cluster } = useWalletUiCluster();
40
+ const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);
41
+ return /* @__PURE__ */ React.createElement(WalletUiGillContext.Provider, { value: useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker]) }, children);
39
42
  }
40
43
 
41
- export { WalletUiGillContext, WalletUiGillContextProvider, useWalletUiGill, useWalletUiSignAndSend };
44
+ export { WalletUiGillContext, WalletUiGillProvider, getSolanaClusterMoniker, useWalletUiGill, useWalletUiSignAndSend };
42
45
  //# sourceMappingURL=index.node.mjs.map
43
46
  //# sourceMappingURL=index.node.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-context-provider.tsx"],"names":[],"mappings":";;;;;;;;;;AAQa,IAAA,mBAAA,GAAsB,aAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAO,WAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAc,iBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAM,wCAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAA,gBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;ACjBO,SAAS,2BAA4B,CAAA,EAAE,QAAU,EAAA,YAAA,EAAkD,EAAA;AACtG,EACI,uBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,mBAAoB,CAAA,QAAA;AAAA,IAApB;AAAA,MACG,KAAA,EAAO,OAAQ,CAAA,MAAM,kBAAmB,CAAA,EAAE,cAAc,CAAA,EAAmB,CAAC,YAAY,CAAC;AAAA,KAAA;AAAA,IAExF;AAAA,GACL;AAER","file":"index.node.mjs","sourcesContent":["import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { createSolanaClient, SolanaClient } from 'gill';\nimport React, { useMemo } from 'react';\n\nimport { WalletUiGillContext, WalletUiGillContextProviderProps } from './wallet-ui-gill-context';\n\nexport function WalletUiGillContextProvider({ children, urlOrMoniker }: WalletUiGillContextProviderProps) {\n return (\n <WalletUiGillContext.Provider\n value={useMemo(() => createSolanaClient({ urlOrMoniker }) as SolanaClient, [urlOrMoniker])}\n >\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/get-solana-cluster-moniker.ts","../src/wallet-ui-gill-context.tsx","../src/use-wallet-ui-gill.tsx","../src/use-wallet-ui-sign-and-send.tsx","../src/wallet-ui-gill-provider.tsx"],"names":[],"mappings":";;;;;;;;;;;AAGO,SAAS,wBAAwB,SAAkD,EAAA;AACtF,EAAA,IAAI,CAAC,SAAA,CAAU,UAAW,CAAA,SAAS,CAAG,EAAA;AAClC,IAAA,MAAM,IAAI,KAAA,CAAM,CAAuB,oBAAA,EAAA,SAAS,CAAE,CAAA,CAAA;AAAA;AAEtD,EAAO,OAAA,SAAA,CAAU,OAAQ,CAAA,SAAA,EAAW,EAAE,CAAA;AAC1C;ACAa,IAAA,mBAAA,GAAsB,aAA4B,CAAA,EAAkB;;;ACJ1E,SAAS,eAAkB,GAAA;AAC9B,EAAA,OAAO,WAAW,mBAAmB,CAAA;AACzC;ACDO,SAAS,sBAAyB,GAAA;AACrC,EAAA,MAAM,SAAS,eAAgB,EAAA;AAE/B,EAAO,OAAA,OAAO,IAAmC,MAAqC,KAAA;AAClF,IAAM,MAAA,EAAE,OAAO,eAAgB,EAAA,GAAI,MAAM,MAAO,CAAA,GAAA,CAAI,kBAAmB,EAAA,CAAE,IAAK,EAAA;AAE9E,IAAA,MAAM,cAAc,iBAAkB,CAAA;AAAA,MAClC,QAAU,EAAA,MAAA;AAAA,MACV,cAAc,KAAM,CAAA,OAAA,CAAQ,EAAE,CAAI,GAAA,EAAA,GAAK,CAAC,EAAE,CAAA;AAAA,MAC1C,eAAA;AAAA,MACA,OAAS,EAAA;AAAA,KACZ,CAAA;AAED,IAAM,MAAA,SAAA,GAAY,MAAM,wCAAA,CAAyC,WAAW,CAAA;AAE5E,IAAO,OAAA,gBAAA,EAAmB,CAAA,MAAA,CAAO,SAAS,CAAA;AAAA,GAC9C;AACJ;AChBO,SAAS,oBAAqB,CAAA,EAAE,QAAU,EAAA,GAAA,EAA8C,EAAA;AAC3F,EAAM,MAAA,EAAE,OAAQ,EAAA,GAAI,kBAAmB,EAAA;AACvC,EAAM,MAAA,YAAA,GAAe,OAAQ,CAAA,MAAM,GAAO,IAAA,OAAA,CAAQ,KAAK,CAAC,OAAA,CAAQ,GAAK,EAAA,GAAG,CAAC,CAAA;AACzE,EAAA,2CACK,mBAAoB,CAAA,QAAA,EAApB,EAA6B,KAAA,EAAO,QAAQ,MAAM,kBAAA,CAAmB,EAAE,YAAA,EAAc,CAAG,EAAA,CAAC,YAAY,CAAC,KAClG,QACL,CAAA;AAER","file":"index.node.mjs","sourcesContent":["import { SolanaClusterId } from '@wallet-ui/core';\nimport type { SolanaClusterMoniker } from 'gill';\n\nexport function getSolanaClusterMoniker(clusterId: SolanaClusterId): SolanaClusterMoniker {\n if (!clusterId.startsWith('solana:')) {\n throw new Error(`Invalid cluster id: ${clusterId}`);\n }\n return clusterId.replace('solana:', '') as SolanaClusterMoniker;\n}\n","import { SolanaClient, SolanaClientUrlOrMoniker } from 'gill';\nimport { createContext, ReactNode } from 'react';\n\nexport interface WalletUiGillContextProviderProps {\n children: ReactNode;\n urlOrMoniker: SolanaClientUrlOrMoniker;\n}\n\nexport const WalletUiGillContext = createContext<SolanaClient>({} as SolanaClient);\n","import { useContext } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function useWalletUiGill() {\n return useContext(WalletUiGillContext);\n}\n","import type { IInstruction, TransactionSendingSigner } from 'gill';\nimport { createTransaction, getBase58Decoder, signAndSendTransactionMessageWithSigners } from 'gill';\n\nimport { useWalletUiGill } from './use-wallet-ui-gill';\n\nexport function useWalletUiSignAndSend() {\n const client = useWalletUiGill();\n\n return async (ix: IInstruction | IInstruction[], signer: TransactionSendingSigner) => {\n const { value: latestBlockhash } = await client.rpc.getLatestBlockhash().send();\n\n const transaction = createTransaction({\n feePayer: signer,\n instructions: Array.isArray(ix) ? ix : [ix],\n latestBlockhash,\n version: 0,\n });\n\n const signature = await signAndSendTransactionMessageWithSigners(transaction);\n\n return getBase58Decoder().decode(signature);\n };\n}\n","import { useWalletUiCluster } from '@wallet-ui/react';\nimport { createSolanaClient } from 'gill';\nimport React, { ReactNode, useMemo } from 'react';\n\nimport { WalletUiGillContext } from './wallet-ui-gill-context';\n\nexport function WalletUiGillProvider({ children, url }: { children: ReactNode; url?: string }) {\n const { cluster } = useWalletUiCluster();\n const urlOrMoniker = useMemo(() => url ?? cluster.url, [cluster.url, url]);\n return (\n <WalletUiGillContext.Provider value={useMemo(() => createSolanaClient({ urlOrMoniker }), [urlOrMoniker])}>\n {children}\n </WalletUiGillContext.Provider>\n );\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import { SolanaClusterId } from '@wallet-ui/core';
2
+ import type { SolanaClusterMoniker } from 'gill';
3
+ export declare function getSolanaClusterMoniker(clusterId: SolanaClusterId): SolanaClusterMoniker;
4
+ //# sourceMappingURL=get-solana-cluster-moniker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-solana-cluster-moniker.d.ts","sourceRoot":"","sources":["../../src/get-solana-cluster-moniker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,MAAM,CAAC;AAEjD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,eAAe,GAAG,oBAAoB,CAKxF"}
@@ -1,7 +1,8 @@
1
+ export * from './get-solana-cluster-moniker';
1
2
  export * from './use-wallet-ui-gill';
2
3
  export * from './use-wallet-ui-sign-and-send';
3
4
  export * from './wallet-ui-gill-context';
4
- export * from './wallet-ui-gill-context-provider';
5
+ export * from './wallet-ui-gill-provider';
5
6
  export * from '@solana/react';
6
7
  export * from '@solana/wallet-standard-features';
7
8
  export * from '@wallet-standard/core';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAGlD,cAAc,eAAe,CAAC;AAC9B,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,eAAe,CAAC;AAC9B,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React, { ReactNode } from 'react';
2
+ export declare function WalletUiGillProvider({ children, url }: {
3
+ children: ReactNode;
4
+ url?: string;
5
+ }): React.JSX.Element;
6
+ //# sourceMappingURL=wallet-ui-gill-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-ui-gill-provider.d.ts","sourceRoot":"","sources":["../../src/wallet-ui-gill-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAW,MAAM,OAAO,CAAC;AAIlD,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,qBAQ5F"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wallet-ui/react-gill",
3
- "version": "2.0.0-canary-20250827010551",
3
+ "version": "2.0.0-canary-20250827030244",
4
4
  "description": "React components for Wallet UI",
5
5
  "exports": {
6
6
  ".": {
@@ -66,8 +66,8 @@
66
66
  "@zag-js/menu": "1.15.2",
67
67
  "@zag-js/react": "1.15.2",
68
68
  "nanostores": "^1.0.1",
69
- "@wallet-ui/core": "2.0.0-canary-20250827010551",
70
- "@wallet-ui/react": "2.0.0-canary-20250827010551"
69
+ "@wallet-ui/core": "2.0.0-canary-20250827030244",
70
+ "@wallet-ui/react": "2.0.0-canary-20250827030244"
71
71
  },
72
72
  "peerDependencies": {
73
73
  "gill": "^0.10.2",
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { WalletUiGillContextProviderProps } from './wallet-ui-gill-context';
3
- export declare function WalletUiGillContextProvider({ children, urlOrMoniker }: WalletUiGillContextProviderProps): React.JSX.Element;
4
- //# sourceMappingURL=wallet-ui-gill-context-provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wallet-ui-gill-context-provider.d.ts","sourceRoot":"","sources":["../../src/wallet-ui-gill-context-provider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAuB,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAEjG,wBAAgB,2BAA2B,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,gCAAgC,qBAQvG"}