@hub3js/sui 0.2.2 → 0.2.3-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/mod.d.ts +1 -1
- package/dist/mod.d.ts.map +1 -1
- package/dist/mod.js +1 -1
- package/dist/mod.js.map +3 -3
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/mod.ts +1 -1
- package/src/utils.ts +5 -0
package/dist/mod.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ export type { ProviderAPI, SuiActions } from './types.js';
|
|
|
2
2
|
export * as actions from './actions.js';
|
|
3
3
|
export * as builders from './builders.js';
|
|
4
4
|
export * as hooks from './hooks.js';
|
|
5
|
-
export { getInstanceOrThrow, getInstance } from './utils.js';
|
|
5
|
+
export { getInstanceOrThrow, getInstance, isSuiNamespace } from './utils.js';
|
|
6
6
|
export { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';
|
|
7
7
|
//# 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":"AAAA,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1D,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1D,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/mod.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var u=Object.defineProperty;var r=(e,t)=>u(e,"name",{value:t,configurable:!0});var i=(e,t)=>{for(var n in t)u(e,n,{get:t[n],enumerable:!0})};var m={};i(m,{canEagerConnect:()=>S});function S(e){return async()=>{let t=
|
|
1
|
+
var u=Object.defineProperty;var r=(e,t)=>u(e,"name",{value:t,configurable:!0});var i=(e,t)=>{for(var n in t)u(e,n,{get:t[n],enumerable:!0})};var m={};i(m,{canEagerConnect:()=>S});function S(e){return async()=>{let t=a(e.name);try{return!!(await t.features["standard:connect"].connect({silent:!0})).accounts.length}catch{return!1}}}r(S,"canEagerConnect");var s={};i(s,{canEagerConnect:()=>N,changeAccountSubscriber:()=>W,connect:()=>x});import{ActionBuilder as f}from"@hub3js/core";import{ChangeAccountSubscriberBuilder as P}from"@hub3js/std/hooks";import{connectAndUpdateStateForSingleNetwork as y,intoConnecting as E,intoConnectionFinished as _}from"@hub3js/std/operators";import{AccountId as w}from"caip";var o="sui",c="sui";import{getNamespaceFromCaip2ChainId as C}from"@hub3js/std/utils";import{getWallets as I,SUI_MAINNET_CHAIN as g}from"@mysten/wallet-standard";import{AccountId as b}from"caip";function h(e){return C(e)==="sui"}r(h,"isSuiNamespace");function p(e){return I().get().find(n=>n.name===e&&n.chains.includes(g))}r(p,"getInstance");function a(e){let t=p(e);if(!t)throw new Error("We couldn't find the Sui instance on your wallet. It may be fixed by refreshing the page.");return t}r(a,"getInstanceOrThrow");function d(e){return e.map(t=>b.format({address:t.address,chainId:{namespace:"sui",reference:"sui"}}))}r(d,"formatAccountsToCAIP");var x=r(e=>new f("connect").action(async function(){return(await a(e.name).features["standard:connect"].connect()).accounts.map(A=>w.format({address:A.address,chainId:{namespace:"sui",reference:"sui"}}))}).and(y).before(E).after(_),"connect"),N=r(()=>new f("canEagerConnect"),"canEagerConnect"),W=r(e=>new P().getInstance(()=>a(e.name)).onSwitchAccount((t,n)=>{t.payload.accounts?.length||(n.action("disconnect"),t.preventDefault())}).format(async(t,n)=>d(n.accounts)).addEventListener((t,n)=>t.features["standard:events"].on("change",n)).removeEventListener((t,n)=>{}),"changeAccountSubscriber");var l={};i(l,{changeAccountSubscriber:()=>F});function F(e){return s.changeAccountSubscriber({name:e.name}).build()}r(F,"changeAccountSubscriber");export{o as CAIP_NAMESPACE,c as CAIP_SUI_CHAIN_ID,m as actions,s as builders,p as getInstance,a as getInstanceOrThrow,l as hooks,h as isSuiNamespace};
|
|
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/actions.ts", "../src/builders.ts", "../src/constants.ts", "../src/utils.ts", "../src/hooks.ts"],
|
|
4
|
-
"sourcesContent": ["import type { SuiActions } from './types.js';\nimport type { CanEagerConnect } from '@hub3js/core';\n\nimport { getInstanceOrThrow } from './mod.js';\n\ninterface CanEagerConnectParams {\n name: string;\n}\nexport function canEagerConnect(\n params: CanEagerConnectParams,\n): CanEagerConnect<SuiActions> {\n return async () => {\n const wallet = getInstanceOrThrow(params.name);\n\n try {\n const connectResult = await wallet.features['standard:connect'].connect({\n silent: true,\n });\n if (connectResult.accounts.length) {\n return true;\n }\n return false;\n } catch {\n return false;\n }\n };\n}\n", "import type {\n ChangeAccountSubscriberParams,\n ProviderAPI,\n SuiActions,\n} from './types.js';\nimport type { CaipAccount } from '@hub3js/std/types';\nimport type { WalletAccount } from '@mysten/wallet-standard';\n\nimport { ActionBuilder } from '@hub3js/core';\nimport { ChangeAccountSubscriberBuilder } from '@hub3js/std/hooks';\nimport {\n connectAndUpdateStateForSingleNetwork,\n intoConnecting,\n intoConnectionFinished,\n} from '@hub3js/std/operators';\nimport { AccountId } from 'caip';\n\nimport { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';\nimport { formatAccountsToCAIP, getInstanceOrThrow } from './utils.js';\n\n// Actions\ninterface ConnectParams {\n name: string;\n}\n\nexport const connect = (params: ConnectParams) =>\n new ActionBuilder<SuiActions, 'connect'>('connect')\n .action(async function () {\n const wallet = getInstanceOrThrow(params.name);\n const features = wallet.features;\n\n const result = await features['standard:connect'].connect();\n\n const accounts = result.accounts.map((account) => {\n return AccountId.format({\n address: account.address,\n chainId: {\n namespace: CAIP_NAMESPACE,\n reference: CAIP_SUI_CHAIN_ID,\n },\n }) as CaipAccount;\n });\n\n return accounts;\n })\n .and(connectAndUpdateStateForSingleNetwork)\n .before(intoConnecting)\n .after(intoConnectionFinished);\n\nexport const canEagerConnect = () =>\n new ActionBuilder<SuiActions, 'canEagerConnect'>('canEagerConnect');\n\n// Hooks\nexport const changeAccountSubscriber = (\n params: ChangeAccountSubscriberParams,\n) =>\n new ChangeAccountSubscriberBuilder<\n { accounts: readonly WalletAccount[] },\n ProviderAPI,\n SuiActions\n >()\n .getInstance(() => getInstanceOrThrow(params.name))\n /*\n * In some wallets, when a user switches to an account not yet connected to the dApp, it returns null.\n * A null value indicates no access to the account, requiring a disconnect and user reconnection.\n */\n .onSwitchAccount((event, context) => {\n if (!event.payload.accounts?.length) {\n context.action('disconnect');\n event.preventDefault();\n }\n })\n .format(async (_, event) => formatAccountsToCAIP(event.accounts))\n .addEventListener((instance, callback) =>\n instance.features['standard:events'].on('change', callback),\n )\n .removeEventListener((_, __) => {});\n", "/*\n * TODO: I couldn't found sui in caip\n * @see https://namespaces.chainagnostic.org/\n */\n\n// if the value neeeds to be change make sure you will update mapCaipNamespaceToLegacyNetworkName as well\nexport const CAIP_NAMESPACE = 'sui';\nexport const CAIP_SUI_CHAIN_ID = 'sui';\n", "import type {\n StandardConnectFeature,\n StandardEventsFeature,\n SuiFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\n\nimport { getWallets, SUI_MAINNET_CHAIN } from '@mysten/wallet-standard';\nimport { AccountId } from 'caip';\n\nimport { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';\n\n// TODO: StandardFetures doesn't work, so we should add each feature separately\ntype SuiWalletStandard = WalletWithFeatures<\n StandardConnectFeature & StandardEventsFeature & SuiFeatures\n>;\n\n/**\n * @param name each wallet has a name in WalletStandard. you should pass that value\n */\nexport function getInstance(name: string): SuiWalletStandard | undefined {\n const wallet = getWallets()\n .get()\n .find(\n (wallet) =>\n wallet.name === name && wallet.chains.includes(SUI_MAINNET_CHAIN),\n );\n\n return wallet as SuiWalletStandard;\n}\n\n/**\n * @param name each wallet has a name in WalletStandard. you should pass that value\n */\nexport function getInstanceOrThrow(name: string): SuiWalletStandard {\n const wallet = getInstance(name);\n\n if (!wallet) {\n throw new Error(\n \"We couldn't find the Sui instance on your wallet. It may be fixed by refreshing the page.\",\n );\n }\n\n return wallet;\n}\nexport function formatAccountsToCAIP(accounts: readonly { address: string }[]) {\n return accounts.map((account) => {\n return AccountId.format({\n address: account.address,\n chainId: {\n namespace: CAIP_NAMESPACE,\n reference: CAIP_SUI_CHAIN_ID,\n },\n });\n });\n}\n", "import type { ChangeAccountSubscriberParams, SuiActions } from './types.js';\nimport type { Subscriber, SubscriberCleanUp } from '@hub3js/core';\n\nimport { builders } from './mod.js';\n\nexport function changeAccountSubscriber(\n params: ChangeAccountSubscriberParams,\n): [Subscriber<SuiActions>, SubscriberCleanUp<SuiActions>] {\n return builders.changeAccountSubscriber({ name: params.name }).build();\n}\n"],
|
|
5
|
-
"mappings": "6IAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,IAQO,SAASC,EACdC,EAC6B,CAC7B,MAAO,UAAY,CACjB,IAAMC,EAASC,EAAmBF,EAAO,IAAI,EAE7C,GAAI,CAIF,MAAI,GAHkB,MAAMC,EAAO,SAAS,kBAAkB,EAAE,QAAQ,CACtE,OAAQ,EACV,CAAC,GACiB,SAAS,MAI7B,MAAQ,CACN,MAAO,EACT,CACF,CACF,CAlBgBE,EAAAJ,EAAA,mBCRhB,IAAAK,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,4BAAAC,EAAA,YAAAC,IAQA,OAAS,iBAAAC,MAAqB,eAC9B,OAAS,kCAAAC,MAAsC,oBAC/C,OACE,yCAAAC,EACA,kBAAAC,EACA,0BAAAC,MACK,wBACP,OAAS,aAAAC,MAAiB,OCTnB,IAAMC,EAAiB,MACjBC,EAAoB,MCAjC,OAAS,cAAAC,EAAY,qBAAAC,MAAyB,0BAC9C,OAAS,aAAAC,MAAiB,
|
|
6
|
-
"names": ["actions_exports", "__export", "canEagerConnect", "canEagerConnect", "params", "wallet", "getInstanceOrThrow", "__name", "builders_exports", "__export", "canEagerConnect", "changeAccountSubscriber", "connect", "ActionBuilder", "ChangeAccountSubscriberBuilder", "connectAndUpdateStateForSingleNetwork", "intoConnecting", "intoConnectionFinished", "AccountId", "CAIP_NAMESPACE", "CAIP_SUI_CHAIN_ID", "getWallets", "SUI_MAINNET_CHAIN", "AccountId", "getInstance", "name", "getWallets", "wallet", "SUI_MAINNET_CHAIN", "
|
|
4
|
+
"sourcesContent": ["import type { SuiActions } from './types.js';\nimport type { CanEagerConnect } from '@hub3js/core';\n\nimport { getInstanceOrThrow } from './mod.js';\n\ninterface CanEagerConnectParams {\n name: string;\n}\nexport function canEagerConnect(\n params: CanEagerConnectParams,\n): CanEagerConnect<SuiActions> {\n return async () => {\n const wallet = getInstanceOrThrow(params.name);\n\n try {\n const connectResult = await wallet.features['standard:connect'].connect({\n silent: true,\n });\n if (connectResult.accounts.length) {\n return true;\n }\n return false;\n } catch {\n return false;\n }\n };\n}\n", "import type {\n ChangeAccountSubscriberParams,\n ProviderAPI,\n SuiActions,\n} from './types.js';\nimport type { CaipAccount } from '@hub3js/std/types';\nimport type { WalletAccount } from '@mysten/wallet-standard';\n\nimport { ActionBuilder } from '@hub3js/core';\nimport { ChangeAccountSubscriberBuilder } from '@hub3js/std/hooks';\nimport {\n connectAndUpdateStateForSingleNetwork,\n intoConnecting,\n intoConnectionFinished,\n} from '@hub3js/std/operators';\nimport { AccountId } from 'caip';\n\nimport { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';\nimport { formatAccountsToCAIP, getInstanceOrThrow } from './utils.js';\n\n// Actions\ninterface ConnectParams {\n name: string;\n}\n\nexport const connect = (params: ConnectParams) =>\n new ActionBuilder<SuiActions, 'connect'>('connect')\n .action(async function () {\n const wallet = getInstanceOrThrow(params.name);\n const features = wallet.features;\n\n const result = await features['standard:connect'].connect();\n\n const accounts = result.accounts.map((account) => {\n return AccountId.format({\n address: account.address,\n chainId: {\n namespace: CAIP_NAMESPACE,\n reference: CAIP_SUI_CHAIN_ID,\n },\n }) as CaipAccount;\n });\n\n return accounts;\n })\n .and(connectAndUpdateStateForSingleNetwork)\n .before(intoConnecting)\n .after(intoConnectionFinished);\n\nexport const canEagerConnect = () =>\n new ActionBuilder<SuiActions, 'canEagerConnect'>('canEagerConnect');\n\n// Hooks\nexport const changeAccountSubscriber = (\n params: ChangeAccountSubscriberParams,\n) =>\n new ChangeAccountSubscriberBuilder<\n { accounts: readonly WalletAccount[] },\n ProviderAPI,\n SuiActions\n >()\n .getInstance(() => getInstanceOrThrow(params.name))\n /*\n * In some wallets, when a user switches to an account not yet connected to the dApp, it returns null.\n * A null value indicates no access to the account, requiring a disconnect and user reconnection.\n */\n .onSwitchAccount((event, context) => {\n if (!event.payload.accounts?.length) {\n context.action('disconnect');\n event.preventDefault();\n }\n })\n .format(async (_, event) => formatAccountsToCAIP(event.accounts))\n .addEventListener((instance, callback) =>\n instance.features['standard:events'].on('change', callback),\n )\n .removeEventListener((_, __) => {});\n", "/*\n * TODO: I couldn't found sui in caip\n * @see https://namespaces.chainagnostic.org/\n */\n\n// if the value neeeds to be change make sure you will update mapCaipNamespaceToLegacyNetworkName as well\nexport const CAIP_NAMESPACE = 'sui';\nexport const CAIP_SUI_CHAIN_ID = 'sui';\n", "import type {\n StandardConnectFeature,\n StandardEventsFeature,\n SuiFeatures,\n WalletWithFeatures,\n} from '@mysten/wallet-standard';\n\nimport { getNamespaceFromCaip2ChainId } from '@hub3js/std/utils';\nimport { getWallets, SUI_MAINNET_CHAIN } from '@mysten/wallet-standard';\nimport { AccountId } from 'caip';\n\nimport { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';\n\nexport function isSuiNamespace(caip2ChainId: string): boolean {\n return getNamespaceFromCaip2ChainId(caip2ChainId) === CAIP_NAMESPACE;\n}\n\n// TODO: StandardFetures doesn't work, so we should add each feature separately\ntype SuiWalletStandard = WalletWithFeatures<\n StandardConnectFeature & StandardEventsFeature & SuiFeatures\n>;\n\n/**\n * @param name each wallet has a name in WalletStandard. you should pass that value\n */\nexport function getInstance(name: string): SuiWalletStandard | undefined {\n const wallet = getWallets()\n .get()\n .find(\n (wallet) =>\n wallet.name === name && wallet.chains.includes(SUI_MAINNET_CHAIN),\n );\n\n return wallet as SuiWalletStandard;\n}\n\n/**\n * @param name each wallet has a name in WalletStandard. you should pass that value\n */\nexport function getInstanceOrThrow(name: string): SuiWalletStandard {\n const wallet = getInstance(name);\n\n if (!wallet) {\n throw new Error(\n \"We couldn't find the Sui instance on your wallet. It may be fixed by refreshing the page.\",\n );\n }\n\n return wallet;\n}\nexport function formatAccountsToCAIP(accounts: readonly { address: string }[]) {\n return accounts.map((account) => {\n return AccountId.format({\n address: account.address,\n chainId: {\n namespace: CAIP_NAMESPACE,\n reference: CAIP_SUI_CHAIN_ID,\n },\n });\n });\n}\n", "import type { ChangeAccountSubscriberParams, SuiActions } from './types.js';\nimport type { Subscriber, SubscriberCleanUp } from '@hub3js/core';\n\nimport { builders } from './mod.js';\n\nexport function changeAccountSubscriber(\n params: ChangeAccountSubscriberParams,\n): [Subscriber<SuiActions>, SubscriberCleanUp<SuiActions>] {\n return builders.changeAccountSubscriber({ name: params.name }).build();\n}\n"],
|
|
5
|
+
"mappings": "6IAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,IAQO,SAASC,EACdC,EAC6B,CAC7B,MAAO,UAAY,CACjB,IAAMC,EAASC,EAAmBF,EAAO,IAAI,EAE7C,GAAI,CAIF,MAAI,GAHkB,MAAMC,EAAO,SAAS,kBAAkB,EAAE,QAAQ,CACtE,OAAQ,EACV,CAAC,GACiB,SAAS,MAI7B,MAAQ,CACN,MAAO,EACT,CACF,CACF,CAlBgBE,EAAAJ,EAAA,mBCRhB,IAAAK,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,4BAAAC,EAAA,YAAAC,IAQA,OAAS,iBAAAC,MAAqB,eAC9B,OAAS,kCAAAC,MAAsC,oBAC/C,OACE,yCAAAC,EACA,kBAAAC,EACA,0BAAAC,MACK,wBACP,OAAS,aAAAC,MAAiB,OCTnB,IAAMC,EAAiB,MACjBC,EAAoB,MCAjC,OAAS,gCAAAC,MAAoC,oBAC7C,OAAS,cAAAC,EAAY,qBAAAC,MAAyB,0BAC9C,OAAS,aAAAC,MAAiB,OAInB,SAASC,EAAeC,EAA+B,CAC5D,OAAOC,EAA6BD,CAAY,IAAM,KACxD,CAFgBE,EAAAH,EAAA,kBAYT,SAASI,EAAYC,EAA6C,CAQvE,OAPeC,EAAW,EACvB,IAAI,EACJ,KACEC,GACCA,EAAO,OAASF,GAAQE,EAAO,OAAO,SAASC,CAAiB,CACpE,CAGJ,CATgBL,EAAAC,EAAA,eAcT,SAASK,EAAmBJ,EAAiC,CAClE,IAAME,EAASH,EAAYC,CAAI,EAE/B,GAAI,CAACE,EACH,MAAM,IAAI,MACR,2FACF,EAGF,OAAOA,CACT,CAVgBJ,EAAAM,EAAA,sBAWT,SAASC,EAAqBC,EAA0C,CAC7E,OAAOA,EAAS,IAAKC,GACZC,EAAU,OAAO,CACtB,QAASD,EAAQ,QACjB,QAAS,CACP,UAAW,MACX,UAAW,KACb,CACF,CAAC,CACF,CACH,CAVgBT,EAAAO,EAAA,wBFzBT,IAAMI,EAAUC,EAACC,GACtB,IAAIC,EAAqC,SAAS,EAC/C,OAAO,gBAAkB,CAgBxB,OAZe,MAHAC,EAAmBF,EAAO,IAAI,EACrB,SAEM,kBAAkB,EAAE,QAAQ,GAElC,SAAS,IAAKG,GAC7BC,EAAU,OAAO,CACtB,QAASD,EAAQ,QACjB,QAAS,CACP,UAAW,MACX,UAAW,KACb,CACF,CAAC,CACF,CAGH,CAAC,EACA,IAAIE,CAAqC,EACzC,OAAOC,CAAc,EACrB,MAAMC,CAAsB,EAtBV,WAwBVC,EAAkBT,EAAA,IAC7B,IAAIE,EAA6C,iBAAiB,EADrC,mBAIlBQ,EAA0BV,EACrCC,GAEA,IAAIU,EAIF,EACC,YAAY,IAAMR,EAAmBF,EAAO,IAAI,CAAC,EAKjD,gBAAgB,CAACW,EAAOC,IAAY,CAC9BD,EAAM,QAAQ,UAAU,SAC3BC,EAAQ,OAAO,YAAY,EAC3BD,EAAM,eAAe,EAEzB,CAAC,EACA,OAAO,MAAOE,EAAGF,IAAUG,EAAqBH,EAAM,QAAQ,CAAC,EAC/D,iBAAiB,CAACI,EAAUC,IAC3BD,EAAS,SAAS,iBAAiB,EAAE,GAAG,SAAUC,CAAQ,CAC5D,EACC,oBAAoB,CAACH,EAAGI,IAAO,CAAC,CAAC,EAvBC,2BGrDvC,IAAAC,EAAA,GAAAC,EAAAD,EAAA,6BAAAE,IAKO,SAASC,EACdC,EACyD,CACzD,OAAOC,EAAS,wBAAwB,CAAE,KAAMD,EAAO,IAAK,CAAC,EAAE,MAAM,CACvE,CAJgBE,EAAAH,EAAA",
|
|
6
|
+
"names": ["actions_exports", "__export", "canEagerConnect", "canEagerConnect", "params", "wallet", "getInstanceOrThrow", "__name", "builders_exports", "__export", "canEagerConnect", "changeAccountSubscriber", "connect", "ActionBuilder", "ChangeAccountSubscriberBuilder", "connectAndUpdateStateForSingleNetwork", "intoConnecting", "intoConnectionFinished", "AccountId", "CAIP_NAMESPACE", "CAIP_SUI_CHAIN_ID", "getNamespaceFromCaip2ChainId", "getWallets", "SUI_MAINNET_CHAIN", "AccountId", "isSuiNamespace", "caip2ChainId", "getNamespaceFromCaip2ChainId", "__name", "getInstance", "name", "getWallets", "wallet", "SUI_MAINNET_CHAIN", "getInstanceOrThrow", "formatAccountsToCAIP", "accounts", "account", "AccountId", "connect", "__name", "params", "ActionBuilder", "getInstanceOrThrow", "account", "AccountId", "connectAndUpdateStateForSingleNetwork", "intoConnecting", "intoConnectionFinished", "canEagerConnect", "changeAccountSubscriber", "ChangeAccountSubscriberBuilder", "event", "context", "_", "formatAccountsToCAIP", "instance", "callback", "__", "hooks_exports", "__export", "changeAccountSubscriber", "changeAccountSubscriber", "params", "builders_exports", "__name"]
|
|
7
7
|
}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { StandardConnectFeature, StandardEventsFeature, SuiFeatures, WalletWithFeatures } from '@mysten/wallet-standard';
|
|
2
|
+
export declare function isSuiNamespace(caip2ChainId: string): boolean;
|
|
2
3
|
type SuiWalletStandard = WalletWithFeatures<StandardConnectFeature & StandardEventsFeature & SuiFeatures>;
|
|
3
4
|
/**
|
|
4
5
|
* @param name each wallet has a name in WalletStandard. you should pass that value
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,EACX,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAQjC,KAAK,iBAAiB,GAAG,kBAAkB,CACzC,sBAAsB,GAAG,qBAAqB,GAAG,WAAW,CAC7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CASvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAUlE;AACD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,YAU5E"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,EACX,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAQjC,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAE5D;AAGD,KAAK,iBAAiB,GAAG,kBAAkB,CACzC,sBAAsB,GAAG,qBAAqB,GAAG,WAAW,CAC7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CASvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAUlE;AACD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,YAU5E"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hub3js/sui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3-next.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"source": "./src/mod.ts",
|
|
@@ -26,14 +26,14 @@
|
|
|
26
26
|
"coverage": "vitest run --coverage"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"@hub3js/core": "^0.61.0"
|
|
29
|
+
"@hub3js/core": "^0.61.1-next.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@hub3js/core": "^0.61.0",
|
|
32
|
+
"@hub3js/core": "^0.61.1-next.0",
|
|
33
33
|
"@types/node": "^25.6.0"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@hub3js/std": "^0.2.
|
|
36
|
+
"@hub3js/std": "^0.2.3-next.0",
|
|
37
37
|
"@mysten/wallet-standard": "^0.13.26",
|
|
38
38
|
"caip": "^1.1.1",
|
|
39
39
|
"rango-types": "^0.5.0"
|
package/src/mod.ts
CHANGED
|
@@ -3,6 +3,6 @@ export type { ProviderAPI, SuiActions } from './types.js';
|
|
|
3
3
|
export * as actions from './actions.js';
|
|
4
4
|
export * as builders from './builders.js';
|
|
5
5
|
export * as hooks from './hooks.js';
|
|
6
|
-
export { getInstanceOrThrow, getInstance } from './utils.js';
|
|
6
|
+
export { getInstanceOrThrow, getInstance, isSuiNamespace } from './utils.js';
|
|
7
7
|
|
|
8
8
|
export { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';
|
package/src/utils.ts
CHANGED
|
@@ -5,11 +5,16 @@ import type {
|
|
|
5
5
|
WalletWithFeatures,
|
|
6
6
|
} from '@mysten/wallet-standard';
|
|
7
7
|
|
|
8
|
+
import { getNamespaceFromCaip2ChainId } from '@hub3js/std/utils';
|
|
8
9
|
import { getWallets, SUI_MAINNET_CHAIN } from '@mysten/wallet-standard';
|
|
9
10
|
import { AccountId } from 'caip';
|
|
10
11
|
|
|
11
12
|
import { CAIP_NAMESPACE, CAIP_SUI_CHAIN_ID } from './constants.js';
|
|
12
13
|
|
|
14
|
+
export function isSuiNamespace(caip2ChainId: string): boolean {
|
|
15
|
+
return getNamespaceFromCaip2ChainId(caip2ChainId) === CAIP_NAMESPACE;
|
|
16
|
+
}
|
|
17
|
+
|
|
13
18
|
// TODO: StandardFetures doesn't work, so we should add each feature separately
|
|
14
19
|
type SuiWalletStandard = WalletWithFeatures<
|
|
15
20
|
StandardConnectFeature & StandardEventsFeature & SuiFeatures
|