@rango-dev/provider-tonconnect 0.22.1 → 0.22.2-next.1

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/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## [0.22.1](https://github.com/rango-exchange/rango-client/compare/provider-tonconnect@0.22.0...provider-tonconnect@0.22.1) (2026-06-02)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * remove null values from ton signer data and use raw address format ([9ca3f69](https://github.com/rango-exchange/rango-client/commit/9ca3f691e2a6bfe83d2377a565fd69f5c2b8ae45))
7
+
8
+
9
+
1
10
  # [0.22.0](https://github.com/rango-exchange/rango-client/compare/provider-tonconnect@0.21.1...provider-tonconnect@0.22.0) (2026-05-31)
2
11
 
3
12
 
@@ -1,4 +1,4 @@
1
- import type { Context, FunctionWithContext } from '@rango-dev/wallets-core';
1
+ import type { Context, FunctionWithContext } from '@hub3js/core';
2
2
  import type { TonConnectUI } from '@tonconnect/ui';
3
3
  import { type TonActions } from '@rango-dev/wallets-core/namespaces/ton';
4
4
  export declare function connect(getInstance: () => TonConnectUI): FunctionWithContext<TonActions['connect'], Context>;
@@ -1 +1 @@
1
- {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../src/actions/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,KAAK,UAAU,EAAS,MAAM,wCAAwC,CAAC;AAIhF,wBAAgB,OAAO,CACrB,WAAW,EAAE,MAAM,YAAY,GAC9B,mBAAmB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAiBrD;AAED,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,YAAY,GAC9B,mBAAmB,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAM7D;AAED,eAAO,MAAM,UAAU;;;CAA+B,CAAC"}
1
+ {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../src/actions/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,KAAK,UAAU,EAAS,MAAM,wCAAwC,CAAC;AAIhF,wBAAgB,OAAO,CACrB,WAAW,EAAE,MAAM,YAAY,GAC9B,mBAAmB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAiBrD;AAED,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,YAAY,GAC9B,mBAAmB,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAM7D;AAED,eAAO,MAAM,UAAU;;;CAA+B,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ProviderMetadata } from '@rango-dev/wallets-core';
1
+ import type { ProviderMetadata } from '@hub3js/core';
2
2
  import { WalletTypes } from '@rango-dev/wallets-shared';
3
3
  export declare const WALLET_ID = WalletTypes.TON_CONNECT;
4
4
  export declare const metadata: ProviderMetadata;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAMxD,eAAO,MAAM,SAAS,0BAA0B,CAAC;AAEjD,eAAO,MAAM,QAAQ,EAAE,gBA6BtB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAMxD,eAAO,MAAM,SAAS,0BAA0B,CAAC;AAEjD,eAAO,MAAM,QAAQ,EAAE,gBA6BtB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Context, Subscriber, SubscriberCleanUp } from '@rango-dev/wallets-core';
1
+ import type { Context, Subscriber, SubscriberCleanUp } from '@hub3js/core';
2
2
  import type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';
3
3
  import type { TonConnectUI } from '@tonconnect/ui';
4
4
  declare function getDisconnectSubscriber(instance: () => TonConnectUI): [Subscriber<TonActions>, SubscriberCleanUp<TonActions>];
@@ -1 +1 @@
1
- {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../src/hooks/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,OAAO,EACP,UAAU,EACV,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,KAAK,EAGV,YAAY,EACb,MAAM,gBAAgB,CAAC;AAIxB,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,MAAM,YAAY,GAC3B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAmCzD;AAED,wBAAsB,wBAAwB,CAAC,CAAC,EAAE,OAAO,iBAKxD;AAED,eAAO,MAAM,QAAQ;;;CAAwD,CAAC"}
1
+ {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../src/hooks/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,OAAO,EACP,UAAU,EACV,iBAAiB,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,KAAK,EAGV,YAAY,EACb,MAAM,gBAAgB,CAAC;AAIxB,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,MAAM,YAAY,GAC3B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAmCzD;AAED,wBAAsB,wBAAwB,CAAC,CAAC,EAAE,OAAO,iBAKxD;AAED,eAAO,MAAM,QAAQ;;;CAAwD,CAAC"}
package/dist/mod.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export type { Environments } from './types.js';
2
- declare const versions: () => import("@rango-dev/wallets-core/utils").VersionedProviders;
2
+ declare const versions: () => readonly [readonly ["1.0.0", import("@hub3js/core").Provider<Record<"ton", import("@rango-dev/wallets-core/namespaces/ton").TonActions>>]];
3
3
  export { versions };
4
4
  //# sourceMappingURL=mod.d.ts.map
package/dist/mod.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,QAAA,MAAM,QAAQ,kEAC8C,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,QAAA,MAAM,QAAQ,kJAC8C,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,CAAC"}
package/dist/mod.js CHANGED
@@ -1,2 +1,2 @@
1
- var h=Object.defineProperty;var o=(t,n)=>h(t,"name",{value:n,configurable:!0});var P=(t,n)=>()=>(t&&(n=t(t=0)),n);var M=(t,n)=>{for(var e in n)h(t,e,{get:n[e],enumerable:!0})};var y={};M(y,{CustomTonSigner:()=>l});import{Address as N,Cell as F}from"@ton/core";import{CHAIN as k}from"@tonconnect/ui";import{SignerError as W}from"rango-types";var l,w=P(()=>{"use strict";l=class{static{o(this,"CustomTonSigner")}provider;constructor(n){this.provider=n}async signMessage(){throw W.UnimplementedError("signMessage")}async signAndSendTx(n){let{blockChain:e,type:s,from:r,messages:c,...m}=n,a=await this.provider.sendTransaction({...m,...r&&{from:N.parse(r).toRawString()},messages:c.map(({stateInit:C,payload:T,...U})=>({...U,...C!=null&&{stateInit:C},...T!=null&&{payload:T}})),network:k.MAINNET});return{hash:F.fromBase64(a.boc).hash().toString("hex")}}}});import{defineVersions as en}from"@rango-dev/wallets-core/utils";import{ProviderBuilder as on}from"@rango-dev/wallets-core";import{WalletTypes as j}from"@rango-dev/wallets-shared";import{tonBlockchain as H}from"rango-types";import{dynamicImportWithRefinedError as R,getNetworkInstance as O,Networks as z}from"@rango-dev/wallets-shared";import{DefaultSignerFactory as D,TransactionType as B}from"rango-types";async function u(t){let n=O(t,z.TON),e=new D,{CustomTonSigner:s}=await R(async()=>await Promise.resolve().then(()=>(w(),y)));return e.registerSigner(B.TON,new s(n)),e}o(u,"getSigners");import{Networks as _}from"@rango-dev/wallets-shared";import{dynamicImportWithRefinedError as L}from"@rango-dev/wallets-shared";var d=class{static{o(this,"TonConnectAdapter")}#n;#t;async initialize(n){if(!n)throw new Error("Environments are not set");this.#n=await L(async()=>await import("@tonconnect/ui"));let{TonConnectUI:e}=this.#n;this.#t=new e(n)}getInstance(){if(!this.#t)throw new Error("TonConnect instance isn't initialized. Please ensure you have provided the TonConnect config.");return this.#t}getModule(){if(!this.#n)throw new Error("Couldn't initialize the TonConnect module");return this.#n}async waitForConnection(){let n=this.getInstance();return new Promise((e,s)=>{let r=n.onStatusChange(a=>{!!a?.account.address&&(m(),e(a.account.address))},a=>{m(),s(a)}),c=n.onModalStateChange(a=>{a.closeReason==="action-cancelled"&&(m(),s(new Error("The action was canceled by the user")))}),m=o(()=>{r(),c()},"unsubscribe")})}};var i=new d;function b(){let t=i.getInstance();return new Map([[_.TON,t]])}o(b,"getInstanceOrThrow");var p=j.TON_CONNECT,v={name:"TON Connect",icon:"https://raw.githubusercontent.com/rango-exchange/assets/7fb19ed5d5019b4d6a41ce91b39cde64f86af4c6/wallets/tonconnect/icon.svg",extensions:{homepage:"https://docs.ton.org/ecosystem/ton-connect/overview"},properties:[{name:"namespaces",value:{selection:"single",data:[{label:"Ton",value:"Ton",id:"TON",getSupportedChains:t=>H(t)}]}},{name:"signers",value:{getSigners:async()=>u(b())}}]};import{NamespaceBuilder as Q}from"@rango-dev/wallets-core";import{builders as X,standardizeAndThrowError as Y}from"@rango-dev/wallets-core/namespaces/common";import{builders as I}from"@rango-dev/wallets-core/namespaces/ton";import{utils as G}from"@rango-dev/wallets-core/namespaces/ton";function V(t){return async()=>{let n=t(),e=await n.connectionRestored,{toUserFriendlyAddress:s}=i.getModule(),r;if(e&&n.account?.address)r=s(n.account.address);else{await n.openModal();let c=await i.waitForConnection();r=s(c)}return G.formatAccountsToCAIP([r])}}o(V,"connect");function q(t){return async()=>await t().connectionRestored}o(q,"canEagerConnect");var f={connect:V,canEagerConnect:q};function J(t){let n,e;return[(s,r)=>{let c=t();if(!c)throw new Error("Trying to subscribe to your Ton wallet, but seems its instance is not available.");if(n=o(m=>{m||s.action("disconnect")},"eventCallback"),e=c.onStatusChange(n),r instanceof Error)throw r},(s,r)=>(e&&e(),r)]}o(J,"getDisconnectSubscriber");async function K(t){let n=i.getInstance();n.connected&&await n.disconnect()}o(K,"handleProviderDisconnect");var g={getDisconnectSubscriber:J,handleProviderDisconnect:K};var[Z,x]=g.getDisconnectSubscriber(i.getInstance.bind(i)),$=I.connect().action(f.connect(i.getInstance.bind(i))).and(Z).or(x).or(Y).build(),nn=I.canEagerConnect().action(f.canEagerConnect(i.getInstance.bind(i))).build(),tn=X.disconnect().before(g.handleProviderDisconnect).after(x).build(),S=new Q("Ton",p).action($).action(tn).action(nn).build();var E=o(()=>new on(p).init(function(t,n){let[,e]=t.state();async function s(){try{await i.initialize(n),console.debug("[ton] instance initialized.",t),e("installed",!0)}catch(r){console.warn("[ton] failed to initialize TonConnect:",r)}}o(s,"initializeTon"),s()}).config("metadata",v).add("ton",S).build(),"buildProvider");var Qn=o(()=>en().version("1.0.0",E()).build(),"versions");export{Qn as versions};
1
+ var h=Object.defineProperty;var o=(t,n)=>h(t,"name",{value:n,configurable:!0});var M=(t,n)=>()=>(t&&(n=t(t=0)),n);var N=(t,n)=>{for(var e in n)h(t,e,{get:n[e],enumerable:!0})};var y={};N(y,{CustomTonSigner:()=>u});import{Address as F,Cell as k}from"@ton/core";import{CHAIN as W}from"@tonconnect/ui";import{SignerError as R}from"rango-types";var u,b=M(()=>{"use strict";u=class{static{o(this,"CustomTonSigner")}provider;constructor(n){this.provider=n}async signMessage(){throw R.UnimplementedError("signMessage")}async signAndSendTx(n){let{blockChain:e,type:c,from:r,messages:s,...m}=n,a=await this.provider.sendTransaction({...m,...r&&{from:F.parse(r).toRawString()},messages:s.map(({stateInit:C,payload:T,...P})=>({...P,...C!=null&&{stateInit:C},...T!=null&&{payload:T}})),network:W.MAINNET});return{hash:k.fromBase64(a.boc).hash().toString("hex")}}}});import{defineVersions as en}from"@hub3js/core/utils";import{ProviderBuilder as on}from"@hub3js/core";import{WalletTypes as H}from"@rango-dev/wallets-shared";import{tonBlockchain as G}from"rango-types";import{dynamicImportWithRefinedError as O,getNetworkInstance as z,Networks as B}from"@rango-dev/wallets-shared";import{DefaultSignerFactory as D,TransactionType as j}from"rango-types";async function l(t){let n=z(t,B.TON),e=new D,{CustomTonSigner:c}=await O(async()=>await Promise.resolve().then(()=>(b(),y)));return e.registerSigner(j.TON,new c(n)),e}o(l,"getSigners");import{Networks as _}from"@rango-dev/wallets-shared";import{dynamicImportWithRefinedError as L}from"@rango-dev/wallets-shared";var p=class{static{o(this,"TonConnectAdapter")}#n;#t;async initialize(n){if(!n)throw new Error("Environments are not set");this.#n=await L(async()=>await import("@tonconnect/ui"));let{TonConnectUI:e}=this.#n;this.#t=new e(n)}getInstance(){if(!this.#t)throw new Error("TonConnect instance isn't initialized. Please ensure you have provided the TonConnect config.");return this.#t}getModule(){if(!this.#n)throw new Error("Couldn't initialize the TonConnect module");return this.#n}async waitForConnection(){let n=this.getInstance();return new Promise((e,c)=>{let r=n.onStatusChange(a=>{!!a?.account.address&&(m(),e(a.account.address))},a=>{m(),c(a)}),s=n.onModalStateChange(a=>{a.closeReason==="action-cancelled"&&(m(),c(new Error("The action was canceled by the user")))}),m=o(()=>{r(),s()},"unsubscribe")})}};var i=new p;function w(){let t=i.getInstance();return new Map([[_.TON,t]])}o(w,"getInstanceOrThrow");var d=H.TON_CONNECT,I={name:"TON Connect",icon:"https://raw.githubusercontent.com/rango-exchange/assets/7fb19ed5d5019b4d6a41ce91b39cde64f86af4c6/wallets/tonconnect/icon.svg",extensions:{homepage:"https://docs.ton.org/ecosystem/ton-connect/overview"},properties:[{name:"namespaces",value:{selection:"single",data:[{label:"Ton",value:"Ton",id:"TON",getSupportedChains:t=>G(t)}]}},{name:"signers",value:{getSigners:async()=>l(w())}}]};import{NamespaceBuilder as X}from"@hub3js/core";import*as v from"@hub3js/std/builders";import{standardizeAndThrowError as Y}from"@hub3js/std/operators";import{builders as x}from"@rango-dev/wallets-core/namespaces/ton";import{utils as V}from"@rango-dev/wallets-core/namespaces/ton";function q(t){return async()=>{let n=t(),e=await n.connectionRestored,{toUserFriendlyAddress:c}=i.getModule(),r;if(e&&n.account?.address)r=c(n.account.address);else{await n.openModal();let s=await i.waitForConnection();r=c(s)}return V.formatAccountsToCAIP([r])}}o(q,"connect");function J(t){return async()=>await t().connectionRestored}o(J,"canEagerConnect");var f={connect:q,canEagerConnect:J};function K(t){let n,e;return[(c,r)=>{let s=t();if(!s)throw new Error("Trying to subscribe to your Ton wallet, but seems its instance is not available.");if(n=o(m=>{m||c.action("disconnect")},"eventCallback"),e=s.onStatusChange(n),r instanceof Error)throw r},(c,r)=>(e&&e(),r)]}o(K,"getDisconnectSubscriber");async function Q(t){let n=i.getInstance();n.connected&&await n.disconnect()}o(Q,"handleProviderDisconnect");var g={getDisconnectSubscriber:K,handleProviderDisconnect:Q};var[Z,S]=g.getDisconnectSubscriber(i.getInstance.bind(i)),$=x.connect().action(f.connect(i.getInstance.bind(i))).and(Z).or(S).or(Y).build(),nn=x.canEagerConnect().action(f.canEagerConnect(i.getInstance.bind(i))).build(),tn=v.disconnect().before(g.handleProviderDisconnect).after(S).build(),E=new X("Ton",d).action($).action(tn).action(nn).build();var A=o(()=>new on(d).init(function(t,n){let[,e]=t.state();async function c(){try{await i.initialize(n),console.debug("[ton] instance initialized.",t),e("installed",!0)}catch(r){console.warn("[ton] failed to initialize TonConnect:",r)}}o(c,"initializeTon"),c()}).config("metadata",I).add("ton",E).build(),"buildProvider");var Qn=o(()=>en().version("1.0.0",A()).build(),"versions");export{Qn as versions};
2
2
  //# sourceMappingURL=mod.js.map
package/dist/mod.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/signers/ton.ts", "../src/mod.ts", "../src/provider.ts", "../src/constants.ts", "../src/signer.ts", "../src/utils.ts", "../src/tonConnectAdapter.ts", "../src/namespaces/ton.ts", "../src/actions/ton.ts", "../src/hooks/ton.ts"],
4
- "sourcesContent": ["import type { TonConnectUI } from '@tonconnect/ui';\nimport type { GenericSigner, TonTransaction } from 'rango-types';\n\nimport { Address, Cell } from '@ton/core';\nimport { CHAIN } from '@tonconnect/ui';\nimport { SignerError } from 'rango-types';\n\nexport class CustomTonSigner implements GenericSigner<TonTransaction> {\n private provider: TonConnectUI;\n\n constructor(provider: TonConnectUI) {\n this.provider = provider;\n }\n\n async signMessage(): Promise<string> {\n throw SignerError.UnimplementedError('signMessage');\n }\n\n async signAndSendTx(tx: TonTransaction): Promise<{ hash: string }> {\n const { blockChain, type, from, messages, ...rest } = tx;\n const result = await this.provider.sendTransaction({\n ...rest,\n ...(from && { from: Address.parse(from).toRawString() }),\n messages: messages.map(({ stateInit, payload, ...msg }) => ({\n ...msg,\n ...(stateInit != null && { stateInit }),\n ...(payload != null && { payload }),\n })),\n network: CHAIN.MAINNET,\n });\n\n const hash = Cell.fromBase64(result.boc).hash().toString('hex');\n return { hash };\n }\n}\n", "import { defineVersions } from '@rango-dev/wallets-core/utils';\n\nimport { buildProvider } from './provider.js';\n\nexport type { Environments } from './types.js';\n\nconst versions = () =>\n defineVersions().version('1.0.0', buildProvider()).build();\n\nexport { versions };\n", "import type { Environments } from './types.js';\n\nimport { ProviderBuilder } from '@rango-dev/wallets-core';\n\nimport { metadata, WALLET_ID } from './constants.js';\nimport { ton } from './namespaces/ton.js';\nimport { tonConnect } from './utils.js';\n\nconst buildProvider = () =>\n new ProviderBuilder(WALLET_ID)\n .init(function (context, environments: Environments) {\n const [, setState] = context.state();\n\n async function initializeTon() {\n try {\n await tonConnect.initialize(environments);\n console.debug('[ton] instance initialized.', context);\n setState('installed', true);\n } catch (err) {\n console.warn('[ton] failed to initialize TonConnect:', err);\n }\n }\n void initializeTon();\n })\n .config('metadata', metadata)\n .add('ton', ton)\n .build();\n\nexport { buildProvider };\n", "import type { ProviderMetadata } from '@rango-dev/wallets-core';\n\nimport { WalletTypes } from '@rango-dev/wallets-shared';\nimport { type BlockchainMeta, tonBlockchain } from 'rango-types';\n\nimport getSigners from './signer.js';\nimport { getInstanceOrThrow } from './utils.js';\n\nexport const WALLET_ID = WalletTypes.TON_CONNECT;\n\nexport const metadata: ProviderMetadata = {\n name: 'TON Connect',\n icon: 'https://raw.githubusercontent.com/rango-exchange/assets/7fb19ed5d5019b4d6a41ce91b39cde64f86af4c6/wallets/tonconnect/icon.svg',\n extensions: {\n homepage: 'https://docs.ton.org/ecosystem/ton-connect/overview',\n },\n properties: [\n {\n name: 'namespaces',\n value: {\n selection: 'single',\n data: [\n {\n label: 'Ton',\n value: 'Ton',\n id: 'TON',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n tonBlockchain(allBlockchains),\n },\n ],\n },\n },\n {\n name: 'signers',\n value: {\n getSigners: async () => getSigners(getInstanceOrThrow()),\n },\n },\n ],\n};\n", "import type { Provider } from './types.js';\nimport type { SignerFactory } from 'rango-types';\n\nimport {\n dynamicImportWithRefinedError,\n getNetworkInstance,\n Networks,\n} from '@rango-dev/wallets-shared';\nimport { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default async function getSigners(\n provider: Provider\n): Promise<SignerFactory> {\n const tonProvider = getNetworkInstance(provider, Networks.TON);\n const signers = new DefaultSignerFactory();\n const { CustomTonSigner } = await dynamicImportWithRefinedError(\n async () => await import('./signers/ton.js')\n );\n signers.registerSigner(TxType.TON, new CustomTonSigner(tonProvider));\n return signers;\n}\n", "import type { Provider } from './types.js';\n\nimport { Networks } from '@rango-dev/wallets-shared';\n\nimport { TonConnectAdapter } from './tonConnectAdapter.js';\n\nexport const tonConnect = new TonConnectAdapter();\n\nexport function getInstanceOrThrow(): Provider {\n const instance = tonConnect.getInstance();\n\n const instances = new Map([[Networks.TON, instance]]);\n return instances as Provider;\n}\n", "import type { Environments } from './types.js';\nimport type * as TonConnectUIModule from '@tonconnect/ui';\n\nimport { dynamicImportWithRefinedError } from '@rango-dev/wallets-shared';\n\nexport class TonConnectAdapter {\n #tonModule?: typeof TonConnectUIModule;\n #tonConnectInstance?: TonConnectUIModule.TonConnectUI;\n\n async initialize(env?: Environments) {\n if (!env) {\n throw new Error('Environments are not set');\n }\n\n this.#tonModule = await dynamicImportWithRefinedError(\n async () => await import('@tonconnect/ui')\n );\n const { TonConnectUI } = this.#tonModule;\n this.#tonConnectInstance = new TonConnectUI(env);\n }\n\n getInstance() {\n if (!this.#tonConnectInstance) {\n throw new Error(\n \"TonConnect instance isn't initialized. Please ensure you have provided the TonConnect config.\"\n );\n }\n return this.#tonConnectInstance;\n }\n\n getModule() {\n if (!this.#tonModule) {\n throw new Error(\"Couldn't initialize the TonConnect module\");\n }\n return this.#tonModule;\n }\n\n async waitForConnection(): Promise<string> {\n const tonConnectUI = this.getInstance();\n return new Promise((resolve, reject) => {\n const unsubscribeStatusChange = tonConnectUI.onStatusChange(\n (state) => {\n const walletConnected = !!state?.account.address;\n\n if (walletConnected) {\n unsubscribe();\n resolve(state.account.address);\n }\n },\n (error) => {\n unsubscribe();\n reject(error);\n }\n );\n\n const unsubscribeModalStateChange = tonConnectUI.onModalStateChange(\n (modalState) => {\n if (modalState.closeReason === 'action-cancelled') {\n unsubscribe();\n reject(new Error('The action was canceled by the user'));\n }\n }\n );\n\n const unsubscribe = () => {\n unsubscribeStatusChange();\n unsubscribeModalStateChange();\n };\n });\n }\n}\n", "import type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';\n\nimport { NamespaceBuilder } from '@rango-dev/wallets-core';\nimport {\n builders as commonBuilders,\n standardizeAndThrowError,\n} from '@rango-dev/wallets-core/namespaces/common';\nimport { builders } from '@rango-dev/wallets-core/namespaces/ton';\n\nimport { tonActions } from '../actions/ton.js';\nimport { WALLET_ID } from '../constants.js';\nimport { tonHooks } from '../hooks/ton.js';\nimport { tonConnect } from '../utils.js';\n\nconst [disconnectSubscriber, disconnectCleanUp] =\n tonHooks.getDisconnectSubscriber(tonConnect.getInstance.bind(tonConnect));\n\nconst connect = builders\n .connect()\n .action(tonActions.connect(tonConnect.getInstance.bind(tonConnect)))\n .and(disconnectSubscriber)\n .or(disconnectCleanUp)\n .or(standardizeAndThrowError)\n .build();\n\nconst canEagerConnect = builders\n .canEagerConnect()\n .action(tonActions.canEagerConnect(tonConnect.getInstance.bind(tonConnect)))\n .build();\n\nconst disconnect = commonBuilders\n .disconnect<TonActions>()\n .before(tonHooks.handleProviderDisconnect)\n .after(disconnectCleanUp)\n .build();\n\nconst ton = new NamespaceBuilder<TonActions>('Ton', WALLET_ID)\n .action(connect)\n .action(disconnect)\n .action(canEagerConnect)\n .build();\n\nexport { ton };\n", "import type { Context, FunctionWithContext } from '@rango-dev/wallets-core';\nimport type { TonConnectUI } from '@tonconnect/ui';\n\nimport { type TonActions, utils } from '@rango-dev/wallets-core/namespaces/ton';\n\nimport { tonConnect } from '../utils.js';\n\nexport function connect(\n getInstance: () => TonConnectUI\n): FunctionWithContext<TonActions['connect'], Context> {\n return async () => {\n const tonInstance = getInstance();\n const connectionRestored = await tonInstance.connectionRestored;\n const { toUserFriendlyAddress } = tonConnect.getModule();\n let userFriendlyAddress: string;\n\n if (connectionRestored && tonInstance.account?.address) {\n userFriendlyAddress = toUserFriendlyAddress(tonInstance.account.address);\n } else {\n await tonInstance.openModal();\n const result = await tonConnect.waitForConnection();\n userFriendlyAddress = toUserFriendlyAddress(result);\n }\n\n return utils.formatAccountsToCAIP([userFriendlyAddress]);\n };\n}\n\nexport function canEagerConnect(\n getInstance: () => TonConnectUI\n): FunctionWithContext<TonActions['canEagerConnect'], Context> {\n return async () => {\n const tonConnectUI = getInstance();\n const connectionRestored = await tonConnectUI.connectionRestored;\n return connectionRestored;\n };\n}\n\nexport const tonActions = { connect, canEagerConnect };\n", "import type {\n AnyFunction,\n Context,\n Subscriber,\n SubscriberCleanUp,\n} from '@rango-dev/wallets-core';\nimport type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';\nimport type {\n ConnectedWallet,\n ITonConnect,\n TonConnectUI,\n} from '@tonconnect/ui';\n\nimport { tonConnect } from '../utils.js';\n\nfunction getDisconnectSubscriber(\n instance: () => TonConnectUI\n): [Subscriber<TonActions>, SubscriberCleanUp<TonActions>] {\n let eventCallback: AnyFunction;\n let unsubscribe: ReturnType<ITonConnect['onStatusChange']>;\n\n // subscriber can be passed to `or`, it will get the error and should rethrow error to pass the error to next `or` or throw error.\n return [\n (context, err) => {\n const tonInstance = instance();\n\n if (!tonInstance) {\n throw new Error(\n 'Trying to subscribe to your Ton wallet, but seems its instance is not available.'\n );\n }\n\n eventCallback = (wallet: null | ConnectedWallet) => {\n if (!wallet) {\n context.action('disconnect');\n }\n };\n\n unsubscribe = tonInstance.onStatusChange(eventCallback);\n\n if (err instanceof Error) {\n throw err;\n }\n },\n (_, err) => {\n if (unsubscribe) {\n unsubscribe();\n }\n\n return err;\n },\n ];\n}\n\nexport async function handleProviderDisconnect(_: Context) {\n const tonInstance = tonConnect.getInstance();\n if (tonInstance.connected) {\n await tonInstance.disconnect();\n }\n}\n\nexport const tonHooks = { getDisconnectSubscriber, handleProviderDisconnect };\n"],
5
- "mappings": "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",
6
- "names": ["ton_exports", "__export", "CustomTonSigner", "Address", "Cell", "CHAIN", "SignerError", "init_ton", "__esmMin", "__name", "provider", "tx", "blockChain", "type", "from", "messages", "rest", "result", "stateInit", "payload", "msg", "defineVersions", "ProviderBuilder", "WalletTypes", "tonBlockchain", "dynamicImportWithRefinedError", "getNetworkInstance", "Networks", "DefaultSignerFactory", "TxType", "getSigners", "provider", "tonProvider", "getNetworkInstance", "Networks", "signers", "DefaultSignerFactory", "CustomTonSigner", "dynamicImportWithRefinedError", "TxType", "__name", "Networks", "dynamicImportWithRefinedError", "TonConnectAdapter", "__name", "#tonModule", "#tonConnectInstance", "env", "dynamicImportWithRefinedError", "TonConnectUI", "tonConnectUI", "resolve", "reject", "unsubscribeStatusChange", "state", "unsubscribe", "error", "unsubscribeModalStateChange", "modalState", "tonConnect", "TonConnectAdapter", "getInstanceOrThrow", "instance", "Networks", "__name", "WALLET_ID", "WalletTypes", "metadata", "allBlockchains", "tonBlockchain", "getSigners", "getInstanceOrThrow", "NamespaceBuilder", "commonBuilders", "standardizeAndThrowError", "builders", "utils", "connect", "getInstance", "tonInstance", "connectionRestored", "toUserFriendlyAddress", "tonConnect", "userFriendlyAddress", "result", "utils", "__name", "canEagerConnect", "tonActions", "getDisconnectSubscriber", "instance", "eventCallback", "unsubscribe", "context", "err", "tonInstance", "__name", "wallet", "_", "handleProviderDisconnect", "tonConnect", "tonHooks", "disconnectSubscriber", "disconnectCleanUp", "tonHooks", "tonConnect", "connect", "builders", "tonActions", "standardizeAndThrowError", "canEagerConnect", "disconnect", "commonBuilders", "ton", "NamespaceBuilder", "WALLET_ID", "buildProvider", "__name", "ProviderBuilder", "WALLET_ID", "context", "environments", "setState", "initializeTon", "tonConnect", "err", "metadata", "ton", "versions", "__name", "defineVersions", "buildProvider"]
4
+ "sourcesContent": ["import type { TonConnectUI } from '@tonconnect/ui';\nimport type { GenericSigner, TonTransaction } from 'rango-types';\n\nimport { Address, Cell } from '@ton/core';\nimport { CHAIN } from '@tonconnect/ui';\nimport { SignerError } from 'rango-types';\n\nexport class CustomTonSigner implements GenericSigner<TonTransaction> {\n private provider: TonConnectUI;\n\n constructor(provider: TonConnectUI) {\n this.provider = provider;\n }\n\n async signMessage(): Promise<string> {\n throw SignerError.UnimplementedError('signMessage');\n }\n\n async signAndSendTx(tx: TonTransaction): Promise<{ hash: string }> {\n const { blockChain, type, from, messages, ...rest } = tx;\n const result = await this.provider.sendTransaction({\n ...rest,\n ...(from && { from: Address.parse(from).toRawString() }),\n messages: messages.map(({ stateInit, payload, ...msg }) => ({\n ...msg,\n ...(stateInit != null && { stateInit }),\n ...(payload != null && { payload }),\n })),\n network: CHAIN.MAINNET,\n });\n\n const hash = Cell.fromBase64(result.boc).hash().toString('hex');\n return { hash };\n }\n}\n", "import { defineVersions } from '@hub3js/core/utils';\n\nimport { buildProvider } from './provider.js';\n\nexport type { Environments } from './types.js';\n\nconst versions = () =>\n defineVersions().version('1.0.0', buildProvider()).build();\n\nexport { versions };\n", "import type { Environments } from './types.js';\n\nimport { ProviderBuilder } from '@hub3js/core';\n\nimport { metadata, WALLET_ID } from './constants.js';\nimport { ton } from './namespaces/ton.js';\nimport { tonConnect } from './utils.js';\n\nconst buildProvider = () =>\n new ProviderBuilder(WALLET_ID)\n .init(function (context, environments: Environments) {\n const [, setState] = context.state();\n\n async function initializeTon() {\n try {\n await tonConnect.initialize(environments);\n console.debug('[ton] instance initialized.', context);\n setState('installed', true);\n } catch (err) {\n console.warn('[ton] failed to initialize TonConnect:', err);\n }\n }\n void initializeTon();\n })\n .config('metadata', metadata)\n .add('ton', ton)\n .build();\n\nexport { buildProvider };\n", "import type { ProviderMetadata } from '@hub3js/core';\n\nimport { WalletTypes } from '@rango-dev/wallets-shared';\nimport { type BlockchainMeta, tonBlockchain } from 'rango-types';\n\nimport getSigners from './signer.js';\nimport { getInstanceOrThrow } from './utils.js';\n\nexport const WALLET_ID = WalletTypes.TON_CONNECT;\n\nexport const metadata: ProviderMetadata = {\n name: 'TON Connect',\n icon: 'https://raw.githubusercontent.com/rango-exchange/assets/7fb19ed5d5019b4d6a41ce91b39cde64f86af4c6/wallets/tonconnect/icon.svg',\n extensions: {\n homepage: 'https://docs.ton.org/ecosystem/ton-connect/overview',\n },\n properties: [\n {\n name: 'namespaces',\n value: {\n selection: 'single',\n data: [\n {\n label: 'Ton',\n value: 'Ton',\n id: 'TON',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n tonBlockchain(allBlockchains),\n },\n ],\n },\n },\n {\n name: 'signers',\n value: {\n getSigners: async () => getSigners(getInstanceOrThrow()),\n },\n },\n ],\n};\n", "import type { Provider } from './types.js';\nimport type { SignerFactory } from 'rango-types';\n\nimport {\n dynamicImportWithRefinedError,\n getNetworkInstance,\n Networks,\n} from '@rango-dev/wallets-shared';\nimport { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default async function getSigners(\n provider: Provider\n): Promise<SignerFactory> {\n const tonProvider = getNetworkInstance(provider, Networks.TON);\n const signers = new DefaultSignerFactory();\n const { CustomTonSigner } = await dynamicImportWithRefinedError(\n async () => await import('./signers/ton.js')\n );\n signers.registerSigner(TxType.TON, new CustomTonSigner(tonProvider));\n return signers;\n}\n", "import type { Provider } from './types.js';\n\nimport { Networks } from '@rango-dev/wallets-shared';\n\nimport { TonConnectAdapter } from './tonConnectAdapter.js';\n\nexport const tonConnect = new TonConnectAdapter();\n\nexport function getInstanceOrThrow(): Provider {\n const instance = tonConnect.getInstance();\n\n const instances = new Map([[Networks.TON, instance]]);\n return instances as Provider;\n}\n", "import type { Environments } from './types.js';\nimport type * as TonConnectUIModule from '@tonconnect/ui';\n\nimport { dynamicImportWithRefinedError } from '@rango-dev/wallets-shared';\n\nexport class TonConnectAdapter {\n #tonModule?: typeof TonConnectUIModule;\n #tonConnectInstance?: TonConnectUIModule.TonConnectUI;\n\n async initialize(env?: Environments) {\n if (!env) {\n throw new Error('Environments are not set');\n }\n\n this.#tonModule = await dynamicImportWithRefinedError(\n async () => await import('@tonconnect/ui')\n );\n const { TonConnectUI } = this.#tonModule;\n this.#tonConnectInstance = new TonConnectUI(env);\n }\n\n getInstance() {\n if (!this.#tonConnectInstance) {\n throw new Error(\n \"TonConnect instance isn't initialized. Please ensure you have provided the TonConnect config.\"\n );\n }\n return this.#tonConnectInstance;\n }\n\n getModule() {\n if (!this.#tonModule) {\n throw new Error(\"Couldn't initialize the TonConnect module\");\n }\n return this.#tonModule;\n }\n\n async waitForConnection(): Promise<string> {\n const tonConnectUI = this.getInstance();\n return new Promise((resolve, reject) => {\n const unsubscribeStatusChange = tonConnectUI.onStatusChange(\n (state) => {\n const walletConnected = !!state?.account.address;\n\n if (walletConnected) {\n unsubscribe();\n resolve(state.account.address);\n }\n },\n (error) => {\n unsubscribe();\n reject(error);\n }\n );\n\n const unsubscribeModalStateChange = tonConnectUI.onModalStateChange(\n (modalState) => {\n if (modalState.closeReason === 'action-cancelled') {\n unsubscribe();\n reject(new Error('The action was canceled by the user'));\n }\n }\n );\n\n const unsubscribe = () => {\n unsubscribeStatusChange();\n unsubscribeModalStateChange();\n };\n });\n }\n}\n", "import type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';\n\nimport { NamespaceBuilder } from '@hub3js/core';\nimport * as commonBuilders from '@hub3js/std/builders';\nimport { standardizeAndThrowError } from '@hub3js/std/operators';\nimport { builders } from '@rango-dev/wallets-core/namespaces/ton';\n\nimport { tonActions } from '../actions/ton.js';\nimport { WALLET_ID } from '../constants.js';\nimport { tonHooks } from '../hooks/ton.js';\nimport { tonConnect } from '../utils.js';\n\nconst [disconnectSubscriber, disconnectCleanUp] =\n tonHooks.getDisconnectSubscriber(tonConnect.getInstance.bind(tonConnect));\n\nconst connect = builders\n .connect()\n .action(tonActions.connect(tonConnect.getInstance.bind(tonConnect)))\n .and(disconnectSubscriber)\n .or(disconnectCleanUp)\n .or(standardizeAndThrowError)\n .build();\n\nconst canEagerConnect = builders\n .canEagerConnect()\n .action(tonActions.canEagerConnect(tonConnect.getInstance.bind(tonConnect)))\n .build();\n\nconst disconnect = commonBuilders\n .disconnect<TonActions>()\n .before(tonHooks.handleProviderDisconnect)\n .after(disconnectCleanUp)\n .build();\n\nconst ton = new NamespaceBuilder<TonActions>('Ton', WALLET_ID)\n .action(connect)\n .action(disconnect)\n .action(canEagerConnect)\n .build();\n\nexport { ton };\n", "import type { Context, FunctionWithContext } from '@hub3js/core';\nimport type { TonConnectUI } from '@tonconnect/ui';\n\nimport { type TonActions, utils } from '@rango-dev/wallets-core/namespaces/ton';\n\nimport { tonConnect } from '../utils.js';\n\nexport function connect(\n getInstance: () => TonConnectUI\n): FunctionWithContext<TonActions['connect'], Context> {\n return async () => {\n const tonInstance = getInstance();\n const connectionRestored = await tonInstance.connectionRestored;\n const { toUserFriendlyAddress } = tonConnect.getModule();\n let userFriendlyAddress: string;\n\n if (connectionRestored && tonInstance.account?.address) {\n userFriendlyAddress = toUserFriendlyAddress(tonInstance.account.address);\n } else {\n await tonInstance.openModal();\n const result = await tonConnect.waitForConnection();\n userFriendlyAddress = toUserFriendlyAddress(result);\n }\n\n return utils.formatAccountsToCAIP([userFriendlyAddress]);\n };\n}\n\nexport function canEagerConnect(\n getInstance: () => TonConnectUI\n): FunctionWithContext<TonActions['canEagerConnect'], Context> {\n return async () => {\n const tonConnectUI = getInstance();\n const connectionRestored = await tonConnectUI.connectionRestored;\n return connectionRestored;\n };\n}\n\nexport const tonActions = { connect, canEagerConnect };\n", "import type {\n AnyFunction,\n Context,\n Subscriber,\n SubscriberCleanUp,\n} from '@hub3js/core';\nimport type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';\nimport type {\n ConnectedWallet,\n ITonConnect,\n TonConnectUI,\n} from '@tonconnect/ui';\n\nimport { tonConnect } from '../utils.js';\n\nfunction getDisconnectSubscriber(\n instance: () => TonConnectUI\n): [Subscriber<TonActions>, SubscriberCleanUp<TonActions>] {\n let eventCallback: AnyFunction;\n let unsubscribe: ReturnType<ITonConnect['onStatusChange']>;\n\n // subscriber can be passed to `or`, it will get the error and should rethrow error to pass the error to next `or` or throw error.\n return [\n (context, err) => {\n const tonInstance = instance();\n\n if (!tonInstance) {\n throw new Error(\n 'Trying to subscribe to your Ton wallet, but seems its instance is not available.'\n );\n }\n\n eventCallback = (wallet: null | ConnectedWallet) => {\n if (!wallet) {\n context.action('disconnect');\n }\n };\n\n unsubscribe = tonInstance.onStatusChange(eventCallback);\n\n if (err instanceof Error) {\n throw err;\n }\n },\n (_, err) => {\n if (unsubscribe) {\n unsubscribe();\n }\n\n return err;\n },\n ];\n}\n\nexport async function handleProviderDisconnect(_: Context) {\n const tonInstance = tonConnect.getInstance();\n if (tonInstance.connected) {\n await tonInstance.disconnect();\n }\n}\n\nexport const tonHooks = { getDisconnectSubscriber, handleProviderDisconnect };\n"],
5
+ "mappings": "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",
6
+ "names": ["ton_exports", "__export", "CustomTonSigner", "Address", "Cell", "CHAIN", "SignerError", "init_ton", "__esmMin", "__name", "provider", "tx", "blockChain", "type", "from", "messages", "rest", "result", "stateInit", "payload", "msg", "defineVersions", "ProviderBuilder", "WalletTypes", "tonBlockchain", "dynamicImportWithRefinedError", "getNetworkInstance", "Networks", "DefaultSignerFactory", "TxType", "getSigners", "provider", "tonProvider", "getNetworkInstance", "Networks", "signers", "DefaultSignerFactory", "CustomTonSigner", "dynamicImportWithRefinedError", "TxType", "__name", "Networks", "dynamicImportWithRefinedError", "TonConnectAdapter", "__name", "#tonModule", "#tonConnectInstance", "env", "dynamicImportWithRefinedError", "TonConnectUI", "tonConnectUI", "resolve", "reject", "unsubscribeStatusChange", "state", "unsubscribe", "error", "unsubscribeModalStateChange", "modalState", "tonConnect", "TonConnectAdapter", "getInstanceOrThrow", "instance", "Networks", "__name", "WALLET_ID", "WalletTypes", "metadata", "allBlockchains", "tonBlockchain", "getSigners", "getInstanceOrThrow", "NamespaceBuilder", "commonBuilders", "standardizeAndThrowError", "builders", "utils", "connect", "getInstance", "tonInstance", "connectionRestored", "toUserFriendlyAddress", "tonConnect", "userFriendlyAddress", "result", "utils", "__name", "canEagerConnect", "tonActions", "getDisconnectSubscriber", "instance", "eventCallback", "unsubscribe", "context", "err", "tonInstance", "__name", "wallet", "_", "handleProviderDisconnect", "tonConnect", "tonHooks", "disconnectSubscriber", "disconnectCleanUp", "tonHooks", "tonConnect", "connect", "builders", "tonActions", "standardizeAndThrowError", "canEagerConnect", "disconnect", "ton", "NamespaceBuilder", "WALLET_ID", "buildProvider", "__name", "ProviderBuilder", "WALLET_ID", "context", "environments", "setState", "initializeTon", "tonConnect", "err", "metadata", "ton", "versions", "__name", "defineVersions", "buildProvider"]
7
7
  }
@@ -1,4 +1,4 @@
1
1
  import type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';
2
- declare const ton: import("@rango-dev/wallets-core").ProxiedNamespace<TonActions>;
2
+ declare const ton: import("@hub3js/core").ProxiedNamespace<TonActions>;
3
3
  export { ton };
4
4
  //# sourceMappingURL=ton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../src/namespaces/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAoCzE,QAAA,MAAM,GAAG,gEAIC,CAAC;AAEX,OAAO,EAAE,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"ton.d.ts","sourceRoot":"","sources":["../../src/namespaces/ton.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAkCzE,QAAA,MAAM,GAAG,qDAIC,CAAC;AAEX,OAAO,EAAE,GAAG,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"inputs":{"src/signers/ton.ts":{"bytes":1124,"imports":[{"path":"@ton/core","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signer.ts":{"bytes":703,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signers/ton.ts","kind":"dynamic-import","original":"./signers/ton.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/tonConnectAdapter.ts":{"bytes":1971,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/utils.ts":{"bytes":399,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"src/tonConnectAdapter.ts","kind":"import-statement","original":"./tonConnectAdapter.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/constants.ts":{"bytes":1106,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signer.ts","kind":"import-statement","original":"./signer.js"},{"path":"src/utils.ts","kind":"import-statement","original":"./utils.js"}],"format":"esm"},"src/actions/ton.ts":{"bytes":1349,"imports":[{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/hooks/ton.ts":{"bytes":1555,"imports":[{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/namespaces/ton.ts":{"bytes":1292,"imports":[{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/common","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true},{"path":"src/actions/ton.ts","kind":"import-statement","original":"../actions/ton.js"},{"path":"src/constants.ts","kind":"import-statement","original":"../constants.js"},{"path":"src/hooks/ton.ts","kind":"import-statement","original":"../hooks/ton.js"},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"}],"format":"esm"},"src/provider.ts":{"bytes":867,"imports":[{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"src/constants.ts","kind":"import-statement","original":"./constants.js"},{"path":"src/namespaces/ton.ts","kind":"import-statement","original":"./namespaces/ton.js"},{"path":"src/utils.ts","kind":"import-statement","original":"./utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/mod.ts":{"bytes":269,"imports":[{"path":"@rango-dev/wallets-core/utils","kind":"import-statement","external":true},{"path":"src/provider.ts","kind":"import-statement","original":"./provider.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/mod.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":17917},"dist/mod.js":{"imports":[{"path":"@ton/core","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/utils","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"dynamic-import","external":true},{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/common","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true}],"exports":["versions"],"entryPoint":"src/mod.ts","inputs":{"src/signers/ton.ts":{"bytesInOutput":678},"src/mod.ts":{"bytesInOutput":123},"src/provider.ts":{"bytesInOutput":381},"src/constants.ts":{"bytesInOutput":532},"src/signer.ts":{"bytesInOutput":369},"src/utils.ts":{"bytesInOutput":154},"src/tonConnectAdapter.ts":{"bytesInOutput":883},"src/namespaces/ton.ts":{"bytesInOutput":571},"src/actions/ton.ts":{"bytesInOutput":458},"src/hooks/ton.ts":{"bytesInOutput":477}},"bytes":4858}}}
1
+ {"inputs":{"src/signers/ton.ts":{"bytes":1124,"imports":[{"path":"@ton/core","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signer.ts":{"bytes":703,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signers/ton.ts","kind":"dynamic-import","original":"./signers/ton.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/tonConnectAdapter.ts":{"bytes":1971,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"dynamic-import","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/utils.ts":{"bytes":399,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"src/tonConnectAdapter.ts","kind":"import-statement","original":"./tonConnectAdapter.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/constants.ts":{"bytes":1095,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signer.ts","kind":"import-statement","original":"./signer.js"},{"path":"src/utils.ts","kind":"import-statement","original":"./utils.js"}],"format":"esm"},"src/actions/ton.ts":{"bytes":1338,"imports":[{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/hooks/ton.ts":{"bytes":1544,"imports":[{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/namespaces/ton.ts":{"bytes":1284,"imports":[{"path":"@hub3js/core","kind":"import-statement","external":true},{"path":"@hub3js/std/builders","kind":"import-statement","external":true},{"path":"@hub3js/std/operators","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true},{"path":"src/actions/ton.ts","kind":"import-statement","original":"../actions/ton.js"},{"path":"src/constants.ts","kind":"import-statement","original":"../constants.js"},{"path":"src/hooks/ton.ts","kind":"import-statement","original":"../hooks/ton.js"},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"}],"format":"esm"},"src/provider.ts":{"bytes":856,"imports":[{"path":"@hub3js/core","kind":"import-statement","external":true},{"path":"src/constants.ts","kind":"import-statement","original":"./constants.js"},{"path":"src/namespaces/ton.ts","kind":"import-statement","original":"./namespaces/ton.js"},{"path":"src/utils.ts","kind":"import-statement","original":"./utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/mod.ts":{"bytes":258,"imports":[{"path":"@hub3js/core/utils","kind":"import-statement","external":true},{"path":"src/provider.ts","kind":"import-statement","original":"./provider.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/mod.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":17835},"dist/mod.js":{"imports":[{"path":"@ton/core","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@hub3js/core/utils","kind":"import-statement","external":true},{"path":"@hub3js/core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"@tonconnect/ui","kind":"dynamic-import","external":true},{"path":"@hub3js/core","kind":"import-statement","external":true},{"path":"@hub3js/std/builders","kind":"import-statement","external":true},{"path":"@hub3js/std/operators","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/ton","kind":"import-statement","external":true}],"exports":["versions"],"entryPoint":"src/mod.ts","inputs":{"src/signers/ton.ts":{"bytesInOutput":678},"src/mod.ts":{"bytesInOutput":112},"src/provider.ts":{"bytesInOutput":370},"src/constants.ts":{"bytesInOutput":532},"src/signer.ts":{"bytesInOutput":369},"src/utils.ts":{"bytesInOutput":154},"src/tonConnectAdapter.ts":{"bytesInOutput":883},"src/namespaces/ton.ts":{"bytesInOutput":565},"src/actions/ton.ts":{"bytesInOutput":458},"src/hooks/ton.ts":{"bytesInOutput":477}},"bytes":4830}}}
@@ -1,3 +1,3 @@
1
- declare const buildProvider: () => import("@rango-dev/wallets-core").Provider;
1
+ declare const buildProvider: () => import("@hub3js/core").Provider<Record<"ton", import("@rango-dev/wallets-core/namespaces/ton").TonActions>>;
2
2
  export { buildProvider };
3
3
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,aAAa,kDAkBP,CAAC;AAEb,OAAO,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAQA,QAAA,MAAM,aAAa,mHAkBP,CAAC;AAEb,OAAO,EAAE,aAAa,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rango-dev/provider-tonconnect",
3
- "version": "0.22.1",
3
+ "version": "0.22.2-next.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "source": "./src/mod.ts",
@@ -21,7 +21,9 @@
21
21
  "lint": "eslint \"**/*.{ts,tsx}\""
22
22
  },
23
23
  "dependencies": {
24
- "@rango-dev/wallets-shared": "^0.60.0",
24
+ "@hub3js/core": "^0.60.1",
25
+ "@hub3js/std": "^0.1.1",
26
+ "@rango-dev/wallets-shared": "^0.60.1-next.1",
25
27
  "@ton/core": "^0.59.0",
26
28
  "@ton/crypto": "^3.3.0",
27
29
  "@tonconnect/ui": "^2.0.9",
@@ -30,4 +32,4 @@
30
32
  "publishConfig": {
31
33
  "access": "public"
32
34
  }
33
- }
35
+ }
@@ -1,4 +1,4 @@
1
- import type { Context, FunctionWithContext } from '@rango-dev/wallets-core';
1
+ import type { Context, FunctionWithContext } from '@hub3js/core';
2
2
  import type { TonConnectUI } from '@tonconnect/ui';
3
3
 
4
4
  import { type TonActions, utils } from '@rango-dev/wallets-core/namespaces/ton';
package/src/constants.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ProviderMetadata } from '@rango-dev/wallets-core';
1
+ import type { ProviderMetadata } from '@hub3js/core';
2
2
 
3
3
  import { WalletTypes } from '@rango-dev/wallets-shared';
4
4
  import { type BlockchainMeta, tonBlockchain } from 'rango-types';
package/src/hooks/ton.ts CHANGED
@@ -3,7 +3,7 @@ import type {
3
3
  Context,
4
4
  Subscriber,
5
5
  SubscriberCleanUp,
6
- } from '@rango-dev/wallets-core';
6
+ } from '@hub3js/core';
7
7
  import type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';
8
8
  import type {
9
9
  ConnectedWallet,
package/src/mod.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { defineVersions } from '@rango-dev/wallets-core/utils';
1
+ import { defineVersions } from '@hub3js/core/utils';
2
2
 
3
3
  import { buildProvider } from './provider.js';
4
4
 
@@ -1,10 +1,8 @@
1
1
  import type { TonActions } from '@rango-dev/wallets-core/namespaces/ton';
2
2
 
3
- import { NamespaceBuilder } from '@rango-dev/wallets-core';
4
- import {
5
- builders as commonBuilders,
6
- standardizeAndThrowError,
7
- } from '@rango-dev/wallets-core/namespaces/common';
3
+ import { NamespaceBuilder } from '@hub3js/core';
4
+ import * as commonBuilders from '@hub3js/std/builders';
5
+ import { standardizeAndThrowError } from '@hub3js/std/operators';
8
6
  import { builders } from '@rango-dev/wallets-core/namespaces/ton';
9
7
 
10
8
  import { tonActions } from '../actions/ton.js';
package/src/provider.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { Environments } from './types.js';
2
2
 
3
- import { ProviderBuilder } from '@rango-dev/wallets-core';
3
+ import { ProviderBuilder } from '@hub3js/core';
4
4
 
5
5
  import { metadata, WALLET_ID } from './constants.js';
6
6
  import { ton } from './namespaces/ton.js';