@polyester/sdk 0.0.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 (745) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/LICENSE +7 -0
  3. package/README.md +55 -0
  4. package/SECURITY.md +14 -0
  5. package/dist/_virtual/_rolldown/runtime.js +13 -0
  6. package/dist/account-signer/create-polyester-account-signer.d.ts +28 -0
  7. package/dist/account-signer/create-polyester-account-signer.d.ts.map +1 -0
  8. package/dist/account-signer/create-polyester-account-signer.js +101 -0
  9. package/dist/account-signer/create-polyester-account-signer.js.map +1 -0
  10. package/dist/account-signer/index.d.ts +3 -0
  11. package/dist/account-signer/index.js +3 -0
  12. package/dist/account-signer/predict-safe-address.js +230 -0
  13. package/dist/account-signer/predict-safe-address.js.map +1 -0
  14. package/dist/account-signer/types.d.ts +40 -0
  15. package/dist/account-signer/types.d.ts.map +1 -0
  16. package/dist/account-signer/types.js +29 -0
  17. package/dist/account-signer/types.js.map +1 -0
  18. package/dist/browser-client.d.ts +37 -0
  19. package/dist/browser-client.d.ts.map +1 -0
  20. package/dist/browser-client.js +69 -0
  21. package/dist/browser-client.js.map +1 -0
  22. package/dist/catalogs/client-catalog.d.ts +6 -0
  23. package/dist/catalogs/client-catalog.d.ts.map +1 -0
  24. package/dist/catalogs/client-catalog.js +88 -0
  25. package/dist/catalogs/client-catalog.js.map +1 -0
  26. package/dist/catalogs/decimal.js +92 -0
  27. package/dist/catalogs/decimal.js.map +1 -0
  28. package/dist/catalogs/index.d.ts +10 -0
  29. package/dist/catalogs/index.js +8 -0
  30. package/dist/catalogs/indexes.js +36 -0
  31. package/dist/catalogs/indexes.js.map +1 -0
  32. package/dist/catalogs/market-data-catalog.d.ts +37 -0
  33. package/dist/catalogs/market-data-catalog.d.ts.map +1 -0
  34. package/dist/catalogs/market-data-catalog.js +49 -0
  35. package/dist/catalogs/market-data-catalog.js.map +1 -0
  36. package/dist/catalogs/readers.d.ts +6 -0
  37. package/dist/catalogs/readers.d.ts.map +1 -0
  38. package/dist/catalogs/readers.js +545 -0
  39. package/dist/catalogs/readers.js.map +1 -0
  40. package/dist/catalogs/snapshot.d.ts +18 -0
  41. package/dist/catalogs/snapshot.d.ts.map +1 -0
  42. package/dist/catalogs/snapshot.js +16 -0
  43. package/dist/catalogs/snapshot.js.map +1 -0
  44. package/dist/catalogs/types.d.ts +268 -0
  45. package/dist/catalogs/types.d.ts.map +1 -0
  46. package/dist/catalogs/types.js +48 -0
  47. package/dist/catalogs/types.js.map +1 -0
  48. package/dist/catalogs/unknown-asset.d.ts +27 -0
  49. package/dist/catalogs/unknown-asset.d.ts.map +1 -0
  50. package/dist/catalogs/unknown-asset.js +38 -0
  51. package/dist/catalogs/unknown-asset.js.map +1 -0
  52. package/dist/catalogs/zipper-catalog.d.ts +33 -0
  53. package/dist/catalogs/zipper-catalog.d.ts.map +1 -0
  54. package/dist/catalogs/zipper-catalog.js +54 -0
  55. package/dist/catalogs/zipper-catalog.js.map +1 -0
  56. package/dist/catalogs/zipper-supply.d.ts +10 -0
  57. package/dist/catalogs/zipper-supply.d.ts.map +1 -0
  58. package/dist/catalogs/zipper-supply.js +40 -0
  59. package/dist/catalogs/zipper-supply.js.map +1 -0
  60. package/dist/core-client.d.ts +155 -0
  61. package/dist/core-client.d.ts.map +1 -0
  62. package/dist/core-client.js +266 -0
  63. package/dist/core-client.js.map +1 -0
  64. package/dist/environment.d.ts +57 -0
  65. package/dist/environment.d.ts.map +1 -0
  66. package/dist/environment.js +153 -0
  67. package/dist/environment.js.map +1 -0
  68. package/dist/gen/auth/v1/address_book_pb.d.ts +2012 -0
  69. package/dist/gen/auth/v1/address_book_pb.d.ts.map +1 -0
  70. package/dist/gen/auth/v1/address_book_pb.js +505 -0
  71. package/dist/gen/auth/v1/address_book_pb.js.map +1 -0
  72. package/dist/gen/auth/v1/api_keys_pb.d.ts +496 -0
  73. package/dist/gen/auth/v1/api_keys_pb.d.ts.map +1 -0
  74. package/dist/gen/auth/v1/api_keys_pb.js +137 -0
  75. package/dist/gen/auth/v1/api_keys_pb.js.map +1 -0
  76. package/dist/gen/auth/v1/auth_pb.d.ts +523 -0
  77. package/dist/gen/auth/v1/auth_pb.d.ts.map +1 -0
  78. package/dist/gen/auth/v1/auth_pb.js +313 -0
  79. package/dist/gen/auth/v1/auth_pb.js.map +1 -0
  80. package/dist/gen/auth/v1/mfa_pb.d.ts +1020 -0
  81. package/dist/gen/auth/v1/mfa_pb.d.ts.map +1 -0
  82. package/dist/gen/auth/v1/mfa_pb.js +315 -0
  83. package/dist/gen/auth/v1/mfa_pb.js.map +1 -0
  84. package/dist/gen/auth/v1/policies_pb.d.ts +1410 -0
  85. package/dist/gen/auth/v1/policies_pb.d.ts.map +1 -0
  86. package/dist/gen/auth/v1/policies_pb.js +341 -0
  87. package/dist/gen/auth/v1/policies_pb.js.map +1 -0
  88. package/dist/gen/auth/v1/profile_pb.d.ts +370 -0
  89. package/dist/gen/auth/v1/profile_pb.d.ts.map +1 -0
  90. package/dist/gen/auth/v1/profile_pb.js +114 -0
  91. package/dist/gen/auth/v1/profile_pb.js.map +1 -0
  92. package/dist/gen/auth/v1/resolve_pb.d.ts +174 -0
  93. package/dist/gen/auth/v1/resolve_pb.d.ts.map +1 -0
  94. package/dist/gen/auth/v1/resolve_pb.js +80 -0
  95. package/dist/gen/auth/v1/resolve_pb.js.map +1 -0
  96. package/dist/gen/auth/v1/social_verification_pb.d.ts +408 -0
  97. package/dist/gen/auth/v1/social_verification_pb.d.ts.map +1 -0
  98. package/dist/gen/auth/v1/social_verification_pb.js +196 -0
  99. package/dist/gen/auth/v1/social_verification_pb.js.map +1 -0
  100. package/dist/gen/auth/v1/subaccounts_pb.d.ts +1490 -0
  101. package/dist/gen/auth/v1/subaccounts_pb.d.ts.map +1 -0
  102. package/dist/gen/auth/v1/subaccounts_pb.js +574 -0
  103. package/dist/gen/auth/v1/subaccounts_pb.js.map +1 -0
  104. package/dist/gen/chain/analytics/v1/analytics_read_pb.d.ts +426 -0
  105. package/dist/gen/chain/analytics/v1/analytics_read_pb.d.ts.map +1 -0
  106. package/dist/gen/chain/analytics/v1/analytics_read_pb.js +119 -0
  107. package/dist/gen/chain/analytics/v1/analytics_read_pb.js.map +1 -0
  108. package/dist/gen/chain/deposit/v1/deposit_pb.d.ts +158 -0
  109. package/dist/gen/chain/deposit/v1/deposit_pb.d.ts.map +1 -0
  110. package/dist/gen/chain/deposit/v1/deposit_pb.js +52 -0
  111. package/dist/gen/chain/deposit/v1/deposit_pb.js.map +1 -0
  112. package/dist/gen/chain/guard/v1/guard_signer_pb.d.ts +588 -0
  113. package/dist/gen/chain/guard/v1/guard_signer_pb.d.ts.map +1 -0
  114. package/dist/gen/chain/guard/v1/guard_signer_pb.js +195 -0
  115. package/dist/gen/chain/guard/v1/guard_signer_pb.js.map +1 -0
  116. package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.d.ts +1297 -0
  117. package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.d.ts.map +1 -0
  118. package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.js +408 -0
  119. package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.js.map +1 -0
  120. package/dist/gen/chain/lifecycle/v1/types_pb.d.ts +359 -0
  121. package/dist/gen/chain/lifecycle/v1/types_pb.d.ts.map +1 -0
  122. package/dist/gen/chain/lifecycle/v1/types_pb.js +322 -0
  123. package/dist/gen/chain/lifecycle/v1/types_pb.js.map +1 -0
  124. package/dist/gen/chain/withdraw/v1/withdraw_pb.d.ts +236 -0
  125. package/dist/gen/chain/withdraw/v1/withdraw_pb.d.ts.map +1 -0
  126. package/dist/gen/chain/withdraw/v1/withdraw_pb.js +79 -0
  127. package/dist/gen/chain/withdraw/v1/withdraw_pb.js.map +1 -0
  128. package/dist/gen/chain/zipper/v1/reason_pb.d.ts +349 -0
  129. package/dist/gen/chain/zipper/v1/reason_pb.d.ts.map +1 -0
  130. package/dist/gen/chain/zipper/v1/reason_pb.js +330 -0
  131. package/dist/gen/chain/zipper/v1/reason_pb.js.map +1 -0
  132. package/dist/gen/chain/zipper/v1/zipper_pb.d.ts +396 -0
  133. package/dist/gen/chain/zipper/v1/zipper_pb.d.ts.map +1 -0
  134. package/dist/gen/chain/zipper/v1/zipper_pb.js +70 -0
  135. package/dist/gen/chain/zipper/v1/zipper_pb.js.map +1 -0
  136. package/dist/gen/collab/v1/whiteboard_pb.d.ts +829 -0
  137. package/dist/gen/collab/v1/whiteboard_pb.d.ts.map +1 -0
  138. package/dist/gen/collab/v1/whiteboard_pb.js +250 -0
  139. package/dist/gen/collab/v1/whiteboard_pb.js.map +1 -0
  140. package/dist/gen/index.d.ts +35 -0
  141. package/dist/gen/index.js +35 -0
  142. package/dist/gen/layout/v1/layout_pb.d.ts +1289 -0
  143. package/dist/gen/layout/v1/layout_pb.d.ts.map +1 -0
  144. package/dist/gen/layout/v1/layout_pb.js +313 -0
  145. package/dist/gen/layout/v1/layout_pb.js.map +1 -0
  146. package/dist/gen/ledger/read/v1/ledger_read_pb.d.ts +1000 -0
  147. package/dist/gen/ledger/read/v1/ledger_read_pb.d.ts.map +1 -0
  148. package/dist/gen/ledger/read/v1/ledger_read_pb.js +347 -0
  149. package/dist/gen/ledger/read/v1/ledger_read_pb.js.map +1 -0
  150. package/dist/gen/ledger/v1/catalog_pb.d.ts +129 -0
  151. package/dist/gen/ledger/v1/catalog_pb.d.ts.map +1 -0
  152. package/dist/gen/ledger/v1/catalog_pb.js +138 -0
  153. package/dist/gen/ledger/v1/catalog_pb.js.map +1 -0
  154. package/dist/gen/marketdata/v1/heatmap_pb.d.ts +571 -0
  155. package/dist/gen/marketdata/v1/heatmap_pb.d.ts.map +1 -0
  156. package/dist/gen/marketdata/v1/heatmap_pb.js +194 -0
  157. package/dist/gen/marketdata/v1/heatmap_pb.js.map +1 -0
  158. package/dist/gen/marketdata/v1/marketdata_pb.d.ts +1015 -0
  159. package/dist/gen/marketdata/v1/marketdata_pb.d.ts.map +1 -0
  160. package/dist/gen/marketdata/v1/marketdata_pb.js +274 -0
  161. package/dist/gen/marketdata/v1/marketdata_pb.js.map +1 -0
  162. package/dist/gen/marketoverview/v1/marketoverview_pb.d.ts +419 -0
  163. package/dist/gen/marketoverview/v1/marketoverview_pb.d.ts.map +1 -0
  164. package/dist/gen/marketoverview/v1/marketoverview_pb.js +212 -0
  165. package/dist/gen/marketoverview/v1/marketoverview_pb.js.map +1 -0
  166. package/dist/gen/orderbook/v1/orderbook_pb.d.ts +260 -0
  167. package/dist/gen/orderbook/v1/orderbook_pb.d.ts.map +1 -0
  168. package/dist/gen/orderbook/v1/orderbook_pb.js +119 -0
  169. package/dist/gen/orderbook/v1/orderbook_pb.js.map +1 -0
  170. package/dist/gen/orders/v1/orders_pb.d.ts +2497 -0
  171. package/dist/gen/orders/v1/orders_pb.d.ts.map +1 -0
  172. package/dist/gen/orders/v1/orders_pb.js +1043 -0
  173. package/dist/gen/orders/v1/orders_pb.js.map +1 -0
  174. package/dist/gen/orders/v1/orders_read_pb.d.ts +1322 -0
  175. package/dist/gen/orders/v1/orders_read_pb.d.ts.map +1 -0
  176. package/dist/gen/orders/v1/orders_read_pb.js +408 -0
  177. package/dist/gen/orders/v1/orders_read_pb.js.map +1 -0
  178. package/dist/gen/polychart/events/v1/polychart_events_pb.d.ts +192 -0
  179. package/dist/gen/polychart/events/v1/polychart_events_pb.d.ts.map +1 -0
  180. package/dist/gen/polychart/events/v1/polychart_events_pb.js +57 -0
  181. package/dist/gen/polychart/events/v1/polychart_events_pb.js.map +1 -0
  182. package/dist/gen/polychart/v1/polychart_pb.d.ts +1208 -0
  183. package/dist/gen/polychart/v1/polychart_pb.d.ts.map +1 -0
  184. package/dist/gen/polychart/v1/polychart_pb.js +244 -0
  185. package/dist/gen/polychart/v1/polychart_pb.js.map +1 -0
  186. package/dist/gen/polyester/api/options_pb.d.ts +67 -0
  187. package/dist/gen/polyester/api/options_pb.d.ts.map +1 -0
  188. package/dist/gen/polyester/api/options_pb.js +76 -0
  189. package/dist/gen/polyester/api/options_pb.js.map +1 -0
  190. package/dist/gen/polyester/type/v1/u128_pb.d.ts +42 -0
  191. package/dist/gen/polyester/type/v1/u128_pb.d.ts.map +1 -0
  192. package/dist/gen/polyester/type/v1/u128_pb.js +20 -0
  193. package/dist/gen/polyester/type/v1/u128_pb.js.map +1 -0
  194. package/dist/gen/tradews/v1/trade_ws_pb.d.ts +316 -0
  195. package/dist/gen/tradews/v1/trade_ws_pb.d.ts.map +1 -0
  196. package/dist/gen/tradews/v1/trade_ws_pb.js +63 -0
  197. package/dist/gen/tradews/v1/trade_ws_pb.js.map +1 -0
  198. package/dist/gen/transfer/v1/internal_transfer_pb.d.ts +235 -0
  199. package/dist/gen/transfer/v1/internal_transfer_pb.d.ts.map +1 -0
  200. package/dist/gen/transfer/v1/internal_transfer_pb.js +81 -0
  201. package/dist/gen/transfer/v1/internal_transfer_pb.js.map +1 -0
  202. package/dist/gen/triggers/v1/triggers_pb.d.ts +1731 -0
  203. package/dist/gen/triggers/v1/triggers_pb.d.ts.map +1 -0
  204. package/dist/gen/triggers/v1/triggers_pb.js +413 -0
  205. package/dist/gen/triggers/v1/triggers_pb.js.map +1 -0
  206. package/dist/index.d.ts +100 -0
  207. package/dist/index.js +18 -0
  208. package/dist/realtime/client.d.ts +18 -0
  209. package/dist/realtime/client.d.ts.map +1 -0
  210. package/dist/realtime/client.js +420 -0
  211. package/dist/realtime/client.js.map +1 -0
  212. package/dist/realtime/index.d.ts +3 -0
  213. package/dist/realtime/snapshot-then-stream.js +144 -0
  214. package/dist/realtime/snapshot-then-stream.js.map +1 -0
  215. package/dist/realtime/types.d.ts +41 -0
  216. package/dist/realtime/types.d.ts.map +1 -0
  217. package/dist/server-client.d.ts +73 -0
  218. package/dist/server-client.d.ts.map +1 -0
  219. package/dist/server-client.js +126 -0
  220. package/dist/server-client.js.map +1 -0
  221. package/dist/server-session.d.ts +4 -0
  222. package/dist/server-session.js +3 -0
  223. package/dist/services/accounts/accounts.codecs.js +17 -0
  224. package/dist/services/accounts/accounts.codecs.js.map +1 -0
  225. package/dist/services/accounts/accounts.d.ts +18 -0
  226. package/dist/services/accounts/accounts.d.ts.map +1 -0
  227. package/dist/services/accounts/accounts.js +27 -0
  228. package/dist/services/accounts/accounts.js.map +1 -0
  229. package/dist/services/accounts/accounts.schemas.d.ts +20 -0
  230. package/dist/services/accounts/accounts.schemas.d.ts.map +1 -0
  231. package/dist/services/accounts/accounts.schemas.js +28 -0
  232. package/dist/services/accounts/accounts.schemas.js.map +1 -0
  233. package/dist/services/accounts/accounts.types.d.ts +2 -0
  234. package/dist/services/accounts/index.d.ts +3 -0
  235. package/dist/services/address-book/address-book.codecs.d.ts +1 -0
  236. package/dist/services/address-book/address-book.codecs.js +61 -0
  237. package/dist/services/address-book/address-book.codecs.js.map +1 -0
  238. package/dist/services/address-book/address-book.d.ts +95 -0
  239. package/dist/services/address-book/address-book.d.ts.map +1 -0
  240. package/dist/services/address-book/address-book.js +166 -0
  241. package/dist/services/address-book/address-book.js.map +1 -0
  242. package/dist/services/address-book/address-book.schemas.d.ts +1140 -0
  243. package/dist/services/address-book/address-book.schemas.d.ts.map +1 -0
  244. package/dist/services/address-book/address-book.schemas.js +343 -0
  245. package/dist/services/address-book/address-book.schemas.js.map +1 -0
  246. package/dist/services/address-book/address-book.types.d.ts +2 -0
  247. package/dist/services/address-book/index.d.ts +4 -0
  248. package/dist/services/api-keys/api-keys.codecs.js +24 -0
  249. package/dist/services/api-keys/api-keys.codecs.js.map +1 -0
  250. package/dist/services/api-keys/api-keys.d.ts +62 -0
  251. package/dist/services/api-keys/api-keys.d.ts.map +1 -0
  252. package/dist/services/api-keys/api-keys.js +104 -0
  253. package/dist/services/api-keys/api-keys.js.map +1 -0
  254. package/dist/services/api-keys/api-keys.schemas.d.ts +181 -0
  255. package/dist/services/api-keys/api-keys.schemas.d.ts.map +1 -0
  256. package/dist/services/api-keys/api-keys.schemas.js +111 -0
  257. package/dist/services/api-keys/api-keys.schemas.js.map +1 -0
  258. package/dist/services/api-keys/api-keys.types.d.ts +2 -0
  259. package/dist/services/api-keys/index.d.ts +3 -0
  260. package/dist/services/auth/account-signer-auth.d.ts +131 -0
  261. package/dist/services/auth/account-signer-auth.d.ts.map +1 -0
  262. package/dist/services/auth/account-signer-auth.js +337 -0
  263. package/dist/services/auth/account-signer-auth.js.map +1 -0
  264. package/dist/services/auth/auth.d.ts +91 -0
  265. package/dist/services/auth/auth.d.ts.map +1 -0
  266. package/dist/services/auth/auth.js +71 -0
  267. package/dist/services/auth/auth.js.map +1 -0
  268. package/dist/services/auth/auth.types.d.ts +3 -0
  269. package/dist/services/auth/cookie-constants.d.ts +6 -0
  270. package/dist/services/auth/cookie-constants.d.ts.map +1 -0
  271. package/dist/services/auth/cookie-constants.js +8 -0
  272. package/dist/services/auth/cookie-constants.js.map +1 -0
  273. package/dist/services/auth/profile/profile.d.ts +35 -0
  274. package/dist/services/auth/profile/profile.d.ts.map +1 -0
  275. package/dist/services/auth/profile/profile.js +61 -0
  276. package/dist/services/auth/profile/profile.js.map +1 -0
  277. package/dist/services/auth/profile/profile.schemas.d.ts +58 -0
  278. package/dist/services/auth/profile/profile.schemas.d.ts.map +1 -0
  279. package/dist/services/auth/profile/profile.schemas.js +39 -0
  280. package/dist/services/auth/profile/profile.schemas.js.map +1 -0
  281. package/dist/services/auth/profile/profile.types.d.ts +2 -0
  282. package/dist/services/auth/session-codec.js +22 -0
  283. package/dist/services/auth/session-codec.js.map +1 -0
  284. package/dist/services/auth/session.d.ts +51 -0
  285. package/dist/services/auth/session.d.ts.map +1 -0
  286. package/dist/services/auth/session.js +200 -0
  287. package/dist/services/auth/session.js.map +1 -0
  288. package/dist/services/auth/session.schemas.js +41 -0
  289. package/dist/services/auth/session.schemas.js.map +1 -0
  290. package/dist/services/auth/session.types.d.ts +70 -0
  291. package/dist/services/auth/session.types.d.ts.map +1 -0
  292. package/dist/services/auth/token-storage.d.ts +27 -0
  293. package/dist/services/auth/token-storage.d.ts.map +1 -0
  294. package/dist/services/auth/token-storage.js +61 -0
  295. package/dist/services/auth/token-storage.js.map +1 -0
  296. package/dist/services/balances/balances.codecs.js +29 -0
  297. package/dist/services/balances/balances.codecs.js.map +1 -0
  298. package/dist/services/balances/balances.d.ts +39 -0
  299. package/dist/services/balances/balances.d.ts.map +1 -0
  300. package/dist/services/balances/balances.js +85 -0
  301. package/dist/services/balances/balances.js.map +1 -0
  302. package/dist/services/balances/balances.merge.d.ts +9 -0
  303. package/dist/services/balances/balances.merge.d.ts.map +1 -0
  304. package/dist/services/balances/balances.merge.js +31 -0
  305. package/dist/services/balances/balances.merge.js.map +1 -0
  306. package/dist/services/balances/balances.schemas.d.ts +265 -0
  307. package/dist/services/balances/balances.schemas.d.ts.map +1 -0
  308. package/dist/services/balances/balances.schemas.js +167 -0
  309. package/dist/services/balances/balances.schemas.js.map +1 -0
  310. package/dist/services/balances/balances.types.d.ts +2 -0
  311. package/dist/services/balances/index.d.ts +4 -0
  312. package/dist/services/candles/candles.codecs.js +48 -0
  313. package/dist/services/candles/candles.codecs.js.map +1 -0
  314. package/dist/services/candles/candles.d.ts +45 -0
  315. package/dist/services/candles/candles.d.ts.map +1 -0
  316. package/dist/services/candles/candles.js +108 -0
  317. package/dist/services/candles/candles.js.map +1 -0
  318. package/dist/services/candles/candles.schemas.d.ts +182 -0
  319. package/dist/services/candles/candles.schemas.d.ts.map +1 -0
  320. package/dist/services/candles/candles.schemas.js +154 -0
  321. package/dist/services/candles/candles.schemas.js.map +1 -0
  322. package/dist/services/candles/candles.types.d.ts +2 -0
  323. package/dist/services/candles/index.d.ts +3 -0
  324. package/dist/services/chain-analytics/chain-analytics.codecs.d.ts +1 -0
  325. package/dist/services/chain-analytics/chain-analytics.codecs.js +33 -0
  326. package/dist/services/chain-analytics/chain-analytics.codecs.js.map +1 -0
  327. package/dist/services/chain-analytics/chain-analytics.d.ts +27 -0
  328. package/dist/services/chain-analytics/chain-analytics.d.ts.map +1 -0
  329. package/dist/services/chain-analytics/chain-analytics.js +48 -0
  330. package/dist/services/chain-analytics/chain-analytics.js.map +1 -0
  331. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts +192 -0
  332. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts.map +1 -0
  333. package/dist/services/chain-analytics/chain-analytics.schemas.js +100 -0
  334. package/dist/services/chain-analytics/chain-analytics.schemas.js.map +1 -0
  335. package/dist/services/chain-analytics/chain-analytics.types.d.ts +2 -0
  336. package/dist/services/chain-analytics/index.d.ts +4 -0
  337. package/dist/services/deposit/deposit.d.ts +23 -0
  338. package/dist/services/deposit/deposit.d.ts.map +1 -0
  339. package/dist/services/deposit/deposit.js +42 -0
  340. package/dist/services/deposit/deposit.js.map +1 -0
  341. package/dist/services/deposit/deposit.schemas.d.ts +40 -0
  342. package/dist/services/deposit/deposit.schemas.d.ts.map +1 -0
  343. package/dist/services/deposit/deposit.schemas.js +27 -0
  344. package/dist/services/deposit/deposit.schemas.js.map +1 -0
  345. package/dist/services/deposit/deposit.types.d.ts +2 -0
  346. package/dist/services/deposit/index.d.ts +3 -0
  347. package/dist/services/guard-signer/guard-signer.codecs.d.ts +1 -0
  348. package/dist/services/guard-signer/guard-signer.codecs.js +33 -0
  349. package/dist/services/guard-signer/guard-signer.codecs.js.map +1 -0
  350. package/dist/services/guard-signer/guard-signer.d.ts +40 -0
  351. package/dist/services/guard-signer/guard-signer.d.ts.map +1 -0
  352. package/dist/services/guard-signer/guard-signer.js +85 -0
  353. package/dist/services/guard-signer/guard-signer.js.map +1 -0
  354. package/dist/services/guard-signer/guard-signer.schemas.d.ts +269 -0
  355. package/dist/services/guard-signer/guard-signer.schemas.d.ts.map +1 -0
  356. package/dist/services/guard-signer/guard-signer.schemas.js +93 -0
  357. package/dist/services/guard-signer/guard-signer.schemas.js.map +1 -0
  358. package/dist/services/guard-signer/guard-signer.types.d.ts +2 -0
  359. package/dist/services/guard-signer/index.d.ts +4 -0
  360. package/dist/services/heatmap/heatmap.codecs.d.ts +11 -0
  361. package/dist/services/heatmap/heatmap.codecs.d.ts.map +1 -0
  362. package/dist/services/heatmap/heatmap.codecs.js +76 -0
  363. package/dist/services/heatmap/heatmap.codecs.js.map +1 -0
  364. package/dist/services/heatmap/heatmap.d.ts +33 -0
  365. package/dist/services/heatmap/heatmap.d.ts.map +1 -0
  366. package/dist/services/heatmap/heatmap.js +79 -0
  367. package/dist/services/heatmap/heatmap.js.map +1 -0
  368. package/dist/services/heatmap/heatmap.schemas.d.ts +412 -0
  369. package/dist/services/heatmap/heatmap.schemas.d.ts.map +1 -0
  370. package/dist/services/heatmap/heatmap.schemas.js +174 -0
  371. package/dist/services/heatmap/heatmap.schemas.js.map +1 -0
  372. package/dist/services/heatmap/heatmap.types.d.ts +3 -0
  373. package/dist/services/heatmap/index.d.ts +4 -0
  374. package/dist/services/internal-transfers/index.d.ts +3 -0
  375. package/dist/services/internal-transfers/internal-transfers.codecs.js +10 -0
  376. package/dist/services/internal-transfers/internal-transfers.codecs.js.map +1 -0
  377. package/dist/services/internal-transfers/internal-transfers.d.ts +20 -0
  378. package/dist/services/internal-transfers/internal-transfers.d.ts.map +1 -0
  379. package/dist/services/internal-transfers/internal-transfers.js +39 -0
  380. package/dist/services/internal-transfers/internal-transfers.js.map +1 -0
  381. package/dist/services/internal-transfers/internal-transfers.schemas.d.ts +174 -0
  382. package/dist/services/internal-transfers/internal-transfers.schemas.d.ts.map +1 -0
  383. package/dist/services/internal-transfers/internal-transfers.schemas.js +90 -0
  384. package/dist/services/internal-transfers/internal-transfers.schemas.js.map +1 -0
  385. package/dist/services/internal-transfers/internal-transfers.types.d.ts +2 -0
  386. package/dist/services/lifecycle/index.d.ts +4 -0
  387. package/dist/services/lifecycle/lifecycle.codecs.d.ts +23 -0
  388. package/dist/services/lifecycle/lifecycle.codecs.d.ts.map +1 -0
  389. package/dist/services/lifecycle/lifecycle.codecs.js +171 -0
  390. package/dist/services/lifecycle/lifecycle.codecs.js.map +1 -0
  391. package/dist/services/lifecycle/lifecycle.d.ts +42 -0
  392. package/dist/services/lifecycle/lifecycle.d.ts.map +1 -0
  393. package/dist/services/lifecycle/lifecycle.js +87 -0
  394. package/dist/services/lifecycle/lifecycle.js.map +1 -0
  395. package/dist/services/lifecycle/lifecycle.schemas.d.ts +2107 -0
  396. package/dist/services/lifecycle/lifecycle.schemas.d.ts.map +1 -0
  397. package/dist/services/lifecycle/lifecycle.schemas.js +282 -0
  398. package/dist/services/lifecycle/lifecycle.schemas.js.map +1 -0
  399. package/dist/services/lifecycle/lifecycle.types.d.ts +2 -0
  400. package/dist/services/market-data/index.d.ts +4 -0
  401. package/dist/services/market-data/market-data.codecs.js +18 -0
  402. package/dist/services/market-data/market-data.codecs.js.map +1 -0
  403. package/dist/services/market-data/market-data.d.ts +40 -0
  404. package/dist/services/market-data/market-data.d.ts.map +1 -0
  405. package/dist/services/market-data/market-data.js +75 -0
  406. package/dist/services/market-data/market-data.js.map +1 -0
  407. package/dist/services/market-data/market-data.schemas.d.ts +56 -0
  408. package/dist/services/market-data/market-data.schemas.d.ts.map +1 -0
  409. package/dist/services/market-data/market-data.schemas.js +178 -0
  410. package/dist/services/market-data/market-data.schemas.js.map +1 -0
  411. package/dist/services/market-data/market-data.types.d.ts +3 -0
  412. package/dist/services/market-overview/index.d.ts +4 -0
  413. package/dist/services/market-overview/market-overview.codecs.d.ts +1 -0
  414. package/dist/services/market-overview/market-overview.codecs.js +44 -0
  415. package/dist/services/market-overview/market-overview.codecs.js.map +1 -0
  416. package/dist/services/market-overview/market-overview.d.ts +32 -0
  417. package/dist/services/market-overview/market-overview.d.ts.map +1 -0
  418. package/dist/services/market-overview/market-overview.js +100 -0
  419. package/dist/services/market-overview/market-overview.js.map +1 -0
  420. package/dist/services/market-overview/market-overview.schemas.d.ts +85 -0
  421. package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -0
  422. package/dist/services/market-overview/market-overview.schemas.js +71 -0
  423. package/dist/services/market-overview/market-overview.schemas.js.map +1 -0
  424. package/dist/services/market-overview/market-overview.types.d.ts +2 -0
  425. package/dist/services/mfa/index.d.ts +4 -0
  426. package/dist/services/mfa/mfa.codecs.d.ts +1 -0
  427. package/dist/services/mfa/mfa.codecs.js +44 -0
  428. package/dist/services/mfa/mfa.codecs.js.map +1 -0
  429. package/dist/services/mfa/mfa.d.ts +74 -0
  430. package/dist/services/mfa/mfa.d.ts.map +1 -0
  431. package/dist/services/mfa/mfa.js +139 -0
  432. package/dist/services/mfa/mfa.js.map +1 -0
  433. package/dist/services/mfa/mfa.schemas.d.ts +392 -0
  434. package/dist/services/mfa/mfa.schemas.d.ts.map +1 -0
  435. package/dist/services/mfa/mfa.schemas.js +132 -0
  436. package/dist/services/mfa/mfa.schemas.js.map +1 -0
  437. package/dist/services/mfa/mfa.types.d.ts +2 -0
  438. package/dist/services/orderbook/index.d.ts +3 -0
  439. package/dist/services/orderbook/orderbook.codecs.js +45 -0
  440. package/dist/services/orderbook/orderbook.codecs.js.map +1 -0
  441. package/dist/services/orderbook/orderbook.d.ts +42 -0
  442. package/dist/services/orderbook/orderbook.d.ts.map +1 -0
  443. package/dist/services/orderbook/orderbook.js +193 -0
  444. package/dist/services/orderbook/orderbook.js.map +1 -0
  445. package/dist/services/orderbook/orderbook.schemas.d.ts +68 -0
  446. package/dist/services/orderbook/orderbook.schemas.d.ts.map +1 -0
  447. package/dist/services/orderbook/orderbook.schemas.js +43 -0
  448. package/dist/services/orderbook/orderbook.schemas.js.map +1 -0
  449. package/dist/services/orderbook/orderbook.types.d.ts +3 -0
  450. package/dist/services/orders/index.d.ts +9 -0
  451. package/dist/services/orders/order-enums.codecs.js +85 -0
  452. package/dist/services/orders/order-enums.codecs.js.map +1 -0
  453. package/dist/services/orders/order-errors.schemas.d.ts +7 -0
  454. package/dist/services/orders/order-errors.schemas.d.ts.map +1 -0
  455. package/dist/services/orders/order-errors.schemas.js +20 -0
  456. package/dist/services/orders/order-errors.schemas.js.map +1 -0
  457. package/dist/services/orders/orders-batch.schemas.d.ts +2979 -0
  458. package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -0
  459. package/dist/services/orders/orders-batch.schemas.js +282 -0
  460. package/dist/services/orders/orders-batch.schemas.js.map +1 -0
  461. package/dist/services/orders/orders-identifiers.schemas.js +11 -0
  462. package/dist/services/orders/orders-identifiers.schemas.js.map +1 -0
  463. package/dist/services/orders/orders-input.schemas.d.ts +3738 -0
  464. package/dist/services/orders/orders-input.schemas.d.ts.map +1 -0
  465. package/dist/services/orders/orders-input.schemas.js +267 -0
  466. package/dist/services/orders/orders-input.schemas.js.map +1 -0
  467. package/dist/services/orders/orders-modify.schemas.d.ts +1774 -0
  468. package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -0
  469. package/dist/services/orders/orders-modify.schemas.js +132 -0
  470. package/dist/services/orders/orders-modify.schemas.js.map +1 -0
  471. package/dist/services/orders/orders-output.schemas.d.ts +598 -0
  472. package/dist/services/orders/orders-output.schemas.d.ts.map +1 -0
  473. package/dist/services/orders/orders-output.schemas.js +139 -0
  474. package/dist/services/orders/orders-output.schemas.js.map +1 -0
  475. package/dist/services/orders/orders-risk.schemas.d.ts +1041 -0
  476. package/dist/services/orders/orders-risk.schemas.d.ts.map +1 -0
  477. package/dist/services/orders/orders-risk.schemas.js +251 -0
  478. package/dist/services/orders/orders-risk.schemas.js.map +1 -0
  479. package/dist/services/orders/orders.codecs.js +75 -0
  480. package/dist/services/orders/orders.codecs.js.map +1 -0
  481. package/dist/services/orders/orders.d.ts +88 -0
  482. package/dist/services/orders/orders.d.ts.map +1 -0
  483. package/dist/services/orders/orders.js +242 -0
  484. package/dist/services/orders/orders.js.map +1 -0
  485. package/dist/services/orders/orders.schemas.d.ts +7 -0
  486. package/dist/services/orders/orders.types.d.ts +8 -0
  487. package/dist/services/policies/api-key-policies/api-key-policies.d.ts +39 -0
  488. package/dist/services/policies/api-key-policies/api-key-policies.d.ts.map +1 -0
  489. package/dist/services/policies/api-key-policies/api-key-policies.js +74 -0
  490. package/dist/services/policies/api-key-policies/api-key-policies.js.map +1 -0
  491. package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +392 -0
  492. package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts.map +1 -0
  493. package/dist/services/policies/api-key-policies/api-key-policies.schemas.js +169 -0
  494. package/dist/services/policies/api-key-policies/api-key-policies.schemas.js.map +1 -0
  495. package/dist/services/policies/api-key-policies/api-key-policies.types.d.ts +2 -0
  496. package/dist/services/policies/api-key-policies/index.d.ts +3 -0
  497. package/dist/services/policies/policies.types.d.ts +2 -0
  498. package/dist/services/policies/shared.codecs.js +61 -0
  499. package/dist/services/policies/shared.codecs.js.map +1 -0
  500. package/dist/services/policies/shared.d.ts +10 -0
  501. package/dist/services/policies/shared.d.ts.map +1 -0
  502. package/dist/services/policies/shared.js +33 -0
  503. package/dist/services/policies/shared.js.map +1 -0
  504. package/dist/services/policies/subaccount-policies/index.d.ts +3 -0
  505. package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts +50 -0
  506. package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts.map +1 -0
  507. package/dist/services/policies/subaccount-policies/subaccount-policies.js +93 -0
  508. package/dist/services/policies/subaccount-policies/subaccount-policies.js.map +1 -0
  509. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +429 -0
  510. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -0
  511. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +300 -0
  512. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -0
  513. package/dist/services/policies/subaccount-policies/subaccount-policies.types.d.ts +2 -0
  514. package/dist/services/shared.js +24 -0
  515. package/dist/services/shared.js.map +1 -0
  516. package/dist/services/social-verification/index.d.ts +3 -0
  517. package/dist/services/social-verification/social-verification.codecs.d.ts +1 -0
  518. package/dist/services/social-verification/social-verification.codecs.js +55 -0
  519. package/dist/services/social-verification/social-verification.codecs.js.map +1 -0
  520. package/dist/services/social-verification/social-verification.d.ts +27 -0
  521. package/dist/services/social-verification/social-verification.d.ts.map +1 -0
  522. package/dist/services/social-verification/social-verification.js +43 -0
  523. package/dist/services/social-verification/social-verification.js.map +1 -0
  524. package/dist/services/social-verification/social-verification.schemas.d.ts +96 -0
  525. package/dist/services/social-verification/social-verification.schemas.d.ts.map +1 -0
  526. package/dist/services/social-verification/social-verification.schemas.js +69 -0
  527. package/dist/services/social-verification/social-verification.schemas.js.map +1 -0
  528. package/dist/services/social-verification/social-verification.types.d.ts +2 -0
  529. package/dist/services/subaccount-resolver.d.ts +14 -0
  530. package/dist/services/subaccount-resolver.d.ts.map +1 -0
  531. package/dist/services/subaccount-resolver.js +33 -0
  532. package/dist/services/subaccount-resolver.js.map +1 -0
  533. package/dist/services/subaccounts/index.d.ts +3 -0
  534. package/dist/services/subaccounts/subaccounts.codecs.js +94 -0
  535. package/dist/services/subaccounts/subaccounts.codecs.js.map +1 -0
  536. package/dist/services/subaccounts/subaccounts.d.ts +102 -0
  537. package/dist/services/subaccounts/subaccounts.d.ts.map +1 -0
  538. package/dist/services/subaccounts/subaccounts.js +196 -0
  539. package/dist/services/subaccounts/subaccounts.js.map +1 -0
  540. package/dist/services/subaccounts/subaccounts.schemas.d.ts +257 -0
  541. package/dist/services/subaccounts/subaccounts.schemas.d.ts.map +1 -0
  542. package/dist/services/subaccounts/subaccounts.schemas.js +178 -0
  543. package/dist/services/subaccounts/subaccounts.schemas.js.map +1 -0
  544. package/dist/services/subaccounts/subaccounts.types.d.ts +2 -0
  545. package/dist/services/trades/index.d.ts +3 -0
  546. package/dist/services/trades/trades.codecs.js +10 -0
  547. package/dist/services/trades/trades.codecs.js.map +1 -0
  548. package/dist/services/trades/trades.d.ts +33 -0
  549. package/dist/services/trades/trades.d.ts.map +1 -0
  550. package/dist/services/trades/trades.js +64 -0
  551. package/dist/services/trades/trades.js.map +1 -0
  552. package/dist/services/trades/trades.schemas.d.ts +80 -0
  553. package/dist/services/trades/trades.schemas.d.ts.map +1 -0
  554. package/dist/services/trades/trades.schemas.js +66 -0
  555. package/dist/services/trades/trades.schemas.js.map +1 -0
  556. package/dist/services/trades/trades.types.d.ts +2 -0
  557. package/dist/services/trading-withdraws/index.d.ts +4 -0
  558. package/dist/services/trading-withdraws/trading-withdraws.codecs.d.ts +1 -0
  559. package/dist/services/trading-withdraws/trading-withdraws.codecs.js +10 -0
  560. package/dist/services/trading-withdraws/trading-withdraws.codecs.js.map +1 -0
  561. package/dist/services/trading-withdraws/trading-withdraws.d.ts +124 -0
  562. package/dist/services/trading-withdraws/trading-withdraws.d.ts.map +1 -0
  563. package/dist/services/trading-withdraws/trading-withdraws.js +218 -0
  564. package/dist/services/trading-withdraws/trading-withdraws.js.map +1 -0
  565. package/dist/services/trading-withdraws/trading-withdraws.schemas.d.ts +73 -0
  566. package/dist/services/trading-withdraws/trading-withdraws.schemas.d.ts.map +1 -0
  567. package/dist/services/trading-withdraws/trading-withdraws.schemas.js +95 -0
  568. package/dist/services/trading-withdraws/trading-withdraws.schemas.js.map +1 -0
  569. package/dist/services/trading-withdraws/trading-withdraws.types.d.ts +3 -0
  570. package/dist/services/trailing-oneof-inputs.js +49 -0
  571. package/dist/services/trailing-oneof-inputs.js.map +1 -0
  572. package/dist/services/transfers/index.d.ts +4 -0
  573. package/dist/services/transfers/transfers.codecs.d.ts +6 -0
  574. package/dist/services/transfers/transfers.codecs.d.ts.map +1 -0
  575. package/dist/services/transfers/transfers.codecs.js +15 -0
  576. package/dist/services/transfers/transfers.codecs.js.map +1 -0
  577. package/dist/services/transfers/transfers.d.ts +33 -0
  578. package/dist/services/transfers/transfers.d.ts.map +1 -0
  579. package/dist/services/transfers/transfers.js +63 -0
  580. package/dist/services/transfers/transfers.js.map +1 -0
  581. package/dist/services/transfers/transfers.schemas.d.ts +121 -0
  582. package/dist/services/transfers/transfers.schemas.d.ts.map +1 -0
  583. package/dist/services/transfers/transfers.schemas.js +77 -0
  584. package/dist/services/transfers/transfers.schemas.js.map +1 -0
  585. package/dist/services/transfers/transfers.types.d.ts +3 -0
  586. package/dist/services/triggers/index.d.ts +5 -0
  587. package/dist/services/triggers/trigger-child-order.schemas.js +89 -0
  588. package/dist/services/triggers/trigger-child-order.schemas.js.map +1 -0
  589. package/dist/services/triggers/trigger-input.schemas.d.ts +1009 -0
  590. package/dist/services/triggers/trigger-input.schemas.d.ts.map +1 -0
  591. package/dist/services/triggers/trigger-input.schemas.js +270 -0
  592. package/dist/services/triggers/trigger-input.schemas.js.map +1 -0
  593. package/dist/services/triggers/triggers-output.schemas.d.ts +688 -0
  594. package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -0
  595. package/dist/services/triggers/triggers-output.schemas.js +372 -0
  596. package/dist/services/triggers/triggers-output.schemas.js.map +1 -0
  597. package/dist/services/triggers/triggers.codecs.js +100 -0
  598. package/dist/services/triggers/triggers.codecs.js.map +1 -0
  599. package/dist/services/triggers/triggers.d.ts +71 -0
  600. package/dist/services/triggers/triggers.d.ts.map +1 -0
  601. package/dist/services/triggers/triggers.js +176 -0
  602. package/dist/services/triggers/triggers.js.map +1 -0
  603. package/dist/services/triggers/triggers.schemas.d.ts +3 -0
  604. package/dist/services/triggers/triggers.types.d.ts +5 -0
  605. package/dist/services/whiteboard/index.d.ts +3 -0
  606. package/dist/services/whiteboard/whiteboard.codecs.js +55 -0
  607. package/dist/services/whiteboard/whiteboard.codecs.js.map +1 -0
  608. package/dist/services/whiteboard/whiteboard.d.ts +42 -0
  609. package/dist/services/whiteboard/whiteboard.d.ts.map +1 -0
  610. package/dist/services/whiteboard/whiteboard.js +76 -0
  611. package/dist/services/whiteboard/whiteboard.js.map +1 -0
  612. package/dist/services/whiteboard/whiteboard.schemas.d.ts +771 -0
  613. package/dist/services/whiteboard/whiteboard.schemas.d.ts.map +1 -0
  614. package/dist/services/whiteboard/whiteboard.schemas.js +133 -0
  615. package/dist/services/whiteboard/whiteboard.schemas.js.map +1 -0
  616. package/dist/services/whiteboard/whiteboard.types.d.ts +2 -0
  617. package/dist/services/zipper/index.d.ts +4 -0
  618. package/dist/services/zipper/zipper.d.ts +28 -0
  619. package/dist/services/zipper/zipper.d.ts.map +1 -0
  620. package/dist/services/zipper/zipper.js +84 -0
  621. package/dist/services/zipper/zipper.js.map +1 -0
  622. package/dist/services/zipper/zipper.schemas.d.ts +13 -0
  623. package/dist/services/zipper/zipper.schemas.d.ts.map +1 -0
  624. package/dist/services/zipper/zipper.schemas.js +89 -0
  625. package/dist/services/zipper/zipper.schemas.js.map +1 -0
  626. package/dist/services/zipper/zipper.types.d.ts +4 -0
  627. package/dist/shared/account-scope.d.ts +17 -0
  628. package/dist/shared/account-scope.d.ts.map +1 -0
  629. package/dist/shared/account-scope.js +14 -0
  630. package/dist/shared/account-scope.js.map +1 -0
  631. package/dist/shared/catalog-config.d.ts +95 -0
  632. package/dist/shared/catalog-config.d.ts.map +1 -0
  633. package/dist/shared/catalog-config.js +12 -0
  634. package/dist/shared/catalog-config.js.map +1 -0
  635. package/dist/shared/connect-error-mapping.d.ts +23 -0
  636. package/dist/shared/connect-error-mapping.d.ts.map +1 -0
  637. package/dist/shared/connect-error-mapping.js +147 -0
  638. package/dist/shared/connect-error-mapping.js.map +1 -0
  639. package/dist/shared/decimal-surface.d.ts +18 -0
  640. package/dist/shared/decimal-surface.d.ts.map +1 -0
  641. package/dist/shared/decimal-surface.js +89 -0
  642. package/dist/shared/decimal-surface.js.map +1 -0
  643. package/dist/shared/errors.d.ts +242 -0
  644. package/dist/shared/errors.d.ts.map +1 -0
  645. package/dist/shared/errors.js +271 -0
  646. package/dist/shared/errors.js.map +1 -0
  647. package/dist/shared/ledger-codes.d.ts +9 -0
  648. package/dist/shared/ledger-codes.d.ts.map +1 -0
  649. package/dist/shared/ledger-codes.js +63 -0
  650. package/dist/shared/ledger-codes.js.map +1 -0
  651. package/dist/shared/proto-enum-codec.js +13 -0
  652. package/dist/shared/proto-enum-codec.js.map +1 -0
  653. package/dist/shared/reconciliation.d.ts +14 -0
  654. package/dist/shared/reconciliation.d.ts.map +1 -0
  655. package/dist/shared/reconciliation.js +30 -0
  656. package/dist/shared/reconciliation.js.map +1 -0
  657. package/dist/shared/request-options.d.ts +10 -0
  658. package/dist/shared/request-options.d.ts.map +1 -0
  659. package/dist/shared/request-options.js +22 -0
  660. package/dist/shared/request-options.js.map +1 -0
  661. package/dist/shared/schemas.js +65 -0
  662. package/dist/shared/schemas.js.map +1 -0
  663. package/dist/shared/subscription-errors.d.ts +14 -0
  664. package/dist/shared/subscription-errors.d.ts.map +1 -0
  665. package/dist/shared/subscription-errors.js +49 -0
  666. package/dist/shared/subscription-errors.js.map +1 -0
  667. package/dist/shared/transports.d.ts +28 -0
  668. package/dist/shared/transports.d.ts.map +1 -0
  669. package/dist/shared/transports.js +111 -0
  670. package/dist/shared/transports.js.map +1 -0
  671. package/dist/shared/types.d.ts +11 -0
  672. package/dist/shared/types.d.ts.map +1 -0
  673. package/dist/smart-account/index.d.ts +2 -0
  674. package/dist/smart-account/index.js +2 -0
  675. package/dist/smart-account/smart-account.d.ts +3093 -0
  676. package/dist/smart-account/smart-account.d.ts.map +1 -0
  677. package/dist/smart-account/smart-account.js +94 -0
  678. package/dist/smart-account/smart-account.js.map +1 -0
  679. package/dist/utils/base58-id.js +110 -0
  680. package/dist/utils/base58-id.js.map +1 -0
  681. package/dist/utils/columnar-time.d.ts +11 -0
  682. package/dist/utils/columnar-time.d.ts.map +1 -0
  683. package/dist/utils/columnar-time.js +30 -0
  684. package/dist/utils/columnar-time.js.map +1 -0
  685. package/dist/utils/connect-mfa-errors.d.ts +23 -0
  686. package/dist/utils/connect-mfa-errors.d.ts.map +1 -0
  687. package/dist/utils/connect-mfa-errors.js +34 -0
  688. package/dist/utils/connect-mfa-errors.js.map +1 -0
  689. package/dist/utils/connect-order-errors.d.ts +9 -0
  690. package/dist/utils/connect-order-errors.d.ts.map +1 -0
  691. package/dist/utils/connect-order-errors.js +20 -0
  692. package/dist/utils/connect-order-errors.js.map +1 -0
  693. package/dist/utils/cookie-es/_utils.js +41 -0
  694. package/dist/utils/cookie-es/_utils.js.map +1 -0
  695. package/dist/utils/cookie-es/cookie/parse.js +53 -0
  696. package/dist/utils/cookie-es/cookie/parse.js.map +1 -0
  697. package/dist/utils/cookie-es/cookie/serialize.js +145 -0
  698. package/dist/utils/cookie-es/cookie/serialize.js.map +1 -0
  699. package/dist/utils/cookies.d.ts +7 -0
  700. package/dist/utils/cookies.d.ts.map +1 -0
  701. package/dist/utils/cookies.js +110 -0
  702. package/dist/utils/cookies.js.map +1 -0
  703. package/dist/utils/errors.d.ts +36 -0
  704. package/dist/utils/errors.d.ts.map +1 -0
  705. package/dist/utils/errors.js +111 -0
  706. package/dist/utils/errors.js.map +1 -0
  707. package/dist/utils/event-emitter.d.ts +31 -0
  708. package/dist/utils/event-emitter.d.ts.map +1 -0
  709. package/dist/utils/event-emitter.js +51 -0
  710. package/dist/utils/event-emitter.js.map +1 -0
  711. package/dist/utils/evm.d.ts +33 -0
  712. package/dist/utils/evm.d.ts.map +1 -0
  713. package/dist/utils/evm.js +53 -0
  714. package/dist/utils/evm.js.map +1 -0
  715. package/dist/utils/is-dev.js +57 -0
  716. package/dist/utils/is-dev.js.map +1 -0
  717. package/dist/utils/jwt.d.ts +8 -0
  718. package/dist/utils/jwt.d.ts.map +1 -0
  719. package/dist/utils/jwt.js +74 -0
  720. package/dist/utils/jwt.js.map +1 -0
  721. package/dist/utils/numbers.js +60 -0
  722. package/dist/utils/numbers.js.map +1 -0
  723. package/dist/utils/proto-patch.js +29 -0
  724. package/dist/utils/proto-patch.js.map +1 -0
  725. package/dist/utils/remove-undefined.js +12 -0
  726. package/dist/utils/remove-undefined.js.map +1 -0
  727. package/dist/utils/streams.js +19 -0
  728. package/dist/utils/streams.js.map +1 -0
  729. package/dist/utils/time.d.ts +22 -0
  730. package/dist/utils/time.d.ts.map +1 -0
  731. package/dist/utils/time.js +71 -0
  732. package/dist/utils/time.js.map +1 -0
  733. package/dist/utils/timestamp.js +52 -0
  734. package/dist/utils/timestamp.js.map +1 -0
  735. package/dist/utils/types.d.ts +6 -0
  736. package/dist/utils/types.d.ts.map +1 -0
  737. package/dist/utils/u128.d.ts +8 -0
  738. package/dist/utils/u128.d.ts.map +1 -0
  739. package/dist/utils/u128.js +43 -0
  740. package/dist/utils/u128.js.map +1 -0
  741. package/dist/wired-services.d.ts +15 -0
  742. package/dist/wired-services.d.ts.map +1 -0
  743. package/dist/wired-services.js +67 -0
  744. package/dist/wired-services.js.map +1 -0
  745. package/package.json +117 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-account.d.ts","names":[],"sources":["../../src/smart-account/smart-account.ts"],"mappings":";;;;KAQY,2BAA2B,QAAQ,kBAAkB;KACrD,8BAA8B,kBAAkB;UAc3C;EACb,aAAa;EACb,OAAO;EACP;EACA,eAAe;;UAGF;EACb,aAAa;EACb,cAAc;EACd;;iBAGY,sCACZ,aACA,cACA,aACD,4CAA4C;;;;iBAuBzB,8BAClB,aACA,OACA,WACA,gBACD,2BAA2B,QAAQ;;;;iBA0BtB,kCACZ,SAAS,0BACT;EAAU,aAAa;6BAAsB,kCAAA,gDAAA;;;;;;;;;;;IArDzC,kBAAA,kCAAA,sCAAA,0CAAA,sCAAA,0BAAA,oBAAA,WAAA,iBAAA,WAAA,gBAAA,aAAA,aAAA;MAAgB,aAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2DH,UAAC;IACnB,6BAAJ;;EAMqC,aAAA;IAAgB;;EAUzC,mBAAA,4BAAJ,qCAAA,uBAAA;;;;;;;;;;IA0C+C;;;IAK3C,gBAAV,8BAAA,yBAAA,uBAAA,4BAAA;;;;;;;;;;;;;;;;;;;IA3HM,kBAAA,kCAAA,sCAAA,0CAAA,sCAAA,0BAAA,oBAAA,WAAA,iBAAA,WAAA,gBAAA,aAAA,aAAA;MAAgB,aAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2DH,UAAC;IACnB,6BAAJ;;EAMqC,aAAA;IAAgB;;EAUzC,mBAAA,4BAAJ,qCAAA,uBAAA;;;;;;;;;;IA0C+C;;;IAK3C,gBAAV,8BAAA,yBAAA,uBAAA,4BAAA;;;;;;;;;;;;iBAPoB,2BAClB,QAAQ,6BACR,YAAY,WAAW,uDACxB,QAAQ,QAAQ,WAAW"}
@@ -0,0 +1,94 @@
1
+ import { predictSafeAddress } from "../account-signer/predict-safe-address.js";
2
+ import { createPublicClient, http } from "viem";
3
+ import { createSmartAccountClient } from "permissionless";
4
+ import { toSafeSmartAccount } from "permissionless/accounts";
5
+ import { createPimlicoClient } from "permissionless/clients/pimlico";
6
+ //#region src/smart-account/smart-account.ts
7
+ const smartAccountEnvironmentFingerprints = /* @__PURE__ */ new WeakMap();
8
+ const USER_OPERATION_GAS_BUFFER_BPS = 2000n;
9
+ const USER_OPERATION_MIN_GAS_BUFFER = 50000n;
10
+ function predictPolyesterSmartAccountAddress({ environment, ownerAddress, saltNonce = 0n }) {
11
+ const { safeProxyFactoryAddress, safeSingletonAddress, safeModuleSetupAddress, safe4337ModuleAddress, multiSendAddress } = environment.accountAbstraction.safe;
12
+ return predictSafeAddress({
13
+ owners: [ownerAddress],
14
+ saltNonce,
15
+ safeProxyFactoryAddress,
16
+ safeSingletonAddress,
17
+ safeModuleSetupAddress,
18
+ safe4337ModuleAddress,
19
+ multiSendAddress
20
+ });
21
+ }
22
+ /**
23
+ * Creates a Polyester smart account instance.
24
+ */
25
+ async function createPolyesterSmartAccount({ environment, owner, saltNonce, publicClient }) {
26
+ const client = publicClient ?? createPublicClient({
27
+ chain: environment.chain,
28
+ transport: http(environment.rpcUrl)
29
+ });
30
+ if (client.chain?.id && client.chain.id !== environment.chain.id) throw new Error("Smart account public client chain does not match environment.");
31
+ const account = await toSafeSmartAccount({
32
+ client,
33
+ owners: [owner],
34
+ saltNonce,
35
+ entryPoint: environment.accountAbstraction.entryPoint,
36
+ ...environment.accountAbstraction.safe
37
+ });
38
+ smartAccountEnvironmentFingerprints.set(account, environment.fingerprint);
39
+ return account;
40
+ }
41
+ /**
42
+ * Creates a viem client bound to a Polyester smart account.
43
+ */
44
+ function createPolyesterSmartAccountClient(account, params) {
45
+ const { environment } = params;
46
+ const accountEnvironmentFingerprint = smartAccountEnvironmentFingerprints.get(account);
47
+ if (accountEnvironmentFingerprint && accountEnvironmentFingerprint !== environment.fingerprint) throw new Error("Smart account environment does not match client environment.");
48
+ const paymaster = createPimlicoClient({
49
+ chain: environment.chain,
50
+ transport: http(environment.accountAbstraction.paymasterUrl),
51
+ entryPoint: environment.accountAbstraction.entryPoint
52
+ });
53
+ return createSmartAccountClient({
54
+ account,
55
+ chain: environment.chain,
56
+ paymaster,
57
+ bundlerTransport: http(environment.accountAbstraction.bundlerUrl),
58
+ userOperation: { estimateFeesPerGas: async () => (await paymaster.getUserOperationGasPrice()).fast }
59
+ });
60
+ }
61
+ function addUserOperationGasBuffer(gas) {
62
+ const percentBuffer = gas * USER_OPERATION_GAS_BUFFER_BPS / 10000n;
63
+ return gas + (percentBuffer > USER_OPERATION_MIN_GAS_BUFFER ? percentBuffer : USER_OPERATION_MIN_GAS_BUFFER);
64
+ }
65
+ function bufferPolyesterUserOperationGas(gas) {
66
+ return {
67
+ ...gas,
68
+ ...typeof gas.callGasLimit === "bigint" ? { callGasLimit: addUserOperationGasBuffer(gas.callGasLimit) } : {},
69
+ ...typeof gas.preVerificationGas === "bigint" ? { preVerificationGas: addUserOperationGasBuffer(gas.preVerificationGas) } : {},
70
+ ...typeof gas.verificationGasLimit === "bigint" ? { verificationGasLimit: addUserOperationGasBuffer(gas.verificationGasLimit) } : {},
71
+ ...typeof gas.paymasterPostOpGasLimit === "bigint" ? { paymasterPostOpGasLimit: addUserOperationGasBuffer(gas.paymasterPostOpGasLimit) } : {},
72
+ ...typeof gas.paymasterVerificationGasLimit === "bigint" ? { paymasterVerificationGasLimit: addUserOperationGasBuffer(gas.paymasterVerificationGasLimit) } : {}
73
+ };
74
+ }
75
+ async function sendPolyesterUserOperation(client, parameters) {
76
+ try {
77
+ const gas = await client.estimateUserOperationGas({
78
+ callGasLimit: 0n,
79
+ preVerificationGas: 0n,
80
+ verificationGasLimit: 0n,
81
+ ...parameters
82
+ });
83
+ return client.sendUserOperation({
84
+ ...parameters,
85
+ ...bufferPolyesterUserOperationGas(gas)
86
+ });
87
+ } catch {
88
+ return client.sendUserOperation(parameters);
89
+ }
90
+ }
91
+ //#endregion
92
+ export { createPolyesterSmartAccount, createPolyesterSmartAccountClient, predictPolyesterSmartAccountAddress, sendPolyesterUserOperation };
93
+
94
+ //# sourceMappingURL=smart-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-account.js","names":[],"sources":["../../src/smart-account/smart-account.ts"],"sourcesContent":["import type { Address, LocalAccount, PublicClient } from \"viem\";\nimport { createPublicClient, http } from \"viem\";\nimport { createSmartAccountClient } from \"permissionless\";\nimport { toSafeSmartAccount } from \"permissionless/accounts\";\nimport { createPimlicoClient } from \"permissionless/clients/pimlico\";\nimport type { PolyesterEnvironment } from \"../environment.js\";\nimport { predictSafeAddress } from \"../account-signer/predict-safe-address.js\";\n\nexport type SafeSmartAccountInstance = Awaited<ReturnType<typeof toSafeSmartAccount>>;\nexport type PolyesterSmartAccountClient = ReturnType<typeof createPolyesterSmartAccountClient>;\n\nconst smartAccountEnvironmentFingerprints = new WeakMap<SafeSmartAccountInstance, string>();\nconst USER_OPERATION_GAS_BUFFER_BPS = 2_000n;\nconst USER_OPERATION_MIN_GAS_BUFFER = 50_000n;\n\ntype PolyesterUserOperationGas = {\n callGasLimit?: bigint;\n preVerificationGas?: bigint;\n verificationGasLimit?: bigint;\n paymasterPostOpGasLimit?: bigint;\n paymasterVerificationGasLimit?: bigint;\n};\n\nexport interface CreateSmartAccountParams {\n environment: PolyesterEnvironment;\n owner: LocalAccount;\n saltNonce?: bigint;\n publicClient?: PublicClient;\n}\n\nexport interface PredictPolyesterSmartAccountAddressParams {\n environment: PolyesterEnvironment;\n ownerAddress: Address;\n saltNonce?: bigint;\n}\n\nexport function predictPolyesterSmartAccountAddress({\n environment,\n ownerAddress,\n saltNonce = 0n,\n}: PredictPolyesterSmartAccountAddressParams): Address {\n const {\n safeProxyFactoryAddress,\n safeSingletonAddress,\n safeModuleSetupAddress,\n safe4337ModuleAddress,\n multiSendAddress,\n } = environment.accountAbstraction.safe;\n\n return predictSafeAddress({\n owners: [ownerAddress],\n saltNonce,\n safeProxyFactoryAddress,\n safeSingletonAddress,\n safeModuleSetupAddress,\n safe4337ModuleAddress,\n multiSendAddress,\n });\n}\n\n/**\n * Creates a Polyester smart account instance.\n */\nexport async function createPolyesterSmartAccount({\n environment,\n owner,\n saltNonce,\n publicClient,\n}: CreateSmartAccountParams): Promise<SafeSmartAccountInstance> {\n const client =\n publicClient ??\n createPublicClient({\n chain: environment.chain,\n transport: http(environment.rpcUrl),\n });\n\n if (client.chain?.id && client.chain.id !== environment.chain.id) {\n throw new Error(\"Smart account public client chain does not match environment.\");\n }\n\n const account = await toSafeSmartAccount({\n client,\n owners: [owner],\n saltNonce,\n entryPoint: environment.accountAbstraction.entryPoint,\n ...environment.accountAbstraction.safe,\n });\n smartAccountEnvironmentFingerprints.set(account, environment.fingerprint);\n return account;\n}\n\n/**\n * Creates a viem client bound to a Polyester smart account.\n */\nexport function createPolyesterSmartAccountClient(\n account: SafeSmartAccountInstance,\n params: { environment: PolyesterEnvironment },\n) {\n const { environment } = params;\n const accountEnvironmentFingerprint = smartAccountEnvironmentFingerprints.get(account);\n if (\n accountEnvironmentFingerprint &&\n accountEnvironmentFingerprint !== environment.fingerprint\n ) {\n throw new Error(\"Smart account environment does not match client environment.\");\n }\n\n const paymaster = createPimlicoClient({\n chain: environment.chain,\n transport: http(environment.accountAbstraction.paymasterUrl),\n entryPoint: environment.accountAbstraction.entryPoint,\n });\n\n return createSmartAccountClient({\n account,\n chain: environment.chain,\n paymaster,\n bundlerTransport: http(environment.accountAbstraction.bundlerUrl),\n userOperation: {\n estimateFeesPerGas: async () => (await paymaster.getUserOperationGasPrice()).fast,\n },\n });\n}\n\nfunction addUserOperationGasBuffer(gas: bigint): bigint {\n const percentBuffer = (gas * USER_OPERATION_GAS_BUFFER_BPS) / 10_000n;\n return (\n gas +\n (percentBuffer > USER_OPERATION_MIN_GAS_BUFFER\n ? percentBuffer\n : USER_OPERATION_MIN_GAS_BUFFER)\n );\n}\n\nfunction bufferPolyesterUserOperationGas<T extends PolyesterUserOperationGas>(gas: T): T {\n return {\n ...gas,\n ...(typeof gas.callGasLimit === \"bigint\"\n ? { callGasLimit: addUserOperationGasBuffer(gas.callGasLimit) }\n : {}),\n ...(typeof gas.preVerificationGas === \"bigint\"\n ? { preVerificationGas: addUserOperationGasBuffer(gas.preVerificationGas) }\n : {}),\n ...(typeof gas.verificationGasLimit === \"bigint\"\n ? { verificationGasLimit: addUserOperationGasBuffer(gas.verificationGasLimit) }\n : {}),\n ...(typeof gas.paymasterPostOpGasLimit === \"bigint\"\n ? { paymasterPostOpGasLimit: addUserOperationGasBuffer(gas.paymasterPostOpGasLimit) }\n : {}),\n ...(typeof gas.paymasterVerificationGasLimit === \"bigint\"\n ? {\n paymasterVerificationGasLimit: addUserOperationGasBuffer(\n gas.paymasterVerificationGasLimit,\n ),\n }\n : {}),\n };\n}\n\nexport async function sendPolyesterUserOperation(\n client: PolyesterSmartAccountClient,\n parameters: Parameters<PolyesterSmartAccountClient[\"sendUserOperation\"]>[0],\n): Promise<Awaited<ReturnType<PolyesterSmartAccountClient[\"sendUserOperation\"]>>> {\n try {\n const gas = await client.estimateUserOperationGas({\n callGasLimit: 0n,\n preVerificationGas: 0n,\n verificationGasLimit: 0n,\n ...parameters,\n } as Parameters<PolyesterSmartAccountClient[\"estimateUserOperationGas\"]>[0]);\n return client.sendUserOperation({\n ...parameters,\n ...bufferPolyesterUserOperationGas(gas),\n } as Parameters<PolyesterSmartAccountClient[\"sendUserOperation\"]>[0]);\n } catch {\n return client.sendUserOperation(parameters);\n }\n}\n"],"mappings":";;;;;;AAWA,MAAM,sDAAsC,IAAI,QAA0C;AAC1F,MAAM,gCAAgC;AACtC,MAAM,gCAAgC;AAuBtC,SAAgB,oCAAoC,EAChD,aACA,cACA,YAAY,MACuC;CACnD,MAAM,EACF,yBACA,sBACA,wBACA,uBACA,qBACA,YAAY,mBAAmB;CAEnC,OAAO,mBAAmB;EACtB,QAAQ,CAAC,YAAY;EACrB;EACA;EACA;EACA;EACA;EACA;CACJ,CAAC;AACL;;;;AAKA,eAAsB,4BAA4B,EAC9C,aACA,OACA,WACA,gBAC4D;CAC5D,MAAM,SACF,gBACA,mBAAmB;EACf,OAAO,YAAY;EACnB,WAAW,KAAK,YAAY,MAAM;CACtC,CAAC;CAEL,IAAI,OAAO,OAAO,MAAM,OAAO,MAAM,OAAO,YAAY,MAAM,IAC1D,MAAM,IAAI,MAAM,+DAA+D;CAGnF,MAAM,UAAU,MAAM,mBAAmB;EACrC;EACA,QAAQ,CAAC,KAAK;EACd;EACA,YAAY,YAAY,mBAAmB;EAC3C,GAAG,YAAY,mBAAmB;CACtC,CAAC;CACD,oCAAoC,IAAI,SAAS,YAAY,WAAW;CACxE,OAAO;AACX;;;;AAKA,SAAgB,kCACZ,SACA,QACF;CACE,MAAM,EAAE,gBAAgB;CACxB,MAAM,gCAAgC,oCAAoC,IAAI,OAAO;CACrF,IACI,iCACA,kCAAkC,YAAY,aAE9C,MAAM,IAAI,MAAM,8DAA8D;CAGlF,MAAM,YAAY,oBAAoB;EAClC,OAAO,YAAY;EACnB,WAAW,KAAK,YAAY,mBAAmB,YAAY;EAC3D,YAAY,YAAY,mBAAmB;CAC/C,CAAC;CAED,OAAO,yBAAyB;EAC5B;EACA,OAAO,YAAY;EACnB;EACA,kBAAkB,KAAK,YAAY,mBAAmB,UAAU;EAChE,eAAe,EACX,oBAAoB,aAAa,MAAM,UAAU,yBAAyB,EAAA,CAAG,KACjF;CACJ,CAAC;AACL;AAEA,SAAS,0BAA0B,KAAqB;CACpD,MAAM,gBAAiB,MAAM,gCAAiC;CAC9D,OACI,OACC,gBAAgB,gCACX,gBACA;AAEd;AAEA,SAAS,gCAAqE,KAAW;CACrF,OAAO;EACH,GAAG;EACH,GAAI,OAAO,IAAI,iBAAiB,WAC1B,EAAE,cAAc,0BAA0B,IAAI,YAAY,EAAE,IAC5D,CAAC;EACP,GAAI,OAAO,IAAI,uBAAuB,WAChC,EAAE,oBAAoB,0BAA0B,IAAI,kBAAkB,EAAE,IACxE,CAAC;EACP,GAAI,OAAO,IAAI,yBAAyB,WAClC,EAAE,sBAAsB,0BAA0B,IAAI,oBAAoB,EAAE,IAC5E,CAAC;EACP,GAAI,OAAO,IAAI,4BAA4B,WACrC,EAAE,yBAAyB,0BAA0B,IAAI,uBAAuB,EAAE,IAClF,CAAC;EACP,GAAI,OAAO,IAAI,kCAAkC,WAC3C,EACI,+BAA+B,0BAC3B,IAAI,6BACR,EACJ,IACA,CAAC;CACX;AACJ;AAEA,eAAsB,2BAClB,QACA,YAC8E;CAC9E,IAAI;EACA,MAAM,MAAM,MAAM,OAAO,yBAAyB;GAC9C,cAAc;GACd,oBAAoB;GACpB,sBAAsB;GACtB,GAAG;EACP,CAA2E;EAC3E,OAAO,OAAO,kBAAkB;GAC5B,GAAG;GACH,GAAG,gCAAgC,GAAG;EAC1C,CAAoE;CACxE,QAAQ;EACJ,OAAO,OAAO,kBAAkB,UAAU;CAC9C;AACJ"}
@@ -0,0 +1,110 @@
1
+ import { ValidationError } from "../shared/errors.js";
2
+ //#region src/utils/base58-id.ts
3
+ const BASE58_ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
4
+ const BASE58_MAP = (() => {
5
+ const m = {};
6
+ for (let i = 0; i < 58; i++) m[BASE58_ALPHABET[i]] = i;
7
+ return m;
8
+ })();
9
+ const U64_MAX = (1n << 64n) - 1n;
10
+ function assertU64(x, label) {
11
+ if (x < 0n) throw new ValidationError(`${label}: must be >= 0`);
12
+ if (x > U64_MAX) throw new ValidationError(`${label}: must be <= 2^64-1`);
13
+ return x;
14
+ }
15
+ /**
16
+ * Convert a base58 encoded ID to a bigint.
17
+ * @param input - The base58 encoded ID.
18
+ * @param label - The label for the input.
19
+ * @returns The bigint ID.
20
+ */
21
+ function idToBigInt(input, label = "id") {
22
+ if (typeof input === "bigint") return assertU64(input, label);
23
+ if (typeof input === "number") {
24
+ if (!Number.isFinite(input) || input < 0 || !Number.isInteger(input)) throw new ValidationError(`${label}: invalid number`);
25
+ return assertU64(BigInt(input), label);
26
+ }
27
+ const raw = input.trim();
28
+ if (!raw) throw new ValidationError(`${label}: empty`);
29
+ if (/^\d+$/.test(raw)) return assertU64(BigInt(raw), label);
30
+ return idParse(raw);
31
+ }
32
+ function idToFixed64Bytes(input) {
33
+ const out = /* @__PURE__ */ new Uint8Array(8);
34
+ new DataView(out.buffer).setBigUint64(0, idToBigInt(input));
35
+ return out;
36
+ }
37
+ function bytesToBigintBE(bytes) {
38
+ return new DataView(bytes.buffer, bytes.byteOffset).getBigUint64(0);
39
+ }
40
+ function base58Encode(bytes) {
41
+ if (bytes.length === 0) return "";
42
+ let zeros = 0;
43
+ while (zeros < bytes.length && bytes[zeros] === 0) zeros++;
44
+ const digits = [];
45
+ for (let i = zeros; i < bytes.length; i++) {
46
+ let carry = bytes[i];
47
+ for (let j = 0; j < digits.length; j++) {
48
+ const x = digits[j] * 256 + carry;
49
+ digits[j] = x % 58;
50
+ carry = Math.floor(x / 58);
51
+ }
52
+ while (carry > 0) {
53
+ digits.push(carry % 58);
54
+ carry = Math.floor(carry / 58);
55
+ }
56
+ }
57
+ let out = "1".repeat(zeros);
58
+ for (let i = digits.length - 1; i >= 0; i--) out += BASE58_ALPHABET[digits[i]];
59
+ return out ?? "1";
60
+ }
61
+ function base58Decode(s) {
62
+ const raw = s.trim();
63
+ if (!raw) return /* @__PURE__ */ new Uint8Array();
64
+ let zeros = 0;
65
+ while (zeros < raw.length && raw[zeros] === "1") zeros++;
66
+ const bytes = [];
67
+ for (let i = zeros; i < raw.length; i++) {
68
+ const ch = raw[i];
69
+ const val = BASE58_MAP[ch];
70
+ if (val === void 0) throw new ValidationError(`idParse: invalid base58 character "${ch}"`);
71
+ let carry = val;
72
+ for (let j = 0; j < bytes.length; j++) {
73
+ const x = bytes[j] * 58 + carry;
74
+ bytes[j] = x & 255;
75
+ carry = x >> 8;
76
+ }
77
+ while (carry > 0) {
78
+ bytes.push(carry & 255);
79
+ carry >>= 8;
80
+ }
81
+ }
82
+ const out = new Uint8Array(zeros + bytes.length);
83
+ for (let i = 0; i < zeros; i++) out[i] = 0;
84
+ for (let i = 0; i < bytes.length; i++) out[out.length - 1 - i] = bytes[i];
85
+ return out;
86
+ }
87
+ /**
88
+ * Given a fixed64 ID, format it as a base58 encoded string.
89
+ * @param input - The base58 encoded ID.
90
+ * @returns The base58 encoded ID.
91
+ */
92
+ function formatId(input) {
93
+ const fixed = idToFixed64Bytes(input);
94
+ let firstNonZero = 0;
95
+ while (firstNonZero < fixed.length && fixed[firstNonZero] === 0) firstNonZero++;
96
+ return base58Encode(firstNonZero >= fixed.length ? new Uint8Array([0]) : fixed.slice(firstNonZero));
97
+ }
98
+ function idParse(s) {
99
+ const raw = s.trim();
100
+ if (!raw) throw new ValidationError("idParse: empty");
101
+ const bytes = base58Decode(raw);
102
+ if (bytes.length > 8) throw new ValidationError("idParse: too large");
103
+ const padded = /* @__PURE__ */ new Uint8Array(8);
104
+ padded.set(bytes, 8 - bytes.length);
105
+ return assertU64(bytesToBigintBE(padded), "idParse");
106
+ }
107
+ //#endregion
108
+ export { formatId, idToBigInt };
109
+
110
+ //# sourceMappingURL=base58-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base58-id.js","names":[],"sources":["../../src/utils/base58-id.ts"],"sourcesContent":["import { ValidationError } from \"../shared/errors.js\";\n\nconst BASE58_ALPHABET = \"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz\" as const;\nconst BASE58_MAP: Record<string, number> = (() => {\n const m: Record<string, number> = {};\n for (let i = 0; i < BASE58_ALPHABET.length; i++) {\n m[BASE58_ALPHABET[i]!] = i;\n }\n return m;\n})();\n\nconst U64_MAX = (1n << 64n) - 1n;\n\nexport type IdInput = bigint | number | string;\n\nfunction assertU64(x: bigint, label: string): bigint {\n if (x < 0n) throw new ValidationError(`${label}: must be >= 0`);\n if (x > U64_MAX) throw new ValidationError(`${label}: must be <= 2^64-1`);\n return x;\n}\n\n/**\n * Convert a base58 encoded ID to a bigint.\n * @param input - The base58 encoded ID.\n * @param label - The label for the input.\n * @returns The bigint ID.\n */\nexport function idToBigInt(input: IdInput, label = \"id\"): bigint {\n if (typeof input === \"bigint\") return assertU64(input, label);\n if (typeof input === \"number\") {\n if (!Number.isFinite(input) || input < 0 || !Number.isInteger(input)) {\n throw new ValidationError(`${label}: invalid number`);\n }\n return assertU64(BigInt(input), label);\n }\n\n const raw = input.trim();\n if (!raw) throw new ValidationError(`${label}: empty`);\n\n // Heuristic: base58 strings are non-numeric and/or contain letters.\n // If it's purely digits, treat as decimal uint64 (useful for debugging/tools).\n if (/^\\d+$/.test(raw)) return assertU64(BigInt(raw), label);\n\n return idParse(raw);\n}\n\nfunction idToFixed64Bytes(input: IdInput): Uint8Array {\n const out = new Uint8Array(8);\n new DataView(out.buffer).setBigUint64(0, idToBigInt(input));\n return out;\n}\n\nfunction bytesToBigintBE(bytes: Uint8Array): bigint {\n return new DataView(bytes.buffer, bytes.byteOffset).getBigUint64(0);\n}\n\nfunction base58Encode(bytes: Uint8Array): string {\n if (bytes.length === 0) return \"\";\n\n let zeros = 0;\n while (zeros < bytes.length && bytes[zeros] === 0) zeros++;\n\n // Convert base256 -> base58 (classic Bitcoin algorithm)\n const digits: number[] = [];\n for (let i = zeros; i < bytes.length; i++) {\n let carry = bytes[i]!;\n for (let j = 0; j < digits.length; j++) {\n const x = digits[j]! * 256 + carry;\n digits[j] = x % 58;\n carry = Math.floor(x / 58);\n }\n while (carry > 0) {\n digits.push(carry % 58);\n carry = Math.floor(carry / 58);\n }\n }\n\n let out = \"1\".repeat(zeros);\n for (let i = digits.length - 1; i >= 0; i--) {\n out += BASE58_ALPHABET[digits[i]!]!;\n }\n return out ?? \"1\";\n}\n\nfunction base58Decode(s: string): Uint8Array {\n const raw = s.trim();\n if (!raw) return new Uint8Array();\n\n let zeros = 0;\n while (zeros < raw.length && raw[zeros] === \"1\") zeros++;\n\n const bytes: number[] = [];\n for (let i = zeros; i < raw.length; i++) {\n const ch = raw[i]!;\n const val = BASE58_MAP[ch];\n if (val === undefined) {\n throw new ValidationError(`idParse: invalid base58 character \"${ch}\"`);\n }\n let carry = val;\n for (let j = 0; j < bytes.length; j++) {\n const x = bytes[j]! * 58 + carry;\n bytes[j] = x & 0xff;\n carry = x >> 8;\n }\n while (carry > 0) {\n bytes.push(carry & 0xff);\n carry >>= 8;\n }\n }\n\n // bytes currently little-endian base256; reverse and add leading zeros\n const out = new Uint8Array(zeros + bytes.length);\n for (let i = 0; i < zeros; i++) out[i] = 0;\n for (let i = 0; i < bytes.length; i++) out[out.length - 1 - i] = bytes[i]!;\n return out;\n}\n\n/**\n * Given a fixed64 ID, format it as a base58 encoded string.\n * @param input - The base58 encoded ID.\n * @returns The base58 encoded ID.\n */\nexport function formatId(input: IdInput): string {\n // Encode fixed64 ID as base58 (big-endian, no left-padding).\n // This avoids confusing leading \"1\"s for small values.\n const fixed = idToFixed64Bytes(input);\n let firstNonZero = 0;\n while (firstNonZero < fixed.length && fixed[firstNonZero] === 0) firstNonZero++;\n const bytes = firstNonZero >= fixed.length ? new Uint8Array([0]) : fixed.slice(firstNonZero);\n return base58Encode(bytes);\n}\n\nfunction idParse(s: string): bigint {\n const raw = s.trim();\n if (!raw) throw new ValidationError(\"idParse: empty\");\n const bytes = base58Decode(raw);\n if (bytes.length > 8) throw new ValidationError(\"idParse: too large\");\n const padded = new Uint8Array(8);\n padded.set(bytes, 8 - bytes.length);\n return assertU64(bytesToBigintBE(padded), \"idParse\");\n}\n"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ //#region src/utils/columnar-time.d.ts
2
+ type ColumnarTimeWindow = {
3
+ startTsSec: number;
4
+ endTsSec: number;
5
+ points: number;
6
+ };
7
+ declare function columnarTimestampSecAt(window: ColumnarTimeWindow, index: number): number | null;
8
+ declare function expandColumnarTimestampsSec(window: ColumnarTimeWindow, count?: number): number[];
9
+ //#endregion
10
+ export { ColumnarTimeWindow, columnarTimestampSecAt, expandColumnarTimestampsSec };
11
+ //# sourceMappingURL=columnar-time.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnar-time.d.ts","names":[],"sources":["../../src/utils/columnar-time.ts"],"mappings":";KAAY;EACR;EACA;EACA;;iBAQY,uBAAuB,QAAQ,oBAAoB;iBAanD,4BACZ,QAAQ,oBACR"}
@@ -0,0 +1,30 @@
1
+ //#region src/utils/columnar-time.ts
2
+ function pointCount(points) {
3
+ if (!Number.isFinite(points)) return 0;
4
+ return Math.max(0, Math.trunc(points));
5
+ }
6
+ function columnarTimestampSecAt(window, index) {
7
+ const points = pointCount(window.points);
8
+ if (points === 0) return null;
9
+ if (!Number.isInteger(index) || index < 0 || index >= points) return null;
10
+ const startTsSec = Number(window.startTsSec);
11
+ const endTsSec = Number(window.endTsSec);
12
+ if (!Number.isFinite(startTsSec) || !Number.isFinite(endTsSec)) return null;
13
+ if (endTsSec < startTsSec) return null;
14
+ return startTsSec + index * ((endTsSec - startTsSec) / points);
15
+ }
16
+ function expandColumnarTimestampsSec(window, count = window.points) {
17
+ const points = pointCount(window.points);
18
+ const length = Math.min(points, pointCount(count));
19
+ const timestamps = [];
20
+ for (let index = 0; index < length; index++) {
21
+ const tsSec = columnarTimestampSecAt(window, index);
22
+ if (tsSec == null) return [];
23
+ timestamps.push(tsSec);
24
+ }
25
+ return timestamps;
26
+ }
27
+ //#endregion
28
+ export { columnarTimestampSecAt, expandColumnarTimestampsSec };
29
+
30
+ //# sourceMappingURL=columnar-time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnar-time.js","names":[],"sources":["../../src/utils/columnar-time.ts"],"sourcesContent":["export type ColumnarTimeWindow = {\n startTsSec: number;\n endTsSec: number;\n points: number;\n};\n\nfunction pointCount(points: number): number {\n if (!Number.isFinite(points)) return 0;\n return Math.max(0, Math.trunc(points));\n}\n\nexport function columnarTimestampSecAt(window: ColumnarTimeWindow, index: number): number | null {\n const points = pointCount(window.points);\n if (points === 0) return null;\n if (!Number.isInteger(index) || index < 0 || index >= points) return null;\n\n const startTsSec = Number(window.startTsSec);\n const endTsSec = Number(window.endTsSec);\n if (!Number.isFinite(startTsSec) || !Number.isFinite(endTsSec)) return null;\n if (endTsSec < startTsSec) return null;\n\n return startTsSec + index * ((endTsSec - startTsSec) / points);\n}\n\nexport function expandColumnarTimestampsSec(\n window: ColumnarTimeWindow,\n count = window.points,\n): number[] {\n const points = pointCount(window.points);\n const length = Math.min(points, pointCount(count));\n const timestamps: number[] = [];\n\n for (let index = 0; index < length; index++) {\n const tsSec = columnarTimestampSecAt(window, index);\n if (tsSec == null) return [];\n timestamps.push(tsSec);\n }\n\n return timestamps;\n}\n"],"mappings":";AAMA,SAAS,WAAW,QAAwB;CACxC,IAAI,CAAC,OAAO,SAAS,MAAM,GAAG,OAAO;CACrC,OAAO,KAAK,IAAI,GAAG,KAAK,MAAM,MAAM,CAAC;AACzC;AAEA,SAAgB,uBAAuB,QAA4B,OAA8B;CAC7F,MAAM,SAAS,WAAW,OAAO,MAAM;CACvC,IAAI,WAAW,GAAG,OAAO;CACzB,IAAI,CAAC,OAAO,UAAU,KAAK,KAAK,QAAQ,KAAK,SAAS,QAAQ,OAAO;CAErE,MAAM,aAAa,OAAO,OAAO,UAAU;CAC3C,MAAM,WAAW,OAAO,OAAO,QAAQ;CACvC,IAAI,CAAC,OAAO,SAAS,UAAU,KAAK,CAAC,OAAO,SAAS,QAAQ,GAAG,OAAO;CACvE,IAAI,WAAW,YAAY,OAAO;CAElC,OAAO,aAAa,UAAU,WAAW,cAAc;AAC3D;AAEA,SAAgB,4BACZ,QACA,QAAQ,OAAO,QACP;CACR,MAAM,SAAS,WAAW,OAAO,MAAM;CACvC,MAAM,SAAS,KAAK,IAAI,QAAQ,WAAW,KAAK,CAAC;CACjD,MAAM,aAAuB,CAAC;CAE9B,KAAK,IAAI,QAAQ,GAAG,QAAQ,QAAQ,SAAS;EACzC,MAAM,QAAQ,uBAAuB,QAAQ,KAAK;EAClD,IAAI,SAAS,MAAM,OAAO,CAAC;EAC3B,WAAW,KAAK,KAAK;CACzB;CAEA,OAAO;AACX"}
@@ -0,0 +1,23 @@
1
+ //#region src/utils/connect-mfa-errors.d.ts
2
+ /**
3
+ * True when the server indicates the user must complete MFA enrollment first.
4
+ * Covers typed SDK errors and raw `ConnectError`s carrying the stable auth detail code.
5
+ */
6
+ declare function isMfaEnrollmentRequiredError(err: unknown): boolean;
7
+ /**
8
+ * True when the server requires a fresh MFA step-up (retry with `X-Auth-Step-Up`).
9
+ * Covers typed SDK errors and raw `ConnectError`s carrying the stable auth detail code.
10
+ */
11
+ declare function isFreshStepUpRequiredError(err: unknown): boolean;
12
+ /**
13
+ * True when the server requires a recent MFA-elevated session, not a one-use
14
+ * fresh step-up proof. Prefer `err instanceof SessionElevationRequiredError`.
15
+ */
16
+ declare function isSessionElevationRequiredError(err: unknown): boolean;
17
+ /**
18
+ * True when deleting the requested factor would leave no active MFA factors.
19
+ */
20
+ declare function isMfaLastFactorRequiredError(err: unknown): boolean;
21
+ //#endregion
22
+ export { isFreshStepUpRequiredError, isMfaEnrollmentRequiredError, isMfaLastFactorRequiredError, isSessionElevationRequiredError };
23
+ //# sourceMappingURL=connect-mfa-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-mfa-errors.d.ts","names":[],"sources":["../../src/utils/connect-mfa-errors.ts"],"mappings":";;;;;iBAYgB,6BAA6B;;;;;iBAQ7B,2BAA2B;;;;;iBAQ3B,gCAAgC;;;;iBAOhC,6BAA6B"}
@@ -0,0 +1,34 @@
1
+ import { MfaEnrollmentRequiredError, MfaLastFactorRequiredError, SessionElevationRequiredError, StepUpRequiredError } from "../shared/errors.js";
2
+ import { toPolyesterError } from "../shared/connect-error-mapping.js";
3
+ //#region src/utils/connect-mfa-errors.ts
4
+ /**
5
+ * True when the server indicates the user must complete MFA enrollment first.
6
+ * Covers typed SDK errors and raw `ConnectError`s carrying the stable auth detail code.
7
+ */
8
+ function isMfaEnrollmentRequiredError(err) {
9
+ return toPolyesterError(err) instanceof MfaEnrollmentRequiredError;
10
+ }
11
+ /**
12
+ * True when the server requires a fresh MFA step-up (retry with `X-Auth-Step-Up`).
13
+ * Covers typed SDK errors and raw `ConnectError`s carrying the stable auth detail code.
14
+ */
15
+ function isFreshStepUpRequiredError(err) {
16
+ return toPolyesterError(err) instanceof StepUpRequiredError;
17
+ }
18
+ /**
19
+ * True when the server requires a recent MFA-elevated session, not a one-use
20
+ * fresh step-up proof. Prefer `err instanceof SessionElevationRequiredError`.
21
+ */
22
+ function isSessionElevationRequiredError(err) {
23
+ return toPolyesterError(err) instanceof SessionElevationRequiredError;
24
+ }
25
+ /**
26
+ * True when deleting the requested factor would leave no active MFA factors.
27
+ */
28
+ function isMfaLastFactorRequiredError(err) {
29
+ return toPolyesterError(err) instanceof MfaLastFactorRequiredError;
30
+ }
31
+ //#endregion
32
+ export { isFreshStepUpRequiredError, isMfaEnrollmentRequiredError, isMfaLastFactorRequiredError, isSessionElevationRequiredError };
33
+
34
+ //# sourceMappingURL=connect-mfa-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-mfa-errors.js","names":[],"sources":["../../src/utils/connect-mfa-errors.ts"],"sourcesContent":["import { toPolyesterError } from \"../shared/connect-error-mapping.js\";\nimport {\n MfaEnrollmentRequiredError,\n MfaLastFactorRequiredError,\n SessionElevationRequiredError,\n StepUpRequiredError,\n} from \"../shared/errors.js\";\n\n/**\n * True when the server indicates the user must complete MFA enrollment first.\n * Covers typed SDK errors and raw `ConnectError`s carrying the stable auth detail code.\n */\nexport function isMfaEnrollmentRequiredError(err: unknown): boolean {\n return toPolyesterError(err) instanceof MfaEnrollmentRequiredError;\n}\n\n/**\n * True when the server requires a fresh MFA step-up (retry with `X-Auth-Step-Up`).\n * Covers typed SDK errors and raw `ConnectError`s carrying the stable auth detail code.\n */\nexport function isFreshStepUpRequiredError(err: unknown): boolean {\n return toPolyesterError(err) instanceof StepUpRequiredError;\n}\n\n/**\n * True when the server requires a recent MFA-elevated session, not a one-use\n * fresh step-up proof. Prefer `err instanceof SessionElevationRequiredError`.\n */\nexport function isSessionElevationRequiredError(err: unknown): boolean {\n return toPolyesterError(err) instanceof SessionElevationRequiredError;\n}\n\n/**\n * True when deleting the requested factor would leave no active MFA factors.\n */\nexport function isMfaLastFactorRequiredError(err: unknown): boolean {\n return toPolyesterError(err) instanceof MfaLastFactorRequiredError;\n}\n"],"mappings":";;;;;;;AAYA,SAAgB,6BAA6B,KAAuB;CAChE,OAAO,iBAAiB,GAAG,aAAa;AAC5C;;;;;AAMA,SAAgB,2BAA2B,KAAuB;CAC9D,OAAO,iBAAiB,GAAG,aAAa;AAC5C;;;;;AAMA,SAAgB,gCAAgC,KAAuB;CACnE,OAAO,iBAAiB,GAAG,aAAa;AAC5C;;;;AAKA,SAAgB,6BAA6B,KAAuB;CAChE,OAAO,iBAAiB,GAAG,aAAa;AAC5C"}
@@ -0,0 +1,9 @@
1
+ //#region src/utils/connect-order-errors.d.ts
2
+ /**
3
+ * True when an order mutation was rejected because its client reference quote
4
+ * exceeded the backend's configured drift limit.
5
+ */
6
+ declare function isStaleQuoteError(error: unknown): boolean;
7
+ //#endregion
8
+ export { isStaleQuoteError };
9
+ //# sourceMappingURL=connect-order-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-order-errors.d.ts","names":[],"sources":["../../src/utils/connect-order-errors.ts"],"mappings":";;;;;iBAOgB,kBAAkB"}
@@ -0,0 +1,20 @@
1
+ import { StaleQuoteError } from "../shared/errors.js";
2
+ import { toPolyesterError } from "../shared/connect-error-mapping.js";
3
+ //#region src/utils/connect-order-errors.ts
4
+ /**
5
+ * True when an order mutation was rejected because its client reference quote
6
+ * exceeded the backend's configured drift limit.
7
+ */
8
+ function isStaleQuoteError(error) {
9
+ let current = error;
10
+ for (let depth = 0; depth < 5; depth += 1) {
11
+ if (toPolyesterError(current) instanceof StaleQuoteError) return true;
12
+ if (!(current instanceof Error) || current.cause === void 0) return false;
13
+ current = current.cause;
14
+ }
15
+ return false;
16
+ }
17
+ //#endregion
18
+ export { isStaleQuoteError };
19
+
20
+ //# sourceMappingURL=connect-order-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect-order-errors.js","names":[],"sources":["../../src/utils/connect-order-errors.ts"],"sourcesContent":["import { toPolyesterError } from \"../shared/connect-error-mapping.js\";\nimport { StaleQuoteError } from \"../shared/errors.js\";\n\n/**\n * True when an order mutation was rejected because its client reference quote\n * exceeded the backend's configured drift limit.\n */\nexport function isStaleQuoteError(error: unknown): boolean {\n let current = error;\n\n for (let depth = 0; depth < 5; depth += 1) {\n if (toPolyesterError(current) instanceof StaleQuoteError) return true;\n if (!(current instanceof Error) || current.cause === undefined) return false;\n current = current.cause;\n }\n\n return false;\n}\n"],"mappings":";;;;;;;AAOA,SAAgB,kBAAkB,OAAyB;CACvD,IAAI,UAAU;CAEd,KAAK,IAAI,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG;EACvC,IAAI,iBAAiB,OAAO,aAAa,iBAAiB,OAAO;EACjE,IAAI,EAAE,mBAAmB,UAAU,QAAQ,UAAU,KAAA,GAAW,OAAO;EACvE,UAAU,QAAQ;CACtB;CAEA,OAAO;AACX"}
@@ -0,0 +1,41 @@
1
+ //#region src/utils/cookie-es/_utils.ts
2
+ /**
3
+ * RFC 6265bis cookie-age-limit: 400 days in seconds.
4
+ */
5
+ const COOKIE_MAX_AGE_LIMIT = 3456e4;
6
+ /**
7
+ * Find the `;` character between `min` and `len` in str.
8
+ */
9
+ function endIndex(str, min, len) {
10
+ const index = str.indexOf(";", min);
11
+ return index === -1 ? len : index;
12
+ }
13
+ /**
14
+ * Find the `=` character between `min` and `max` in str.
15
+ */
16
+ function eqIndex(str, min, max) {
17
+ const index = str.indexOf("=", min);
18
+ return index < max ? index : -1;
19
+ }
20
+ /**
21
+ * Slice out a value between start to max.
22
+ */
23
+ function valueSlice(str, min, max) {
24
+ if (min === max) return "";
25
+ let start = min;
26
+ let end = max;
27
+ do {
28
+ const code = str.charCodeAt(start);
29
+ if (code !== 32 && code !== 9) break;
30
+ } while (++start < end);
31
+ while (end > start) {
32
+ const code = str.charCodeAt(end - 1);
33
+ if (code !== 32 && code !== 9) break;
34
+ end--;
35
+ }
36
+ return str.slice(start, end);
37
+ }
38
+ //#endregion
39
+ export { COOKIE_MAX_AGE_LIMIT, endIndex, eqIndex, valueSlice };
40
+
41
+ //# sourceMappingURL=_utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_utils.js","names":[],"sources":["../../../src/utils/cookie-es/_utils.ts"],"sourcesContent":["/**\n * RFC 6265bis cookie-age-limit: 400 days in seconds.\n */\nexport const COOKIE_MAX_AGE_LIMIT = 34560000; // 400 * 24 * 60 * 60\n\n/**\n * Find the `;` character between `min` and `len` in str.\n */\nexport function endIndex(str: string, min: number, len: number) {\n const index = str.indexOf(\";\", min);\n return index === -1 ? len : index;\n}\n\n/**\n * Find the `=` character between `min` and `max` in str.\n */\nexport function eqIndex(str: string, min: number, max: number) {\n const index = str.indexOf(\"=\", min);\n return index < max ? index : -1;\n}\n\n/**\n * Slice out a value between start to max.\n */\nexport function valueSlice(str: string, min: number, max: number) {\n if (min === max) return \"\";\n let start = min;\n let end = max;\n\n do {\n // eslint-disable-next-line unicorn/prefer-code-point\n const code = str.charCodeAt(start);\n if (code !== 32 /* */ && code !== 9 /* \\t */) break;\n } while (++start < end);\n\n while (end > start) {\n // eslint-disable-next-line unicorn/prefer-code-point\n const code = str.charCodeAt(end - 1);\n if (code !== 32 /* */ && code !== 9 /* \\t */) break;\n end--;\n }\n\n return str.slice(start, end);\n}\n"],"mappings":";;;;AAGA,MAAa,uBAAuB;;;;AAKpC,SAAgB,SAAS,KAAa,KAAa,KAAa;CAC5D,MAAM,QAAQ,IAAI,QAAQ,KAAK,GAAG;CAClC,OAAO,UAAU,KAAK,MAAM;AAChC;;;;AAKA,SAAgB,QAAQ,KAAa,KAAa,KAAa;CAC3D,MAAM,QAAQ,IAAI,QAAQ,KAAK,GAAG;CAClC,OAAO,QAAQ,MAAM,QAAQ;AACjC;;;;AAKA,SAAgB,WAAW,KAAa,KAAa,KAAa;CAC9D,IAAI,QAAQ,KAAK,OAAO;CACxB,IAAI,QAAQ;CACZ,IAAI,MAAM;CAEV,GAAG;EAEC,MAAM,OAAO,IAAI,WAAW,KAAK;EACjC,IAAI,SAAS,MAAc,SAAS,GAAY;CACpD,SAAS,EAAE,QAAQ;CAEnB,OAAO,MAAM,OAAO;EAEhB,MAAM,OAAO,IAAI,WAAW,MAAM,CAAC;EACnC,IAAI,SAAS,MAAc,SAAS,GAAY;EAChD;CACJ;CAEA,OAAO,IAAI,MAAM,OAAO,GAAG;AAC/B"}
@@ -0,0 +1,53 @@
1
+ import { endIndex, eqIndex, valueSlice } from "../_utils.js";
2
+ //#region src/utils/cookie-es/cookie/parse.ts
3
+ const NullObject = /* @__PURE__ */ (() => {
4
+ const C = function() {};
5
+ C.prototype = Object.create(null);
6
+ return C;
7
+ })();
8
+ function parse(str, options) {
9
+ const obj = new NullObject();
10
+ const len = str.length;
11
+ if (len < 2) return obj;
12
+ const dec = options?.decode || decode;
13
+ const allowMultiple = options?.allowMultiple || false;
14
+ let index = 0;
15
+ do {
16
+ const eqIdx = eqIndex(str, index, len);
17
+ if (eqIdx === -1) break;
18
+ const endIdx = endIndex(str, index, len);
19
+ if (eqIdx > endIdx) {
20
+ index = str.lastIndexOf(";", eqIdx - 1) + 1;
21
+ continue;
22
+ }
23
+ const key = valueSlice(str, index, eqIdx);
24
+ if (options?.filter && !options.filter(key)) {
25
+ index = endIdx + 1;
26
+ continue;
27
+ }
28
+ const val = dec(valueSlice(str, eqIdx + 1, endIdx));
29
+ if (allowMultiple) {
30
+ const existing = obj[key];
31
+ if (existing === void 0) obj[key] = val;
32
+ else if (Array.isArray(existing)) existing.push(val);
33
+ else obj[key] = [existing, val];
34
+ } else if (obj[key] === void 0) obj[key] = val;
35
+ index = endIdx + 1;
36
+ } while (index < len);
37
+ return obj;
38
+ }
39
+ /**
40
+ * URL-decode string value. Optimized to skip native call when no %.
41
+ */
42
+ function decode(str) {
43
+ if (!str.includes("%")) return str;
44
+ try {
45
+ return decodeURIComponent(str);
46
+ } catch {
47
+ return str;
48
+ }
49
+ }
50
+ //#endregion
51
+ export { parse };
52
+
53
+ //# sourceMappingURL=parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse.js","names":[],"sources":["../../../../src/utils/cookie-es/cookie/parse.ts"],"sourcesContent":["// Based on https://github.com/jshttp/cookie (MIT)\n// Copyright (c) 2012-2014 Roman Shtylman <shtylman@gmail.com>\n// Copyright (c) 2015 Douglas Christopher Wilson <doug@somethingdoug.com>\n// Last sync: v1.1.1 (e264dfa)\n\nimport type { CookieParseOptions, Cookies, MultiCookies } from \"./types.js\";\nimport { endIndex, eqIndex, valueSlice } from \"../_utils.js\";\n\nconst NullObject = /* @__PURE__ */ (() => {\n const C = function () {};\n C.prototype = Object.create(null);\n return C;\n})() as unknown as { new (): any };\n\n/**\n * Parse a `Cookie` header string into an object.\n *\n * The object has cookie names as keys and decoded values as values.\n * First occurrence wins for duplicate names unless `allowMultiple` is set.\n *\n * @param str - The `Cookie` header string to parse.\n * @param options - Parsing options (`decode`, `filter`, `allowMultiple`).\n * @returns A prototype-less object of cookie name-value pairs.\n */\nexport function parse(\n str: string,\n options: CookieParseOptions & { allowMultiple: true },\n): MultiCookies;\nexport function parse(str: string, options?: CookieParseOptions): Cookies;\nexport function parse(str: string, options?: CookieParseOptions): Cookies | MultiCookies {\n const obj: MultiCookies = new NullObject();\n const len = str.length;\n // RFC 6265bis sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.\n if (len < 2) return obj;\n\n const dec = options?.decode || decode;\n const allowMultiple = options?.allowMultiple || false;\n let index = 0;\n\n do {\n const eqIdx = eqIndex(str, index, len);\n if (eqIdx === -1) break; // No more cookie pairs.\n\n const endIdx = endIndex(str, index, len);\n\n if (eqIdx > endIdx) {\n // backtrack on prior semicolon\n index = str.lastIndexOf(\";\", eqIdx - 1) + 1;\n continue;\n }\n\n const key = valueSlice(str, index, eqIdx);\n\n if (options?.filter && !options.filter(key)) {\n index = endIdx + 1;\n continue;\n }\n\n const val = dec(valueSlice(str, eqIdx + 1, endIdx));\n\n if (allowMultiple) {\n const existing = obj[key];\n if (existing === undefined) {\n obj[key] = val;\n } else if (Array.isArray(existing)) {\n existing.push(val!);\n } else {\n obj[key] = [existing!, val!];\n }\n } else if (obj[key] === undefined) {\n obj[key] = val;\n }\n\n index = endIdx + 1;\n } while (index < len);\n\n return obj;\n}\n\n// --- Internal Utils ---\n\n/**\n * URL-decode string value. Optimized to skip native call when no %.\n */\nfunction decode(str: string): string {\n if (!str.includes(\"%\")) return str;\n\n try {\n return decodeURIComponent(str);\n } catch {\n return str;\n }\n}\n"],"mappings":";;AAQA,MAAM,aAA6B,uBAAO;CACtC,MAAM,IAAI,WAAY,CAAC;CACvB,EAAE,YAAY,OAAO,OAAO,IAAI;CAChC,OAAO;AACX,EAAA,CAAG;AAiBH,SAAgB,MAAM,KAAa,SAAsD;CACrF,MAAM,MAAoB,IAAI,WAAW;CACzC,MAAM,MAAM,IAAI;CAEhB,IAAI,MAAM,GAAG,OAAO;CAEpB,MAAM,MAAM,SAAS,UAAU;CAC/B,MAAM,gBAAgB,SAAS,iBAAiB;CAChD,IAAI,QAAQ;CAEZ,GAAG;EACC,MAAM,QAAQ,QAAQ,KAAK,OAAO,GAAG;EACrC,IAAI,UAAU,IAAI;EAElB,MAAM,SAAS,SAAS,KAAK,OAAO,GAAG;EAEvC,IAAI,QAAQ,QAAQ;GAEhB,QAAQ,IAAI,YAAY,KAAK,QAAQ,CAAC,IAAI;GAC1C;EACJ;EAEA,MAAM,MAAM,WAAW,KAAK,OAAO,KAAK;EAExC,IAAI,SAAS,UAAU,CAAC,QAAQ,OAAO,GAAG,GAAG;GACzC,QAAQ,SAAS;GACjB;EACJ;EAEA,MAAM,MAAM,IAAI,WAAW,KAAK,QAAQ,GAAG,MAAM,CAAC;EAElD,IAAI,eAAe;GACf,MAAM,WAAW,IAAI;GACrB,IAAI,aAAa,KAAA,GACb,IAAI,OAAO;QACR,IAAI,MAAM,QAAQ,QAAQ,GAC7B,SAAS,KAAK,GAAI;QAElB,IAAI,OAAO,CAAC,UAAW,GAAI;EAEnC,OAAO,IAAI,IAAI,SAAS,KAAA,GACpB,IAAI,OAAO;EAGf,QAAQ,SAAS;CACrB,SAAS,QAAQ;CAEjB,OAAO;AACX;;;;AAOA,SAAS,OAAO,KAAqB;CACjC,IAAI,CAAC,IAAI,SAAS,GAAG,GAAG,OAAO;CAE/B,IAAI;EACA,OAAO,mBAAmB,GAAG;CACjC,QAAQ;EACJ,OAAO;CACX;AACJ"}