@multiplatform.one/web3 7.18.0 → 7.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/README.md +60 -0
  2. package/dist/cjs/clients/adapter.cjs +33 -0
  3. package/dist/cjs/clients/adapter.native.js +36 -0
  4. package/dist/cjs/clients/adapter.native.js.map +1 -0
  5. package/dist/cjs/clients/bitcoin.cjs +46 -0
  6. package/dist/cjs/clients/bitcoin.native.js +51 -0
  7. package/dist/cjs/clients/bitcoin.native.js.map +1 -0
  8. package/dist/cjs/clients/connector.cjs +45 -0
  9. package/dist/cjs/clients/connector.native.js +49 -0
  10. package/dist/cjs/clients/connector.native.js.map +1 -0
  11. package/dist/cjs/clients/evm.cjs +171 -0
  12. package/dist/cjs/clients/evm.native.js +198 -0
  13. package/dist/cjs/clients/evm.native.js.map +1 -0
  14. package/dist/cjs/clients/gpg.cjs +31 -0
  15. package/dist/cjs/clients/gpg.native.js +34 -0
  16. package/dist/cjs/clients/gpg.native.js.map +1 -0
  17. package/dist/cjs/clients/hooks.cjs +78 -0
  18. package/dist/cjs/clients/hooks.native.js +85 -0
  19. package/dist/cjs/clients/hooks.native.js.map +1 -0
  20. package/dist/cjs/clients/index.cjs +49 -0
  21. package/dist/cjs/clients/index.native.js +52 -0
  22. package/dist/cjs/clients/index.native.js.map +1 -0
  23. package/dist/cjs/clients/solana.cjs +322 -0
  24. package/dist/cjs/clients/solana.native.js +511 -0
  25. package/dist/cjs/clients/solana.native.js.map +1 -0
  26. package/dist/cjs/clients/solanaMessage.cjs +38 -0
  27. package/dist/cjs/clients/solanaMessage.native.js +44 -0
  28. package/dist/cjs/clients/solanaMessage.native.js.map +1 -0
  29. package/dist/cjs/clients/sui.cjs +46 -0
  30. package/dist/cjs/clients/sui.native.js +51 -0
  31. package/dist/cjs/clients/sui.native.js.map +1 -0
  32. package/dist/cjs/clients/types.cjs +37 -0
  33. package/dist/cjs/clients/types.native.js +160 -0
  34. package/dist/cjs/clients/types.native.js.map +1 -0
  35. package/dist/cjs/clients/useSolanaClient.cjs +50 -0
  36. package/dist/cjs/clients/useSolanaClient.native.js +57 -0
  37. package/dist/cjs/clients/useSolanaClient.native.js.map +1 -0
  38. package/dist/cjs/clients/walletStandard.cjs +63 -0
  39. package/dist/cjs/clients/walletStandard.native.js +71 -0
  40. package/dist/cjs/clients/walletStandard.native.js.map +1 -0
  41. package/dist/cjs/connectkit/connectors/walletAdapterConnector.cjs +2 -0
  42. package/dist/cjs/connectkit/connectors/walletAdapterConnector.native.js +2 -0
  43. package/dist/cjs/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  44. package/dist/cjs/connectkit/siwe/SIWEProvider.cjs +4 -5
  45. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js +4 -5
  46. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  47. package/dist/cjs/index.cjs +2 -1
  48. package/dist/cjs/index.native.js +1 -0
  49. package/dist/cjs/index.native.js.map +1 -1
  50. package/dist/cjs/solana.cjs +41 -0
  51. package/dist/cjs/solana.native.js +44 -0
  52. package/dist/cjs/solana.native.js.map +1 -0
  53. package/dist/esm/clients/adapter.mjs +8 -0
  54. package/dist/esm/clients/adapter.mjs.map +1 -0
  55. package/dist/esm/clients/adapter.native.js +8 -0
  56. package/dist/esm/clients/adapter.native.js.map +1 -0
  57. package/dist/esm/clients/bitcoin.mjs +21 -0
  58. package/dist/esm/clients/bitcoin.mjs.map +1 -0
  59. package/dist/esm/clients/bitcoin.native.js +23 -0
  60. package/dist/esm/clients/bitcoin.native.js.map +1 -0
  61. package/dist/esm/clients/connector.mjs +20 -0
  62. package/dist/esm/clients/connector.mjs.map +1 -0
  63. package/dist/esm/clients/connector.native.js +21 -0
  64. package/dist/esm/clients/connector.native.js.map +1 -0
  65. package/dist/esm/clients/evm.mjs +146 -0
  66. package/dist/esm/clients/evm.mjs.map +1 -0
  67. package/dist/esm/clients/evm.native.js +170 -0
  68. package/dist/esm/clients/evm.native.js.map +1 -0
  69. package/dist/esm/clients/gpg.mjs +3 -0
  70. package/dist/esm/clients/gpg.mjs.map +1 -0
  71. package/dist/esm/clients/gpg.native.js +3 -0
  72. package/dist/esm/clients/gpg.native.js.map +1 -0
  73. package/dist/esm/clients/hooks.mjs +51 -0
  74. package/dist/esm/clients/hooks.mjs.map +1 -0
  75. package/dist/esm/clients/hooks.native.js +55 -0
  76. package/dist/esm/clients/hooks.native.js.map +1 -0
  77. package/dist/esm/clients/index.mjs +11 -0
  78. package/dist/esm/clients/index.mjs.map +1 -0
  79. package/dist/esm/clients/index.native.js +11 -0
  80. package/dist/esm/clients/index.native.js.map +1 -0
  81. package/dist/esm/clients/solana.mjs +289 -0
  82. package/dist/esm/clients/solana.mjs.map +1 -0
  83. package/dist/esm/clients/solana.native.js +475 -0
  84. package/dist/esm/clients/solana.native.js.map +1 -0
  85. package/dist/esm/clients/solanaMessage.mjs +13 -0
  86. package/dist/esm/clients/solanaMessage.mjs.map +1 -0
  87. package/dist/esm/clients/solanaMessage.native.js +16 -0
  88. package/dist/esm/clients/solanaMessage.native.js.map +1 -0
  89. package/dist/esm/clients/sui.mjs +21 -0
  90. package/dist/esm/clients/sui.mjs.map +1 -0
  91. package/dist/esm/clients/sui.native.js +23 -0
  92. package/dist/esm/clients/sui.native.js.map +1 -0
  93. package/dist/esm/clients/types.mjs +12 -0
  94. package/dist/esm/clients/types.mjs.map +1 -0
  95. package/dist/esm/clients/types.native.js +132 -0
  96. package/dist/esm/clients/types.native.js.map +1 -0
  97. package/dist/esm/clients/useSolanaClient.mjs +25 -0
  98. package/dist/esm/clients/useSolanaClient.mjs.map +1 -0
  99. package/dist/esm/clients/useSolanaClient.native.js +29 -0
  100. package/dist/esm/clients/useSolanaClient.native.js.map +1 -0
  101. package/dist/esm/clients/walletStandard.mjs +33 -0
  102. package/dist/esm/clients/walletStandard.mjs.map +1 -0
  103. package/dist/esm/clients/walletStandard.native.js +38 -0
  104. package/dist/esm/clients/walletStandard.native.js.map +1 -0
  105. package/dist/esm/connectkit/connectors/walletAdapterConnector.mjs +2 -0
  106. package/dist/esm/connectkit/connectors/walletAdapterConnector.mjs.map +1 -1
  107. package/dist/esm/connectkit/connectors/walletAdapterConnector.native.js +2 -0
  108. package/dist/esm/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  109. package/dist/esm/connectkit/siwe/SIWEProvider.mjs +4 -5
  110. package/dist/esm/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  111. package/dist/esm/connectkit/siwe/SIWEProvider.native.js +4 -5
  112. package/dist/esm/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  113. package/dist/esm/index.mjs +1 -0
  114. package/dist/esm/index.mjs.map +1 -1
  115. package/dist/esm/index.native.js +1 -0
  116. package/dist/esm/index.native.js.map +1 -1
  117. package/dist/esm/solana.mjs +5 -0
  118. package/dist/esm/solana.mjs.map +1 -0
  119. package/dist/esm/solana.native.js +5 -0
  120. package/dist/esm/solana.native.js.map +1 -0
  121. package/dist/jsx/clients/adapter.mjs +8 -0
  122. package/dist/jsx/clients/adapter.mjs.map +1 -0
  123. package/dist/jsx/clients/adapter.native.js +36 -0
  124. package/dist/jsx/clients/adapter.native.js.map +1 -0
  125. package/dist/jsx/clients/bitcoin.mjs +21 -0
  126. package/dist/jsx/clients/bitcoin.mjs.map +1 -0
  127. package/dist/jsx/clients/bitcoin.native.js +51 -0
  128. package/dist/jsx/clients/bitcoin.native.js.map +1 -0
  129. package/dist/jsx/clients/connector.mjs +20 -0
  130. package/dist/jsx/clients/connector.mjs.map +1 -0
  131. package/dist/jsx/clients/connector.native.js +49 -0
  132. package/dist/jsx/clients/connector.native.js.map +1 -0
  133. package/dist/jsx/clients/evm.mjs +146 -0
  134. package/dist/jsx/clients/evm.mjs.map +1 -0
  135. package/dist/jsx/clients/evm.native.js +198 -0
  136. package/dist/jsx/clients/evm.native.js.map +1 -0
  137. package/dist/jsx/clients/gpg.mjs +3 -0
  138. package/dist/jsx/clients/gpg.mjs.map +1 -0
  139. package/dist/jsx/clients/gpg.native.js +34 -0
  140. package/dist/jsx/clients/gpg.native.js.map +1 -0
  141. package/dist/jsx/clients/hooks.mjs +51 -0
  142. package/dist/jsx/clients/hooks.mjs.map +1 -0
  143. package/dist/jsx/clients/hooks.native.js +85 -0
  144. package/dist/jsx/clients/hooks.native.js.map +1 -0
  145. package/dist/jsx/clients/index.mjs +11 -0
  146. package/dist/jsx/clients/index.mjs.map +1 -0
  147. package/dist/jsx/clients/index.native.js +52 -0
  148. package/dist/jsx/clients/index.native.js.map +1 -0
  149. package/dist/jsx/clients/solana.mjs +289 -0
  150. package/dist/jsx/clients/solana.mjs.map +1 -0
  151. package/dist/jsx/clients/solana.native.js +511 -0
  152. package/dist/jsx/clients/solana.native.js.map +1 -0
  153. package/dist/jsx/clients/solanaMessage.mjs +13 -0
  154. package/dist/jsx/clients/solanaMessage.mjs.map +1 -0
  155. package/dist/jsx/clients/solanaMessage.native.js +44 -0
  156. package/dist/jsx/clients/solanaMessage.native.js.map +1 -0
  157. package/dist/jsx/clients/sui.mjs +21 -0
  158. package/dist/jsx/clients/sui.mjs.map +1 -0
  159. package/dist/jsx/clients/sui.native.js +51 -0
  160. package/dist/jsx/clients/sui.native.js.map +1 -0
  161. package/dist/jsx/clients/types.mjs +12 -0
  162. package/dist/jsx/clients/types.mjs.map +1 -0
  163. package/dist/jsx/clients/types.native.js +160 -0
  164. package/dist/jsx/clients/types.native.js.map +1 -0
  165. package/dist/jsx/clients/useSolanaClient.mjs +25 -0
  166. package/dist/jsx/clients/useSolanaClient.mjs.map +1 -0
  167. package/dist/jsx/clients/useSolanaClient.native.js +57 -0
  168. package/dist/jsx/clients/useSolanaClient.native.js.map +1 -0
  169. package/dist/jsx/clients/walletStandard.mjs +33 -0
  170. package/dist/jsx/clients/walletStandard.mjs.map +1 -0
  171. package/dist/jsx/clients/walletStandard.native.js +71 -0
  172. package/dist/jsx/clients/walletStandard.native.js.map +1 -0
  173. package/dist/jsx/connectkit/connectors/walletAdapterConnector.mjs +2 -0
  174. package/dist/jsx/connectkit/connectors/walletAdapterConnector.mjs.map +1 -1
  175. package/dist/jsx/connectkit/connectors/walletAdapterConnector.native.js +2 -0
  176. package/dist/jsx/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  177. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs +4 -5
  178. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  179. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js +4 -5
  180. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  181. package/dist/jsx/index.js +1 -0
  182. package/dist/jsx/index.js.map +1 -1
  183. package/dist/jsx/index.mjs +1 -0
  184. package/dist/jsx/index.mjs.map +1 -1
  185. package/dist/jsx/index.native.js +1 -0
  186. package/dist/jsx/index.native.js.map +1 -1
  187. package/dist/jsx/solana.mjs +5 -0
  188. package/dist/jsx/solana.mjs.map +1 -0
  189. package/dist/jsx/solana.native.js +44 -0
  190. package/dist/jsx/solana.native.js.map +1 -0
  191. package/package.json +13 -6
  192. package/src/clients/adapter.ts +13 -0
  193. package/src/clients/bitcoin.ts +42 -0
  194. package/src/clients/connector.spec.ts +78 -0
  195. package/src/clients/connector.ts +36 -0
  196. package/src/clients/evm.spec.ts +265 -0
  197. package/src/clients/evm.ts +223 -0
  198. package/src/clients/gpg.spec.ts +169 -0
  199. package/src/clients/gpg.ts +8 -0
  200. package/src/clients/hooks.spec.tsx +113 -0
  201. package/src/clients/hooks.ts +51 -0
  202. package/src/clients/index.ts +40 -0
  203. package/src/clients/solana.spec.ts +444 -0
  204. package/src/clients/solana.ts +465 -0
  205. package/src/clients/solanaMessage.ts +34 -0
  206. package/src/clients/sui.ts +42 -0
  207. package/src/clients/types.ts +40 -0
  208. package/src/clients/useSolanaClient.ts +31 -0
  209. package/src/clients/walletStandard.ts +87 -0
  210. package/src/connectkit/connectors/walletAdapterConnector.ts +2 -0
  211. package/src/connectkit/siwe/SIWEProvider.spec.tsx +112 -0
  212. package/src/connectkit/siwe/SIWEProvider.tsx +6 -10
  213. package/src/index.ts +4 -0
  214. package/src/solana.ts +30 -0
  215. package/types/clients/adapter.d.ts +5 -0
  216. package/types/clients/adapter.d.ts.map +1 -0
  217. package/types/clients/bitcoin.d.ts +21 -0
  218. package/types/clients/bitcoin.d.ts.map +1 -0
  219. package/types/clients/connector.d.ts +14 -0
  220. package/types/clients/connector.d.ts.map +1 -0
  221. package/types/clients/evm.d.ts +68 -0
  222. package/types/clients/evm.d.ts.map +1 -0
  223. package/types/clients/gpg.d.ts +2 -0
  224. package/types/clients/gpg.d.ts.map +1 -0
  225. package/types/clients/hooks.d.ts +16 -0
  226. package/types/clients/hooks.d.ts.map +1 -0
  227. package/types/clients/index.d.ts +10 -0
  228. package/types/clients/index.d.ts.map +1 -0
  229. package/types/clients/solana.d.ts +111 -0
  230. package/types/clients/solana.d.ts.map +1 -0
  231. package/types/clients/solanaMessage.d.ts +18 -0
  232. package/types/clients/solanaMessage.d.ts.map +1 -0
  233. package/types/clients/sui.d.ts +21 -0
  234. package/types/clients/sui.d.ts.map +1 -0
  235. package/types/clients/types.d.ts +27 -0
  236. package/types/clients/types.d.ts.map +1 -0
  237. package/types/clients/useSolanaClient.d.ts +11 -0
  238. package/types/clients/useSolanaClient.d.ts.map +1 -0
  239. package/types/clients/walletStandard.d.ts +63 -0
  240. package/types/clients/walletStandard.d.ts.map +1 -0
  241. package/types/connectkit/connectors/walletAdapterConnector.d.ts.map +1 -1
  242. package/types/connectkit/siwe/SIWEProvider.d.ts.map +1 -1
  243. package/types/index.d.ts +1 -0
  244. package/types/index.d.ts.map +1 -1
  245. package/types/solana.d.ts +4 -0
  246. package/types/solana.d.ts.map +1 -0
@@ -0,0 +1,475 @@
1
+ import { AccountRole, address, appendTransactionMessageInstruction, compileTransaction, createSolanaRpc, createTransactionMessage, getBase58Decoder, getBase58Encoder, getBase64EncodedWireTransaction, getTransactionDecoder, getTransactionEncoder, pipe, setTransactionMessageFeePayer, setTransactionMessageLifetimeUsingBlockhash } from "@solana/kit";
2
+ import { UnsupportedClientMethodError } from "./types.native.js";
3
+ import { getSolanaWallets, SolanaSignAndSendTransaction, SolanaSignMessage, SolanaSignTransaction, StandardConnect } from "./walletStandard.native.js";
4
+ function _assert_this_initialized(self) {
5
+ if (self === void 0) {
6
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
7
+ }
8
+ return self;
9
+ }
10
+ function _call_super(_this, derived, args) {
11
+ derived = _get_prototype_of(derived);
12
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
13
+ }
14
+ function _class_call_check(instance, Constructor) {
15
+ if (!(instance instanceof Constructor)) {
16
+ throw new TypeError("Cannot call a class as a function");
17
+ }
18
+ }
19
+ function _construct(Parent, args, Class) {
20
+ if (_is_native_reflect_construct()) {
21
+ _construct = Reflect.construct;
22
+ } else {
23
+ _construct = function construct(Parent2, args2, Class2) {
24
+ var a = [null];
25
+ a.push.apply(a, args2);
26
+ var Constructor = Function.bind.apply(Parent2, a);
27
+ var instance = new Constructor();
28
+ if (Class2) _set_prototype_of(instance, Class2.prototype);
29
+ return instance;
30
+ };
31
+ }
32
+ return _construct.apply(null, arguments);
33
+ }
34
+ function _define_property(obj, key, value) {
35
+ if (key in obj) {
36
+ Object.defineProperty(obj, key, {
37
+ value,
38
+ enumerable: true,
39
+ configurable: true,
40
+ writable: true
41
+ });
42
+ } else {
43
+ obj[key] = value;
44
+ }
45
+ return obj;
46
+ }
47
+ function _get_prototype_of(o) {
48
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o2) {
49
+ return o2.__proto__ || Object.getPrototypeOf(o2);
50
+ };
51
+ return _get_prototype_of(o);
52
+ }
53
+ function _inherits(subClass, superClass) {
54
+ if (typeof superClass !== "function" && superClass !== null) {
55
+ throw new TypeError("Super expression must either be null or a function");
56
+ }
57
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
58
+ constructor: {
59
+ value: subClass,
60
+ writable: true,
61
+ configurable: true
62
+ }
63
+ });
64
+ if (superClass) _set_prototype_of(subClass, superClass);
65
+ }
66
+ function _instanceof(left, right) {
67
+ "@swc/helpers - instanceof";
68
+
69
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
70
+ return !!right[Symbol.hasInstance](left);
71
+ } else {
72
+ return left instanceof right;
73
+ }
74
+ }
75
+ function _is_native_function(fn) {
76
+ return Function.toString.call(fn).indexOf("[native code]") !== -1;
77
+ }
78
+ function _possible_constructor_return(self, call) {
79
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
80
+ return call;
81
+ }
82
+ return _assert_this_initialized(self);
83
+ }
84
+ function _set_prototype_of(o, p) {
85
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o2, p2) {
86
+ o2.__proto__ = p2;
87
+ return o2;
88
+ };
89
+ return _set_prototype_of(o, p);
90
+ }
91
+ function _type_of(obj) {
92
+ "@swc/helpers - typeof";
93
+
94
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
95
+ }
96
+ function _wrap_native_super(Class) {
97
+ var _cache = typeof Map === "function" ? /* @__PURE__ */new Map() : void 0;
98
+ _wrap_native_super = function wrapNativeSuper(Class2) {
99
+ if (Class2 === null || !_is_native_function(Class2)) return Class2;
100
+ if (typeof Class2 !== "function") {
101
+ throw new TypeError("Super expression must either be null or a function");
102
+ }
103
+ if (typeof _cache !== "undefined") {
104
+ if (_cache.has(Class2)) return _cache.get(Class2);
105
+ _cache.set(Class2, Wrapper);
106
+ }
107
+ function Wrapper() {
108
+ return _construct(Class2, arguments, _get_prototype_of(this).constructor);
109
+ }
110
+ Wrapper.prototype = Object.create(Class2.prototype, {
111
+ constructor: {
112
+ value: Wrapper,
113
+ enumerable: false,
114
+ writable: true,
115
+ configurable: true
116
+ }
117
+ });
118
+ return _set_prototype_of(Wrapper, Class2);
119
+ };
120
+ return _wrap_native_super(Class);
121
+ }
122
+ function _is_native_reflect_construct() {
123
+ try {
124
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
125
+ } catch (_) {}
126
+ return (_is_native_reflect_construct = function () {
127
+ return !!result;
128
+ })();
129
+ }
130
+ var solanaRpcUrls = {
131
+ "solana:mainnet": "https://api.mainnet-beta.solana.com",
132
+ "solana:devnet": "https://api.devnet.solana.com",
133
+ "solana:testnet": "https://api.testnet.solana.com",
134
+ "solana:localnet": "http://127.0.0.1:8899"
135
+ };
136
+ function solanaChainFromRpcUrl(rpcUrl) {
137
+ if (!rpcUrl) return "solana:mainnet";
138
+ if (/devnet/i.test(rpcUrl)) return "solana:devnet";
139
+ if (/testnet/i.test(rpcUrl)) return "solana:testnet";
140
+ if (/\/\/(localhost|127\.0\.0\.1|10\.0\.2\.2|\[::1\])[:/]/i.test(rpcUrl)) return "solana:localnet";
141
+ return "solana:mainnet";
142
+ }
143
+ var SolanaConfirmationError = /* @__PURE__ */function (Error1) {
144
+ "use strict";
145
+
146
+ _inherits(SolanaConfirmationError2, Error1);
147
+ function SolanaConfirmationError2(signature, reason, detail) {
148
+ _class_call_check(this, SolanaConfirmationError2);
149
+ var _this;
150
+ var mayStillLand = reason === "timeout";
151
+ _this = _call_super(this, SolanaConfirmationError2, [`solana transaction ${signature} ${detail}; ${mayStillLand ? "it may still land, so do not resend it until its blockhash expires" : "it will not land, so it is safe to retry"}`]), _define_property(_this, "signature", void 0), _define_property(_this, "reason", void 0), _define_property(_this, "mayStillLand", void 0), _this.signature = signature, _this.reason = reason;
152
+ _this.name = "SolanaConfirmationError";
153
+ _this.mayStillLand = mayStillLand;
154
+ return _this;
155
+ }
156
+ return SolanaConfirmationError2;
157
+ }(_wrap_native_super(Error));
158
+ var capabilities = ["signMessage", "signTransaction", "signAndSendTransaction", "sendTransaction"];
159
+ var systemProgram = address("11111111111111111111111111111111");
160
+ var maxU64 = 0xffffffffffffffffn;
161
+ function transferSolInstruction(from, to, lamports) {
162
+ if (lamports < 0n || lamports > maxU64) {
163
+ throw new RangeError(`lamports must fit a u64, got ${lamports}`);
164
+ }
165
+ var data = new Uint8Array(12);
166
+ data[0] = 2;
167
+ var value = lamports;
168
+ for (var i = 4; i < 12; i++) {
169
+ data[i] = Number(value & 0xffn);
170
+ value >>= 8n;
171
+ }
172
+ return {
173
+ programAddress: systemProgram,
174
+ accounts: [{
175
+ address: from,
176
+ role: AccountRole.WRITABLE_SIGNER
177
+ }, {
178
+ address: to,
179
+ role: AccountRole.WRITABLE
180
+ }],
181
+ data
182
+ };
183
+ }
184
+ var toWire = function toWire2(transaction) {
185
+ return _instanceof(transaction, Uint8Array) ? transaction : Uint8Array.from(getTransactionEncoder().encode(transaction));
186
+ };
187
+ var fromWire = function fromWire2(bytes) {
188
+ return getTransactionDecoder().decode(bytes);
189
+ };
190
+ var toSignature = function toSignature2(bytes) {
191
+ return getBase58Decoder().decode(bytes);
192
+ };
193
+ var sleep = function sleep2(ms) {
194
+ return new Promise(function (resolve) {
195
+ return setTimeout(resolve, ms);
196
+ });
197
+ };
198
+ var lastValidBlockHeightOf = function lastValidBlockHeightOf2(transaction) {
199
+ if (_instanceof(transaction, Uint8Array)) return void 0;
200
+ var lifetime = transaction.lifetimeConstraint;
201
+ return lifetime === null || lifetime === void 0 ? void 0 : lifetime.lastValidBlockHeight;
202
+ };
203
+ var reached = function reached2(status, commitment) {
204
+ return (status === null || status === void 0 ? void 0 : status.confirmationStatus) === "finalized" || commitment === "confirmed" && (status === null || status === void 0 ? void 0 : status.confirmationStatus) === "confirmed";
205
+ };
206
+ function solanaClient(config) {
207
+ var _config_chain, _config_rpc, _config_rpcUrl;
208
+ var {
209
+ signer
210
+ } = config;
211
+ var chain = (_config_chain = config.chain) !== null && _config_chain !== void 0 ? _config_chain : solanaChainFromRpcUrl(config.rpcUrl);
212
+ var rpc = (_config_rpc = config.rpc) !== null && _config_rpc !== void 0 ? _config_rpc : createSolanaRpc((_config_rpcUrl = config.rpcUrl) !== null && _config_rpcUrl !== void 0 ? _config_rpcUrl : solanaRpcUrls[chain]);
213
+ var owner = address(signer.address);
214
+ var signTransaction = async function signTransaction2(transaction) {
215
+ return fromWire(await signer.signTransaction(toWire(transaction)));
216
+ };
217
+ var broadcast = function broadcast2(transaction) {
218
+ var tx = _instanceof(transaction, Uint8Array) ? fromWire(transaction) : transaction;
219
+ return rpc.sendTransaction(getBase64EncodedWireTransaction(tx), {
220
+ encoding: "base64"
221
+ }).send();
222
+ };
223
+ var sendTransaction = async function sendTransaction2(transaction) {
224
+ return {
225
+ signature: await broadcast(transaction),
226
+ lastValidBlockHeight: lastValidBlockHeightOf(transaction)
227
+ };
228
+ };
229
+ var signAndSendTransaction = async function signAndSendTransaction2(transaction) {
230
+ var lastValidBlockHeight = lastValidBlockHeightOf(transaction);
231
+ var wire = toWire(transaction);
232
+ if (signer.signAndSendTransaction) {
233
+ try {
234
+ var signature = toSignature(await signer.signAndSendTransaction(wire));
235
+ return {
236
+ signature,
237
+ lastValidBlockHeight
238
+ };
239
+ } catch (error) {
240
+ if (!_instanceof(error, UnsupportedClientMethodError)) throw error;
241
+ }
242
+ }
243
+ return {
244
+ signature: await broadcast(await signer.signTransaction(wire)),
245
+ lastValidBlockHeight
246
+ };
247
+ };
248
+ var statusOf = async function statusOf2(signature) {
249
+ var {
250
+ value
251
+ } = await rpc.getSignatureStatuses([signature], {
252
+ searchTransactionHistory: true
253
+ }).send();
254
+ var status = value[0];
255
+ if (status === null || status === void 0 ? void 0 : status.err) {
256
+ throw new SolanaConfirmationError(signature, "failed", `failed on chain: ${JSON.stringify(status.err, function (_, v) {
257
+ return (typeof v === "undefined" ? "undefined" : _type_of(v)) === "bigint" ? `${v}` : v;
258
+ })}`);
259
+ }
260
+ return status;
261
+ };
262
+ return {
263
+ family: "solana",
264
+ address: owner,
265
+ chainId: chain,
266
+ capabilities,
267
+ rpc,
268
+ signer,
269
+ async signMessage(message) {
270
+ var bytes = typeof message === "string" ? new TextEncoder().encode(message) : message;
271
+ return getBase58Decoder().decode(await signer.signMessage(bytes));
272
+ },
273
+ signTransaction,
274
+ signAndSendTransaction,
275
+ sendTransaction,
276
+ async confirmTransaction(submission) {
277
+ var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
278
+ var {
279
+ signature,
280
+ lastValidBlockHeight: submitted
281
+ } = typeof submission === "string" ? {
282
+ signature: submission
283
+ } : submission;
284
+ var {
285
+ commitment = "confirmed",
286
+ lastValidBlockHeight = submitted,
287
+ timeoutMs = 9e4,
288
+ pollMs = 500
289
+ } = options;
290
+ var deadline = Date.now() + timeoutMs;
291
+ for (;;) {
292
+ if (reached(await statusOf(signature), commitment)) return;
293
+ if (lastValidBlockHeight !== void 0) {
294
+ var height = await rpc.getBlockHeight({
295
+ commitment
296
+ }).send();
297
+ if (height > lastValidBlockHeight) {
298
+ var status = await statusOf(signature);
299
+ if (reached(status, commitment)) return;
300
+ if (!status) {
301
+ throw new SolanaConfirmationError(signature, "expired", `expired: block height ${height} passed ${lastValidBlockHeight}`);
302
+ }
303
+ }
304
+ } else if (Date.now() > deadline) {
305
+ throw new SolanaConfirmationError(signature, "timeout", `not ${commitment} after ${timeoutMs}ms`);
306
+ }
307
+ await sleep(pollMs);
308
+ }
309
+ },
310
+ async getBalance(target) {
311
+ var {
312
+ value
313
+ } = await rpc.getBalance(target ? address(target) : owner).send();
314
+ return value;
315
+ },
316
+ async transferSol(param) {
317
+ var {
318
+ to,
319
+ lamports
320
+ } = param;
321
+ var {
322
+ value: latestBlockhash
323
+ } = await rpc.getLatestBlockhash().send();
324
+ var message = pipe(createTransactionMessage({
325
+ version: 0
326
+ }), function (m) {
327
+ return setTransactionMessageFeePayer(owner, m);
328
+ }, function (m) {
329
+ return setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, m);
330
+ }, function (m) {
331
+ return appendTransactionMessageInstruction(transferSolInstruction(owner, address(to), lamports), m);
332
+ });
333
+ var {
334
+ signature
335
+ } = await signAndSendTransaction(compileTransaction(message));
336
+ return {
337
+ signature,
338
+ lastValidBlockHeight: latestBlockhash.lastValidBlockHeight
339
+ };
340
+ }
341
+ };
342
+ }
343
+ function walletFeature(wallet, name) {
344
+ var feature = wallet.features[name];
345
+ if (!feature) {
346
+ throw new UnsupportedClientMethodError("solana", name, `${wallet.name} does not implement it`);
347
+ }
348
+ return feature;
349
+ }
350
+ function standardSolanaSigner(wallet, account) {
351
+ var chain = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "solana:mainnet";
352
+ var signer = {
353
+ address: account.address,
354
+ async signMessage(message) {
355
+ var feature = walletFeature(wallet, SolanaSignMessage);
356
+ var [output] = await feature.signMessage({
357
+ account,
358
+ message
359
+ });
360
+ return output.signature;
361
+ },
362
+ async signTransaction(transaction) {
363
+ var feature = walletFeature(wallet, SolanaSignTransaction);
364
+ var [output] = await feature.signTransaction({
365
+ account,
366
+ transaction,
367
+ chain
368
+ });
369
+ return output.signedTransaction;
370
+ }
371
+ };
372
+ if (wallet.features[SolanaSignAndSendTransaction]) {
373
+ signer.signAndSendTransaction = async function (transaction) {
374
+ var feature = walletFeature(wallet, SolanaSignAndSendTransaction);
375
+ var [output] = await feature.signAndSendTransaction({
376
+ account,
377
+ transaction,
378
+ chain
379
+ });
380
+ return output.signature;
381
+ };
382
+ }
383
+ return signer;
384
+ }
385
+ function findSolanaSigner(owner, chain) {
386
+ var _iteratorNormalCompletion = true,
387
+ _didIteratorError = false,
388
+ _iteratorError = void 0;
389
+ try {
390
+ for (var _iterator = getSolanaWallets()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
391
+ var wallet = _step.value;
392
+ var account = wallet.accounts.find(function (a) {
393
+ return a.address === owner;
394
+ });
395
+ if (account) return standardSolanaSigner(wallet, account, chain);
396
+ }
397
+ } catch (err) {
398
+ _didIteratorError = true;
399
+ _iteratorError = err;
400
+ } finally {
401
+ try {
402
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
403
+ _iterator.return();
404
+ }
405
+ } finally {
406
+ if (_didIteratorError) {
407
+ throw _iteratorError;
408
+ }
409
+ }
410
+ }
411
+ return null;
412
+ }
413
+ async function connectSolanaWallet() {
414
+ var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
415
+ var _options_chain, _accounts_find;
416
+ var wallets = getSolanaWallets();
417
+ var wallet = options.wallet ? wallets.find(function (w) {
418
+ var _options_wallet;
419
+ return w.name.toLowerCase() === ((_options_wallet = options.wallet) === null || _options_wallet === void 0 ? void 0 : _options_wallet.toLowerCase());
420
+ }) : wallets[0];
421
+ if (!wallet) {
422
+ throw new Error(options.wallet ? `No Solana wallet named ${options.wallet} is installed` : "No Solana wallet found. Install Phantom, Solflare or Backpack.");
423
+ }
424
+ var {
425
+ accounts
426
+ } = await walletFeature(wallet, StandardConnect).connect({
427
+ silent: options.silent
428
+ });
429
+ var chain = (_options_chain = options.chain) !== null && _options_chain !== void 0 ? _options_chain : "solana:mainnet";
430
+ var account = (_accounts_find = accounts.find(function (a) {
431
+ return a.chains.includes(chain);
432
+ })) !== null && _accounts_find !== void 0 ? _accounts_find : accounts[0];
433
+ if (!account) throw new Error(`${wallet.name} returned no Solana account`);
434
+ return standardSolanaSigner(wallet, account, chain);
435
+ }
436
+ var utf8 = function utf82(bytes) {
437
+ try {
438
+ return new TextDecoder("utf-8", {
439
+ fatal: true
440
+ }).decode(bytes);
441
+ } catch (unused) {
442
+ return null;
443
+ }
444
+ };
445
+ function injectedSolanaSigner(adapter, chain) {
446
+ var owner = adapter.address;
447
+ if (!owner) throw new Error("injectedSolanaSigner: connect a Solana wallet first");
448
+ var standard = function standard2(method) {
449
+ var signer = findSolanaSigner(owner, chain);
450
+ if (!signer) {
451
+ throw new UnsupportedClientMethodError("solana", method, `no Wallet Standard wallet holds ${owner}; connect Phantom, Solflare or Backpack`);
452
+ }
453
+ return signer;
454
+ };
455
+ return {
456
+ address: owner,
457
+ async signMessage(message) {
458
+ var text = utf8(message);
459
+ if (text === null) return standard("signMessage").signMessage(message);
460
+ return Uint8Array.from(getBase58Encoder().encode(await adapter.signMessage(text)));
461
+ },
462
+ signTransaction: async function signTransaction(transaction) {
463
+ return standard("signTransaction").signTransaction(transaction);
464
+ },
465
+ async signAndSendTransaction(transaction) {
466
+ var signer = standard("signAndSendTransaction");
467
+ if (!signer.signAndSendTransaction) {
468
+ throw new UnsupportedClientMethodError("solana", "signAndSendTransaction");
469
+ }
470
+ return signer.signAndSendTransaction(transaction);
471
+ }
472
+ };
473
+ }
474
+ export { SolanaConfirmationError, connectSolanaWallet, findSolanaSigner, injectedSolanaSigner, solanaChainFromRpcUrl, solanaClient, solanaRpcUrls, standardSolanaSigner, transferSolInstruction };
475
+ //# sourceMappingURL=solana.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AccountRole","address","appendTransactionMessageInstruction","compileTransaction","createSolanaRpc","createTransactionMessage","getBase58Decoder","getBase58Encoder","getBase64EncodedWireTransaction","getTransactionDecoder","getTransactionEncoder","pipe","setTransactionMessageFeePayer","setTransactionMessageLifetimeUsingBlockhash","UnsupportedClientMethodError","getSolanaWallets","SolanaSignAndSendTransaction","SolanaSignMessage","SolanaSignTransaction","StandardConnect","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","o","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","_instanceof","left","right","Symbol","hasInstance","_is_native_function","fn","toString","call","indexOf","_type_of","p","p2","_wrap_native_super","_cache","Map","wrapNativeSuper","has","get","set","Wrapper","result","Boolean","valueOf","_","solanaRpcUrls","solanaChainFromRpcUrl","rpcUrl","test","SolanaConfirmationError","Error1","SolanaConfirmationError2","signature","reason","detail","mayStillLand","name","Error","capabilities","systemProgram","maxU64","transferSolInstruction","from","to","lamports","RangeError","data","Uint8Array","i","Number","programAddress","accounts","role","WRITABLE_SIGNER","WRITABLE","toWire","toWire2","transaction","encode","fromWire","fromWire2","bytes","decode","toSignature","toSignature2","sleep","sleep2","ms","Promise","resolve","setTimeout","lastValidBlockHeightOf","lastValidBlockHeightOf2","lifetime","lifetimeConstraint","lastValidBlockHeight","reached","reached2","status","commitment","confirmationStatus","solanaClient","config","_config_chain","_config_rpc","_config_rpcUrl","signer","chain","rpc","owner","signTransaction","signTransaction2","broadcast","broadcast2","tx","sendTransaction","encoding","send","sendTransaction2","signAndSendTransaction","signAndSendTransaction2","wire","error","statusOf","statusOf2","getSignatureStatuses","searchTransactionHistory","err","JSON","stringify","v","family","chainId","signMessage","message","TextEncoder","confirmTransaction","submission","options","length","submitted","timeoutMs","pollMs","deadline","Date","now"],"sources":["../../../src/clients/solana.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ const capabilities = ["signMessage"];
2
+ function solanaMessageClient(adapter, chain = "solana:mainnet") {
3
+ if (!adapter.address) throw new Error("solanaMessageClient: connect a Solana wallet first");
4
+ return {
5
+ family: "solana",
6
+ address: adapter.address,
7
+ chainId: chain,
8
+ capabilities,
9
+ signMessage: message => adapter.signMessage(message)
10
+ };
11
+ }
12
+ export { solanaMessageClient };
13
+ //# sourceMappingURL=solanaMessage.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["capabilities","solanaMessageClient","adapter","chain","address","Error","family","chainId","signMessage","message"],"sources":["../../../src/clients/solanaMessage.ts"],"sourcesContent":[null],"mappings":"AAmBA,MAAMA,YAAA,GAA4C,CAAC,aAAa;AAEzD,SAASC,oBACdC,OAAA,EACAC,KAAA,GAAqB,kBACA;EACrB,IAAI,CAACD,OAAA,CAAQE,OAAA,EAAS,MAAM,IAAIC,KAAA,CAAM,oDAAoD;EAC1F,OAAO;IACLC,MAAA,EAAQ;IACRF,OAAA,EAASF,OAAA,CAAQE,OAAA;IACjBG,OAAA,EAASJ,KAAA;IACTH,YAAA;IACAQ,WAAA,EAAcC,OAAA,IAAYP,OAAA,CAAQM,WAAA,CAAYC,OAAO;EACvD;AACF","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ var capabilities = ["signMessage"];
2
+ function solanaMessageClient(adapter) {
3
+ var chain = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "solana:mainnet";
4
+ if (!adapter.address) throw new Error("solanaMessageClient: connect a Solana wallet first");
5
+ return {
6
+ family: "solana",
7
+ address: adapter.address,
8
+ chainId: chain,
9
+ capabilities,
10
+ signMessage: function signMessage(message) {
11
+ return adapter.signMessage(message);
12
+ }
13
+ };
14
+ }
15
+ export { solanaMessageClient };
16
+ //# sourceMappingURL=solanaMessage.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["capabilities","solanaMessageClient","adapter","chain","arguments","length","address","Error","family","chainId"],"sources":["../../../src/clients/solanaMessage.ts"],"sourcesContent":[null],"mappings":"AAmBA,IAAAA,YAAM,IAEC,aAAS,CAId;AACA,SAAOC,oBAAAC,OAAA;EAAA,IACLC,KAAA,GAAQC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EAAA,IACR,CAAAF,OAAS,CAAAI,OAAQ,YAAAC,KAAA;EAAA,OACjB;IACAC,MAAA;IACAF,OAAA,EAAAJ,OAAc,CAAAI,OAAA;IAChBG,OAAA,EAAAN,KAAA;IACFH,YAAA","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { UnsupportedClientMethodError } from "./types.mjs";
2
+ const txTodo = "needs @mysten/sui's Transaction plus the wallet's sui:signTransaction / sui:signAndExecuteTransaction features";
3
+ const capabilities = ["signMessage"];
4
+ function suiClient(adapter) {
5
+ if (!adapter.address) throw new Error("suiClient: connect a Sui wallet first");
6
+ return {
7
+ family: "sui",
8
+ address: adapter.address,
9
+ chainId: "sui:mainnet",
10
+ capabilities,
11
+ signMessage: message => adapter.signMessage(message),
12
+ signTransaction: async () => {
13
+ throw new UnsupportedClientMethodError("sui", "signTransaction", txTodo);
14
+ },
15
+ signAndExecuteTransaction: async () => {
16
+ throw new UnsupportedClientMethodError("sui", "signAndExecuteTransaction", txTodo);
17
+ }
18
+ };
19
+ }
20
+ export { suiClient };
21
+ //# sourceMappingURL=sui.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UnsupportedClientMethodError","txTodo","capabilities","suiClient","adapter","address","Error","family","chainId","signMessage","message","signTransaction","signAndExecuteTransaction"],"sources":["../../../src/clients/sui.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,4BAAA,QAA6E;AAItF,MAAMC,MAAA,GACJ;AAkBF,MAAMC,YAAA,GAA4C,CAAC,aAAa;AAEzD,SAASC,UAAUC,OAAA,EAAoC;EAC5D,IAAI,CAACA,OAAA,CAAQC,OAAA,EAAS,MAAM,IAAIC,KAAA,CAAM,uCAAuC;EAC7E,OAAO;IACLC,MAAA,EAAQ;IACRF,OAAA,EAASD,OAAA,CAAQC,OAAA;IACjBG,OAAA,EAAS;IACTN,YAAA;IACAO,WAAA,EAAcC,OAAA,IAAYN,OAAA,CAAQK,WAAA,CAAYC,OAAO;IACrDC,eAAA,EAAiB,MAAAA,CAAA,KAAY;MAC3B,MAAM,IAAIX,4BAAA,CAA6B,OAAO,mBAAmBC,MAAM;IACzE;IACAW,yBAAA,EAA2B,MAAAA,CAAA,KAAY;MACrC,MAAM,IAAIZ,4BAAA,CAA6B,OAAO,6BAA6BC,MAAM;IACnF;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ import { UnsupportedClientMethodError } from "./types.native.js";
2
+ var txTodo = "needs @mysten/sui's Transaction plus the wallet's sui:signTransaction / sui:signAndExecuteTransaction features";
3
+ var capabilities = ["signMessage"];
4
+ function suiClient(adapter) {
5
+ if (!adapter.address) throw new Error("suiClient: connect a Sui wallet first");
6
+ return {
7
+ family: "sui",
8
+ address: adapter.address,
9
+ chainId: "sui:mainnet",
10
+ capabilities,
11
+ signMessage: function signMessage(message) {
12
+ return adapter.signMessage(message);
13
+ },
14
+ signTransaction: async function signTransaction() {
15
+ throw new UnsupportedClientMethodError("sui", "signTransaction", txTodo);
16
+ },
17
+ signAndExecuteTransaction: async function signAndExecuteTransaction() {
18
+ throw new UnsupportedClientMethodError("sui", "signAndExecuteTransaction", txTodo);
19
+ }
20
+ };
21
+ }
22
+ export { suiClient };
23
+ //# sourceMappingURL=sui.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UnsupportedClientMethodError","txTodo","capabilities","suiClient","adapter","address","Error","family","chainId","signMessage","message","signTransaction","signAndExecuteTransaction"],"sources":["../../../src/clients/sui.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,4BAAA,QAA6E;AAItF,IAAAC,MAAM,mHACJ;AAkBF,IAAAC,YAAM,IAEC,aAAS,CACd;AACA,SAAOC,UAAAC,OAAA;EAAA,IACL,CAAAA,OAAQ,CAAAC,OAAA,YAAAC,KAAA;EAAA,OACR;IACAC,MAAA,OAAS;IACTF,OAAA,EAAAD,OAAA,CAAAC,OAAA;IACAG,OAAA,eAAc;IACdN,YAAA;IACEO,WAAM,EAAI,SAAAA,YAAAC,OAA6B;MACzC,OAAAN,OAAA,CAAAK,WAAA,CAAAC,OAAA;IACA;IACEC,eAAU,iBAAAA,eAA6BA,CAAA,EAAO;MAChD,UAAAX,4BAAA,2BAAAC,MAAA;IACF;IACFW,yBAAA,iBAAAA,0BAAA","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ class UnsupportedClientMethodError extends Error {
2
+ constructor(family, method, detail) {
3
+ super(`${family} client: ${method} is not supported${detail ? ` (${detail})` : ""}`);
4
+ this.family = family;
5
+ this.method = method;
6
+ this.name = "UnsupportedClientMethodError";
7
+ }
8
+ family;
9
+ method;
10
+ }
11
+ export { UnsupportedClientMethodError };
12
+ //# sourceMappingURL=types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UnsupportedClientMethodError","Error","constructor","family","method","detail","name"],"sources":["../../../src/clients/types.ts"],"sourcesContent":[null],"mappings":"AA8BO,MAAMA,4BAAA,SAAqCC,KAAA,CAAM;EACtDC,YACWC,MAAA,EACAC,MAAA,EACTC,MAAA,EACA;IACA,MAAM,GAAGF,MAAM,YAAYC,MAAM,oBAAoBC,MAAA,GAAS,KAAKA,MAAM,MAAM,EAAE,EAAE;IAJ1E,KAAAF,MAAA,GAAAA,MAAA;IACA,KAAAC,MAAA,GAAAA,MAAA;IAIT,KAAKE,IAAA,GAAO;EACd;EANWH,MAAA;EACAC,MAAA;AAMb","ignoreList":[]}