@trixter-osec/core 0.40.4

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 (487) hide show
  1. package/README.md +10 -0
  2. package/dist/browser/index.js +7217 -0
  3. package/dist/browser/index.js.map +1 -0
  4. package/dist/browser/src/coder/borsh/accounts.d.ts +27 -0
  5. package/dist/browser/src/coder/borsh/accounts.d.ts.map +1 -0
  6. package/dist/browser/src/coder/borsh/event.d.ts +14 -0
  7. package/dist/browser/src/coder/borsh/event.d.ts.map +1 -0
  8. package/dist/browser/src/coder/borsh/idl.d.ts +32 -0
  9. package/dist/browser/src/coder/borsh/idl.d.ts.map +1 -0
  10. package/dist/browser/src/coder/borsh/index.d.ts +33 -0
  11. package/dist/browser/src/coder/borsh/index.d.ts.map +1 -0
  12. package/dist/browser/src/coder/borsh/instruction.d.ts +42 -0
  13. package/dist/browser/src/coder/borsh/instruction.d.ts.map +1 -0
  14. package/dist/browser/src/coder/borsh/types.d.ts +16 -0
  15. package/dist/browser/src/coder/borsh/types.d.ts.map +1 -0
  16. package/dist/browser/src/coder/index.d.ts +43 -0
  17. package/dist/browser/src/coder/index.d.ts.map +1 -0
  18. package/dist/browser/src/coder/system/accounts.d.ts +12 -0
  19. package/dist/browser/src/coder/system/accounts.d.ts.map +1 -0
  20. package/dist/browser/src/coder/system/events.d.ts +9 -0
  21. package/dist/browser/src/coder/system/events.d.ts.map +1 -0
  22. package/dist/browser/src/coder/system/index.d.ts +17 -0
  23. package/dist/browser/src/coder/system/index.d.ts.map +1 -0
  24. package/dist/browser/src/coder/system/instruction.d.ts +8 -0
  25. package/dist/browser/src/coder/system/instruction.d.ts.map +1 -0
  26. package/dist/browser/src/coder/system/types.d.ts +8 -0
  27. package/dist/browser/src/coder/system/types.d.ts.map +1 -0
  28. package/dist/browser/src/error.d.ts +128 -0
  29. package/dist/browser/src/error.d.ts.map +1 -0
  30. package/dist/browser/src/idl.d.ts +215 -0
  31. package/dist/browser/src/idl.d.ts.map +1 -0
  32. package/dist/browser/src/index.d.ts +16 -0
  33. package/dist/browser/src/index.d.ts.map +1 -0
  34. package/dist/browser/src/native/index.d.ts +7 -0
  35. package/dist/browser/src/native/index.d.ts.map +1 -0
  36. package/dist/browser/src/native/system.d.ts +390 -0
  37. package/dist/browser/src/native/system.d.ts.map +1 -0
  38. package/dist/browser/src/nodewallet.d.ts +14 -0
  39. package/dist/browser/src/nodewallet.d.ts.map +1 -0
  40. package/dist/browser/src/program/accounts-resolver.d.ts +63 -0
  41. package/dist/browser/src/program/accounts-resolver.d.ts.map +1 -0
  42. package/dist/browser/src/program/common.d.ts +20 -0
  43. package/dist/browser/src/program/common.d.ts.map +1 -0
  44. package/dist/browser/src/program/context.d.ts +63 -0
  45. package/dist/browser/src/program/context.d.ts.map +1 -0
  46. package/dist/browser/src/program/event.d.ts +59 -0
  47. package/dist/browser/src/program/event.d.ts.map +1 -0
  48. package/dist/browser/src/program/index.d.ts +272 -0
  49. package/dist/browser/src/program/index.d.ts.map +1 -0
  50. package/dist/browser/src/program/namespace/account.d.ts +146 -0
  51. package/dist/browser/src/program/namespace/account.d.ts.map +1 -0
  52. package/dist/browser/src/program/namespace/index.d.ts +35 -0
  53. package/dist/browser/src/program/namespace/index.d.ts.map +1 -0
  54. package/dist/browser/src/program/namespace/instruction.d.ts +57 -0
  55. package/dist/browser/src/program/namespace/instruction.d.ts.map +1 -0
  56. package/dist/browser/src/program/namespace/methods.d.ts +206 -0
  57. package/dist/browser/src/program/namespace/methods.d.ts.map +1 -0
  58. package/dist/browser/src/program/namespace/rpc.d.ts +49 -0
  59. package/dist/browser/src/program/namespace/rpc.d.ts.map +1 -0
  60. package/dist/browser/src/program/namespace/simulate.d.ts +57 -0
  61. package/dist/browser/src/program/namespace/simulate.d.ts.map +1 -0
  62. package/dist/browser/src/program/namespace/transaction.d.ts +42 -0
  63. package/dist/browser/src/program/namespace/transaction.d.ts.map +1 -0
  64. package/dist/browser/src/program/namespace/types.d.ts +153 -0
  65. package/dist/browser/src/program/namespace/types.d.ts.map +1 -0
  66. package/dist/browser/src/program/namespace/views.d.ts +15 -0
  67. package/dist/browser/src/program/namespace/views.d.ts.map +1 -0
  68. package/dist/browser/src/program/token-account-layout.d.ts +2 -0
  69. package/dist/browser/src/program/token-account-layout.d.ts.map +1 -0
  70. package/dist/browser/src/provider.d.ts +104 -0
  71. package/dist/browser/src/provider.d.ts.map +1 -0
  72. package/dist/browser/src/utils/bytes/base64.d.ts +4 -0
  73. package/dist/browser/src/utils/bytes/base64.d.ts.map +1 -0
  74. package/dist/browser/src/utils/bytes/bs58.d.ts +3 -0
  75. package/dist/browser/src/utils/bytes/bs58.d.ts.map +1 -0
  76. package/dist/browser/src/utils/bytes/hex.d.ts +4 -0
  77. package/dist/browser/src/utils/bytes/hex.d.ts.map +1 -0
  78. package/dist/browser/src/utils/bytes/index.d.ts +5 -0
  79. package/dist/browser/src/utils/bytes/index.d.ts.map +1 -0
  80. package/dist/browser/src/utils/bytes/utf8.d.ts +3 -0
  81. package/dist/browser/src/utils/bytes/utf8.d.ts.map +1 -0
  82. package/dist/browser/src/utils/common.d.ts +22 -0
  83. package/dist/browser/src/utils/common.d.ts.map +1 -0
  84. package/dist/browser/src/utils/features.d.ts +3 -0
  85. package/dist/browser/src/utils/features.d.ts.map +1 -0
  86. package/dist/browser/src/utils/index.d.ts +8 -0
  87. package/dist/browser/src/utils/index.d.ts.map +1 -0
  88. package/dist/browser/src/utils/pubkey.d.ts +3 -0
  89. package/dist/browser/src/utils/pubkey.d.ts.map +1 -0
  90. package/dist/browser/src/utils/registry.d.ts +34 -0
  91. package/dist/browser/src/utils/registry.d.ts.map +1 -0
  92. package/dist/browser/src/utils/rpc.d.ts +21 -0
  93. package/dist/browser/src/utils/rpc.d.ts.map +1 -0
  94. package/dist/browser/src/utils/sha256.d.ts +2 -0
  95. package/dist/browser/src/utils/sha256.d.ts.map +1 -0
  96. package/dist/browser/src/utils/token.d.ts +8 -0
  97. package/dist/browser/src/utils/token.d.ts.map +1 -0
  98. package/dist/browser/src/workspace.d.ts +14 -0
  99. package/dist/browser/src/workspace.d.ts.map +1 -0
  100. package/dist/cjs/coder/borsh/accounts.d.ts +27 -0
  101. package/dist/cjs/coder/borsh/accounts.d.ts.map +1 -0
  102. package/dist/cjs/coder/borsh/accounts.js +103 -0
  103. package/dist/cjs/coder/borsh/accounts.js.map +1 -0
  104. package/dist/cjs/coder/borsh/event.d.ts +14 -0
  105. package/dist/cjs/coder/borsh/event.d.ts.map +1 -0
  106. package/dist/cjs/coder/borsh/event.js +78 -0
  107. package/dist/cjs/coder/borsh/event.js.map +1 -0
  108. package/dist/cjs/coder/borsh/idl.d.ts +32 -0
  109. package/dist/cjs/coder/borsh/idl.d.ts.map +1 -0
  110. package/dist/cjs/coder/borsh/idl.js +419 -0
  111. package/dist/cjs/coder/borsh/idl.js.map +1 -0
  112. package/dist/cjs/coder/borsh/index.d.ts +33 -0
  113. package/dist/cjs/coder/borsh/index.d.ts.map +1 -0
  114. package/dist/cjs/coder/borsh/index.js +27 -0
  115. package/dist/cjs/coder/borsh/index.js.map +1 -0
  116. package/dist/cjs/coder/borsh/instruction.d.ts +42 -0
  117. package/dist/cjs/coder/borsh/instruction.d.ts.map +1 -0
  118. package/dist/cjs/coder/borsh/instruction.js +274 -0
  119. package/dist/cjs/coder/borsh/instruction.js.map +1 -0
  120. package/dist/cjs/coder/borsh/types.d.ts +16 -0
  121. package/dist/cjs/coder/borsh/types.d.ts.map +1 -0
  122. package/dist/cjs/coder/borsh/types.js +42 -0
  123. package/dist/cjs/coder/borsh/types.js.map +1 -0
  124. package/dist/cjs/coder/index.d.ts +43 -0
  125. package/dist/cjs/coder/index.d.ts.map +1 -0
  126. package/dist/cjs/coder/index.js +19 -0
  127. package/dist/cjs/coder/index.js.map +1 -0
  128. package/dist/cjs/coder/system/accounts.d.ts +12 -0
  129. package/dist/cjs/coder/system/accounts.d.ts.map +1 -0
  130. package/dist/cjs/coder/system/accounts.js +107 -0
  131. package/dist/cjs/coder/system/accounts.js.map +1 -0
  132. package/dist/cjs/coder/system/events.d.ts +9 -0
  133. package/dist/cjs/coder/system/events.d.ts.map +1 -0
  134. package/dist/cjs/coder/system/events.js +11 -0
  135. package/dist/cjs/coder/system/events.js.map +1 -0
  136. package/dist/cjs/coder/system/index.d.ts +17 -0
  137. package/dist/cjs/coder/system/index.d.ts.map +1 -0
  138. package/dist/cjs/coder/system/index.js +20 -0
  139. package/dist/cjs/coder/system/index.js.map +1 -0
  140. package/dist/cjs/coder/system/instruction.d.ts +8 -0
  141. package/dist/cjs/coder/system/instruction.d.ts.map +1 -0
  142. package/dist/cjs/coder/system/instruction.js +242 -0
  143. package/dist/cjs/coder/system/instruction.js.map +1 -0
  144. package/dist/cjs/coder/system/types.d.ts +8 -0
  145. package/dist/cjs/coder/system/types.d.ts.map +1 -0
  146. package/dist/cjs/coder/system/types.js +14 -0
  147. package/dist/cjs/coder/system/types.js.map +1 -0
  148. package/dist/cjs/error.d.ts +128 -0
  149. package/dist/cjs/error.d.ts.map +1 -0
  150. package/dist/cjs/error.js +568 -0
  151. package/dist/cjs/error.js.map +1 -0
  152. package/dist/cjs/idl.d.ts +215 -0
  153. package/dist/cjs/idl.d.ts.map +1 -0
  154. package/dist/cjs/idl.js +112 -0
  155. package/dist/cjs/idl.js.map +1 -0
  156. package/dist/cjs/index.d.ts +16 -0
  157. package/dist/cjs/index.d.ts.map +1 -0
  158. package/dist/cjs/index.js +51 -0
  159. package/dist/cjs/index.js.map +1 -0
  160. package/dist/cjs/native/index.d.ts +7 -0
  161. package/dist/cjs/native/index.d.ts.map +1 -0
  162. package/dist/cjs/native/index.js +11 -0
  163. package/dist/cjs/native/index.js.map +1 -0
  164. package/dist/cjs/native/system.d.ts +390 -0
  165. package/dist/cjs/native/system.d.ts.map +1 -0
  166. package/dist/cjs/native/system.js +394 -0
  167. package/dist/cjs/native/system.js.map +1 -0
  168. package/dist/cjs/nodewallet.d.ts +14 -0
  169. package/dist/cjs/nodewallet.d.ts.map +1 -0
  170. package/dist/cjs/nodewallet.js +48 -0
  171. package/dist/cjs/nodewallet.js.map +1 -0
  172. package/dist/cjs/program/accounts-resolver.d.ts +63 -0
  173. package/dist/cjs/program/accounts-resolver.d.ts.map +1 -0
  174. package/dist/cjs/program/accounts-resolver.js +437 -0
  175. package/dist/cjs/program/accounts-resolver.js.map +1 -0
  176. package/dist/cjs/program/common.d.ts +20 -0
  177. package/dist/cjs/program/common.d.ts.map +1 -0
  178. package/dist/cjs/program/common.js +49 -0
  179. package/dist/cjs/program/common.js.map +1 -0
  180. package/dist/cjs/program/context.d.ts +63 -0
  181. package/dist/cjs/program/context.d.ts.map +1 -0
  182. package/dist/cjs/program/context.js +16 -0
  183. package/dist/cjs/program/context.js.map +1 -0
  184. package/dist/cjs/program/event.d.ts +59 -0
  185. package/dist/cjs/program/event.d.ts.map +1 -0
  186. package/dist/cjs/program/event.js +227 -0
  187. package/dist/cjs/program/event.js.map +1 -0
  188. package/dist/cjs/program/index.d.ts +272 -0
  189. package/dist/cjs/program/index.d.ts.map +1 -0
  190. package/dist/cjs/program/index.js +177 -0
  191. package/dist/cjs/program/index.js.map +1 -0
  192. package/dist/cjs/program/namespace/account.d.ts +146 -0
  193. package/dist/cjs/program/namespace/account.d.ts.map +1 -0
  194. package/dist/cjs/program/namespace/account.js +257 -0
  195. package/dist/cjs/program/namespace/account.js.map +1 -0
  196. package/dist/cjs/program/namespace/index.d.ts +35 -0
  197. package/dist/cjs/program/namespace/index.d.ts.map +1 -0
  198. package/dist/cjs/program/namespace/index.js +63 -0
  199. package/dist/cjs/program/namespace/index.js.map +1 -0
  200. package/dist/cjs/program/namespace/instruction.d.ts +57 -0
  201. package/dist/cjs/program/namespace/instruction.d.ts.map +1 -0
  202. package/dist/cjs/program/namespace/instruction.js +94 -0
  203. package/dist/cjs/program/namespace/instruction.js.map +1 -0
  204. package/dist/cjs/program/namespace/methods.d.ts +206 -0
  205. package/dist/cjs/program/namespace/methods.d.ts.map +1 -0
  206. package/dist/cjs/program/namespace/methods.js +309 -0
  207. package/dist/cjs/program/namespace/methods.js.map +1 -0
  208. package/dist/cjs/program/namespace/rpc.d.ts +49 -0
  209. package/dist/cjs/program/namespace/rpc.d.ts.map +1 -0
  210. package/dist/cjs/program/namespace/rpc.js +25 -0
  211. package/dist/cjs/program/namespace/rpc.js.map +1 -0
  212. package/dist/cjs/program/namespace/simulate.d.ts +57 -0
  213. package/dist/cjs/program/namespace/simulate.d.ts.map +1 -0
  214. package/dist/cjs/program/namespace/simulate.js +42 -0
  215. package/dist/cjs/program/namespace/simulate.js.map +1 -0
  216. package/dist/cjs/program/namespace/transaction.d.ts +42 -0
  217. package/dist/cjs/program/namespace/transaction.d.ts.map +1 -0
  218. package/dist/cjs/program/namespace/transaction.js +24 -0
  219. package/dist/cjs/program/namespace/transaction.js.map +1 -0
  220. package/dist/cjs/program/namespace/types.d.ts +153 -0
  221. package/dist/cjs/program/namespace/types.d.ts.map +1 -0
  222. package/dist/cjs/program/namespace/types.js +3 -0
  223. package/dist/cjs/program/namespace/types.js.map +1 -0
  224. package/dist/cjs/program/namespace/views.d.ts +15 -0
  225. package/dist/cjs/program/namespace/views.d.ts.map +1 -0
  226. package/dist/cjs/program/namespace/views.js +30 -0
  227. package/dist/cjs/program/namespace/views.js.map +1 -0
  228. package/dist/cjs/program/token-account-layout.d.ts +2 -0
  229. package/dist/cjs/program/token-account-layout.d.ts.map +1 -0
  230. package/dist/cjs/program/token-account-layout.js +136 -0
  231. package/dist/cjs/program/token-account-layout.js.map +1 -0
  232. package/dist/cjs/provider.d.ts +104 -0
  233. package/dist/cjs/provider.d.ts.map +1 -0
  234. package/dist/cjs/provider.js +312 -0
  235. package/dist/cjs/provider.js.map +1 -0
  236. package/dist/cjs/utils/bytes/base64.d.ts +4 -0
  237. package/dist/cjs/utils/bytes/base64.d.ts.map +1 -0
  238. package/dist/cjs/utils/bytes/base64.js +12 -0
  239. package/dist/cjs/utils/bytes/base64.js.map +1 -0
  240. package/dist/cjs/utils/bytes/bs58.d.ts +3 -0
  241. package/dist/cjs/utils/bytes/bs58.d.ts.map +1 -0
  242. package/dist/cjs/utils/bytes/bs58.js +15 -0
  243. package/dist/cjs/utils/bytes/bs58.js.map +1 -0
  244. package/dist/cjs/utils/bytes/hex.d.ts +4 -0
  245. package/dist/cjs/utils/bytes/hex.d.ts.map +1 -0
  246. package/dist/cjs/utils/bytes/hex.js +22 -0
  247. package/dist/cjs/utils/bytes/hex.js.map +1 -0
  248. package/dist/cjs/utils/bytes/index.d.ts +5 -0
  249. package/dist/cjs/utils/bytes/index.d.ts.map +1 -0
  250. package/dist/cjs/utils/bytes/index.js +31 -0
  251. package/dist/cjs/utils/bytes/index.js.map +1 -0
  252. package/dist/cjs/utils/bytes/utf8.d.ts +3 -0
  253. package/dist/cjs/utils/bytes/utf8.d.ts.map +1 -0
  254. package/dist/cjs/utils/bytes/utf8.js +18 -0
  255. package/dist/cjs/utils/bytes/utf8.js.map +1 -0
  256. package/dist/cjs/utils/common.d.ts +22 -0
  257. package/dist/cjs/utils/common.d.ts.map +1 -0
  258. package/dist/cjs/utils/common.js +32 -0
  259. package/dist/cjs/utils/common.js.map +1 -0
  260. package/dist/cjs/utils/features.d.ts +3 -0
  261. package/dist/cjs/utils/features.d.ts.map +1 -0
  262. package/dist/cjs/utils/features.js +16 -0
  263. package/dist/cjs/utils/features.js.map +1 -0
  264. package/dist/cjs/utils/index.d.ts +8 -0
  265. package/dist/cjs/utils/index.d.ts.map +1 -0
  266. package/dist/cjs/utils/index.js +34 -0
  267. package/dist/cjs/utils/index.js.map +1 -0
  268. package/dist/cjs/utils/pubkey.d.ts +3 -0
  269. package/dist/cjs/utils/pubkey.d.ts.map +1 -0
  270. package/dist/cjs/utils/pubkey.js +16 -0
  271. package/dist/cjs/utils/pubkey.js.map +1 -0
  272. package/dist/cjs/utils/registry.d.ts +34 -0
  273. package/dist/cjs/utils/registry.d.ts.map +1 -0
  274. package/dist/cjs/utils/registry.js +88 -0
  275. package/dist/cjs/utils/registry.js.map +1 -0
  276. package/dist/cjs/utils/rpc.d.ts +21 -0
  277. package/dist/cjs/utils/rpc.d.ts.map +1 -0
  278. package/dist/cjs/utils/rpc.js +167 -0
  279. package/dist/cjs/utils/rpc.js.map +1 -0
  280. package/dist/cjs/utils/sha256.d.ts +2 -0
  281. package/dist/cjs/utils/sha256.d.ts.map +1 -0
  282. package/dist/cjs/utils/sha256.js +8 -0
  283. package/dist/cjs/utils/sha256.js.map +1 -0
  284. package/dist/cjs/utils/token.d.ts +8 -0
  285. package/dist/cjs/utils/token.d.ts.map +1 -0
  286. package/dist/cjs/utils/token.js +11 -0
  287. package/dist/cjs/utils/token.js.map +1 -0
  288. package/dist/cjs/workspace.d.ts +14 -0
  289. package/dist/cjs/workspace.d.ts.map +1 -0
  290. package/dist/cjs/workspace.js +98 -0
  291. package/dist/cjs/workspace.js.map +1 -0
  292. package/dist/esm/coder/borsh/accounts.d.ts +27 -0
  293. package/dist/esm/coder/borsh/accounts.d.ts.map +1 -0
  294. package/dist/esm/coder/borsh/accounts.js +96 -0
  295. package/dist/esm/coder/borsh/accounts.js.map +1 -0
  296. package/dist/esm/coder/borsh/event.d.ts +14 -0
  297. package/dist/esm/coder/borsh/event.d.ts.map +1 -0
  298. package/dist/esm/coder/borsh/event.js +51 -0
  299. package/dist/esm/coder/borsh/event.js.map +1 -0
  300. package/dist/esm/coder/borsh/idl.d.ts +32 -0
  301. package/dist/esm/coder/borsh/idl.d.ts.map +1 -0
  302. package/dist/esm/coder/borsh/idl.js +392 -0
  303. package/dist/esm/coder/borsh/idl.js.map +1 -0
  304. package/dist/esm/coder/borsh/index.d.ts +33 -0
  305. package/dist/esm/coder/borsh/index.d.ts.map +1 -0
  306. package/dist/esm/coder/borsh/index.js +20 -0
  307. package/dist/esm/coder/borsh/index.js.map +1 -0
  308. package/dist/esm/coder/borsh/instruction.d.ts +42 -0
  309. package/dist/esm/coder/borsh/instruction.d.ts.map +1 -0
  310. package/dist/esm/coder/borsh/instruction.js +244 -0
  311. package/dist/esm/coder/borsh/instruction.js.map +1 -0
  312. package/dist/esm/coder/borsh/types.d.ts +16 -0
  313. package/dist/esm/coder/borsh/types.d.ts.map +1 -0
  314. package/dist/esm/coder/borsh/types.js +38 -0
  315. package/dist/esm/coder/borsh/types.js.map +1 -0
  316. package/dist/esm/coder/index.d.ts +43 -0
  317. package/dist/esm/coder/index.d.ts.map +1 -0
  318. package/dist/esm/coder/index.js +3 -0
  319. package/dist/esm/coder/index.js.map +1 -0
  320. package/dist/esm/coder/system/accounts.d.ts +12 -0
  321. package/dist/esm/coder/system/accounts.d.ts.map +1 -0
  322. package/dist/esm/coder/system/accounts.js +80 -0
  323. package/dist/esm/coder/system/accounts.js.map +1 -0
  324. package/dist/esm/coder/system/events.d.ts +9 -0
  325. package/dist/esm/coder/system/events.d.ts.map +1 -0
  326. package/dist/esm/coder/system/events.js +7 -0
  327. package/dist/esm/coder/system/events.js.map +1 -0
  328. package/dist/esm/coder/system/index.d.ts +17 -0
  329. package/dist/esm/coder/system/index.d.ts.map +1 -0
  330. package/dist/esm/coder/system/index.js +16 -0
  331. package/dist/esm/coder/system/index.js.map +1 -0
  332. package/dist/esm/coder/system/instruction.d.ts +8 -0
  333. package/dist/esm/coder/system/instruction.d.ts.map +1 -0
  334. package/dist/esm/coder/system/instruction.js +212 -0
  335. package/dist/esm/coder/system/instruction.js.map +1 -0
  336. package/dist/esm/coder/system/types.d.ts +8 -0
  337. package/dist/esm/coder/system/types.d.ts.map +1 -0
  338. package/dist/esm/coder/system/types.js +10 -0
  339. package/dist/esm/coder/system/types.js.map +1 -0
  340. package/dist/esm/error.d.ts +128 -0
  341. package/dist/esm/error.d.ts.map +1 -0
  342. package/dist/esm/error.js +537 -0
  343. package/dist/esm/error.js.map +1 -0
  344. package/dist/esm/idl.d.ts +215 -0
  345. package/dist/esm/idl.d.ts.map +1 -0
  346. package/dist/esm/idl.js +77 -0
  347. package/dist/esm/idl.js.map +1 -0
  348. package/dist/esm/index.d.ts +16 -0
  349. package/dist/esm/index.d.ts.map +1 -0
  350. package/dist/esm/index.js +15 -0
  351. package/dist/esm/index.js.map +1 -0
  352. package/dist/esm/native/index.d.ts +7 -0
  353. package/dist/esm/native/index.d.ts.map +1 -0
  354. package/dist/esm/native/index.js +7 -0
  355. package/dist/esm/native/index.js.map +1 -0
  356. package/dist/esm/native/system.d.ts +390 -0
  357. package/dist/esm/native/system.d.ts.map +1 -0
  358. package/dist/esm/native/system.js +389 -0
  359. package/dist/esm/native/system.js.map +1 -0
  360. package/dist/esm/nodewallet.d.ts +14 -0
  361. package/dist/esm/nodewallet.d.ts.map +1 -0
  362. package/dist/esm/nodewallet.js +45 -0
  363. package/dist/esm/nodewallet.js.map +1 -0
  364. package/dist/esm/program/accounts-resolver.d.ts +63 -0
  365. package/dist/esm/program/accounts-resolver.d.ts.map +1 -0
  366. package/dist/esm/program/accounts-resolver.js +429 -0
  367. package/dist/esm/program/accounts-resolver.js.map +1 -0
  368. package/dist/esm/program/common.d.ts +20 -0
  369. package/dist/esm/program/common.d.ts.map +1 -0
  370. package/dist/esm/program/common.js +43 -0
  371. package/dist/esm/program/common.js.map +1 -0
  372. package/dist/esm/program/context.d.ts +63 -0
  373. package/dist/esm/program/context.d.ts.map +1 -0
  374. package/dist/esm/program/context.js +13 -0
  375. package/dist/esm/program/context.js.map +1 -0
  376. package/dist/esm/program/event.d.ts +59 -0
  377. package/dist/esm/program/event.d.ts.map +1 -0
  378. package/dist/esm/program/event.js +222 -0
  379. package/dist/esm/program/event.js.map +1 -0
  380. package/dist/esm/program/index.d.ts +272 -0
  381. package/dist/esm/program/index.d.ts.map +1 -0
  382. package/dist/esm/program/index.js +156 -0
  383. package/dist/esm/program/index.js.map +1 -0
  384. package/dist/esm/program/namespace/account.d.ts +146 -0
  385. package/dist/esm/program/namespace/account.d.ts.map +1 -0
  386. package/dist/esm/program/namespace/account.js +226 -0
  387. package/dist/esm/program/namespace/account.js.map +1 -0
  388. package/dist/esm/program/namespace/index.d.ts +35 -0
  389. package/dist/esm/program/namespace/index.d.ts.map +1 -0
  390. package/dist/esm/program/namespace/index.js +54 -0
  391. package/dist/esm/program/namespace/index.js.map +1 -0
  392. package/dist/esm/program/namespace/instruction.d.ts +57 -0
  393. package/dist/esm/program/namespace/instruction.d.ts.map +1 -0
  394. package/dist/esm/program/namespace/instruction.js +68 -0
  395. package/dist/esm/program/namespace/instruction.js.map +1 -0
  396. package/dist/esm/program/namespace/methods.d.ts +206 -0
  397. package/dist/esm/program/namespace/methods.d.ts.map +1 -0
  398. package/dist/esm/program/namespace/methods.js +302 -0
  399. package/dist/esm/program/namespace/methods.js.map +1 -0
  400. package/dist/esm/program/namespace/rpc.d.ts +49 -0
  401. package/dist/esm/program/namespace/rpc.d.ts.map +1 -0
  402. package/dist/esm/program/namespace/rpc.js +22 -0
  403. package/dist/esm/program/namespace/rpc.js.map +1 -0
  404. package/dist/esm/program/namespace/simulate.d.ts +57 -0
  405. package/dist/esm/program/namespace/simulate.d.ts.map +1 -0
  406. package/dist/esm/program/namespace/simulate.js +39 -0
  407. package/dist/esm/program/namespace/simulate.js.map +1 -0
  408. package/dist/esm/program/namespace/transaction.d.ts +42 -0
  409. package/dist/esm/program/namespace/transaction.d.ts.map +1 -0
  410. package/dist/esm/program/namespace/transaction.js +21 -0
  411. package/dist/esm/program/namespace/transaction.js.map +1 -0
  412. package/dist/esm/program/namespace/types.d.ts +153 -0
  413. package/dist/esm/program/namespace/types.d.ts.map +1 -0
  414. package/dist/esm/program/namespace/types.js +2 -0
  415. package/dist/esm/program/namespace/types.js.map +1 -0
  416. package/dist/esm/program/namespace/views.d.ts +15 -0
  417. package/dist/esm/program/namespace/views.d.ts.map +1 -0
  418. package/dist/esm/program/namespace/views.js +27 -0
  419. package/dist/esm/program/namespace/views.js.map +1 -0
  420. package/dist/esm/program/token-account-layout.d.ts +2 -0
  421. package/dist/esm/program/token-account-layout.d.ts.map +1 -0
  422. package/dist/esm/program/token-account-layout.js +107 -0
  423. package/dist/esm/program/token-account-layout.js.map +1 -0
  424. package/dist/esm/provider.d.ts +104 -0
  425. package/dist/esm/provider.d.ts.map +1 -0
  426. package/dist/esm/provider.js +306 -0
  427. package/dist/esm/provider.js.map +1 -0
  428. package/dist/esm/utils/bytes/base64.d.ts +4 -0
  429. package/dist/esm/utils/bytes/base64.d.ts.map +1 -0
  430. package/dist/esm/utils/bytes/base64.js +8 -0
  431. package/dist/esm/utils/bytes/base64.js.map +1 -0
  432. package/dist/esm/utils/bytes/bs58.d.ts +3 -0
  433. package/dist/esm/utils/bytes/bs58.d.ts.map +1 -0
  434. package/dist/esm/utils/bytes/bs58.js +8 -0
  435. package/dist/esm/utils/bytes/bs58.js.map +1 -0
  436. package/dist/esm/utils/bytes/hex.d.ts +4 -0
  437. package/dist/esm/utils/bytes/hex.d.ts.map +1 -0
  438. package/dist/esm/utils/bytes/hex.js +18 -0
  439. package/dist/esm/utils/bytes/hex.js.map +1 -0
  440. package/dist/esm/utils/bytes/index.d.ts +5 -0
  441. package/dist/esm/utils/bytes/index.d.ts.map +1 -0
  442. package/dist/esm/utils/bytes/index.js +5 -0
  443. package/dist/esm/utils/bytes/index.js.map +1 -0
  444. package/dist/esm/utils/bytes/utf8.d.ts +3 -0
  445. package/dist/esm/utils/bytes/utf8.d.ts.map +1 -0
  446. package/dist/esm/utils/bytes/utf8.js +14 -0
  447. package/dist/esm/utils/bytes/utf8.js.map +1 -0
  448. package/dist/esm/utils/common.d.ts +22 -0
  449. package/dist/esm/utils/common.d.ts.map +1 -0
  450. package/dist/esm/utils/common.js +27 -0
  451. package/dist/esm/utils/common.js.map +1 -0
  452. package/dist/esm/utils/features.d.ts +3 -0
  453. package/dist/esm/utils/features.d.ts.map +1 -0
  454. package/dist/esm/utils/features.js +12 -0
  455. package/dist/esm/utils/features.js.map +1 -0
  456. package/dist/esm/utils/index.d.ts +8 -0
  457. package/dist/esm/utils/index.d.ts.map +1 -0
  458. package/dist/esm/utils/index.js +8 -0
  459. package/dist/esm/utils/index.js.map +1 -0
  460. package/dist/esm/utils/pubkey.d.ts +3 -0
  461. package/dist/esm/utils/pubkey.d.ts.map +1 -0
  462. package/dist/esm/utils/pubkey.js +13 -0
  463. package/dist/esm/utils/pubkey.js.map +1 -0
  464. package/dist/esm/utils/registry.d.ts +34 -0
  465. package/dist/esm/utils/registry.d.ts.map +1 -0
  466. package/dist/esm/utils/registry.js +57 -0
  467. package/dist/esm/utils/registry.js.map +1 -0
  468. package/dist/esm/utils/rpc.d.ts +21 -0
  469. package/dist/esm/utils/rpc.d.ts.map +1 -0
  470. package/dist/esm/utils/rpc.js +161 -0
  471. package/dist/esm/utils/rpc.js.map +1 -0
  472. package/dist/esm/utils/sha256.d.ts +2 -0
  473. package/dist/esm/utils/sha256.d.ts.map +1 -0
  474. package/dist/esm/utils/sha256.js +5 -0
  475. package/dist/esm/utils/sha256.js.map +1 -0
  476. package/dist/esm/utils/token.d.ts +8 -0
  477. package/dist/esm/utils/token.d.ts.map +1 -0
  478. package/dist/esm/utils/token.js +7 -0
  479. package/dist/esm/utils/token.js.map +1 -0
  480. package/dist/esm/workspace.d.ts +14 -0
  481. package/dist/esm/workspace.d.ts.map +1 -0
  482. package/dist/esm/workspace.js +70 -0
  483. package/dist/esm/workspace.js.map +1 -0
  484. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  485. package/dist/tsconfig.tsbuildinfo +1 -0
  486. package/package.json +84 -0
  487. package/types/buffer-layout/index.d.ts +88 -0
@@ -0,0 +1,177 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.Program = void 0;
21
+ const pako_1 = require("pako");
22
+ const index_js_1 = require("../coder/index.js");
23
+ const idl_js_1 = require("../idl.js");
24
+ const provider_js_1 = require("../provider.js");
25
+ const index_js_2 = require("../utils/bytes/index.js");
26
+ const common_js_1 = require("./common.js");
27
+ const event_js_1 = require("./event.js");
28
+ const index_js_3 = __importDefault(require("./namespace/index.js"));
29
+ __exportStar(require("./common.js"), exports);
30
+ __exportStar(require("./context.js"), exports);
31
+ __exportStar(require("./event.js"), exports);
32
+ __exportStar(require("./namespace/index.js"), exports);
33
+ /**
34
+ * ## Program
35
+ *
36
+ * Program provides the IDL deserialized client representation of an Anchor
37
+ * program.
38
+ *
39
+ * This API is the one stop shop for all things related to communicating with
40
+ * on-chain programs. Among other things, one can send transactions, fetch
41
+ * deserialized accounts, decode instruction data, subscribe to account
42
+ * changes, and listen to events.
43
+ *
44
+ * In addition to field accessors and methods, the object provides a set of
45
+ * dynamically generated properties, also known as namespaces, that
46
+ * map one-to-one to program methods and accounts. These namespaces generally
47
+ * can be used as follows:
48
+ *
49
+ * ## Usage
50
+ *
51
+ * ```javascript
52
+ * program.<namespace>.<program-specific-method>
53
+ * ```
54
+ *
55
+ * API specifics are namespace dependent. The examples used in the documentation
56
+ * below will refer to the two counter examples found
57
+ * [here](https://github.com/coral-xyz/anchor#examples).
58
+ */
59
+ class Program {
60
+ /**
61
+ * Address of the program.
62
+ */
63
+ get programId() {
64
+ return this._programId;
65
+ }
66
+ /**
67
+ * IDL in camelCase format to work in TypeScript.
68
+ *
69
+ * See {@link rawIdl} field if you need the original IDL.
70
+ */
71
+ get idl() {
72
+ return this._idl;
73
+ }
74
+ /**
75
+ * Raw IDL i.e. the original IDL without camelCase conversion.
76
+ *
77
+ * See {@link idl} field if you need the camelCased version of the IDL.
78
+ */
79
+ get rawIdl() {
80
+ return this._rawIdl;
81
+ }
82
+ /**
83
+ * Coder for serializing requests.
84
+ */
85
+ get coder() {
86
+ return this._coder;
87
+ }
88
+ /**
89
+ * Wallet and network provider.
90
+ */
91
+ get provider() {
92
+ return this._provider;
93
+ }
94
+ /**
95
+ * @param idl The interface definition.
96
+ * @param provider The network and wallet context to use. If not provided
97
+ * then uses [[getProvider]].
98
+ * @param getCustomResolver A function that returns a custom account resolver
99
+ * for the given instruction. This is useful for resolving
100
+ * public keys of missing accounts when building instructions
101
+ */
102
+ constructor(idl, provider = (0, provider_js_1.getProvider)(), coder, getCustomResolver) {
103
+ // Fields.
104
+ this._idl = (0, idl_js_1.convertIdlToCamelCase)(idl);
105
+ this._rawIdl = idl;
106
+ this._provider = provider;
107
+ this._programId = (0, common_js_1.translateAddress)(idl.address);
108
+ this._coder = coder !== null && coder !== void 0 ? coder : new index_js_1.BorshCoder(this._idl);
109
+ this._events = new event_js_1.EventManager(this._programId, provider, this._coder);
110
+ // Dynamic namespaces.
111
+ const [rpc, instruction, transaction, account, simulate, methods, views] = index_js_3.default.build(this._idl, this._coder, this._programId, provider, getCustomResolver);
112
+ this.rpc = rpc;
113
+ this.instruction = instruction;
114
+ this.transaction = transaction;
115
+ this.account = account;
116
+ this.simulate = simulate;
117
+ this.methods = methods;
118
+ this.views = views;
119
+ }
120
+ /**
121
+ * Generates a Program client by fetching the IDL from the network.
122
+ *
123
+ * In order to use this method, an IDL must have been previously initialized
124
+ * via the anchor CLI's `anchor idl init` command.
125
+ *
126
+ * @param programId The on-chain address of the program.
127
+ * @param provider The network and wallet context.
128
+ */
129
+ static async at(address, provider) {
130
+ const programId = (0, common_js_1.translateAddress)(address);
131
+ const idl = await Program.fetchIdl(programId, provider);
132
+ if (!idl) {
133
+ throw new Error(`IDL not found for program: ${address.toString()}`);
134
+ }
135
+ return new Program(idl, provider);
136
+ }
137
+ /**
138
+ * Fetches an idl from the blockchain.
139
+ *
140
+ * In order to use this method, an IDL must have been previously initialized
141
+ * via the anchor CLI's `anchor idl init` command.
142
+ *
143
+ * @param programId The on-chain address of the program.
144
+ * @param provider The network and wallet context.
145
+ */
146
+ static async fetchIdl(address, provider) {
147
+ provider = provider !== null && provider !== void 0 ? provider : (0, provider_js_1.getProvider)();
148
+ const programId = (0, common_js_1.translateAddress)(address);
149
+ const idlAddr = await (0, idl_js_1.idlAddress)(programId);
150
+ const accountInfo = await provider.connection.getAccountInfo(idlAddr);
151
+ if (!accountInfo) {
152
+ return null;
153
+ }
154
+ // Chop off account discriminator.
155
+ let idlAccount = (0, idl_js_1.decodeIdlAccount)(accountInfo.data.slice(8));
156
+ const inflatedIdl = (0, pako_1.inflate)(idlAccount.data);
157
+ return JSON.parse(index_js_2.utf8.decode(inflatedIdl));
158
+ }
159
+ /**
160
+ * Invokes the given callback every time the given event is emitted.
161
+ *
162
+ * @param eventName The PascalCase name of the event, provided by the IDL.
163
+ * @param callback The function to invoke whenever the event is emitted from
164
+ * program logs.
165
+ */
166
+ addEventListener(eventName, callback, commitment) {
167
+ return this._events.addEventListener(eventName, callback, commitment);
168
+ }
169
+ /**
170
+ * Unsubscribes from the given eventName.
171
+ */
172
+ async removeEventListener(listener) {
173
+ return await this._events.removeEventListener(listener);
174
+ }
175
+ }
176
+ exports.Program = Program;
177
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/program/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,146 @@
1
+ import EventEmitter from "eventemitter3";
2
+ import { Signer, PublicKey, TransactionInstruction, Commitment, GetProgramAccountsFilter, AccountInfo, RpcResponseAndContext, Context } from "@solana/web3.js";
3
+ import Provider from "../../provider.js";
4
+ import { Idl, IdlAccount } from "../../idl.js";
5
+ import { Coder } from "../../coder/index.js";
6
+ import { Address } from "../common.js";
7
+ import { AllAccountsMap, IdlAccounts } from "./types.js";
8
+ export default class AccountFactory {
9
+ static build<IDL extends Idl>(idl: IDL, coder: Coder, programId: PublicKey, provider?: Provider): AccountNamespace<IDL>;
10
+ }
11
+ type NullableIdlAccount<IDL extends Idl> = IDL["accounts"] extends undefined ? IdlAccount : NonNullable<IDL["accounts"]>[number];
12
+ /**
13
+ * The namespace provides handles to an [[AccountClient]] object for each
14
+ * account in a program.
15
+ *
16
+ * ## Usage
17
+ *
18
+ * ```javascript
19
+ * account.<account-client>
20
+ * ```
21
+ *
22
+ * ## Example
23
+ *
24
+ * To fetch a `Counter` account from the above example,
25
+ *
26
+ * ```javascript
27
+ * const counter = await program.account.counter.fetch(address);
28
+ * ```
29
+ *
30
+ * For the full API, see the [[AccountClient]] reference.
31
+ */
32
+ export type AccountNamespace<I extends Idl = Idl> = {
33
+ [A in keyof AllAccountsMap<I>]: AccountClient<I, A>;
34
+ };
35
+ export declare class AccountClient<IDL extends Idl = Idl, A extends keyof IdlAccounts<IDL> = keyof IdlAccounts<IDL>, N extends NullableIdlAccount<IDL> = NullableIdlAccount<IDL>, T = IdlAccounts<IDL>[A] extends Record<string, unknown> ? IdlAccounts<IDL>[A] : never> {
36
+ /**
37
+ * Returns the number of bytes in this account.
38
+ */
39
+ get size(): number;
40
+ private _size;
41
+ /**
42
+ * Returns the program ID owning all accounts.
43
+ */
44
+ get programId(): PublicKey;
45
+ private _programId;
46
+ /**
47
+ * Returns the client's wallet and network provider.
48
+ */
49
+ get provider(): Provider;
50
+ private _provider;
51
+ /**
52
+ * Returns the coder.
53
+ */
54
+ get coder(): Coder;
55
+ private _coder;
56
+ private _idlAccount;
57
+ constructor(idl: IDL, idlAccount: N, programId: PublicKey, provider?: Provider, coder?: Coder);
58
+ /**
59
+ * Returns a deserialized account, returning null if it doesn't exist.
60
+ *
61
+ * @param address The address of the account to fetch.
62
+ */
63
+ fetchNullable(address: Address, commitment?: Commitment): Promise<T | null>;
64
+ /**
65
+ * Returns a deserialized account along with the associated rpc response context, returning null if it doesn't exist.
66
+ *
67
+ * @param address The address of the account to fetch.
68
+ */
69
+ fetchNullableAndContext(address: Address, commitment?: Commitment): Promise<{
70
+ data: T | null;
71
+ context: Context;
72
+ }>;
73
+ /**
74
+ * Returns a deserialized account.
75
+ *
76
+ * @param address The address of the account to fetch.
77
+ */
78
+ fetch(address: Address, commitment?: Commitment): Promise<T>;
79
+ /**
80
+ * Returns a deserialized account along with the associated rpc response context.
81
+ *
82
+ * @param address The address of the account to fetch.
83
+ */
84
+ fetchAndContext(address: Address, commitment?: Commitment): Promise<{
85
+ data: T | null;
86
+ context: Context;
87
+ }>;
88
+ /**
89
+ * Returns multiple deserialized accounts.
90
+ * Accounts not found or with wrong discriminator are returned as null.
91
+ *
92
+ * @param addresses The addresses of the accounts to fetch.
93
+ */
94
+ fetchMultiple(addresses: Address[], commitment?: Commitment): Promise<(T | null)[]>;
95
+ /**
96
+ * Returns multiple deserialized accounts.
97
+ * Accounts not found or with wrong discriminator are returned as null.
98
+ *
99
+ * @param addresses The addresses of the accounts to fetch.
100
+ */
101
+ fetchMultipleAndContext(addresses: Address[], commitment?: Commitment): Promise<({
102
+ data: T;
103
+ context: Context;
104
+ } | null)[]>;
105
+ /**
106
+ * Returns all instances of this account type for the program.
107
+ *
108
+ * @param filters User-provided filters to narrow the results from `connection.getProgramAccounts`.
109
+ *
110
+ * When filters are not defined this method returns all
111
+ * the account instances.
112
+ *
113
+ * When filters are of type `Buffer`, the filters are appended
114
+ * after the discriminator.
115
+ *
116
+ * When filters are of type `GetProgramAccountsFilter[]`,
117
+ * filters are appended after the discriminator filter.
118
+ */
119
+ all(filters?: Buffer | GetProgramAccountsFilter[]): Promise<ProgramAccount<T>[]>;
120
+ /**
121
+ * Returns an `EventEmitter` emitting a "change" event whenever the account
122
+ * changes.
123
+ */
124
+ subscribe(address: Address, commitment?: Commitment): EventEmitter;
125
+ /**
126
+ * Unsubscribes from the account at the given address.
127
+ */
128
+ unsubscribe(address: Address): Promise<void>;
129
+ /**
130
+ * Returns an instruction for creating this account.
131
+ */
132
+ createInstruction(signer: Signer, sizeOverride?: number): Promise<TransactionInstruction>;
133
+ getAccountInfo(address: Address, commitment?: Commitment): Promise<AccountInfo<Buffer> | null>;
134
+ getAccountInfoAndContext(address: Address, commitment?: Commitment): Promise<RpcResponseAndContext<AccountInfo<Buffer> | null>>;
135
+ }
136
+ /**
137
+ * @hidden
138
+ *
139
+ * Deserialized account owned by a program.
140
+ */
141
+ export type ProgramAccount<T = any> = {
142
+ publicKey: PublicKey;
143
+ account: T;
144
+ };
145
+ export {};
146
+ //# sourceMappingURL=account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../../../src/program/namespace/account.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,257 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.AccountClient = void 0;
30
+ const eventemitter3_1 = __importDefault(require("eventemitter3"));
31
+ const web3_js_1 = require("@solana/web3.js");
32
+ const provider_js_1 = require("../../provider.js");
33
+ const index_js_1 = require("../../coder/index.js");
34
+ const common_js_1 = require("../common.js");
35
+ const rpcUtil = __importStar(require("../../utils/rpc.js"));
36
+ class AccountFactory {
37
+ static build(idl, coder, programId, provider) {
38
+ var _a;
39
+ return ((_a = idl.accounts) !== null && _a !== void 0 ? _a : []).reduce((accountFns, acc) => {
40
+ accountFns[acc.name] = new AccountClient(idl, acc, programId, provider, coder);
41
+ return accountFns;
42
+ }, {});
43
+ }
44
+ }
45
+ exports.default = AccountFactory;
46
+ class AccountClient {
47
+ /**
48
+ * Returns the number of bytes in this account.
49
+ */
50
+ get size() {
51
+ return this._size;
52
+ }
53
+ /**
54
+ * Returns the program ID owning all accounts.
55
+ */
56
+ get programId() {
57
+ return this._programId;
58
+ }
59
+ /**
60
+ * Returns the client's wallet and network provider.
61
+ */
62
+ get provider() {
63
+ return this._provider;
64
+ }
65
+ /**
66
+ * Returns the coder.
67
+ */
68
+ get coder() {
69
+ return this._coder;
70
+ }
71
+ constructor(idl, idlAccount, programId, provider, coder) {
72
+ this._idlAccount = idlAccount;
73
+ this._programId = programId;
74
+ this._provider = provider !== null && provider !== void 0 ? provider : (0, provider_js_1.getProvider)();
75
+ this._coder = coder !== null && coder !== void 0 ? coder : new index_js_1.BorshCoder(idl);
76
+ this._size = this._coder.accounts.size(idlAccount.name);
77
+ }
78
+ /**
79
+ * Returns a deserialized account, returning null if it doesn't exist.
80
+ *
81
+ * @param address The address of the account to fetch.
82
+ */
83
+ async fetchNullable(address, commitment) {
84
+ const { data } = await this.fetchNullableAndContext(address, commitment);
85
+ return data;
86
+ }
87
+ /**
88
+ * Returns a deserialized account along with the associated rpc response context, returning null if it doesn't exist.
89
+ *
90
+ * @param address The address of the account to fetch.
91
+ */
92
+ async fetchNullableAndContext(address, commitment) {
93
+ const accountInfo = await this.getAccountInfoAndContext(address, commitment);
94
+ const { value, context } = accountInfo;
95
+ return {
96
+ data: value && value.data.length !== 0
97
+ ? this._coder.accounts.decode(this._idlAccount.name, value.data)
98
+ : null,
99
+ context,
100
+ };
101
+ }
102
+ /**
103
+ * Returns a deserialized account.
104
+ *
105
+ * @param address The address of the account to fetch.
106
+ */
107
+ async fetch(address, commitment) {
108
+ const { data } = await this.fetchNullableAndContext(address, commitment);
109
+ if (data === null) {
110
+ throw new Error(`Account does not exist or has no data ${address.toString()}`);
111
+ }
112
+ return data;
113
+ }
114
+ /**
115
+ * Returns a deserialized account along with the associated rpc response context.
116
+ *
117
+ * @param address The address of the account to fetch.
118
+ */
119
+ async fetchAndContext(address, commitment) {
120
+ const { data, context } = await this.fetchNullableAndContext(address, commitment);
121
+ if (data === null) {
122
+ throw new Error(`Account does not exist ${address.toString()}`);
123
+ }
124
+ return { data, context };
125
+ }
126
+ /**
127
+ * Returns multiple deserialized accounts.
128
+ * Accounts not found or with wrong discriminator are returned as null.
129
+ *
130
+ * @param addresses The addresses of the accounts to fetch.
131
+ */
132
+ async fetchMultiple(addresses, commitment) {
133
+ const accounts = await this.fetchMultipleAndContext(addresses, commitment);
134
+ return accounts.map((account) => (account ? account.data : null));
135
+ }
136
+ /**
137
+ * Returns multiple deserialized accounts.
138
+ * Accounts not found or with wrong discriminator are returned as null.
139
+ *
140
+ * @param addresses The addresses of the accounts to fetch.
141
+ */
142
+ async fetchMultipleAndContext(addresses, commitment) {
143
+ const accounts = await rpcUtil.getMultipleAccountsAndContext(this._provider.connection, addresses.map((address) => (0, common_js_1.translateAddress)(address)), commitment);
144
+ // Decode accounts where discriminator is correct, null otherwise
145
+ return accounts.map((result) => {
146
+ if (result == null) {
147
+ return null;
148
+ }
149
+ const { account, context } = result;
150
+ return {
151
+ data: this._coder.accounts.decode(this._idlAccount.name, account.data),
152
+ context,
153
+ };
154
+ });
155
+ }
156
+ /**
157
+ * Returns all instances of this account type for the program.
158
+ *
159
+ * @param filters User-provided filters to narrow the results from `connection.getProgramAccounts`.
160
+ *
161
+ * When filters are not defined this method returns all
162
+ * the account instances.
163
+ *
164
+ * When filters are of type `Buffer`, the filters are appended
165
+ * after the discriminator.
166
+ *
167
+ * When filters are of type `GetProgramAccountsFilter[]`,
168
+ * filters are appended after the discriminator filter.
169
+ */
170
+ async all(filters) {
171
+ const filter = this.coder.accounts.memcmp(this._idlAccount.name, filters instanceof Buffer ? filters : undefined);
172
+ const coderFilters = [];
173
+ if ((filter === null || filter === void 0 ? void 0 : filter.offset) != undefined && (filter === null || filter === void 0 ? void 0 : filter.bytes) != undefined) {
174
+ coderFilters.push({
175
+ memcmp: { offset: filter.offset, bytes: filter.bytes },
176
+ });
177
+ }
178
+ if ((filter === null || filter === void 0 ? void 0 : filter.dataSize) != undefined) {
179
+ coderFilters.push({ dataSize: filter.dataSize });
180
+ }
181
+ let resp = await this._provider.connection.getProgramAccounts(this._programId, {
182
+ commitment: this._provider.connection.commitment,
183
+ filters: [...coderFilters, ...(Array.isArray(filters) ? filters : [])],
184
+ });
185
+ return resp.map(({ pubkey, account }) => {
186
+ return {
187
+ publicKey: pubkey,
188
+ account: this._coder.accounts.decode(this._idlAccount.name, account.data),
189
+ };
190
+ });
191
+ }
192
+ /**
193
+ * Returns an `EventEmitter` emitting a "change" event whenever the account
194
+ * changes.
195
+ */
196
+ subscribe(address, commitment) {
197
+ const sub = subscriptions.get(address.toString());
198
+ if (sub) {
199
+ return sub.ee;
200
+ }
201
+ const ee = new eventemitter3_1.default();
202
+ address = (0, common_js_1.translateAddress)(address);
203
+ const listener = this._provider.connection.onAccountChange(address, (acc) => {
204
+ const account = this._coder.accounts.decode(this._idlAccount.name, acc.data);
205
+ ee.emit("change", account);
206
+ }, commitment);
207
+ subscriptions.set(address.toString(), {
208
+ ee,
209
+ listener,
210
+ });
211
+ return ee;
212
+ }
213
+ /**
214
+ * Unsubscribes from the account at the given address.
215
+ */
216
+ async unsubscribe(address) {
217
+ let sub = subscriptions.get(address.toString());
218
+ if (!sub) {
219
+ console.warn("Address is not subscribed");
220
+ return;
221
+ }
222
+ if (subscriptions) {
223
+ await this._provider.connection
224
+ .removeAccountChangeListener(sub.listener)
225
+ .then(() => {
226
+ subscriptions.delete(address.toString());
227
+ })
228
+ .catch(console.error);
229
+ }
230
+ }
231
+ /**
232
+ * Returns an instruction for creating this account.
233
+ */
234
+ async createInstruction(signer, sizeOverride) {
235
+ const size = this.size;
236
+ if (this._provider.publicKey === undefined) {
237
+ throw new Error("This function requires the Provider interface implementor to have a 'publicKey' field.");
238
+ }
239
+ return web3_js_1.SystemProgram.createAccount({
240
+ fromPubkey: this._provider.publicKey,
241
+ newAccountPubkey: signer.publicKey,
242
+ space: sizeOverride !== null && sizeOverride !== void 0 ? sizeOverride : size,
243
+ lamports: await this._provider.connection.getMinimumBalanceForRentExemption(sizeOverride !== null && sizeOverride !== void 0 ? sizeOverride : size),
244
+ programId: this._programId,
245
+ });
246
+ }
247
+ async getAccountInfo(address, commitment) {
248
+ return await this._provider.connection.getAccountInfo((0, common_js_1.translateAddress)(address), commitment);
249
+ }
250
+ async getAccountInfoAndContext(address, commitment) {
251
+ return await this._provider.connection.getAccountInfoAndContext((0, common_js_1.translateAddress)(address), commitment);
252
+ }
253
+ }
254
+ exports.AccountClient = AccountClient;
255
+ // Tracks all subscriptions.
256
+ const subscriptions = new Map();
257
+ //# sourceMappingURL=account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../../src/program/namespace/account.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import { Coder } from "../../coder/index.js";
3
+ import Provider from "../../provider.js";
4
+ import { Idl, IdlInstruction } from "../../idl.js";
5
+ import { InstructionNamespace } from "./instruction.js";
6
+ import { TransactionNamespace } from "./transaction.js";
7
+ import { RpcNamespace } from "./rpc.js";
8
+ import { AccountNamespace } from "./account.js";
9
+ import { SimulateNamespace } from "./simulate.js";
10
+ import { MethodsNamespace } from "./methods";
11
+ import { ViewNamespace } from "./views";
12
+ import { CustomAccountResolver } from "../accounts-resolver.js";
13
+ export { InstructionNamespace, InstructionFn } from "./instruction.js";
14
+ export { TransactionNamespace, TransactionFn } from "./transaction.js";
15
+ export { RpcNamespace, RpcFn } from "./rpc.js";
16
+ export { AccountNamespace, AccountClient, ProgramAccount } from "./account.js";
17
+ export { SimulateNamespace, SimulateFn } from "./simulate.js";
18
+ export { IdlAccounts, IdlTypes, DecodeType, IdlEvents } from "./types.js";
19
+ export { MethodsBuilderFactory, MethodsNamespace } from "./methods";
20
+ export { ViewNamespace, ViewFn } from "./views";
21
+ export default class NamespaceFactory {
22
+ /**
23
+ * Generates all namespaces for a given program.
24
+ */
25
+ static build<IDL extends Idl>(idl: IDL, coder: Coder, programId: PublicKey, provider: Provider, getCustomResolver?: (instruction: IdlInstruction) => CustomAccountResolver<IDL> | undefined): [
26
+ RpcNamespace<IDL>,
27
+ InstructionNamespace<IDL>,
28
+ TransactionNamespace<IDL>,
29
+ AccountNamespace<IDL>,
30
+ SimulateNamespace<IDL>,
31
+ MethodsNamespace<IDL>,
32
+ ViewNamespace<IDL> | undefined
33
+ ];
34
+ }
35
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/program/namespace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAA2B,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAA2B,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAmB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACpD,OAAuB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChE,OAAwB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEnE,OAAO,EAAyB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACpE,OAAoB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEhD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC;;OAEG;WACW,KAAK,CAAC,GAAG,SAAS,GAAG,EACjC,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,iBAAiB,CAAC,EAAE,CAClB,WAAW,EAAE,cAAc,KACxB,qBAAqB,CAAC,GAAG,CAAC,GAAG,SAAS,GAC1C;QACD,YAAY,CAAC,GAAG,CAAC;QACjB,oBAAoB,CAAC,GAAG,CAAC;QACzB,oBAAoB,CAAC,GAAG,CAAC;QACzB,gBAAgB,CAAC,GAAG,CAAC;QACrB,iBAAiB,CAAC,GAAG,CAAC;QACtB,gBAAgB,CAAC,GAAG,CAAC;QACrB,aAAa,CAAC,GAAG,CAAC,GAAG,SAAS;KAC/B;CAmEF"}