@moonbeam-network/xcm-utils 0.0.0 → 0.0.1-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/build/index.cjs +2 -0
  2. package/build/index.cjs.map +1 -0
  3. package/build/index.d.ts +58 -0
  4. package/build/index.mjs +2 -0
  5. package/build/index.mjs.map +1 -0
  6. package/package.json +19 -9
  7. package/build/cjs/package.json +0 -43
  8. package/build/cjs/src/api/index.d.ts +0 -1
  9. package/build/cjs/src/api/index.js +0 -18
  10. package/build/cjs/src/api/index.js.map +0 -1
  11. package/build/cjs/src/api/polkadot.api.d.ts +0 -2
  12. package/build/cjs/src/api/polkadot.api.js +0 -33
  13. package/build/cjs/src/api/polkadot.api.js.map +0 -1
  14. package/build/cjs/src/handlers/createExtrinsicEventHandler.d.ts +0 -3
  15. package/build/cjs/src/handlers/createExtrinsicEventHandler.js +0 -46
  16. package/build/cjs/src/handlers/createExtrinsicEventHandler.js.map +0 -1
  17. package/build/cjs/src/handlers/createTxEventHandler.d.ts +0 -3
  18. package/build/cjs/src/handlers/createTxEventHandler.js +0 -33
  19. package/build/cjs/src/handlers/createTxEventHandler.js.map +0 -1
  20. package/build/cjs/src/handlers/handlers.interfaces.d.ts +0 -23
  21. package/build/cjs/src/handlers/handlers.interfaces.js +0 -10
  22. package/build/cjs/src/handlers/handlers.interfaces.js.map +0 -1
  23. package/build/cjs/src/handlers/index.d.ts +0 -3
  24. package/build/cjs/src/handlers/index.js +0 -20
  25. package/build/cjs/src/handlers/index.js.map +0 -1
  26. package/build/cjs/src/index.d.ts +0 -2
  27. package/build/cjs/src/index.js +0 -19
  28. package/build/cjs/src/index.js.map +0 -1
  29. package/build/cjs/tsconfig.cjs.json +0 -10
  30. package/build/cjs/tsconfig.json +0 -9
  31. package/build/mjs/package.json +0 -43
  32. package/build/mjs/src/api/index.d.ts +0 -1
  33. package/build/mjs/src/api/index.js +0 -18
  34. package/build/mjs/src/api/index.js.map +0 -1
  35. package/build/mjs/src/api/polkadot.api.d.ts +0 -2
  36. package/build/mjs/src/api/polkadot.api.js +0 -33
  37. package/build/mjs/src/api/polkadot.api.js.map +0 -1
  38. package/build/mjs/src/handlers/createExtrinsicEventHandler.d.ts +0 -3
  39. package/build/mjs/src/handlers/createExtrinsicEventHandler.js +0 -46
  40. package/build/mjs/src/handlers/createExtrinsicEventHandler.js.map +0 -1
  41. package/build/mjs/src/handlers/createTxEventHandler.d.ts +0 -3
  42. package/build/mjs/src/handlers/createTxEventHandler.js +0 -33
  43. package/build/mjs/src/handlers/createTxEventHandler.js.map +0 -1
  44. package/build/mjs/src/handlers/handlers.interfaces.d.ts +0 -23
  45. package/build/mjs/src/handlers/handlers.interfaces.js +0 -10
  46. package/build/mjs/src/handlers/handlers.interfaces.js.map +0 -1
  47. package/build/mjs/src/handlers/index.d.ts +0 -3
  48. package/build/mjs/src/handlers/index.js +0 -20
  49. package/build/mjs/src/handlers/index.js.map +0 -1
  50. package/build/mjs/src/index.d.ts +0 -2
  51. package/build/mjs/src/index.js +0 -19
  52. package/build/mjs/src/index.js.map +0 -1
  53. package/build/mjs/tsconfig.cjs.json +0 -10
  54. package/build/mjs/tsconfig.json +0 -9
@@ -0,0 +1,2 @@
1
+ "use strict";var S=Object.create;var a=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var F=(t,e)=>{for(var s in e)a(t,s,{get:e[s],enumerable:!0})},f=(t,e,s,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of g(e))!b.call(t,i)&&i!==s&&a(t,i,{get:()=>e[i],enumerable:!(r=k(e,i))||r.enumerable});return t};var P=(t,e,s)=>(s=t!=null?S(y(t)):{},f(e||!t||!t.__esModule?a(s,"default",{value:t,enumerable:!0}):s,t)),A=t=>f(a({},"__esModule",{value:!0}),t);var R={};F(R,{ExtrinsicStatus:()=>c,createExtrinsicEventHandler:()=>I,createTxEventHandler:()=>H,getPolkadotApi:()=>C});module.exports=A(R);var o=require("@polkadot/api"),v=P(require("lru-cache"),1),w=10*60*1e3,h=new v.default({max:20,ttl:w,updateAgeOnGet:!0,ttlAutopurge:!0,dispose:async t=>{let e=await t;e.isConnected&&e.disconnect()}});async function C(t){let e=h.get(t)||o.ApiPromise.create({provider:new o.WsProvider(t)});h.set(t,e);let s=await e;return await s.isReady,s}var c=(r=>(r.Failed="Failed",r.Sent="Sent",r.Success="Success",r))(c||{});function I(t,e,s){return({events:r=[],status:i,txHash:d})=>{let n=d.toHex();if(i.isReady&&s({status:"Sent",txHash:n}),i.isInBlock){let p=i.asInBlock.toString();r.forEach(({event:{data:x,method:l,section:u}})=>{var m;if(u===t&&l===e){if(l==="Attempted"){let E=x.at(0);if(E.isIncomplete){s({status:"Failed",blockHash:p,txHash:n,message:(m=E.asIncomplete)==null?void 0:m.toHuman().join("; ")});return}}s({status:"Success",blockHash:p,txHash:n})}u==="system"&&l==="ExtrinsicFailed"&&s({status:"Failed",blockHash:p,txHash:n,message:x.join("; ")})})}}}async function H(t,e,s,r=!1){if(!t.provider)throw new Error("options.ethersSigner has not provider");r||s({status:"Sent",txHash:e});let i=await t.provider.getTransactionReceipt(e);if(!i){setTimeout(()=>H(t,e,s,!0),2e3);return}i.status===1?s({status:"Success",blockHash:i.blockHash,txHash:e}):s({status:"Failed",blockHash:i.blockHash,txHash:e})}0&&(module.exports={ExtrinsicStatus,createExtrinsicEventHandler,createTxEventHandler,getPolkadotApi});
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/api/polkadot.api.ts","../src/handlers/handlers.interfaces.ts","../src/handlers/createExtrinsicEventHandler.ts","../src/handlers/createTxEventHandler.ts"],"sourcesContent":["export * from './api';\nexport * from './handlers';\n","import { ApiPromise, WsProvider } from '@polkadot/api';\nimport LRU from 'lru-cache';\n\nconst tenMin = 10 * 60 * 1000;\n\nconst cache = new LRU<string, Promise<ApiPromise>>({\n max: 20,\n ttl: tenMin,\n updateAgeOnGet: true,\n ttlAutopurge: true,\n dispose: async (promise: Promise<ApiPromise>) => {\n const api = await promise;\n\n if (api.isConnected) {\n api.disconnect();\n }\n },\n});\n\nexport async function getPolkadotApi(ws: string): Promise<ApiPromise> {\n const promise =\n cache.get(ws) ||\n ApiPromise.create({\n provider: new WsProvider(ws),\n });\n\n cache.set(ws, promise);\n\n const api = await promise;\n\n await api.isReady;\n\n return api;\n}\n","export type Hash = string;\n\nexport type ExtrinsicEventsCallback = (event: ExtrinsicEvent) => void;\n\nexport type ExtrinsicEvent =\n | ExtrinsicFailedEvent\n | ExtrinsicSentEvent\n | ExtrinsicSuccessEvent;\n\nexport interface ExtrinsicFailedEvent {\n blockHash: Hash;\n message?: string;\n status: ExtrinsicStatus.Failed;\n txHash: Hash;\n}\n\nexport interface ExtrinsicSentEvent {\n status: ExtrinsicStatus.Sent;\n txHash: Hash;\n}\n\nexport interface ExtrinsicSuccessEvent {\n blockHash: Hash;\n status: ExtrinsicStatus.Success;\n txHash: Hash;\n}\n\nexport enum ExtrinsicStatus {\n Failed = 'Failed',\n Sent = 'Sent',\n Success = 'Success',\n}\n","import type { ISubmittableResult } from '@polkadot/types/types';\nimport {\n ExtrinsicEventsCallback,\n ExtrinsicStatus,\n} from './handlers.interfaces';\n\nexport function createExtrinsicEventHandler(\n pallet: string,\n successEvent: string,\n cb: ExtrinsicEventsCallback,\n) {\n return ({ events = [], status, txHash }: ISubmittableResult) => {\n const hash = txHash.toHex();\n\n if (status.isReady) {\n cb({ status: ExtrinsicStatus.Sent, txHash: hash });\n }\n\n if (status.isInBlock) {\n const block = status.asInBlock.toString();\n\n events.forEach(({ event: { data, method, section } }) => {\n if (section === pallet && method === successEvent) {\n if (method === 'Attempted') {\n const eventData = data.at(0) as any;\n\n if (eventData.isIncomplete) {\n cb({\n status: ExtrinsicStatus.Failed,\n blockHash: block,\n txHash: hash,\n message: eventData.asIncomplete?.toHuman().join('; '),\n });\n\n return;\n }\n }\n\n cb({\n status: ExtrinsicStatus.Success,\n blockHash: block,\n txHash: hash,\n });\n }\n\n if (section === 'system' && method === 'ExtrinsicFailed') {\n cb({\n status: ExtrinsicStatus.Failed,\n blockHash: block,\n txHash: hash,\n message: data.join('; '),\n });\n }\n });\n }\n };\n}\n","import type { Signer as EthersSigner } from 'ethers';\nimport {\n ExtrinsicEventsCallback,\n ExtrinsicStatus,\n Hash,\n} from './handlers.interfaces';\n\nexport async function createTxEventHandler(\n ethersSigner: EthersSigner,\n txHash: Hash,\n cb: ExtrinsicEventsCallback,\n skipSentEvent = false,\n) {\n if (!ethersSigner.provider) {\n throw new Error('options.ethersSigner has not provider');\n }\n\n if (!skipSentEvent) {\n cb({ status: ExtrinsicStatus.Sent, txHash });\n }\n\n const tx = await ethersSigner.provider.getTransactionReceipt(txHash);\n\n if (!tx) {\n setTimeout(\n () => createTxEventHandler(ethersSigner, txHash, cb, true),\n 2000,\n );\n return;\n }\n\n if (tx.status === 1) {\n cb({\n status: ExtrinsicStatus.Success,\n blockHash: tx.blockHash,\n txHash,\n });\n } else {\n cb({\n status: ExtrinsicStatus.Failed,\n blockHash: tx.blockHash,\n txHash,\n });\n }\n}\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,EAAA,gCAAAC,EAAA,yBAAAC,EAAA,mBAAAC,IAAA,eAAAC,EAAAN,GCAA,IAAAO,EAAuC,yBACvCC,EAAgB,0BAEVC,EAAS,GAAK,GAAK,IAEnBC,EAAQ,IAAI,EAAAC,QAAiC,CACjD,IAAK,GACL,IAAKF,EACL,eAAgB,GAChB,aAAc,GACd,QAAS,MAAOG,GAAiC,CAC/C,IAAMC,EAAM,MAAMD,EAEdC,EAAI,aACNA,EAAI,WAAW,CAEnB,CACF,CAAC,EAED,eAAsBC,EAAeC,EAAiC,CACpE,IAAMH,EACJF,EAAM,IAAIK,CAAE,GACZ,aAAW,OAAO,CAChB,SAAU,IAAI,aAAWA,CAAE,CAC7B,CAAC,EAEHL,EAAM,IAAIK,EAAIH,CAAO,EAErB,IAAMC,EAAM,MAAMD,EAElB,aAAMC,EAAI,QAEHA,CACT,CCNO,IAAKG,OACVA,EAAA,OAAS,SACTA,EAAA,KAAO,OACPA,EAAA,QAAU,UAHAA,OAAA,ICrBL,SAASC,EACdC,EACAC,EACAC,EACA,CACA,MAAO,CAAC,CAAE,OAAAC,EAAS,CAAC,EAAG,OAAAC,EAAQ,OAAAC,CAAO,IAA0B,CAC9D,IAAMC,EAAOD,EAAO,MAAM,EAM1B,GAJID,EAAO,SACTF,EAAG,CAAE,cAA8B,OAAQI,CAAK,CAAC,EAG/CF,EAAO,UAAW,CACpB,IAAMG,EAAQH,EAAO,UAAU,SAAS,EAExCD,EAAO,QAAQ,CAAC,CAAE,MAAO,CAAE,KAAAK,EAAM,OAAAC,EAAQ,QAAAC,CAAQ,CAAE,IAAM,CArB/D,IAAAC,EAsBQ,GAAID,IAAYV,GAAUS,IAAWR,EAAc,CACjD,GAAIQ,IAAW,YAAa,CAC1B,IAAMG,EAAYJ,EAAK,GAAG,CAAC,EAE3B,GAAII,EAAU,aAAc,CAC1BV,EAAG,CACD,gBACA,UAAWK,EACX,OAAQD,EACR,SAASK,EAAAC,EAAU,eAAV,YAAAD,EAAwB,UAAU,KAAK,KAClD,CAAC,EAED,MACF,CACF,CAEAT,EAAG,CACD,iBACA,UAAWK,EACX,OAAQD,CACV,CAAC,CACH,CAEII,IAAY,UAAYD,IAAW,mBACrCP,EAAG,CACD,gBACA,UAAWK,EACX,OAAQD,EACR,QAASE,EAAK,KAAK,IAAI,CACzB,CAAC,CAEL,CAAC,CACH,CACF,CACF,CCjDA,eAAsBK,EACpBC,EACAC,EACAC,EACAC,EAAgB,GAChB,CACA,GAAI,CAACH,EAAa,SAChB,MAAM,IAAI,MAAM,uCAAuC,EAGpDG,GACHD,EAAG,CAAE,cAA8B,OAAAD,CAAO,CAAC,EAG7C,IAAMG,EAAK,MAAMJ,EAAa,SAAS,sBAAsBC,CAAM,EAEnE,GAAI,CAACG,EAAI,CACP,WACE,IAAML,EAAqBC,EAAcC,EAAQC,EAAI,EAAI,EACzD,GACF,EACA,MACF,CAEIE,EAAG,SAAW,EAChBF,EAAG,CACD,iBACA,UAAWE,EAAG,UACd,OAAAH,CACF,CAAC,EAEDC,EAAG,CACD,gBACA,UAAWE,EAAG,UACd,OAAAH,CACF,CAAC,CAEL","names":["src_exports","__export","ExtrinsicStatus","createExtrinsicEventHandler","createTxEventHandler","getPolkadotApi","__toCommonJS","import_api","import_lru_cache","tenMin","cache","LRU","promise","api","getPolkadotApi","ws","ExtrinsicStatus","createExtrinsicEventHandler","pallet","successEvent","cb","events","status","txHash","hash","block","data","method","section","_a","eventData","createTxEventHandler","ethersSigner","txHash","cb","skipSentEvent","tx"]}
@@ -0,0 +1,58 @@
1
+ import { ApiPromise } from '@polkadot/api';
2
+ import { ISubmittableResult } from '@polkadot/types/types';
3
+ import { Signer } from 'ethers';
4
+
5
+ declare function getPolkadotApi(ws: string): Promise<ApiPromise>;
6
+
7
+ declare type Hash = string;
8
+ declare type ExtrinsicEventsCallback = (event: ExtrinsicEvent) => void;
9
+ declare type ExtrinsicEvent =
10
+ | ExtrinsicFailedEvent
11
+ | ExtrinsicSentEvent
12
+ | ExtrinsicSuccessEvent;
13
+ interface ExtrinsicFailedEvent {
14
+ blockHash: Hash;
15
+ message?: string;
16
+ status: ExtrinsicStatus.Failed;
17
+ txHash: Hash;
18
+ }
19
+ interface ExtrinsicSentEvent {
20
+ status: ExtrinsicStatus.Sent;
21
+ txHash: Hash;
22
+ }
23
+ interface ExtrinsicSuccessEvent {
24
+ blockHash: Hash;
25
+ status: ExtrinsicStatus.Success;
26
+ txHash: Hash;
27
+ }
28
+ declare enum ExtrinsicStatus {
29
+ Failed = 'Failed',
30
+ Sent = 'Sent',
31
+ Success = 'Success',
32
+ }
33
+
34
+ declare function createExtrinsicEventHandler(
35
+ pallet: string,
36
+ successEvent: string,
37
+ cb: ExtrinsicEventsCallback,
38
+ ): ({ events, status, txHash }: ISubmittableResult) => void;
39
+
40
+ declare function createTxEventHandler(
41
+ ethersSigner: Signer,
42
+ txHash: Hash,
43
+ cb: ExtrinsicEventsCallback,
44
+ skipSentEvent?: boolean,
45
+ ): Promise<void>;
46
+
47
+ export {
48
+ ExtrinsicEvent,
49
+ ExtrinsicEventsCallback,
50
+ ExtrinsicFailedEvent,
51
+ ExtrinsicSentEvent,
52
+ ExtrinsicStatus,
53
+ ExtrinsicSuccessEvent,
54
+ Hash,
55
+ createExtrinsicEventHandler,
56
+ createTxEventHandler,
57
+ getPolkadotApi,
58
+ };
@@ -0,0 +1,2 @@
1
+ import{ApiPromise as f,WsProvider as h}from"@polkadot/api";import v from"lru-cache";var H=10*60*1e3,m=new v({max:20,ttl:H,updateAgeOnGet:!0,ttlAutopurge:!0,dispose:async s=>{let t=await s;t.isConnected&&t.disconnect()}});async function g(s){let t=m.get(s)||f.create({provider:new h(s)});m.set(s,t);let e=await t;return await e.isReady,e}var c=(r=>(r.Failed="Failed",r.Sent="Sent",r.Success="Success",r))(c||{});function C(s,t,e){return({events:r=[],status:i,txHash:E})=>{let n=E.toHex();if(i.isReady&&e({status:"Sent",txHash:n}),i.isInBlock){let a=i.asInBlock.toString();r.forEach(({event:{data:p,method:o,section:l}})=>{var x;if(l===s&&o===t){if(o==="Attempted"){let u=p.at(0);if(u.isIncomplete){e({status:"Failed",blockHash:a,txHash:n,message:(x=u.asIncomplete)==null?void 0:x.toHuman().join("; ")});return}}e({status:"Success",blockHash:a,txHash:n})}l==="system"&&o==="ExtrinsicFailed"&&e({status:"Failed",blockHash:a,txHash:n,message:p.join("; ")})})}}}async function d(s,t,e,r=!1){if(!s.provider)throw new Error("options.ethersSigner has not provider");r||e({status:"Sent",txHash:t});let i=await s.provider.getTransactionReceipt(t);if(!i){setTimeout(()=>d(s,t,e,!0),2e3);return}i.status===1?e({status:"Success",blockHash:i.blockHash,txHash:t}):e({status:"Failed",blockHash:i.blockHash,txHash:t})}export{c as ExtrinsicStatus,C as createExtrinsicEventHandler,d as createTxEventHandler,g as getPolkadotApi};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/api/polkadot.api.ts","../src/handlers/handlers.interfaces.ts","../src/handlers/createExtrinsicEventHandler.ts","../src/handlers/createTxEventHandler.ts"],"sourcesContent":["import { ApiPromise, WsProvider } from '@polkadot/api';\nimport LRU from 'lru-cache';\n\nconst tenMin = 10 * 60 * 1000;\n\nconst cache = new LRU<string, Promise<ApiPromise>>({\n max: 20,\n ttl: tenMin,\n updateAgeOnGet: true,\n ttlAutopurge: true,\n dispose: async (promise: Promise<ApiPromise>) => {\n const api = await promise;\n\n if (api.isConnected) {\n api.disconnect();\n }\n },\n});\n\nexport async function getPolkadotApi(ws: string): Promise<ApiPromise> {\n const promise =\n cache.get(ws) ||\n ApiPromise.create({\n provider: new WsProvider(ws),\n });\n\n cache.set(ws, promise);\n\n const api = await promise;\n\n await api.isReady;\n\n return api;\n}\n","export type Hash = string;\n\nexport type ExtrinsicEventsCallback = (event: ExtrinsicEvent) => void;\n\nexport type ExtrinsicEvent =\n | ExtrinsicFailedEvent\n | ExtrinsicSentEvent\n | ExtrinsicSuccessEvent;\n\nexport interface ExtrinsicFailedEvent {\n blockHash: Hash;\n message?: string;\n status: ExtrinsicStatus.Failed;\n txHash: Hash;\n}\n\nexport interface ExtrinsicSentEvent {\n status: ExtrinsicStatus.Sent;\n txHash: Hash;\n}\n\nexport interface ExtrinsicSuccessEvent {\n blockHash: Hash;\n status: ExtrinsicStatus.Success;\n txHash: Hash;\n}\n\nexport enum ExtrinsicStatus {\n Failed = 'Failed',\n Sent = 'Sent',\n Success = 'Success',\n}\n","import type { ISubmittableResult } from '@polkadot/types/types';\nimport {\n ExtrinsicEventsCallback,\n ExtrinsicStatus,\n} from './handlers.interfaces';\n\nexport function createExtrinsicEventHandler(\n pallet: string,\n successEvent: string,\n cb: ExtrinsicEventsCallback,\n) {\n return ({ events = [], status, txHash }: ISubmittableResult) => {\n const hash = txHash.toHex();\n\n if (status.isReady) {\n cb({ status: ExtrinsicStatus.Sent, txHash: hash });\n }\n\n if (status.isInBlock) {\n const block = status.asInBlock.toString();\n\n events.forEach(({ event: { data, method, section } }) => {\n if (section === pallet && method === successEvent) {\n if (method === 'Attempted') {\n const eventData = data.at(0) as any;\n\n if (eventData.isIncomplete) {\n cb({\n status: ExtrinsicStatus.Failed,\n blockHash: block,\n txHash: hash,\n message: eventData.asIncomplete?.toHuman().join('; '),\n });\n\n return;\n }\n }\n\n cb({\n status: ExtrinsicStatus.Success,\n blockHash: block,\n txHash: hash,\n });\n }\n\n if (section === 'system' && method === 'ExtrinsicFailed') {\n cb({\n status: ExtrinsicStatus.Failed,\n blockHash: block,\n txHash: hash,\n message: data.join('; '),\n });\n }\n });\n }\n };\n}\n","import type { Signer as EthersSigner } from 'ethers';\nimport {\n ExtrinsicEventsCallback,\n ExtrinsicStatus,\n Hash,\n} from './handlers.interfaces';\n\nexport async function createTxEventHandler(\n ethersSigner: EthersSigner,\n txHash: Hash,\n cb: ExtrinsicEventsCallback,\n skipSentEvent = false,\n) {\n if (!ethersSigner.provider) {\n throw new Error('options.ethersSigner has not provider');\n }\n\n if (!skipSentEvent) {\n cb({ status: ExtrinsicStatus.Sent, txHash });\n }\n\n const tx = await ethersSigner.provider.getTransactionReceipt(txHash);\n\n if (!tx) {\n setTimeout(\n () => createTxEventHandler(ethersSigner, txHash, cb, true),\n 2000,\n );\n return;\n }\n\n if (tx.status === 1) {\n cb({\n status: ExtrinsicStatus.Success,\n blockHash: tx.blockHash,\n txHash,\n });\n } else {\n cb({\n status: ExtrinsicStatus.Failed,\n blockHash: tx.blockHash,\n txHash,\n });\n }\n}\n"],"mappings":"AAAA,OAAS,cAAAA,EAAY,cAAAC,MAAkB,gBACvC,OAAOC,MAAS,YAEhB,IAAMC,EAAS,GAAK,GAAK,IAEnBC,EAAQ,IAAIF,EAAiC,CACjD,IAAK,GACL,IAAKC,EACL,eAAgB,GAChB,aAAc,GACd,QAAS,MAAOE,GAAiC,CAC/C,IAAMC,EAAM,MAAMD,EAEdC,EAAI,aACNA,EAAI,WAAW,CAEnB,CACF,CAAC,EAED,eAAsBC,EAAeC,EAAiC,CACpE,IAAMH,EACJD,EAAM,IAAII,CAAE,GACZR,EAAW,OAAO,CAChB,SAAU,IAAIC,EAAWO,CAAE,CAC7B,CAAC,EAEHJ,EAAM,IAAII,EAAIH,CAAO,EAErB,IAAMC,EAAM,MAAMD,EAElB,aAAMC,EAAI,QAEHA,CACT,CCNO,IAAKG,OACVA,EAAA,OAAS,SACTA,EAAA,KAAO,OACPA,EAAA,QAAU,UAHAA,OAAA,ICrBL,SAASC,EACdC,EACAC,EACAC,EACA,CACA,MAAO,CAAC,CAAE,OAAAC,EAAS,CAAC,EAAG,OAAAC,EAAQ,OAAAC,CAAO,IAA0B,CAC9D,IAAMC,EAAOD,EAAO,MAAM,EAM1B,GAJID,EAAO,SACTF,EAAG,CAAE,cAA8B,OAAQI,CAAK,CAAC,EAG/CF,EAAO,UAAW,CACpB,IAAMG,EAAQH,EAAO,UAAU,SAAS,EAExCD,EAAO,QAAQ,CAAC,CAAE,MAAO,CAAE,KAAAK,EAAM,OAAAC,EAAQ,QAAAC,CAAQ,CAAE,IAAM,CArB/D,IAAAC,EAsBQ,GAAID,IAAYV,GAAUS,IAAWR,EAAc,CACjD,GAAIQ,IAAW,YAAa,CAC1B,IAAMG,EAAYJ,EAAK,GAAG,CAAC,EAE3B,GAAII,EAAU,aAAc,CAC1BV,EAAG,CACD,gBACA,UAAWK,EACX,OAAQD,EACR,SAASK,EAAAC,EAAU,eAAV,YAAAD,EAAwB,UAAU,KAAK,KAClD,CAAC,EAED,MACF,CACF,CAEAT,EAAG,CACD,iBACA,UAAWK,EACX,OAAQD,CACV,CAAC,CACH,CAEII,IAAY,UAAYD,IAAW,mBACrCP,EAAG,CACD,gBACA,UAAWK,EACX,OAAQD,EACR,QAASE,EAAK,KAAK,IAAI,CACzB,CAAC,CAEL,CAAC,CACH,CACF,CACF,CCjDA,eAAsBK,EACpBC,EACAC,EACAC,EACAC,EAAgB,GAChB,CACA,GAAI,CAACH,EAAa,SAChB,MAAM,IAAI,MAAM,uCAAuC,EAGpDG,GACHD,EAAG,CAAE,cAA8B,OAAAD,CAAO,CAAC,EAG7C,IAAMG,EAAK,MAAMJ,EAAa,SAAS,sBAAsBC,CAAM,EAEnE,GAAI,CAACG,EAAI,CACP,WACE,IAAML,EAAqBC,EAAcC,EAAQC,EAAI,EAAI,EACzD,GACF,EACA,MACF,CAEIE,EAAG,SAAW,EAChBF,EAAG,CACD,iBACA,UAAWE,EAAG,UACd,OAAAH,CACF,CAAC,EAEDC,EAAG,CACD,gBACA,UAAWE,EAAG,UACd,OAAAH,CACF,CAAC,CAEL","names":["ApiPromise","WsProvider","LRU","tenMin","cache","promise","api","getPolkadotApi","ws","ExtrinsicStatus","createExtrinsicEventHandler","pallet","successEvent","cb","events","status","txHash","hash","block","data","method","section","_a","eventData","createTxEventHandler","ethersSigner","txHash","cb","skipSentEvent","tx"]}
package/package.json CHANGED
@@ -1,6 +1,14 @@
1
1
  {
2
2
  "name": "@moonbeam-network/xcm-utils",
3
- "version": "0.0.0",
3
+ "version": "0.0.1-dev.2",
4
+ "description": "Moonbeam XCM utilities",
5
+ "scripts": {
6
+ "build": "tsup",
7
+ "dev": "npm run build -- --watch",
8
+ "lint": "eslint . --ext .js,.ts",
9
+ "lint:fix": "npm run lint -- --fix",
10
+ "prepack": "prettier --write build/index.d.ts"
11
+ },
4
12
  "author": "PureStake",
5
13
  "license": "MIT",
6
14
  "repository": {
@@ -21,23 +29,25 @@
21
29
  "files": [
22
30
  "build"
23
31
  ],
24
- "type": "commonjs",
32
+ "type": "module",
25
33
  "exports": {
26
34
  ".": {
27
35
  "import": {
28
- "types": "./build/mjs/src/index.d.ts",
29
- "default": "./build/mjs/src/index.js"
36
+ "types": "./build/index.d.ts",
37
+ "default": "./build/index.mjs"
30
38
  },
31
39
  "require": {
32
- "types": "./build/cjs/src/index.d.ts",
33
- "default": "./build/cjs/src/index.js"
40
+ "types": "./build/index.d.ts",
41
+ "default": "./build/index.cjs"
34
42
  }
35
43
  }
36
44
  },
37
- "types": "./build/cjs/src/index.d.ts",
38
- "main": "./build/cjs/src/index.js",
45
+ "types": "./build/index.d.ts",
46
+ "main": "./build/index.cjs",
39
47
  "dependencies": {
40
- "@polkadot/api": "^9.5.2",
41
48
  "lru-cache": "^7.14.0"
49
+ },
50
+ "peerDependencies": {
51
+ "@polkadot/api": "9.x"
42
52
  }
43
53
  }
@@ -1,43 +0,0 @@
1
- {
2
- "name": "@moonbeam-network/xcm-utils",
3
- "version": "0.0.0",
4
- "author": "PureStake",
5
- "license": "MIT",
6
- "repository": {
7
- "directory": "packages/utils",
8
- "type": "git",
9
- "url": "git+https://github.com/PureStake/xcm-sdk.git"
10
- },
11
- "keywords": [
12
- "moonbeam",
13
- "moonriver",
14
- "xcm",
15
- "utils"
16
- ],
17
- "bugs": {
18
- "url": "https://github.com/PureStake/xcm-sdk/issues"
19
- },
20
- "homepage": "https://docs.moonbeam.network/builders/xcm/xcm-sdk/xcm-sdk/",
21
- "files": [
22
- "build"
23
- ],
24
- "type": "commonjs",
25
- "exports": {
26
- ".": {
27
- "import": {
28
- "types": "./build/mjs/src/index.d.ts",
29
- "default": "./build/mjs/src/index.js"
30
- },
31
- "require": {
32
- "types": "./build/cjs/src/index.d.ts",
33
- "default": "./build/cjs/src/index.js"
34
- }
35
- }
36
- },
37
- "types": "./build/cjs/src/index.d.ts",
38
- "main": "./build/cjs/src/index.js",
39
- "dependencies": {
40
- "@polkadot/api": "^9.5.2",
41
- "lru-cache": "^7.14.0"
42
- }
43
- }
@@ -1 +0,0 @@
1
- export * from './polkadot.api';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./polkadot.api"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
@@ -1,2 +0,0 @@
1
- import { ApiPromise } from '@polkadot/api';
2
- export declare function getPolkadotApi(ws: string): Promise<ApiPromise>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getPolkadotApi = void 0;
7
- const api_1 = require("@polkadot/api");
8
- const lru_cache_1 = __importDefault(require("lru-cache"));
9
- const tenMin = 10 * 60 * 1000;
10
- const cache = new lru_cache_1.default({
11
- max: 20,
12
- ttl: tenMin,
13
- updateAgeOnGet: true,
14
- ttlAutopurge: true,
15
- dispose: async (promise) => {
16
- const api = await promise;
17
- if (api.isConnected) {
18
- api.disconnect();
19
- }
20
- },
21
- });
22
- async function getPolkadotApi(ws) {
23
- const promise = cache.get(ws) ||
24
- api_1.ApiPromise.create({
25
- provider: new api_1.WsProvider(ws),
26
- });
27
- cache.set(ws, promise);
28
- const api = await promise;
29
- await api.isReady;
30
- return api;
31
- }
32
- exports.getPolkadotApi = getPolkadotApi;
33
- //# sourceMappingURL=polkadot.api.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"polkadot.api.js","sourceRoot":"","sources":["../../../../src/api/polkadot.api.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAuD;AACvD,0DAA4B;AAE5B,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9B,MAAM,KAAK,GAAG,IAAI,mBAAG,CAA8B;IACjD,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,MAAM;IACX,cAAc,EAAE,IAAI;IACpB,YAAY,EAAE,IAAI;IAClB,OAAO,EAAE,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC;QAE1B,IAAI,GAAG,CAAC,WAAW,EAAE;YACnB,GAAG,CAAC,UAAU,EAAE,CAAC;SAClB;IACH,CAAC;CACF,CAAC,CAAC;AAEI,KAAK,UAAU,cAAc,CAAC,EAAU;IAC7C,MAAM,OAAO,GACX,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,gBAAU,CAAC,MAAM,CAAC;YAChB,QAAQ,EAAE,IAAI,gBAAU,CAAC,EAAE,CAAC;SAC7B,CAAC,CAAC;IAEL,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAEvB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC;IAE1B,MAAM,GAAG,CAAC,OAAO,CAAC;IAElB,OAAO,GAAG,CAAC;AACb,CAAC;AAdD,wCAcC"}
@@ -1,3 +0,0 @@
1
- import type { ISubmittableResult } from '@polkadot/types/types';
2
- import { ExtrinsicEventsCallback } from './handlers.interfaces';
3
- export declare function createExtrinsicEventHandler(pallet: string, successEvent: string, cb: ExtrinsicEventsCallback): ({ events, status, txHash }: ISubmittableResult) => void;
@@ -1,46 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createExtrinsicEventHandler = void 0;
4
- const handlers_interfaces_1 = require("./handlers.interfaces");
5
- function createExtrinsicEventHandler(pallet, successEvent, cb) {
6
- return ({ events = [], status, txHash }) => {
7
- const hash = txHash.toHex();
8
- if (status.isReady) {
9
- cb({ status: handlers_interfaces_1.ExtrinsicStatus.Sent, txHash: hash });
10
- }
11
- if (status.isInBlock) {
12
- const block = status.asInBlock.toString();
13
- events.forEach(({ event: { data, method, section } }) => {
14
- if (section === pallet && method === successEvent) {
15
- if (method === 'Attempted') {
16
- const eventData = data.at(0);
17
- if (eventData.isIncomplete) {
18
- cb({
19
- status: handlers_interfaces_1.ExtrinsicStatus.Failed,
20
- blockHash: block,
21
- txHash: hash,
22
- message: eventData.asIncomplete.toHuman().join('; '),
23
- });
24
- return;
25
- }
26
- }
27
- cb({
28
- status: handlers_interfaces_1.ExtrinsicStatus.Success,
29
- blockHash: block,
30
- txHash: hash,
31
- });
32
- }
33
- if (section === 'system' && method === 'ExtrinsicFailed') {
34
- cb({
35
- status: handlers_interfaces_1.ExtrinsicStatus.Failed,
36
- blockHash: block,
37
- txHash: hash,
38
- message: data.join('; '),
39
- });
40
- }
41
- });
42
- }
43
- };
44
- }
45
- exports.createExtrinsicEventHandler = createExtrinsicEventHandler;
46
- //# sourceMappingURL=createExtrinsicEventHandler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createExtrinsicEventHandler.js","sourceRoot":"","sources":["../../../../src/handlers/createExtrinsicEventHandler.ts"],"names":[],"mappings":";;;AACA,+DAG+B;AAE/B,SAAgB,2BAA2B,CACzC,MAAc,EACd,YAAoB,EACpB,EAA2B;IAE3B,OAAO,CAAC,EAAE,MAAM,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAsB,EAAE,EAAE;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE5B,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,EAAE,CAAC,EAAE,MAAM,EAAE,qCAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;SACpD;QAED,IAAI,MAAM,CAAC,SAAS,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAE1C,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE;gBACtD,IAAI,OAAO,KAAK,MAAM,IAAI,MAAM,KAAK,YAAY,EAAE;oBACjD,IAAI,MAAM,KAAK,WAAW,EAAE;wBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAQ,CAAC;wBAEpC,IAAI,SAAS,CAAC,YAAY,EAAE;4BAC1B,EAAE,CAAC;gCACD,MAAM,EAAE,qCAAe,CAAC,MAAM;gCAC9B,SAAS,EAAE,KAAK;gCAChB,MAAM,EAAE,IAAI;gCACZ,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;6BACrD,CAAC,CAAC;4BAEH,OAAO;yBACR;qBACF;oBAED,EAAE,CAAC;wBACD,MAAM,EAAE,qCAAe,CAAC,OAAO;wBAC/B,SAAS,EAAE,KAAK;wBAChB,MAAM,EAAE,IAAI;qBACb,CAAC,CAAC;iBACJ;gBAED,IAAI,OAAO,KAAK,QAAQ,IAAI,MAAM,KAAK,iBAAiB,EAAE;oBACxD,EAAE,CAAC;wBACD,MAAM,EAAE,qCAAe,CAAC,MAAM;wBAC9B,SAAS,EAAE,KAAK;wBAChB,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;qBACzB,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;AACJ,CAAC;AAlDD,kEAkDC"}
@@ -1,3 +0,0 @@
1
- import type { Signer as EthersSigner } from 'ethers';
2
- import { ExtrinsicEventsCallback, Hash } from './handlers.interfaces';
3
- export declare function createTxEventHandler(ethersSigner: EthersSigner, txHash: Hash, cb: ExtrinsicEventsCallback, skipSentEvent?: boolean): Promise<void>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createTxEventHandler = void 0;
4
- const handlers_interfaces_1 = require("./handlers.interfaces");
5
- async function createTxEventHandler(ethersSigner, txHash, cb, skipSentEvent = false) {
6
- if (!ethersSigner.provider) {
7
- throw new Error('options.ethersSigner has not provider');
8
- }
9
- if (!skipSentEvent) {
10
- cb({ status: handlers_interfaces_1.ExtrinsicStatus.Sent, txHash });
11
- }
12
- const tx = await ethersSigner.provider.getTransactionReceipt(txHash);
13
- if (!tx) {
14
- setTimeout(() => createTxEventHandler(ethersSigner, txHash, cb, true), 2000);
15
- return;
16
- }
17
- if (tx.status === 1) {
18
- cb({
19
- status: handlers_interfaces_1.ExtrinsicStatus.Success,
20
- blockHash: tx.blockHash,
21
- txHash,
22
- });
23
- }
24
- else {
25
- cb({
26
- status: handlers_interfaces_1.ExtrinsicStatus.Failed,
27
- blockHash: tx.blockHash,
28
- txHash,
29
- });
30
- }
31
- }
32
- exports.createTxEventHandler = createTxEventHandler;
33
- //# sourceMappingURL=createTxEventHandler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createTxEventHandler.js","sourceRoot":"","sources":["../../../../src/handlers/createTxEventHandler.ts"],"names":[],"mappings":";;;AACA,+DAI+B;AAExB,KAAK,UAAU,oBAAoB,CACxC,YAA0B,EAC1B,MAAY,EACZ,EAA2B,EAC3B,aAAa,GAAG,KAAK;IAErB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,EAAE,CAAC,EAAE,MAAM,EAAE,qCAAe,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;KAC9C;IAED,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAErE,IAAI,CAAC,EAAE,EAAE;QACP,UAAU,CACR,GAAG,EAAE,CAAC,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAC1D,IAAI,CACL,CAAC;QACF,OAAO;KACR;IAED,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACnB,EAAE,CAAC;YACD,MAAM,EAAE,qCAAe,CAAC,OAAO;YAC/B,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,MAAM;SACP,CAAC,CAAC;KACJ;SAAM;QACL,EAAE,CAAC;YACD,MAAM,EAAE,qCAAe,CAAC,MAAM;YAC9B,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,MAAM;SACP,CAAC,CAAC;KACJ;AACH,CAAC;AArCD,oDAqCC"}
@@ -1,23 +0,0 @@
1
- export declare type Hash = string;
2
- export declare type ExtrinsicEventsCallback = (event: ExtrinsicEvent) => void;
3
- export declare type ExtrinsicEvent = ExtrinsicFailedEvent | ExtrinsicSentEvent | ExtrinsicSuccessEvent;
4
- export interface ExtrinsicFailedEvent {
5
- blockHash: Hash;
6
- message?: string;
7
- status: ExtrinsicStatus.Failed;
8
- txHash: Hash;
9
- }
10
- export interface ExtrinsicSentEvent {
11
- status: ExtrinsicStatus.Sent;
12
- txHash: Hash;
13
- }
14
- export interface ExtrinsicSuccessEvent {
15
- blockHash: Hash;
16
- status: ExtrinsicStatus.Success;
17
- txHash: Hash;
18
- }
19
- export declare enum ExtrinsicStatus {
20
- Failed = "Failed",
21
- Sent = "Sent",
22
- Success = "Success"
23
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExtrinsicStatus = void 0;
4
- var ExtrinsicStatus;
5
- (function (ExtrinsicStatus) {
6
- ExtrinsicStatus["Failed"] = "Failed";
7
- ExtrinsicStatus["Sent"] = "Sent";
8
- ExtrinsicStatus["Success"] = "Success";
9
- })(ExtrinsicStatus = exports.ExtrinsicStatus || (exports.ExtrinsicStatus = {}));
10
- //# sourceMappingURL=handlers.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handlers.interfaces.js","sourceRoot":"","sources":["../../../../src/handlers/handlers.interfaces.ts"],"names":[],"mappings":";;;AA2BA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
@@ -1,3 +0,0 @@
1
- export * from './createExtrinsicEventHandler';
2
- export * from './createTxEventHandler';
3
- export * from './handlers.interfaces';
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./createExtrinsicEventHandler"), exports);
18
- __exportStar(require("./createTxEventHandler"), exports);
19
- __exportStar(require("./handlers.interfaces"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/handlers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C;AAC9C,yDAAuC;AACvC,wDAAsC"}
@@ -1,2 +0,0 @@
1
- export * from './api';
2
- export * from './handlers';
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./api"), exports);
18
- __exportStar(require("./handlers"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,6CAA2B"}
@@ -1,10 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "module": "commonjs",
5
- "rootDir": ".",
6
- "outDir": "build/cjs"
7
- },
8
- "include": ["src", "**/*.json"],
9
- "exclude": ["**/*.test.ts", "build"]
10
- }
@@ -1,9 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "rootDir": ".",
5
- "outDir": "build/mjs"
6
- },
7
- "include": ["src", "**/*.json"],
8
- "exclude": ["**/*.test.ts", "build"]
9
- }
@@ -1,43 +0,0 @@
1
- {
2
- "name": "@moonbeam-network/xcm-utils",
3
- "version": "0.0.0",
4
- "author": "PureStake",
5
- "license": "MIT",
6
- "repository": {
7
- "directory": "packages/utils",
8
- "type": "git",
9
- "url": "git+https://github.com/PureStake/xcm-sdk.git"
10
- },
11
- "keywords": [
12
- "moonbeam",
13
- "moonriver",
14
- "xcm",
15
- "utils"
16
- ],
17
- "bugs": {
18
- "url": "https://github.com/PureStake/xcm-sdk/issues"
19
- },
20
- "homepage": "https://docs.moonbeam.network/builders/xcm/xcm-sdk/xcm-sdk/",
21
- "files": [
22
- "build"
23
- ],
24
- "type": "commonjs",
25
- "exports": {
26
- ".": {
27
- "import": {
28
- "types": "./build/mjs/src/index.d.ts",
29
- "default": "./build/mjs/src/index.js"
30
- },
31
- "require": {
32
- "types": "./build/cjs/src/index.d.ts",
33
- "default": "./build/cjs/src/index.js"
34
- }
35
- }
36
- },
37
- "types": "./build/cjs/src/index.d.ts",
38
- "main": "./build/cjs/src/index.js",
39
- "dependencies": {
40
- "@polkadot/api": "^9.5.2",
41
- "lru-cache": "^7.14.0"
42
- }
43
- }
@@ -1 +0,0 @@
1
- export * from './polkadot.api';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./polkadot.api"), exports);
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
@@ -1,2 +0,0 @@
1
- import { ApiPromise } from '@polkadot/api';
2
- export declare function getPolkadotApi(ws: string): Promise<ApiPromise>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getPolkadotApi = void 0;
7
- const api_1 = require("@polkadot/api");
8
- const lru_cache_1 = __importDefault(require("lru-cache"));
9
- const tenMin = 10 * 60 * 1000;
10
- const cache = new lru_cache_1.default({
11
- max: 20,
12
- ttl: tenMin,
13
- updateAgeOnGet: true,
14
- ttlAutopurge: true,
15
- dispose: async (promise) => {
16
- const api = await promise;
17
- if (api.isConnected) {
18
- api.disconnect();
19
- }
20
- },
21
- });
22
- async function getPolkadotApi(ws) {
23
- const promise = cache.get(ws) ||
24
- api_1.ApiPromise.create({
25
- provider: new api_1.WsProvider(ws),
26
- });
27
- cache.set(ws, promise);
28
- const api = await promise;
29
- await api.isReady;
30
- return api;
31
- }
32
- exports.getPolkadotApi = getPolkadotApi;
33
- //# sourceMappingURL=polkadot.api.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"polkadot.api.js","sourceRoot":"","sources":["../../../../src/api/polkadot.api.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAuD;AACvD,0DAA4B;AAE5B,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9B,MAAM,KAAK,GAAG,IAAI,mBAAG,CAA8B;IACjD,GAAG,EAAE,EAAE;IACP,GAAG,EAAE,MAAM;IACX,cAAc,EAAE,IAAI;IACpB,YAAY,EAAE,IAAI;IAClB,OAAO,EAAE,KAAK,EAAE,OAA4B,EAAE,EAAE;QAC9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC;QAE1B,IAAI,GAAG,CAAC,WAAW,EAAE;YACnB,GAAG,CAAC,UAAU,EAAE,CAAC;SAClB;IACH,CAAC;CACF,CAAC,CAAC;AAEI,KAAK,UAAU,cAAc,CAAC,EAAU;IAC7C,MAAM,OAAO,GACX,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,gBAAU,CAAC,MAAM,CAAC;YAChB,QAAQ,EAAE,IAAI,gBAAU,CAAC,EAAE,CAAC;SAC7B,CAAC,CAAC;IAEL,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAEvB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC;IAE1B,MAAM,GAAG,CAAC,OAAO,CAAC;IAElB,OAAO,GAAG,CAAC;AACb,CAAC;AAdD,wCAcC"}
@@ -1,3 +0,0 @@
1
- import type { ISubmittableResult } from '@polkadot/types/types';
2
- import { ExtrinsicEventsCallback } from './handlers.interfaces';
3
- export declare function createExtrinsicEventHandler(pallet: string, successEvent: string, cb: ExtrinsicEventsCallback): ({ events, status, txHash }: ISubmittableResult) => void;
@@ -1,46 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createExtrinsicEventHandler = void 0;
4
- const handlers_interfaces_1 = require("./handlers.interfaces");
5
- function createExtrinsicEventHandler(pallet, successEvent, cb) {
6
- return ({ events = [], status, txHash }) => {
7
- const hash = txHash.toHex();
8
- if (status.isReady) {
9
- cb({ status: handlers_interfaces_1.ExtrinsicStatus.Sent, txHash: hash });
10
- }
11
- if (status.isInBlock) {
12
- const block = status.asInBlock.toString();
13
- events.forEach(({ event: { data, method, section } }) => {
14
- if (section === pallet && method === successEvent) {
15
- if (method === 'Attempted') {
16
- const eventData = data.at(0);
17
- if (eventData.isIncomplete) {
18
- cb({
19
- status: handlers_interfaces_1.ExtrinsicStatus.Failed,
20
- blockHash: block,
21
- txHash: hash,
22
- message: eventData.asIncomplete.toHuman().join('; '),
23
- });
24
- return;
25
- }
26
- }
27
- cb({
28
- status: handlers_interfaces_1.ExtrinsicStatus.Success,
29
- blockHash: block,
30
- txHash: hash,
31
- });
32
- }
33
- if (section === 'system' && method === 'ExtrinsicFailed') {
34
- cb({
35
- status: handlers_interfaces_1.ExtrinsicStatus.Failed,
36
- blockHash: block,
37
- txHash: hash,
38
- message: data.join('; '),
39
- });
40
- }
41
- });
42
- }
43
- };
44
- }
45
- exports.createExtrinsicEventHandler = createExtrinsicEventHandler;
46
- //# sourceMappingURL=createExtrinsicEventHandler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createExtrinsicEventHandler.js","sourceRoot":"","sources":["../../../../src/handlers/createExtrinsicEventHandler.ts"],"names":[],"mappings":";;;AACA,+DAG+B;AAE/B,SAAgB,2BAA2B,CACzC,MAAc,EACd,YAAoB,EACpB,EAA2B;IAE3B,OAAO,CAAC,EAAE,MAAM,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAsB,EAAE,EAAE;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE5B,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,EAAE,CAAC,EAAE,MAAM,EAAE,qCAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;SACpD;QAED,IAAI,MAAM,CAAC,SAAS,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAE1C,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE;gBACtD,IAAI,OAAO,KAAK,MAAM,IAAI,MAAM,KAAK,YAAY,EAAE;oBACjD,IAAI,MAAM,KAAK,WAAW,EAAE;wBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAQ,CAAC;wBAEpC,IAAI,SAAS,CAAC,YAAY,EAAE;4BAC1B,EAAE,CAAC;gCACD,MAAM,EAAE,qCAAe,CAAC,MAAM;gCAC9B,SAAS,EAAE,KAAK;gCAChB,MAAM,EAAE,IAAI;gCACZ,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;6BACrD,CAAC,CAAC;4BAEH,OAAO;yBACR;qBACF;oBAED,EAAE,CAAC;wBACD,MAAM,EAAE,qCAAe,CAAC,OAAO;wBAC/B,SAAS,EAAE,KAAK;wBAChB,MAAM,EAAE,IAAI;qBACb,CAAC,CAAC;iBACJ;gBAED,IAAI,OAAO,KAAK,QAAQ,IAAI,MAAM,KAAK,iBAAiB,EAAE;oBACxD,EAAE,CAAC;wBACD,MAAM,EAAE,qCAAe,CAAC,MAAM;wBAC9B,SAAS,EAAE,KAAK;wBAChB,MAAM,EAAE,IAAI;wBACZ,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;qBACzB,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;AACJ,CAAC;AAlDD,kEAkDC"}
@@ -1,3 +0,0 @@
1
- import type { Signer as EthersSigner } from 'ethers';
2
- import { ExtrinsicEventsCallback, Hash } from './handlers.interfaces';
3
- export declare function createTxEventHandler(ethersSigner: EthersSigner, txHash: Hash, cb: ExtrinsicEventsCallback, skipSentEvent?: boolean): Promise<void>;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createTxEventHandler = void 0;
4
- const handlers_interfaces_1 = require("./handlers.interfaces");
5
- async function createTxEventHandler(ethersSigner, txHash, cb, skipSentEvent = false) {
6
- if (!ethersSigner.provider) {
7
- throw new Error('options.ethersSigner has not provider');
8
- }
9
- if (!skipSentEvent) {
10
- cb({ status: handlers_interfaces_1.ExtrinsicStatus.Sent, txHash });
11
- }
12
- const tx = await ethersSigner.provider.getTransactionReceipt(txHash);
13
- if (!tx) {
14
- setTimeout(() => createTxEventHandler(ethersSigner, txHash, cb, true), 2000);
15
- return;
16
- }
17
- if (tx.status === 1) {
18
- cb({
19
- status: handlers_interfaces_1.ExtrinsicStatus.Success,
20
- blockHash: tx.blockHash,
21
- txHash,
22
- });
23
- }
24
- else {
25
- cb({
26
- status: handlers_interfaces_1.ExtrinsicStatus.Failed,
27
- blockHash: tx.blockHash,
28
- txHash,
29
- });
30
- }
31
- }
32
- exports.createTxEventHandler = createTxEventHandler;
33
- //# sourceMappingURL=createTxEventHandler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createTxEventHandler.js","sourceRoot":"","sources":["../../../../src/handlers/createTxEventHandler.ts"],"names":[],"mappings":";;;AACA,+DAI+B;AAExB,KAAK,UAAU,oBAAoB,CACxC,YAA0B,EAC1B,MAAY,EACZ,EAA2B,EAC3B,aAAa,GAAG,KAAK;IAErB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;KAC1D;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,EAAE,CAAC,EAAE,MAAM,EAAE,qCAAe,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;KAC9C;IAED,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAErE,IAAI,CAAC,EAAE,EAAE;QACP,UAAU,CACR,GAAG,EAAE,CAAC,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAC1D,IAAI,CACL,CAAC;QACF,OAAO;KACR;IAED,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACnB,EAAE,CAAC;YACD,MAAM,EAAE,qCAAe,CAAC,OAAO;YAC/B,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,MAAM;SACP,CAAC,CAAC;KACJ;SAAM;QACL,EAAE,CAAC;YACD,MAAM,EAAE,qCAAe,CAAC,MAAM;YAC9B,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,MAAM;SACP,CAAC,CAAC;KACJ;AACH,CAAC;AArCD,oDAqCC"}
@@ -1,23 +0,0 @@
1
- export declare type Hash = string;
2
- export declare type ExtrinsicEventsCallback = (event: ExtrinsicEvent) => void;
3
- export declare type ExtrinsicEvent = ExtrinsicFailedEvent | ExtrinsicSentEvent | ExtrinsicSuccessEvent;
4
- export interface ExtrinsicFailedEvent {
5
- blockHash: Hash;
6
- message?: string;
7
- status: ExtrinsicStatus.Failed;
8
- txHash: Hash;
9
- }
10
- export interface ExtrinsicSentEvent {
11
- status: ExtrinsicStatus.Sent;
12
- txHash: Hash;
13
- }
14
- export interface ExtrinsicSuccessEvent {
15
- blockHash: Hash;
16
- status: ExtrinsicStatus.Success;
17
- txHash: Hash;
18
- }
19
- export declare enum ExtrinsicStatus {
20
- Failed = "Failed",
21
- Sent = "Sent",
22
- Success = "Success"
23
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExtrinsicStatus = void 0;
4
- var ExtrinsicStatus;
5
- (function (ExtrinsicStatus) {
6
- ExtrinsicStatus["Failed"] = "Failed";
7
- ExtrinsicStatus["Sent"] = "Sent";
8
- ExtrinsicStatus["Success"] = "Success";
9
- })(ExtrinsicStatus = exports.ExtrinsicStatus || (exports.ExtrinsicStatus = {}));
10
- //# sourceMappingURL=handlers.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handlers.interfaces.js","sourceRoot":"","sources":["../../../../src/handlers/handlers.interfaces.ts"],"names":[],"mappings":";;;AA2BA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,gCAAa,CAAA;IACb,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"}
@@ -1,3 +0,0 @@
1
- export * from './createExtrinsicEventHandler';
2
- export * from './createTxEventHandler';
3
- export * from './handlers.interfaces';
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./createExtrinsicEventHandler"), exports);
18
- __exportStar(require("./createTxEventHandler"), exports);
19
- __exportStar(require("./handlers.interfaces"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/handlers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gEAA8C;AAC9C,yDAAuC;AACvC,wDAAsC"}
@@ -1,2 +0,0 @@
1
- export * from './api';
2
- export * from './handlers';
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./api"), exports);
18
- __exportStar(require("./handlers"), exports);
19
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,6CAA2B"}
@@ -1,10 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "module": "commonjs",
5
- "rootDir": ".",
6
- "outDir": "build/cjs"
7
- },
8
- "include": ["src", "**/*.json"],
9
- "exclude": ["**/*.test.ts", "build"]
10
- }
@@ -1,9 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "rootDir": ".",
5
- "outDir": "build/mjs"
6
- },
7
- "include": ["src", "**/*.json"],
8
- "exclude": ["**/*.test.ts", "build"]
9
- }